OpenERP 使用與開發筆記(一)

一直關注OpenERP,但一直未真正使用。最近一些數據想規範管理,省得使和EXCEL與WORD等處處找,因此想到OpenERP的自定義功能比較好,就再次找來相關資料從新拾掇起來。在這過程當中,發現了許多使用與開發上的一些問題,特此記錄下來,以便後查。python

1、安裝sql

操做系統:Ubuntu12.04數據庫

修改:echo 'deb http://nightly.openerp.com/7.0/nightly/deb/ ./' >> /etc/sources.list服務器

執行:apt-get install openerppython2.7

問題:前後安裝了2臺(一臺本機測試,一臺正式部署),正式部署的發現Postgresql不能正常啓動,開始老是提示:測試

perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
    LANGUAGE = (unset),
    LC_ALL = (unset),
    LC_MESSAGES = 「en_IN.UTF-8",
    LANG = 「en_US"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").

解決方案:spa

1) 執行:sudo locale-gen en_US.UTF-8

2) 在 /etc/environment 中添加如下二行

操作系統

LANG=en_US.UTF-8
LC_ALL=en_US.UTF-8

完成後上面的問題沒有了,但仍然不能正常啓動,經過反覆分析日析,發現安裝的Postgrel沒有相關安裝文件和初始數據庫,從我本機複製相關文件到相同目錄並作簡單修改後正常啓動。code

安裝完成,登陸進入,選擇:設置->用戶 ,修改管理員用戶設置啓用「技術特性」後重性登陸。對象

2、關於自定義數據表與表單等

其實OpenERP的自定義功能確實很方便,基本上普通的全部的數據編輯功能都能完成,但仍建議你自已試着開發完成一個模塊,這樣你能對自定義的操做會有更深的體會。

3、模塊開發問題

1.自定義的模塊要注意部署的位置,在Windows可能比較簡單,但在Windows我卻發現不少個addons目錄(/usr/share/pyshared/openerp/addons與 /usr/lib/pymodules/python2.7/openerp/addons),通過測試在Ubuntu下應放到:/usr/lib/pymodules/python2.7/openerp/addons目錄中。

2.上傳後,選擇菜單:設置->模塊->更新模塊列表 根據嚮導完成模塊更新。

3.點擊「可安裝模塊」,這時你將看到系統已安裝的模塊。可能你開始會和我同樣,怎麼找不到新上傳的模塊呢,在搜索框裏移除預約的過濾,即不是隻顯示已安裝的,而是顯示全部的。而後輸入定義的模塊名稱,便可以找到你開發的模塊。點擊後根據嚮導進行安裝,第一次開發部署確定會遇到不少問題,根據提示,更詳細信息在/var/log/openerp中的能夠找到。

4.有修改上傳後,爲了可正常安裝,須要執行:service openerp force-reload.

5.第一次上傳咱們可能會上先上傳一個壓縮的ZIP包,而後解壓,解壓後忘記刪除它,而後每次只上傳更新了的文件到解壓縮的文件夾中。對於XML文件好象是可沒有問題的,可是py源代碼文件系統只會加載原zip包中的源文件。(估計是一個BUG),困擾了我很久,我測試的在本機好好的模塊,上傳到正式部署的服務器就不行了。

6.定製的一個FORM中的某個Page不顯示字段的Label,與其它比較發現是在Page節點下沒有Group節點,添加便可,如:<page><group><field name='name'/></group></page>.

7.one2many關係編輯問題。發現一個定義的VIEW能夠在one2many共享.但有一個問題,是共享的字段會顯示並在第一編輯空白顯示many2one字段。通過研究找到解決方案:首先在one2many視圖對應字段相似這樣設置:<field name="lxr_ids" context="{'edit_from_parent':'1'}">。而在many2one視圖中:<field name="dept_id" invisible="context.get('edit_from_parent', '0') in ['1']"/>。

8.將one2many字段設置編輯方式爲many2many.發現one2many列表只能添加記錄,而不能選擇已經有的記錄,這樣你能夠經過修改widget實現,如<field name="line_ids" widget="many2many"/>。但您必須注意,對應的對象必須定義至少一個查詢視圖,不然將報錯。

相關文章
相關標籤/搜索