志翔科技有限公司後勤網

後勤等待處理訊息站,請各位成員努力消除待工區
 
首頁首頁  會員註冊會員註冊  登入登入  

分享 | 
 

 修改功能表dw_tabxx.modify()

向下 
發表人內容
flying
Admin
avatar

文章數 : 207
注冊日期 : 2008-11-11

發表主題: 修改功能表dw_tabxx.modify()   周四 11月 27, 2008 3:57 pm

原先指令為
dw_tabxx.modify(string ls_title,string ls_text),將ls_title欄位的TEXT屬性置換掉成ls_text.ls_text可以為某視區的某欄位內容,系統會主動先運算它.

例如
dw_up.modifytext(titlestring, accept_win.dw_up.custname)
解釋:在開啟的視窗中的資料視窗以接收單視窗accept_win的dw_up的欄位內容置換自己的titlestring物件的TEXT.
說明:titlestring為目標版面的TEXT物件,位於Header區.設計以dw_up.custname換算的結果字串替代其TEXT屬性內容.
用途:針對訂單視窗作業,開啟了 [選料視窗],這個選料窗可能是某條件開啟,例如該客歷史成交品,如果有指向客戶,資料視窗抬頭就可趁勢由data retrieve帶進來,但若選料窗與該客戶無關,但仍希望客戶名稱秀於資料視窗抬頭,此時就必須用此方法,將接收端的客戶名稱秀於 [選料視窗]的抬頭區.

目前系統只有接收讀取條件,無法接收客戶編號或名稱等參數,也可以透過呼叫PB function方式處理,但就會多了一個functon物件出來.

系統其實際執行內容會轉換為
dw_up.modify(titlestring+".text='"+accept_win.dw_up.custname+"'")

現改其格式為
dw_tabxx.modifytext(string ls_title,string ls_text),用途相同




並增加一個新格式
dw_tabxx.modifyexpress(string ls_mod),ls_mod可以含單引號
系統其實際執行內容會轉換為
dw_up.modify(ls_mod)

設計時遇到的問題時,當footer放了一個compute欄位 modnum,其運算式為 sum(if (isrowmodified(),1,0) for all),當資料視窗update或功能表free_modify時,已經沒有異動資料了,它的值回停在尚未update前的數字,造成意念上的誤會.

範例
功能表輸入 dw_up.modify(modnum.Expression='sum(if(isrowmodified(),1,0) for all)')
系統實際執行 dw_up.modify("modnum.Expression='sum(if(isrowmodified(),1,0) for all)'"),會代為加雙引號

此範例呼叫系統重新對sum()的運算式重算
回頂端 向下
檢視會員個人資料 http://idon.666forum.net
 
修改功能表dw_tabxx.modify()
回頂端 
1頁(共1頁)

這個論壇的權限:無法 在這個版面回復文章
志翔科技有限公司後勤網 :: 系統主題 :: 系統架構-
前往: