[quote author=Jeff link=topic=5804.msg14430#msg14430 date=1362890982]
ReadOnly的字段是不向服务器传值的
[/quote]
感謝 那我只好用invisible="1"來隱藏該Field以防使用者修改並存值給Server端用
kk071700
-
請教在自訂義Wizar的XML中指定field為readonly要如何於程式中讀出值 -
請教在自訂義Wizar的XML中指定field為readonly要如何於程式中讀出值小弟需求
--當使用者選取產品時<field name="frame">呼叫on_change事件程式自動帶出金額到<field name="price"/>,希望鎖住該field 不給User更改金額(固用readonly="1"
<field name="frame" string="Frame No." on_change="onchange_fram_no(frame)"/>
<field name="price" readonly="1"/>
上列程式執行且來後畫面上price確實會隨frame的變動而更改,但是按下Commit時取到的price值卻是0(若是不設readonly就能正確讀值)
record = self.read(cr, uid, ids, [])
record = record and record[0]
price=str(record['price'])
請指點迷津 謝謝 -
請教如何在OE介面中開啟自訂義的PDF小弟由於需求,於是用reportlab.pdfgen 自行動態產生一張PDF
想請教 我在用wizard產生該PDF之後,要如何在OE介面中開啟該PDF來列印(用wizard內的return或用button或是加在右方工具列內按鈕)
該如何施作
感謝賜教 -
Function return值的問題[quote author=Joshua link=topic=4388.msg12006#msg12006 date=1349936958]
Hi kk071700<br />return {<br />...<br />'context':{'default_x_job_no':'98585'}, #问题1<br />'target': 'new', #问题2<br />...<br />}<br />
Joshua
[/quote]
感恩 Joshua大指點迷津 -
Function return值的問題小弟用按鈕呼叫自身wizard內的Function, 然後Function內再指定去外部該wizard的view
[color=blue]<button name="create_claim" string="Claim" icon="gtk-go-forward" type="object"/>
def create_claim(self, cr, uid, ids, context=None):
return {
'name': 'Claim',
'view_type': 'form',
'view_mode': 'form',
'res_model': 'create.claim.order',#該wizard
'type': 'ir.actions.act_window',
'x_job_no':'98585',#欲傳的參數
}[/color]
但是出現了2個問題
1. [b]x_job_no參數無法傳到新的view中[/b]
2.[b]希望原視窗轉換但是按下按鈕後是開一新視窗顯示而非原視窗轉換,同時原視窗出現Error訊息[/b]
如下
[color=red]Traceback (most recent call last): File "C:\MODERNSPECS\modernspecserp_server\bin\netsvc.py", line 489, in dispatch result = ExportService.getService(service_name).dispatch(method, auth, params) File "C:\MODERNSPECS\modernspecserp_server\bin\service\web_services.py", line 599, in dispatch res = fn(db, uid, *params) File "C:\MODERNSPECS\modernspecserp_server\bin\osv\osv.py", line 122, in wrapper return f(self, dbname, *args, **kwargs) File "C:\MODERNSPECS\modernspecserp_server\bin\osv\osv.py", line 176, in execute res = self.execute_cr(cr, uid, obj, method, *args, **kw) File "C:\MODERNSPECS\modernspecserp_server\bin\osv\osv.py", line 167, in execute_cr return getattr(object, method)(cr, uid, *args, **kw) File "C:\MODERNSPECS\modernspecserp_server\bin\osv\orm.py", line 1963, in read res2 = self._columns[f].get_memory(cr, self, ids, f, user, context=context, values=result) File "C:\MODERNSPECS\modernspecserp_server\bin\osv\fields.py", line 348, in get_memory result[id] = obj.datas[id].get(name, False) KeyError: 816
[/color]
懇請賜教指導是哪邊出了問題 -
請問在OPERP中如何達成按下Enter 取代Tab 鍵跳到下一個欄位[quote author=ccdos link=topic=4379.msg11990#msg11990 date=1349831862]
厉害。
不过怕有兼容性问题,好像有几个视图中,回车后直接保存了
[/quote]
感謝ccdos大的回覆
我也發現同時有一些view中的on_change事件無法被觸發
真是傷腦筋 -
請教用通过按钮弹出Wizard的name問題[quote author=mrshelly link=topic=4383.msg11987#msg11987 date=1349764452]
新的 wizard 与老式 wizard 已经有很大的区别了.
你的 wizard 是新的规范写的, 而调用是按的老式wizard 调用的. 你可以尝试看看 idea 模块中的 wizard 的调用方法..
[/quote]
mrshelly大您好
感謝您的建議
由於我想要同時傳一個參數 所以我改用按鈕呼叫自身wizard內的Function, 然後Function內再指定去外部該wizard的view
但是又產生了一些其他問題 已經另開新帖發問 -
請問在OPERP中如何達成按下Enter 取代Tab 鍵跳到下一個欄位已經解決了 自問自答
跟大家分享一下解決方式
在web\addons\openerp\controllers\templates\form.mako中
加入
$('input,textarea').keypress(function(e)
{
if(e.keyCode==13) {
//$(this).next().focus();
//alert ('test1111');
var allInputs = $("input,textarea,select").not(':hidden');
//alert (allInputs.length);
for (var i = 0; i < allInputs.length; i++) {
if (allInputs[i] == this) {
while ((allInputs[i]).name == (allInputs[i + 1]).name) {
i++;
}
if ((i + 1) < allInputs.length)
{
$(allInputs[i + 1]).focus();
}
}
}
} -
請教用通过按钮弹出Wizard的name問題小弟寫了個wizard(如附件)
想在其他wizard的view加入一個按鈕呼叫這個wizard,如下
[b]<button name="%(wizard_create_claim_order.cr_claim_order_act_view)d" string="Claim" type="action" />[/b]
但是一直出現ValueError: No references to wizard_create_claim_order.cr_claim_order_act_view
想請教是我的name寫錯了嗎?該如何修正
謝謝指點 -
請問在OPERP中如何達成按下Enter 取代Tab 鍵跳到下一個欄位請教各位先進:
如何按enter鍵,取代按Tab鍵的功能,focus 會移至下一駐點
以前都是用加一段JAVASCRIPT控制,但這OPERP就不知該從何處修改起
懇請賜教 -
請教如何在tree view中顯示相關連其他table的field資料小弟想在res.partner.tree中顯示相關連的res.partner.address中的street欄位資料
請教要如何訂義該tree view
感謝指點 -
請教自定義Function放置的問題小弟利用OpenERP介面產生一個自定義DB table同時也產生出對應的Form View,想在Form View其內加入一個button指到某個Function來針對這個view的內容作處理
想請教如果我將這個Function放在自定義的wizard當中該如何呼叫?所見的方式好像是呼叫整個wizard
<button type="action" name="%(wizard_id)d" string="Label"/>
若是不能放在wizard中 ,我應該將此Function訂義在哪? 如何呼叫?
感恩請大大解惑 -
請教如何使自訂義的wizard左上方 Save,Save & Edit,Cancel 等三個按鈕不顯現Joshua大 您好
我的xml中訂義如下<act_window<br /> id="cr_prescription_act_view"<br /> name="Create Prescription"<br /> view_mode="form"<br /> view_type="form"<br /> res_model="create.prescription"<br /> src_model="res.partner"<br /> />
我反覆嘗試
如果加上target="new"就不會出現Save,Save & Edit,Cancel 等三個按鈕,但是這是彈跳出一個新視窗,這不是我想要的--我想出現在右側主畫面
如果沒加target="new"就會出現Save,Save & Edit,Cancel 等三個按鈕
懇請指導
附件為我整個wizard
[quote author=Joshua link=topic=4171.msg11205#msg11205 date=1338254820]
不知道你的wizard的view是怎么定义的,下面是价格表的wizard的代码,你可以比较下<act_window id="action_product_price_list"<br /> key2="client_print_multi"<br /> name="Price List"<br /> res_model="product.price_list"<br /> src_model="product.product"<br /> view_mode="form" <br /> target="new" <br /> view_type="form" />
key2这个可以无视,这个只是因为他这里是想显示为打印按钮。
[/quote] -
請教如何使自訂義的wizard左上方 Save,Save & Edit,Cancel 等三個按鈕不顯現Joshua大 您好
小弟程式同時有老式wizard(wizard.interface) 以及新式wizard(osv.osv_memory)
在兩種wizard當中都有加入many2one的字段,
但是只有在新式wizard出現Save,Save & Edit,Cancel 等三個按鈕,老式wizard則無
[quote author=Joshua link=topic=4171.msg11203#msg11203 date=1338252630]
[quote]Save,Save & Edit,Cancel 等三個按鈕不顯現[/quote]
@KK071700 不明白你说的意思,本来wizard就没这三个按钮,是不是你的wizard里面有一个one2many,或者many2many 字段?
[/quote] -
請教關於新式osv.osv_memory wizard內,_default值希望動態由資料庫取出該如何施作mrshelly大
經過您的提點,小弟再仔細比較-原來是function必須放置於_default之前
(因為以前寫Java Class就沒有這種順序性的要求,所以一時沒想到會有影響)
真是不好意思勞煩您再三提醒 感恩
另外一個提問--Save,Save & Edit,Cancel 等三個按鈕不顯現的問題
是否是在XML中訂義
<act_windows
view_type : "form"
/>
小弟本來就有寫 但是無作用
[quote author=mrshelly link=topic=4170.msg11196#msg11196 date=1338194528]
请仔细看我的代码与你的代码.
前前后后, 你都没有说明你的"出"的什么"错"!...
[/quote] -
請教如何使自訂義的wizard左上方 Save,Save & Edit,Cancel 等三個按鈕不顯現mrshelly大 您好
我原本就有在XML中訂義view_type : form 但是無作用
<act_windows
view_type : "form"
/>
[quote author=mrshelly link=topic=4171.msg11191#msg11191 date=1338190165]
view_type : form
您的上一個問題解決了嗎?
[/quote] -
請教關於新式osv.osv_memory wizard內,_default值希望動態由資料庫取出該如何施作mrshelly大 您好
小弟仿造res_company.py中class res_compy(osv.osv)的
Line 84: 'rml_header' : fields.text('RML Header', required=True),
Line 225: def _get_header(self,cr,uid,ids):
Line 269: 'rml_header':_get_header,
差異應該是一個為fields.text 另一個為fields.char
可是就算我改成fields.text也會出錯
[quote author=mrshelly link=topic=4170.msg11193#msg11193 date=1338191374]
你確認你的代碼同res_company.py 的一樣?
[code=python]
...
class wizard_create_prescription(osv.osv_memory):
_name="create.prescription"
_description = "Create Prescription"
_columns = {
'x_optom_id': fields.char('x_optom_id', size=15),
}
def _get_optom(self,cr,uid,ids):
x_optom_name='Fiona'
return x_optom_name
_defaults = {
'x_optom_id': _get_optom,
}
...
[/code]
[/quote] -
請教關於新式osv.osv_memory wizard內,_default值希望動態由資料庫取出該如何施作請教mrshelly大
小弟參照addons\base\res\res_compy.py當中 class res_compy(osv.osv)的_default呼叫function的寫法
以最單純的char測試,可是仍然出錯,似乎是_defaults的呼叫Function錯誤 可是在res_compy.py中就是如此呼叫
請教該如何修正 感恩
class wizard_create_prescription(osv.osv_memory):
_name="create.prescription"
_description = "Create Prescription"
_columns = {
'x_optom_id': fields.char('x_optom_id', size=15),
}
_defaults = {
'x_optom_id': _get_optom,
}
def _get_optom(self,cr,uid,ids):
x_optom_name='Fiona'
return x_optom_name
[quote author=mrshelly link=topic=4170.msg11189#msg11189 date=1338180172]
_defaults 中 指定 function , 在 function 里, 你想怎么取就怎么取, 原系统 addons 里, 有相关的代码, 找一段阅读一下就明白了.
返回的是OE特定的内容.
如 integer 返回的是 一个integer
char 返回的是一个 char
同样, many2one 肯定就返回的是一个 many2one 了...
看看别的代码中. many2one 的 default 如何写,你就知道如何写了...
[/quote] -
請教如何使自訂義的wizard左上方 Save,Save & Edit,Cancel 等三個按鈕不顯現小弟想請教自行撰寫的wizard,
在OpenERP內執行時會自動在頁面左上方出現 Save,Save & Edit,Cancel 等三個按鈕
該如何修改使其不顯現 -
請教關於新式osv.osv_memory wizard內,_default值希望動態由資料庫取出該如何施作小弟希望在wizard的_default值希望動態由資料庫取出
請問該讀取資料庫的程式碼該在哪邊加入
如果說是要define一個 function又要如何在_defaults內讀取?
感恩大大不吝指點
Code:
class wizard_create_prescription(osv.osv_memory):
_name="create.prescription"
_description = "Create Prescription"
_columns = {
'x_optom_id': fields.many2one('x_optom', 'Optometrist',domain=[('x_optom_code','!=','EZ')]),
}
_defaults = {
'x_optom_id': '',
}
#Read DB
x_optom=x_optom
D=str(time.strftime("%Y-%m-%d", gmtime() ))
cr.execute('select x_optom from x_dailywork_record where x_date='+str(D))
resP = cr.fetchall()
for rowP in resP:
x_optom=str(rowP[0])