w_wfjg_pk.srw 51 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874
  1. $PBExportHeader$w_wfjg_pk.srw
  2. forward
  3. global type w_wfjg_pk from w_publ_1ton_share_detail
  4. end type
  5. type ddlb_scid from uo_ddlb_scid within w_wfjg_pk
  6. end type
  7. type st_3 from statictext within w_wfjg_pk
  8. end type
  9. type st_2 from statictext within w_wfjg_pk
  10. end type
  11. type ddlb_status from dropdownlistbox within w_wfjg_pk
  12. end type
  13. end forward
  14. global type w_wfjg_pk from w_publ_1ton_share_detail
  15. string title = "外协商盘亏单"
  16. boolean maxbox = true
  17. windowstate windowstate = maximized!
  18. event insert_childrow ( )
  19. event ue_p_jgdscrp ( )
  20. ddlb_scid ddlb_scid
  21. st_3 st_3
  22. st_2 st_2
  23. ddlb_status ddlb_status
  24. end type
  25. global w_wfjg_pk w_wfjg_pk
  26. type variables
  27. Long cur_scid //分店ID
  28. Int cur_flag = -1
  29. Int cur_secflag = -1
  30. uo_inware_wfjg uo_ware
  31. uo_spt_price uo_sptprice
  32. Long cur_id = 0
  33. Int cur_editfocus = 0 //1:新建2:修改
  34. Long flag = 0
  35. Long secflag = 0
  36. String ol_cdw_str = ''
  37. long child_column_bef
  38. datastore ds_copypaste_in,ds_copypaste_out
  39. end variables
  40. forward prototypes
  41. public function integer wf_refresh_curuc (long arg_scid, long arg_inwareid)
  42. public function integer wf_flagstatus_rf ()
  43. public function integer wf_check_print (ref string arg_msg)
  44. public function integer wf_bef_to_aft (ref string arg_msg)
  45. 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)
  46. public function integer wf_print_retrievedata (ref s_print_pic_list arg_s_pic, ref string arg_msg)
  47. end prototypes
  48. event insert_childrow();Long li_row
  49. li_row = dw_child.InsertRow(0)
  50. dw_child.ScrollToRow(li_row)
  51. dw_child.SetColumn ('u_mtrldef_mtrlcode')
  52. end event
  53. event ue_p_jgdscrp();IF NOT dw_edit_mode THEN
  54. MessageBox('提示','非编辑状态下不可用')
  55. RETURN
  56. END IF
  57. Long ll_i
  58. dw_child.AcceptText()
  59. IF dw_child.RowCount() = 0 THEN RETURN
  60. FOR ll_i = 1 TO dw_child.RowCount()
  61. IF ll_i = 1 THEN CONTINUE
  62. dw_child.Object.ow_wfjgmx_in_bef_mxdscrp[ll_i] = dw_child.Object.ow_wfjgmx_in_bef_mxdscrp[1]
  63. NEXT
  64. end event
  65. public function integer wf_refresh_curuc (long arg_scid, long arg_inwareid);IF arg_inwareid <= 0 OR IsNull(arg_inwareid) THEN RETURN 0
  66. Long uc_row
  67. uc_row = dw_pageretr.GetRow()
  68. IF uc_row <= 0 THEN RETURN 0
  69. Long storageid
  70. DateTime indate
  71. String inrep
  72. String part
  73. String dscrp
  74. String inwarecode
  75. String sptname
  76. DateTime opdate
  77. String opemp
  78. String modemp
  79. DateTime moddate
  80. Int aflag
  81. DateTime Auditingdate
  82. String Auditingrep
  83. DateTime secAuditingdate
  84. String secAuditingrep
  85. String storagename
  86. Int thflag
  87. Int asecflag
  88. String sptcode
  89. Long sptid
  90. long balcflag, balcdateint,ll_printnum
  91. SELECT ow_wfjg_in.storageid,
  92. ow_wfjg_in.indate,
  93. ow_wfjg_in.inrep,
  94. ow_wfjg_in.part,
  95. ow_wfjg_in.dscrp,
  96. ow_wfjg_in.opdate,
  97. ow_wfjg_in.opemp,
  98. ow_wfjg_in.flag,
  99. ow_wfjg_in.auditingdate,
  100. ow_wfjg_in.auditingrep,
  101. ow_wfjg_in.secflag,
  102. ow_wfjg_in.secauditingdate,
  103. ow_wfjg_in.secauditingrep,
  104. ow_wfjg_in.inwarecode,
  105. ow_wfjg_in.sptname,
  106. ow_wfjg_in.modemp,
  107. ow_wfjg_in.moddate,
  108. ow_wfjg_in.thflag,
  109. u_spt.name,
  110. u_spt.sptcode,
  111. ow_wfjg_in.sptid,
  112. ow_wfjg_in.balcflag,
  113. ow_wfjg_in.balcdateint,
  114. ow_wfjg_in.printnum
  115. INTO
  116. :storageid,
  117. :indate,
  118. :inrep,
  119. :part,
  120. :dscrp,
  121. :opdate,
  122. :opemp,
  123. :aflag,
  124. :Auditingdate,
  125. :Auditingrep,
  126. :asecflag,
  127. :secAuditingdate,
  128. :secAuditingrep,
  129. :inwarecode,
  130. :sptname,
  131. :modemp,
  132. :moddate,
  133. :thflag,
  134. :sptname,
  135. :sptcode,
  136. :sptid,
  137. :balcflag,
  138. :balcdateint ,
  139. :ll_printnum
  140. FROM ow_wfjg_in,u_spt
  141. WHERE ( ow_wfjg_in.inwareid = :arg_inwareid ) AND
  142. (ow_wfjg_in.sptid = u_spt.sptid )
  143. And ( ow_wfjg_in.scid = :arg_scid );
  144. IF sqlca.SQLCode <> 0 THEN
  145. MessageBox('系统提示',"查询操作失败(错误单据唯一码)"+sqlca.SQLErrText)
  146. RETURN 0
  147. END IF
  148. dw_pageretr.Object.ow_wfjg_in_scid[uc_row] = arg_scid
  149. dw_pageretr.Object.inwareid[uc_row] = arg_inwareid
  150. dw_pageretr.Object.indate[uc_row] = indate
  151. dw_pageretr.Object.part[uc_row] = part
  152. dw_pageretr.Object.inrep[uc_row] = inrep
  153. dw_pageretr.Object.u_spt_name[uc_row] = sptname
  154. dw_pageretr.Object.dscrp[uc_row] = dscrp
  155. dw_pageretr.Object.inwarecode[uc_row] = inwarecode
  156. dw_pageretr.Object.opdate[uc_row] = opdate
  157. dw_pageretr.Object.ow_wfjg_in_opemp[uc_row] = opemp
  158. dw_pageretr.Object.ow_wfjg_in_moddate[uc_row] = moddate
  159. dw_pageretr.Object.ow_wfjg_in_modemp[uc_row] = modemp
  160. dw_pageretr.Object.flag[uc_row] = aflag
  161. dw_pageretr.Object.Auditingdate[uc_row] = Auditingdate
  162. dw_pageretr.Object.Auditingrep[uc_row] = Auditingrep
  163. dw_pageretr.Object.ow_wfjg_in_thflag[uc_row] = thflag
  164. dw_pageretr.Object.ow_wfjg_in_secAuditingdate[uc_row] = secAuditingdate
  165. dw_pageretr.Object.ow_wfjg_in_secAuditingrep[uc_row] = secAuditingrep
  166. dw_pageretr.Object.ow_wfjg_in_secflag[uc_row] = asecflag
  167. dw_pageretr.Object.u_spt_sptcode[uc_row] = sptcode
  168. dw_pageretr.Object.sptid[uc_row] = sptid
  169. dw_pageretr.Object.ow_wfjg_in_balcflag[uc_row] = balcflag
  170. dw_pageretr.Object.ow_wfjg_in_balcdateint[uc_row] = balcdateint
  171. dw_pageretr.Object.ow_wfjg_in_printnum[uc_row] = ll_printnum
  172. dw_uc.Reset()
  173. dw_pageretr.RowsCopy(dw_pageretr.GetRow(), dw_pageretr.GetRow(), Primary!, dw_uc, 1, Primary!)
  174. dw_uc.ResetUpdate()
  175. dw_uc.SetRedraw(TRUE)
  176. wf_flagstatus_rf()
  177. RETURN 1
  178. end function
  179. public function integer wf_flagstatus_rf ();//====================================================================
  180. // Function: wf_flagstatus_rf()
  181. //--------------------------------------------------------------------
  182. // Description:
  183. //--------------------------------------------------------------------
  184. // Arguments:(None)
  185. //--------------------------------------------------------------------
  186. // Returns: integer
  187. //--------------------------------------------------------------------
  188. // Author: yyx Date: 2003.12.26
  189. //--------------------------------------------------------------------
  190. // Modify History:
  191. //
  192. //====================================================================
  193. Long pagerert_row
  194. pagerert_row = dw_pageretr.GetRow()
  195. IF pagerert_row <= 0 THEN
  196. cb_auditing.Enabled = FALSE
  197. GOTO ext
  198. END IF
  199. IF dw_edit_mode THEN
  200. cb_auditing.Enabled = FALSE
  201. cb_auditing_cancel.Enabled = FALSE
  202. ELSE
  203. IF dw_pageretr.Object.flag[pagerert_row] = 0 THEN
  204. cb_auditing.Enabled = TRUE
  205. cb_auditing_cancel.Enabled = FALSE
  206. ELSEIF dw_pageretr.Object.flag[pagerert_row] = 1 THEN
  207. cb_auditing.Enabled = FALSE
  208. cb_auditing_cancel.Enabled = TRUE
  209. END IF
  210. END IF
  211. ext:
  212. RETURN 0
  213. end function
  214. public function integer wf_check_print (ref string arg_msg);long cnt
  215. int rslt = 1
  216. string ls_msg
  217. string str_dwSQl,str_SyntaxFromSQL
  218. datastore ds_maxid
  219. datetime ld_cur_dt
  220. ld_cur_dt = datetime(today(),time(0))
  221. if sys_option_mustprint = 0 then
  222. rslt = 1
  223. goto ext
  224. end if
  225. string ls_storagestr,tmp_str
  226. ls_storagestr = sys_user_storagestr
  227. if ls_storagestr <> '0' and ls_storagestr <> '-1' then
  228. ls_storagestr = mid(ls_storagestr,2)
  229. ls_storagestr = left(ls_storagestr,len(ls_storagestr) - 1 )
  230. end if
  231. ds_maxid= create datastore
  232. str_dwSQl="select count(*) as countnum from u_inware where indate < '" +string(ld_cur_dt,'yyyy-mm-dd hh:mm:ss')+ "' and billtype = 1 and flag = 0 and "
  233. if pos(ls_storagestr,',') > 0 or long(ls_storagestr) > 0 then
  234. tmp_str = '(' + 'storageid in (' + ls_storagestr + '))'
  235. else
  236. tmp_str = '(' + ls_storagestr + ' = 0 or storageid in (' + ls_storagestr + '))'
  237. end if
  238. str_dwSQl=str_dwSQl + tmp_str
  239. //messagebox("",str_dwSQl)
  240. str_SyntaxFromSQL =sqlca.SyntaxFromSQL(str_dwSQl,"style(type=grid)",ls_msg)
  241. if ls_msg>'' then
  242. arg_msg="dw语法生成失败"
  243. rslt = 0
  244. goto ext
  245. end if
  246. ds_maxid.Create(str_SyntaxFromSQL,ls_msg)
  247. if ls_msg>'' then
  248. arg_msg="建立相关DW失败"
  249. rslt=0
  250. goto ext
  251. end if
  252. ds_maxid.settransobject(sqlca)
  253. ds_maxid.retrieve()
  254. cnt=ds_maxid.GetItemNumber(1,1)
  255. if isnull(cnt) then cnt = 0
  256. destroy ds_maxid
  257. if cnt > 0 then
  258. arg_msg = '仓库还有收货单未打印,不能新建'
  259. rslt = 0
  260. goto ext
  261. end if
  262. ext:
  263. return rslt
  264. end function
  265. public function integer wf_bef_to_aft (ref string arg_msg);Long rslt = 1
  266. //IF NOT dw_edit_mode THEN
  267. // rslt = 0
  268. // arg_msg = '非编辑状态不可用'
  269. // GOTO ext
  270. //END IF
  271. //
  272. //dw_bef.AcceptText()
  273. //Long ll_dw_bef_rowcount
  274. //
  275. //ll_dw_bef_rowcount = dw_bef.RowCount()
  276. //IF ll_dw_bef_rowcount <= 0 THEN
  277. // rslt = 0
  278. // arg_msg = '没有可复制的明细内容'
  279. // GOTO ext
  280. //END IF
  281. //
  282. //IF ll_dw_bef_rowcount > 0 THEN
  283. // dw_aft.SetRedraw(FALSE)
  284. // dw_aft.Reset()
  285. // Long ls_i
  286. // FOR ls_i = 1 TO ll_dw_bef_rowcount
  287. // dw_aft.Object.ow_wfjgmx_in_aft_mtrlid[ls_i] = dw_bef.Object.ow_wfjgmx_in_bef_mtrlid[ls_i]
  288. // dw_aft.Object.u_mtrldef_mtrlcode[ls_i] = dw_bef.Object.u_mtrldef_mtrlcode[ls_i]
  289. // dw_aft.Object.u_mtrldef_mtrlname[ls_i] = dw_bef.Object.u_mtrldef_mtrlname[ls_i]
  290. // dw_aft.Object.u_mtrldef_mtrlmode[ls_i] = dw_bef.Object.u_mtrldef_mtrlmode[ls_i]
  291. // dw_aft.Object.u_mtrldef_mtrlsectype[ls_i] = dw_bef.Object.u_mtrldef_mtrlsectype[ls_i]
  292. // dw_aft.Object.u_mtrldef_zxmtrlmode[ls_i] = dw_bef.Object.u_mtrldef_zxmtrlmode[ls_i]
  293. // dw_aft.Object.u_mtrldef_unit[ls_i] = dw_bef.Object.u_mtrldef_unit[ls_i]
  294. // dw_aft.Object.ow_wfjgmx_in_aft_qty[ls_i] = dw_bef.Object.ow_wfjgmx_in_bef_qty[ls_i]
  295. // dw_aft.Object.ow_wfjgmx_in_aft_status[ls_i] = dw_bef.Object.ow_wfjgmx_in_bef_status[ls_i]
  296. // dw_aft.Object.ow_wfjgmx_in_aft_woodcode[ls_i] = dw_bef.Object.ow_wfjgmx_in_bef_woodcode[ls_i]
  297. // dw_aft.Object.ow_wfjgmx_in_aft_pcode[ls_i] = dw_bef.Object.ow_wfjgmx_in_bef_pcode[ls_i]
  298. // dw_aft.Object.ow_wfjgmx_in_aft_fprice[ls_i] = dw_bef.Object.ow_wfjgmx_in_bef_fprice[ls_i]
  299. // dw_aft.Object.ow_wfjgmx_in_aft_plancode[ls_i] = dw_bef.Object.ow_wfjgmx_in_bef_plancode[ls_i]
  300. // dw_aft.Object.ow_wfjgmx_in_aft_mxdscrp[ls_i] = dw_bef.Object.ow_wfjgmx_in_bef_mxdscrp[ls_i]
  301. // dw_aft.Object.ow_wfjgmx_in_aft_fprice[ls_i] = dw_bef.Object.ow_wfjgmx_in_bef_fprice[ls_i]
  302. //
  303. // dw_aft.Object.ow_wfjgmx_in_aft_unit[ls_i] = dw_bef.Object.u_mtrldef_unit[ls_i]
  304. // dw_aft.Object.ow_wfjgmx_in_aft_uqty[ls_i] = dw_bef.Object.ow_wfjgmx_in_bef_qty[ls_i]
  305. //
  306. // NEXT
  307. //
  308. // dw_aft.SetRedraw(TRUE)
  309. //END IF
  310. //
  311. //
  312. //dw_aft.AcceptText()
  313. //
  314. //ext:
  315. RETURN rslt
  316. end function
  317. 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);//==============================================================================
  318. // 函数: w_publ_1ton_share_detail::wf_xls_retrievedata()
  319. //------------------------------------------------------------------------------
  320. // 描述: 此函数需要 重载,复制祖先范例代码,然后修改retrieve参数部分两处即可
  321. //------------------------------------------------------------------------------
  322. Long LS_ROW,ll_id,i,ll_scid
  323. LS_ROW = dw_pageretr.GetRow()
  324. IF LS_ROW <= 0 THEN
  325. arg_msg = '没有目标单据!'
  326. RETURN 0
  327. END IF
  328. //修改点:获取 指定retriev参数
  329. ll_id = dw_pageretr.Object.#1[LS_ROW]
  330. ll_scid = dw_pageretr.Object.ow_wfjg_in_scid[LS_ROW]
  331. ////可选设置///
  332. arg_obj_st.uo_const.create_new_pwd( ) //创建随机密码
  333. if sys_option_xls_ifuse_passwd = 1 then arg_obj_st.uo_const.pwd = trim(sys_option_xls_user_passwd) //默认加密密码 默认为随即密码
  334. boolean xls_locked
  335. xls_locked = not (sys_option_xls_lock = 1)
  336. /// Excel 的可选设置
  337. if arg_obj_st.of_setoption(arg_ationid, xls_locked,true,arg_msg) <> 1 then
  338. return 0
  339. end if
  340. for i = 1 to arg_str_billlist.count
  341. ////可选操作///
  342. arg_str_billlist.bill[i].ds_data = create datastore //
  343. arg_str_billlist.bill[i].ds_data.dataobject = arg_str_billlist.bill[i].datawindow //
  344. arg_str_billlist.bill[i].ds_data.settransobject(sqlca)
  345. //修改点:注意retrieve 参数与上文对应
  346. arg_str_billlist.bill[i].ds_data.retrieve(ll_scid,ll_id)
  347. next
  348. return 1
  349. end function
  350. public function integer wf_print_retrievedata (ref s_print_pic_list arg_s_pic, ref string arg_msg);Long LS_ROW,ll_id,i,ll_scid
  351. LS_ROW = dw_pageretr.GetRow()
  352. IF LS_ROW <= 0 THEN
  353. arg_msg = '没有目标单据!'
  354. RETURN 0
  355. END IF
  356. //修改点:获取 指定retriev参数
  357. ll_id = dw_pageretr.Object.#1[LS_ROW]
  358. ll_scid = dw_pageretr.Object.ow_wfjg_in_scid[LS_ROW]
  359. Long ll_i,ll_j
  360. Long ll_mtrlid
  361. Long ll_fileid
  362. Blob ls_filedata
  363. SetNull(ls_filedata)
  364. String Pathname,ls_filename,ls_filetype
  365. String errmsg
  366. uo_fj_mng_billtype ls_uo_fjbt
  367. ls_uo_fjbt = CREATE uo_fj_mng_billtype
  368. Long ll_classid
  369. SELECT classid
  370. INTO :ll_classid
  371. FROM u_billpic_fileclass
  372. Where (billtype = 102);
  373. IF sqlca.SQLCode <> 0 THEN
  374. ll_classid = 0
  375. END IF
  376. IF ll_classid > 0 THEN //如果已经指定好附件类型,则循环明细表查询每个明细的图片信息.
  377. FOR ll_i = 1 TO dw_child.RowCount()
  378. ll_mtrlid = dw_child.Object.ow_wfjgmx_in_mtrlid[ll_i]
  379. arg_s_pic.mtrlid[ll_i] = ll_mtrlid
  380. //取该附件类型中的第一个附件.
  381. SELECT top 1 fileid,DisplayName,FileType INTO :ll_fileid,:ls_filename,:ls_filetype
  382. FROM u_file
  383. WHERE relid = :ll_mtrlid
  384. AND classid = :ll_classid
  385. AND (filetype = 'bmp' OR filetype = 'rle' OR filetype = 'wmf'
  386. OR filetype = 'tif' OR filetype = 'jpg' OR filetype = 'gif' OR filetype = 'jpeg')
  387. USING sys_fileDB_sqlca;
  388. IF sys_fileDB_sqlca.SQLCode <> 0 THEN
  389. ll_fileid = 0
  390. END IF
  391. IF ll_fileid > 0 THEN
  392. Pathname = sys_cur_path+ins_fjtemppath+'\'+String(Today(),'yymmdd')+String(Now(),'hhmmss')+'_'+ls_filename+'.'+ls_filetype
  393. IF Trim(Pathname) <> '' THEN
  394. IF ls_uo_fjbt.uf_getfjbolb_fromdb( ll_fileid, ls_filedata, sys_fileDB_sqlca, arg_msg) = 0 THEN
  395. RETURN 0
  396. END IF
  397. IF f_saveblobtofile(ls_filedata,Pathname,errmsg) = 0 THEN
  398. RETURN 0
  399. ELSE
  400. arg_s_pic.path[ll_i] = Pathname
  401. //记录临时文件位置,本窗口退出后删除
  402. wf_addlog_tempfilepathname(Pathname)
  403. END IF
  404. ELSE
  405. arg_s_pic.path[ll_i] = ''
  406. END IF
  407. ELSE
  408. arg_s_pic.path[ll_i] = ''
  409. END IF
  410. NEXT
  411. END IF
  412. RETURN 1
  413. end function
  414. on w_wfjg_pk.create
  415. int iCurrent
  416. call super::create
  417. this.ddlb_scid=create ddlb_scid
  418. this.st_3=create st_3
  419. this.st_2=create st_2
  420. this.ddlb_status=create ddlb_status
  421. iCurrent=UpperBound(this.Control)
  422. this.Control[iCurrent+1]=this.ddlb_scid
  423. this.Control[iCurrent+2]=this.st_3
  424. this.Control[iCurrent+3]=this.st_2
  425. this.Control[iCurrent+4]=this.ddlb_status
  426. end on
  427. on w_wfjg_pk.destroy
  428. call super::destroy
  429. destroy(this.ddlb_scid)
  430. destroy(this.st_3)
  431. destroy(this.st_2)
  432. destroy(this.ddlb_status)
  433. end on
  434. event retrieve_pageretr;Boolean cb_nextpage_enabled,cb_retrieveall_enabled
  435. Boolean cb_func_enabled,cb_retrieve_enabled
  436. cb_nextpage_enabled = cb_nextpage.Enabled
  437. cb_retrieveall_enabled = cb_retrieveall.Enabled
  438. cb_func_enabled = cb_func.Enabled
  439. cb_nextpage.Enabled = FALSE
  440. cb_retrieveall.Enabled = FALSE
  441. cb_func.Enabled = FALSE
  442. dw_uc.Retrieve()
  443. dw_pageretr.Retrieve(cur_scid,cur_flag,cur_secflag)
  444. IF dw_pageretr.RowCount() > 0 THEN
  445. dw_pageretr.SetRow(1)
  446. dw_pageretr.TriggerEvent(RowFocusChanged!)
  447. END IF
  448. wf_flagstatus_rf()
  449. THIS.TriggerEvent('retrieve_childdw')
  450. cb_nextpage.Enabled = cb_nextpage_enabled
  451. cb_retrieveall.Enabled = cb_retrieveall_enabled
  452. cb_func.Enabled = cb_func_enabled
  453. end event
  454. event ue_usual_query_filt;call super::ue_usual_query_filt;string obj_expr=''
  455. if trim(sle_usual_query.text)<>'' then
  456. IF POS(trim(sle_usual_query.text),'%')=0 THEN
  457. obj_expr=obj_expr+'( inwarecode LIKE "%'+trim(sle_usual_query.text)+'%" )'
  458. ELSE
  459. obj_expr=obj_expr+'( inwarecode LIKE "'+trim(sle_usual_query.text)+'" )'
  460. END IF
  461. end if
  462. dw_pageretr.setfilter(obj_expr)
  463. dw_pageretr.SetRedraw(False)
  464. dw_pageretr.filter()
  465. if dw_pageretr.rowcount()>=1 then
  466. dw_pageretr.selectrow(0,false)
  467. dw_pageretr.selectrow(1,true)
  468. end if
  469. dw_pageretr.SetRedraw(TRUE)
  470. end event
  471. event ue_usual_query_retr;call super::ue_usual_query_retr;string ls_querystrpart=''
  472. ls_newselect=lower(ori_oldselect)
  473. if trim(sle_usual_query.text)<>'' then
  474. if pos(trim(sle_usual_query.text),'%')=0 then
  475. ls_querystrpart="(ow_wfjg_in.inwarecode like '%"+trim(sle_usual_query.text)+"%')"
  476. else
  477. ls_querystrpart="(ow_wfjg_in.inwarecode like '"+trim(sle_usual_query.text)+"')"
  478. end if
  479. if Pos(ls_newselect," where ") <> 0 then
  480. ls_newselect=ls_newselect+" AND ("+ls_querystrpart+')'
  481. else
  482. ls_newselect=ls_newselect+" where ("+ls_querystrpart+')'
  483. end if
  484. end if
  485. wf_retrieveuc(dw_pageretr,ls_newselect,1)
  486. this.triggerevent('retrieve_pageretr')
  487. end event
  488. event open;THIS.TriggerEvent('ue_before_open')
  489. wf_movetocenter()
  490. OLD_TITLE = THIS.Title
  491. s_tran = Message.PowerObjectParm
  492. IF NOT IsNull(s_tran) THEN
  493. retrieve_all = s_tran.if_retrieve_all
  494. mode = s_tran.work_mode
  495. arg_pkid = s_tran.arg_pkid
  496. arg_string_code = s_tran.arg_string_code
  497. if_sharedata = s_tran.if_sharedata //是否应用sharedata,当retrieve_all=true是生效
  498. ds_share = s_tran.ds_share
  499. END IF
  500. dw_pageretr.RBUTTON_FILTER_USE = TRUE //右键查询功能开关
  501. dw_pageretr.titleclick_sort_use = TRUE //单击标题排序功能开关
  502. dw_pageretr.SetTransObject (sqlca)
  503. pkcolumndbtname = wf_get_pkcolumndbtname(dw_pageretr) //取第一列为关键字
  504. ori_oldselect = dw_pageretr.DESCRIBE("DataWindow.Table.Select")
  505. ls_newselect = ori_oldselect
  506. ds_curquery = CREATE DATASTORE
  507. ds_curquery.DataObject = 'd_extr_find'
  508. ds_curquery.SetTransObject (sqlca)
  509. wf_editindex_lockf()
  510. IF s_tran.d_long = 2 THEN
  511. cur_scid = s_tran.c_long
  512. Int li_item
  513. li_item = ddlb_scid.FindItem(s_tran.d_string,0)
  514. IF li_item > 0 THEN
  515. ddlb_scid.SelectItem(li_item)
  516. END IF
  517. END IF
  518. sle_usual_query.Text = Trim(arg_string_code)
  519. IF NOT retrieve_all THEN
  520. THIS.TriggerEvent("ue_usual_query_RETR") //修改ls_newselect,retrieve
  521. ELSE
  522. IF if_sharedata THEN
  523. ds_share.ShareData(dw_pageretr)
  524. ELSE
  525. wf_retrieveuc(dw_pageretr,ls_newselect,1)
  526. THIS.TriggerEvent('RETRIEVE_pageretr')
  527. END IF
  528. END IF
  529. IF retrieve_all THEN
  530. THIS.TriggerEvent("ue_usual_query_filt")
  531. END IF
  532. uc_column_int = 7 //uc dw前7列可以编辑
  533. child_column_int = 4 //子dw前8列可以编辑
  534. uo_ware = CREATE uo_inware_wfjg
  535. uo_ware.commit_transaction = sqlca
  536. uo_sptprice = CREATE uo_spt_price
  537. end event
  538. event refresh_interface;call super::refresh_interface;wf_flagstatus_rf()
  539. ddlb_status.enabled=not dw_edit_mode
  540. ddlb_scid.enabled=not dw_edit_mode
  541. end event
  542. event close;call super::close;destroy uo_ware
  543. destroy uo_sptprice
  544. end event
  545. event ue_f8;////用于选择明细内容,被f8[默认]\dw_aft.doubleclicked调用
  546. //IF NOT dw_edit_mode THEN RETURN
  547. //Long child_row,cnt_childdw
  548. //Long ls_sptid
  549. //Dec ls_lastprice,ls_rebate
  550. //
  551. //s_edit_index_tran s_tranf8
  552. //s_tranf8.if_retrieve_all = FALSE
  553. //s_tranf8.arg_pkid = 0
  554. //s_tranf8.arg_string_code = ''
  555. //s_tranf8.b_long = 2
  556. //
  557. //Long chc = 1,ls_j
  558. //
  559. //
  560. //child_row = dw_aft.GetRow()
  561. //cnt_childdw = dw_aft.RowCount()
  562. //
  563. //ls_sptid = dw_uc.Object.sptid[dw_uc.GetRow()]
  564. //
  565. //IF IsNull(ls_sptid) OR ls_sptid = 0 THEN
  566. // THIS.TriggerEvent("ue_f9")
  567. //END IF
  568. //IF NOT IsValid(w_mtrldef_edit) THEN
  569. // s_edit_index_tran s_ch_tran
  570. // s_ch_tran.if_retrieve_all = FALSE
  571. // s_ch_tran.work_mode = 1
  572. // s_ch_tran.arg_pkid = 0
  573. // s_ch_tran.arg_string_code = ''
  574. // s_ch_tran.b_long = 3
  575. // s_ch_tran.c_long = -1
  576. // s_ch_tran.f_long = -1
  577. // s_ch_tran.if_select_all = TRUE
  578. //
  579. // dw_aft.AcceptText()
  580. // IF dw_aft.GetRow() > 0 THEN s_ch_tran.arg_string_code = Trim(dw_aft.Object.u_mtrldef_mtrlcode[dw_aft.GetRow()])
  581. //
  582. // OpenWithParm(w_mtrldef_edit,s_ch_tran) //调用
  583. //
  584. // s_mtrldef_array s_inscust
  585. // s_inscust = Message.PowerObjectParm //接受返回结构
  586. // FOR ls_j = 1 TO UpperBound(s_inscust.mtrlid)
  587. // IF s_inscust.mtrlid[ls_j] > 0 THEN //正常返回值则可以取以下值
  588. //
  589. // IF dw_aft.GetRow() > 0 THEN
  590. // IF dw_aft.Object.ow_wfjgmx_in_aft_mtrlid[child_row] <> 0 THEN
  591. // child_row = dw_aft.InsertRow (0)
  592. // ELSE
  593. // child_row = dw_aft.GetRow()
  594. // END IF
  595. // ELSE
  596. // child_row = dw_aft.InsertRow (0)
  597. // END IF
  598. //
  599. // dw_aft.Object.u_mtrldef_mtrlcode[child_row] = s_inscust.mtrlcode[ls_j]
  600. // dw_aft.Object.u_mtrldef_mtrlname[child_row] = s_inscust.mtrlname[ls_j]
  601. // dw_aft.Object.u_mtrldef_mtrlmode[child_row] = s_inscust.mtrlmode[ls_j]
  602. // dw_aft.Object.u_mtrldef_unit[child_row] = s_inscust.unit[ls_j]
  603. // dw_aft.Object.ow_wfjgmx_in_aft_mtrlid[child_row] = s_inscust.mtrlid[ls_j]
  604. // dw_aft.Object.ow_wfjgmx_in_aft_fprice[child_row] = s_inscust.planprice[ls_j]
  605. // dw_aft.Object.u_mtrldef_mtrlsectype[child_row] = s_inscust.mtrlsectype[ls_j]
  606. // dw_aft.Object.u_mtrldef_zxmtrlmode[child_row] = s_inscust.zxmtrlmode[ls_j]
  607. // dw_aft.Object.u_mtrldef_statusflag[child_row] = S_INSCUST.statusflag[ls_j]
  608. // dw_aft.Object.u_mtrldef_statustype[child_row] = S_INSCUST.statustype[ls_j]
  609. // dw_aft.Object.u_mtrldef_woodcodeflag[child_row] = S_INSCUST.woodcodeflag[ls_j]
  610. // dw_aft.Object.u_mtrldef_woodcodetype[child_row] = S_INSCUST.woodcodetype[ls_j]
  611. // dw_aft.Object.u_mtrldef_pcodeflag[child_row] = S_INSCUST.pcodeflag[ls_j]
  612. // dw_aft.Object.u_mtrldef_pcodetype[child_row] = S_INSCUST.pcodetype[ls_j]
  613. //
  614. //
  615. // Decimal ls_1stnewcost,ls_1stzqrate,ls_1strate
  616. // String arg_msg
  617. // String ls_1stunit,ls_jgdscrp
  618. //
  619. // ls_jgdscrp = dw_aft.Object.ow_wfjgmx_in_aft_jgdscrp[child_row]
  620. //
  621. // IF cur_editfocus = 1 THEN
  622. // IF uo_sptprice.uof_getmtrlsptprice(ls_sptid,s_inscust.mtrlid[ls_j],ls_1stunit,ls_jgdscrp,ls_1stnewcost,ls_1stzqrate,ls_1strate,arg_msg) <> 1 THEN
  623. // dw_aft.Object.ow_wfjgmx_in_aft_jgprice[child_row] = s_inscust.mprice[ls_j]
  624. // dw_aft.Object.ow_wfjgmx_in_aft_rebate[child_row] = 1
  625. // dw_aft.Object.ow_wfjgmx_in_aft_unit[child_row] = s_inscust.unit[ls_j]
  626. // ELSE
  627. // dw_aft.Object.ow_wfjgmx_in_aft_jgprice[child_row] = ls_1stnewcost
  628. // dw_aft.Object.ow_wfjgmx_in_aft_rebate[child_row] = ls_1stzqrate
  629. // dw_aft.Object.ow_wfjgmx_in_aft_unit[child_row] = ls_1stunit
  630. // END IF
  631. // ELSE
  632. // IF dw_aft.Object.ow_wfjgmx_in_aft_unit[child_row] = '' THEN
  633. // dw_aft.Object.ow_wfjgmx_in_aft_unit[child_row] = s_inscust.unit[ls_j]
  634. // END IF
  635. // END IF
  636. // dw_aft.setcolumn('ow_wfjgmx_in_aft_qty')
  637. //
  638. // END IF
  639. // NEXT
  640. //END IF
  641. //
  642. //
  643. //this.triggerevent('ue_allowedit')
  644. //dw_aft.SetRedraw(TRUE)
  645. //dw_aft.SetFocus()
  646. //
  647. //
  648. //
  649. end event
  650. event retrieve_childdw;call super::retrieve_childdw;Long row,uc_relid,uc_scid
  651. row = dw_pageretr.GetRow()
  652. IF row > 0 THEN
  653. uc_scid = dw_pageretr.Object.ow_wfjg_in_scid[row]
  654. uc_relid=dw_pageretr.object.inwareid[row]
  655. dw_child.SetRedraw (FALSE)
  656. dw_child.Retrieve(uc_scid,uc_relid)
  657. dw_child.SetRedraw (TRUE)
  658. ELSE
  659. dw_child.Reset()
  660. END IF
  661. end event
  662. event ue_f9;call super::ue_f9;//用于选择明细内容,被F9[默认]
  663. IF NOT dw_edit_mode THEN RETURN
  664. Long uc_row
  665. uc_row = dw_uc.GetRow()
  666. IF uc_row = 0 THEN
  667. MessageBox('系统提示','请选定进仓单!')
  668. RETURN
  669. END IF
  670. dw_uc.AcceptText()
  671. IF NOT IsValid(W_spt_edit) THEN
  672. s_edit_index_tran s_ch_tran //传递参数使用
  673. s_ch_tran.if_retrieve_all = FALSE //是否一次RETRIEVE所有行
  674. s_ch_tran.work_mode = 1 //0-单纯编辑模式 1-选择\编辑模式
  675. s_ch_tran.arg_pkid = 0 //目标定位PKID (备用)
  676. //查询列(物料编码)部分内容,用于初步筛选
  677. s_ch_tran.arg_string_code = Upper(Trim(dw_uc.Object.u_spt_sptcode[dw_uc.GetRow()]))
  678. OpenWithParm(W_spt_edit,s_ch_tran) //调用
  679. S_spt S_INSCUST
  680. S_INSCUST = Message.PowerObjectParm //接受返回结构
  681. IF S_INSCUST.sptid > 0 THEN //正常返回值则可以取以下值
  682. dw_uc.SetRedraw(FALSE)
  683. dw_uc.Object.sptid[uc_row] = S_INSCUST.sptid
  684. dw_uc.Object.u_spt_name[uc_row] = S_INSCUST.Name
  685. dw_uc.Object.u_spt_sptcode[uc_row] = S_INSCUST.sptcode
  686. datetime ld_indate
  687. ld_indate = dw_uc.Object.indate[uc_row]
  688. dw_uc.Object.ow_wfjg_in_plandate[uc_row] = f_findspt_paydate(S_INSCUST.sptid,ld_indate)
  689. dw_uc.SetRedraw(TRUE)
  690. dw_uc.SetColumn("part")
  691. END IF
  692. END IF
  693. end event
  694. event ue_viewprint;call super::ue_viewprint;
  695. IF NOT f_power_ind(1429) THEN
  696. MessageBox('提示','你没有使用权限!',information!,OK!)
  697. RETURN
  698. END IF
  699. Long LS_ROW
  700. LS_ROW = dw_pageretr.GetRow()
  701. IF LS_ROW <= 0 THEN
  702. MessageBox('NO','没有打印目标单据!')
  703. RETURN
  704. END IF
  705. S_print_MSG LS_PRMSG
  706. IF ls_newname <> '' THEN
  707. IF li_auditprint = 1 THEN
  708. IF dw_pageretr.Object.flag[dw_pageretr.GetRow()] = 0 THEN
  709. MessageBox('NO','目标单据还未审核,不能打印!')
  710. RETURN
  711. END IF
  712. END IF
  713. LS_PRMSG.obj_dwNAME = ls_newname
  714. ELSE
  715. IF Not f_power_ind(1429) THEN
  716. MessageBox(publ_operator,'你没有使用权限!')
  717. RETURN
  718. END IF
  719. LS_PRMSG.obj_dwNAME = ''
  720. END IF
  721. IF LS_PRMSG.obj_dwNAME = '' THEN RETURN
  722. LS_PRMSG.printrow = ll_prownum
  723. LS_PRMSG.TAG_TEXT = '外协商盘亏单'
  724. LS_PRMSG.FILTER_STRING = ''
  725. LS_PRMSG.retr_pram_falg = 15
  726. LS_PRMSG.PAGECH_FLAG = 0
  727. LS_PRMSG.retr_scid = dw_pageretr.Object.ow_wfjg_in_scid[LS_ROW]
  728. LS_PRMSG.retr_pramnmb = dw_pageretr.Object.inwareid[LS_ROW]
  729. LS_PRMSG.rowcnt = dw_child.RowCount()
  730. IF ifpic = 1 THEN
  731. String ls_msg
  732. IF wf_print_retrievedata(LS_PRMSG.s_pic,ls_msg) = 0 THEN
  733. MessageBox('提示','下载图片失败!',information!,OK!)
  734. RETURN
  735. END IF
  736. END IF
  737. OpenWithParm(w_publ_preview,LS_PRMSG)
  738. IF ifpic = 1 THEN
  739. Long li
  740. FOR li = 1 TO UpperBound(LS_PRMSG.s_pic.path)
  741. IF Len(Trim(LS_PRMSG.s_pic.path[li])) > 0 THEN
  742. FileDelete(LS_PRMSG.s_pic.path[li])
  743. END IF
  744. NEXT
  745. END IF
  746. //更新打印次数
  747. String arg_msg
  748. printnum = Message.DoubleParm
  749. f_update_printnum('ow_wfjg_in',printnum,dw_pageretr.Object.ow_wfjg_in_scid[LS_ROW],dw_pageretr.Object.inwareid[LS_ROW],'','',arg_msg,TRUE)
  750. end event
  751. event ue_f7;call super::ue_f7;//IF NOT dw_edit_mode THEN RETURN
  752. //Long child_row,ls_sptid,ls_j
  753. //child_row = dw_aft.GetRow()
  754. //
  755. //Int li_statusflag,li_woodcodeflag,li_pcodeflag
  756. //Long ll_statustype,ll_woodcodetype,ll_pcodetype
  757. //s_mtrldef_array arg_s_mtrldef
  758. //
  759. //ls_sptid = dw_uc.Object.sptid[dw_uc.GetRow()]
  760. //IF ls_sptid <= 0 THEN
  761. // MessageBox("系统提示","请先选择供应商")
  762. // RETURN
  763. //END IF
  764. //
  765. //s_edit_index_tran s_tranf8
  766. //s_tranf8.if_retrieve_all = FALSE
  767. //s_tranf8.arg_pkid = 0
  768. //s_tranf8.arg_string_code = ''
  769. //s_tranf8.b_long = 2
  770. //s_tranf8.d_long = ls_sptid
  771. //s_tranf8.f_long = 0
  772. //
  773. //IF NOT IsValid(w_inware_wfjg_ch) THEN
  774. // OpenWithParm(w_inware_wfjg_ch,s_tranf8)
  775. //
  776. // s_mtrldef_wfjg_array s_inscust
  777. // s_inscust = Message.PowerObjectParm //接受返回结构
  778. // dw_aft.SetRedraw(FALSE)
  779. // FOR ls_j = 1 TO UpperBound(s_inscust.wfjgid)
  780. // IF s_inscust.wfjgid[ls_j] > 0 THEN //正常返回值则可以取以下值
  781. //
  782. // IF dw_aft.GetRow() > 0 THEN
  783. // IF dw_aft.Object.ow_wfjgmx_in_aft_relid[child_row] <> 0 THEN
  784. // child_row = dw_aft.InsertRow (0)
  785. // ELSE
  786. // child_row = dw_aft.GetRow()
  787. // END IF
  788. // ELSE
  789. // child_row = dw_aft.InsertRow (0)
  790. // END IF
  791. // dw_aft.Object.ow_wfjgmx_in_aft_ifrel[child_row] = 1
  792. // dw_aft.Object.ow_wfjgmx_in_aft_relid[child_row] = s_inscust.wfjgid[ls_j]
  793. // dw_aft.Object.ow_wfjgmx_in_aft_mtrlid[child_row] = s_inscust.mtrlid[ls_j]
  794. // dw_aft.Object.u_mtrldef_mtrlcode[child_row] = s_inscust.mtrlcode[ls_j]
  795. // dw_aft.Object.ow_wfjgmx_in_aft_relcode[child_row] = s_inscust.taskcode[ls_j]
  796. // dw_aft.Object.ow_wfjgmx_in_aft_jgprice[child_row] = s_inscust.price[ls_j]
  797. // dw_aft.Object.u_mtrldef_mtrlname[child_row] = s_inscust.mtrlname[ls_j]
  798. // dw_aft.Object.u_mtrldef_mtrlmode[child_row] = s_inscust.mtrlmode[ls_j]
  799. // dw_aft.Object.u_mtrldef_unit[child_row] = s_inscust.unit[ls_j]
  800. // dw_aft.Object.ow_wfjgmx_in_aft_qty[child_row] = s_inscust.qty[ls_j]
  801. // dw_aft.Object.ow_wfjgmx_in_aft_status[child_row] = s_inscust.status[ls_j]
  802. // dw_aft.Object.ow_wfjgmx_in_aft_sptid_cusid[child_row] = s_inscust.orderid[ls_j]
  803. // dw_aft.Object.ow_wfjgmx_in_aft_woodcode[child_row] = s_inscust.woodcode[ls_j]
  804. // dw_aft.Object.ow_wfjgmx_in_aft_pcode[child_row] = s_inscust.pcode[ls_j]
  805. // dw_aft.Object.ow_wfjgmx_in_aft_mxdscrp[child_row] = s_inscust.dscrp[ls_j]
  806. //
  807. // dw_aft.Object.u_mtrldef_mtrlsectype[child_row] = s_inscust.mtrlsectype[ls_j]
  808. // dw_aft.Object.u_mtrldef_zxmtrlmode[child_row] = s_inscust.zxmtrlmode[ls_j]
  809. // dw_aft.Object.ow_wfjgmx_in_aft_jgdscrp[child_row] = s_inscust.jgdscrp[ls_j]
  810. // dw_aft.Object.ow_wfjgmx_in_aft_relprintid[child_row] = s_inscust.printid[ls_j]
  811. // dw_aft.Object.ow_wfjgmx_in_aft_unit[child_row] = s_inscust.unit[ls_j]
  812. //
  813. // IF f_find_mtrl(s_inscust.mtrlcode[ls_j],-1,arg_s_mtrldef) = 0 THEN
  814. // li_statusflag = 0
  815. // li_woodcodeflag = 0
  816. // li_pcodeflag = 0
  817. // ll_statustype = 0
  818. // ll_woodcodetype = 0
  819. // ll_pcodetype = 0
  820. // ELSE
  821. // li_statusflag = arg_s_mtrldef.statusflag[1]
  822. // ll_statustype = arg_s_mtrldef.statustype[1]
  823. // li_woodcodeflag = arg_s_mtrldef.woodcodeflag[1]
  824. // ll_woodcodetype = arg_s_mtrldef.woodcodetype[1]
  825. // li_pcodeflag = arg_s_mtrldef.pcodeflag[1]
  826. // ll_pcodetype = arg_s_mtrldef.pcodetype[1]
  827. // END IF
  828. //
  829. // dw_aft.Object.u_mtrldef_statusflag[child_row] = li_statusflag
  830. // dw_aft.Object.u_mtrldef_statustype[child_row] = ll_statustype
  831. // dw_aft.Object.u_mtrldef_woodcodeflag[child_row] = li_woodcodeflag
  832. // dw_aft.Object.u_mtrldef_woodcodetype[child_row] = ll_woodcodetype
  833. // dw_aft.Object.u_mtrldef_pcodeflag[child_row] = li_pcodeflag
  834. // dw_aft.Object.u_mtrldef_pcodetype[child_row] = ll_pcodetype
  835. //
  836. //
  837. // END IF
  838. // NEXT
  839. // this.triggerevent('ue_allowedit')
  840. // dw_aft.SetColumn('u_mtrldef_mtrlcode')
  841. // dw_aft.SetRedraw(TRUE)
  842. //END IF
  843. //
  844. //
  845. //
  846. //
  847. //
  848. end event
  849. event ue_print;call super::ue_print;//--直接打印
  850. IF NOT f_power_ind(1429) THEN
  851. MessageBox('提示','你没有使用权限!',information!,OK!)
  852. RETURN
  853. END IF
  854. uo_print_preview uo_print
  855. IF MessageBox ("IF","是否确定要打印当前单据吗?",Question!,YesNo! ) = 2 THEN RETURN
  856. S_print_MSG LS_PRMSG
  857. Long LS_ROW
  858. LS_ROW = dw_pageretr.GetRow()
  859. IF LS_ROW <= 0 THEN
  860. MessageBox('NO','没有打印目标单据!')
  861. RETURN
  862. END IF
  863. IF ls_newname <> '' THEN
  864. IF li_auditprint = 1 THEN
  865. IF dw_pageretr.Object.flag[dw_pageretr.GetRow()] = 0 THEN
  866. MessageBox('NO','目标单据还未审核,不能打印!')
  867. RETURN
  868. END IF
  869. END IF
  870. LS_PRMSG.obj_dwNAME = ls_newname
  871. ELSE
  872. IF Not f_power_ind(1429) THEN
  873. MessageBox(publ_operator,'你没有使用权限!')
  874. RETURN
  875. END IF
  876. LS_PRMSG.obj_dwNAME = ''
  877. END IF
  878. IF LS_PRMSG.obj_dwNAME = '' THEN RETURN
  879. LS_PRMSG.printrow = ll_prownum
  880. LS_PRMSG.retr_pram_falg = 15
  881. LS_PRMSG.TAG_TEXT = '外协商盘亏单'
  882. LS_PRMSG.FILTER_STRING = ''
  883. LS_PRMSG.PAGECH_FLAG = 0
  884. LS_PRMSG.retr_scid = dw_pageretr.Object.ow_wfjg_in_scid[dw_pageretr.GetRow()]
  885. LS_PRMSG.retr_pramnmb = dw_pageretr.Object.inwareid[dw_pageretr.GetRow()]
  886. LS_PRMSG.rowcnt = dw_child.RowCount()
  887. IF ifpic = 1 THEN
  888. String ls_msg
  889. IF wf_print_retrievedata(LS_PRMSG.s_pic,ls_msg) = 0 THEN
  890. MessageBox('提示','下载图片失败!',information!,OK!)
  891. RETURN
  892. END IF
  893. END IF
  894. uo_print.FACT_PRINT_MSG = LS_PRMSG
  895. String arg_msg
  896. IF uo_print.uof_print_begin(arg_msg) = 0 THEN
  897. MessageBox("系统提示",arg_msg)
  898. RETURN
  899. END IF
  900. uo_print.ds_print()
  901. IF ifpic = 1 THEN
  902. Long li
  903. FOR li = 1 TO UpperBound(LS_PRMSG.s_pic.path)
  904. IF Len(Trim(LS_PRMSG.s_pic.path[li])) > 0 THEN
  905. FileDelete(LS_PRMSG.s_pic.path[li])
  906. END IF
  907. NEXT
  908. END IF
  909. //更新打印次数
  910. printnum = 1
  911. f_update_printnum('ow_wfjg_in',printnum,dw_pageretr.Object.ow_wfjg_in_scid[LS_ROW],dw_pageretr.Object.inwareid[LS_ROW],'','',arg_msg,TRUE)
  912. end event
  913. event ue_f11;call super::ue_f11;//用于选择明细内容,被F8[默认]\dw_child.doubleclicked调用
  914. IF NOT dw_edit_mode THEN RETURN
  915. Long child_row,ins_sptid = 0
  916. ins_sptid = dw_uc.Object.sptid[dw_uc.GetRow()]
  917. IF ins_sptid = 0 OR IsNull(ins_sptid) THEN
  918. MessageBox(publ_operator,'请先选择加工商')
  919. RETURN
  920. END IF
  921. child_row = dw_child.GetRow()
  922. IF NOT IsValid(w_sptware_sptid_ch) THEN
  923. s_edit_index_tran s_tranf8 //传递参数使用
  924. s_tranf8.if_retrieve_all = FALSE //是否一次RETRIEVE所有行
  925. s_tranf8.arg_pkid = 0 //目标定位PKID (备用)
  926. s_tranf8.arg_string_code = '' //查询列(物料编码)部分内容,用于初步筛选
  927. s_tranf8.b_long = - 1 //选择原料或产品
  928. s_tranf8.d_long = ins_sptid
  929. s_tranf8.e_long = cur_scid
  930. s_tranf8.f_long =cur_scid
  931. Long chc = 1,ls_j
  932. dw_child.AcceptText()
  933. IF dw_child.GetRow() > 0 THEN s_tranf8.arg_string_code = Trim(dw_child.Object.u_mtrldef_mtrlcode[dw_child.GetRow()])
  934. OpenWithParm(w_sptware_sptid_ch,s_tranf8) //调用
  935. s_sptware_array S_INSCUST
  936. S_INSCUST = Message.PowerObjectParm //接受返回结构
  937. FOR ls_j = 1 TO UpperBound(S_INSCUST.mtrlwareid)
  938. IF S_INSCUST.mtrlwareid[ls_j] > 0 THEN
  939. IF dw_child.GetRow() > 0 THEN
  940. IF dw_child.Object.ow_wfjgmx_in_bef_mtrlid[child_row] <> 0 THEN
  941. child_row = dw_child.InsertRow (0)
  942. ELSE
  943. child_row = dw_child.GetRow()
  944. END IF
  945. ELSE
  946. child_row = dw_child.InsertRow (0)
  947. END IF
  948. dw_child.Object.ow_wfjgmx_in_bef_mtrlwareid[child_row] = S_INSCUST.mtrlwareid[ls_j]
  949. dw_child.Object.ow_wfjgmx_in_bef_mtrlid[child_row] = S_INSCUST.mtrlid[ls_j]
  950. dw_child.Object.u_mtrldef_mtrlcode[child_row] = S_INSCUST.u_mtrldef_mtrlcode[ls_j]
  951. dw_child.Object.u_mtrldef_mtrlname[child_row] = S_INSCUST.u_mtrldef_mtrlname[ls_j]
  952. dw_child.Object.u_mtrldef_mtrlmode[child_row] = S_INSCUST.u_mtrldef_mtrlmode[ls_j]
  953. dw_child.Object.u_mtrldef_unit[child_row] = S_INSCUST.u_mtrldef_unit[ls_j]
  954. dw_child.Object.u_mtrldef_mtrlsectype[child_row] = S_INSCUST.mtrlsectype[ls_j]
  955. dw_child.Object.u_mtrldef_zxmtrlmode[child_row] = S_INSCUST.zxmtrlmode[ls_j]
  956. dw_child.Object.ow_wfjgmx_in_bef_qty[child_row] = S_INSCUST.noallocqty[ls_j]
  957. dw_child.Object.ow_wfjgmx_in_bef_fprice[child_row] = S_INSCUST.cost[ls_j]
  958. dw_child.Object.ow_wfjgmx_in_bef_plancode[child_row] = S_INSCUST.plancode[ls_j]
  959. dw_child.Object.ow_wfjgmx_in_bef_status[child_row] = S_INSCUST.status[ls_j]
  960. dw_child.Object.ow_wfjgmx_in_bef_woodcode[child_row] = S_INSCUST.woodcode[ls_j]
  961. dw_child.Object.ow_wfjgmx_in_bef_pcode[child_row] = S_INSCUST.pcode[ls_j]
  962. END IF
  963. NEXT
  964. dw_child.SetColumn('ow_wfjgmx_in_bef_qty')
  965. END IF
  966. end event
  967. event ue_addzy;call super::ue_addzy;IF NOT f_power_ind(1428) THEN
  968. MessageBox(publ_operator,'你没有使用权限!')
  969. RETURN
  970. END IF
  971. if dw_edit_mode then return
  972. string arg_msg=''
  973. string ls_str
  974. long uc_row
  975. s_inputbox s_sreu
  976. uc_row=dw_pageretr.getrow()
  977. if uc_row<=0 then
  978. messagebox('系统提示','请选定当前目标单据!')
  979. return
  980. end if
  981. s_sreu.title='请输入要补充到备注的内容'
  982. s_sreu.old_text=''
  983. openwithparm(w_inputbox,s_sreu)
  984. ls_str=message.stringparm
  985. if trim(ls_str)='' or isnull(ls_str) then return
  986. if uo_ware.add_dscrp(dw_pageretr.object.ow_wfjg_in_scid[uc_row],dw_pageretr.object.inwareid[uc_row],ls_str,arg_msg)=0 then
  987. messagebox('error!',arg_msg)
  988. return
  989. else
  990. messagebox(publ_operator,'添加备注操作成功!')
  991. wf_refresh_curuc(dw_pageretr.object.ow_wfjg_in_scid[uc_row],dw_pageretr.object.inwareid[uc_row])
  992. end if
  993. end event
  994. event ue_rpt_viewprint;call super::ue_rpt_viewprint;
  995. Long row,uc_relid,ll_scid
  996. row = dw_pageretr.GetRow()
  997. IF row = 0 THEN RETURN
  998. IF ls_rpname = '' THEN RETURN
  999. IF li_auditprint = 1 THEN
  1000. IF dw_pageretr.Object.flag[row] = 0 THEN
  1001. MessageBox('NO','目标单据还未审核,不能打印!')
  1002. RETURN
  1003. END IF
  1004. END IF
  1005. s_rpt_print_msg s_print
  1006. s_print.retr_pram_falg = 15
  1007. s_print.rpid = ls_msgprintid_rpt
  1008. s_print.retr_flag = TRUE
  1009. s_print.tag_text = THIS.Title
  1010. s_print.rpname = ls_rpname
  1011. s_print.retr_scid = dw_pageretr.Object.ow_wfjg_in_scid[row]
  1012. s_print.retr_pramnmb = dw_pageretr.Object.inwareid[row]
  1013. s_print.rowcnt = dw_child.RowCount()
  1014. OpenWithParm(w_rpt_preview,s_print)
  1015. //**更新打印次料
  1016. String arg_msg
  1017. printnum = Message.DoubleParm
  1018. String ls_code
  1019. ll_scid = dw_pageretr.Object.ow_wfjg_in_scid[row]
  1020. ls_code = dw_pageretr.Object.inwarecode[row]
  1021. //f_update_printnum(ll_scid,ls_code,TRUE,printnum,arg_msg,TRUE)
  1022. end event
  1023. event ue_rpt_print;call super::ue_rpt_print;Long row,uc_relid,ll_scid
  1024. row = dw_pageretr.GetRow()
  1025. IF row = 0 THEN RETURN
  1026. uo_rpt_print_preview uo_print
  1027. S_rpt_print_MSG LS_PRMSG
  1028. IF dw_pageretr.RowCount() = 0 THEN
  1029. MessageBox('系统信息','没有可打印的单据!')
  1030. RETURN
  1031. END IF
  1032. IF ls_rpname = '' THEN RETURN
  1033. IF li_auditprint = 1 THEN
  1034. IF dw_pageretr.Object.flag[row] = 0 THEN
  1035. MessageBox('NO','目标单据还未审核,不能打印!')
  1036. RETURN
  1037. END IF
  1038. END IF
  1039. IF MessageBox ("IF","是否确定要打印当前单据吗?",Question!,YesNo! ) = 2 THEN RETURN
  1040. LS_PRMSG.retr_pram_falg = 15
  1041. LS_PRMSG.TAG_TEXT = THIS.Title
  1042. LS_PRMSG.rpname = ls_rpname
  1043. LS_PRMSG.FILTER_STRING = ''
  1044. LS_PRMSG.PAGECH_FLAG = 0
  1045. LS_PRMSG.rpid = ls_msgprintid_rpt
  1046. LS_PRMSG.retr_scid = dw_pageretr.Object.ow_wfjg_in_scid[row]
  1047. LS_PRMSG.retr_pramnmb = dw_pageretr.Object.inwareid[row]
  1048. LS_PRMSG.rowcnt = dw_child.RowCount()
  1049. uo_print.FACT_PRINT_MSG = LS_PRMSG
  1050. String arg_msg
  1051. IF uo_print.uof_print_begin(arg_msg) = 0 THEN
  1052. MessageBox("系统提示",arg_msg)
  1053. RETURN
  1054. END IF
  1055. uo_print.ds_print()
  1056. //**更新打印次料
  1057. printnum = Message.DoubleParm
  1058. String ls_code
  1059. ll_scid = dw_pageretr.Object.ow_wfjg_in_scid[row]
  1060. ls_code = dw_pageretr.Object.inwarecode[row]
  1061. //f_update_printnum(ll_scid,ls_code,TRUE,printnum,arg_msg,TRUE)
  1062. end event
  1063. type cb_func from w_publ_1ton_share_detail`cb_func within w_wfjg_pk
  1064. end type
  1065. type cb_exit from w_publ_1ton_share_detail`cb_exit within w_wfjg_pk
  1066. integer x = 2546
  1067. integer width = 142
  1068. end type
  1069. type sle_usual_query from w_publ_1ton_share_detail`sle_usual_query within w_wfjg_pk
  1070. integer width = 549
  1071. end type
  1072. type cb_retrieveall from w_publ_1ton_share_detail`cb_retrieveall within w_wfjg_pk
  1073. integer x = 3003
  1074. integer width = 142
  1075. end type
  1076. type em_pagerowno from w_publ_1ton_share_detail`em_pagerowno within w_wfjg_pk
  1077. integer x = 2702
  1078. end type
  1079. type dw_pageretr from w_publ_1ton_share_detail`dw_pageretr within w_wfjg_pk
  1080. integer x = 2007
  1081. integer width = 1531
  1082. integer height = 916
  1083. string dataobject = "dw_wfjg_pk_index"
  1084. end type
  1085. event dw_pageretr::rowfocuschanged;call super::rowfocuschanged;wf_flagstatus_rf()
  1086. IF dw_edit_mode THEN RETURN
  1087. IF currentrow <=0 THEN
  1088. dw_child.reset()
  1089. RETURN
  1090. end if
  1091. this.selectrow(0,false)
  1092. this.selectrow(currentrow,true)
  1093. DW_UC.SETROW(currentrow)
  1094. DW_UC.ScrollToRow (currentrow)
  1095. if not dw_edit_mode then parent.triggerevent('retrieve_childdw')
  1096. end event
  1097. type st_1 from w_publ_1ton_share_detail`st_1 within w_wfjg_pk
  1098. integer x = 23
  1099. end type
  1100. type cb_nextpage from w_publ_1ton_share_detail`cb_nextpage within w_wfjg_pk
  1101. integer x = 3145
  1102. end type
  1103. type dw_uc from w_publ_1ton_share_detail`dw_uc within w_wfjg_pk
  1104. integer width = 2007
  1105. integer height = 912
  1106. string dataobject = "dw_wfjg_pk_edit"
  1107. end type
  1108. event dw_uc::dwnkey;Parent.TriggerEvent('user_key')
  1109. IF Key = KeyDownArrow! THEN RETURN 1
  1110. IF dw_edit_mode THEN
  1111. IF dw_uc.GetColumnName ( ) = 'dscrp' And Key = KeyEnter! THEN
  1112. dw_child.SetFocus()
  1113. dw_child.ScrollToRow(dw_child.RowCount())
  1114. dw_child.SetColumn ('u_mtrldef_mtrlcode')
  1115. RETURN 1
  1116. ELSEIF dw_uc.GetColumnName ( ) = 'u_spt_sptcode' And Key = KeyEnter! THEN
  1117. String ls_code
  1118. dw_uc.AcceptText()
  1119. ls_code = Trim(dw_uc.Object.u_spt_sptcode[dw_uc.GetRow()])
  1120. s_spt arg_s_spt
  1121. IF f_find_spt(ls_code,arg_s_spt) = 0 THEN
  1122. Parent.TriggerEvent('ue_f9')
  1123. RETURN 1
  1124. ELSE
  1125. dw_uc.SetRedraw(False)
  1126. dw_uc.Object.sptid[dw_uc.GetRow()] = arg_s_spt.sptid
  1127. dw_uc.Object.u_spt_sptcode[dw_uc.GetRow()] = arg_s_spt.sptcode
  1128. dw_uc.Object.u_spt_name[dw_uc.GetRow()] = arg_s_spt.Name
  1129. DateTime ld_indate
  1130. ld_indate = dw_uc.Object.indate[dw_uc.GetRow()]
  1131. dw_uc.Object.ow_wfjg_in_plandate[dw_uc.GetRow()] = f_findspt_paydate(arg_s_spt.sptid,ld_indate)
  1132. dw_uc.SetRedraw(True)
  1133. dw_uc.SetColumn("part")
  1134. RETURN 1
  1135. END IF
  1136. ELSE
  1137. IF Key = KeyEnter! THEN //
  1138. keybd_event ( 9, 0, 0 , 0 ) // 按下tab
  1139. keybd_event ( 9, 0, 2, 0 ) // 释放tab
  1140. RETURN 1
  1141. END IF
  1142. END IF
  1143. END IF
  1144. end event
  1145. event dw_uc::buttonclicked;call super::buttonclicked;if not dw_edit_mode then return
  1146. if row <= 0 then return
  1147. if dwo.name='b_spt' then
  1148. parent.TRIGGEREVENT('ue_f9')
  1149. end if
  1150. end event
  1151. type gb_2 from w_publ_1ton_share_detail`gb_2 within w_wfjg_pk
  1152. integer x = 347
  1153. integer y = 400
  1154. integer width = 539
  1155. integer height = 168
  1156. end type
  1157. type dw_child from w_publ_1ton_share_detail`dw_child within w_wfjg_pk
  1158. integer y = 1216
  1159. integer width = 3529
  1160. integer height = 896
  1161. string dataobject = "dw_wfjgmx_pk_edit"
  1162. end type
  1163. event dw_child::doubleclicked;PARENT.TriggerEvent('ue_f11')
  1164. end event
  1165. type cb_viewprint from w_publ_1ton_share_detail`cb_viewprint within w_wfjg_pk
  1166. integer x = 1902
  1167. end type
  1168. type cb_print from w_publ_1ton_share_detail`cb_print within w_wfjg_pk
  1169. integer x = 1710
  1170. end type
  1171. type cb_add from w_publ_1ton_share_detail`cb_add within w_wfjg_pk
  1172. end type
  1173. event cb_add::clicked;IF NOT f_power_ind(1424) THEN
  1174. MessageBox(publ_operator,'你没有使用权限!')
  1175. RETURN
  1176. END IF
  1177. String arg_msg = ''
  1178. Long uc_row,j
  1179. IF NOT dw_edit_mode THEN
  1180. IF wf_check_print(arg_msg) = 0 THEN
  1181. MessageBox('系统提示',arg_msg)
  1182. RETURN
  1183. END IF
  1184. END IF
  1185. IF dw_edit_mode THEN
  1186. dw_uc.AcceptText()
  1187. dw_child.AcceptText()
  1188. uc_row = dw_uc.GetRow()
  1189. IF uc_row <= 0 THEN
  1190. MessageBox('系统提示','请选定当前目标单据!')
  1191. RETURN
  1192. END IF
  1193. IF NOT dw_uc.Object.indate[uc_row] > DateTime(2000-01-01,Now()) THEN
  1194. MessageBox('系统提示','不合理发生时间!')
  1195. dw_uc.SetFocus()
  1196. dw_uc.SetColumn("indate")
  1197. RETURN
  1198. END IF
  1199. IF NOT Len(String(dw_uc.Object.inrep[uc_row])) > 0 THEN
  1200. MessageBox('系统提示','请填写经手人!')
  1201. dw_uc.SetFocus()
  1202. dw_uc.SetColumn("inrep")
  1203. RETURN
  1204. END IF
  1205. uo_ware.indate = dw_uc.Object.indate[uc_row]
  1206. uo_ware.inrep = dw_uc.Object.inrep[uc_row]
  1207. uo_ware.part = dw_uc.Object.part[uc_row]
  1208. uo_ware.dscrp = dw_uc.Object.dscrp[uc_row]
  1209. uo_ware.sptid = dw_uc.Object.sptid[uc_row]
  1210. uo_ware.thflag = 0
  1211. Long i
  1212. FOR i = 1 TO dw_child.RowCount()
  1213. IF dw_child.Object.ow_wfjgmx_in_bef_mtrlid[i] > 0 THEN
  1214. IF uo_ware.acceptmx_bef(dw_child.Object.ow_wfjgmx_in_bef_mtrlwareid[i],&
  1215. dw_child.Object.ow_wfjgmx_in_bef_qty[i],0,&
  1216. dw_child.Object.ow_wfjgmx_in_bef_mxdscrp[i],&
  1217. dw_child.Object.printid[i],&
  1218. arg_msg,dw_child.Object.u_mtrldef_unit[i],dw_child.Object.ow_wfjgmx_in_bef_qty[i],1 ) = 0 THEN
  1219. MessageBox('Error!',arg_msg)
  1220. RETURN
  1221. END IF
  1222. END IF
  1223. NEXT
  1224. IF uo_ware.Save(TRUE,arg_msg) = 0 THEN
  1225. MessageBox('Error!',arg_msg)
  1226. RETURN
  1227. END IF
  1228. MessageBox(publ_operator,'保存操作成功!')
  1229. Long ll_row
  1230. ll_row = dw_pageretr.GetRow()
  1231. dw_pageretr.SelectRow(0,FALSE)
  1232. dw_pageretr.SelectRow(ll_row,TRUE)
  1233. wf_refresh_curuc(cur_scid,uo_ware.inwareid) //刷新uc
  1234. ELSE
  1235. IF uo_ware.newbegin(cur_scid,9,arg_msg) = 0 THEN
  1236. MessageBox('Error!',arg_msg)
  1237. RETURN
  1238. END IF
  1239. END IF
  1240. CALL SUPER::Clicked
  1241. //IF NOT dw_edit_mode THEN
  1242. // Int li_row, li_cur_row
  1243. // li_cur_row = dw_pageretr.GetRow()
  1244. // li_row = dw_pageretr.InsertRow (li_cur_row)
  1245. // dw_pageretr.ScrollToRow (li_row)
  1246. // dw_child.Reset()
  1247. // dw_uc.SetFocus()
  1248. //END IF
  1249. //
  1250. //dw_edit_mode = NOT dw_edit_mode
  1251. //wf_refresh_interface()
  1252. //
  1253. //read ini
  1254. IF dw_edit_mode THEN
  1255. PARENT.TriggerEvent("insert_childrow")
  1256. cur_editfocus = 1
  1257. ELSE
  1258. PARENT.TriggerEvent("retrieve_childdw")
  1259. cur_editfocus = 0
  1260. END IF
  1261. //
  1262. THIS.TriggerEvent('refresh_interface')
  1263. end event
  1264. type cb_edit from w_publ_1ton_share_detail`cb_edit within w_wfjg_pk
  1265. end type
  1266. event cb_edit::clicked;IF NOT f_power_ind(1424) THEN
  1267. MessageBox(publ_operator,'你没有使用权限!')
  1268. RETURN
  1269. END IF
  1270. String arg_msg = ''
  1271. Long uc_row
  1272. uc_row = dw_pageretr.GetRow()
  1273. IF uc_row <= 0 THEN
  1274. MessageBox('系统提示','请选定当前目标单据!')
  1275. RETURN
  1276. END IF
  1277. IF NOT dw_edit_mode THEN
  1278. IF uo_ware.updatebegin(dw_pageretr.Object.ow_wfjg_in_scid[uc_row],dw_pageretr.Object.inwareid[uc_row],5,arg_msg) = 0 THEN
  1279. MessageBox('Error!',arg_msg)
  1280. RETURN
  1281. END IF
  1282. wf_refresh_curuc(dw_pageretr.Object.ow_wfjg_in_scid[uc_row],dw_pageretr.Object.inwareid[uc_row])
  1283. PARENT.TriggerEvent("retrieve_childdw")
  1284. PARENT.TriggerEvent("insert_childrow_out")
  1285. parent.triggerevent('ue_allowedit')
  1286. END IF
  1287. CALL SUPER::Clicked
  1288. IF dw_edit_mode THEN
  1289. cur_editfocus = 2
  1290. ELSE
  1291. cur_editfocus = 0
  1292. END IF
  1293. end event
  1294. type cb_delet from w_publ_1ton_share_detail`cb_delet within w_wfjg_pk
  1295. integer width = 142
  1296. end type
  1297. event cb_delet::clicked;call super::clicked;IF NOT f_power_ind(1425) THEN
  1298. MessageBox(publ_operator,'你没有使用权限!')
  1299. RETURN
  1300. END IF
  1301. String arg_msg = ''
  1302. IF dw_edit_mode THEN RETURN
  1303. Long uc_row
  1304. uc_row = dw_pageretr.GetRow()
  1305. IF uc_row <= 0 THEN
  1306. MessageBox('系统提示','请选定当前目标单据!')
  1307. RETURN
  1308. END IF
  1309. IF MessageBox ("if","是否确定要删除当前单据?",question!,yesno! ) = 2 THEN RETURN
  1310. IF uo_ware.del(dw_pageretr.Object.ow_wfjg_in_scid[uc_row],dw_pageretr.Object.inwareid[uc_row],arg_msg,TRUE) = 0 THEN
  1311. MessageBox('error!',arg_msg)
  1312. ELSE
  1313. //日志
  1314. Long ls_id
  1315. String ls_code
  1316. ls_id = dw_pageretr.Object.inwareid[uc_row]
  1317. ls_code = dw_pageretr.Object.inwarecode[uc_row]
  1318. f_setsysoplog('外协商盘亏单','外协商盘亏单删除,id:'+String(ls_id)+',code:'+ls_code,arg_msg,TRUE)
  1319. //--
  1320. MessageBox(publ_operator,'删除单据'+String(dw_pageretr.Object.inwarecode[uc_row])+'成功!')
  1321. dw_pageretr.DeleteRow(uc_row)
  1322. dw_pageretr.TriggerEvent(RowFocusChanged!)
  1323. END IF
  1324. end event
  1325. type cb_addzy from w_publ_1ton_share_detail`cb_addzy within w_wfjg_pk
  1326. integer x = 1170
  1327. integer width = 288
  1328. end type
  1329. event cb_addzy::clicked;call super::clicked;m_Dfc_Control_PopupMenu dmPopupMenu
  1330. string menustr
  1331. menustr="Text=增加备注~tEvent=ue_addzy"
  1332. menustr = menustr + "|" + "Text=-"
  1333. menustr = menustr + "|" + "Text=批设定工艺~tEvent=ue_p_jgdscrp"
  1334. if len(trim(menustr))<>0 then
  1335. dmPopupMenu = Create m_Dfc_Control_PopupMenu
  1336. dmPopupMenu.mf_BuildMenu(This, menustr)
  1337. dmPopupMenu.mf_PopMenu()
  1338. Destroy dmPopupMenu
  1339. end if
  1340. end event
  1341. type cb_auditing from w_publ_1ton_share_detail`cb_auditing within w_wfjg_pk
  1342. integer x = 827
  1343. end type
  1344. event cb_auditing::clicked;call super::clicked; IF NOT f_power_ind(1426) THEN
  1345. MessageBox(publ_operator,'你没有使用权限!')
  1346. RETURN
  1347. END IF
  1348. IF dw_edit_mode THEN RETURN
  1349. String arg_msg = ''
  1350. IF NOT KeyDown(KeyControl!) THEN
  1351. Long pagerert_row
  1352. pagerert_row = dw_pageretr.GetRow()
  1353. IF pagerert_row <= 0 THEN
  1354. MessageBox('系统提示','请选定当前目标单据!')
  1355. RETURN
  1356. END IF
  1357. IF MessageBox ("if","是否确定要审核当前单据?",question!,yesno! ) = 2 THEN RETURN
  1358. IF uo_ware.getinfo(dw_pageretr.Object.ow_wfjg_in_scid[pagerert_row],dw_pageretr.Object.inwareid[pagerert_row],arg_msg) = 0 THEN
  1359. MessageBox('error!',arg_msg)
  1360. RETURN
  1361. END IF
  1362. IF uo_ware.auditing(TRUE,arg_msg) = 0 THEN
  1363. MessageBox('error!',arg_msg)
  1364. ELSE
  1365. MessageBox(publ_operator,'审核成功!')
  1366. wf_refresh_curuc(dw_pageretr.Object.ow_wfjg_in_scid[pagerert_row],dw_pageretr.Object.inwareid[pagerert_row])
  1367. END IF
  1368. ELSE
  1369. IF MessageBox ("if","是否确定要批审核列表中未审核的单据?",question!,yesno! ) = 2 THEN RETURN
  1370. Long ll_i,ll_billid
  1371. Int li_flag
  1372. Long ll_suc,ll_fail
  1373. dw_pageretr.AcceptText()
  1374. Open(w_sys_wait_jdt) //初始化进度条
  1375. w_sys_wait_jdt.Show()
  1376. w_sys_wait_jdt.wf_accepttol(dw_pageretr.RowCount())
  1377. FOR ll_i = 1 TO dw_pageretr.RowCount()
  1378. w_sys_wait_jdt.st_msg.Text = dw_pageretr.Object.inwarecode[ll_i] + " 正在审核..." //进度信息
  1379. li_flag = dw_pageretr.Object.flag[ll_i]
  1380. IF li_flag = 1 THEN CONTINUE
  1381. ll_billid = dw_pageretr.Object.inwareid[ll_i]
  1382. IF uo_ware.getinfo(cur_scid,ll_billid,arg_msg) = 0 THEN
  1383. ll_fail++
  1384. CONTINUE
  1385. END IF
  1386. IF uo_ware.auditing(TRUE,arg_msg) = 0 THEN
  1387. ll_fail++
  1388. CONTINUE
  1389. END IF
  1390. ll_suc++
  1391. w_sys_wait_jdt.wf_inc(ll_i) //进度
  1392. NEXT
  1393. Close(w_sys_wait_jdt)
  1394. MessageBox(publ_operator,'批审核成功!成功:'+String(ll_suc)+',失败:'+String(ll_fail))
  1395. PARENT.TriggerEvent('retrieve_pageretr')
  1396. END IF
  1397. end event
  1398. type cb_xm from w_publ_1ton_share_detail`cb_xm within w_wfjg_pk
  1399. integer x = 1458
  1400. end type
  1401. type cb_retrieve from w_publ_1ton_share_detail`cb_retrieve within w_wfjg_pk
  1402. end type
  1403. type cb_xls from w_publ_1ton_share_detail`cb_xls within w_wfjg_pk
  1404. integer x = 2094
  1405. end type
  1406. type cb_help from w_publ_1ton_share_detail`cb_help within w_wfjg_pk
  1407. integer x = 2395
  1408. end type
  1409. type cb_auditing_cancel from w_publ_1ton_share_detail`cb_auditing_cancel within w_wfjg_pk
  1410. integer x = 1019
  1411. end type
  1412. event cb_auditing_cancel::clicked;call super::clicked;IF NOT f_power_ind(1427) THEN
  1413. MessageBox(publ_operator,'你没有使用权限!')
  1414. RETURN
  1415. END IF
  1416. IF dw_edit_mode THEN RETURN
  1417. String arg_msg = '',ls_code,ls_opemp,ls_outpart
  1418. Long pagerert_row,ls_id
  1419. pagerert_row = dw_pageretr.GetRow()
  1420. IF pagerert_row <= 0 THEN
  1421. MessageBox('系统提示','请选定当前目标单据!')
  1422. RETURN
  1423. END IF
  1424. IF MessageBox ("IF","是否确定要"+THIS.Text+"当前单据吗?",Question!,YesNo! ) = 2 THEN RETURN
  1425. IF uo_ware.getinfo(dw_pageretr.Object.ow_wfjg_in_scid[pagerert_row],dw_pageretr.Object.inwareid [pagerert_row],arg_msg) = 0 THEN
  1426. MessageBox('Error!',arg_msg)
  1427. RETURN
  1428. END IF
  1429. IF uo_ware.c_auditing(TRUE,arg_msg) = 0 THEN
  1430. MessageBox('Error!',arg_msg)
  1431. ELSE
  1432. MessageBox(publ_operator,'撤审成功!')
  1433. wf_refresh_curuc(dw_pageretr.Object.ow_wfjg_in_scid[pagerert_row],dw_pageretr.Object.inwareid[pagerert_row])
  1434. END IF
  1435. end event
  1436. type p_msg from w_publ_1ton_share_detail`p_msg within w_wfjg_pk
  1437. end type
  1438. type p_help from w_publ_1ton_share_detail`p_help within w_wfjg_pk
  1439. end type
  1440. type p_encl from w_publ_1ton_share_detail`p_encl within w_wfjg_pk
  1441. end type
  1442. type p_other from w_publ_1ton_share_detail`p_other within w_wfjg_pk
  1443. end type
  1444. type gb_3 from w_publ_1ton_share_detail`gb_3 within w_wfjg_pk
  1445. end type
  1446. type ln_bar from w_publ_1ton_share_detail`ln_bar within w_wfjg_pk
  1447. end type
  1448. type ln_bar2 from w_publ_1ton_share_detail`ln_bar2 within w_wfjg_pk
  1449. end type
  1450. type r_bar from w_publ_1ton_share_detail`r_bar within w_wfjg_pk
  1451. end type
  1452. type ln_1 from w_publ_1ton_share_detail`ln_1 within w_wfjg_pk
  1453. end type
  1454. type ln_2 from w_publ_1ton_share_detail`ln_2 within w_wfjg_pk
  1455. end type
  1456. type ddlb_scid from uo_ddlb_scid within w_wfjg_pk
  1457. integer x = 887
  1458. integer y = 192
  1459. integer width = 549
  1460. integer height = 1120
  1461. integer taborder = 20
  1462. boolean bringtotop = true
  1463. end type
  1464. event constructor;call super::constructor;cur_scid=this.uo_scid
  1465. end event
  1466. event selectionchanged;call super::selectionchanged;cur_scid=this.uo_scid
  1467. parent.triggerevent("retrieve_pageretr")
  1468. end event
  1469. type st_3 from statictext within w_wfjg_pk
  1470. integer x = 1422
  1471. integer y = 204
  1472. integer width = 151
  1473. integer height = 48
  1474. integer textsize = -9
  1475. integer weight = 400
  1476. fontcharset fontcharset = gb2312charset!
  1477. fontpitch fontpitch = variable!
  1478. string facename = "宋体"
  1479. long textcolor = 33554432
  1480. long backcolor = 134217739
  1481. string text = "状态"
  1482. alignment alignment = right!
  1483. boolean focusrectangle = false
  1484. end type
  1485. type st_2 from statictext within w_wfjg_pk
  1486. integer x = 727
  1487. integer y = 204
  1488. integer width = 151
  1489. integer height = 48
  1490. integer textsize = -9
  1491. integer weight = 400
  1492. fontcharset fontcharset = gb2312charset!
  1493. fontpitch fontpitch = variable!
  1494. string facename = "宋体"
  1495. long textcolor = 33554432
  1496. long backcolor = 134217739
  1497. string text = "分部"
  1498. alignment alignment = right!
  1499. boolean focusrectangle = false
  1500. end type
  1501. type ddlb_status from dropdownlistbox within w_wfjg_pk
  1502. integer x = 1586
  1503. integer y = 192
  1504. integer width = 370
  1505. integer height = 556
  1506. integer taborder = 40
  1507. boolean bringtotop = true
  1508. integer textsize = -9
  1509. integer weight = 400
  1510. fontcharset fontcharset = gb2312charset!
  1511. fontpitch fontpitch = variable!
  1512. string facename = "宋体"
  1513. long textcolor = 33554432
  1514. string text = "[全部]"
  1515. boolean sorted = false
  1516. string item[] = {"[全部]","待仓库审","待财务审","审核完毕"}
  1517. borderstyle borderstyle = stylelowered!
  1518. end type
  1519. event selectionchanged;IF Index = 1 THEN
  1520. cur_flag = -1
  1521. cur_secflag = -1
  1522. ELSEIF Index = 2 THEN
  1523. cur_flag = 0
  1524. cur_secflag = 0
  1525. ELSEIF Index = 3 THEN
  1526. cur_flag = 1
  1527. cur_secflag = 0
  1528. ELSEIF Index = 4 THEN
  1529. cur_flag = 1
  1530. cur_secflag = 1
  1531. END IF
  1532. PARENT.TriggerEvent('retrieve_pageretr')
  1533. end event