• dw_query buttonclicked event:
string ls_sql
integer li_ret
choose case dwo.name //選擇某一個object的名字
case “cb_itnbr“ //問號的name
ls_sql = “select itnbr,itdsc from invmas order by itnbr“ //order by意指排序
// li_ret = wi_nvo_itnbrselect.uf_popselect(ls_sql,"品號","品名","invmas.itnbr",1)
wi_nvo_itnbrselect.uf_popselect(ls_sql,“品號”,“品名”,“invmas.itnbr”,1) //開窗:取用uf_popselect功能,多選時記invmas.itnbr(品號),最後一個1是代表傳SQL值到pop window
//if li_ret = 0 then
if wi_nvo_itnbrselect.uf_isselected() then //uf_isselected是同一個obj裡判斷有否選擇的功能
this.object.cb_itnbr.text = "..."
this.setitem(row,"itnbr","")
this.setitem(row,"itdsc","")
else
this.object.cb_itnbr.text = "?"
end if
//end if
end choose
return 0
筆記:
1. 看windows的event list的sheet
2. Window都預設好先執行open,open是指程式一開始時要執行的動作,如果程式在一開始執行就要先行判斷的(datawindow 先執行constructer)
3. 全粉紅是繼承來的,半粉紅是自行改過的
4. Paf add是paf七個之外的項目,是後來加的,所有的手冊都沒提到,但是它是必須的
5. 要怎麼看到Data Window的Source Code:在選項的datawindow上按右鍵/scrip/選bottonclicked/看到source code
6. 宣告變數:要注意按其原則進行,宣告變數前要注意,若是取用值時要宣告成和取用值相同的型態
1. _sql:寫sql的指令
2. _set:判斷函數回傳值
7. Choose是一種判斷式,擇一之意
1. Choose case
2. Case
3. ….
4. End
8. 什麼時Data winodws OBJ: Datawindow裡的各欄位都是一個datawindow objet
9. 要知道datawindow裡?的objet叫什麼名字:選datawindow/右鍵modify datawindow/按問號/看右邊
10. 若要開複選窗:按datawindow/選declare instance variables/宣告一個物件(在pafadd裡) 哪一個物件名稱
1. 宣告的名字 Wi_nvo_itnbrselect名命原則:wi: window的instens變數, nvo: non vision obj, itnbrselect: 是一個品號的選擇
11. declare instance variables的宣告: 一直到程式關掉以前都有效
12. 如何知道這程式的declare instance variables是否已在原繼承前就已定義:看同word sheet的右上的下拉選項去看
13. 沒有宣告到的obj(很多function的集合)要使用,要先宣告
14. If XXX then: 如果是有的就XXX, else: 如果沒有就XXX
15. 在某一個datawindow寫this就代表這一個datawindow
16. Setitem: 把值寫入第幾行(row)某欄位傳什麼值
17. Return 0: 若成功就為0
18. PPT貼到PB時,要注意上雙引號會變全形,要改成半形
19. Table . Column 資料表.欄位
20. 掛程式:MIS130
21. 程式寫好先Regenerate: tool bar library/把程式拖到最右邊視窗/tool bar select all (or ctrl A)/ tool bar Regenerate
22. 檢查程式:tool bar compile
23. 執行source:tool bar run runner
沒有留言:
張貼留言
多謝造訪留言...^_^