2009年3月4日 星期三

下拉開窗多選的家庭作業:以客戶編號及簡稱挑選

string ls_sql


integer li_ret


 


choose case dwo.name //選擇某一個object的名字


      case "cb_cusno" //問號的name


             ls_sql = "select cdrhad.cusno,cdrcus.cusna from cdrhad,cdrcus where cdrhad.cusno=cdrcus.cusno order by cusno" //order by意指排序


             // li_ret = wi_nvo_itnbrselect.uf_popselect(ls_sql,"品號","品名","invmas.itnbr",1)


wi_nvo_itnbrselect.uf_popselect(ls_sql,"客戶編號","客戶名稱","cdrhad.cusno",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_cusno.text = "..."


                    this.setitem(row,"cusno","您已選妥了^_^")


                    this.setitem(row,"cusna","您已選妥了^_^")


                 else


                    this.object.cb_cusno.text = "?"


                 end if


              //end if


end choose


 


return 0


 


----------------


變化題:


從採購單裡找出廠商簡稱,


採購單頭:purhad


廠商主檔:purvdr


廠商編號:vdrno


廠商簡稱:vdrna


 


select cdrhad訂單單頭.cusno客戶編號,cdrcus客戶主檔.cusna客戶簡稱 from cdrhad訂單單頭,cdrcus客戶主檔 where cdrhad訂單單頭.cusno客戶編號=cdrcus客戶主檔.cusno客戶編號 order by cusno客戶編號


 


select purhad.vdrno,purvdr.vdrna from purhad,purvdr where purhad.vdrno=purvdr.vdrno order by vdrno;


Tool bar execute




筆記:
1.Join SQL要注意Where值是不是Key,特別是上萬筆的資料,如品號、BOM及交易資料,大量資料可以用declare語法

 


沒有留言:

張貼留言

多謝造訪留言...^_^