w_order_ml_rqmtrl_chng.srw 51 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898
  1. $PBExportHeader$w_order_ml_rqmtrl_chng.srw
  2. forward
  3. global type w_order_ml_rqmtrl_chng from w_publ_1ton_share_detail
  4. end type
  5. type st_2 from statictext within w_order_ml_rqmtrl_chng
  6. end type
  7. type ddlb_status from dropdownlistbox within w_order_ml_rqmtrl_chng
  8. end type
  9. type ddlb_scid from uo_ddlb_scid within w_order_ml_rqmtrl_chng
  10. end type
  11. type st_3 from statictext within w_order_ml_rqmtrl_chng
  12. end type
  13. type dw_child2 from u_dw_rbtnfilter within w_order_ml_rqmtrl_chng
  14. end type
  15. end forward
  16. global type w_order_ml_rqmtrl_chng from w_publ_1ton_share_detail
  17. string title = "增料单"
  18. boolean maxbox = true
  19. windowstate windowstate = maximized!
  20. event insert_childrow ( )
  21. event ue_p_wrkgrpid ( )
  22. event insert_childrow2 ( )
  23. event ue_add_bom ( )
  24. event ue_p_str ( )
  25. st_2 st_2
  26. ddlb_status ddlb_status
  27. ddlb_scid ddlb_scid
  28. st_3 st_3
  29. dw_child2 dw_child2
  30. end type
  31. global w_order_ml_rqmtrl_chng w_order_ml_rqmtrl_chng
  32. type variables
  33. Int child2_column_int = 1
  34. long cur_flag= -1 //-1:全部,0未审
  35. Long cur_scid
  36. Long cur_scid_arr[]
  37. uo_order_ml_rqmtrl_chng uo_chng
  38. datastore ds_copy
  39. String ins_choose
  40. String ins_choose_text
  41. end variables
  42. forward prototypes
  43. public function integer wf_flagstatus_rf ()
  44. public function integer wf_xls_retrievedata (long arg_ationid, ref s_xls_billlist arg_str_billlist, ref uo_sendtoexcel arg_obj_st, ref string arg_msg)
  45. public function integer wf_refresh_curuc (integer arg_scid, long arg_billid)
  46. public function integer wf_lock_child ()
  47. public subroutine wf_add_dwchild2 (s_saletask_mtrl s_inscust)
  48. public subroutine wf_edit_pz (integer arg_row, string arg_pzname)
  49. end prototypes
  50. event insert_childrow();long li_row
  51. li_row=dw_child.insertrow(0)
  52. dw_child.scrolltorow(li_row)
  53. dw_child.SetColumn ('u_mtrldef_mtrlcode')
  54. end event
  55. event ue_p_wrkgrpid();IF NOT dw_edit_mode THEN
  56. MessageBox('系统提示','非编辑状态不可使用')
  57. RETURN
  58. END IF
  59. IF MessageBox(publ_operator,'是否要确定要批设定领用工组', question!, YesNo!, 2) = 2 THEN
  60. RETURN
  61. END IF
  62. Long ll_i
  63. dw_child.AcceptText()
  64. IF dw_child.RowCount() = 0 THEN RETURN
  65. dw_child.SetRedraw(FALSE)
  66. FOR ll_i = 1 TO dw_child.RowCount()
  67. IF dw_child.Object.u_orderrqmtrl_chngmx_wrkgrpid[1] = 0 THEN RETURN
  68. IF ll_i = 1 THEN CONTINUE
  69. dw_child.Object.u_orderrqmtrl_chngmx_wrkgrpid[ll_i] = dw_child.Object.u_orderrqmtrl_chngmx_wrkgrpid[1]
  70. NEXT
  71. dw_child.SetRedraw(TRUE)
  72. end event
  73. event insert_childrow2();long li_row
  74. li_row=dw_child2.insertrow(0)
  75. dw_child2.scrolltorow(li_row)
  76. dw_child2.SetColumn ('u_mtrldef_mtrlcode')
  77. end event
  78. event ue_add_bom();IF NOT f_power_ind(1485) THEN
  79. MessageBox(publ_operator,'你没有使用权限!')
  80. RETURN
  81. END IF
  82. IF dw_edit_mode THEN RETURN
  83. String arg_msg = ''
  84. Long pagerert_row
  85. Long ll_billid
  86. pagerert_row = dw_pageretr.GetRow()
  87. IF pagerert_row <= 0 THEN
  88. MessageBox('系统提示','请选定当前目标单据!')
  89. RETURN
  90. END IF
  91. IF MessageBox ("询问","是否确定要添加清单?",Question!,YesNo! ) = 2 THEN RETURN
  92. ll_billid = dw_pageretr.Object.billid[pagerert_row]
  93. IF uo_chng.uf_add_bom(dw_pageretr.Object.scid[pagerert_row],ll_billid,arg_msg,TRUE) = 0 THEN
  94. MessageBox('Error!',arg_msg)
  95. ELSE
  96. MessageBox(publ_operator,'添加清单成功!')
  97. wf_refresh_curuc(dw_pageretr.Object.scid[pagerert_row],dw_pageretr.Object.billid[pagerert_row])
  98. END IF
  99. end event
  100. event ue_p_str();IF MessageBox(publ_operator,'是否要确定要按当前选中行信息对勾选行批设定 '+ins_choose_text, question!, YesNo!, 2) = 2 THEN
  101. RETURN
  102. END IF
  103. Long ll_i,ll_cnt
  104. String ls_type
  105. Dec ld_get
  106. String ls_get
  107. dw_child.AcceptText()
  108. IF dw_child.RowCount() = 0 THEN RETURN
  109. IF dw_child.getrow() = 0 THEN RETURN
  110. ls_type = Left( dw_child.Describe( ins_choose+ ".coltype"),4)
  111. CHOOSE CASE ls_type
  112. CASE "char"
  113. ls_get = dw_child.GetItemString(dw_child.getrow(),ins_choose)
  114. CASE "int","long","deci"
  115. ld_get = dw_child.GetItemNumber(dw_child.getrow(),ins_choose)
  116. CASE ELSE
  117. RETURN
  118. END CHOOSE
  119. dw_child.SetRedraw(FALSE)
  120. FOR ll_i = 1 TO dw_child.RowCount()
  121. CHOOSE CASE ls_type
  122. CASE "char"
  123. dw_child.SetItem(ll_i,ins_choose,ls_get)
  124. CASE "int","long","deci"
  125. dw_child.SetItem(ll_i,ins_choose,ld_get)
  126. CASE ELSE
  127. RETURN
  128. END CHOOSE
  129. NEXT
  130. dw_child.SetRedraw(TRUE)
  131. end event
  132. public function integer wf_flagstatus_rf ();//====================================================================
  133. // Function: wf_flagstatus_rf()
  134. //--------------------------------------------------------------------
  135. // Description:
  136. //--------------------------------------------------------------------
  137. // Arguments:(None)
  138. //--------------------------------------------------------------------
  139. // Returns: integer
  140. //--------------------------------------------------------------------
  141. // Author: yyx Date: 2003.12.26
  142. //--------------------------------------------------------------------
  143. // Modify History:
  144. //
  145. //====================================================================
  146. Long pagerert_row
  147. pagerert_row = dw_pageretr.GetRow()
  148. IF pagerert_row <= 0 THEN
  149. cb_auditing.Enabled = FALSE
  150. GOTO ext
  151. END IF
  152. IF dw_edit_mode THEN
  153. cb_auditing.Enabled = FALSE
  154. ELSE
  155. IF dw_pageretr.Object.flag[pagerert_row] = 0 THEN
  156. cb_auditing.Enabled = TRUE
  157. ELSEIF dw_pageretr.Object.flag[pagerert_row] = 1 THEN
  158. cb_auditing.Enabled = FALSE
  159. END IF
  160. END IF
  161. ext:
  162. RETURN 0
  163. end function
  164. public function integer wf_xls_retrievedata (long arg_ationid, ref s_xls_billlist arg_str_billlist, ref uo_sendtoexcel arg_obj_st, ref string arg_msg);//==============================================================================
  165. // 函数: w_publ_1ton_share_detail::wf_xls_retrievedata()
  166. //------------------------------------------------------------------------------
  167. // 描述: 此函数需要 重载,复制祖先范例代码,然后修改retrieve参数部分两处即可
  168. //------------------------------------------------------------------------------
  169. Long LS_ROW,ll_id,i,ll_scid
  170. LS_ROW = dw_pageretr.GetRow()
  171. IF LS_ROW <= 0 THEN
  172. arg_msg = '没有目标单据!'
  173. RETURN 0
  174. END IF
  175. //修改点:获取 指定retriev参数
  176. ll_id = dw_pageretr.Object.#1[LS_ROW]
  177. ////可选设置///
  178. arg_obj_st.uo_const.create_new_pwd( ) //创建随机密码
  179. if sys_option_xls_ifuse_passwd = 1 then arg_obj_st.uo_const.pwd = trim(sys_option_xls_user_passwd) //默认加密密码 默认为随即密码
  180. boolean xls_locked
  181. xls_locked = not (sys_option_xls_lock = 1)
  182. /// Excel 的可选设置
  183. if arg_obj_st.of_setoption(arg_ationid, xls_locked,true,arg_msg) <> 1 then
  184. return 0
  185. end if
  186. for i = 1 to arg_str_billlist.count
  187. ////可选操作///
  188. arg_str_billlist.bill[i].ds_data = create datastore //
  189. arg_str_billlist.bill[i].ds_data.dataobject = arg_str_billlist.bill[i].datawindow //
  190. arg_str_billlist.bill[i].ds_data.settransobject(sqlca)
  191. //修改点:注意retrieve 参数与上文对应
  192. arg_str_billlist.bill[i].ds_data.retrieve(ll_id)
  193. next
  194. return 1
  195. end function
  196. public function integer wf_refresh_curuc (integer arg_scid, long arg_billid);IF arg_billid <= 0 OR IsNull(arg_billid) THEN RETURN 0
  197. Long uc_row
  198. uc_row = dw_pageretr.GetRow()
  199. IF uc_row <= 0 THEN RETURN 0
  200. DateTime billdate
  201. String relemp
  202. String relcode
  203. String dscrp
  204. Long flag
  205. DateTime opdate
  206. String opemp
  207. DateTime moddate
  208. String modemp
  209. DateTime auditingdate
  210. String auditingrep
  211. String billcode
  212. long relid, relprintid, mtrlid
  213. int CreateBomFlag
  214. SELECT billdate,
  215. relemp,
  216. relcode,
  217. dscrp,
  218. flag,
  219. opdate,
  220. opemp,
  221. moddate,
  222. modemp,
  223. auditingdate,
  224. auditingrep,
  225. billcode,
  226. CreateBomFlag
  227. INTO
  228. :billdate,
  229. :relemp,
  230. :relcode,
  231. :dscrp,
  232. :flag,
  233. :opdate,
  234. :opemp,
  235. :moddate,
  236. :modemp,
  237. :auditingdate,
  238. :auditingrep,
  239. :billcode,
  240. :CreateBomFlag
  241. FROM u_orderrqmtrl_chng
  242. Where billid = :arg_billid;
  243. IF sqlca.SQLCode <> 0 THEN
  244. MessageBox('系统提示',"查询操作失败(错误单据唯一码)")
  245. RETURN 0
  246. END IF
  247. dw_pageretr.SetRedraw(FALSE)
  248. dw_pageretr.Object.scid[uc_row] = arg_scid
  249. dw_pageretr.Object.billid[uc_row] = arg_billid
  250. dw_pageretr.Object.billcode[uc_row] = billcode
  251. dw_pageretr.Object.u_orderrqmtrl_chng_relemp[uc_row] = relemp
  252. dw_pageretr.Object.relcode[uc_row] = relcode
  253. dw_pageretr.Object.dscrp[uc_row] = dscrp
  254. dw_pageretr.Object.flag[uc_row] = flag
  255. dw_pageretr.Object.billdate[uc_row] = billdate
  256. dw_pageretr.Object.opdate[uc_row] = opdate
  257. dw_pageretr.Object.opemp[uc_row] = opemp
  258. dw_pageretr.Object.moddate[uc_row] = moddate
  259. dw_pageretr.Object.modemp[uc_row] = modemp
  260. dw_pageretr.Object.auditingdate[uc_row] = auditingdate
  261. dw_pageretr.Object.auditingrep[uc_row] = auditingrep
  262. dw_pageretr.Object.CreateBomFlag[uc_row] = CreateBomFlag
  263. dw_pageretr.SetRedraw(TRUE)
  264. dw_uc.Reset()
  265. dw_pageretr.RowsCopy(dw_pageretr.GetRow(), dw_pageretr.GetRow(), Primary!, dw_uc, 1, Primary!)
  266. wf_flagstatus_rf()
  267. RETURN 1
  268. end function
  269. public function integer wf_lock_child ();//wf_lock_child
  270. INT LS_INT
  271. IF dw_edit_mode THEN
  272. FOR LS_INT=1 TO child_column_int
  273. dw_child.SetTabOrder (LS_INT,LS_INT*10 )
  274. NEXT
  275. FOR LS_INT=1 TO child2_column_int
  276. dw_child2.SetTabOrder (LS_INT,LS_INT*10 )
  277. NEXT
  278. ELSE
  279. FOR LS_INT=1 TO child_column_int
  280. dw_child.SetTabOrder (LS_INT, 0)
  281. NEXT
  282. FOR LS_INT=1 TO child2_column_int
  283. dw_child2.SetTabOrder (LS_INT, 0)
  284. NEXT
  285. END IF
  286. RETURN 1
  287. end function
  288. public subroutine wf_add_dwchild2 (s_saletask_mtrl s_inscust);Long child_row, ls_j
  289. String ls_mtrlsectype,ls_zxmtrlmode,ls_mtrlengname,ls_barcode
  290. s_mtrldef_array arg_s_mtrldef
  291. child_row = dw_child2.GetRow()
  292. FOR ls_j = 1 TO UpperBound(S_INSCUST.mtrlid)
  293. IF S_INSCUST.mtrlid[ls_j] > 0 THEN
  294. IF dw_child2.GetRow() > 0 THEN
  295. IF dw_child2.Object.u_orderrqmtrl_chngmx2_mtrlid[child_row] <> 0 THEN
  296. child_row = dw_child2.InsertRow (0)
  297. ELSE
  298. child_row = dw_child2.GetRow()
  299. END IF
  300. ELSE
  301. child_row = dw_child2.InsertRow (0)
  302. END IF
  303. dw_child2.Object.u_orderrqmtrl_chngmx2_mtrlid[child_row] = S_INSCUST.mtrlid[ls_j]
  304. dw_child2.Object.u_mtrldef_mtrlcode[child_row] = S_INSCUST.mtrlcode[ls_j]
  305. dw_child2.Object.u_mtrldef_mtrlname[child_row] = S_INSCUST.mtrlname[ls_j]
  306. dw_child2.Object.u_mtrldef_mtrlmode[child_row] = S_INSCUST.mtrlmode[ls_j]
  307. dw_child2.Object.u_mtrldef_unit[child_row] = S_INSCUST.unit[ls_j]
  308. dw_child2.Object.u_orderrqmtrl_chngmx2_relid[child_row] = S_INSCUST.taskid[ls_j]
  309. dw_child2.Object.u_orderrqmtrl_chngmx2_relprintid[child_row] = S_INSCUST.printid[ls_j]
  310. dw_child2.Object.relcode[child_row] = S_INSCUST.taskcode[ls_j]
  311. dw_child2.Object.u_saletask_taskdate[child_row] = S_INSCUST.taskdate[ls_j]
  312. dw_child2.Object.u_saletask_requiredate[child_row] = S_INSCUST.requiredate[ls_j]
  313. dw_child2.Object.u_saletaskmx_mtrlchangecode[child_row] = S_INSCUST.mtrlchangecode[ls_j]
  314. dw_child2.Object.u_saletaskmx_status[child_row] = S_INSCUST.status[ls_j]
  315. dw_child2.Object.u_saletaskmx_woodcode[child_row] = S_INSCUST.woodcode[ls_j]
  316. dw_child2.Object.u_saletaskmx_pcode[child_row] = S_INSCUST.pcode[ls_j]
  317. dw_child2.Object.u_saletaskmx_usaleqty[child_row] = S_INSCUST.qty[ls_j]
  318. long ls_taskid
  319. string ls_relcode,ls_cusname,ls_assign_emp,ls_plancode
  320. ls_taskid = S_INSCUST.taskid[ls_j]
  321. select isnull(u_saletask.relcode,''), isnull(u_cust.name,''), isnull(u_saletask.assign_emp,''),isnull(u_saletaskmx.plancode,'')
  322. into :ls_relcode, :ls_cusname, :ls_assign_emp, :ls_plancode
  323. from u_saletask inner join u_cust on u_saletask.cusid=u_cust.cusid inner join u_saletaskmx
  324. on u_saletask.scid=u_saletaskmx.scid and u_saletask.taskid=u_saletaskmx.taskid
  325. where u_saletask.taskid= :ls_taskid;
  326. dw_child2.Object.u_saletask_relcode[child_row] = ls_relcode
  327. dw_child2.Object.u_cust_name[child_row] = ls_cusname
  328. dw_child2.Object.u_saletask_assign_emp[child_row] = ls_assign_emp
  329. dw_child2.Object.u_saletaskmx_plancode[child_row] = ls_plancode
  330. //dw_child2.Object.u_saletask_relcode[child_row] = S_INSCUST.relcode[ls_j]
  331. //dw_child2.Object.u_cust_name[child_row] = S_INSCUST.cusname[ls_j]
  332. //dw_child2.Object.u_saletask_assign_emp[child_row] = S_INSCUST.assign_emp[ls_j]
  333. //dw_child2.Object.u_saletaskmx_plancode[child_row] = S_INSCUST.plancode[ls_j]
  334. IF f_find_mtrl(S_INSCUST.mtrlcode[ls_j],-1,arg_s_mtrldef) = 0 THEN
  335. ls_mtrlsectype = ''
  336. ls_zxmtrlmode = ''
  337. ls_mtrlengname = ''
  338. ls_barcode = ''
  339. ELSE
  340. ls_mtrlsectype = arg_s_mtrldef.mtrlsectype[1]
  341. ls_zxmtrlmode = arg_s_mtrldef.zxmtrlmode[1]
  342. ls_mtrlengname = arg_s_mtrldef.mtrlengname[1]
  343. ls_barcode = arg_s_mtrldef.barcode[1]
  344. END IF
  345. dw_child2.Object.u_mtrldef_mtrlsectype[child_row] = ls_mtrlsectype
  346. dw_child2.Object.u_mtrldef_zxmtrlmode[child_row] = ls_zxmtrlmode
  347. dw_child2.Object.u_mtrldef_mtrlengname[child_row] = ls_mtrlengname
  348. dw_child2.Object.u_mtrldef_barcode[child_row] = ls_barcode
  349. END IF
  350. NEXT
  351. dw_child.SetFocus()
  352. dw_child.SetColumn ('u_mtrldef_mtrlcode')
  353. end subroutine
  354. public subroutine wf_edit_pz (integer arg_row, string arg_pzname);if arg_row <= 0 then return
  355. string ls_findstr,ls_title
  356. long ll_flag
  357. String ls_data_type
  358. //arg_pzname
  359. //ll_flag =
  360. ls_data_type = dw_child.Describe(arg_pzname+".dddw.allowedit")
  361. IF ls_data_type = 'no' THEN RETURN
  362. s_view_dscrp s_view,s_return
  363. String ls_dscrp
  364. dw_child.AcceptText()
  365. ls_dscrp = dw_child.GetItemString(arg_row,arg_pzname)
  366. s_view.Title = ls_title
  367. s_view.dscrp = ls_dscrp
  368. s_view.editmode = dw_edit_mode
  369. OpenWithParm(w_view_dscrp_log,s_view)
  370. IF dw_edit_mode THEN
  371. s_return = Message.PowerObjectParm
  372. dw_child.SetItem (arg_row, arg_pzname, s_return.dscrp )
  373. END IF
  374. end subroutine
  375. on w_order_ml_rqmtrl_chng.create
  376. int iCurrent
  377. call super::create
  378. this.st_2=create st_2
  379. this.ddlb_status=create ddlb_status
  380. this.ddlb_scid=create ddlb_scid
  381. this.st_3=create st_3
  382. this.dw_child2=create dw_child2
  383. iCurrent=UpperBound(this.Control)
  384. this.Control[iCurrent+1]=this.st_2
  385. this.Control[iCurrent+2]=this.ddlb_status
  386. this.Control[iCurrent+3]=this.ddlb_scid
  387. this.Control[iCurrent+4]=this.st_3
  388. this.Control[iCurrent+5]=this.dw_child2
  389. end on
  390. on w_order_ml_rqmtrl_chng.destroy
  391. call super::destroy
  392. destroy(this.st_2)
  393. destroy(this.ddlb_status)
  394. destroy(this.ddlb_scid)
  395. destroy(this.st_3)
  396. destroy(this.dw_child2)
  397. end on
  398. event open;this.triggerevent('ue_before_open')
  399. wf_movetocenter()
  400. OLD_TITLE = THIS.Title
  401. s_tran = Message.PowerObjectParm
  402. IF NOT IsNull(s_tran) THEN
  403. retrieve_all = s_tran.if_retrieve_all
  404. mode = s_tran.work_mode
  405. arg_pkid = s_tran.arg_pkid
  406. arg_string_code = s_tran.arg_string_code
  407. if_sharedata = s_tran.if_sharedata //是否应用sharedata,当retrieve_all=true是生效
  408. ds_share = s_tran.ds_share
  409. if_power_sendout = s_tran.if_sendout
  410. if_power_print = s_tran.if_print
  411. END IF
  412. dw_pageretr.RBUTTON_FILTER_USE = TRUE //右键查询功能开关
  413. dw_pageretr.titleclick_sort_use = TRUE //单击标题排序功能开关
  414. dw_pageretr.SetTransObject (sqlca)
  415. dw_child2.SetTransObject (sqlca)
  416. pkcolumndbtname = wf_get_pkcolumndbtname(dw_pageretr) //取第一列为关键字
  417. ori_oldselect = dw_pageretr.Describe("DataWindow.Table.Select")
  418. ls_newselect = ori_oldselect
  419. ds_curquery = CREATE DATASTORE
  420. ds_curquery.DataObject = 'd_extr_find'
  421. ds_curquery.SetTransObject (sqlca)
  422. ds_copy_bill = CREATE datastore
  423. ds_copy_bill.DataObject = dw_child.dataobject
  424. ds_copy_bill.SetTransObject(sqlca)
  425. wf_editindex_lockf()
  426. sle_usual_query.Text = Trim(arg_string_code)
  427. IF NOT retrieve_all THEN
  428. THIS.TriggerEvent("ue_usual_query_RETR") //修改ls_newselect,retrieve
  429. ELSE
  430. IF if_sharedata THEN
  431. ds_share.ShareData(dw_pageretr)
  432. ELSE
  433. wf_retrieveuc(dw_pageretr,ls_newselect,1)
  434. THIS.TriggerEvent('RETRIEVE_pageretr')
  435. END IF
  436. END IF
  437. IF retrieve_all THEN
  438. THIS.TriggerEvent("ue_usual_query_filt")
  439. END IF
  440. IF sys_option_taskplancode_auto = 0 THEN //不允许填批号
  441. dw_child.Modify('u_orderrqmtrl_chngmx_plancode.protect="1"~n u_orderrqmtrl_chngmx_plancode.color="000000"')
  442. dw_child.Modify('u_orderrqmtrl_chngmx_plancode_t.color="000000"')
  443. END IF
  444. uc_column_int = 7
  445. child_column_int = 13
  446. child2_column_int = 5
  447. uo_chng = create uo_order_ml_rqmtrl_chng
  448. end event
  449. event close;call super::close;destroy uo_chng
  450. end event
  451. event refresh_interface;call super::refresh_interface;wf_flagstatus_rf()
  452. ddlb_scid.Enabled = NOT dw_edit_mode
  453. ddlb_status.Enabled = NOT dw_edit_mode
  454. dw_child.RBUTTON_SETPOSITION_USE = NOT dw_edit_mode //定位
  455. end event
  456. event retrieve_pageretr;boolean cb_nextpage_enabled,cb_retrieveall_enabled
  457. boolean cb_func_enabled,cb_retrieve_enabled
  458. cb_nextpage_enabled=cb_nextpage.enabled
  459. cb_retrieveall_enabled=cb_retrieveall.enabled
  460. cb_func_enabled=cb_func.enabled
  461. cb_nextpage.enabled=false
  462. cb_retrieveall.enabled=false
  463. cb_func.enabled=false
  464. dw_uc.Retrieve()
  465. dw_pageretr.Retrieve(cur_scid_arr, cur_flag)
  466. IF dw_pageretr.RowCount() > 0 THEN
  467. dw_pageretr.SetRow(1)
  468. dw_pageretr.triggerevent(rowfocuschanged!)
  469. end if
  470. f_title_change(dw_uc)
  471. wf_flagstatus_rf()
  472. this.triggerevent('retrieve_childdw')
  473. cb_nextpage.enabled=cb_nextpage_enabled
  474. cb_retrieveall.enabled=cb_retrieveall_enabled
  475. cb_func.enabled=cb_func_enabled
  476. end event
  477. event ue_usual_query_filt;call super::ue_usual_query_filt;string ls_querystrpart=''
  478. ls_newselect=lower(ori_oldselect)
  479. if trim(sle_usual_query.text)<>'' then
  480. if pos(trim(sle_usual_query.text),'%')=0 then
  481. ls_querystrpart="(billcode like '%"+trim(sle_usual_query.text)+"%')"
  482. else
  483. ls_querystrpart="(billcode like '"+trim(sle_usual_query.text)+"')"
  484. end if
  485. if Pos(ls_newselect," where ") <> 0 then
  486. ls_newselect=ls_newselect+" AND ("+ls_querystrpart+')'
  487. else
  488. ls_newselect=ls_newselect+" where ("+ls_querystrpart+')'
  489. end if
  490. end if
  491. wf_retrieveuc(dw_pageretr,ls_newselect,1)
  492. this.triggerevent('retrieve_pageretr')
  493. end event
  494. event ue_usual_query_retr;call super::ue_usual_query_retr;string ls_querystrpart=''
  495. ls_newselect=lower(ori_oldselect)
  496. if trim(sle_usual_query.text)<>'' then
  497. if pos(trim(sle_usual_query.text),'%')=0 then
  498. ls_querystrpart="(u_workprice_change.billcode like '%"+trim(sle_usual_query.text)+"%')"
  499. else
  500. ls_querystrpart="(u_workprice_change.billcode like '"+trim(sle_usual_query.text)+"')"
  501. end if
  502. if Pos(ls_newselect," where ") <> 0 then
  503. ls_newselect=ls_newselect+" AND ("+ls_querystrpart+')'
  504. else
  505. ls_newselect=ls_newselect+" where ("+ls_querystrpart+')'
  506. end if
  507. end if
  508. wf_retrieveuc(dw_pageretr,ls_newselect,1)
  509. this.triggerevent('retrieve_pageretr')
  510. end event
  511. event ue_viewprint;call super::ue_viewprint;
  512. IF NOT f_power_ind(1487) THEN
  513. MessageBox('提示','你没有使用权限!',information!,OK!)
  514. RETURN
  515. END IF
  516. Long LS_ROW
  517. LS_ROW = dw_pageretr.GetRow()
  518. IF LS_ROW <= 0 THEN
  519. MessageBox('NO','没有打印目标单据!')
  520. RETURN
  521. END IF
  522. S_print_MSG LS_PRMSG
  523. IF ls_newname <> '' THEN
  524. IF li_auditprint = 1 THEN
  525. IF dw_pageretr.Object.u_prdpf_change_flag[dw_pageretr.GetRow()] = 0 THEN
  526. MessageBox('NO','目标单据还未审核,不能打印!')
  527. RETURN
  528. END IF
  529. END IF
  530. LS_PRMSG.obj_dwNAME = ls_newname
  531. ELSE
  532. IF NOT f_power_ind(1487) THEN
  533. MessageBox(publ_operator,'你没有使用权限!')
  534. RETURN
  535. END IF
  536. LS_PRMSG.obj_dwNAME = ''
  537. END IF
  538. IF LS_PRMSG.obj_dwNAME = '' THEN RETURN
  539. LS_PRMSG.printrow = ll_prownum
  540. LS_PRMSG.TAG_TEXT = '增料单'
  541. LS_PRMSG.FILTER_STRING = ''
  542. LS_PRMSG.retr_pram_falg = 2
  543. LS_PRMSG.PAGECH_FLAG = 0
  544. LS_PRMSG.retr_pramnmb = dw_pageretr.Object.billid[LS_ROW]
  545. LS_PRMSG.rowcnt = dw_child.RowCount()
  546. OpenWithParm(w_publ_preview,LS_PRMSG)
  547. end event
  548. event retrieve_childdw;call super::retrieve_childdw;Long row,uc_relid, uc_scid
  549. row = dw_pageretr.GetRow()
  550. //
  551. IF row > 0 THEN
  552. uc_scid = dw_pageretr.Object.scid[row]
  553. uc_relid = dw_pageretr.Object.billid[row]
  554. dw_child.SetRedraw (FALSE)
  555. dw_child.Retrieve(uc_scid, uc_relid)
  556. dw_child.SetRedraw (TRUE)
  557. dw_child2.SetRedraw (FALSE)
  558. dw_child2.Retrieve(uc_scid, uc_relid)
  559. dw_child2.SetRedraw (TRUE)
  560. ELSE
  561. dw_child.Reset()
  562. dw_child2.Reset()
  563. END IF
  564. end event
  565. event ue_f8;call super::ue_f8;//用于选择物料明细内容,被f8[默认]\dw_child.doubleclicked调用
  566. IF NOT dw_edit_mode THEN RETURN
  567. Long child_row
  568. String ls_sonmtrlname
  569. child_row = dw_child.GetRow()
  570. Decimal i_newprice
  571. Long uc_row
  572. uc_row = dw_uc.GetRow()
  573. IF uc_row <= 0 THEN
  574. MessageBox('系统提示','请选择单据')
  575. RETURN
  576. END IF
  577. IF NOT IsValid(w_order_ml_mod_tree_mtrl) THEN
  578. s_edit_index_tran s_tranf8 //传递参数使用
  579. s_tranf8.if_retrieve_all = FALSE //是否一次retrieve所有行
  580. s_tranf8.work_mode = 1 //0-单纯编辑模式 1-选择\编辑模式
  581. s_tranf8.arg_pkid = 0 //目标定位pkid (备用)
  582. s_tranf8.arg_string_code = '' //查询列(物料编码)部分内容,用于初步筛选
  583. s_tranf8.if_select_all = TRUE //多选
  584. s_tranf8.b_long = 0 //选产品
  585. s_tranf8.f_long = -1
  586. Long ls_j
  587. IF dw_child.GetRow() > 0 THEN s_tranf8.arg_string_code = Trim(dw_child.Object.u_mtrldef_mtrlcode[dw_child.GetRow()])
  588. OpenWithParm(w_order_ml_mod_tree_mtrl,s_tranf8) //调用
  589. s_mtrldef_array s_inscust
  590. s_inscust = Message.PowerObjectParm //接受返回结构
  591. FOR ls_j = 1 TO UpperBound(s_inscust.mtrlid)
  592. IF s_inscust.mtrlid[ls_j] > 0 THEN //正常返回值则可以取以下值
  593. IF dw_child.GetRow() > 0 THEN
  594. IF dw_child.Object.u_OrderRqMtrl_chngmx_mtrlid[child_row] <> 0 THEN
  595. child_row = dw_child.InsertRow (0)
  596. ELSE
  597. child_row = dw_child.GetRow()
  598. END IF
  599. ELSE
  600. child_row = dw_child.InsertRow (0)
  601. END IF
  602. dw_child.Object.u_OrderRqMtrl_chngmx_mtrlid[child_row] = s_inscust.mtrlid[ls_j]
  603. dw_child.Object.u_mtrldef_mtrlcode [child_row] = s_inscust.mtrlcode[ls_j]
  604. dw_child.Object.u_mtrldef_mtrlname [child_row] = s_inscust.mtrlname[ls_j]
  605. dw_child.Object.u_mtrldef_mtrlmode [child_row] = s_inscust.mtrlmode[ls_j]
  606. dw_child.Object.u_mtrldef_mtrlsectype [child_row] = s_inscust.mtrlsectype[ls_j]
  607. dw_child.Object.u_mtrldef_zxmtrlmode [child_row] = s_inscust.zxmtrlmode[ls_j]
  608. dw_child.Object.u_mtrldef_mtrlengname [child_row] = s_inscust.mtrlengname[ls_j]
  609. dw_child.Object.u_mtrldef_barcode [child_row] = s_inscust.barcode[ls_j]
  610. dw_child.Object.u_mtrldef_unit[child_row] = s_inscust.unit[ls_j]
  611. dw_child.Object.u_mtrldef_mtrltype[child_row] = s_inscust.mtrltype[ls_j]
  612. dw_child.Object.u_mtrldef_mtrlprp[child_row] = s_inscust.mtrlprp[ls_j]
  613. dw_child.Object.u_mtrldef_mtrlorigin[child_row] = s_inscust.mtrlorigin[ls_j]
  614. dw_child.Object.u_OrderRqMtrl_chngmx_plantype[child_row] = s_inscust.mtrlorigin[ls_j]
  615. dw_child.Object.u_OrderRqMtrl_chngmx_status[child_row] = s_inscust.status[ls_j]
  616. dw_child.Object.u_OrderRqMtrl_chngmx_woodcode[child_row] = s_inscust.woodcode[ls_j]
  617. dw_child.Object.u_OrderRqMtrl_chngmx_pcode[child_row] = s_inscust.pcode[ls_j]
  618. dw_child.Object.u_OrderRqMtrl_chngmx_lp[child_row] = 1
  619. END IF
  620. NEXT
  621. this.triggerevent('ue_allowedit')
  622. dw_child.SetFocus()
  623. dw_child.SetColumn ('u_orderrqmtrl_chngmx_truerqqty')
  624. END IF
  625. end event
  626. event ue_print;call super::ue_print;//--直接打印
  627. IF NOT f_power_ind(1487) THEN
  628. MessageBox('提示','你没有使用权限!',information!,OK!)
  629. RETURN
  630. END IF
  631. uo_print_preview uo_print
  632. IF MessageBox ("IF","是否确定要打印当前单据吗?",Question!,YesNo! ) = 2 THEN RETURN
  633. S_print_MSG LS_PRMSG
  634. Long LS_ROW
  635. LS_ROW = dw_pageretr.GetRow()
  636. IF LS_ROW <= 0 THEN
  637. MessageBox('NO','没有打印目标单据!')
  638. RETURN
  639. END IF
  640. IF ls_newname <> '' THEN
  641. IF li_auditprint = 1 THEN
  642. IF dw_pageretr.Object.u_prdpf_change_flag[dw_pageretr.GetRow()] = 0 THEN
  643. MessageBox('NO','目标单据还未审核,不能打印!')
  644. RETURN
  645. END IF
  646. END IF
  647. LS_PRMSG.obj_dwNAME = ls_newname
  648. ELSE
  649. IF NOT f_power_ind(1487) THEN
  650. MessageBox(publ_operator,'你没有使用权限!')
  651. RETURN
  652. END IF
  653. LS_PRMSG.obj_dwNAME = ''
  654. END IF
  655. if LS_PRMSG.obj_dwNAME = '' then return
  656. LS_PRMSG.retr_pram_falg = 2
  657. LS_PRMSG.printrow = ll_prownum
  658. LS_PRMSG.TAG_TEXT = '增料单'
  659. LS_PRMSG.FILTER_STRING = ''
  660. LS_PRMSG.PAGECH_FLAG = 0
  661. LS_PRMSG.retr_pramnmb = dw_pageretr.Object.billid[LS_ROW]
  662. LS_PRMSG.rowcnt = dw_child.RowCount()
  663. uo_print.FACT_PRINT_MSG = LS_PRMSG
  664. String arg_msg
  665. IF uo_print.uof_print_begin(arg_msg) = 0 THEN
  666. MessageBox("系统提示",arg_msg)
  667. RETURN
  668. END IF
  669. uo_print.ds_print()
  670. end event
  671. event ue_addzy;call super::ue_addzy;IF NOT f_power_ind(1486) THEN
  672. MessageBox(publ_operator,'你没有使用权限!')
  673. RETURN
  674. END IF
  675. IF dw_edit_mode THEN RETURN
  676. String arg_msg = '',LS_STR
  677. Long uc_row
  678. s_inputbox S_SREU
  679. uc_row = dw_pageretr.GetRow()
  680. IF uc_row <= 0 THEN
  681. MessageBox('系统提示','请选定当前目标单据!')
  682. RETURN
  683. END IF
  684. S_SREU.Title = '请输入要补充到备注的内容'
  685. S_SREU.OLD_TEXT = ''
  686. OpenWithParm(w_inputbox,S_SREU)
  687. LS_STR = Message.StringParm
  688. IF Trim(LS_STR) = '' OR IsNull(LS_STR) THEN RETURN
  689. IF uo_chng.add_dscrp(dw_pageretr.Object.scid[uc_row],dw_pageretr.Object.billid[uc_row],LS_STR,arg_msg,true) = 0 THEN
  690. MessageBox('Error!',arg_msg)
  691. RETURN
  692. ELSE
  693. MessageBox(publ_operator,'添加备注操作成功!')
  694. wf_refresh_curuc(dw_pageretr.Object.scid[uc_row],dw_pageretr.Object.billid[uc_row])
  695. END IF
  696. end event
  697. event ue_f7;call super::ue_f7;//用于订单明细
  698. IF NOT dw_edit_mode THEN RETURN
  699. Long uc_row
  700. uc_row = dw_uc.GetRow()
  701. IF uc_row <= 0 THEN
  702. MessageBox('系统提示','请选择单据')
  703. RETURN
  704. END IF
  705. Long child_row
  706. child_row = dw_child2.GetRow()
  707. IF NOT IsValid(w_saletask_mrp_ch) THEN
  708. s_edit_index_tran s_ch_tran //传递参数使用
  709. s_ch_tran.if_retrieve_all = FALSE //是否一次RETRIEVE所有行
  710. s_ch_tran.work_mode = 1 //0-单纯编辑模式 1-选择\编辑模式
  711. s_ch_tran.arg_pkid = 0 //目标定位PKID (备用)
  712. s_ch_tran.arg_string_code = '' //查询列(物料编码)部分内容,用于初步筛选
  713. s_ch_tran.e_long = 0
  714. Long chc = 1,ls_j
  715. dw_child2.AcceptText()
  716. OpenWithParm(w_saletask_mrp_ch,s_ch_tran)
  717. s_saletask_mtrl S_INSCUST
  718. S_INSCUST = Message.PowerObjectParm
  719. wf_add_dwchild2(S_INSCUST)
  720. // FOR ls_j = 1 TO UpperBound(S_INSCUST.mtrlid)
  721. // IF S_INSCUST.mtrlid[ls_j] > 0 THEN
  722. //
  723. // IF dw_child2.GetRow() > 0 THEN
  724. // IF dw_child2.Object.u_orderrqmtrl_chngmx2_mtrlid[child_row] <> 0 THEN
  725. // child_row = dw_child2.InsertRow (0)
  726. // ELSE
  727. // child_row = dw_child2.GetRow()
  728. // END IF
  729. // ELSE
  730. // child_row = dw_child2.InsertRow (0)
  731. // END IF
  732. //
  733. // dw_child2.Object.u_orderrqmtrl_chngmx2_mtrlid[child_row] = S_INSCUST.mtrlid[ls_j]
  734. // dw_child2.Object.u_mtrldef_mtrlcode[child_row] = S_INSCUST.mtrlcode[ls_j]
  735. // dw_child2.Object.u_mtrldef_mtrlname[child_row] = S_INSCUST.mtrlname[ls_j]
  736. // dw_child2.Object.u_mtrldef_mtrlmode[child_row] = S_INSCUST.mtrlmode[ls_j]
  737. // dw_child2.Object.u_mtrldef_unit[child_row] = S_INSCUST.unit[ls_j]
  738. //
  739. // dw_child2.Object.u_orderrqmtrl_chngmx2_relid[child_row] = S_INSCUST.taskid[ls_j]
  740. // dw_child2.Object.u_orderrqmtrl_chngmx2_relprintid[child_row] = S_INSCUST.printid[ls_j]
  741. // dw_child2.Object.relcode[child_row] = S_INSCUST.taskcode[ls_j]
  742. //
  743. // dw_child2.Object.u_saletask_taskdate[child_row] = S_INSCUST.taskdate[ls_j]
  744. // dw_child2.Object.u_saletask_requiredate[child_row] = S_INSCUST.requiredate[ls_j]
  745. // dw_child2.Object.u_saletaskmx_mtrlchangecode[child_row] = S_INSCUST.mtrlchangecode[ls_j]
  746. // dw_child2.Object.u_saletaskmx_status[child_row] = S_INSCUST.status[ls_j]
  747. // dw_child2.Object.u_saletaskmx_woodcode[child_row] = S_INSCUST.woodcode[ls_j]
  748. // dw_child2.Object.u_saletaskmx_pcode[child_row] = S_INSCUST.pcode[ls_j]
  749. // dw_child2.Object.u_saletaskmx_usaleqty[child_row] = S_INSCUST.qty[ls_j]
  750. //
  751. // END IF
  752. // NEXT
  753. // dw_child2.SetFocus()
  754. END IF
  755. end event
  756. event resize;//dw_child2
  757. ln_bar.EndX = THIS.Width
  758. ln_bar2.EndX = THIS.Width
  759. ln_1.EndX = THIS.Width
  760. ln_2.EndX = THIS.Width
  761. r_bar.Width = THIS.Width
  762. Long w_width,w_height
  763. w_width = 3602
  764. w_height = 2300
  765. IF newwidth < w_width THEN THIS.Width = w_width
  766. IF newheight < w_height THEN THIS.Height = w_height
  767. IF uc_width > 0 THEN
  768. dw_uc.Width = uc_width
  769. END IF
  770. IF uc_height > 0 THEN
  771. dw_uc.Height = uc_height
  772. END IF
  773. dw_pageretr.X = dw_uc.X + dw_uc.Width
  774. dw_pageretr.Width = THIS.Width - dw_pageretr.X - 40
  775. dw_pageretr.Height = dw_uc.Height
  776. dw_child2.X = dw_uc.X
  777. dw_child2.Y = dw_uc.Y + dw_uc.Height + 4
  778. dw_child2.Width = THIS.Width / 2 - 2
  779. dw_child2.Height = THIS.Height - dw_child.Y - 150
  780. dw_child.X = dw_child2.X + dw_child2.Width + 4
  781. dw_child.Y = dw_uc.Y + dw_uc.Height + 4
  782. dw_child.Width = THIS.Width / 2 - 2
  783. dw_child.Height = THIS.Height - dw_child.Y - 150
  784. this.triggerevent('resize_p')
  785. end event
  786. type cb_func from w_publ_1ton_share_detail`cb_func within w_order_ml_rqmtrl_chng
  787. end type
  788. type cb_exit from w_publ_1ton_share_detail`cb_exit within w_order_ml_rqmtrl_chng
  789. integer x = 2368
  790. end type
  791. type sle_usual_query from w_publ_1ton_share_detail`sle_usual_query within w_order_ml_rqmtrl_chng
  792. integer x = 229
  793. integer width = 553
  794. end type
  795. type cb_retrieveall from w_publ_1ton_share_detail`cb_retrieveall within w_order_ml_rqmtrl_chng
  796. integer x = 2821
  797. end type
  798. type em_pagerowno from w_publ_1ton_share_detail`em_pagerowno within w_order_ml_rqmtrl_chng
  799. integer x = 2519
  800. end type
  801. type dw_pageretr from w_publ_1ton_share_detail`dw_pageretr within w_order_ml_rqmtrl_chng
  802. integer x = 1733
  803. integer width = 1609
  804. integer height = 924
  805. string dataobject = "dw_order_ml_rqmtrl_chng_index"
  806. end type
  807. event dw_pageretr::rowfocuschanged;call super::rowfocuschanged;
  808. wf_flagstatus_rf()
  809. end event
  810. type st_1 from w_publ_1ton_share_detail`st_1 within w_order_ml_rqmtrl_chng
  811. integer x = 0
  812. alignment alignment = right!
  813. end type
  814. type cb_nextpage from w_publ_1ton_share_detail`cb_nextpage within w_order_ml_rqmtrl_chng
  815. integer x = 2971
  816. end type
  817. type dw_uc from w_publ_1ton_share_detail`dw_uc within w_order_ml_rqmtrl_chng
  818. integer width = 1723
  819. integer height = 920
  820. string dataobject = "dw_order_ml_rqmtrl_chng_edit"
  821. end type
  822. event dw_uc::dwnkey;PARENT.TriggerEvent('user_key')
  823. String ls_mtrlcode,ls_mtrlname,ls_unit,ls_mtrlmode
  824. String ls_mtrlsectype,ls_zxmtrlmode
  825. Long ll_mtrlid,ll_ori_mtrlid
  826. String ls_procode,ls_procode_f,ls_proname_f
  827. string ls_procode_ori
  828. IF Key = KeyDownArrow! THEN RETURN 1
  829. dw_uc.AcceptText()
  830. IF dw_uc.GetRow() <= 0 THEN RETURN
  831. IF dw_edit_mode THEN
  832. IF dw_uc.GetColumnName ( ) = 'dscrp' AND Key = KeyEnter! THEN
  833. dw_child2.ScrollToRow(1)
  834. dw_child2.SetFocus()
  835. dw_child2.SetColumn ('relcode')
  836. RETURN 1
  837. ELSE
  838. IF Key = KeyEnter! THEN //
  839. keybd_event ( 9, 0, 0 , 0 ) // 按下tab
  840. keybd_event ( 9, 0, 2, 0 ) // 释放tab
  841. RETURN 1
  842. END IF
  843. END IF
  844. END IF
  845. end event
  846. event dw_uc::doubleclicked;IF dw_edit_mode AND row > 0 THEN
  847. IF dwo.Name = 'u_mtrldef_mtrlcode' THEN
  848. PARENT.TriggerEvent('ue_f7')
  849. END IF
  850. END IF
  851. end event
  852. event dw_uc::clicked;call super::clicked;IF dw_edit_mode AND row > 0 THEN
  853. IF dwo.Name = 'p_c' OR dwo.Name = 'choicesaletaskmx_t' THEN
  854. PARENT.TriggerEvent('ue_f7')
  855. END IF
  856. END IF
  857. end event
  858. type gb_2 from w_publ_1ton_share_detail`gb_2 within w_order_ml_rqmtrl_chng
  859. integer x = 352
  860. integer y = 396
  861. integer width = 704
  862. integer height = 400
  863. long backcolor = 134217739
  864. end type
  865. type dw_child from w_publ_1ton_share_detail`dw_child within w_order_ml_rqmtrl_chng
  866. integer x = 1742
  867. integer y = 1220
  868. integer width = 1847
  869. integer height = 952
  870. string dataobject = "dw_order_ml_rqmtrl_chngmx_edit"
  871. end type
  872. event dw_child::dwnkey;call super::dwnkey;PARENT.TriggerEvent('user_key')
  873. Long child_row
  874. String ls_mtrlcode,ls_mtrlname,ls_mtrlmode,ls_mtrlsectype,ls_zxmtrlmode
  875. Long ll_mtrlid
  876. string ls_unit, ls_mtrltype
  877. int li_mtrlprp, li_mtrlorigin
  878. IF dw_edit_mode THEN
  879. IF KeyDown(Keydownarrow!) THEN
  880. Long li_row
  881. IF dw_child.GetRow() = dw_child.RowCount() THEN
  882. PARENT.TriggerEvent("insert_childrow")
  883. END IF
  884. ELSE
  885. If (KeyDown(keyenter!) OR KeyDown(keytab!)) AND NOT KeyDown(keycontrol!) AND NOT KeyDown(keyshift!) THEN
  886. IF THIS.GetColumnName() = 'u_mtrldef_mtrlcode' THEN
  887. dw_child.AcceptText()
  888. child_row = dw_child.GetRow()
  889. IF child_row > 0 THEN
  890. ls_mtrlcode = dw_child.Object.u_mtrldef_mtrlcode[child_row]
  891. SELECT mtrlid,
  892. mtrlname,
  893. mtrlmode,
  894. mtrlsectype,
  895. zxmtrlmode,
  896. unit,
  897. mtrltype,
  898. mtrlprp,
  899. mtrlorigin
  900. INTO :ll_mtrlid,
  901. :ls_mtrlname,
  902. :ls_mtrlmode,
  903. :ls_mtrlsectype,
  904. :ls_zxmtrlmode,
  905. :ls_unit,
  906. :ls_mtrltype,
  907. :li_mtrlprp,
  908. :li_mtrlorigin
  909. FROM u_mtrldef
  910. Where mtrlcode = :ls_mtrlcode;
  911. IF sqlca.SQLCode <> 0 THEN
  912. PARENT.TriggerEvent('ue_f8')
  913. return 1
  914. ELSE
  915. dw_child.Object.u_OrderRqMtrl_chngmx_mtrlid[child_row] = ll_mtrlid
  916. dw_child.Object.u_mtrldef_mtrlname [child_row] = ls_mtrlname
  917. dw_child.Object.u_mtrldef_mtrlmode [child_row] = ls_mtrlmode
  918. dw_child.Object.u_mtrldef_mtrlsectype [child_row] = ls_mtrlsectype
  919. dw_child.Object.u_mtrldef_zxmtrlmode [child_row] = ls_zxmtrlmode
  920. dw_child.Object.u_mtrldef_unit[child_row] = ls_unit
  921. dw_child.Object.u_mtrldef_mtrltype[child_row] = ls_mtrltype
  922. dw_child.Object.u_mtrldef_mtrlprp[child_row] = li_mtrlprp
  923. dw_child.Object.u_mtrldef_mtrlorigin[child_row] = li_mtrlorigin
  924. dw_child.Object.u_OrderRqMtrl_chngmx_plantype[child_row] = li_mtrlorigin
  925. dw_child.Object.u_OrderRqMtrl_chngmx_status[child_row] = ""
  926. dw_child.Object.u_OrderRqMtrl_chngmx_woodcode[child_row] = ""
  927. dw_child.Object.u_OrderRqMtrl_chngmx_pcode[child_row] = ""
  928. dw_child.Object.u_OrderRqMtrl_chngmx_lp[child_row] = 1
  929. END IF
  930. parent.triggerevent('ue_allowedit')
  931. IF Key = keyenter! THEN
  932. keybd_event ( 9, 0, 0 , 0 ) // 按下tab
  933. keybd_event ( 9, 0, 2, 0 ) // 释放tab
  934. RETURN 1
  935. END IF
  936. END IF
  937. // ELSEIF THIS.GetColumnName() = 'u_workprice_changemx_dscrp' AND dw_child.GetRow() = dw_child.RowCount() THEN
  938. // PARENT.TriggerEvent("insert_childrow")
  939. // RETURN 1
  940. ELSE
  941. IF Key = keyenter! THEN //
  942. keybd_event ( 9, 0, 0 , 0 ) // 按下tab
  943. keybd_event ( 9, 0, 2, 0 ) // 释放tab
  944. RETURN 1
  945. END IF
  946. END IF
  947. END IF
  948. END IF
  949. END IF
  950. end event
  951. event dw_child::doubleclicked;IF Not dw_edit_mode THEN RETURN
  952. String col[]
  953. Long i
  954. col = {'u_orderrqmtrl_chngmx_rqqty','u_orderrqmtrl_chngmx_truerqqty','u_orderrqmtrl_chngmx_wrkgrpid'}
  955. IF Lower(Left(dwo.Type,4)) = 'text' THEN
  956. s_inputbox S_SREU
  957. String LS_STR,column_name,ls_type
  958. column_name = dwo.Name
  959. ins_choose_text = this.Describe( column_name+ ".text")
  960. column_name = Left(column_name,Len(column_name) - 2)
  961. ins_choose = column_name
  962. for i =1 to upperbound(col)
  963. IF ins_choose = col[i] then
  964. Parent.TriggerEvent('ue_p_str')
  965. END IF
  966. next
  967. ELSE
  968. If (dwo.Name = "u_orderrqmtrl_chngmx_status" Or &
  969. dwo.Name = "u_orderrqmtrl_chngmx_pcode" Or &
  970. dwo.Name = "u_orderrqmtrl_chngmx_woodcode") And row > 0 Then
  971. wf_edit_pz(row,dwo.Name)
  972. Return
  973. End If
  974. IF dw_child.GetColumnName( ) = 'u_mtrldef_mtrlcode' THEN
  975. PARENT.TriggerEvent('ue_f8')
  976. END IF
  977. END IF
  978. end event
  979. event dw_child::editchanged;call super::editchanged;IF dw_edit_mode AND row > 0 THEN
  980. this.accepttext()
  981. IF dwo.name ='u_orderrqmtrl_chngmx_truerqqty' then
  982. IF data = '' then return
  983. this.object.u_orderrqmtrl_chngmx_rqqty[row] = this.object.u_orderrqmtrl_chngmx_truerqqty[row]
  984. end if
  985. end if
  986. end event
  987. type cb_viewprint from w_publ_1ton_share_detail`cb_viewprint within w_order_ml_rqmtrl_chng
  988. integer x = 1723
  989. end type
  990. type cb_print from w_publ_1ton_share_detail`cb_print within w_order_ml_rqmtrl_chng
  991. integer x = 1531
  992. end type
  993. type cb_add from w_publ_1ton_share_detail`cb_add within w_order_ml_rqmtrl_chng
  994. end type
  995. event cb_add::clicked;IF NOT f_power_ind(1483) THEN
  996. MessageBox(publ_operator,'你没有使用权限!')
  997. RETURN
  998. END IF
  999. String arg_msg = ''
  1000. Long uc_row,i,count = 0
  1001. s_order_ml_rqmtrl_chng arg_s_main
  1002. IF dw_edit_mode THEN
  1003. dw_uc.AcceptText()
  1004. dw_child.AcceptText()
  1005. uc_row = dw_uc.GetRow()
  1006. IF uc_row <= 0 THEN
  1007. MessageBox('系统提示','请选定当前目标单据!')
  1008. RETURN
  1009. END IF
  1010. IF NOT dw_uc.Object.billdate[uc_row] > DateTime(2000-01-01,Now()) THEN
  1011. MessageBox('系统提示','不合理发生时间!')
  1012. dw_uc.SetFocus()
  1013. dw_uc.SetColumn("billdate")
  1014. RETURN
  1015. END IF
  1016. IF dw_uc.Object.u_orderrqmtrl_chng_relemp[uc_row] = '' THEN
  1017. MessageBox('系统提示','请填写经手人!')
  1018. dw_uc.SetFocus()
  1019. dw_uc.SetColumn("u_orderrqmtrl_chng_relemp")
  1020. RETURN
  1021. END IF
  1022. arg_s_main.scid = cur_scid
  1023. arg_s_main.billid = dw_uc.Object.billid[uc_row]
  1024. arg_s_main.billdate = dw_uc.Object.billdate[uc_row]
  1025. arg_s_main.relemp = dw_uc.Object.u_orderrqmtrl_chng_relemp[uc_row]
  1026. arg_s_main.dscrp = dw_uc.Object.dscrp[uc_row]
  1027. arg_s_main.relcode = dw_uc.Object.relcode[uc_row]
  1028. arg_s_main.CreateBomFlag = dw_uc.Object.CreateBomFlag[uc_row]
  1029. count = 0
  1030. FOR i = 1 TO dw_child2.RowCount()
  1031. IF dw_child2.Object.u_OrderRqMtrl_chngmx2_mtrlid[i] > 0 THEN
  1032. IF dw_child2.Object.u_OrderRqMtrl_chngmx2_relid[i] = 0 OR &
  1033. dw_child2.Object.u_OrderRqMtrl_chngmx2_relprintid[i] = 0 THEN
  1034. MessageBox('系统提示','第'+String(i)+'行,请选择销售订单明细')
  1035. RETURN
  1036. END IF
  1037. count++
  1038. arg_s_main.arg_s_mx2[count].printid = count
  1039. arg_s_main.arg_s_mx2[count].mtrlid = dw_child2.Object.u_OrderRqMtrl_chngmx2_mtrlid[i]
  1040. arg_s_main.arg_s_mx2[count].relid = dw_child2.Object.u_OrderRqMtrl_chngmx2_relid[i]
  1041. arg_s_main.arg_s_mx2[count].relprintid = dw_child2.Object.u_OrderRqMtrl_chngmx2_relprintid[i]
  1042. arg_s_main.arg_s_mx2[count].relcode = dw_child2.Object.relcode[i]
  1043. END IF
  1044. NEXT
  1045. count = 0
  1046. FOR i = 1 TO dw_child.RowCount()
  1047. IF dw_child.Object.u_OrderRqMtrl_chngmx_mtrlid[i] > 0 THEN
  1048. IF dw_child.Object.u_orderrqmtrl_chngmx_truerqqty[i] = 0 OR &
  1049. dw_child.Object.u_orderrqmtrl_chngmx_rqqty[i] = 0 THEN
  1050. MessageBox('系统提示','第'+String(i)+'行,需求数或用料数不能为0')
  1051. RETURN
  1052. END IF
  1053. IF dw_child.Object.u_orderrqmtrl_chngmx_wrkgrpid[i] = 0 THEN
  1054. MessageBox('系统提示','第'+String(i)+'行,请选择领用工组')
  1055. RETURN
  1056. END IF
  1057. count++
  1058. arg_s_main.arg_s_mx[count].printid = count
  1059. arg_s_main.arg_s_mx[count].mtrlid = dw_child.Object.u_OrderRqMtrl_chngmx_mtrlid[i]
  1060. arg_s_main.arg_s_mx[count].truerqqty = dw_child.Object.u_orderrqmtrl_chngmx_truerqqty[i]
  1061. arg_s_main.arg_s_mx[count].plantype = dw_child.Object.u_orderrqmtrl_chngmx_plantype[i]
  1062. arg_s_main.arg_s_mx[count].wrkgrpid = dw_child.Object.u_orderrqmtrl_chngmx_wrkgrpid[i]
  1063. arg_s_main.arg_s_mx[count].rqqty = dw_child.Object.u_orderrqmtrl_chngmx_rqqty[i]
  1064. arg_s_main.arg_s_mx[count].status = dw_child.Object.u_orderrqmtrl_chngmx_status[i]
  1065. arg_s_main.arg_s_mx[count].woodcode = dw_child.Object.u_orderrqmtrl_chngmx_woodcode[i]
  1066. arg_s_main.arg_s_mx[count].pcode = dw_child.Object.u_orderrqmtrl_chngmx_pcode[i]
  1067. arg_s_main.arg_s_mx[count].plancode = dw_child.Object.u_orderrqmtrl_chngmx_plancode[i]
  1068. IF IsNull(arg_s_main.arg_s_mx[count].plancode) then arg_s_main.arg_s_mx[count].plancode =''
  1069. END IF
  1070. NEXT
  1071. IF uo_chng.Save(arg_s_main,publ_operator,arg_msg,TRUE) = 0 THEN
  1072. MessageBox('error!',arg_msg)
  1073. RETURN
  1074. END IF
  1075. MessageBox(publ_operator,'保存操作成功!')
  1076. Long ll_row
  1077. ll_row = dw_pageretr.GetRow()
  1078. dw_pageretr.SelectRow(0,FALSE)
  1079. dw_pageretr.SelectRow(ll_row,TRUE)
  1080. wf_refresh_curuc(cur_scid,uo_chng.uo_billid) //刷新uc
  1081. ELSE
  1082. IF cur_scid < 0 THEN
  1083. MessageBox('error!',"请选择分部")
  1084. RETURN
  1085. END IF
  1086. dw_child2.RESET()
  1087. END IF
  1088. CALL SUPER::Clicked
  1089. IF dw_edit_mode THEN
  1090. PARENT.TriggerEvent("insert_childrow")
  1091. PARENT.TriggerEvent("insert_childrow2")
  1092. // dw_uc.SetRedraw(FALSE)
  1093. // dw_uc.SetRedraw(TRUE)
  1094. ELSE
  1095. PARENT.TriggerEvent("retrieve_childdw")
  1096. END IF
  1097. THIS.TriggerEvent('refresh_interface')
  1098. end event
  1099. type cb_edit from w_publ_1ton_share_detail`cb_edit within w_order_ml_rqmtrl_chng
  1100. end type
  1101. event cb_edit::clicked;IF NOT f_power_ind(1483) THEN
  1102. MessageBox(publ_operator,'你没有使用权限!')
  1103. RETURN
  1104. END IF
  1105. String arg_msg = ''
  1106. Long uc_row
  1107. uc_row = dw_pageretr.GetRow()
  1108. IF uc_row <= 0 THEN
  1109. MessageBox('系统提示','请选定当前目标单据!')
  1110. RETURN
  1111. END IF
  1112. IF NOT dw_edit_mode THEN
  1113. IF uo_chng.updatebegin(dw_pageretr.Object.scid[uc_row],dw_pageretr.Object.billid[uc_row],arg_msg) = 0 THEN
  1114. MessageBox('Error!',arg_msg)
  1115. RETURN
  1116. END IF
  1117. wf_refresh_curuc(dw_pageretr.Object.scid[uc_row],dw_pageretr.Object.billid[uc_row]) //刷新uc
  1118. PARENT.TriggerEvent("retrieve_childdw")
  1119. END IF
  1120. CALL SUPER::Clicked
  1121. end event
  1122. type cb_delet from w_publ_1ton_share_detail`cb_delet within w_order_ml_rqmtrl_chng
  1123. end type
  1124. event cb_delet::clicked;IF NOT f_power_ind(1484) THEN
  1125. MessageBox(publ_operator,'你没有使用权限!')
  1126. RETURN
  1127. END IF
  1128. IF dw_edit_mode THEN RETURN
  1129. String arg_msg = ''
  1130. Long uc_row
  1131. uc_row = dw_pageretr.GetRow()
  1132. IF uc_row <= 0 THEN
  1133. MessageBox('系统提示','请选定当前目标单据!')
  1134. RETURN
  1135. END IF
  1136. IF MessageBox ("IF","是否确定要删除当前单据吗?",Question!,YesNo! ) = 2 THEN RETURN
  1137. IF uo_chng.del(dw_pageretr.Object.scid[uc_row],dw_pageretr.Object.billid[uc_row],arg_msg,TRUE) = 0 THEN
  1138. MessageBox('Error!',arg_msg)
  1139. ELSE
  1140. //日志
  1141. Long ls_id
  1142. String ls_code
  1143. ls_id = dw_pageretr.Object.billid[uc_row]
  1144. ls_code = dw_pageretr.Object.billcode[uc_row]
  1145. f_setsysoplog('增料单','增料单删除,ID:'+String(ls_id)+',code:'+ls_code,arg_msg,TRUE)
  1146. //--
  1147. MessageBox(publ_operator,'删除单据'+String(dw_pageretr.Object.billcode[uc_row])+'成功!')
  1148. dw_pageretr.DeleteRow(uc_row)
  1149. dw_pageretr.Triggerevent(rowfocuschanged!)
  1150. END IF
  1151. end event
  1152. type cb_addzy from w_publ_1ton_share_detail`cb_addzy within w_order_ml_rqmtrl_chng
  1153. integer x = 1029
  1154. end type
  1155. event cb_addzy::clicked;call super::clicked;m_Dfc_Control_PopupMenu dmPopupMenu
  1156. String menustr
  1157. menustr = "Text=增加备注~tEvent=ue_addzy"
  1158. menustr = menustr + "|" + "Text=-"
  1159. menustr = menustr + "|" + "Text=添加清单~tEvent=ue_add_bom"
  1160. menustr = menustr + "|" + "Text=-"
  1161. menustr = menustr + "|" + "Text=复制单据~tEvent=ue_bill_copy"
  1162. menustr = menustr + "|" + "Text=粘贴单据~tEvent=ue_bill_paste"
  1163. IF Len(Trim(menustr)) <> 0 THEN
  1164. dmPopupMenu = CREATE m_Dfc_Control_PopupMenu
  1165. dmPopupMenu.mf_BuildMenu(THIS, menustr)
  1166. dmPopupMenu.mf_PopMenu()
  1167. DESTROY dmPopupMenu
  1168. END IF
  1169. end event
  1170. type cb_auditing from w_publ_1ton_share_detail`cb_auditing within w_order_ml_rqmtrl_chng
  1171. end type
  1172. event cb_auditing::clicked;call super::clicked;IF NOT f_power_ind(1485) THEN
  1173. MessageBox(publ_operator,'你没有使用权限!')
  1174. RETURN
  1175. END IF
  1176. IF dw_edit_mode THEN RETURN
  1177. String arg_msg = ''
  1178. Long pagerert_row
  1179. Long ll_billid
  1180. pagerert_row = dw_pageretr.GetRow()
  1181. IF pagerert_row <= 0 THEN
  1182. MessageBox('系统提示','请选定当前目标单据!')
  1183. RETURN
  1184. END IF
  1185. IF MessageBox ("询问","是否确定要审核当前单据吗(审核后单据将归档只读)?",Question!,YesNo! ) = 2 THEN RETURN
  1186. ll_billid = dw_pageretr.Object.billid[pagerert_row]
  1187. IF uo_chng.audit(dw_pageretr.Object.scid[pagerert_row],ll_billid,publ_operator,arg_msg,TRUE) = 0 THEN
  1188. MessageBox('Error!',arg_msg)
  1189. ELSE
  1190. MessageBox(publ_operator,'审核成功!')
  1191. wf_refresh_curuc(dw_pageretr.Object.scid[pagerert_row],dw_pageretr.Object.billid[pagerert_row])
  1192. END IF
  1193. end event
  1194. type cb_xm from w_publ_1ton_share_detail`cb_xm within w_order_ml_rqmtrl_chng
  1195. integer x = 1280
  1196. end type
  1197. event cb_xm::clicked;m_Dfc_Control_PopupMenu dmPopupMenu
  1198. String menustr
  1199. IF dw_edit_mode THEN
  1200. menustr = "Text=增明细~tEvent=ue_addmx"
  1201. menustr = menustr + "|" + "Text=删明细~tEvent=ue_deletemx"
  1202. menustr = menustr + "|" + "Text=-"
  1203. menustr = menustr + "|" + "Text=批设领用工组~tEvent=ue_p_wrkgrpid"
  1204. END IF
  1205. IF Trim(is_mx_menustr) <> '' THEN
  1206. IF dw_edit_mode THEN
  1207. menustr = menustr + "|" + "Text=-"
  1208. END IF
  1209. menustr = menustr + is_mx_menustr
  1210. END IF
  1211. IF if_MtrlPicView THEN
  1212. IF Trim(menustr) <> "" THEN
  1213. menustr = menustr + "|" + "Text=-"
  1214. menustr = menustr + "|" + "Text=明细物料图片查看~tEvent=ue_MtrlPicView"
  1215. ELSE
  1216. menustr = "Text=明细物料图片查看~tEvent=ue_MtrlPicView"
  1217. END IF
  1218. END IF
  1219. IF Len(Trim(menustr)) <> 0 THEN
  1220. dmPopupMenu = CREATE m_Dfc_Control_PopupMenu
  1221. dmPopupMenu.mf_BuildMenu(THIS, menustr)
  1222. dmPopupMenu.mf_PopMenu()
  1223. DESTROY dmPopupMenu
  1224. END IF
  1225. end event
  1226. type cb_retrieve from w_publ_1ton_share_detail`cb_retrieve within w_order_ml_rqmtrl_chng
  1227. end type
  1228. type cb_xls from w_publ_1ton_share_detail`cb_xls within w_order_ml_rqmtrl_chng
  1229. integer x = 1915
  1230. end type
  1231. type cb_help from w_publ_1ton_share_detail`cb_help within w_order_ml_rqmtrl_chng
  1232. integer x = 2217
  1233. end type
  1234. type cb_auditing_cancel from w_publ_1ton_share_detail`cb_auditing_cancel within w_order_ml_rqmtrl_chng
  1235. boolean visible = false
  1236. integer x = 3209
  1237. boolean enabled = false
  1238. end type
  1239. type p_msg from w_publ_1ton_share_detail`p_msg within w_order_ml_rqmtrl_chng
  1240. end type
  1241. type p_help from w_publ_1ton_share_detail`p_help within w_order_ml_rqmtrl_chng
  1242. end type
  1243. type p_encl from w_publ_1ton_share_detail`p_encl within w_order_ml_rqmtrl_chng
  1244. end type
  1245. type p_other from w_publ_1ton_share_detail`p_other within w_order_ml_rqmtrl_chng
  1246. end type
  1247. type gb_3 from w_publ_1ton_share_detail`gb_3 within w_order_ml_rqmtrl_chng
  1248. end type
  1249. type ln_bar from w_publ_1ton_share_detail`ln_bar within w_order_ml_rqmtrl_chng
  1250. end type
  1251. type ln_bar2 from w_publ_1ton_share_detail`ln_bar2 within w_order_ml_rqmtrl_chng
  1252. end type
  1253. type r_bar from w_publ_1ton_share_detail`r_bar within w_order_ml_rqmtrl_chng
  1254. integer x = 3310
  1255. end type
  1256. type ln_1 from w_publ_1ton_share_detail`ln_1 within w_order_ml_rqmtrl_chng
  1257. end type
  1258. type ln_2 from w_publ_1ton_share_detail`ln_2 within w_order_ml_rqmtrl_chng
  1259. end type
  1260. type st_2 from statictext within w_order_ml_rqmtrl_chng
  1261. integer x = 1531
  1262. integer y = 204
  1263. integer width = 178
  1264. integer height = 48
  1265. integer textsize = -9
  1266. integer weight = 400
  1267. fontcharset fontcharset = gb2312charset!
  1268. fontpitch fontpitch = variable!
  1269. string facename = "宋体"
  1270. long textcolor = 33554432
  1271. long backcolor = 134217739
  1272. string text = "状 态"
  1273. alignment alignment = right!
  1274. boolean focusrectangle = false
  1275. end type
  1276. type ddlb_status from dropdownlistbox within w_order_ml_rqmtrl_chng
  1277. integer x = 1719
  1278. integer y = 184
  1279. integer width = 480
  1280. integer height = 300
  1281. integer taborder = 30
  1282. boolean bringtotop = true
  1283. integer textsize = -9
  1284. integer weight = 400
  1285. fontcharset fontcharset = gb2312charset!
  1286. fontpitch fontpitch = variable!
  1287. string facename = "宋体"
  1288. long textcolor = 33554432
  1289. string text = "[全部]"
  1290. boolean sorted = false
  1291. string item[] = {"[全部]","待审核","已审核"}
  1292. borderstyle borderstyle = stylelowered!
  1293. end type
  1294. event selectionchanged;if index=1 then
  1295. cur_flag=-1
  1296. elseif index=2 then
  1297. cur_flag= 0
  1298. elseif index=3 then
  1299. cur_flag= 1
  1300. end if
  1301. parent.triggerevent("retrieve_pageretr")
  1302. end event
  1303. type ddlb_scid from uo_ddlb_scid within w_order_ml_rqmtrl_chng
  1304. integer x = 974
  1305. integer y = 184
  1306. integer width = 549
  1307. integer height = 620
  1308. integer taborder = 60
  1309. boolean bringtotop = true
  1310. end type
  1311. event constructor;call super::constructor;cur_scid=this.uo_scid
  1312. cur_scid_arr = THIS.uo_scid_arr
  1313. end event
  1314. event selectionchanged;call super::selectionchanged;cur_scid=this.uo_scid
  1315. cur_scid_arr = THIS.uo_scid_arr
  1316. parent.triggerevent("retrieve_pageretr")
  1317. end event
  1318. type st_3 from statictext within w_order_ml_rqmtrl_chng
  1319. integer x = 791
  1320. integer y = 204
  1321. integer width = 174
  1322. integer height = 48
  1323. boolean bringtotop = true
  1324. integer textsize = -9
  1325. integer weight = 400
  1326. fontcharset fontcharset = gb2312charset!
  1327. fontpitch fontpitch = variable!
  1328. string facename = "宋体"
  1329. long textcolor = 33554432
  1330. long backcolor = 134217739
  1331. string text = "分 部"
  1332. alignment alignment = right!
  1333. boolean focusrectangle = false
  1334. end type
  1335. type dw_child2 from u_dw_rbtnfilter within w_order_ml_rqmtrl_chng
  1336. integer y = 1232
  1337. integer width = 1294
  1338. integer height = 588
  1339. integer taborder = 20
  1340. boolean bringtotop = true
  1341. boolean titlebar = true
  1342. string title = "明细内容 2[双击选择]"
  1343. string dataobject = "dw_order_ml_rqmtrl_chngmx2_edit"
  1344. boolean maxbox = true
  1345. boolean hscrollbar = true
  1346. boolean vscrollbar = true
  1347. boolean resizable = true
  1348. boolean hsplitscroll = true
  1349. boolean rbutton_setposition_use = true
  1350. end type
  1351. event doubleclicked;call super::doubleclicked;IF dw_edit_mode AND row > 0 THEN
  1352. // IF this.GetColumnName( ) = 'u_mtrldef_mtrlcode' THEN
  1353. PARENT.TriggerEvent('ue_f7')
  1354. // END IF
  1355. END IF
  1356. end event
  1357. event dwnkey;call super::dwnkey;PARENT.TriggerEvent('user_key')
  1358. Long child_row
  1359. String ls_mtrlcode,ls_mtrlname,ls_mtrlmode,ls_mtrlsectype,ls_zxmtrlmode
  1360. Long ll_mtrlid
  1361. string ls_unit, ls_mtrltype
  1362. int li_mtrlprp, li_mtrlorigin
  1363. IF dw_edit_mode THEN
  1364. IF KeyDown(Keydownarrow!) THEN
  1365. Long li_row
  1366. IF this.GetRow() = this.RowCount() THEN
  1367. PARENT.TriggerEvent("insert_childrow2")
  1368. END IF
  1369. ELSE
  1370. If (KeyDown(keyenter!) OR KeyDown(keytab!)) AND NOT KeyDown(keycontrol!) AND NOT KeyDown(keyshift!) THEN
  1371. IF THIS.GetColumnName() = 'u_mtrldef_mtrlcode' or THIS.GetColumnName() = 'relcode' THEN
  1372. this.AcceptText()
  1373. child_row = this.GetRow()
  1374. PARENT.TriggerEvent('ue_f7')
  1375. // IF child_row > 0 THEN
  1376. // ls_mtrlcode = this.Object.u_mtrldef_mtrlcode[child_row]
  1377. // SELECT mtrlid,
  1378. // mtrlname,
  1379. // mtrlmode,
  1380. // mtrlsectype,
  1381. // zxmtrlmode,
  1382. // unit,
  1383. // mtrltype,
  1384. // mtrlprp,
  1385. // mtrlorigin
  1386. //
  1387. // INTO :ll_mtrlid,
  1388. // :ls_mtrlname,
  1389. // :ls_mtrlmode,
  1390. // :ls_mtrlsectype,
  1391. // :ls_zxmtrlmode,
  1392. // :ls_unit,
  1393. // :ls_mtrltype,
  1394. // :li_mtrlprp,
  1395. // :li_mtrlorigin
  1396. // FROM u_mtrldef
  1397. // Where mtrlcode = :ls_mtrlcode;
  1398. // IF sqlca.SQLCode <> 0 THEN
  1399. // PARENT.TriggerEvent('ue_f7')
  1400. // return 1
  1401. // ELSE
  1402. // this.Object.u_OrderRqMtrl_chngmx2_mtrlid[child_row] = ll_mtrlid
  1403. // this.Object.u_mtrldef_mtrlname [child_row] = ls_mtrlname
  1404. // this.Object.u_mtrldef_mtrlmode [child_row] = ls_mtrlmode
  1405. // END IF
  1406. //
  1407. // IF Key = keyenter! THEN
  1408. // keybd_event ( 9, 0, 0 , 0 ) // 按下tab
  1409. // keybd_event ( 9, 0, 2, 0 ) // 释放tab
  1410. // RETURN 1
  1411. // END IF
  1412. //
  1413. // END IF
  1414. ELSE
  1415. IF Key = keyenter! THEN //
  1416. keybd_event ( 9, 0, 0 , 0 ) // 按下tab
  1417. keybd_event ( 9, 0, 2, 0 ) // 释放tab
  1418. RETURN 1
  1419. END IF
  1420. END IF
  1421. END IF
  1422. END IF
  1423. END IF
  1424. end event
  1425. event clicked;call super::clicked;IF row > 0 AND dw_edit_mode THEN
  1426. THIS.SetRow(row)
  1427. IF KeyDown(keycontrol!) THEN
  1428. IF if_changeselect THEN
  1429. THIS.SelectRow(row,NOT THIS.IsSelected(row))
  1430. ELSE
  1431. if_changeselect = TRUE
  1432. END IF
  1433. ll_lastrow = row
  1434. ELSEIF KeyDown(keyshift!) THEN //按下SHIFT键
  1435. // IF ll_lastrow = 0 THEN //上次没选中任何行
  1436. // THIS.SelectRow(row,TRUE)
  1437. // ll_lastrow = currentrow //ll_lastrow为实例变量,记录上次单击的行
  1438. // ELSE
  1439. // THIS.SelectRow(0,FALSE) //全都不选中
  1440. // IF currentrow > ll_lastrow THEN
  1441. // FOR ll_i = ll_lastrow TO currentrow
  1442. // THIS.SelectRow(ll_i,TRUE)
  1443. // NEXT
  1444. // ELSE
  1445. // FOR ll_i = ll_lastrow TO currentrow STEP -1
  1446. // THIS.SelectRow(ll_i,TRUE)
  1447. // NEXT
  1448. // END IF
  1449. // END IF
  1450. ELSE
  1451. THIS.SelectRow(0,FALSE)
  1452. THIS.SelectRow(row,TRUE)
  1453. ll_lastrow = row
  1454. END IF
  1455. END IF
  1456. end event
  1457. event rowfocuschanged;call super::rowfocuschanged;//IF dw_edit_mode THEN RETURN
  1458. Long ll_i
  1459. IF NOT dw_edit_mode THEN
  1460. IF currentrow <= 0 THEN RETURN
  1461. THIS.SelectRow(0,FALSE)
  1462. THIS.SelectRow(currentrow,TRUE)
  1463. ELSE
  1464. IF if_del THEN RETURN
  1465. IF KeyDown(keycontrol!) THEN
  1466. IF NOT THIS.IsSelected(currentrow) THEN
  1467. THIS.SelectRow(currentrow,TRUE)
  1468. if_changeselect = FALSE
  1469. ELSE
  1470. if_changeselect = TRUE
  1471. END IF
  1472. ELSEIF KeyDown(keyshift!) THEN //按下SHIFT键
  1473. IF ll_lastrow = 0 THEN //上次没选中任何行
  1474. THIS.SelectRow(currentrow,TRUE)
  1475. ll_lastrow = currentrow //ll_lastrow为实例变量,记录上次单击的行
  1476. ELSE
  1477. THIS.SelectRow(0,FALSE) //全都不选中
  1478. IF currentrow > ll_lastrow THEN
  1479. FOR ll_i = ll_lastrow TO currentrow
  1480. THIS.SelectRow(ll_i,TRUE)
  1481. NEXT
  1482. ELSE
  1483. FOR ll_i = ll_lastrow TO currentrow STEP -1
  1484. THIS.SelectRow(ll_i,TRUE)
  1485. NEXT
  1486. END IF
  1487. END IF
  1488. ELSE
  1489. THIS.SelectRow(0,FALSE)
  1490. THIS.SelectRow(currentrow,TRUE)
  1491. ll_lastrow = currentrow
  1492. END IF
  1493. parent.triggerevent('ue_allowedit')
  1494. END IF
  1495. end event
  1496. event resize;call super::resize;
  1497. dw_child.x = this.x + this.width + 5
  1498. dw_child.width = parent.width - dw_child.X - 10
  1499. end event