w_workprice_change.srw 52 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006
  1. $PBExportHeader$w_workprice_change.srw
  2. forward
  3. global type w_workprice_change from w_publ_1ton_share_detail
  4. end type
  5. type st_2 from statictext within w_workprice_change
  6. end type
  7. type ddlb_status from dropdownlistbox within w_workprice_change
  8. end type
  9. end forward
  10. global type w_workprice_change from w_publ_1ton_share_detail
  11. string title = "工价表变更单 "
  12. boolean maxbox = true
  13. windowstate windowstate = maximized!
  14. event insert_childrow ( )
  15. event ue_mtrlarea_rate ( )
  16. event ue_p_wrkgrpid ( )
  17. event ue_p_editflag ( )
  18. event ue_p_workqty ( )
  19. event ue_p_workprice ( )
  20. event ue_p_status ( )
  21. event ue_p_pro ( )
  22. event ue_p_lsxtype ( )
  23. event ue_p_workhour ( )
  24. event ue_p_rate_price ( )
  25. st_2 st_2
  26. ddlb_status ddlb_status
  27. end type
  28. global w_workprice_change w_workprice_change
  29. type variables
  30. long cur_flag= -1 //-1:全部,0未审
  31. Long cur_scid
  32. Long cur_scid_arr[]
  33. uo_workprice_change uo_workprice
  34. end variables
  35. forward prototypes
  36. public function integer wf_flagstatus_rf ()
  37. 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)
  38. public function integer wf_refresh_curuc (long arg_billid)
  39. public function integer wf_check (long arg_wagemth, long arg_wageid, ref string arg_msg)
  40. end prototypes
  41. event insert_childrow();long li_row
  42. li_row=dw_child.insertrow(0)
  43. dw_child.scrolltorow(li_row)
  44. dw_child.SetColumn ('u_workprice_changemx_editflag')
  45. end event
  46. event ue_mtrlarea_rate();IF NOT dw_edit_mode THEN
  47. MessageBox('系统提示',"非编辑状态下不可以使用!")
  48. RETURN
  49. END IF
  50. IF MessageBox ("询问","本功能将根据油漆面积及相关比例计算出新用料量,是否继续?",question!,yesno! ) = 2 THEN RETURN
  51. Decimal ld_rebate
  52. Long ll_areatype
  53. Long ll_i
  54. Open(w_mtrlarea_rate)
  55. s_edit_index_tran s_tranbate
  56. s_tranbate = Message.PowerObjectParm
  57. ld_rebate = s_tranbate.b_decimal
  58. ll_areatype = s_tranbate.b_long
  59. IF ld_rebate = 0 THEN RETURN
  60. dw_child.SetRedraw(FALSE)
  61. FOR ll_i = 1 TO dw_child.RowCount( )
  62. IF ll_areatype = 0 THEN
  63. dw_child.Object.u_prdpf_changemx_sonscale[ll_i] = ld_rebate * dw_child.Object.u_mtrldef_mtrlarea[ll_i]
  64. ELSEIF ll_areatype = 1 THEN
  65. dw_child.Object.u_prdpf_changemx_sonscale[ll_i] = ld_rebate * dw_child.Object.u_mtrldef_mtrlarea1[ll_i]
  66. ELSEIF ll_areatype = 2 THEN
  67. dw_child.Object.u_prdpf_changemx_sonscale[ll_i] = ld_rebate * dw_child.Object.u_mtrldef_mtrlarea2[ll_i]
  68. END IF
  69. NEXT
  70. dw_child.SetRedraw(TRUE)
  71. end event
  72. event ue_p_wrkgrpid();IF Not dw_edit_mode THEN
  73. MessageBox('系统提示','非编辑状态不可使用')
  74. RETURN
  75. END IF
  76. IF MessageBox(publ_operator,'是否要确定要批设定工组', question!, YesNo!, 2) = 2 THEN
  77. RETURN
  78. END IF
  79. Long ll_i
  80. dw_child.AcceptText()
  81. IF dw_child.RowCount() < 1 THEN RETURN
  82. Long ll_wrkgrpid
  83. ll_wrkgrpid = dw_child.Object.u_workprice_changemx_wrkgrpid[1] //工组
  84. IF ll_wrkgrpid = 0 THEN RETURN
  85. //相同工组才设定
  86. dw_child.SetRedraw(False)
  87. FOR ll_i = 2 To dw_child.RowCount()
  88. dw_child.Object.u_workprice_changemx_wrkgrpid[ll_i] = ll_wrkgrpid
  89. NEXT
  90. dw_child.SetRedraw(True)
  91. end event
  92. event ue_p_editflag();IF Not dw_edit_mode THEN
  93. MessageBox('系统提示','非编辑状态不可使用')
  94. RETURN
  95. END IF
  96. IF MessageBox(publ_operator,'是否要确定要批设定类型', question!, YesNo!, 2) = 2 THEN
  97. RETURN
  98. END IF
  99. Long ll_i
  100. dw_child.AcceptText()
  101. IF dw_child.RowCount() = 0 THEN RETURN
  102. dw_child.SetRedraw(False)
  103. FOR ll_i = 1 To dw_child.RowCount()
  104. IF ll_i = 1 THEN CONTINUE
  105. dw_child.Object.u_workprice_changemx_editflag[ll_i] = dw_child.Object.u_workprice_changemx_editflag[1]
  106. NEXT
  107. dw_child.SetRedraw(True)
  108. end event
  109. event ue_p_workqty();IF NOT dw_edit_mode THEN
  110. MessageBox('系统提示','非编辑状态不可使用')
  111. RETURN
  112. END IF
  113. IF MessageBox(publ_operator,'是否要确定要批设定数量', question!, YesNo!, 2) = 2 THEN
  114. RETURN
  115. END IF
  116. Long ll_i
  117. dw_child.AcceptText()
  118. IF dw_child.RowCount() = 0 THEN RETURN
  119. dw_child.SetRedraw(FALSE)
  120. FOR ll_i = 1 TO dw_child.RowCount()
  121. IF ll_i = 1 THEN CONTINUE
  122. dw_child.Object.u_workprice_changemx_workqty[ll_i] = dw_child.Object.u_workprice_changemx_workqty[1]
  123. NEXT
  124. dw_child.SetRedraw(TRUE)
  125. end event
  126. event ue_p_workprice();IF NOT dw_edit_mode THEN
  127. MessageBox('系统提示','非编辑状态不可使用')
  128. RETURN
  129. END IF
  130. IF MessageBox(publ_operator,'是否要确定要批设定新单件工价', question!, YesNo!, 2) = 2 THEN
  131. RETURN
  132. END IF
  133. Long ll_i
  134. dw_child.AcceptText()
  135. IF dw_child.RowCount() = 0 THEN RETURN
  136. dw_child.SetRedraw(FALSE)
  137. FOR ll_i = 1 TO dw_child.RowCount()
  138. IF ll_i = 1 THEN CONTINUE
  139. dw_child.Object.u_workprice_changemx_workprice[ll_i] = dw_child.Object.u_workprice_changemx_workprice[1]
  140. NEXT
  141. dw_child.SetRedraw(TRUE)
  142. end event
  143. event ue_p_status();IF NOT dw_edit_mode THEN
  144. MessageBox('系统提示','非编辑状态不可使用')
  145. RETURN
  146. END IF
  147. IF MessageBox(publ_operator,'是否要确定要批设定配置', question!, YesNo!, 2) = 2 THEN
  148. RETURN
  149. END IF
  150. Long ll_i
  151. dw_child.AcceptText()
  152. IF dw_child.RowCount() = 0 THEN RETURN
  153. IF dw_child.Object.u_workprice_changemx_status [1] = '' THEN RETURN
  154. dw_child.SetRedraw(FALSE)
  155. FOR ll_i = 1 TO dw_child.RowCount()
  156. IF dw_child.Object.u_mtrldef_statusflag [ll_i] <> 2 THEN CONTINUE
  157. IF ll_i = 1 THEN CONTINUE
  158. dw_child.Object.u_workprice_changemx_status[ll_i] = dw_child.Object.u_workprice_changemx_status[1]
  159. NEXT
  160. dw_child.SetRedraw(TRUE)
  161. end event
  162. event ue_p_pro();IF NOT dw_edit_mode THEN
  163. MessageBox('系统提示','非编辑状态不可使用')
  164. RETURN
  165. END IF
  166. IF MessageBox(publ_operator,'是否要确定要批设定工序', question!, YesNo!, 2) = 2 THEN
  167. RETURN
  168. END IF
  169. Long ll_i
  170. dw_child.AcceptText()
  171. IF dw_child.RowCount() = 0 THEN RETURN
  172. dw_child.SetRedraw(FALSE)
  173. FOR ll_i = 1 TO dw_child.RowCount()
  174. IF ll_i = 1 THEN CONTINUE
  175. IF dw_child.Object.u_workprice_changemx_editflag[ll_i] = 0 THEN CONTINUE
  176. dw_child.Object.u_workprice_changemx_procode[ll_i] = dw_child.Object.u_workprice_changemx_procode[1]
  177. dw_child.Object.u_workprice_changemx_proname[ll_i] = dw_child.Object.u_workprice_changemx_proname[1]
  178. NEXT
  179. dw_child.SetRedraw(TRUE)
  180. end event
  181. event ue_p_lsxtype();IF NOT dw_edit_mode THEN
  182. MessageBox('系统提示','非编辑状态不可使用')
  183. RETURN
  184. END IF
  185. IF MessageBox(publ_operator,'是否要确定要批设定流水表打印类型?', question!, YesNo!, 2) = 2 THEN
  186. RETURN
  187. END IF
  188. Long ll_i
  189. dw_child.AcceptText()
  190. IF dw_child.RowCount() = 0 THEN RETURN
  191. dw_child.SetRedraw(FALSE)
  192. FOR ll_i = 1 TO dw_child.RowCount()
  193. IF ll_i = 1 THEN CONTINUE
  194. dw_child.Object.u_workprice_changemx_lsxtype[ll_i] = dw_child.Object.u_workprice_changemx_lsxtype[1]
  195. NEXT
  196. dw_child.SetRedraw(TRUE)
  197. end event
  198. event ue_p_workhour();IF NOT dw_edit_mode THEN
  199. MessageBox('系统提示','非编辑状态不可使用')
  200. RETURN
  201. END IF
  202. IF MessageBox(publ_operator,'是否要确定要批设定工时', question!, YesNo!, 2) = 2 THEN
  203. RETURN
  204. END IF
  205. Long ll_i
  206. dw_child.AcceptText()
  207. IF dw_child.RowCount() = 0 THEN RETURN
  208. dw_child.SetRedraw(FALSE)
  209. FOR ll_i = 1 TO dw_child.RowCount()
  210. IF ll_i = 1 THEN CONTINUE
  211. dw_child.Object.u_workprice_changemx_workhour[ll_i] = dw_child.Object.u_workprice_changemx_workhour[1]
  212. NEXT
  213. dw_child.SetRedraw(TRUE)
  214. end event
  215. event ue_p_rate_price();IF NOT dw_edit_mode THEN
  216. MessageBox('系统提示','非编辑状态下不能使用')
  217. RETURN
  218. END IF
  219. Long ll_i
  220. Decimal ld_rate
  221. Long ll_if_all
  222. Long ll_row
  223. Long ll_dec
  224. Long ll_way
  225. ll_row = dw_child.GetRow()
  226. IF ll_row <= 0 THEN
  227. MessageBox('系统提示','请选择明细内容')
  228. RETURN
  229. END IF
  230. s_edit_index_tran s_ins_rate
  231. Open(w_workprice_change_rate_edit)
  232. s_ins_rate = Message.PowerObjectParm
  233. ld_rate = s_ins_rate.b_decimal
  234. ll_if_all = s_ins_rate.b_long
  235. ll_dec = s_ins_rate.c_long
  236. ll_way = s_ins_rate.d_long
  237. IF ll_if_all = -1 THEN RETURN
  238. dw_child.AcceptText()
  239. IF ll_if_all = 0 THEN
  240. IF ll_way = 0 THEN
  241. dw_child.Object.u_workprice_changemx_workprice[ll_row] = Round(dw_child.Object.u_workprice_changemx_workprice_ori[ll_row] + ld_rate,ll_dec)
  242. ELSEIF ll_way = 1 THEN
  243. dw_child.Object.u_workprice_changemx_workprice[ll_row] = Round(dw_child.Object.u_workprice_changemx_workprice_ori[ll_row] - ld_rate,ll_dec)
  244. ELSEIF ll_way = 2 THEN
  245. dw_child.Object.u_workprice_changemx_workprice[ll_row] = Round(dw_child.Object.u_workprice_changemx_workprice_ori[ll_row] * ld_rate,ll_dec)
  246. ELSEIF ll_way = 3 THEN
  247. dw_child.Object.u_workprice_changemx_workprice[ll_row] = Round(dw_child.Object.u_workprice_changemx_workprice_ori[ll_row] / ld_rate,ll_dec)
  248. END IF
  249. ELSEIF ll_if_all = 1 THEN
  250. dw_child.SetRedraw(FALSE)
  251. FOR ll_i = 1 TO dw_child.RowCount()
  252. IF ll_way = 0 THEN
  253. dw_child.Object.u_workprice_changemx_workprice[ll_i] = Round(dw_child.Object.u_workprice_changemx_workprice_ori[ll_i] + ld_rate,ll_dec)
  254. ELSEIF ll_way = 1 THEN
  255. dw_child.Object.u_workprice_changemx_workprice[ll_i] = Round(dw_child.Object.u_workprice_changemx_workprice_ori[ll_i] - ld_rate,ll_dec)
  256. ELSEIF ll_way = 2 THEN
  257. dw_child.Object.u_workprice_changemx_workprice[ll_i] = Round(dw_child.Object.u_workprice_changemx_workprice_ori[ll_i] * ld_rate,ll_dec)
  258. ELSEIF ll_way = 3 THEN
  259. dw_child.Object.u_workprice_changemx_workprice[ll_i] = Round(dw_child.Object.u_workprice_changemx_workprice_ori[ll_i] / ld_rate,ll_dec)
  260. END IF
  261. NEXT
  262. dw_child.SetRedraw(TRUE)
  263. END IF
  264. end event
  265. public function integer wf_flagstatus_rf ();//====================================================================
  266. // Function: wf_flagstatus_rf()
  267. //--------------------------------------------------------------------
  268. // Description:
  269. //--------------------------------------------------------------------
  270. // Arguments:(None)
  271. //--------------------------------------------------------------------
  272. // Returns: integer
  273. //--------------------------------------------------------------------
  274. // Author: yyx Date: 2003.12.26
  275. //--------------------------------------------------------------------
  276. // Modify History:
  277. //
  278. //====================================================================
  279. Long pagerert_row
  280. pagerert_row = dw_pageretr.GetRow()
  281. IF pagerert_row <= 0 THEN
  282. cb_auditing.Enabled = FALSE
  283. GOTO ext
  284. END IF
  285. IF dw_edit_mode THEN
  286. cb_auditing.Enabled = FALSE
  287. ELSE
  288. IF dw_pageretr.Object.flag[pagerert_row] = 0 THEN
  289. cb_auditing.Enabled = TRUE
  290. ELSEIF dw_pageretr.Object.flag[pagerert_row] = 1 THEN
  291. cb_auditing.Enabled = FALSE
  292. END IF
  293. END IF
  294. ext:
  295. RETURN 0
  296. end function
  297. 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);//==============================================================================
  298. // 函数: w_publ_1ton_share_detail::wf_xls_retrievedata()
  299. //------------------------------------------------------------------------------
  300. // 描述: 此函数需要 重载,复制祖先范例代码,然后修改retrieve参数部分两处即可
  301. //------------------------------------------------------------------------------
  302. Long LS_ROW,ll_id,i,ll_scid
  303. LS_ROW = dw_pageretr.GetRow()
  304. IF LS_ROW <= 0 THEN
  305. arg_msg = '没有目标单据!'
  306. RETURN 0
  307. END IF
  308. //修改点:获取 指定retriev参数
  309. ll_id = dw_pageretr.Object.#1[LS_ROW]
  310. ////可选设置///
  311. arg_obj_st.uo_const.create_new_pwd( ) //创建随机密码
  312. if sys_option_xls_ifuse_passwd = 1 then arg_obj_st.uo_const.pwd = trim(sys_option_xls_user_passwd) //默认加密密码 默认为随即密码
  313. boolean xls_locked
  314. xls_locked = not (sys_option_xls_lock = 1)
  315. /// Excel 的可选设置
  316. if arg_obj_st.of_setoption(arg_ationid, xls_locked,true,arg_msg) <> 1 then
  317. return 0
  318. end if
  319. for i = 1 to arg_str_billlist.count
  320. ////可选操作///
  321. arg_str_billlist.bill[i].ds_data = create datastore //
  322. arg_str_billlist.bill[i].ds_data.dataobject = arg_str_billlist.bill[i].datawindow //
  323. arg_str_billlist.bill[i].ds_data.settransobject(sqlca)
  324. //修改点:注意retrieve 参数与上文对应
  325. arg_str_billlist.bill[i].ds_data.retrieve(ll_id)
  326. next
  327. return 1
  328. end function
  329. public function integer wf_refresh_curuc (long arg_billid);IF arg_billid <= 0 OR IsNull(arg_billid) THEN RETURN 0
  330. Long uc_row
  331. uc_row = dw_pageretr.GetRow()
  332. IF uc_row <= 0 THEN RETURN 0
  333. DateTime billdate
  334. String rep
  335. String relcode
  336. String dscrp
  337. Long flag
  338. String procode
  339. String proname
  340. DateTime opdate
  341. String opemp
  342. DateTime moddate
  343. String modemp
  344. DateTime auditingdate
  345. String auditingrep
  346. String billcode
  347. SELECT billdate,
  348. rep,
  349. relcode,
  350. dscrp,
  351. flag,
  352. procode,
  353. proname,
  354. opdate,
  355. opemp,
  356. moddate,
  357. modemp,
  358. auditingdate,
  359. auditingrep,
  360. billcode
  361. INTO
  362. :billdate,
  363. :rep,
  364. :relcode,
  365. :dscrp,
  366. :flag,
  367. :procode,
  368. :proname,
  369. :opdate,
  370. :opemp,
  371. :moddate,
  372. :modemp,
  373. :auditingdate,
  374. :auditingrep,
  375. :billcode
  376. FROM u_workprice_change
  377. Where billid = :arg_billid;
  378. IF sqlca.SQLCode <> 0 THEN
  379. MessageBox('系统提示',"查询操作失败(错误单据唯一码)")
  380. RETURN 0
  381. END IF
  382. dw_pageretr.SetRedraw(FALSE)
  383. dw_pageretr.Object.billid[uc_row] = arg_billid
  384. dw_pageretr.Object.billcode[uc_row] = billcode
  385. dw_pageretr.Object.procode[uc_row] = procode
  386. dw_pageretr.Object.proname[uc_row] = proname
  387. dw_pageretr.Object.rep[uc_row] = rep
  388. dw_pageretr.Object.relcode[uc_row] = relcode
  389. dw_pageretr.Object.dscrp[uc_row] = dscrp
  390. dw_pageretr.Object.flag[uc_row] = flag
  391. dw_pageretr.Object.billdate[uc_row] = billdate
  392. dw_pageretr.Object.opdate[uc_row] = opdate
  393. dw_pageretr.Object.opemp[uc_row] = opemp
  394. dw_pageretr.Object.moddate[uc_row] = moddate
  395. dw_pageretr.Object.modemp[uc_row] = modemp
  396. dw_pageretr.Object.auditingdate[uc_row] = auditingdate
  397. dw_pageretr.Object.auditingrep[uc_row] = auditingrep
  398. dw_pageretr.SetRedraw(TRUE)
  399. dw_uc.Reset()
  400. dw_pageretr.RowsCopy(dw_pageretr.GetRow(), dw_pageretr.GetRow(), Primary!, dw_uc, 1, Primary!)
  401. wf_flagstatus_rf()
  402. RETURN 1
  403. end function
  404. public function integer wf_check (long arg_wagemth, long arg_wageid, ref string arg_msg);//检查该月该项目所属的单据是否已审
  405. Int rslt = 1
  406. Long ll_wagemode
  407. Long cnt
  408. Long li_year,li_month
  409. li_year = Long(Left(String(arg_wagemth),4))
  410. li_month = Long(Right(String(arg_wagemth),2))
  411. SELECT wagemode INTO :ll_wagemode
  412. FROM u_gz_wageitem
  413. Where wageid = :arg_wageid;
  414. IF sqlca.SQLCode <> 0 THEN
  415. rslt = 0
  416. arg_msg = '查询工资项目计算方法失败'+sqlca.SQLErrText
  417. GOTO ext
  418. END IF
  419. CHOOSE CASE ll_wagemode
  420. CASE 12
  421. cnt = 0
  422. SELECT count(*) INTO :cnt
  423. FROM u_scwg_taskwork_2
  424. WHERE wagemth = :arg_wagemth
  425. AND wageid = :arg_wageid
  426. AND flag = 0
  427. AND billtype = 1;
  428. IF sqlca.SQLCode <> 0 THEN
  429. rslt = 0
  430. arg_msg = '查询个人产品计件单明细失败!原因:'+sqlca.SQLErrText
  431. GOTO ext
  432. END IF
  433. IF cnt > 0 THEN
  434. rslt = 0
  435. arg_msg = '该月的个人产品计件单没有审核,不能更改该项目工资金额!'
  436. GOTO ext
  437. END IF
  438. CASE 13
  439. cnt = 0
  440. SELECT count(*) INTO :cnt
  441. FROM u_sc_taskwork
  442. WHERE wagemth = :arg_wagemth
  443. AND wageid = :arg_wageid
  444. AND Auditingflag = 0;
  445. IF sqlca.SQLCode <> 0 THEN
  446. rslt = 0
  447. arg_msg = '查询产品个人计件单明细失败!原因:'+sqlca.SQLErrText
  448. GOTO ext
  449. END IF
  450. IF cnt > 0 THEN
  451. rslt = 0
  452. arg_msg = '该月的产品个人计件单没有审核,不能更改该项目工资金额!'
  453. GOTO ext
  454. END IF
  455. CASE 14
  456. cnt = 0
  457. SELECT count(*) INTO :cnt
  458. FROM u_sc_abnormity
  459. WHERE wagemth = :arg_wagemth
  460. AND wageid = :arg_wageid
  461. AND secAuditingflag = 0;
  462. IF sqlca.SQLCode <> 0 THEN
  463. arg_msg = '查询是否有异常计件单未审核失败,原因>>'+sqlca.SQLErrText
  464. rslt = 0
  465. GOTO ext
  466. END IF
  467. IF cnt > 0 THEN
  468. arg_msg = '该月的异常计件单没有审核,不能更改该项目工资金额!'
  469. rslt = 0
  470. GOTO ext
  471. END IF
  472. CASE 15
  473. cnt = 0
  474. SELECT count(*)
  475. INTO :cnt
  476. FROM u_scwg_taskwork
  477. WHERE u_scwg_taskwork.wageid = :arg_wageid
  478. AND u_scwg_taskwork.wagemth = :arg_wagemth
  479. AND u_scwg_taskwork.Auditingflag = 0 ;
  480. IF sqlca.SQLCode <> 0 THEN
  481. rslt = 0
  482. arg_msg = '查询操作失败,已经审核数量'
  483. GOTO ext
  484. END IF
  485. IF cnt > 0 THEN
  486. rslt = 0
  487. arg_msg = '还有工作中心工序单没有审核,不能更改该项目工资金额!'
  488. GOTO ext
  489. END IF
  490. CASE 16
  491. cnt = 0
  492. SELECT count(*) INTO :cnt
  493. FROM u_scwg_taskwork_2
  494. WHERE wagemth = :arg_wagemth
  495. AND wageid = :arg_wageid
  496. AND flag = 0
  497. AND billtype = 0;
  498. IF sqlca.SQLCode <> 0 THEN
  499. rslt = 0
  500. arg_msg = '查询工作中心产品月分配计件单明细失败!原因:'+sqlca.SQLErrText
  501. GOTO ext
  502. END IF
  503. IF cnt > 0 THEN
  504. rslt = 0
  505. arg_msg = '该月的工作中心产品月分配计件单没有审核,不能更改该项目工资金额!'
  506. GOTO ext
  507. END IF
  508. CASE 17
  509. cnt = 0
  510. SELECT count(*)
  511. INTO :cnt
  512. FROM u_scwg_taskwork_day
  513. WHERE u_scwg_taskwork_day.wageid = :arg_wageid
  514. AND u_scwg_taskwork_day.wagemth = :arg_wagemth
  515. AND u_scwg_taskwork_day.flag = 0
  516. AND u_scwg_taskwork_day.billtype = 0;
  517. IF sqlca.SQLCode <> 0 THEN
  518. rslt = 0
  519. arg_msg = '查询工作中心产品日分配计件单操作失败,'+sqlca.SQLErrText
  520. GOTO ext
  521. END IF
  522. IF cnt > 0 THEN
  523. rslt = 0
  524. arg_msg = '该月的工作中心产品日分配计件单没有审核,不能更改该项目工资金额!'
  525. GOTO ext
  526. END IF
  527. CASE 18
  528. cnt = 0
  529. SELECT count(*) INTO :cnt
  530. FROM u_scwg_taskwork_2
  531. WHERE wagemth = :arg_wagemth
  532. AND wageid = :arg_wageid
  533. AND flag = 0
  534. AND billtype = 2;
  535. IF sqlca.SQLCode <> 0 THEN
  536. rslt = 0
  537. arg_msg = '查询工作中心月分配异常计件单明细失败!原因:'+sqlca.SQLErrText
  538. GOTO ext
  539. END IF
  540. IF cnt > 0 THEN
  541. rslt = 0
  542. arg_msg = '该月的工作中心月分配异常计件单没有审核,不能更改该项目工资金额!'
  543. GOTO ext
  544. END IF
  545. CASE 19
  546. cnt = 0
  547. SELECT count(*)
  548. INTO :cnt
  549. FROM u_scwg_taskwork_day
  550. WHERE u_scwg_taskwork_day.wageid = :arg_wageid
  551. AND u_scwg_taskwork_day.wagemth = :arg_wagemth
  552. AND u_scwg_taskwork_day.flag = 0
  553. AND u_scwg_taskwork_day.billtype = 1;
  554. IF sqlca.SQLCode <> 0 THEN
  555. rslt = 0
  556. arg_msg = '查询工作中心日分配异常计件单操作失败,'+sqlca.SQLErrText
  557. GOTO ext
  558. END IF
  559. IF cnt > 0 THEN
  560. rslt = 0
  561. arg_msg = '该月的工作中心日分配异常计件单没有审核,不能更改该项目工资金额!'
  562. GOTO ext
  563. END IF
  564. CASE 21
  565. cnt = 0
  566. SELECT count(*) INTO :cnt
  567. FROM u_gz_loanwage
  568. WHERE wagemth = :arg_wagemth
  569. AND wageid = :arg_wageid
  570. AND flag = 0;
  571. IF sqlca.SQLCode <> 0 THEN
  572. rslt = 0
  573. arg_msg = '查询借支单明细失败!原因:'+sqlca.SQLErrText
  574. GOTO ext
  575. END IF
  576. IF cnt > 0 THEN
  577. rslt = 0
  578. arg_msg = '该月的借支单没有审核,不能更改该项目工资金额!'
  579. GOTO ext
  580. END IF
  581. CASE 22
  582. cnt = 0
  583. SELECT count(*) INTO :cnt
  584. FROM u_outware
  585. WHERE billtype = 10
  586. AND relid = :arg_wageid
  587. AND secflag = 0
  588. AND year(outdate) = :li_year
  589. AND Month(outdate) = :li_month;
  590. IF sqlca.SQLCode <> 0 THEN
  591. rslt = 0
  592. arg_msg = '查询扣费单明细失败!原因:'+sqlca.SQLErrText
  593. GOTO ext
  594. END IF
  595. IF cnt > 0 THEN
  596. rslt = 0
  597. arg_msg = '该月的扣费单没有审核,不能更改该项目工资金额!'
  598. GOTO ext
  599. END IF
  600. CASE 23
  601. cnt = 0
  602. SELECT count(*) INTO :cnt
  603. FROM u_gz_award_punish
  604. WHERE wagemth = :arg_wagemth
  605. AND wageid = :arg_wageid
  606. AND flag = 0;
  607. IF sqlca.SQLCode <> 0 THEN
  608. rslt = 0
  609. arg_msg = '查询奖罚单明细失败!原因:'+sqlca.SQLErrText
  610. GOTO ext
  611. END IF
  612. IF cnt > 0 THEN
  613. rslt = 0
  614. arg_msg = '该月的奖罚单没有审核,不能更改该项目工资金额!'
  615. GOTO ext
  616. END IF
  617. CASE 24
  618. cnt = 0
  619. SELECT count(*) INTO :cnt
  620. FROM u_kq_cwork
  621. WHERE wagemth = :arg_wagemth
  622. AND wageid = :arg_wageid
  623. AND flag = 0;
  624. IF sqlca.SQLCode <> 0 THEN
  625. rslt = 0
  626. arg_msg = '查询考勤单明细失败!原因:'+sqlca.SQLErrText
  627. GOTO ext
  628. END IF
  629. IF cnt > 0 THEN
  630. rslt = 0
  631. arg_msg = '该月的考勤单没有审核,不能更改该项目工资金额!'
  632. GOTO ext
  633. END IF
  634. CASE 25
  635. cnt = 0
  636. SELECT count(*) INTO :cnt
  637. FROM u_test
  638. WHERE wagemth = :arg_wagemth
  639. AND wageid = :arg_wageid
  640. AND secAuditingflag = 0;
  641. IF sqlca.SQLCode <> 0 THEN
  642. rslt = 0
  643. arg_msg = '查询绩效考核单明细失败!原因:'+sqlca.SQLErrText
  644. GOTO ext
  645. END IF
  646. IF cnt > 0 THEN
  647. rslt = 0
  648. arg_msg = '该月的绩效考核单没有审核,不能更改该项目工资金额!'
  649. GOTO ext
  650. END IF
  651. CASE 26
  652. cnt = 0
  653. SELECT count(*) INTO :cnt
  654. FROM u_consume_list
  655. WHERE wagemth = :arg_wagemth
  656. AND wageid = :arg_wageid
  657. AND wageflag = 0;
  658. IF sqlca.SQLCode <> 0 THEN
  659. rslt = 0
  660. arg_msg = '查询消费单明细失败!原因:'+sqlca.SQLErrText
  661. GOTO ext
  662. END IF
  663. IF cnt > 0 THEN
  664. rslt = 0
  665. arg_msg = '该月的消费单没有审核,不能更改该项目工资金额!'
  666. GOTO ext
  667. END IF
  668. CASE ELSE
  669. END CHOOSE
  670. ext:
  671. RETURN rslt
  672. end function
  673. on w_workprice_change.create
  674. int iCurrent
  675. call super::create
  676. this.st_2=create st_2
  677. this.ddlb_status=create ddlb_status
  678. iCurrent=UpperBound(this.Control)
  679. this.Control[iCurrent+1]=this.st_2
  680. this.Control[iCurrent+2]=this.ddlb_status
  681. end on
  682. on w_workprice_change.destroy
  683. call super::destroy
  684. destroy(this.st_2)
  685. destroy(this.ddlb_status)
  686. end on
  687. event open;call super::open;uc_column_int = 5
  688. child_column_int = 15
  689. uo_workprice = create uo_workprice_change
  690. end event
  691. event close;call super::close;destroy uo_workprice
  692. end event
  693. event refresh_interface;call super::refresh_interface;wf_flagstatus_rf()
  694. ddlb_status.enabled=not dw_edit_mode
  695. end event
  696. event retrieve_pageretr;boolean cb_nextpage_enabled,cb_retrieveall_enabled
  697. boolean cb_func_enabled,cb_retrieve_enabled
  698. cb_nextpage_enabled=cb_nextpage.enabled
  699. cb_retrieveall_enabled=cb_retrieveall.enabled
  700. cb_func_enabled=cb_func.enabled
  701. cb_nextpage.enabled=false
  702. cb_retrieveall.enabled=false
  703. cb_func.enabled=false
  704. dw_uc.Retrieve()
  705. dw_pageretr.Retrieve(cur_flag)
  706. IF dw_pageretr.RowCount() > 0 THEN
  707. dw_pageretr.SetRow(1)
  708. dw_pageretr.triggerevent(rowfocuschanged!)
  709. end if
  710. f_title_change(dw_uc)
  711. wf_flagstatus_rf()
  712. this.triggerevent('retrieve_childdw')
  713. cb_nextpage.enabled=cb_nextpage_enabled
  714. cb_retrieveall.enabled=cb_retrieveall_enabled
  715. cb_func.enabled=cb_func_enabled
  716. end event
  717. event ue_usual_query_filt;call super::ue_usual_query_filt;string ls_querystrpart=''
  718. ls_newselect=lower(ori_oldselect)
  719. if trim(sle_usual_query.text)<>'' then
  720. if pos(trim(sle_usual_query.text),'%')=0 then
  721. ls_querystrpart="(billcode like '%"+trim(sle_usual_query.text)+"%')"
  722. else
  723. ls_querystrpart="(billcode like '"+trim(sle_usual_query.text)+"')"
  724. end if
  725. if Pos(ls_newselect," where ") <> 0 then
  726. ls_newselect=ls_newselect+" AND ("+ls_querystrpart+')'
  727. else
  728. ls_newselect=ls_newselect+" where ("+ls_querystrpart+')'
  729. end if
  730. end if
  731. wf_retrieveuc(dw_pageretr,ls_newselect,1)
  732. this.triggerevent('retrieve_pageretr')
  733. end event
  734. event ue_usual_query_retr;call super::ue_usual_query_retr;string ls_querystrpart=''
  735. ls_newselect=lower(ori_oldselect)
  736. if trim(sle_usual_query.text)<>'' then
  737. if pos(trim(sle_usual_query.text),'%')=0 then
  738. ls_querystrpart="(u_workprice_change.billcode like '%"+trim(sle_usual_query.text)+"%')"
  739. else
  740. ls_querystrpart="(u_workprice_change.billcode like '"+trim(sle_usual_query.text)+"')"
  741. end if
  742. if Pos(ls_newselect," where ") <> 0 then
  743. ls_newselect=ls_newselect+" AND ("+ls_querystrpart+')'
  744. else
  745. ls_newselect=ls_newselect+" where ("+ls_querystrpart+')'
  746. end if
  747. end if
  748. wf_retrieveuc(dw_pageretr,ls_newselect,1)
  749. this.triggerevent('retrieve_pageretr')
  750. end event
  751. event ue_viewprint;call super::ue_viewprint;
  752. IF NOT f_power_ind(1346) THEN
  753. MessageBox('提示','你没有使用权限!',information!,OK!)
  754. RETURN
  755. END IF
  756. Long LS_ROW
  757. LS_ROW = dw_pageretr.GetRow()
  758. IF LS_ROW <= 0 THEN
  759. MessageBox('NO','没有打印目标单据!')
  760. RETURN
  761. END IF
  762. S_print_MSG LS_PRMSG
  763. IF ls_newname <> '' THEN
  764. IF li_auditprint = 1 THEN
  765. IF dw_pageretr.Object.u_prdpf_change_flag[dw_pageretr.GetRow()] = 0 THEN
  766. MessageBox('NO','目标单据还未审核,不能打印!')
  767. RETURN
  768. END IF
  769. END IF
  770. LS_PRMSG.obj_dwNAME = ls_newname
  771. ELSE
  772. // IF NOT f_power_ind(1346) THEN
  773. // MessageBox(publ_operator,'你没有使用权限!')
  774. // RETURN
  775. // END IF
  776. LS_PRMSG.obj_dwNAME = 'dw_rp_workprice_change_print'
  777. END IF
  778. IF LS_PRMSG.obj_dwNAME = '' THEN RETURN
  779. LS_PRMSG.printrow = ll_prownum
  780. LS_PRMSG.TAG_TEXT = this.title
  781. LS_PRMSG.FILTER_STRING = ''
  782. LS_PRMSG.retr_pram_falg = 15
  783. LS_PRMSG.PAGECH_FLAG = 0
  784. LS_PRMSG.retr_scid = 0
  785. LS_PRMSG.retr_pramnmb = dw_pageretr.Object.billid[LS_ROW]
  786. LS_PRMSG.rowcnt = dw_child.RowCount()
  787. OpenWithParm(w_publ_preview,LS_PRMSG)
  788. end event
  789. event retrieve_childdw;call super::retrieve_childdw;Long row,uc_relid
  790. row = dw_pageretr.GetRow()
  791. dw_child.setsort('u_workprice_changemx_printid A')
  792. dw_child.sort()
  793. IF row > 0 THEN
  794. uc_relid = dw_pageretr.Object.billid[row]
  795. dw_child.SetRedraw (FALSE)
  796. dw_child.Retrieve(uc_relid)
  797. dw_child.SetRedraw (TRUE)
  798. ELSE
  799. dw_child.Reset()
  800. END IF
  801. end event
  802. event ue_f8;call super::ue_f8;//用于选择明细内容,被f8[默认]\dw_child.doubleclicked调用
  803. IF NOT dw_edit_mode THEN RETURN
  804. Long child_row
  805. String ls_sonmtrlname
  806. child_row = dw_child.GetRow()
  807. Decimal i_newprice
  808. long uc_row
  809. uc_row = dw_uc.GetRow()
  810. IF uc_row <= 0 THEN
  811. MessageBox('系统提示','请选择单据')
  812. RETURN
  813. END IF
  814. IF NOT IsValid(w_mtrldef_edit) THEN
  815. s_edit_index_tran s_tranf8 //传递参数使用
  816. s_tranf8.if_retrieve_all = FALSE //是否一次retrieve所有行
  817. s_tranf8.work_mode = 1 //0-单纯编辑模式 1-选择\编辑模式
  818. s_tranf8.arg_pkid = 0 //目标定位pkid (备用)
  819. s_tranf8.arg_string_code = '' //查询列(物料编码)部分内容,用于初步筛选
  820. s_tranf8.if_select_all = TRUE //多选
  821. s_tranf8.b_long = 0 //选产品
  822. s_tranf8.f_long = -1
  823. Long ls_j
  824. IF dw_child.GetRow() > 0 THEN s_tranf8.arg_string_code = Trim(dw_child.Object.u_mtrldef_mtrlcode[dw_child.GetRow()])
  825. OpenWithParm(w_mtrldef_edit,s_tranf8) //调用
  826. s_mtrldef_array s_inscust
  827. s_inscust = Message.PowerObjectParm //接受返回结构
  828. FOR ls_j = 1 TO UpperBound(s_inscust.mtrlid)
  829. IF s_inscust.mtrlid[ls_j] > 0 THEN //正常返回值则可以取以下值
  830. IF dw_child.GetRow() > 0 THEN
  831. IF dw_child.Object.u_workprice_changemx_mtrlid[child_row] <> 0 THEN
  832. child_row = dw_child.InsertRow (0)
  833. ELSE
  834. child_row = dw_child.GetRow()
  835. END IF
  836. ELSE
  837. child_row = dw_child.InsertRow (0)
  838. END IF
  839. dw_child.Object.u_workprice_changemx_editflag[child_row] = 1
  840. dw_child.Object.u_workprice_changemx_mtrlid[child_row] = s_inscust.mtrlid[ls_j]
  841. dw_child.Object.u_mtrldef_mtrlcode [child_row] = s_inscust.mtrlcode[ls_j]
  842. dw_child.Object.u_mtrldef_mtrlname [child_row] = s_inscust.mtrlname[ls_j]
  843. dw_child.Object.u_mtrldef_mtrlmode [child_row] = s_inscust.mtrlmode[ls_j]
  844. dw_child.Object.u_mtrldef_mtrlsectype [child_row] = s_inscust.mtrlsectype[ls_j]
  845. dw_child.Object.u_mtrldef_zxmtrlmode [child_row] = s_inscust.zxmtrlmode[ls_j]
  846. END IF
  847. NEXT
  848. dw_child.SetFocus()
  849. dw_child.SetColumn ('u_mtrldef_mtrlcode')
  850. END IF
  851. end event
  852. event ue_print;call super::ue_print;//--直接打印
  853. IF NOT f_power_ind(1346) THEN
  854. MessageBox('提示','你没有使用权限!',information!,OK!)
  855. RETURN
  856. END IF
  857. uo_print_preview uo_print
  858. IF MessageBox ("IF","是否确定要打印当前单据吗?",Question!,YesNo! ) = 2 THEN RETURN
  859. S_print_MSG LS_PRMSG
  860. Long LS_ROW
  861. LS_ROW = dw_pageretr.GetRow()
  862. IF LS_ROW <= 0 THEN
  863. MessageBox('NO','没有打印目标单据!')
  864. RETURN
  865. END IF
  866. IF ls_newname <> '' THEN
  867. IF li_auditprint = 1 THEN
  868. IF dw_pageretr.Object.u_prdpf_change_flag[dw_pageretr.GetRow()] = 0 THEN
  869. MessageBox('NO','目标单据还未审核,不能打印!')
  870. RETURN
  871. END IF
  872. END IF
  873. LS_PRMSG.obj_dwNAME = ls_newname
  874. ELSE
  875. // IF NOT f_power_ind(1346) THEN
  876. // MessageBox(publ_operator,'你没有使用权限!')
  877. // RETURN
  878. // END IF
  879. LS_PRMSG.obj_dwNAME = 'dw_rp_workprice_change_print'
  880. END IF
  881. if LS_PRMSG.obj_dwNAME = '' then return
  882. LS_PRMSG.retr_pram_falg = 15
  883. LS_PRMSG.printrow = ll_prownum
  884. LS_PRMSG.TAG_TEXT = '工价表变更单 '
  885. LS_PRMSG.FILTER_STRING = ''
  886. LS_PRMSG.PAGECH_FLAG = 0
  887. LS_PRMSG.retr_scid = 0
  888. LS_PRMSG.retr_pramnmb = dw_pageretr.Object.billid[LS_ROW]
  889. LS_PRMSG.rowcnt = dw_child.RowCount()
  890. uo_print.FACT_PRINT_MSG = LS_PRMSG
  891. String arg_msg
  892. IF uo_print.uof_print_begin(arg_msg) = 0 THEN
  893. MessageBox("系统提示",arg_msg)
  894. RETURN
  895. END IF
  896. uo_print.ds_print()
  897. end event
  898. event ue_addzy;call super::ue_addzy;IF NOT f_power_ind(1345) THEN
  899. MessageBox(publ_operator,'你没有使用权限!')
  900. RETURN
  901. END IF
  902. IF dw_edit_mode THEN RETURN
  903. String arg_msg = '',LS_STR
  904. Long uc_row
  905. s_inputbox S_SREU
  906. uc_row = dw_pageretr.GetRow()
  907. IF uc_row <= 0 THEN
  908. MessageBox('系统提示','请选定当前目标单据!')
  909. RETURN
  910. END IF
  911. S_SREU.Title = '请输入要补充到备注的内容'
  912. S_SREU.OLD_TEXT = ''
  913. OpenWithParm(w_inputbox,S_SREU)
  914. LS_STR = Message.StringParm
  915. IF Trim(LS_STR) = '' OR IsNull(LS_STR) THEN RETURN
  916. IF uo_workprice.add_dscrp(dw_pageretr.Object.billid[uc_row],LS_STR,arg_msg,true) = 0 THEN
  917. MessageBox('Error!',arg_msg)
  918. RETURN
  919. ELSE
  920. MessageBox(publ_operator,'添加备注操作成功!')
  921. wf_refresh_curuc(dw_pageretr.Object.billid[uc_row])
  922. END IF
  923. end event
  924. event ue_f9;call super::ue_f9;//用于选择明细内容,被F10[默认]\dw_child.doubleclicked调用
  925. IF NOT dw_edit_mode THEN RETURN
  926. Long child_row
  927. child_row = dw_child.GetRow()
  928. IF NOT IsValid(w_sc_workprocedure_response) THEN
  929. s_edit_index_tran s_ch_tran
  930. s_ch_tran.if_retrieve_all = TRUE
  931. s_ch_tran.work_mode = 1
  932. s_ch_tran.arg_pkid = 0
  933. s_ch_tran.b_long = 0
  934. s_ch_tran.if_select_all = FALSE
  935. Long chc = 1,ls_j
  936. IF dw_child.GetRow() > 0 THEN s_ch_tran.arg_string_code = Trim(dw_child.Object.u_workprice_changemx_procode[dw_child.GetRow()])
  937. OpenWithParm(w_sc_workprocedure_response,s_ch_tran) //调用
  938. s_workprocedure S_INSCUST
  939. S_INSCUST = Message.PowerObjectParm //接受返回结构
  940. FOR ls_j = 1 TO UpperBound(S_INSCUST.wrkproid)
  941. IF S_INSCUST.wrkproid[ls_j] > 0 THEN //正常返回值则可以取以下值
  942. dw_child.Object.u_workprice_changemx_procode[child_row] = S_INSCUST.wrkprocode[ls_j]
  943. dw_child.Object.u_workprice_changemx_proname[child_row] = S_INSCUST.wrkproname[ls_j]
  944. END IF
  945. NEXT
  946. dw_child.SetColumn("u_workprice_changemx_workqty")
  947. dw_child.SetFocus()
  948. END IF
  949. end event
  950. event ue_f7;call super::ue_f7;//用于选择明细内容,被F8[默认]\dw_child.doubleclicked调用
  951. IF NOT dw_edit_mode THEN RETURN
  952. Long child_row,uc_row
  953. child_row = dw_child.GetRow()
  954. uc_row = dw_uc.GetRow()
  955. IF uc_row <= 0 THEN
  956. MessageBox('系统提示','请选择单据')
  957. RETURN
  958. END IF
  959. IF NOT IsValid(w_workprice_pro_page_ch) THEN
  960. s_edit_index_tran s_ch_tran //传递参数使用
  961. s_ch_tran.if_retrieve_all = FALSE //是否一次RETRIEVE所有行
  962. s_ch_tran.work_mode = 1 //0-单纯编辑模式 1-选择\编辑模式
  963. s_ch_tran.arg_pkid = 0 //目标定位PKID (备用)
  964. s_ch_tran.arg_string_code = '' //查询列(物料编码)部分内容,用于初步筛选
  965. Long chc = 1,ls_j
  966. dw_child.AcceptText()
  967. OpenWithParm(w_workprice_pro_page_ch,s_ch_tran)
  968. s_workpricetable_array S_INSCUST
  969. S_INSCUST = Message.PowerObjectParm
  970. FOR ls_j = 1 TO UpperBound(S_INSCUST.mtrlid)
  971. IF S_INSCUST.mtrlid[ls_j] > 0 THEN
  972. IF dw_child.GetRow() > 0 THEN
  973. IF dw_child.Object.u_workprice_changemx_mtrlid[child_row] > 0 THEN
  974. child_row = dw_child.InsertRow (0)
  975. ELSE
  976. child_row = dw_child.GetRow()
  977. END IF
  978. ELSE
  979. child_row = dw_child.InsertRow(0)
  980. END IF
  981. dw_child.Object.u_workprice_changemx_editflag[child_row] = 0
  982. dw_child.Object.u_mtrldef_mtrlcode[child_row] = S_INSCUST.mtrlcode[ls_j]
  983. dw_child.Object.u_workprice_changemx_mtrlid[child_row] = S_INSCUST.mtrlid[ls_j]
  984. dw_child.Object.u_mtrldef_mtrlname[child_row] = S_INSCUST.mtrlname[ls_j]
  985. dw_child.Object.u_mtrldef_mtrlmode[child_row] = S_INSCUST.mtrlmode[ls_j]
  986. dw_child.Object.u_mtrldef_mtrlsectype[child_row] = S_INSCUST.mtrlsectype[ls_j]
  987. dw_child.Object.u_mtrldef_zxmtrlmode[child_row] = S_INSCUST.zxmtrlmode[ls_j]
  988. dw_child.object.u_workprice_changemx_workqty_ori[child_row] = s_inscust.workqty[ls_j]
  989. dw_child.object.u_workprice_changemx_workqty[child_row] = s_inscust.workqty[ls_j]
  990. dw_child.object.u_workprice_changemx_workprice_ori[child_row] = s_inscust.workprice[ls_j]
  991. dw_child.object.u_workprice_changemx_workprice[child_row] = s_inscust.workprice[ls_j]
  992. dw_child.object.u_workprice_changemx_wrkgrpid[child_row] = s_inscust.wrkgrpid[ls_j]
  993. dw_child.object.u_workprice_changemx_ifstandard[child_row] = s_inscust.ifstandard[ls_j]
  994. dw_child.object.u_workprice_changemx_lsxtype[child_row] = s_inscust.lsxtype[ls_j]
  995. dw_child.object.u_workprice_changemx_lastflag[child_row] = s_inscust.lastflag[ls_j]
  996. dw_child.object.u_workprice_changemx_workhour[child_row] = s_inscust.workhour[ls_j]
  997. dw_child.object.u_workprice_changemx_worklevel[child_row] = s_inscust.worklevel[ls_j]
  998. dw_child.object.u_workprice_changemx_techlevel[child_row] = s_inscust.techlevel[ls_j]
  999. dw_child.object.u_workprice_changemx_dscrp[child_row] = s_inscust.dscrp[ls_j]
  1000. dw_child.object.u_workprice_changemx_procode[child_row] = s_inscust.procode[ls_j]
  1001. dw_child.object.u_workprice_changemx_proname[child_row] = s_inscust.proname[ls_j]
  1002. dw_child.object.u_workprice_changemx_status[child_row] = s_inscust.status[ls_j]
  1003. END IF
  1004. NEXT
  1005. dw_child.SetFocus()
  1006. END IF
  1007. end event
  1008. event ue_f10;call super::ue_f10;
  1009. //long ll_row,ll_mtrlid
  1010. //string ls_pfcode
  1011. //
  1012. //dw_child.accepttext()
  1013. //
  1014. //ll_row = dw_child.getrow()
  1015. //
  1016. //if ll_row <= 0 then return
  1017. //
  1018. //ll_mtrlid = dw_child.object.u_prdpf_changemx_mtrlid[ll_row]
  1019. //
  1020. //if ll_mtrlid <= 0 then
  1021. // messagebox('提示','请先选择上级物料')
  1022. // return
  1023. //end if
  1024. //
  1025. //openwithparm(w_mtrl_pf_ch,ll_mtrlid)
  1026. //ls_pfcode = message.stringparm
  1027. //
  1028. //if ls_pfcode <> '' then dw_child.object.u_prdpf_changemx_pfcode[ll_row] = ls_pfcode
  1029. //
  1030. end event
  1031. event ue_f11;call super::ue_f11;
  1032. //Long ll_row,ll_mtrlid
  1033. //String ls_pfcode
  1034. //Long uc_row
  1035. //
  1036. //dw_uc.AcceptText()
  1037. //dw_child.AcceptText()
  1038. //
  1039. //uc_row = dw_uc.GetRow()
  1040. //IF uc_row <= 0 THEN RETURN
  1041. //
  1042. //ll_row = dw_child.GetRow()
  1043. //IF ll_row <= 0 THEN RETURN
  1044. //
  1045. //ll_mtrlid = dw_uc.Object.u_prdpf_change_sonmtrlid[ll_row]
  1046. //
  1047. //IF ll_mtrlid <= 0 THEN
  1048. // MessageBox('提示','请先选择物料')
  1049. // dw_uc.SetFocus()
  1050. // dw_uc.SetColumn("u_mtrldef_mtrlcode")
  1051. // RETURN
  1052. //END IF
  1053. //
  1054. //OpenWithParm(w_mtrl_pf_ch,ll_mtrlid)
  1055. //ls_pfcode = Message.StringParm
  1056. //
  1057. //IF ls_pfcode <> '' THEN dw_child.Object.u_prdpf_changemx_sonpfcode[ll_row] = ls_pfcode
  1058. //
  1059. //
  1060. end event
  1061. event ue_f12;call super::ue_f12;
  1062. //IF NOT dw_edit_mode THEN RETURN
  1063. //Long uc_row,ll_mtrlid,child_row
  1064. //string ls_status
  1065. //
  1066. //child_row = dw_child.getrow()
  1067. //if child_row <= 0 then
  1068. // MessageBox('系统提示','请选择明细')
  1069. // RETURN
  1070. //END IF
  1071. //
  1072. //dw_child.AcceptText()
  1073. //ll_mtrlid = dw_child.Object.u_workprice_changemx_mtrlid[child_row]
  1074. //
  1075. //if ll_mtrlid <= 0 then
  1076. // messagebox('系统提示','请选择物料')
  1077. // return
  1078. //end if
  1079. //
  1080. //IF NOT IsValid(w_configure_ch_zj) THEN
  1081. // s_edit_index_tran s_ch_tran
  1082. // s_ch_tran.c_long = ll_mtrlid
  1083. //
  1084. // OpenWithParm(w_configure_ch_zj,s_ch_tran) //调用
  1085. //
  1086. // ls_status = Message.StringParm //接受返回结构
  1087. // dw_child.SetRedraw(FALSE)
  1088. // IF len(trim(ls_status)) > 0 THEN
  1089. // if ls_status = '[清空配置]' then ls_status = ''
  1090. // dw_child.Object.u_workprice_changemx_status[child_row] = ls_status
  1091. // dw_child.SetFocus()
  1092. // dw_child.SetColumn('u_workprice_changemx_workqty')
  1093. // END IF
  1094. // dw_child.SetRedraw(TRUE)
  1095. //END IF
  1096. //
  1097. end event
  1098. event ue_f6;call super::ue_f6;IF dw_edit_mode THEN RETURN
  1099. Long ll_row
  1100. ll_row = dw_child.GetRow()
  1101. IF ll_row <= 0 THEN RETURN
  1102. Long ll_mtrlid
  1103. String ls_procode
  1104. ll_mtrlid = dw_child.Object.u_workprice_changemx_mtrlid[ll_row]
  1105. ls_procode = dw_child.Object.u_workprice_changemx_procode[ll_row]
  1106. IF ll_mtrlid = 0 OR ls_procode = '' THEN RETURN
  1107. s_edit_index_tran s_tran_his //传递参数使用
  1108. s_tran_his.b_long = ll_mtrlid
  1109. s_tran_his.b_string = ls_procode
  1110. OpenWithParm(w_workprice_change_his,s_tran_his)
  1111. end event
  1112. type cb_func from w_publ_1ton_share_detail`cb_func within w_workprice_change
  1113. end type
  1114. type cb_exit from w_publ_1ton_share_detail`cb_exit within w_workprice_change
  1115. integer x = 2368
  1116. end type
  1117. type sle_usual_query from w_publ_1ton_share_detail`sle_usual_query within w_workprice_change
  1118. integer x = 229
  1119. integer width = 553
  1120. end type
  1121. type cb_retrieveall from w_publ_1ton_share_detail`cb_retrieveall within w_workprice_change
  1122. integer x = 2821
  1123. end type
  1124. type em_pagerowno from w_publ_1ton_share_detail`em_pagerowno within w_workprice_change
  1125. integer x = 2519
  1126. end type
  1127. type dw_pageretr from w_publ_1ton_share_detail`dw_pageretr within w_workprice_change
  1128. integer x = 1984
  1129. integer width = 1609
  1130. integer height = 924
  1131. string dataobject = "dw_workprice_change_index"
  1132. end type
  1133. event dw_pageretr::rowfocuschanged;call super::rowfocuschanged;
  1134. wf_flagstatus_rf()
  1135. end event
  1136. type st_1 from w_publ_1ton_share_detail`st_1 within w_workprice_change
  1137. integer x = 0
  1138. alignment alignment = right!
  1139. end type
  1140. type cb_nextpage from w_publ_1ton_share_detail`cb_nextpage within w_workprice_change
  1141. integer x = 2971
  1142. end type
  1143. type dw_uc from w_publ_1ton_share_detail`dw_uc within w_workprice_change
  1144. integer width = 1979
  1145. integer height = 920
  1146. string dataobject = "dw_workprice_change_edit"
  1147. end type
  1148. event dw_uc::buttonclicked;call super::buttonclicked;if row > 0 and dw_edit_mode then
  1149. if dwo.name = 'b_pro' then
  1150. parent.triggerevent('ue_f9')
  1151. end if
  1152. end if
  1153. end event
  1154. event dw_uc::dwnkey;PARENT.TriggerEvent('user_key')
  1155. String ls_mtrlcode,ls_mtrlname,ls_unit,ls_mtrlmode
  1156. String ls_mtrlsectype,ls_zxmtrlmode
  1157. Long ll_mtrlid,ll_ori_mtrlid
  1158. String ls_procode,ls_procode_f,ls_proname_f
  1159. string ls_procode_ori
  1160. IF Key = KeyDownArrow! THEN RETURN 1
  1161. dw_uc.AcceptText()
  1162. IF dw_uc.GetRow() <= 0 THEN RETURN
  1163. IF dw_edit_mode THEN
  1164. IF dw_uc.GetColumnName ( ) = 'dscrp' AND Key = KeyEnter! THEN
  1165. dw_child.ScrollToRow(1)
  1166. dw_child.SetFocus()
  1167. dw_child.SetColumn ('u_workprice_changemx_editflag')
  1168. RETURN 1
  1169. ELSEIF dw_uc.GetColumnName ( ) = 'procode' AND Key = KeyEnter! THEN
  1170. // ls_procode = dw_uc.Object.procode[dw_uc.GetRow()]
  1171. // SELECT code,name
  1172. // INTO :ls_procode_f,:ls_proname_f
  1173. // FROM u_sc_workprocedure
  1174. // Where code Like :ls_procode;
  1175. // IF sqlca.SQLCode <> 0 THEN
  1176. //
  1177. // ELSE
  1178. //
  1179. // IF ll_ori_mtrlid <> ll_mtrlid AND ll_ori_mtrlid <> 0 THEN
  1180. // IF MessageBox('询问','物料发生改变,明细列表将被清空,是否继续?',Question!,YesNo! ) = 2 THEN RETURN
  1181. // dw_child.Reset()
  1182. // dw_child.InsertRow(0)
  1183. // END IF
  1184. // dw_uc.Object.procode[dw_uc.GetRow()] = ll_mtrlid
  1185. // dw_uc.Object.proname[dw_uc.GetRow()] = ls_mtrlcode
  1186. //
  1187. // END IF
  1188. ELSE
  1189. IF Key = KeyEnter! THEN //
  1190. keybd_event ( 9, 0, 0 , 0 ) // 按下tab
  1191. keybd_event ( 9, 0, 2, 0 ) // 释放tab
  1192. RETURN 1
  1193. END IF
  1194. END IF
  1195. END IF
  1196. end event
  1197. event dw_uc::doubleclicked;IF dw_edit_mode AND row > 0 THEN
  1198. IF dwo.Name = 'procode' or &
  1199. dwo.name = 'proname' THEN
  1200. PARENT.TriggerEvent('ue_f9')
  1201. END IF
  1202. END IF
  1203. end event
  1204. type gb_2 from w_publ_1ton_share_detail`gb_2 within w_workprice_change
  1205. integer x = 352
  1206. integer y = 396
  1207. integer width = 704
  1208. integer height = 400
  1209. long backcolor = 134217739
  1210. end type
  1211. type dw_child from w_publ_1ton_share_detail`dw_child within w_workprice_change
  1212. integer y = 1220
  1213. integer width = 3589
  1214. integer height = 952
  1215. string dataobject = "dw_workprice_changemx_edit"
  1216. end type
  1217. event dw_child::dwnkey;call super::dwnkey;PARENT.TriggerEvent('user_key')
  1218. Long child_row
  1219. String ls_procode,ls_proname
  1220. String ls_mtrlcode,ls_mtrlname,ls_mtrlmode,ls_mtrlsectype,ls_zxmtrlmode
  1221. Long ll_mtrlid
  1222. IF dw_edit_mode THEN
  1223. IF KeyDown(Keydownarrow!) THEN
  1224. Long li_row
  1225. IF dw_child.GetRow() = dw_child.RowCount() THEN
  1226. PARENT.TriggerEvent("insert_childrow")
  1227. END IF
  1228. ELSE
  1229. If (KeyDown(keyenter!) OR KeyDown(keytab!)) AND NOT KeyDown(keycontrol!) AND NOT KeyDown(keyshift!) THEN
  1230. IF THIS.GetColumnName() = 'u_mtrldef_mtrlcode' THEN
  1231. dw_child.AcceptText()
  1232. child_row = dw_child.GetRow()
  1233. IF child_row > 0 THEN
  1234. IF dw_child.Object.u_workprice_changemx_editflag[child_row] = 1 THEN
  1235. ls_mtrlcode = dw_child.Object.u_mtrldef_mtrlcode[child_row]
  1236. SELECT mtrlid,
  1237. mtrlname,
  1238. mtrlmode,
  1239. mtrlsectype,
  1240. zxmtrlmode
  1241. INTO :ll_mtrlid,
  1242. :ls_mtrlname,
  1243. :ls_mtrlmode,
  1244. :ls_mtrlsectype,
  1245. :ls_zxmtrlmode
  1246. FROM u_mtrldef
  1247. Where mtrlcode = :ls_mtrlcode;
  1248. IF sqlca.SQLCode <> 0 THEN
  1249. PARENT.TriggerEvent('ue_f8')
  1250. ELSE
  1251. dw_child.Object.u_workprice_changemx_mtrlid[child_row] = ll_mtrlid
  1252. dw_child.Object.u_mtrldef_mtrlname [child_row] = ls_mtrlname
  1253. dw_child.Object.u_mtrldef_mtrlmode [child_row] = ls_mtrlmode
  1254. dw_child.Object.u_mtrldef_mtrlsectype [child_row] = ls_mtrlsectype
  1255. dw_child.Object.u_mtrldef_zxmtrlmode [child_row] = ls_zxmtrlmode
  1256. END IF
  1257. END IF
  1258. END IF
  1259. ELSEIF THIS.GetColumnName() = 'u_workprice_changemx_procode' THEN
  1260. dw_child.AcceptText()
  1261. child_row = dw_child.GetRow()
  1262. IF child_row > 0 THEN
  1263. IF dw_child.Object.u_workprice_changemx_editflag[child_row] = 1 THEN
  1264. ls_procode = dw_child.Object.u_workprice_changemx_procode[child_row]
  1265. SELECT u_sc_workprocedure.name
  1266. INTO :ls_proname
  1267. FROM u_sc_workprocedure
  1268. Where ( u_sc_workprocedure.code = :ls_procode);
  1269. IF sqlca.SQLCode <> 0 THEN
  1270. PARENT.TriggerEvent('ue_f9')
  1271. ELSE
  1272. dw_child.Object.u_workprice_changemx_proname[child_row] = ls_proname
  1273. END IF
  1274. END IF
  1275. END IF
  1276. ELSEIF THIS.GetColumnName() = 'u_workprice_changemx_dscrp' AND dw_child.GetRow() = dw_child.RowCount() THEN
  1277. PARENT.TriggerEvent("insert_childrow")
  1278. RETURN 1
  1279. ELSE
  1280. IF Key = keyenter! THEN //
  1281. keybd_event ( 9, 0, 0 , 0 ) // 按下tab
  1282. keybd_event ( 9, 0, 2, 0 ) // 释放tab
  1283. RETURN 1
  1284. END IF
  1285. END IF
  1286. END IF
  1287. END IF
  1288. END IF
  1289. end event
  1290. event dw_child::doubleclicked;dw_child.AcceptText()
  1291. IF dw_edit_mode AND row > 0 THEN
  1292. IF dw_child.Object.u_workprice_changemx_editflag[row] = 0 THEN
  1293. PARENT.TriggerEvent('ue_f7')
  1294. ELSE
  1295. IF dw_child.GetColumnName( ) = 'u_mtrldef_mtrlcode' THEN
  1296. PARENT.TriggerEvent('ue_f8')
  1297. ELSEIF dw_child.GetColumnName( ) = 'u_workprice_changemx_procode' OR dw_child.GetColumnName( ) = 'u_workprice_changemx_proname' THEN
  1298. PARENT.TriggerEvent('ue_f9')
  1299. ELSEIF dw_child.GetColumnName( ) = 'u_workprice_changemx_status' THEN
  1300. PARENT.TriggerEvent('ue_f12')
  1301. END IF
  1302. END IF
  1303. ELSE
  1304. PARENT.TriggerEvent('ue_f6')
  1305. END IF
  1306. end event
  1307. type cb_viewprint from w_publ_1ton_share_detail`cb_viewprint within w_workprice_change
  1308. integer x = 1723
  1309. end type
  1310. type cb_print from w_publ_1ton_share_detail`cb_print within w_workprice_change
  1311. integer x = 1531
  1312. end type
  1313. type cb_add from w_publ_1ton_share_detail`cb_add within w_workprice_change
  1314. end type
  1315. event cb_add::clicked;IF NOT f_power_ind(1342) THEN
  1316. MessageBox(publ_operator,'你没有使用权限!')
  1317. RETURN
  1318. END IF
  1319. String arg_msg = ''
  1320. Long uc_row,i,count = 0
  1321. s_workprice_change arg_s_work
  1322. IF dw_edit_mode THEN
  1323. dw_uc.AcceptText()
  1324. dw_child.AcceptText()
  1325. uc_row = dw_uc.GetRow()
  1326. IF uc_row <= 0 THEN
  1327. MessageBox('系统提示','请选定当前目标单据!')
  1328. RETURN
  1329. END IF
  1330. IF NOT dw_uc.Object.billdate[uc_row] > DateTime(2000-01-01,Now()) THEN
  1331. MessageBox('系统提示','不合理发生时间!')
  1332. dw_uc.SetFocus()
  1333. dw_uc.SetColumn("billdate")
  1334. RETURN
  1335. END IF
  1336. IF dw_uc.Object.rep[uc_row] = '' THEN
  1337. MessageBox('系统提示','请填写经手人!')
  1338. dw_uc.SetFocus()
  1339. dw_uc.SetColumn("rep")
  1340. RETURN
  1341. END IF
  1342. arg_s_work.billid = dw_uc.Object.billid[uc_row]
  1343. arg_s_work.billdate = dw_uc.Object.billdate[uc_row]
  1344. arg_s_work.rep = dw_uc.Object.rep[uc_row]
  1345. arg_s_work.dscrp = dw_uc.Object.dscrp[uc_row]
  1346. arg_s_work.relcode = dw_uc.Object.relcode[uc_row]
  1347. FOR i = 1 TO dw_child.RowCount()
  1348. IF dw_child.Object.u_workprice_changemx_mtrlid[i] > 0 AND &
  1349. dw_child.Object.u_workprice_changemx_workqty[i] >= 0 THEN
  1350. IF dw_child.Object.u_workprice_changemx_procode[i] = '' OR &
  1351. dw_child.Object.u_workprice_changemx_proname[i] = '' THEN
  1352. MessageBox('系统提示','工序号或工序名称不能为空,第'+String(i)+'行')
  1353. RETURN
  1354. END IF
  1355. count++
  1356. arg_s_work.arg_s_mx[count].printid = count
  1357. arg_s_work.arg_s_mx[count].mtrlid = dw_child.Object.u_workprice_changemx_mtrlid[i]
  1358. arg_s_work.arg_s_mx[count].editflag = dw_child.Object.u_workprice_changemx_editflag[i]
  1359. arg_s_work.arg_s_mx[count].workqty_ori = dw_child.Object.u_workprice_changemx_workqty_ori[i]
  1360. arg_s_work.arg_s_mx[count].workqty = dw_child.Object.u_workprice_changemx_workqty[i]
  1361. arg_s_work.arg_s_mx[count].workprice_ori = dw_child.Object.u_workprice_changemx_workprice_ori[i]
  1362. arg_s_work.arg_s_mx[count].workprice = dw_child.Object.u_workprice_changemx_workprice[i]
  1363. arg_s_work.arg_s_mx[count].wrkgrpid = dw_child.Object.u_workprice_changemx_wrkgrpid[i]
  1364. arg_s_work.arg_s_mx[count].ifstandard = dw_child.Object.u_workprice_changemx_ifstandard[i]
  1365. arg_s_work.arg_s_mx[count].lsxtype = dw_child.Object.u_workprice_changemx_lsxtype[i]
  1366. arg_s_work.arg_s_mx[count].lastflag = dw_child.Object.u_workprice_changemx_lastflag[i]
  1367. arg_s_work.arg_s_mx[count].workhour = dw_child.Object.u_workprice_changemx_workhour[i]
  1368. arg_s_work.arg_s_mx[count].dscrp = dw_child.Object.u_workprice_changemx_dscrp[i]
  1369. arg_s_work.arg_s_mx[count].worklevel = dw_child.Object.u_workprice_changemx_worklevel[i]
  1370. arg_s_work.arg_s_mx[count].techlevel = dw_child.Object.u_workprice_changemx_techlevel[i]
  1371. arg_s_work.arg_s_mx[count].procode = dw_child.Object.u_workprice_changemx_procode[i]
  1372. arg_s_work.arg_s_mx[count].proname = dw_child.Object.u_workprice_changemx_proname[i]
  1373. arg_s_work.arg_s_mx[count].status = dw_child.Object.u_workprice_changemx_status[i]
  1374. END IF
  1375. NEXT
  1376. IF uo_workprice.Save(arg_s_work,publ_operator,arg_msg,TRUE) = 0 THEN
  1377. MessageBox('error!',arg_msg)
  1378. RETURN
  1379. END IF
  1380. MessageBox(publ_operator,'保存操作成功!')
  1381. long ll_row
  1382. ll_row = dw_pageretr.getrow()
  1383. dw_pageretr.SelectRow(0,FALSE)
  1384. dw_pageretr.SelectRow(ll_row,TRUE)
  1385. wf_refresh_curuc(uo_workprice.uo_billid) //刷新uc
  1386. END IF
  1387. CALL SUPER::Clicked
  1388. IF dw_edit_mode THEN
  1389. PARENT.TriggerEvent("insert_childrow")
  1390. dw_uc.SetRedraw(FALSE)
  1391. dw_uc.SetRedraw(TRUE)
  1392. ELSE
  1393. PARENT.TriggerEvent("retrieve_childdw")
  1394. END IF
  1395. THIS.TriggerEvent('refresh_interface')
  1396. end event
  1397. type cb_edit from w_publ_1ton_share_detail`cb_edit within w_workprice_change
  1398. end type
  1399. event cb_edit::clicked;IF NOT f_power_ind(1342) THEN
  1400. MessageBox(publ_operator,'你没有使用权限!')
  1401. RETURN
  1402. END IF
  1403. String arg_msg = ''
  1404. Long uc_row
  1405. uc_row = dw_pageretr.GetRow()
  1406. IF uc_row <= 0 THEN
  1407. MessageBox('系统提示','请选定当前目标单据!')
  1408. RETURN
  1409. END IF
  1410. IF NOT dw_edit_mode THEN
  1411. IF uo_workprice.updatebegin(dw_pageretr.Object.billid[uc_row],arg_msg) = 0 THEN
  1412. MessageBox('Error!',arg_msg)
  1413. RETURN
  1414. END IF
  1415. wf_refresh_curuc(dw_pageretr.Object.billid[uc_row]) //刷新uc
  1416. PARENT.TriggerEvent("retrieve_childdw")
  1417. END IF
  1418. CALL SUPER::Clicked
  1419. end event
  1420. type cb_delet from w_publ_1ton_share_detail`cb_delet within w_workprice_change
  1421. end type
  1422. event cb_delet::clicked;IF NOT f_power_ind(1343) THEN
  1423. MessageBox(publ_operator,'你没有使用权限!')
  1424. RETURN
  1425. END IF
  1426. IF dw_edit_mode THEN RETURN
  1427. String arg_msg = ''
  1428. Long uc_row
  1429. uc_row = dw_pageretr.GetRow()
  1430. IF uc_row <= 0 THEN
  1431. MessageBox('系统提示','请选定当前目标单据!')
  1432. RETURN
  1433. END IF
  1434. IF MessageBox ("IF","是否确定要删除当前单据吗?",Question!,YesNo! ) = 2 THEN RETURN
  1435. IF uo_workprice.del(dw_pageretr.Object.billid[uc_row],arg_msg,TRUE) = 0 THEN
  1436. MessageBox('Error!',arg_msg)
  1437. ELSE
  1438. //日志
  1439. Long ls_id
  1440. String ls_code
  1441. ls_id = dw_pageretr.Object.billid[uc_row]
  1442. ls_code = dw_pageretr.Object.billcode[uc_row]
  1443. f_setsysoplog('工价表变更单','工价表单变更单删除,ID:'+String(ls_id)+',code:'+ls_code,arg_msg,TRUE)
  1444. //--
  1445. MessageBox(publ_operator,'删除单据'+String(dw_pageretr.Object.billcode[uc_row])+'成功!')
  1446. dw_pageretr.DeleteRow(uc_row)
  1447. dw_pageretr.Triggerevent(rowfocuschanged!)
  1448. END IF
  1449. end event
  1450. type cb_addzy from w_publ_1ton_share_detail`cb_addzy within w_workprice_change
  1451. integer x = 1029
  1452. end type
  1453. event cb_addzy::clicked;call super::clicked;m_Dfc_Control_PopupMenu dmPopupMenu
  1454. String menustr
  1455. menustr = "Text=增加备注~tEvent=ue_addzy"
  1456. IF Len(Trim(menustr)) <> 0 THEN
  1457. dmPopupMenu = CREATE m_Dfc_Control_PopupMenu
  1458. dmPopupMenu.mf_BuildMenu(THIS, menustr)
  1459. dmPopupMenu.mf_PopMenu()
  1460. DESTROY dmPopupMenu
  1461. END IF
  1462. end event
  1463. type cb_auditing from w_publ_1ton_share_detail`cb_auditing within w_workprice_change
  1464. end type
  1465. event cb_auditing::clicked;call super::clicked;IF NOT f_power_ind(1344) THEN
  1466. MessageBox(publ_operator,'你没有使用权限!')
  1467. RETURN
  1468. END IF
  1469. IF dw_edit_mode THEN RETURN
  1470. String arg_msg = ''
  1471. Long pagerert_row
  1472. Long ll_billid
  1473. pagerert_row = dw_pageretr.GetRow()
  1474. IF pagerert_row <= 0 THEN
  1475. MessageBox('系统提示','请选定当前目标单据!')
  1476. RETURN
  1477. END IF
  1478. IF MessageBox ("询问","是否确定要审核当前单据吗(审核后单据将归档只读)?",Question!,YesNo! ) = 2 THEN RETURN
  1479. ll_billid = dw_pageretr.Object.billid[pagerert_row]
  1480. IF uo_workprice.audit(ll_billid,publ_operator,arg_msg,TRUE) = 0 THEN
  1481. MessageBox('Error!',arg_msg)
  1482. ELSE
  1483. MessageBox(publ_operator,'审核成功!')
  1484. wf_refresh_curuc(dw_pageretr.Object.billid[pagerert_row])
  1485. END IF
  1486. end event
  1487. type cb_xm from w_publ_1ton_share_detail`cb_xm within w_workprice_change
  1488. integer x = 1280
  1489. end type
  1490. event cb_xm::clicked;is_mx_menustr = ''
  1491. IF dw_edit_mode THEN
  1492. is_mx_menustr = is_mx_menustr + "|" + "Text=批设置类型~tEvent=ue_p_editflag"
  1493. is_mx_menustr = is_mx_menustr + "|" + "Text=-"
  1494. is_mx_menustr = is_mx_menustr + "|" + "Text=批设置数量~tEvent=ue_p_workqty"
  1495. is_mx_menustr = is_mx_menustr + "|" + "Text=批设置新单件工价~tEvent=ue_p_workprice"
  1496. is_mx_menustr = is_mx_menustr + "|" + "Text=-"
  1497. is_mx_menustr = is_mx_menustr + "|" + "Text=批设置工组~tEvent=ue_p_wrkgrpid"
  1498. is_mx_menustr = is_mx_menustr + "|" + "Text=批设置工序~tEvent=ue_p_pro"
  1499. // is_mx_menustr = is_mx_menustr + "|" + "Text=-"
  1500. // is_mx_menustr = is_mx_menustr + "|" + "Text=批设置打印流水表类型~tEvent=ue_p_lsxtype"
  1501. // is_mx_menustr = is_mx_menustr + "|" + "Text=批设置工时~tEvent=ue_p_workhour"
  1502. is_mx_menustr = is_mx_menustr + "|" + "Text=-"
  1503. is_mx_menustr = is_mx_menustr + "|" + "Text=按比例设置新单件工价~tEvent=ue_p_rate_price"
  1504. END IF
  1505. CALL Super::Clicked
  1506. end event
  1507. type cb_retrieve from w_publ_1ton_share_detail`cb_retrieve within w_workprice_change
  1508. end type
  1509. type cb_xls from w_publ_1ton_share_detail`cb_xls within w_workprice_change
  1510. integer x = 1915
  1511. end type
  1512. type cb_help from w_publ_1ton_share_detail`cb_help within w_workprice_change
  1513. integer x = 2217
  1514. end type
  1515. type cb_auditing_cancel from w_publ_1ton_share_detail`cb_auditing_cancel within w_workprice_change
  1516. boolean visible = false
  1517. integer x = 3209
  1518. boolean enabled = false
  1519. end type
  1520. type p_msg from w_publ_1ton_share_detail`p_msg within w_workprice_change
  1521. end type
  1522. type p_help from w_publ_1ton_share_detail`p_help within w_workprice_change
  1523. end type
  1524. type p_encl from w_publ_1ton_share_detail`p_encl within w_workprice_change
  1525. end type
  1526. type p_other from w_publ_1ton_share_detail`p_other within w_workprice_change
  1527. end type
  1528. type gb_3 from w_publ_1ton_share_detail`gb_3 within w_workprice_change
  1529. end type
  1530. type ln_bar from w_publ_1ton_share_detail`ln_bar within w_workprice_change
  1531. end type
  1532. type ln_bar2 from w_publ_1ton_share_detail`ln_bar2 within w_workprice_change
  1533. end type
  1534. type r_bar from w_publ_1ton_share_detail`r_bar within w_workprice_change
  1535. integer x = 3310
  1536. end type
  1537. type ln_1 from w_publ_1ton_share_detail`ln_1 within w_workprice_change
  1538. end type
  1539. type ln_2 from w_publ_1ton_share_detail`ln_2 within w_workprice_change
  1540. end type
  1541. type st_2 from statictext within w_workprice_change
  1542. integer x = 805
  1543. integer y = 204
  1544. integer width = 178
  1545. integer height = 48
  1546. integer textsize = -9
  1547. integer weight = 400
  1548. fontcharset fontcharset = gb2312charset!
  1549. fontpitch fontpitch = variable!
  1550. string facename = "宋体"
  1551. long textcolor = 33554432
  1552. long backcolor = 134217739
  1553. string text = "状态"
  1554. alignment alignment = right!
  1555. boolean focusrectangle = false
  1556. end type
  1557. type ddlb_status from dropdownlistbox within w_workprice_change
  1558. integer x = 1019
  1559. integer y = 188
  1560. integer width = 480
  1561. integer height = 300
  1562. integer taborder = 30
  1563. boolean bringtotop = true
  1564. integer textsize = -9
  1565. integer weight = 400
  1566. fontcharset fontcharset = gb2312charset!
  1567. fontpitch fontpitch = variable!
  1568. string facename = "宋体"
  1569. long textcolor = 33554432
  1570. string text = "[全部]"
  1571. boolean sorted = false
  1572. string item[] = {"[全部]","待审核","已审核"}
  1573. borderstyle borderstyle = stylelowered!
  1574. end type
  1575. event selectionchanged;if index=1 then
  1576. cur_flag=-1
  1577. elseif index=2 then
  1578. cur_flag= 0
  1579. elseif index=3 then
  1580. cur_flag= 1
  1581. end if
  1582. parent.triggerevent("retrieve_pageretr")
  1583. end event