w_mtrlware_storageid_ch_saletask2.srw 28 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102
  1. $PBExportHeader$w_mtrlware_storageid_ch_saletask2.srw
  2. forward
  3. global type w_mtrlware_storageid_ch_saletask2 from w_pageretr_ch
  4. end type
  5. type cbx_mlselect from checkbox within w_mtrlware_storageid_ch_saletask2
  6. end type
  7. type ddlb_storageid from uo_ddlb_storageid within w_mtrlware_storageid_ch_saletask2
  8. end type
  9. type tab_1 from tab within w_mtrlware_storageid_ch_saletask2
  10. end type
  11. type tabpage_1 from userobject within tab_1
  12. end type
  13. type dw_1 from u_dw_rbtnfilter within tabpage_1
  14. end type
  15. type tabpage_1 from userobject within tab_1
  16. dw_1 dw_1
  17. end type
  18. type tabpage_3 from userobject within tab_1
  19. end type
  20. type dw_3 from u_dw_rbtnfilter within tabpage_3
  21. end type
  22. type tabpage_3 from userobject within tab_1
  23. dw_3 dw_3
  24. end type
  25. type tab_1 from tab within w_mtrlware_storageid_ch_saletask2
  26. tabpage_1 tabpage_1
  27. tabpage_3 tabpage_3
  28. end type
  29. type ddlb_notuse from dropdownlistbox within w_mtrlware_storageid_ch_saletask2
  30. end type
  31. type cb_ok from uo_imflatbutton within w_mtrlware_storageid_ch_saletask2
  32. end type
  33. type cb_del from uo_imflatbutton within w_mtrlware_storageid_ch_saletask2
  34. end type
  35. type cbx_ml from checkbox within w_mtrlware_storageid_ch_saletask2
  36. end type
  37. type ddlb_mtrlprp from dropdownlistbox within w_mtrlware_storageid_ch_saletask2
  38. end type
  39. type st_2 from statictext within w_mtrlware_storageid_ch_saletask2
  40. end type
  41. type tv_1 from uo_tv_mtrltype within w_mtrlware_storageid_ch_saletask2
  42. end type
  43. type cb_other from uo_imflatbutton within w_mtrlware_storageid_ch_saletask2
  44. end type
  45. type cbx_ph from checkbox within w_mtrlware_storageid_ch_saletask2
  46. end type
  47. type dw_2 from datawindow within w_mtrlware_storageid_ch_saletask2
  48. end type
  49. end forward
  50. global type w_mtrlware_storageid_ch_saletask2 from w_pageretr_ch
  51. integer width = 3611
  52. integer height = 2480
  53. string title = "订单产品选择"
  54. event retrieve_mx ( )
  55. event ue_help ( )
  56. event ue_retrieve_info ( )
  57. cbx_mlselect cbx_mlselect
  58. ddlb_storageid ddlb_storageid
  59. tab_1 tab_1
  60. ddlb_notuse ddlb_notuse
  61. cb_ok cb_ok
  62. cb_del cb_del
  63. cbx_ml cbx_ml
  64. ddlb_mtrlprp ddlb_mtrlprp
  65. st_2 st_2
  66. tv_1 tv_1
  67. cb_other cb_other
  68. cbx_ph cbx_ph
  69. dw_2 dw_2
  70. end type
  71. global w_mtrlware_storageid_ch_saletask2 w_mtrlware_storageid_ch_saletask2
  72. type variables
  73. s_mtrldef_array INS_RT_STRU
  74. boolean if_changeselect=true
  75. int if_mlselect=0
  76. Long cur_scid
  77. Long cur_storageid = -1
  78. String ls_handtype = ''
  79. Int cur_mtrlorigin = 0 //当前显示物料来源
  80. Int notuse = 1
  81. datawindow dw_1,dw_3
  82. int if_ph = 0
  83. end variables
  84. forward prototypes
  85. public subroutine wf_face_change ()
  86. end prototypes
  87. event retrieve_mx();long ll_mtrlid
  88. if dw_pageretr.getrow() <= 0 then
  89. dw_1.reset()
  90. dw_3.reset()
  91. else
  92. ll_mtrlid = dw_pageretr.object.u_mtrldef_mtrlid[dw_pageretr.getrow()]
  93. dw_1.retrieve(ll_mtrlid)
  94. dw_3.retrieve(ll_mtrlid)
  95. end if
  96. end event
  97. event ue_help();Int i
  98. i = htmlhelpA(Handle(THIS), sys_help_chm, 0, THIS.Title+".html")
  99. end event
  100. event ue_retrieve_info();Long ll_row
  101. Long ll_mtrlid
  102. ll_row = dw_pageretr.GetRow()
  103. IF ll_row <= 0 THEN
  104. ll_mtrlid = 0
  105. ELSE
  106. ll_mtrlid = dw_pageretr.Object.u_mtrldef_mtrlid[ll_row]
  107. END IF
  108. IF IsValid(w_mtrl_info) THEN
  109. w_mtrl_info.WindowState = Normal!
  110. w_mtrl_info.ins_mtrlid = ll_mtrlid
  111. w_mtrl_info.wf_retrieve(ll_mtrlid)
  112. END IF
  113. end event
  114. public subroutine wf_face_change ();if cbx_ml.checked then
  115. dw_pageretr.height=1568
  116. cb_ok.visible=false
  117. cb_del.visible=false
  118. dw_2.visible=false
  119. else
  120. dw_pageretr.height=1016
  121. cb_ok.visible=true
  122. cb_del.visible=true
  123. dw_2.visible=true
  124. end if
  125. end subroutine
  126. on w_mtrlware_storageid_ch_saletask2.create
  127. int iCurrent
  128. call super::create
  129. this.cbx_mlselect=create cbx_mlselect
  130. this.ddlb_storageid=create ddlb_storageid
  131. this.tab_1=create tab_1
  132. this.ddlb_notuse=create ddlb_notuse
  133. this.cb_ok=create cb_ok
  134. this.cb_del=create cb_del
  135. this.cbx_ml=create cbx_ml
  136. this.ddlb_mtrlprp=create ddlb_mtrlprp
  137. this.st_2=create st_2
  138. this.tv_1=create tv_1
  139. this.cb_other=create cb_other
  140. this.cbx_ph=create cbx_ph
  141. this.dw_2=create dw_2
  142. iCurrent=UpperBound(this.Control)
  143. this.Control[iCurrent+1]=this.cbx_mlselect
  144. this.Control[iCurrent+2]=this.ddlb_storageid
  145. this.Control[iCurrent+3]=this.tab_1
  146. this.Control[iCurrent+4]=this.ddlb_notuse
  147. this.Control[iCurrent+5]=this.cb_ok
  148. this.Control[iCurrent+6]=this.cb_del
  149. this.Control[iCurrent+7]=this.cbx_ml
  150. this.Control[iCurrent+8]=this.ddlb_mtrlprp
  151. this.Control[iCurrent+9]=this.st_2
  152. this.Control[iCurrent+10]=this.tv_1
  153. this.Control[iCurrent+11]=this.cb_other
  154. this.Control[iCurrent+12]=this.cbx_ph
  155. this.Control[iCurrent+13]=this.dw_2
  156. end on
  157. on w_mtrlware_storageid_ch_saletask2.destroy
  158. call super::destroy
  159. destroy(this.cbx_mlselect)
  160. destroy(this.ddlb_storageid)
  161. destroy(this.tab_1)
  162. destroy(this.ddlb_notuse)
  163. destroy(this.cb_ok)
  164. destroy(this.cb_del)
  165. destroy(this.cbx_ml)
  166. destroy(this.ddlb_mtrlprp)
  167. destroy(this.st_2)
  168. destroy(this.tv_1)
  169. destroy(this.cb_other)
  170. destroy(this.cbx_ph)
  171. destroy(this.dw_2)
  172. end on
  173. event ue_before_open;call super::ue_before_open;dw_1 = tab_1.tabpage_1.dw_1
  174. dw_3 = tab_1.tabpage_3.dw_3
  175. if_ue_retr=true
  176. if_ue_sort=true
  177. dw_1.settransobject(sqlca)
  178. dw_3.settransobject(sqlca)
  179. end event
  180. event close;call super::close;cLOSEWITHRETURN(THIS,INS_RT_STRU)
  181. //<INS_RT_STRU> 窗体级子定义结构变量,用于返回
  182. end event
  183. event open;THIS.TriggerEvent('ue_before_open')
  184. wf_movetocenter()
  185. OLD_TITLE = THIS.Title
  186. s_tran = Message.PowerObjectParm
  187. IF NOT IsNull(s_tran) THEN
  188. retrieve_all = local_retrieve_all //s_tran.if_retrieve_all
  189. mode = s_tran.work_mode
  190. arg_pkid = s_tran.arg_pkid
  191. arg_string_code = s_tran.arg_string_code
  192. cur_scid = s_tran.c_long
  193. cur_storageid = s_tran.d_long
  194. END IF
  195. //////////////////
  196. String ls_storagename
  197. ls_storagename = f_find_storageid(String(cur_storageid))
  198. THIS.Title = ls_storagename + THIS.Title
  199. //////////////////
  200. dw_pageretr.RBUTTON_FILTER_USE = TRUE //右键查询功能开关
  201. dw_pageretr.titleclick_sort_use = TRUE //单击标题排序功能开关
  202. dw_pageretr.uf_save_profile_layout()
  203. if cbx_ph.checked = true then
  204. dw_pageretr.dataobject = 'dw_mtrlware_storageid_ch_saletask2_ph'
  205. dw_2.dataobject = 'dw_mtrlware_storageid_ch_saletask2_ph'
  206. else
  207. dw_pageretr.dataobject = 'dw_mtrlware_storageid_ch_saletask2'
  208. dw_2.dataobject = 'dw_mtrlware_storageid_ch_saletask2'
  209. end if
  210. dw_2.SetTransObject (sqlca)
  211. dw_pageretr.SetTransObject (sqlca)
  212. dw_pageretr.ins_inifile_name = sys_inifilename
  213. dw_pageretr.ins_opemp = publ_operator
  214. dw_pageretr.cardw_empid = sys_empid
  215. dw_pageretr.cur_dataobject = dw_pageretr.DataObject
  216. dw_pageretr.uf_read_profile_layout()
  217. //dw_pageretr.SetTransObject (sqlca)
  218. pkcolumndbtname = wf_get_pkcolumndbtname(dw_pageretr) //取第一列为关键字
  219. ori_oldselect = dw_pageretr.Describe("DataWindow.Table.Select")
  220. ls_newselect = ori_oldselect
  221. ds_curquery = CREATE DATASTORE
  222. ds_curquery.DataObject = 'd_extr_find'
  223. ds_curquery.SetTransObject (sqlca)
  224. wf_editindex_lockf()
  225. IF sys_version_type = 1 THEN
  226. ddlb_mtrlprp.Text = "采购[2]"
  227. cur_mtrlorigin = 2
  228. ddlb_mtrlprp .Enabled = FALSE
  229. ELSEIF s_tran.b_long = 0 THEN
  230. ddlb_mtrlprp.Text = "自制产品[0]"
  231. cur_mtrlorigin = 0
  232. ELSEIF s_tran.b_long = 2 THEN
  233. ddlb_mtrlprp.Text = "采购[2]"
  234. cur_mtrlorigin = 2
  235. ELSEIF s_tran.b_long = 3 THEN
  236. ddlb_mtrlprp.Text = "外加工部件[3]"
  237. cur_mtrlorigin = 3
  238. ELSEIF s_tran.b_long = 4 THEN
  239. ddlb_mtrlprp.Text = "自制部件[4]"
  240. cur_mtrlorigin = 4
  241. ELSEIF s_tran.b_long = -1 THEN
  242. ddlb_mtrlprp.Text = "全部[-1]"
  243. cur_mtrlorigin = -1
  244. END IF
  245. tv_1.f_maketree(-1)
  246. tv_1.triggerevent(selectionchanged!)
  247. IF NOT retrieve_all AND Trim(arg_string_code) <> '' THEN
  248. sle_usual_query.Text = Trim(arg_string_code)
  249. THIS.TriggerEvent("ue_usual_query_RETR") //修改ls_newselect,retrieve
  250. ELSE
  251. wf_retrieveuc(dw_pageretr,ls_newselect,1)
  252. THIS.TriggerEvent('RETRIEVE_pageretr')
  253. END IF
  254. IF retrieve_all AND Trim(arg_string_code) <> '' THEN
  255. THIS.TriggerEvent("ue_usual_query_filt")
  256. END IF
  257. INS_RT_STRU.mtrlid[1] = 0
  258. ddlb_storageid.Text = '[全部]'
  259. s_hide_col s_col
  260. s_col.col_1 = 'u_mtrldef_planprice'
  261. f_hide_col(490,dw_pageretr,s_col)
  262. s_hide_col s_col_mtrlsectype
  263. s_col_mtrlsectype.col_1 = 'u_mtrldef_mtrlsectype'
  264. f_hide_col(1308,dw_pageretr,s_col_mtrlsectype)
  265. f_hide_col(1308,dw_2,s_col_mtrlsectype)
  266. s_hide_col s_col_zxmtrlmode
  267. s_col_zxmtrlmode.col_1 = 'u_mtrldef_zxmtrlmode'
  268. f_hide_col(1309,dw_pageretr,s_col_zxmtrlmode)
  269. f_hide_col(1309,dw_2,s_col_zxmtrlmode)
  270. wf_face_change()
  271. end event
  272. event retrieve_pageretr;boolean cb_firstpage_enabled,cb_nextpage_enabled,cb_retrieveall_enabled
  273. boolean cb_priorpage_enabled,cb_func_enabled,cb_retrieve_enabled
  274. cb_nextpage_enabled=cb_nextpage.enabled
  275. cb_retrieveall_enabled=cb_retrieveall.enabled
  276. cb_func_enabled=cb_func.enabled
  277. cb_nextpage.enabled=false
  278. cb_retrieveall.enabled=false
  279. cb_func.enabled=false
  280. SetPointer(HourGlass!)
  281. IF ddlb_notuse.Text = '全部' THEN
  282. notuse = -1
  283. ELSE
  284. notuse = 1
  285. END IF
  286. dw_pageretr.retrieve(cur_scid,cur_storageid,ls_handtype,cur_mtrlorigin,notuse)
  287. if dw_pageretr.rowcount()>0 and dw_pageretr.getrow()=0 then dw_pageretr.setrow(1)
  288. SetPointer(Arrow!)
  289. cb_nextpage.enabled=cb_nextpage_enabled
  290. cb_retrieveall.enabled=cb_retrieveall_enabled
  291. cb_func.enabled=cb_func_enabled
  292. IF cbx_mlselect.Checked AND dw_pageretr.RowCount() > 1 THEN
  293. dw_pageretr.SelectRow(1,FALSE)
  294. END IF
  295. end event
  296. event ue_usual_query_filt;call super::ue_usual_query_filt;string obj_expr=''
  297. if trim(sle_usual_query.text)<>'' then
  298. IF POS(trim(sle_usual_query.text),'%')=0 THEN
  299. obj_expr=obj_expr+'( u_mtrldef_mtrlcode LIKE "%'+trim(sle_usual_query.text)+'%" )'
  300. obj_expr=obj_expr+' or (u_mtrldef_mtrlname LIKE "%'+trim(sle_usual_query.text)+'%" )'
  301. ELSE
  302. obj_expr=obj_expr+'( u_mtrldef_mtrlcode LIKE "'+trim(sle_usual_query.text)+'" )'
  303. obj_expr=obj_expr+' or (u_mtrldef_mtrlname LIKE "'+trim(sle_usual_query.text)+'" )'
  304. END IF
  305. end if
  306. dw_pageretr.setfilter(obj_expr)
  307. dw_pageretr.SetRedraw(False)
  308. dw_pageretr.filter()
  309. if dw_pageretr.rowcount()>=1 then
  310. dw_pageretr.selectrow(0,false)
  311. dw_pageretr.selectrow(1,true )
  312. end if
  313. dw_pageretr.SetRedraw(TRUE )
  314. end event
  315. event ue_usual_query_retr;call super::ue_usual_query_retr;string ls_querystrpart=''
  316. ls_newselect=lower(ori_oldselect)
  317. if trim(sle_usual_query.text)<>'' then
  318. if pos(trim(sle_usual_query.text),'%')=0 then
  319. ls_querystrpart=ls_querystrpart + "( u_mtrldef.mtrlcode like '%"+trim(sle_usual_query.text)+"%'"
  320. ls_querystrpart=ls_querystrpart + " or u_mtrldef.mtrlname like '%"+trim(sle_usual_query.text)+"%')"
  321. else
  322. ls_querystrpart=ls_querystrpart + "( u_mtrldef.mtrlcode like '"+trim(sle_usual_query.text)+"'"
  323. ls_querystrpart=ls_querystrpart + " or u_mtrldef.mtrlname like '"+trim(sle_usual_query.text)+"')"
  324. end if
  325. if Pos(ls_newselect," where ") <> 0 then
  326. ls_newselect=ls_newselect+" AND ("+ls_querystrpart+')'
  327. else
  328. ls_newselect=ls_newselect+" where ("+ls_querystrpart+')'
  329. end if
  330. end if
  331. wf_retrieveuc(dw_pageretr,ls_newselect,1)
  332. this.triggerevent('retrieve_pageretr')
  333. end event
  334. type cb_func from w_pageretr_ch`cb_func within w_mtrlware_storageid_ch_saletask2
  335. end type
  336. type cb_exit from w_pageretr_ch`cb_exit within w_mtrlware_storageid_ch_saletask2
  337. integer x = 718
  338. end type
  339. type sle_usual_query from w_pageretr_ch`sle_usual_query within w_mtrlware_storageid_ch_saletask2
  340. integer x = 1801
  341. end type
  342. type cb_retrieveall from w_pageretr_ch`cb_retrieveall within w_mtrlware_storageid_ch_saletask2
  343. integer x = 1335
  344. end type
  345. type em_pagerowno from w_pageretr_ch`em_pagerowno within w_mtrlware_storageid_ch_saletask2
  346. integer x = 1029
  347. end type
  348. type dw_pageretr from w_pageretr_ch`dw_pageretr within w_mtrlware_storageid_ch_saletask2
  349. integer x = 859
  350. integer y = 300
  351. integer width = 2715
  352. integer height = 1016
  353. string dataobject = "dw_mtrlware_storageid_ch_saletask2"
  354. end type
  355. event dw_pageretr::clicked;if row>0 then
  356. this.setrow(row)
  357. if if_mlselect=1 then
  358. if if_changeselect then
  359. this.selectrow(row,not this.IsSelected(row))
  360. else
  361. if_changeselect=true
  362. end if
  363. else
  364. this.selectrow(0,false)
  365. this.selectrow(row,true)
  366. end if
  367. end if
  368. end event
  369. event dw_pageretr::doubleclicked;if cbx_ml.checked then
  370. cb_choice.TRIGGEREVENT(CLICKED!)
  371. else
  372. cb_ok.TRIGGEREVENT(CLICKED!)
  373. end if
  374. end event
  375. event dw_pageretr::rowfocuschanged;if if_mlselect=1 then
  376. if currentrow <=0 then return
  377. if keydown(keycontrol!) then
  378. if this.isselected(currentrow) then
  379. this.selectrow(currentrow,false)
  380. if_changeselect=false
  381. else
  382. if_changeselect=true
  383. end if
  384. else
  385. if not this.isselected(currentrow) then
  386. this.selectrow(currentrow,true)
  387. if_changeselect=false
  388. else
  389. if_changeselect=true
  390. end if
  391. end if
  392. else
  393. if currentrow <=0 then return
  394. this.selectrow(0,false)
  395. this.selectrow(currentrow,true)
  396. end if
  397. parent.triggerevent('retrieve_mx')
  398. parent.TriggerEvent('ue_retrieve_info')
  399. end event
  400. event dw_pageretr::dwnkey;call super::dwnkey;if keydown(keyenter!) then return 1
  401. end event
  402. type st_1 from w_pageretr_ch`st_1 within w_mtrlware_storageid_ch_saletask2
  403. integer x = 1454
  404. integer width = 343
  405. string text = "编码/名称含:"
  406. end type
  407. type cb_nextpage from w_pageretr_ch`cb_nextpage within w_mtrlware_storageid_ch_saletask2
  408. integer x = 1486
  409. end type
  410. type cb_choice from w_pageretr_ch`cb_choice within w_mtrlware_storageid_ch_saletask2
  411. integer x = 567
  412. integer taborder = 120
  413. end type
  414. event cb_choice::clicked;call super::clicked;Long ROW,ls_i = 0,chC = 0
  415. datawindow dw
  416. IF cbx_ml.Checked THEN
  417. dw = dw_pageretr
  418. ROW = dw_pageretr.GetRow()
  419. IF ROW <= 0 THEN
  420. MessageBox('提示','请先选择目标行!', Information!, OK! )
  421. RETURN
  422. END IF
  423. ELSE
  424. dw = dw_2
  425. ROW = dw.RowCount()
  426. IF ROW <= 0 THEN
  427. MessageBox('提示','请先选择缓冲目标行!', Information!, OK! )
  428. RETURN
  429. END IF
  430. END IF
  431. FOR ls_i = 1 To dw.RowCount()
  432. IF dw.IsSelected(ls_i) Or Not cbx_ml.Checked THEN
  433. chC++
  434. INS_RT_STRU.mtrlid[chC] = dw.Object.u_mtrldef_mtrlid[ls_i]
  435. INS_RT_STRU.mtrlcode[chC] = dw.Object.u_mtrldef_mtrlcode[ls_i]
  436. INS_RT_STRU.mtrlname[chC] = dw.Object.u_mtrldef_mtrlname[ls_i]
  437. INS_RT_STRU.mtrlmode[chC] = dw.Object.u_mtrldef_mtrlmode[ls_i]
  438. INS_RT_STRU.unit[chC] = dw.Object.u_mtrldef_unit[ls_i]
  439. INS_RT_STRU.mtrltype[chC] = dw.Object.u_mtrldef_mtrltype[ls_i]
  440. INS_RT_STRU.planprice[chC] = dw.Object.u_mtrldef_planprice[ls_i]
  441. INS_RT_STRU.mtrlsectype[chC] = dw.Object.u_mtrldef_mtrlsectype[ls_i]
  442. INS_RT_STRU.zxmtrlmode[chC] = dw.Object.u_mtrldef_zxmtrlmode[ls_i]
  443. INS_RT_STRU.mtrlengname[chC] = dw.Object.u_mtrldef_mtrlengname[ls_i]
  444. INS_RT_STRU.barcode[chC] = dw.Object.u_mtrldef_barcode[ls_i]
  445. INS_RT_STRU.status[chC] = dw.Object.status[ls_i]
  446. INS_RT_STRU.woodcode[chC] = dw.Object.woodcode[ls_i]
  447. INS_RT_STRU.pcode[chC] = dw.Object.pcode[ls_i]
  448. INS_RT_STRU.net_weight[chC] = dw.Object.u_mtrldef_net_weight[ls_i]
  449. INS_RT_STRU.gross_weight[chC] = dw.Object.u_mtrldef_gross_weight[ls_i]
  450. INS_RT_STRU.cubage[chC] = dw.Object.u_mtrldef_cubage[ls_i]
  451. if cbx_ph.checked = true then
  452. INS_RT_STRU.plancode[chC] = dw.Object.plancode[ls_i]
  453. INS_RT_STRU.waredscrp[chC] = dw.Object.waredscrp[ls_i]
  454. else
  455. INS_RT_STRU.plancode[chC] = ''
  456. INS_RT_STRU.waredscrp[chC] =''
  457. end if
  458. END IF
  459. NEXT
  460. //IF cbx_ml.Checked THEN
  461. // FOR ls_i = 1 TO dw_pageretr.RowCount()
  462. // IF dw_pageretr.IsSelected(ls_i) THEN
  463. // chC++
  464. // INS_RT_STRU.mtrlid[chC] = dw_pageretr.Object.u_mtrldef_mtrlid[ls_i]
  465. // INS_RT_STRU.mtrlcode[chC] = dw_pageretr.Object.u_mtrldef_mtrlcode[ls_i]
  466. // INS_RT_STRU.mtrlname[chC] = dw_pageretr.Object.u_mtrldef_mtrlname[ls_i]
  467. // INS_RT_STRU.mtrlmode[chC] = dw_pageretr.Object.u_mtrldef_mtrlmode[ls_i]
  468. // INS_RT_STRU.unit[chC] = dw_pageretr.Object.u_mtrldef_unit[ls_i]
  469. // INS_RT_STRU.mtrltype[chC] = dw_pageretr.Object.u_mtrldef_mtrltype[ls_i]
  470. // INS_RT_STRU.planprice[chC] = dw_pageretr.Object.u_mtrldef_planprice[ls_i]
  471. // INS_RT_STRU.mtrlsectype[chC] = dw_pageretr.Object.u_mtrldef_mtrlsectype[ls_i]
  472. // INS_RT_STRU.zxmtrlmode[chC] = dw_pageretr.Object.u_mtrldef_zxmtrlmode[ls_i]
  473. // END IF
  474. // NEXT
  475. //
  476. //ELSE
  477. // dw_2.accepttext()
  478. // FOR ls_i = 1 TO dw_2.RowCount()
  479. // chC++
  480. // INS_RT_STRU.mtrlid[chC] = dw_2.Object.u_mtrldef_mtrlid[ls_i]
  481. // INS_RT_STRU.mtrlcode[chC] = dw_2.Object.u_mtrldef_mtrlcode[ls_i]
  482. // INS_RT_STRU.mtrlname[chC] = dw_2.Object.u_mtrldef_mtrlname[ls_i]
  483. // INS_RT_STRU.mtrlmode[chC] = dw_2.Object.u_mtrldef_mtrlmode[ls_i]
  484. // INS_RT_STRU.unit[chC] = dw_2.Object.u_mtrldef_unit[ls_i]
  485. // INS_RT_STRU.mtrltype[chC] = dw_2.Object.u_mtrldef_mtrltype[ls_i]
  486. // INS_RT_STRU.planprice[chC] = dw_2.Object.u_mtrldef_planprice[ls_i]
  487. // INS_RT_STRU.mtrlsectype[chC] = dw_2.Object.u_mtrldef_mtrlsectype[ls_i]
  488. // INS_RT_STRU.zxmtrlmode[chC] = dw_2.Object.u_mtrldef_zxmtrlmode[ls_i]
  489. // NEXT
  490. //
  491. //
  492. //END IF
  493. IF chC = 0 THEN
  494. MessageBox('提示','请至少选择一个目标行!', Information!, OK! )
  495. RETURN
  496. END IF
  497. Close(Parent)
  498. end event
  499. type cb_refresh from w_pageretr_ch`cb_refresh within w_mtrlware_storageid_ch_saletask2
  500. end type
  501. type cb_help from w_pageretr_ch`cb_help within w_mtrlware_storageid_ch_saletask2
  502. boolean visible = false
  503. end type
  504. type ln_bar from w_pageretr_ch`ln_bar within w_mtrlware_storageid_ch_saletask2
  505. end type
  506. type ln_bar2 from w_pageretr_ch`ln_bar2 within w_mtrlware_storageid_ch_saletask2
  507. end type
  508. type r_bar from w_pageretr_ch`r_bar within w_mtrlware_storageid_ch_saletask2
  509. end type
  510. type ln_1 from w_pageretr_ch`ln_1 within w_mtrlware_storageid_ch_saletask2
  511. integer beginy = 288
  512. integer endy = 288
  513. end type
  514. type ln_2 from w_pageretr_ch`ln_2 within w_mtrlware_storageid_ch_saletask2
  515. integer beginy = 292
  516. integer endy = 292
  517. end type
  518. type cbx_mlselect from checkbox within w_mtrlware_storageid_ch_saletask2
  519. integer x = 2688
  520. integer y = 200
  521. integer width = 256
  522. integer height = 60
  523. boolean bringtotop = true
  524. integer textsize = -9
  525. integer weight = 400
  526. fontcharset fontcharset = gb2312charset!
  527. fontpitch fontpitch = variable!
  528. string facename = "宋体"
  529. long backcolor = 134217739
  530. string text = "多选"
  531. end type
  532. event clicked;if this.checked then
  533. if_mlselect=1
  534. else
  535. if_mlselect=0
  536. end if
  537. f_SetProfileString (sys_empid,dw_pageretr.DATAOBJECT, "if_mlselect", string(if_mlselect))
  538. end event
  539. event constructor;if_mlselect=integer(f_ProfileString (sys_empid,dw_pageretr.DATAOBJECT, "if_mlselect", '0'))
  540. if if_mlselect =0 then
  541. this.checked=false
  542. else
  543. this.checked=true
  544. end if
  545. end event
  546. type ddlb_storageid from uo_ddlb_storageid within w_mtrlware_storageid_ch_saletask2
  547. integer x = 581
  548. integer y = 192
  549. integer width = 549
  550. integer height = 1340
  551. integer taborder = 30
  552. boolean bringtotop = true
  553. end type
  554. event constructor;call super::constructor;cur_storageid = uo_storageid
  555. end event
  556. event selectionchanged;call super::selectionchanged;cur_storageid = uo_storageid
  557. cb_refresh.triggerevent(clicked!)
  558. end event
  559. type tab_1 from tab within w_mtrlware_storageid_ch_saletask2
  560. event create ( )
  561. event destroy ( )
  562. integer x = 855
  563. integer y = 1884
  564. integer width = 2711
  565. integer height = 508
  566. integer taborder = 110
  567. boolean bringtotop = true
  568. integer textsize = -9
  569. integer weight = 400
  570. fontcharset fontcharset = gb2312charset!
  571. fontpitch fontpitch = variable!
  572. string facename = "宋体"
  573. long backcolor = 134217739
  574. boolean raggedright = true
  575. boolean focusonbuttondown = true
  576. integer selectedtab = 1
  577. tabpage_1 tabpage_1
  578. tabpage_3 tabpage_3
  579. end type
  580. on tab_1.create
  581. this.tabpage_1=create tabpage_1
  582. this.tabpage_3=create tabpage_3
  583. this.Control[]={this.tabpage_1,&
  584. this.tabpage_3}
  585. end on
  586. on tab_1.destroy
  587. destroy(this.tabpage_1)
  588. destroy(this.tabpage_3)
  589. end on
  590. type tabpage_1 from userobject within tab_1
  591. integer x = 18
  592. integer y = 96
  593. integer width = 2674
  594. integer height = 396
  595. long backcolor = 134217739
  596. string text = "库存数"
  597. long tabtextcolor = 33554432
  598. long tabbackcolor = 134217739
  599. long picturemaskcolor = 536870912
  600. dw_1 dw_1
  601. end type
  602. on tabpage_1.create
  603. this.dw_1=create dw_1
  604. this.Control[]={this.dw_1}
  605. end on
  606. on tabpage_1.destroy
  607. destroy(this.dw_1)
  608. end on
  609. type dw_1 from u_dw_rbtnfilter within tabpage_1
  610. integer y = 4
  611. integer width = 2670
  612. integer height = 396
  613. integer taborder = 20
  614. string dataobject = "dw_mtrlware_storageid_ch_saletask_1"
  615. boolean hscrollbar = true
  616. boolean vscrollbar = true
  617. end type
  618. type tabpage_3 from userobject within tab_1
  619. integer x = 18
  620. integer y = 96
  621. integer width = 2674
  622. integer height = 396
  623. long backcolor = 134217739
  624. string text = "已订货数"
  625. long tabtextcolor = 33554432
  626. long tabbackcolor = 134217739
  627. long picturemaskcolor = 536870912
  628. dw_3 dw_3
  629. end type
  630. on tabpage_3.create
  631. this.dw_3=create dw_3
  632. this.Control[]={this.dw_3}
  633. end on
  634. on tabpage_3.destroy
  635. destroy(this.dw_3)
  636. end on
  637. type dw_3 from u_dw_rbtnfilter within tabpage_3
  638. integer width = 2670
  639. integer height = 396
  640. integer taborder = 20
  641. string dataobject = "dw_mtrlware_storageid_ch_saletask_3"
  642. boolean hscrollbar = true
  643. boolean vscrollbar = true
  644. end type
  645. type ddlb_notuse from dropdownlistbox within w_mtrlware_storageid_ch_saletask2
  646. integer x = 1147
  647. integer y = 192
  648. integer width = 279
  649. integer height = 300
  650. integer taborder = 40
  651. boolean bringtotop = true
  652. integer textsize = -9
  653. integer weight = 400
  654. fontcharset fontcharset = gb2312charset!
  655. fontpitch fontpitch = variable!
  656. string facename = "宋体"
  657. long textcolor = 33554432
  658. string text = "有效"
  659. boolean sorted = false
  660. string item[] = {"有效","全部"}
  661. borderstyle borderstyle = stylelowered!
  662. end type
  663. event selectionchanged;
  664. IF this.Text = '全部' THEN
  665. notuse = -1
  666. ELSE
  667. notuse = 1
  668. END IF
  669. cb_refresh.triggerevent(clicked!)
  670. f_SetProfileString (sys_empid,dw_pageretr.DataObject, "ddlb_isuse",String(notuse))
  671. end event
  672. event constructor;String ls_str
  673. ls_str = f_ProfileString (sys_empid,dw_pageretr.DataObject, "ddlb_isuse",'1')
  674. notuse=long(ls_str)
  675. IF notuse = -1 THEN
  676. ddlb_notuse.Text = '全部'
  677. ELSE
  678. ddlb_notuse.Text = '有效'
  679. END IF
  680. end event
  681. type cb_ok from uo_imflatbutton within w_mtrlware_storageid_ch_saletask2
  682. integer x = 2843
  683. integer y = 1324
  684. integer taborder = 60
  685. boolean bringtotop = true
  686. string text = "选定"
  687. end type
  688. event clicked;call super::clicked;LONG ROW,ls_i,chC=0
  689. ROW=dw_pageretr.GETROW()
  690. if ROW<=0 then
  691. messagebox('提示','请先选择目标行!', Information!, OK! )
  692. return
  693. end if
  694. for ls_i=1 to dw_pageretr.rowcount()
  695. if dw_pageretr.isselected(ls_i) then
  696. if dw_2.find('u_mtrldef_mtrlid ='+string(dw_pageretr.object.u_mtrldef_mtrlid[ls_i]),1,dw_2.rowcount())=0 then
  697. chC++
  698. dw_pageretr.RowsCopy(ls_i, ls_i, Primary!, dw_2, dw_2.rowcount() + 1, Primary!)
  699. end if
  700. end if
  701. next
  702. end event
  703. type cb_del from uo_imflatbutton within w_mtrlware_storageid_ch_saletask2
  704. integer x = 3223
  705. integer y = 1324
  706. integer taborder = 70
  707. boolean bringtotop = true
  708. string text = "删除"
  709. end type
  710. event clicked;call super::clicked;IF dw_2.GETROW()=0 THEN
  711. MESSAGEBOX('提示','请选择删除的行对象!', Information!, OK! )
  712. RETURN
  713. END IF
  714. dw_2.DeleteRow (0)
  715. dw_2.TriggerEvent (rowfocuschanged!)
  716. end event
  717. type cbx_ml from checkbox within w_mtrlware_storageid_ch_saletask2
  718. integer x = 2331
  719. integer y = 200
  720. integer width = 357
  721. integer height = 60
  722. boolean bringtotop = true
  723. integer textsize = -9
  724. integer weight = 700
  725. fontcharset fontcharset = gb2312charset!
  726. fontpitch fontpitch = variable!
  727. string facename = "宋体"
  728. long textcolor = 16711680
  729. long backcolor = 134217739
  730. string text = "直接多选"
  731. boolean checked = true
  732. end type
  733. event clicked;wf_face_change()
  734. int use_ml
  735. if this.checked then
  736. use_ml=1
  737. else
  738. use_ml=0
  739. end if
  740. f_SetProfileString (sys_empid,dw_pageretr.DATAOBJECT, "use_ml", string(use_ml))
  741. end event
  742. event constructor;int use_ml
  743. use_ml=integer(f_ProfileString (sys_empid,dw_pageretr.DATAOBJECT, "use_ml", '1'))
  744. if use_ml=0 then
  745. this.checked=false
  746. else
  747. this.checked=true
  748. end if
  749. end event
  750. type ddlb_mtrlprp from dropdownlistbox within w_mtrlware_storageid_ch_saletask2
  751. integer y = 192
  752. integer width = 571
  753. integer height = 480
  754. integer taborder = 40
  755. boolean bringtotop = true
  756. integer textsize = -9
  757. integer weight = 400
  758. fontcharset fontcharset = gb2312charset!
  759. fontpitch fontpitch = variable!
  760. string facename = "宋体"
  761. long textcolor = 33554432
  762. string text = "全部[-1]"
  763. boolean sorted = false
  764. boolean vscrollbar = true
  765. string item[] = {"自制产品[0]","产品包装件[1]","采购[2]","外协部件[3]","自制部件[4]","全部[-1]"}
  766. borderstyle borderstyle = stylelowered!
  767. end type
  768. event selectionchanged;CHOOSE CASE Index
  769. CASE 1
  770. cur_mtrlorigin = 0
  771. CASE 2
  772. cur_mtrlorigin = 1
  773. CASE 3
  774. cur_mtrlorigin = 2
  775. CASE 4
  776. cur_mtrlorigin = 3
  777. CASE 5
  778. cur_mtrlorigin = 4
  779. CASE 6
  780. cur_mtrlorigin = -1
  781. END CHOOSE
  782. cb_refresh.TriggerEvent (clicked!)
  783. f_SetProfileString (sys_empid,dw_pageretr.DataObject, "ddlb_mtrlorigin",String(cur_mtrlorigin))
  784. end event
  785. type st_2 from statictext within w_mtrlware_storageid_ch_saletask2
  786. integer x = 1573
  787. integer y = 72
  788. integer width = 535
  789. integer height = 72
  790. boolean bringtotop = true
  791. integer textsize = -9
  792. integer weight = 400
  793. fontcharset fontcharset = gb2312charset!
  794. fontpitch fontpitch = variable!
  795. string facename = "宋体"
  796. long textcolor = 255
  797. long backcolor = 67108864
  798. string text = "说明:[按Ctrl键反选]"
  799. boolean focusrectangle = false
  800. end type
  801. event constructor;this.backcolor = 14215660
  802. end event
  803. type tv_1 from uo_tv_mtrltype within w_mtrlware_storageid_ch_saletask2
  804. integer y = 300
  805. integer width = 850
  806. integer height = 2104
  807. integer taborder = 50
  808. boolean bringtotop = true
  809. integer textsize = -9
  810. fontcharset fontcharset = gb2312charset!
  811. fontfamily fontfamily = anyfont!
  812. string facename = "宋体"
  813. end type
  814. event selectionchanged;call super::selectionchanged;ls_handtype = THIS.uo_cur_info.handtype
  815. ls_handtype = ls_handtype + '%'
  816. PARENT.TriggerEvent('retrieve_pageretr')
  817. end event
  818. type cb_other from uo_imflatbutton within w_mtrlware_storageid_ch_saletask2
  819. integer x = 302
  820. integer width = 265
  821. integer height = 164
  822. integer taborder = 30
  823. boolean bringtotop = true
  824. string text = "相关信息"
  825. string normalpicname = "find2.BMP"
  826. integer picsize = 16
  827. toolbaralignment pic_align = alignattop!
  828. boolean border = false
  829. end type
  830. event clicked;call super::clicked;Long ll_row
  831. ll_row = dw_pageretr.GetRow()
  832. IF ll_row <= 0 THEN
  833. MessageBox('系统提示','请选择物料')
  834. RETURN
  835. END IF
  836. Long ll_mtrlid
  837. ll_mtrlid = dw_pageretr.Object.u_mtrldef_mtrlid[ll_row]
  838. IF IsValid(w_mtrl_info) THEN
  839. w_mtrl_info.WindowState = Normal!
  840. w_mtrl_info.ins_mtrlid = ll_mtrlid
  841. w_mtrl_info.wf_retrieve(ll_mtrlid)
  842. ELSE
  843. OpenWithParm(w_mtrl_info,ll_mtrlid)
  844. END IF
  845. end event
  846. type cbx_ph from checkbox within w_mtrlware_storageid_ch_saletask2
  847. integer x = 2962
  848. integer y = 200
  849. integer width = 375
  850. integer height = 60
  851. boolean bringtotop = true
  852. integer textsize = -9
  853. integer weight = 400
  854. fontcharset fontcharset = gb2312charset!
  855. fontpitch fontpitch = variable!
  856. string facename = "宋体"
  857. long backcolor = 134217739
  858. string text = "考虑批号"
  859. end type
  860. event clicked;IF THIS.Checked THEN
  861. this.weight = 700
  862. this.textcolor = 255
  863. ELSE
  864. this.weight = 400
  865. this.textcolor = 0
  866. END IF
  867. dw_pageretr.uf_save_profile_layout()
  868. if cbx_ph.checked = true then
  869. dw_pageretr.dataobject = 'dw_mtrlware_storageid_ch_saletask2_ph'
  870. dw_2.dataobject = 'dw_mtrlware_storageid_ch_saletask2_ph'
  871. if_ph=1
  872. else
  873. dw_pageretr.dataobject = 'dw_mtrlware_storageid_ch_saletask2'
  874. dw_2.dataobject = 'dw_mtrlware_storageid_ch_saletask2'
  875. if_ph=0
  876. end if
  877. dw_2.SetTransObject (sqlca)
  878. dw_pageretr.SetTransObject (sqlca)
  879. dw_pageretr.SetTransObject (sqlca)
  880. dw_pageretr.ins_inifile_name = sys_inifilename
  881. dw_pageretr.ins_opemp = publ_operator
  882. dw_pageretr.cardw_empid = sys_empid
  883. dw_pageretr.cur_dataobject = dw_pageretr.DataObject
  884. dw_pageretr.uf_read_profile_layout()
  885. f_SetProfileString (sys_empid, 'dw_mtrlware_storageid_ch_saletask2', "if_ph", string(if_ph))
  886. ori_oldselect = dw_pageretr.Describe("DataWindow.Table.Select")
  887. cb_refresh.TRIGGEREVENT(CLICKED!)
  888. end event
  889. event constructor;if_ph=integer(f_ProfileString (sys_empid, 'dw_mtrlware_storageid_ch_saletask2', "if_ph", '0'))
  890. if if_ph=0 then
  891. this.checked=false
  892. else
  893. this.checked=true
  894. end if
  895. IF THIS.Checked THEN
  896. this.weight = 700
  897. this.textcolor = 255
  898. ELSE
  899. this.weight = 400
  900. this.textcolor = 0
  901. END IF
  902. end event
  903. type dw_2 from datawindow within w_mtrlware_storageid_ch_saletask2
  904. integer x = 859
  905. integer y = 1428
  906. integer width = 2715
  907. integer height = 444
  908. integer taborder = 30
  909. boolean bringtotop = true
  910. string title = "none"
  911. string dataobject = "dw_mtrlware_storageid_ch_saletask2"
  912. boolean hscrollbar = true
  913. boolean vscrollbar = true
  914. boolean hsplitscroll = true
  915. boolean livescroll = true
  916. borderstyle borderstyle = stylelowered!
  917. end type
  918. event clicked;THIS.SetRow(row)
  919. THIS.SelectRow(0,FALSE)
  920. THIS.SelectRow(row,TRUE)
  921. end event
  922. event rowfocuschanged;if currentrow <=0 then return
  923. this.selectrow(0,false)
  924. this.selectrow(currentrow,true)
  925. end event