原文:
@、已知乙個dw中的某列的列名(在字串變數中),以獲得這個列物件的dwo
方法是:
dwobject ldwo_use,ldwo_name
ldwo_use = dw_1.object
ldwo_name = ldwo_use.__get_attribute("name",false)
這樣就可以在用setitem()設定值時,手工呼叫數窗的itemchanged事件,校驗是否接受該值
int li_rtn
li_rtn = dw_1.event itemchanged(dw_1.getrow(),ldwo_name,'arg1')
if li_rtn = 0 then
dw_1.setitem(dw_1.getrow(),'name",'arg1')
end if
@、非復合報表中的巢狀報表不可使用getchild取得,也不可使用describe取得屬性和使用modify更改屬性,
你可以呼叫pb未載入文件的函式來獲取/更改屬性,請看示例,注意多層巢狀時使用迴圈獲取最終物件.
例:資料視窗控制項dw_test包含巢狀報表dw_1,dw_1有欄位dept_name.
dwobject ldwo_parent,ldwo_obj
string ls_color
ldwo_parent = dw_1.o b j e c t
ldwo_obj = ldwo_parent.__get_attribute("dw_1",false)
ldwo_obj = ldwo_obj.o b j e c t
ldwo_obj = ldwo_obj.__get_attribute("dept_name",false)
ls_color = ldwo_obj.color//取顏色
ldwo_obj.__set_attribute("color",rgb(192,192,192))//更改顏色
__get_attribute()、__get_attribute_item()、__invoke_method()、__set_attribute()、__set_attribute_item()
PB未公開函式 get
摘自 大家知道在dw control中有乙個event itemchanged.平時對於使用者的一些輸入內容判斷,我們都會在此event中進行檢查.但我們平時很少使用trigger event 的方式來由系統觸發這個事件,因為這個事件的乙個引數 dwo 沒有辦法得到.後來在網上瞎逛時,發現有人舉報了...
未公開的ram file 記憶體檔案
ram file是erlang未公開的乙個模組,是在記憶體檔案的乙個實現,erts的內建驅動ram file drv提供底層快速的記憶體訪問。它的用途是需要檔案訪問介面的模組如erl tar之類的可以在記憶體裡面提供高速的檔案訪問服務。所以ram file提供file所提供的正常介面以外,還支援以下...
PB絕對有用的未公開函式
已知乙個dw中的某列的列名 在字串變數中 以獲得這個列物件的dwo 方法是 dwobject ldwo use,ldwo name ldwo use dw 1.object ldwo name ldwo use.get attribute name false 這樣就可以在用setitem 設定值時...