w_warepdb_bill.srw 61 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152
  1. $PBExportHeader$w_warepdb_bill.srw
  2. forward
  3. global type w_warepdb_bill from w_publ_1ton_share_detail
  4. end type
  5. type ddlb_scid from uo_ddlb_scid within w_warepdb_bill
  6. end type
  7. type ddlb_status from dropdownlistbox within w_warepdb_bill
  8. end type
  9. type st_3 from statictext within w_warepdb_bill
  10. end type
  11. type st_2 from statictext within w_warepdb_bill
  12. end type
  13. type cb_pypk from uo_imflatbutton within w_warepdb_bill
  14. end type
  15. type cbx_packqty_cmpl from checkbox within w_warepdb_bill
  16. end type
  17. type cb_scanbill from commandbutton within w_warepdb_bill
  18. end type
  19. end forward
  20. global type w_warepdb_bill from w_publ_1ton_share_detail
  21. integer height = 2300
  22. string title = "仓库盘点单"
  23. boolean maxbox = true
  24. windowstate windowstate = maximized!
  25. event insert_childrow ( )
  26. event ue_fj_edit ( )
  27. event ue_fj_view ( )
  28. event ue_add_addqty ( )
  29. ddlb_scid ddlb_scid
  30. ddlb_status ddlb_status
  31. st_3 st_3
  32. st_2 st_2
  33. cb_pypk cb_pypk
  34. cbx_packqty_cmpl cbx_packqty_cmpl
  35. cb_scanbill cb_scanbill
  36. end type
  37. global w_warepdb_bill w_warepdb_bill
  38. type variables
  39. long cur_scid //分店ID
  40. long copy_storageid = 0
  41. int cur_flag=-1
  42. uo_warepdb_bill uo_ware
  43. string ol_cdw_str =''
  44. int ii_packqty_cmpl
  45. end variables
  46. forward prototypes
  47. public function integer wf_flagstatus_rf ()
  48. public subroutine wf_check_billfj ()
  49. 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)
  50. public function integer wf_refresh_curuc (long arg_scid, long arg_billid)
  51. public function integer wf_check (ref string arg_msg)
  52. public function integer wf_check_mtrlwareid (long arg_mtrlwareid, long arg_row)
  53. end prototypes
  54. event insert_childrow();long li_row
  55. li_row=dw_child.insertrow(0)
  56. dw_child.scrolltorow(li_row)
  57. dw_child.SetColumn ('u_mtrldef_mtrlcode')
  58. end event
  59. event ue_fj_edit();IF dw_edit_mode THEN
  60. MessageBox('提示','编辑状态下不可用',information!,ok!)
  61. RETURN
  62. END IF
  63. //IF NOT f_power_ind(1098) THEN
  64. // MessageBox(publ_operator,'你没有使用权限!')
  65. // RETURN
  66. //END IF
  67. s_edit_index_tran s_pic
  68. Long ll_ConnectionID
  69. String arg_msg
  70. Long ls_row
  71. ls_row = dw_uc.GetRow()
  72. IF ls_row <= 0 THEN
  73. RETURN
  74. END IF
  75. IF f_get_outerconnection(ll_ConnectionID,arg_msg) = 0 THEN
  76. MessageBox('提示','没有指定附件数据库连接'+arg_msg,information!,ok!)
  77. RETURN
  78. END IF
  79. s_pic.f_long = 303
  80. s_pic.f_string = dw_uc.Object.u_outware_outwarecode[ls_row]
  81. s_pic.g_long = dw_uc.Object.u_outware_outwareid[ls_row]
  82. s_pic.e_long = dw_uc.Object.u_outware_scid[ls_row]
  83. s_pic.sqltransaction = sys_filedb_sqlca
  84. OpenWithParm(w_fj_bill_mng,s_pic)
  85. wf_check_billfj()
  86. end event
  87. event ue_fj_view();IF dw_edit_mode THEN
  88. MessageBox('提示','编辑状态下不可用',information!,ok!)
  89. RETURN
  90. END IF
  91. s_edit_index_tran s_pic
  92. Long ll_ConnectionID
  93. String arg_msg
  94. Long ls_row
  95. ls_row = dw_uc.GetRow()
  96. IF ls_row <= 0 THEN
  97. RETURN
  98. END IF
  99. IF f_get_outerconnection(ll_ConnectionID,arg_msg) = 0 THEN
  100. MessageBox('提示','没有指定附件数据库连接'+arg_msg,information!,ok!)
  101. RETURN
  102. END IF
  103. s_pic.f_long = 303 //销售订单的mainID
  104. s_pic.f_string = dw_uc.Object.u_outware_outwarecode[ls_row]
  105. s_pic.g_long = dw_uc.Object.u_outware_outwareid[ls_row]
  106. s_pic.e_long = dw_uc.Object.u_outware_scid[ls_row]
  107. s_pic.sqltransaction = sys_filedb_sqlca
  108. OpenWithParm(w_fj_bill_view,s_pic)
  109. end event
  110. event ue_add_addqty();IF NOT dw_edit_mode THEN RETURN
  111. Long child_row
  112. Int if_addmxdscrp
  113. String ls_mxdscrp
  114. s_addqty_input s_input
  115. dw_child.AcceptText( )
  116. child_row = dw_child.GetRow()
  117. IF child_row <= 0 THEN RETURN
  118. IF dw_child.Object.u_warepdb_billmx_mtrlid[child_row] <= 0 THEN RETURN
  119. ls_mxdscrp = dw_child.Object.u_warepdb_billmx_mxdscrp[child_row]
  120. IF NOT IsValid(w_addqty_input) THEN
  121. OpenWithParm(w_addqty_input,ls_mxdscrp)
  122. s_input = Message.PowerObjectParm
  123. IF s_input.addqty = -1 THEN RETURN
  124. dw_child.Object.u_warepdb_billmx_factaddqty[child_row] = s_input.addqty
  125. IF s_input.addqtystr <> '' THEN
  126. dw_child.Object.u_warepdb_billmx_mxdscrp[child_row] = s_input.addqtystr
  127. END IF
  128. //
  129. // IF s_input.formula <> '' THEN
  130. // dw_child.Object.u_outwaremx_formula[child_row] = s_input.formula
  131. // END IF
  132. //
  133. IF s_input.flag = 1 THEN
  134. dw_child.Object.u_warepdb_billmx_factqty[child_row] = s_input.qty
  135. END IF
  136. END IF
  137. end event
  138. public function integer wf_flagstatus_rf ();//====================================================================
  139. // Function: wf_flagstatus_rf()
  140. //--------------------------------------------------------------------
  141. // Description:
  142. //--------------------------------------------------------------------
  143. // Arguments:(None)
  144. //--------------------------------------------------------------------
  145. // Returns: integer
  146. //--------------------------------------------------------------------
  147. // Author: yyx Date: 2003.12.26
  148. //--------------------------------------------------------------------
  149. // Modify History:
  150. //
  151. //====================================================================
  152. Long pagerert_row
  153. pagerert_row = dw_pageretr.GetRow()
  154. IF pagerert_row <= 0 THEN
  155. cb_auditing.Enabled = FALSE
  156. GOTO ext
  157. END IF
  158. IF dw_edit_mode THEN
  159. cb_auditing.Enabled = FALSE
  160. cb_auditing_cancel.Enabled = FALSE
  161. cb_pypk.Enabled = FALSE
  162. ELSE
  163. IF dw_pageretr.Object.flag[pagerert_row] = 0 THEN
  164. cb_auditing.Enabled = TRUE
  165. cb_auditing_cancel.Enabled = FALSE
  166. ELSEIF dw_pageretr.Object.flag[pagerert_row] = 1 THEN
  167. cb_auditing.Enabled = FALSE
  168. cb_auditing_cancel.Enabled = TRUE
  169. END IF
  170. IF dw_pageretr.Object.u_warepdb_bill_ifpypk[pagerert_row] = 0 THEN
  171. cb_pypk.Enabled = TRUE
  172. ELSE
  173. cb_pypk.Enabled = FALSE
  174. END IF
  175. END IF
  176. ext:
  177. RETURN 0
  178. end function
  179. public subroutine wf_check_billfj ();String arg_msg
  180. Long ll_ConnectionID
  181. Long cur_billtype
  182. long ll_relid,ll_relid_mx,ll_scid
  183. Long ls_filecount = 0
  184. Int rslt = 1
  185. uo_fj_mng_billtype ls_uo_fjbt
  186. ls_uo_fjbt = CREATE uo_fj_mng_billtype
  187. Long row,uc_relid
  188. row = dw_pageretr.GetRow()
  189. IF row > 0 THEN
  190. ll_relid = dw_pageretr.Object.u_warepdb_bill_billid[row]
  191. ll_scid = dw_pageretr.Object.u_warepdb_bill_scid[row]
  192. ll_relid_mx = 0
  193. ELSE
  194. rslt = 0
  195. GOTO ext
  196. END IF
  197. IF f_get_outerconnection(ll_ConnectionID,arg_msg) = 0 THEN
  198. rslt = 0
  199. GOTO ext
  200. END IF
  201. cur_billtype = 0 //还没添加盘点单ID
  202. ls_uo_fjbt.uf_check_billfj( cur_billtype, ll_relid,ll_relid_mx,ll_scid, sys_fileDB_sqlca, arg_msg, ls_filecount)
  203. IF ls_filecount > 0 THEN
  204. rslt = 1
  205. GOTO ext
  206. ELSE
  207. rslt = 0
  208. GOTO ext
  209. END IF
  210. ext:
  211. wf_encl(rslt)
  212. DESTROY ls_uo_fjbt
  213. end subroutine
  214. 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);////==============================================================================
  215. //// 函数: w_publ_1ton_share_detail::wf_xls_retrievedata()
  216. ////------------------------------------------------------------------------------
  217. //// 描述: 此函数需要 重载,复制祖先范例代码,然后修改retrieve参数部分两处即可
  218. ////------------------------------------------------------------------------------
  219. //
  220. //Long LS_ROW,ll_id,i,ll_scid
  221. //LS_ROW = dw_uc.GetRow()
  222. //IF LS_ROW <= 0 THEN
  223. // arg_msg = '没有目标单据!'
  224. // RETURN 0
  225. //END IF
  226. //
  227. ////修改点:获取 指定retriev参数
  228. //ll_id = dw_uc.Object.#1[LS_ROW]
  229. //ll_scid = dw_uc.Object.u_warepdb_bill_scid[LS_ROW]
  230. //
  231. ////查询所选模版是否含有图片信息
  232. //Long ll_ifpic
  233. //Long ll_classid
  234. //SELECT ifpic
  235. // INTO :ll_ifpic
  236. // FROM U_XLS_Templates
  237. // Where id = :ll_xls_Templatesid;
  238. //IF sqlca.SQLCode <> 0 THEN
  239. // ll_ifpic = 0
  240. //END IF
  241. //
  242. //Long ll_i,ll_j
  243. //Long ll_mtrlid
  244. //Long ll_fileid
  245. //
  246. //Blob ls_filedata
  247. //SetNull(ls_filedata)
  248. //String Pathname,ls_filename,ls_filetype
  249. //String errmsg
  250. //uo_fj_mng_billtype ls_uo_fjbt
  251. //ls_uo_fjbt = CREATE uo_fj_mng_billtype
  252. //
  253. //s_xls_pic_list s_pic //结构数组-用于保存图片路径
  254. //
  255. //IF ll_ifpic = 1 THEN //如果含有图片信息,则查询本类型单据需要带出哪类附件
  256. //
  257. // SELECT classid
  258. // INTO :ll_classid
  259. // FROM u_billpic_fileclass
  260. // Where (billtype = 303);
  261. // IF sqlca.SQLCode <> 0 THEN
  262. // ll_classid = 0
  263. // END IF
  264. //
  265. // IF ll_classid > 0 THEN //如果已经指定好附件类型,则循环明细表查询每个明细的图片信息.
  266. // FOR ll_i = 1 TO dw_child.RowCount()
  267. // ll_mtrlid = dw_child.Object.mtrlid[ll_i]
  268. // //取该附件类型中的第一个附件.
  269. // SELECT top 1 fileid,DisplayName,FileType INTO :ll_fileid,:ls_filename,:ls_filetype
  270. // FROM u_file
  271. // WHERE relid = :ll_mtrlid
  272. // AND classid = :ll_classid
  273. // AND (filetype = 'bmp' OR filetype = 'rle' OR filetype = 'wmf'
  274. // OR filetype = 'tif' OR filetype = 'jpg' OR filetype = 'gif' OR filetype = 'jpeg')
  275. // USING sys_fileDB_sqlca;
  276. // IF sys_fileDB_sqlca.SQLCode <> 0 THEN
  277. // ll_fileid = 0
  278. // END IF
  279. // IF ll_fileid > 0 THEN
  280. // Pathname = sys_cur_path+ins_fjtemppath+'\'+String(Today(),'yymmdd')+String(Now(),'hhmmss')+'_'+ls_filename+'.'+ls_filetype
  281. // IF Trim(Pathname) <> '' THEN
  282. // IF ls_uo_fjbt.uf_getfjbolb_fromdb( ll_fileid, ls_filedata, sys_fileDB_sqlca, arg_msg) = 0 THEN
  283. // RETURN 0
  284. // END IF
  285. //
  286. // IF f_saveblobtofile(ls_filedata,Pathname,errmsg) = 0 THEN
  287. // RETURN 0
  288. // ELSE
  289. //
  290. // s_pic.path[ll_i] = Pathname
  291. // //记录临时文件位置,本窗口退出后删除
  292. // wf_addlog_tempfilepathname(Pathname)
  293. //
  294. // END IF
  295. // ELSE
  296. // s_pic.path[ll_i] = ''
  297. // END IF
  298. // ELSE
  299. // s_pic.path[ll_i] = ''
  300. // END IF
  301. // NEXT
  302. // END IF
  303. // //
  304. //END IF
  305. //
  306. //////可选设置///
  307. //arg_obj_st.uo_const.create_new_pwd( ) //创建随机密码
  308. //if sys_option_xls_ifuse_passwd = 1 then arg_obj_st.uo_const.pwd = trim(sys_option_xls_user_passwd) //默认加密密码 默认为随即密码
  309. //
  310. //
  311. //boolean xls_locked
  312. //xls_locked = not (sys_option_xls_lock = 1)
  313. //
  314. ///// Excel 的可选设置
  315. //if arg_obj_st.of_setoption(arg_ationid, xls_locked,true,arg_msg) <> 1 then
  316. // return 0
  317. //end if
  318. //
  319. //
  320. //for i = 1 to arg_str_billlist.count
  321. // ////可选操作///
  322. // arg_str_billlist.bill[i].ds_data = create datastore //
  323. // arg_str_billlist.bill[i].ds_data.dataobject = arg_str_billlist.bill[i].datawindow //
  324. // arg_str_billlist.bill[i].ds_data.settransobject(sqlca)
  325. //
  326. // //修改点:注意retrieve 参数与上文对应
  327. // arg_str_billlist.bill[i].ds_data.retrieve(ll_scid,ll_id)
  328. //
  329. //next
  330. //
  331. return 1
  332. end function
  333. public function integer wf_refresh_curuc (long arg_scid, long arg_billid);//wf_refresh_curuc
  334. IF arg_billid <= 0 OR IsNull(arg_billid) THEN RETURN 0
  335. Long uc_row
  336. uc_row = dw_pageretr.GetRow()
  337. IF uc_row <= 0 THEN RETURN 0
  338. Long billid
  339. Long StorageID
  340. DateTime billdate
  341. String Assign_Emp
  342. String part
  343. String dscrp
  344. String billcode
  345. DateTime opdate
  346. String opemp
  347. DateTime Permit_date
  348. String Permit_Emp
  349. Long flag
  350. String storagename
  351. Long scid
  352. String Modemp
  353. DateTime moddate
  354. long ifpypk
  355. SELECT u_warepdb_bill.billid,
  356. u_warepdb_bill.StorageID,
  357. u_warepdb_bill.billdate,
  358. u_warepdb_bill.Assign_Emp,
  359. u_warepdb_bill.part,
  360. u_warepdb_bill.dscrp,
  361. u_warepdb_bill.billcode,
  362. u_warepdb_bill.opdate,
  363. u_warepdb_bill.opemp,
  364. u_warepdb_bill.Permit_date,
  365. u_warepdb_bill.Permit_Emp,
  366. u_warepdb_bill.flag,
  367. u_storage.storagename,
  368. u_warepdb_bill.scid,
  369. u_warepdb_bill.Modemp,
  370. u_warepdb_bill.moddate,
  371. u_warepdb_bill.ifpypk
  372. INTO :billid ,
  373. :StorageID ,
  374. :billdate ,
  375. :Assign_Emp ,
  376. :part ,
  377. :dscrp ,
  378. :billcode ,
  379. :opdate ,
  380. :opemp ,
  381. :Permit_date,
  382. :Permit_Emp,
  383. :flag ,
  384. :storagename ,
  385. :scid ,
  386. :Modemp ,
  387. :moddate,
  388. :ifpypk
  389. FROM u_warepdb_bill,
  390. u_storage
  391. WHERE ( u_warepdb_bill.StorageID = u_storage.storageid ) AND
  392. (u_warepdb_bill.scid = :arg_scid ) AND
  393. (u_warepdb_bill.billid = :arg_billid) ;
  394. IF sqlca.SQLCode <> 0 THEN
  395. MessageBox('错误',"查询操作失败(错误单据唯一码)",stopsign!,ok!)
  396. RETURN 0
  397. END IF
  398. dw_pageretr.Object.u_warepdb_bill_billid[uc_row] = billid
  399. dw_pageretr.Object.u_warepdb_bill_StorageID[uc_row] = StorageID
  400. dw_pageretr.Object.u_warepdb_bill_billdate[uc_row] = billdate
  401. dw_pageretr.Object.u_warepdb_bill_Assign_Emp[uc_row] = Assign_Emp
  402. dw_pageretr.Object.u_warepdb_bill_part[uc_row] = part
  403. dw_pageretr.Object.u_warepdb_bill_dscrp[uc_row] = dscrp
  404. dw_pageretr.Object.u_warepdb_bill_billcode[uc_row] = billcode
  405. dw_pageretr.Object.u_warepdb_bill_opdate[uc_row] = opdate
  406. dw_pageretr.Object.u_warepdb_bill_opemp[uc_row] = opemp
  407. dw_pageretr.Object.u_warepdb_bill_Permit_date[uc_row] = Permit_date
  408. dw_pageretr.Object.u_warepdb_bill_Permit_Emp[uc_row] = Permit_Emp
  409. dw_pageretr.Object.flag[uc_row] = flag
  410. dw_pageretr.Object.u_storage_storagename[uc_row] = storagename
  411. dw_pageretr.Object.u_warepdb_bill_scid[uc_row] = scid
  412. dw_pageretr.Object.u_warepdb_bill_Modemp[uc_row] = Modemp
  413. dw_pageretr.Object.u_warepdb_bill_moddate[uc_row] = moddate
  414. dw_pageretr.Object.u_warepdb_bill_ifpypk[uc_row] = ifpypk
  415. dw_uc.Reset()
  416. dw_pageretr.RowsCopy(dw_pageretr.GetRow(),dw_pageretr.GetRow(), Primary!, dw_uc, 1, Primary!)
  417. dw_uc.ResetUpdate()
  418. dw_uc.SetRedraw(TRUE)
  419. wf_flagstatus_rf()
  420. RETURN 1
  421. end function
  422. public function integer wf_check (ref string arg_msg);Int rslt = 1
  423. DateTime ldt_pdbdate
  424. Long cnt
  425. Long cur_storageid
  426. String ins_pdbdate
  427. IF dw_uc.GetRow() = 0 THEN GOTO ext
  428. dw_uc.AcceptText()
  429. ldt_pdbdate = DateTime(Date(dw_uc.Object.u_warepdb_bill_billdate[dw_uc.GetRow()]),Time('23:59:59'))
  430. cur_storageid = dw_uc.Object.storageid[dw_uc.GetRow()]
  431. ins_pdbdate = String(Date(ldt_pdbdate),'yyyymmdd')
  432. IF cur_storageid <= 0 THEN
  433. arg_msg = "请选择仓库"
  434. rslt = 0
  435. GOTO ext
  436. END IF
  437. IF sys_option_warepdb_bill_multi = 0 THEN
  438. cnt = 0
  439. SELECT count(*)
  440. INTO :cnt
  441. FROM u_warepdb_bill
  442. Where storageid = :cur_storageid And billdate = :ldt_pdbdate And flag = 1 Using sqlca ;
  443. IF sqlca.SQLCode < 0 THEN
  444. arg_msg = '盘点单查询操作失败,在盘点日:'+String(ldt_pdbdate,"yyyy-mm-dd")+',仓库:'+String(cur_storageid)+'的数据资料!'
  445. rslt = 0
  446. GOTO ext
  447. ELSE
  448. IF cnt > 0 THEN
  449. arg_msg = '盘点单,已存在盘点日:'+String(ldt_pdbdate,"yyyy-mm-dd")+',仓库:'+String(cur_storageid)+'的盘点数据,且已审核!'
  450. rslt = 0
  451. GOTO ext
  452. END IF
  453. END IF
  454. END IF
  455. cnt = 0
  456. SELECT count(*)
  457. INTO :cnt
  458. FROM u_warepdb
  459. Where u_warepdb.storageid = :cur_storageid And u_warepdb.pdbdate = :ins_pdbdate Using sqlca;
  460. IF sqlca.SQLCode < 0 THEN
  461. arg_msg = '盘点表查询操作失败,在盘点日:'+String(ins_pdbdate)+',仓库:'+String(cur_storageid)+'的数据资料!'
  462. rslt = 0
  463. GOTO ext
  464. ELSE
  465. IF cnt > 0 THEN
  466. arg_msg = '盘点表,已存在盘点日:'+String(ins_pdbdate)+',仓库:'+String(cur_storageid)+'的盘点数据!'
  467. rslt = 0
  468. GOTO ext
  469. END IF
  470. END IF
  471. cnt = 0
  472. SELECT count(*) INTO :cnt
  473. FROM u_inware
  474. WHERE storageid = :cur_storageid
  475. AND indate > :ldt_pdbdate
  476. And flag = 1;
  477. IF sqlca.SQLCode <> 0 THEN
  478. arg_msg = "查询盘点发生时间"+String(ldt_pdbdate,'yyyy-mm-dd')+"后是否有进仓单审核操作失败"
  479. rslt = 0
  480. GOTO ext
  481. END IF
  482. IF cnt > 0 THEN
  483. arg_msg = "盘点发生时间"+String(ldt_pdbdate,'yyyy-mm-dd')+"后有进仓单已审核"
  484. rslt = 0
  485. GOTO ext
  486. END IF
  487. cnt = 0
  488. SELECT count(*) INTO :cnt
  489. FROM u_outware
  490. WHERE storageid = :cur_storageid
  491. AND outdate > :ldt_pdbdate
  492. And flag = 1;
  493. IF sqlca.SQLCode <> 0 THEN
  494. arg_msg = "查询盘点发生时间"+String(ldt_pdbdate,'yyyy-mm-dd')+"后是否有出仓单审核操作失败"
  495. rslt = 0
  496. GOTO ext
  497. END IF
  498. IF cnt > 0 THEN
  499. arg_msg = "盘点发生时间"+String(ldt_pdbdate,'yyyy-mm-dd')+"后有出仓单已审核"
  500. rslt = 0
  501. GOTO ext
  502. END IF
  503. ext:
  504. RETURN rslt
  505. end function
  506. public function integer wf_check_mtrlwareid (long arg_mtrlwareid, long arg_row);Long rslt = 1
  507. dw_child.AcceptText()
  508. Long i
  509. FOR i = 1 TO dw_child.RowCount()
  510. IF i = arg_row THEN
  511. CONTINUE
  512. ELSEIF dw_child.Object.u_warepdb_billmx_mtrlwareid[i] = arg_mtrlwareid THEN
  513. rslt = 0
  514. GOTO ext
  515. END IF
  516. NEXT
  517. ext:
  518. RETURN rslt
  519. end function
  520. on w_warepdb_bill.create
  521. int iCurrent
  522. call super::create
  523. this.ddlb_scid=create ddlb_scid
  524. this.ddlb_status=create ddlb_status
  525. this.st_3=create st_3
  526. this.st_2=create st_2
  527. this.cb_pypk=create cb_pypk
  528. this.cbx_packqty_cmpl=create cbx_packqty_cmpl
  529. this.cb_scanbill=create cb_scanbill
  530. iCurrent=UpperBound(this.Control)
  531. this.Control[iCurrent+1]=this.ddlb_scid
  532. this.Control[iCurrent+2]=this.ddlb_status
  533. this.Control[iCurrent+3]=this.st_3
  534. this.Control[iCurrent+4]=this.st_2
  535. this.Control[iCurrent+5]=this.cb_pypk
  536. this.Control[iCurrent+6]=this.cbx_packqty_cmpl
  537. this.Control[iCurrent+7]=this.cb_scanbill
  538. end on
  539. on w_warepdb_bill.destroy
  540. call super::destroy
  541. destroy(this.ddlb_scid)
  542. destroy(this.ddlb_status)
  543. destroy(this.st_3)
  544. destroy(this.st_2)
  545. destroy(this.cb_pypk)
  546. destroy(this.cbx_packqty_cmpl)
  547. destroy(this.cb_scanbill)
  548. end on
  549. event close;call super::close;destroy uo_ware
  550. wf_del_tempfilepathname()
  551. end event
  552. event open;this.triggerevent('ue_before_open')
  553. wf_movetocenter()
  554. ds_copy_bill = CREATE datastore
  555. ds_copy_bill.DataObject = dw_child.dataobject
  556. ds_copy_bill.SetTransObject(sqlca)
  557. OLD_TITLE=THIS.TITLE
  558. s_tran=Message.PowerObjectParm
  559. IF not ISNULL(s_tran) then
  560. retrieve_all=s_tran.if_retrieve_all
  561. mode=s_tran.work_mode
  562. arg_pkid=s_tran.arg_pkid
  563. arg_string_code=s_tran.arg_string_code
  564. if_sharedata=s_tran.if_sharedata //是否应用sharedata,当retrieve_all=true是生效
  565. ds_share=s_tran.ds_share
  566. end if
  567. dw_pageretr.RBUTTON_FILTER_USE=true //右键查询功能开关
  568. dw_pageretr.titleclick_sort_use=true //单击标题排序功能开关
  569. dw_pageretr.SetTransObject (sqlca)
  570. pkcolumndbtname=wf_get_pkcolumndbtname(dw_pageretr) //取第一列为关键字
  571. ori_oldselect=dw_pageretr.Describe("DataWindow.Table.Select")
  572. //====================================================================
  573. // Script - w_outware_other inherited from w_publ_1ton_share_detail for open
  574. // Reason:
  575. //--------------------------------------------------------------------
  576. // Modified By: yyx Date: 2003.12.01
  577. //--------------------------------------------------------------------
  578. ori_oldselect=f_modify_selectstr(ori_oldselect)//只显示所管的仓库单据
  579. //====================================================================
  580. ls_newselect=ori_oldselect
  581. ds_curquery=CREATE DATASTORE
  582. ds_curquery.DATAOBJECT='d_extr_find'
  583. ds_curquery.SetTransObject (sqlca)
  584. wf_editindex_lockf()
  585. sle_usual_query.text=trim(arg_string_code)
  586. if NOT retrieve_all then
  587. THIS.TRIGGEREVENT("ue_usual_query_RETR") //修改ls_newselect,retrieve
  588. else
  589. if if_sharedata then
  590. ds_share.sharedata(dw_pageretr)
  591. else
  592. wf_retrieveuc(dw_pageretr,ls_newselect,1)
  593. this.TRIGGEREVENT('RETRIEVE_pageretr')
  594. end if
  595. end if
  596. IF retrieve_all THEN
  597. THIS.TRIGGEREVENT("ue_usual_query_filt")
  598. END IF
  599. uc_column_int=6 //uc dw前7列可以编辑
  600. child_column_int=7 //子dw前8列可以编辑
  601. uo_ware=create uo_warepdb_bill
  602. uo_ware.commit_transaction=sqlca
  603. s_hide_col s_col
  604. s_col.col_1 = 'u_warepdb_billmx_wareamt'
  605. s_col.col_2 = 'u_warepdb_billmx_cost'
  606. f_hide_col(1473,dw_child,s_col)
  607. s_hide_col s_col_mtrlsectype
  608. s_col_mtrlsectype.col_1 = 'u_mtrldef_mtrlsectype'
  609. f_hide_col(1308,dw_child,s_col_mtrlsectype)
  610. s_hide_col s_col_zxmtrlmode
  611. s_col_zxmtrlmode.col_1 = 'u_mtrldef_zxmtrlmode'
  612. f_hide_col(1309,dw_child,s_col_zxmtrlmode)
  613. end event
  614. event refresh_interface;call super::refresh_interface;wf_flagstatus_rf()
  615. ddlb_status.enabled=not dw_edit_mode
  616. if dw_edit_mode then
  617. ddlb_scid.enabled=false
  618. else
  619. if sys_scid > 0 then
  620. ddlb_scid.enabled=false
  621. else
  622. ddlb_scid.enabled=true
  623. end if
  624. end if
  625. end event
  626. event retrieve_childdw;call super::retrieve_childdw;Long row,uc_relid,ll_scid
  627. row = dw_pageretr.GetRow()
  628. IF row > 0 THEN
  629. ll_scid = dw_pageretr.Object.u_warepdb_bill_scid[row]
  630. uc_relid = dw_pageretr.Object.u_warepdb_bill_billid[row]
  631. dw_child.SetRedraw (FALSE)
  632. dw_child.Retrieve(ll_scid,uc_relid)
  633. dw_child.SetRedraw (TRUE)
  634. ELSE
  635. dw_child.Reset()
  636. END IF
  637. end event
  638. event retrieve_pageretr;boolean cb_firstpage_enabled,cb_nextpage_enabled,cb_retrieveall_enabled
  639. boolean cb_priorpage_enabled,cb_func_enabled,cb_retrieve_enabled
  640. cb_nextpage_enabled=cb_nextpage.enabled
  641. cb_retrieveall_enabled=cb_retrieveall.enabled
  642. cb_func_enabled=cb_func.enabled
  643. cb_nextpage.enabled=false
  644. cb_retrieveall.enabled=false
  645. cb_func.enabled=false
  646. //只显未自已管的仓库
  647. datawindowchild childdw
  648. string new_sqlstr,modify_str
  649. dw_uc.SetTransObject (sqlca)
  650. dw_uc.getchild("storageid",childdw)
  651. childdw.SetTransObject (sqlca)
  652. new_sqlstr=childdw.Describe("DataWindow.Table.Select")
  653. if len(ol_cdw_str) = 0 then ol_cdw_str = new_sqlstr
  654. new_sqlstr=f_modify_selectstr(ol_cdw_str)
  655. modify_str="DataWindow.Table.Select='" + new_sqlstr +"'"
  656. childdw.modify ( modify_str )
  657. if childdw.retrieve(cur_scid) = 0 then
  658. childdw.InsertRow(0)
  659. END IF
  660. //childdw.retrieve()
  661. dw_uc.Retrieve() //dw_uc的dw改左select top 0 并肯不带参数
  662. dw_pageretr.Retrieve(cur_scid,cur_flag)
  663. IF dw_pageretr.RowCount() > 0 THEN
  664. dw_pageretr.SetRow(1)
  665. dw_pageretr.triggerevent(rowfocuschanged!)
  666. end if
  667. this.triggerevent('retrieve_childdw')
  668. cb_nextpage.enabled=cb_nextpage_enabled
  669. cb_retrieveall.enabled=cb_retrieveall_enabled
  670. cb_func.enabled=cb_func_enabled
  671. end event
  672. event ue_usual_query_filt;call super::ue_usual_query_filt;string obj_expr=''
  673. if trim(sle_usual_query.text)<>'' then
  674. IF POS(trim(sle_usual_query.text),'%')=0 THEN
  675. obj_expr=obj_expr+'( u_warepdb_bill_billcode LIKE "%'+trim(sle_usual_query.text)+'%" )'
  676. ELSE
  677. obj_expr=obj_expr+'( u_warepdb_bill_billcode LIKE "'+trim(sle_usual_query.text)+'" )'
  678. END IF
  679. end if
  680. dw_pageretr.setfilter(obj_expr)
  681. dw_pageretr.SetRedraw(False)
  682. dw_pageretr.filter()
  683. if dw_pageretr.rowcount()>=1 then
  684. dw_pageretr.selectrow(0,false)
  685. dw_pageretr.selectrow(1,true)
  686. dw_pageretr.SetRow(1)
  687. dw_pageretr.triggerevent(rowfocuschanged!)
  688. end if
  689. dw_pageretr.SetRedraw(TRUE)
  690. end event
  691. event ue_usual_query_retr;call super::ue_usual_query_retr;string ls_querystrpart=''
  692. ls_newselect=lower(ori_oldselect)
  693. if trim(sle_usual_query.text)<>'' then
  694. if pos(trim(sle_usual_query.text),'%')=0 then
  695. ls_querystrpart="(u_warepdb_bill.billcode like '%"+trim(sle_usual_query.text)+"%')"
  696. else
  697. ls_querystrpart="(u_warepdb_bill.billcode like '"+trim(sle_usual_query.text)+"')"
  698. end if
  699. if Pos(ls_newselect," where ") <> 0 then
  700. ls_newselect=ls_newselect+" AND ("+ls_querystrpart+')'
  701. else
  702. ls_newselect=ls_newselect+" where ("+ls_querystrpart+')'
  703. end if
  704. end if
  705. wf_retrieveuc(dw_pageretr,ls_newselect,1)
  706. this.triggerevent('retrieve_pageretr')
  707. end event
  708. event ue_f8;call super::ue_f8;//用于选择明细内容,被F8[默认]\dw_child.doubleclicked调用
  709. IF NOT dw_edit_mode THEN RETURN
  710. Long child_row,ins_storageid = 0
  711. String ls_msg
  712. dw_uc.AcceptText()
  713. ins_storageid = dw_uc.Object.storageid[dw_uc.GetRow()]
  714. IF ins_storageid = 0 OR IsNull(ins_storageid) THEN
  715. MessageBox('提示','请先选择仓库',information!,ok!)
  716. RETURN
  717. END IF
  718. IF wf_check(ls_msg) = 0 THEN
  719. MessageBox('错误',ls_msg,stopsign!,ok!)
  720. RETURN
  721. END IF
  722. child_row = dw_child.GetRow()
  723. IF NOT IsValid(w_mtrlware_storageid_ch) THEN
  724. s_edit_index_tran s_tranf8 //传递参数使用
  725. s_tranf8.if_retrieve_all = FALSE //是否一次RETRIEVE所有行
  726. s_tranf8.arg_pkid = 0 //目标定位PKID (备用)
  727. s_tranf8.arg_string_code = '' //查询列(物料编码)部分内容,用于初步筛选
  728. s_tranf8.b_long = - 1 //选择原料或产品
  729. s_tranf8.d_long = ins_storageid
  730. s_tranf8.c_long = -1
  731. Long chc = 1,ls_j
  732. dw_child.AcceptText()
  733. IF dw_child.GetRow() > 0 THEN s_tranf8.arg_string_code = Trim(dw_child.Object.u_mtrldef_mtrlcode[dw_child.GetRow()])
  734. OpenWithParm(w_mtrlware_storageid_ch,s_tranf8) //调用
  735. s_mtrlware_noalloc_array S_INSCUST
  736. S_INSCUST = Message.PowerObjectParm //接受返回结构
  737. ls_msg = ''
  738. FOR ls_j = 1 TO UpperBound(S_INSCUST.mtrlwareid)
  739. IF S_INSCUST.mtrlwareid[ls_j] > 0 THEN
  740. IF wf_check_mtrlwareid(S_INSCUST.mtrlwareid[ls_j],child_row) = 0 THEN
  741. ls_msg = S_INSCUST.u_mtrldef_mtrlcode[ls_j] + '的库存信息已在明细内容里,~n'
  742. CONTINUE
  743. END IF
  744. IF dw_child.GetRow() > 0 THEN
  745. IF dw_child.Object.u_warepdb_billmx_mtrlid[child_row] <> 0 THEN
  746. child_row = dw_child.InsertRow (0)
  747. ELSE
  748. child_row = dw_child.GetRow()
  749. END IF
  750. ELSE
  751. child_row = dw_child.InsertRow (0)
  752. END IF
  753. dw_child.Object.u_mtrldef_mtrlcode[child_row] = S_INSCUST.u_mtrldef_mtrlcode[ls_j]
  754. dw_child.Object.u_warepdb_billmx_factqty[child_row] = S_INSCUST.noallocqty[ls_j]
  755. dw_child.Object.u_warepdb_billmx_mtrlwareid[child_row] = S_INSCUST.mtrlwareid[ls_j]
  756. dw_child.Object.u_warepdb_billmx_status[child_row] = S_INSCUST.status[ls_j]
  757. dw_child.Object.u_warepdb_billmx_plancode[child_row] = S_INSCUST.plancode[ls_j]
  758. dw_child.Object.u_warepdb_billmx_woodcode[child_row] = S_INSCUST.woodcode[ls_j]
  759. dw_child.Object.u_warepdb_billmx_pcode[child_row] = S_INSCUST.pcode[ls_j]
  760. dw_child.Object.u_warepdb_billmx_mtrlid[child_row] = S_INSCUST.mtrlid[ls_j]
  761. dw_child.Object.u_warepdb_billmx_qty[child_row] = S_INSCUST.noallocqty[ls_j]
  762. dw_child.Object.u_mtrldef_unit[child_row] = S_INSCUST.u_mtrldef_unit[ls_j]
  763. dw_child.Object.u_mtrldef_mtrlmode[child_row] = S_INSCUST.u_mtrldef_mtrlmode[ls_j]
  764. dw_child.Object.u_mtrldef_mtrlname[child_row] = S_INSCUST.u_mtrldef_mtrlname[ls_j]
  765. dw_child.Object.u_mtrldef_mtrlsectype[child_row] = S_INSCUST.u_mtrldef_mtrlsectype[ls_j]
  766. dw_child.Object.u_mtrldef_zxmtrlmode[child_row] = S_INSCUST.u_mtrldef_zxmtrlmode[ls_j]
  767. dw_child.Object.u_warepdb_billmx_Dxflag[child_row] = S_INSCUST.Dxflag[ls_j]
  768. dw_child.Object.u_warepdb_billmx_factaddqty[child_row] = S_INSCUST.noallocaddqty[ls_j]
  769. dw_child.Object.u_warepdb_billmx_addqty[child_row] = S_INSCUST.noallocaddqty[ls_j]
  770. dw_child.Object.sptname[child_row] = S_INSCUST.sptname[ls_j]
  771. dw_child.Object.sptcode[child_row] = S_INSCUST.sptcode[ls_j]
  772. dw_child.Object.u_warepdb_billmx_Sptid[child_row] = S_INSCUST.sptid[ls_j]
  773. dw_child.Object.u_warepdb_billmx_wareamt[child_row] = S_INSCUST.wareamt[ls_j]
  774. dw_child.Object.u_warepdb_billmx_cost[child_row] = S_INSCUST.cost[ls_j]
  775. dw_child.Object.u_mtrldef_barcode[child_row] = S_INSCUST.barcode[ls_j]
  776. dw_child.Object.u_mtrldef_mtrltype[child_row] = S_INSCUST.u_mtrldef_mtrltype[ls_j]
  777. dw_child.Object.u_mtrldef_handtype[child_row] = S_INSCUST.u_mtrldef_handtype[ls_j]
  778. dw_child.Object.u_mtrldef_barcode[child_row] = S_INSCUST.barcode[ls_j]
  779. dw_child.Object.u_mtrldef_mtrlengname[child_row] = S_INSCUST.u_mtrldef_mtrlengname[ls_j]
  780. dw_child.Object.u_mtrldef_mtrlsectype[child_row] = S_INSCUST.u_mtrldef_mtrlsectype[ls_j]
  781. dw_child.SetColumn('u_warepdb_billmx_factqty')
  782. END IF
  783. NEXT
  784. END IF
  785. IF ls_msg <> '' THEN
  786. MessageBox('提示',ls_msg + '不能重复录入!',information!,ok!)
  787. return
  788. END IF
  789. end event
  790. event ue_viewprint;call super::ue_viewprint;IF NOT f_power_ind(1012) THEN
  791. MessageBox('提示','你没有使用权限!',information!,ok!)
  792. RETURN
  793. END IF
  794. Long LS_ROW
  795. LS_ROW = dw_pageretr.GetRow()
  796. IF LS_ROW <= 0 THEN
  797. MessageBox('提示','没有打印目标单据!',information!,ok!)
  798. RETURN
  799. END IF
  800. S_print_MSG LS_PRMSG
  801. IF ls_newname <> '' THEN
  802. IF li_auditprint = 1 THEN
  803. IF dw_pageretr.Object.flag[dw_pageretr.GetRow()] = 0 THEN
  804. MessageBox('提示','目标单据还未审核,不能打印!',information!,ok!)
  805. RETURN
  806. END IF
  807. END IF
  808. LS_PRMSG.obj_dwNAME = ls_newname
  809. ELSE
  810. LS_PRMSG.obj_dwNAME = 'dw_rp_warepdb_bill_edit'
  811. END IF
  812. LS_PRMSG.TAG_TEXT = '仓库盘点单'
  813. LS_PRMSG.FILTER_STRING = ''
  814. LS_PRMSG.retr_pram_falg = 15
  815. LS_PRMSG.PAGECH_FLAG = 0
  816. LS_PRMSG.retr_scid = cur_scid
  817. LS_PRMSG.retr_pramnmb = dw_pageretr.Object.u_warepdb_bill_billid[LS_ROW]
  818. LS_PRMSG.rowcnt = dw_child.RowCount()
  819. OpenWithParm(w_publ_preview,LS_PRMSG)
  820. end event
  821. event ue_print;call super::ue_print;//--直接打印
  822. IF NOT f_power_ind(1012) THEN
  823. MessageBox('提示','你没有使用权限!',information!,ok!)
  824. RETURN
  825. END IF
  826. uo_print_preview uo_print
  827. S_print_MSG LS_PRMSG
  828. IF dw_pageretr.RowCount() = 0 THEN
  829. MessageBox('提示','没有可打印的单据!',information!,ok!)
  830. RETURN
  831. END IF
  832. IF MessageBox ("询问","是否确定要打印当前单据吗?",Question!,YesNo! ) = 2 THEN RETURN
  833. IF ls_newname <> '' THEN
  834. IF li_auditprint = 1 THEN
  835. IF dw_pageretr.Object.flag[dw_pageretr.GetRow()] = 0 THEN
  836. MessageBox('提示','目标单据还未审核,不能打印!',information!,ok!)
  837. RETURN
  838. END IF
  839. END IF
  840. LS_PRMSG.obj_dwNAME = ls_newname
  841. ELSE
  842. LS_PRMSG.obj_dwNAME = 'dw_rp_warepdb_bill_edit'
  843. END IF
  844. LS_PRMSG.retr_pram_falg = 15
  845. LS_PRMSG.TAG_TEXT = '仓库盘点单'
  846. LS_PRMSG.FILTER_STRING = ''
  847. LS_PRMSG.PAGECH_FLAG = 0
  848. LS_PRMSG.retr_scid = cur_scid
  849. LS_PRMSG.retr_pramnmb = dw_pageretr.Object.u_warepdb_bill_billid[dw_pageretr.GetRow()]
  850. LS_PRMSG.rowcnt = dw_child.RowCount()
  851. uo_print.FACT_PRINT_MSG = LS_PRMSG
  852. String arg_msg
  853. IF uo_print.uof_print_begin(arg_msg) = 0 THEN
  854. MessageBox("错误",arg_msg,stopsign!,ok!)
  855. RETURN
  856. END IF
  857. uo_print.ds_print()
  858. end event
  859. event ue_addzy;call super::ue_addzy;IF dw_edit_mode THEN
  860. MessageBox('提示',"编辑状态下不可以使用!",information!,ok!)
  861. return
  862. END IF
  863. if not f_power_ind(1011) then
  864. messagebox('提示','你没有使用权限!',information!,ok!)
  865. return
  866. end if
  867. string arg_msg='',LS_STR
  868. long uc_row
  869. s_inputbox S_SREU
  870. uc_row=dw_pageretr.getrow()
  871. if uc_row<=0 then
  872. messagebox('提示','请选定当前目标单据!',information!,ok!)
  873. return
  874. end if
  875. S_SREU.TITLE='请输入要补充到备注的内容'
  876. S_SREU.OLD_TEXT=''
  877. openwithparm(w_inputbox,S_SREU)
  878. LS_STR=Message.StringParm
  879. if trim(LS_STR)='' or isnull(LS_STR) then return
  880. if uo_ware.add_dscrp(dw_pageretr.object.u_warepdb_bill_billid[uc_row],LS_STR,arg_msg)=0 then
  881. messagebox('错误',arg_msg,stopsign!,ok!)
  882. return
  883. else
  884. messagebox('提示','添加备注操作成功!',information!,ok!)
  885. wf_refresh_curuc(dw_pageretr.Object.u_warepdb_bill_scid[uc_row],dw_pageretr.object.u_warepdb_bill_billid[uc_row])
  886. end if
  887. end event
  888. event ue_f10;call super::ue_f10;//IF NOT dw_edit_mode THEN RETURN
  889. //
  890. //Long child_row
  891. //Int if_addmxdscrp
  892. //String ls_mxdscrp
  893. //s_addqty_input s_input
  894. //
  895. //dw_child.AcceptText( )
  896. //
  897. //child_row = dw_child.GetRow()
  898. //
  899. //IF child_row <= 0 THEN RETURN
  900. //
  901. //IF dw_child.Object.u_outwaremx_mtrlid[child_row] <= 0 THEN RETURN
  902. //
  903. //ls_mxdscrp = dw_child.Object.u_outwaremx_mxdscrp[child_row]
  904. //
  905. //IF NOT IsValid(w_addqty_input) THEN
  906. // OpenWithParm(w_addqty_input,ls_mxdscrp)
  907. //
  908. // s_input = Message.PowerObjectParm
  909. //
  910. // IF s_input.addqty = -1 THEN RETURN
  911. //
  912. // if_addmxdscrp = Integer(f_ProfileString (sys_empid,'addqty_input', "if_addmxdscrp", '0'))
  913. // IF if_addmxdscrp = 1 THEN
  914. // dw_child.Object.u_outwaremx_mxdscrp[child_row] = s_input.addqtystr
  915. // END IF
  916. // dw_child.Object.u_outwaremx_addqty[child_row] = s_input.addqty
  917. // dw_child.Object.u_outwaremx_qty[child_row] = s_input.qty
  918. //END IF
  919. //
  920. //
  921. end event
  922. event ue_rpt_print;call super::ue_rpt_print;IF NOT f_power_ind(1012) THEN
  923. MessageBox('提示','你没有使用权限!',information!,ok!)
  924. RETURN
  925. END IF
  926. Long row,uc_relid,ll_scid
  927. row = dw_pageretr.GetRow()
  928. IF row = 0 THEN RETURN
  929. uo_rpt_print_preview uo_print
  930. S_rpt_print_MSG LS_PRMSG
  931. IF dw_pageretr.RowCount() = 0 THEN
  932. MessageBox('提示','没有可打印的单据!',information!,ok!)
  933. RETURN
  934. END IF
  935. IF ls_rpname = '' THEN RETURN
  936. IF li_auditprint = 1 THEN
  937. IF dw_pageretr.Object.flag[row] = 0 THEN
  938. MessageBox('提示','目标单据还未审核,不能打印!',information!,ok!)
  939. RETURN
  940. END IF
  941. END IF
  942. IF MessageBox ("询问","是否确定要打印当前单据吗?",Question!,YesNo! ) = 2 THEN RETURN
  943. LS_PRMSG.retr_pram_falg = 15
  944. LS_PRMSG.TAG_TEXT = THIS.Title
  945. LS_PRMSG.rpname = ls_rpname
  946. LS_PRMSG.FILTER_STRING = ''
  947. LS_PRMSG.PAGECH_FLAG = 0
  948. LS_PRMSG.rpid = ls_msgprintid_rpt
  949. LS_PRMSG.retr_scid = dw_pageretr.Object.u_warepdb_bill_scid[row]
  950. LS_PRMSG.retr_pramnmb = dw_pageretr.Object.u_warepdb_bill_billid[row]
  951. LS_PRMSG.rowcnt = dw_child.RowCount()
  952. uo_print.FACT_PRINT_MSG = LS_PRMSG
  953. String arg_msg
  954. IF uo_print.uof_print_begin(arg_msg) = 0 THEN
  955. MessageBox("错误",arg_msg,stopsign!,ok!)
  956. RETURN
  957. END IF
  958. uo_print.ds_print()
  959. end event
  960. event ue_rpt_viewprint;call super::ue_rpt_viewprint;IF NOT f_power_ind(1012) THEN
  961. MessageBox('提示','你没有使用权限!',information!,ok!)
  962. RETURN
  963. END IF
  964. Long row,uc_relid,ll_scid
  965. row = dw_pageretr.GetRow()
  966. IF row = 0 THEN RETURN
  967. IF ls_rpname = '' THEN RETURN
  968. IF li_auditprint = 1 THEN
  969. IF dw_pageretr.Object.flag[row] = 0 THEN
  970. MessageBox('提示','目标单据还未审核,不能打印!',information!,ok!)
  971. RETURN
  972. END IF
  973. END IF
  974. s_rpt_print_msg s_print
  975. s_print.retr_pram_falg = 15
  976. s_print.rpid = ls_msgprintid_rpt
  977. s_print.retr_flag = TRUE
  978. s_print.tag_text = THIS.Title
  979. s_print.rpname = ls_rpname
  980. s_print.retr_scid = dw_pageretr.Object.u_warepdb_bill_scid[row]
  981. s_print.retr_pramnmb = dw_pageretr.Object.u_warepdb_bill_billid[row]
  982. s_print.rowcnt = dw_child.RowCount()
  983. OpenWithParm(w_rpt_preview,s_print)
  984. end event
  985. type cb_func from w_publ_1ton_share_detail`cb_func within w_warepdb_bill
  986. end type
  987. type cb_exit from w_publ_1ton_share_detail`cb_exit within w_warepdb_bill
  988. integer x = 2501
  989. end type
  990. type sle_usual_query from w_publ_1ton_share_detail`sle_usual_query within w_warepdb_bill
  991. integer x = 178
  992. integer y = 188
  993. integer width = 549
  994. end type
  995. type cb_retrieveall from w_publ_1ton_share_detail`cb_retrieveall within w_warepdb_bill
  996. integer x = 3049
  997. end type
  998. type em_pagerowno from w_publ_1ton_share_detail`em_pagerowno within w_warepdb_bill
  999. integer x = 2725
  1000. integer y = 52
  1001. integer width = 320
  1002. end type
  1003. type dw_pageretr from w_publ_1ton_share_detail`dw_pageretr within w_warepdb_bill
  1004. integer x = 1737
  1005. integer width = 1787
  1006. integer height = 748
  1007. string dataobject = "dw_warepdb_bill_index"
  1008. end type
  1009. event dw_pageretr::rowfocuschanged;call super::rowfocuschanged;wf_flagstatus_rf()
  1010. wf_check_billfj()
  1011. end event
  1012. type st_1 from w_publ_1ton_share_detail`st_1 within w_warepdb_bill
  1013. integer x = 5
  1014. integer y = 208
  1015. end type
  1016. type cb_nextpage from w_publ_1ton_share_detail`cb_nextpage within w_warepdb_bill
  1017. integer x = 3200
  1018. end type
  1019. type dw_uc from w_publ_1ton_share_detail`dw_uc within w_warepdb_bill
  1020. integer width = 1733
  1021. integer height = 748
  1022. string dataobject = "dw_warepdb_bill_edit"
  1023. end type
  1024. event dw_uc::dwnkey;parent.triggerevent('user_key')
  1025. if key = KeyDownArrow! then return 1
  1026. if dw_edit_mode then
  1027. if dw_uc.GetColumnName ( )='u_outware_dscrp' and key = KeyEnter! then
  1028. dw_child.setfocus()
  1029. dw_child.scrolltorow(1)
  1030. dw_child.SetColumn ('u_mtrldef_mtrlcode')
  1031. return 1
  1032. else
  1033. if key = KeyEnter! Then //
  1034. keybd_event ( 9, 0, 0 , 0 ) // 按下tab
  1035. keybd_event ( 9, 0, 2, 0 ) // 释放tab
  1036. Return 1
  1037. end If
  1038. end if
  1039. end if
  1040. end event
  1041. event dw_uc::itemchanged;call super::itemchanged;IF NOT dw_edit_mode THEN RETURN
  1042. IF dwo.Name = 'storageid' THEN
  1043. dw_child.Reset()
  1044. PARENT.TriggerEvent("insert_childrow")
  1045. END IF
  1046. end event
  1047. type gb_2 from w_publ_1ton_share_detail`gb_2 within w_warepdb_bill
  1048. end type
  1049. type dw_child from w_publ_1ton_share_detail`dw_child within w_warepdb_bill
  1050. integer y = 1044
  1051. integer height = 1100
  1052. string dataobject = "dw_u_warepdb_billmx_edit"
  1053. end type
  1054. event dw_child::dwnkey;call super::dwnkey;PARENT.TriggerEvent('user_key')
  1055. String ls_mtrlcode,ls_mtrlname,ls_unit,ls_mtrlmode,ls_prdpackcode,ls_mtrltype
  1056. String ls_plancode,ls_status,ls_woodcode,ls_pcode,ls_mtrlsectype,ls_zxmtrlmode
  1057. Long ls_mtrlwareid,ls_mtrlid,ls_storageid
  1058. Dec ls_noallocqty,ls_noauditingqty,ls_cost,ls_planprice,ls_packqty
  1059. Dec ld_noallocaddqty
  1060. Int li_Dxflag
  1061. Dec ld_wareamt
  1062. Long ll_sptid
  1063. Long child_row
  1064. Long ls_null
  1065. String ls_barcode
  1066. String ls_msg
  1067. SetNull(ls_null)
  1068. s_mtrlware_noalloc_array arg_s_mtrlware
  1069. IF dw_edit_mode THEN
  1070. dw_uc.AcceptText()
  1071. ls_storageid = dw_uc.Object.storageid[dw_uc.GetRow()]
  1072. IF ls_storageid = 0 OR IsNull(ls_storageid) THEN
  1073. MessageBox('提示','请先选择仓库',information!,ok!)
  1074. RETURN
  1075. END IF
  1076. IF KeyDown(Keydownarrow!) THEN
  1077. Long li_row
  1078. IF dw_child.GetRow() = dw_child.RowCount() THEN
  1079. PARENT.TriggerEvent("insert_childrow")
  1080. END IF
  1081. ELSE
  1082. IF KeyDown(KeyEnter!) AND NOT KeyDown(KeyControl!) AND NOT KeyDown(KeyShift!) THEN
  1083. IF dw_child.GetColumnName( ) = 'u_mtrldef_mtrlcode' THEN
  1084. IF wf_check(ls_msg) = 0 THEN
  1085. MessageBox('错误',ls_msg,stopsign!,ok!)
  1086. RETURN
  1087. END IF
  1088. dw_child.AcceptText()
  1089. child_row = dw_child.GetRow()
  1090. ls_mtrlcode = dw_child.Object.u_mtrldef_mtrlcode[child_row]
  1091. IF f_find_mtrlware_ls(ls_mtrlcode,ls_storageid,-1,arg_s_mtrlware) = 0 THEN
  1092. PARENT.TriggerEvent('ue_f8')
  1093. RETURN 1
  1094. ELSE
  1095. ls_mtrlwareid = arg_s_mtrlware.mtrlwareid[1]
  1096. ls_mtrlid = arg_s_mtrlware.mtrlid[1]
  1097. ls_mtrlcode = arg_s_mtrlware.u_mtrldef_mtrlcode[1]
  1098. ls_mtrlname = arg_s_mtrlware.u_mtrldef_mtrlname[1]
  1099. ls_unit = arg_s_mtrlware.u_mtrldef_unit[1]
  1100. ls_mtrlmode = arg_s_mtrlware.u_mtrldef_mtrlmode[1]
  1101. ls_planprice = arg_s_mtrlware.planprice[1]
  1102. ls_noallocqty = arg_s_mtrlware.noallocqty[1]
  1103. ls_storageid = arg_s_mtrlware.storageid[1]
  1104. ls_plancode = arg_s_mtrlware.plancode[1]
  1105. ls_cost = arg_s_mtrlware.cost[1]
  1106. ls_noauditingqty = arg_s_mtrlware.noauditingqty[1]
  1107. ls_status = arg_s_mtrlware.status[1]
  1108. ls_woodcode = arg_s_mtrlware.woodcode[1]
  1109. ls_pcode = arg_s_mtrlware.pcode[1]
  1110. ls_mtrlsectype = arg_s_mtrlware.u_mtrldef_mtrlsectype[1]
  1111. ls_zxmtrlmode = arg_s_mtrlware.u_mtrldef_zxmtrlmode[1]
  1112. ld_noallocaddqty = arg_s_mtrlware.noallocaddqty[1]
  1113. li_Dxflag = arg_s_mtrlware.Dxflag[1]
  1114. ld_wareamt = arg_s_mtrlware.wareamt[1]
  1115. ll_sptid = arg_s_mtrlware.sptid[1]
  1116. ls_barcode = arg_s_mtrlware.barcode[1]
  1117. ls_mtrltype = arg_s_mtrlware.u_mtrldef_mtrltype[1]
  1118. END IF
  1119. if wf_check_mtrlwareid(ls_mtrlwareid,child_row) = 0 then
  1120. MessageBox('提示','该产品库存信息已在明细内容里,不能重复录入!',information!,OK!)
  1121. dw_child.SetColumn("u_mtrldef_mtrlcode")
  1122. RETURN
  1123. END IF
  1124. dw_child.Object.u_mtrldef_mtrlcode[child_row] = ls_mtrlcode
  1125. dw_child.Object.u_warepdb_billmx_factqty[child_row] = ls_noallocqty
  1126. dw_child.Object.u_warepdb_billmx_mtrlwareid[child_row] = ls_mtrlwareid
  1127. dw_child.Object.u_warepdb_billmx_status[child_row] = ls_status
  1128. dw_child.Object.u_warepdb_billmx_plancode[child_row] = ls_plancode
  1129. dw_child.Object.u_warepdb_billmx_woodcode[child_row] = ls_woodcode
  1130. dw_child.Object.u_warepdb_billmx_pcode[child_row] = ls_pcode
  1131. dw_child.Object.u_warepdb_billmx_mtrlid[child_row] = ls_mtrlid
  1132. dw_child.Object.u_warepdb_billmx_qty[child_row] = ls_noallocqty
  1133. dw_child.Object.u_mtrldef_unit[child_row] = ls_unit
  1134. dw_child.Object.u_mtrldef_mtrlmode[child_row] = ls_mtrlmode
  1135. dw_child.Object.u_mtrldef_mtrlname[child_row] = ls_mtrlname
  1136. dw_child.Object.u_mtrldef_mtrlsectype[child_row] = ls_mtrlsectype
  1137. dw_child.Object.u_mtrldef_zxmtrlmode[child_row] = ls_zxmtrlmode
  1138. dw_child.Object.u_warepdb_billmx_Dxflag[child_row] = li_Dxflag
  1139. dw_child.Object.u_warepdb_billmx_factaddqty[child_row] = ld_noallocaddqty
  1140. dw_child.Object.u_warepdb_billmx_addqty[child_row] = ld_noallocaddqty
  1141. dw_child.Object.u_warepdb_billmx_Sptid[child_row] = ll_sptid
  1142. dw_child.Object.u_warepdb_billmx_wareamt[child_row] = ld_wareamt
  1143. dw_child.Object.u_warepdb_billmx_cost[child_row] = ls_cost
  1144. dw_child.Object.u_mtrldef_barcode[child_row] = ls_barcode
  1145. dw_child.Object.u_mtrldef_mtrltype[child_row] = ls_mtrltype
  1146. ELSEIF dw_child.GetColumnName( ) = 'u_mtrldef_barcode' THEN
  1147. IF wf_check(ls_msg) = 0 THEN
  1148. MessageBox('错误',ls_msg,stopsign!,ok!)
  1149. RETURN
  1150. END IF
  1151. dw_child.AcceptText()
  1152. child_row = dw_child.GetRow()
  1153. ls_mtrlcode = dw_child.Object.u_mtrldef_barcode[child_row]
  1154. IF f_find_mtrlware_ls(ls_mtrlcode,ls_storageid,-1,arg_s_mtrlware) = 0 THEN
  1155. PARENT.TriggerEvent('ue_f8')
  1156. RETURN 1
  1157. ELSE
  1158. ls_mtrlwareid = arg_s_mtrlware.mtrlwareid[1]
  1159. ls_mtrlid = arg_s_mtrlware.mtrlid[1]
  1160. ls_mtrlcode = arg_s_mtrlware.u_mtrldef_mtrlcode[1]
  1161. ls_mtrlname = arg_s_mtrlware.u_mtrldef_mtrlname[1]
  1162. ls_unit = arg_s_mtrlware.u_mtrldef_unit[1]
  1163. ls_mtrlmode = arg_s_mtrlware.u_mtrldef_mtrlmode[1]
  1164. ls_planprice = arg_s_mtrlware.planprice[1]
  1165. ls_noallocqty = arg_s_mtrlware.noallocqty[1]
  1166. ls_storageid = arg_s_mtrlware.storageid[1]
  1167. ls_plancode = arg_s_mtrlware.plancode[1]
  1168. ls_cost = arg_s_mtrlware.cost[1]
  1169. ls_noauditingqty = arg_s_mtrlware.noauditingqty[1]
  1170. ls_status = arg_s_mtrlware.status[1]
  1171. ls_woodcode = arg_s_mtrlware.woodcode[1]
  1172. ls_pcode = arg_s_mtrlware.pcode[1]
  1173. ls_mtrlsectype = arg_s_mtrlware.u_mtrldef_mtrlsectype[1]
  1174. ls_zxmtrlmode = arg_s_mtrlware.u_mtrldef_zxmtrlmode[1]
  1175. ld_noallocaddqty = arg_s_mtrlware.noallocaddqty[1]
  1176. li_Dxflag = arg_s_mtrlware.Dxflag[1]
  1177. ld_wareamt = arg_s_mtrlware.wareamt[1]
  1178. ll_sptid = arg_s_mtrlware.sptid[1]
  1179. ls_barcode = arg_s_mtrlware.barcode[1]
  1180. ls_mtrltype = arg_s_mtrlware.u_mtrldef_mtrltype[1]
  1181. END IF
  1182. if wf_check_mtrlwareid(ls_mtrlwareid,child_row) = 0 then
  1183. MessageBox('提示','该产品库存信息已在明细内容里,不能重复录入!',information!,OK!)
  1184. dw_child.SetColumn("u_mtrldef_barcode")
  1185. RETURN
  1186. END IF
  1187. dw_child.Object.u_mtrldef_mtrlcode[child_row] = ls_mtrlcode
  1188. dw_child.Object.u_warepdb_billmx_factqty[child_row] = ls_noallocqty
  1189. dw_child.Object.u_warepdb_billmx_mtrlwareid[child_row] = ls_mtrlwareid
  1190. dw_child.Object.u_warepdb_billmx_status[child_row] = ls_status
  1191. dw_child.Object.u_warepdb_billmx_plancode[child_row] = ls_plancode
  1192. dw_child.Object.u_warepdb_billmx_woodcode[child_row] = ls_woodcode
  1193. dw_child.Object.u_warepdb_billmx_pcode[child_row] = ls_pcode
  1194. dw_child.Object.u_warepdb_billmx_mtrlid[child_row] = ls_mtrlid
  1195. dw_child.Object.u_warepdb_billmx_qty[child_row] = ls_noallocqty
  1196. dw_child.Object.u_mtrldef_unit[child_row] = ls_unit
  1197. dw_child.Object.u_mtrldef_mtrlmode[child_row] = ls_mtrlmode
  1198. dw_child.Object.u_mtrldef_mtrlname[child_row] = ls_mtrlname
  1199. dw_child.Object.u_mtrldef_mtrlsectype[child_row] = ls_mtrlsectype
  1200. dw_child.Object.u_mtrldef_zxmtrlmode[child_row] = ls_zxmtrlmode
  1201. dw_child.Object.u_warepdb_billmx_Dxflag[child_row] = li_Dxflag
  1202. dw_child.Object.u_warepdb_billmx_factaddqty[child_row] = ld_noallocaddqty
  1203. dw_child.Object.u_warepdb_billmx_addqty[child_row] = ld_noallocaddqty
  1204. dw_child.Object.u_warepdb_billmx_Sptid[child_row] = ll_sptid
  1205. dw_child.Object.u_warepdb_billmx_wareamt[child_row] = ld_wareamt
  1206. dw_child.Object.u_warepdb_billmx_cost[child_row] = ls_cost
  1207. dw_child.Object.u_mtrldef_barcode[child_row] = ls_barcode
  1208. dw_child.Object.u_mtrldef_mtrltype[child_row] = ls_mtrltype
  1209. IF Key = KeyEnter! THEN //
  1210. keybd_event ( 9, 0, 0 , 0 ) // 按下tab
  1211. keybd_event ( 9, 0, 2, 0 ) // 释放tab
  1212. RETURN 1
  1213. END IF
  1214. ELSEIF dw_child.GetColumnName( ) = 'u_warepdb_billmx_mxdscrp' AND dw_child.GetRow() = dw_child.RowCount() THEN
  1215. PARENT.TriggerEvent("insert_childrow")
  1216. RETURN 1
  1217. ELSE
  1218. IF Key = KeyEnter! THEN //
  1219. keybd_event ( 9, 0, 0 , 0 ) // 按下tab
  1220. keybd_event ( 9, 0, 2, 0 ) // 释放tab
  1221. RETURN 1
  1222. END IF
  1223. END IF
  1224. END IF
  1225. END IF
  1226. END IF
  1227. end event
  1228. event dw_child::itemchanged;call super::itemchanged;IF NOT DW_EDIT_MODE THEN RETURN
  1229. THIS.ACCEPTTEXT()
  1230. IF dwo.Name = 'u_warepdb_billmx_packqty' THEN
  1231. Long ll_mtrlid
  1232. Decimal lde_packqty_single, lde_packqty, lde_rate
  1233. IF ii_packqty_cmpl = 1 THEN
  1234. ll_mtrlid = This.Object.u_warepdb_billmx_mtrlid[row]
  1235. lde_packqty_single = f_get_packqty(ll_mtrlid)
  1236. lde_packqty = This.Object.u_warepdb_billmx_packqty[row]
  1237. //lde_rate = This.Object.u_warepdb_billmx_rate[row]
  1238. //if lde_rate = 0 then lde_rate = 1
  1239. This.Object.u_warepdb_billmx_qty[row] = lde_packqty * lde_packqty_single
  1240. //This.Object.u_warepdb_billmx_buyqty[row] = lde_packqty * lde_packqty_single / lde_rate
  1241. //This.Object.u_warepdb_billmx_saleqty[row] = lde_packqty * lde_packqty_single / lde_rate
  1242. END IF
  1243. END IF
  1244. end event
  1245. event dw_child::doubleclicked;If dw_edit_mode And row > 0 Then
  1246. If dwo.Name = 'u_warepdb_billmx_factaddqty' Then
  1247. Parent.TriggerEvent('ue_add_addqty')
  1248. Else
  1249. Parent.TriggerEvent('ue_f8')
  1250. End If
  1251. End If
  1252. end event
  1253. type cb_viewprint from w_publ_1ton_share_detail`cb_viewprint within w_warepdb_bill
  1254. integer x = 1856
  1255. end type
  1256. type cb_print from w_publ_1ton_share_detail`cb_print within w_warepdb_bill
  1257. integer x = 1664
  1258. end type
  1259. type cb_add from w_publ_1ton_share_detail`cb_add within w_warepdb_bill
  1260. integer x = 297
  1261. integer y = 4
  1262. end type
  1263. event cb_add::clicked;IF Not f_power_ind(1007) THEN
  1264. MessageBox('提示','你没有使用权限!',information!,ok!)
  1265. RETURN
  1266. END IF
  1267. String arg_msg = ''
  1268. Long uc_row,i
  1269. IF dw_edit_mode THEN
  1270. dw_uc.AcceptText()
  1271. dw_child.AcceptText()
  1272. uc_row = dw_uc.GetRow()
  1273. IF uc_row <= 0 THEN
  1274. MessageBox('提示','请选定当前目标单据!',information!,ok!)
  1275. RETURN
  1276. END IF
  1277. IF Not dw_uc.Object.u_warepdb_bill_billdate[uc_row] > DateTime(2000-01-01,Now()) THEN
  1278. MessageBox('提示','不合理发生时间',information!,ok!)
  1279. dw_uc.SetFocus()
  1280. dw_uc.SetColumn("u_warepdb_bill_billdate")
  1281. RETURN
  1282. END IF
  1283. IF Not Len(String(dw_uc.Object.u_warepdb_bill_assign_emp[uc_row])) > 0 THEN
  1284. MessageBox('提示','请填写经手人',information!,ok!)
  1285. dw_uc.SetFocus()
  1286. dw_uc.SetColumn("u_warepdb_bill_assign_emp")
  1287. RETURN
  1288. END IF
  1289. uo_ware.billdate = DateTime(Date(dw_uc.Object.u_warepdb_bill_billdate[uc_row]),Time('23:59:59'))
  1290. uo_ware.storageid = dw_uc.Object.storageid[uc_row]
  1291. uo_ware.dscrp = dw_uc.Object.u_warepdb_bill_dscrp[uc_row]
  1292. uo_ware.assign_emp = dw_uc.Object.u_warepdb_bill_assign_emp[uc_row]
  1293. uo_ware.scid = dw_uc.Object.u_warepdb_bill_scid[uc_row]
  1294. uo_ware.part = dw_uc.Object.u_warepdb_bill_part[uc_row]
  1295. FOR i = 1 To dw_child.RowCount()
  1296. IF dw_child.Object.u_warepdb_billmx_mtrlwareid[i] > 0 THEN
  1297. IF uo_ware.acceptmx2( dw_child.Object.u_warepdb_billmx_factqty[i],&
  1298. dw_child.Object.u_warepdb_billmx_factaddqty[i],&
  1299. dw_child.Object.u_warepdb_billmx_mxdscrp[i],&
  1300. dw_child.Object.u_warepdb_billmx_mtrlwareid[i],&
  1301. dw_child.Object.u_warepdb_billmx_status[i],&
  1302. dw_child.Object.u_warepdb_billmx_plancode[i],&
  1303. dw_child.Object.u_warepdb_billmx_woodcode[i],&
  1304. dw_child.Object.u_warepdb_billmx_pcode[i],&
  1305. dw_child.Object.u_warepdb_billmx_mtrlid[i],&
  1306. dw_child.Object.u_warepdb_billmx_qty[i],&
  1307. dw_child.Object.u_warepdb_billmx_addqty[i],&
  1308. dw_child.Object.u_warepdb_billmx_sptid[i],&
  1309. dw_child.Object.u_warepdb_billmx_dxflag[i],&
  1310. dw_child.Object.u_warepdb_billmx_printid[i],&
  1311. dw_child.Object.u_warepdb_billmx_wareamt[i],&
  1312. dw_child.Object.u_warepdb_billmx_cost[i],&
  1313. dw_child.Object.u_mtrldef_mtrlcode[i],&
  1314. dw_child.object.u_warepdb_billmx_packqty[i],&
  1315. arg_msg,dw_child.Object.u_warepdb_billmx_waredscrp[i]) = 0 THEN
  1316. MessageBox('错误',arg_msg,stopsign!,ok!)
  1317. RETURN
  1318. END IF
  1319. END IF
  1320. NEXT
  1321. IF uo_ware.Save(arg_msg,True) = 0 THEN
  1322. MessageBox('错误',arg_msg,stopsign!,ok!)
  1323. RETURN
  1324. END IF
  1325. // MessageBox(publ_operator,'保存操作成功!')
  1326. //write ini
  1327. f_SetProfileString (sys_empid,dw_uc.DataObject, "ddlb_storageid",String(dw_uc.Object.storageid[dw_uc.GetRow()]))
  1328. //
  1329. Long ll_row
  1330. ll_row = dw_pageretr.GetRow()
  1331. dw_pageretr.SelectRow(0,False)
  1332. dw_pageretr.SelectRow(ll_row,True)
  1333. wf_refresh_curuc(cur_scid,uo_ware.billid)
  1334. ELSE
  1335. IF cur_scid < 0 THEN
  1336. MessageBox('错误',"请选择分部",stopsign!,ok!)
  1337. RETURN
  1338. END IF
  1339. IF uo_ware.newbegin(arg_msg) = 0 THEN
  1340. MessageBox('错误',arg_msg,stopsign!,ok!)
  1341. RETURN
  1342. END IF
  1343. END IF
  1344. CALL Super::Clicked
  1345. //read ini
  1346. IF dw_edit_mode THEN
  1347. Parent.TriggerEvent("insert_childrow")
  1348. dw_uc.SetRedraw(False)
  1349. String ls_storageid
  1350. ls_storageid = f_ProfileString (sys_empid,dw_uc.DataObject, "ddlb_storageid",'0')
  1351. IF f_find_storageid(ls_storageid) = '' THEN
  1352. ls_storageid = '0'
  1353. END IF
  1354. dw_uc.Object.storageid[dw_uc.GetRow()] = Long(ls_storageid)
  1355. dw_uc.Object.u_warepdb_bill_scid[dw_uc.GetRow()] = cur_scid
  1356. dw_uc.SetColumn("storageid")
  1357. dw_uc.SetRedraw(True)
  1358. ELSE
  1359. Parent.TriggerEvent("retrieve_childdw")
  1360. END IF
  1361. //
  1362. end event
  1363. type cb_edit from w_publ_1ton_share_detail`cb_edit within w_warepdb_bill
  1364. end type
  1365. event cb_edit::clicked;IF Not f_power_ind(1007) THEN
  1366. MessageBox('提示','你没有使用权限!',information!,ok!)
  1367. RETURN
  1368. END IF
  1369. String arg_msg = ''
  1370. Long uc_row
  1371. uc_row = dw_pageretr.GetRow()
  1372. IF uc_row <= 0 THEN
  1373. MessageBox('提示','请选定当前目标单据!',information!,ok!)
  1374. RETURN
  1375. END IF
  1376. IF Not dw_edit_mode THEN
  1377. IF uo_ware.updatebegin(dw_pageretr.Object.u_warepdb_bill_billid[uc_row],arg_msg) = 0 THEN
  1378. MessageBox('错误',arg_msg,stopsign!,ok!)
  1379. RETURN
  1380. END IF
  1381. END IF
  1382. CALL Super::Clicked
  1383. end event
  1384. type cb_delet from w_publ_1ton_share_detail`cb_delet within w_warepdb_bill
  1385. end type
  1386. event cb_delet::clicked;if not f_power_ind(1008) then
  1387. messagebox('提示','你没有使用权限!',information!,ok!)
  1388. return
  1389. end if
  1390. if dw_edit_mode then return
  1391. string arg_msg=''
  1392. long uc_row
  1393. uc_row=dw_pageretr.getrow()
  1394. if uc_row<=0 then
  1395. messagebox('提示','请选定当前目标单据!',information!,ok!)
  1396. return
  1397. end if
  1398. IF MessageBox ("询问","是否确定要删除当前单据吗?",Question!,YesNo! ) = 2 THEN RETURN
  1399. if uo_ware.del(dw_pageretr.object.u_warepdb_bill_billid[uc_row],arg_msg)=0 then
  1400. messagebox('错误',arg_msg,stopsign!,ok!)
  1401. ELSE
  1402. //日志
  1403. long ls_id
  1404. string ls_code
  1405. ls_id=dw_pageretr.object.u_warepdb_bill_billid[uc_row]
  1406. ls_code=dw_pageretr.object.u_warepdb_bill_billcode[uc_row]
  1407. f_setsysoplog('盘点单','删除,ID:'+string(LS_id)+',code:'+ls_code,arg_msg,true)
  1408. //--
  1409. MESSAGEBOX('提示','删除单据'+string(dw_pageretr.object.u_warepdb_bill_billcode[uc_row])+'成功!',information!,ok!)
  1410. dw_pageretr.deleterow(uc_row)
  1411. dw_pageretr.postevent(rowfocuschanged!)
  1412. end if
  1413. end event
  1414. type cb_addzy from w_publ_1ton_share_detail`cb_addzy within w_warepdb_bill
  1415. integer x = 1161
  1416. end type
  1417. event cb_addzy::clicked;call super::clicked;m_Dfc_Control_PopupMenu dmPopupMenu
  1418. string menustr
  1419. menustr="Text=增加备注~tEvent=ue_addzy"
  1420. menustr=menustr + "|" + "Text=复制单据~tEvent=ue_bill_copy"
  1421. menustr=menustr + "|" + "Text=粘贴单据~tEvent=ue_bill_paste"
  1422. menustr = menustr + "|" + "Text=-"
  1423. menustr = menustr + "|" + "Text=查看附件~tEvent=ue_fj_view"
  1424. menustr = menustr + "|" + "Text=添加附件~tEvent=ue_fj_edit"
  1425. if len(trim(menustr))<>0 then
  1426. dmPopupMenu = Create m_Dfc_Control_PopupMenu
  1427. dmPopupMenu.mf_BuildMenu(This, menustr)
  1428. dmPopupMenu.mf_PopMenu()
  1429. Destroy dmPopupMenu
  1430. end if
  1431. end event
  1432. type cb_auditing from w_publ_1ton_share_detail`cb_auditing within w_warepdb_bill
  1433. integer width = 178
  1434. end type
  1435. event cb_auditing::clicked;IF NOT f_power_ind(1009) THEN
  1436. MessageBox('提示','你没有使用权限!',information!,ok!)
  1437. RETURN
  1438. END IF
  1439. IF dw_edit_mode THEN RETURN
  1440. IF NOT KeyDown(KeyControl!) THEN
  1441. String arg_msg = ''
  1442. Long pagerert_row
  1443. pagerert_row = dw_pageretr.GetRow()
  1444. IF pagerert_row <= 0 THEN
  1445. MessageBox('提示','请选定当前目标单据!',information!,ok!)
  1446. RETURN
  1447. END IF
  1448. IF MessageBox ("询问","是否确定要审核当前单据吗?",Question!,YesNo! ) = 2 THEN RETURN
  1449. IF uo_ware.getinfo( dw_pageretr.Object.u_warepdb_bill_billid[pagerert_row],arg_msg) = 0 THEN
  1450. MessageBox('错误',arg_msg,stopsign!,ok!)
  1451. RETURN
  1452. END IF
  1453. IF uo_ware.auditing(publ_operator,TRUE,arg_msg) = 0 THEN
  1454. MessageBox('错误',arg_msg,stopsign!,ok!)
  1455. ELSE
  1456. MessageBox('提示','审核成功!',information!,ok!)
  1457. wf_refresh_curuc(dw_pageretr.Object.u_warepdb_bill_scid[pagerert_row],dw_pageretr.Object.u_warepdb_bill_billid[pagerert_row])
  1458. END IF
  1459. ELSE
  1460. IF MessageBox ("询问","是否确定要批审核列表中未审核的单据?",Question!,YesNo! ) = 2 THEN RETURN
  1461. Long ll_i,ll_billid
  1462. Int li_flag
  1463. Long ll_suc,ll_fail
  1464. dw_pageretr.AcceptText()
  1465. OPEN(w_sys_wait_jdt) //初始化进度条
  1466. w_sys_wait_jdt.Show()
  1467. w_sys_wait_jdt.wf_accepttol(dw_pageretr.RowCount())
  1468. FOR ll_i = 1 TO dw_pageretr.RowCount()
  1469. w_sys_wait_jdt.st_msg.Text = dw_pageretr.Object.u_warepdb_bill_billcode[ll_i] + " 正在审核..." //进度信息
  1470. li_flag = dw_pageretr.Object.flag[ll_i]
  1471. IF li_flag = 1 THEN CONTINUE
  1472. ll_billid = dw_pageretr.Object.u_warepdb_bill_billid[ll_i]
  1473. IF uo_ware.getinfo(ll_billid,arg_msg) = 0 THEN
  1474. ll_fail++
  1475. CONTINUE
  1476. END IF
  1477. IF uo_ware.auditing(publ_operator,TRUE,arg_msg) = 0 THEN
  1478. ll_fail++
  1479. CONTINUE
  1480. END IF
  1481. ll_suc++
  1482. w_sys_wait_jdt.wf_inc(ll_i) //进度
  1483. NEXT
  1484. CLOSE(w_sys_wait_jdt)
  1485. MessageBox('提示','批审核成功!成功:'+String(ll_suc)+',失败:'+String(ll_fail),information!,ok!)
  1486. PARENT.TriggerEvent('retrieve_pageretr')
  1487. END IF
  1488. end event
  1489. type cb_xm from w_publ_1ton_share_detail`cb_xm within w_warepdb_bill
  1490. integer x = 1413
  1491. end type
  1492. type cb_retrieve from w_publ_1ton_share_detail`cb_retrieve within w_warepdb_bill
  1493. end type
  1494. type cb_xls from w_publ_1ton_share_detail`cb_xls within w_warepdb_bill
  1495. integer x = 2048
  1496. end type
  1497. type cb_help from w_publ_1ton_share_detail`cb_help within w_warepdb_bill
  1498. integer x = 2354
  1499. end type
  1500. type cb_auditing_cancel from w_publ_1ton_share_detail`cb_auditing_cancel within w_warepdb_bill
  1501. integer x = 1010
  1502. end type
  1503. event cb_auditing_cancel::clicked;call super::clicked;IF NOT f_power_ind(1010) THEN
  1504. MessageBox('提示','你没有使用权限!',information!,ok!)
  1505. RETURN
  1506. END IF
  1507. IF dw_edit_mode THEN RETURN
  1508. String arg_msg = ''
  1509. Long pagerert_row
  1510. pagerert_row = dw_pageretr.GetRow()
  1511. IF pagerert_row <= 0 THEN
  1512. MessageBox('提示','请选定当前目标单据!',information!,ok!)
  1513. RETURN
  1514. END IF
  1515. IF MessageBox ("询问","是否确定要撤消审核当前单据吗?",Question!,YesNo! ) = 2 THEN RETURN
  1516. IF uo_ware.getinfo( dw_pageretr.Object.u_warepdb_bill_billid[pagerert_row],arg_msg) = 0 THEN
  1517. MessageBox('错误',arg_msg,stopsign!,ok!)
  1518. RETURN
  1519. END IF
  1520. IF uo_ware.c_auditing(TRUE,arg_msg) = 0 THEN
  1521. MessageBox('错误',arg_msg,stopsign!,ok!)
  1522. ELSE
  1523. MessageBox('提示','撤消审核成功!',information!,ok!)
  1524. //日志
  1525. String ls_code,ls_opemp,ls_outpart
  1526. ls_code = dw_pageretr.Object.u_warepdb_bill_billcode[pagerert_row]
  1527. ls_opemp = dw_pageretr.Object.u_warepdb_bill_opemp[pagerert_row]
  1528. ls_outpart = dw_pageretr.Object.u_warepdb_bill_part[pagerert_row]
  1529. f_setsysoplog('盘点单','撤审'+',code:'+ls_code+',相关号码:'+ls_outpart+',建立人:'+ls_opemp,arg_msg,TRUE)
  1530. //--
  1531. wf_refresh_curuc(dw_pageretr.Object.u_warepdb_bill_scid[pagerert_row],dw_pageretr.Object.u_warepdb_bill_billid[pagerert_row])
  1532. END IF
  1533. end event
  1534. type p_msg from w_publ_1ton_share_detail`p_msg within w_warepdb_bill
  1535. end type
  1536. type p_help from w_publ_1ton_share_detail`p_help within w_warepdb_bill
  1537. end type
  1538. type p_encl from w_publ_1ton_share_detail`p_encl within w_warepdb_bill
  1539. end type
  1540. type p_other from w_publ_1ton_share_detail`p_other within w_warepdb_bill
  1541. end type
  1542. type gb_3 from w_publ_1ton_share_detail`gb_3 within w_warepdb_bill
  1543. end type
  1544. type ln_bar from w_publ_1ton_share_detail`ln_bar within w_warepdb_bill
  1545. integer beginx = 14
  1546. integer endx = 3616
  1547. end type
  1548. type ln_bar2 from w_publ_1ton_share_detail`ln_bar2 within w_warepdb_bill
  1549. integer beginx = 14
  1550. integer endx = 3616
  1551. end type
  1552. type r_bar from w_publ_1ton_share_detail`r_bar within w_warepdb_bill
  1553. integer x = 3113
  1554. end type
  1555. type ln_1 from w_publ_1ton_share_detail`ln_1 within w_warepdb_bill
  1556. end type
  1557. type ln_2 from w_publ_1ton_share_detail`ln_2 within w_warepdb_bill
  1558. end type
  1559. type ddlb_scid from uo_ddlb_scid within w_warepdb_bill
  1560. integer x = 992
  1561. integer y = 188
  1562. integer width = 549
  1563. integer height = 668
  1564. integer taborder = 20
  1565. boolean bringtotop = true
  1566. end type
  1567. event selectionchanged;call super::selectionchanged;cur_scid=this.uo_scid
  1568. parent.triggerevent("retrieve_pageretr")
  1569. end event
  1570. event constructor;call super::constructor;cur_scid=this.uo_scid
  1571. end event
  1572. type ddlb_status from dropdownlistbox within w_warepdb_bill
  1573. integer x = 1829
  1574. integer y = 188
  1575. integer width = 517
  1576. integer height = 300
  1577. integer taborder = 30
  1578. boolean bringtotop = true
  1579. integer textsize = -9
  1580. integer weight = 400
  1581. fontcharset fontcharset = gb2312charset!
  1582. fontpitch fontpitch = variable!
  1583. string facename = "宋体"
  1584. long textcolor = 33554432
  1585. string text = "[全部]"
  1586. boolean sorted = false
  1587. string item[] = {"[全部]","待审核","已审核"}
  1588. borderstyle borderstyle = stylelowered!
  1589. end type
  1590. event selectionchanged;if index=1 then
  1591. cur_flag=-1
  1592. elseif index=2 then
  1593. cur_flag=0
  1594. elseif index=3 then
  1595. cur_flag=1
  1596. end if
  1597. parent.triggerevent('retrieve_pageretr')
  1598. end event
  1599. type st_3 from statictext within w_warepdb_bill
  1600. integer x = 1659
  1601. integer y = 204
  1602. integer width = 219
  1603. integer height = 48
  1604. integer textsize = -9
  1605. integer weight = 400
  1606. fontcharset fontcharset = gb2312charset!
  1607. fontpitch fontpitch = variable!
  1608. string facename = "宋体"
  1609. long textcolor = 33554432
  1610. long backcolor = 134217739
  1611. string text = "状 态"
  1612. boolean focusrectangle = false
  1613. end type
  1614. type st_2 from statictext within w_warepdb_bill
  1615. integer x = 818
  1616. integer y = 204
  1617. integer width = 219
  1618. integer height = 48
  1619. integer textsize = -9
  1620. integer weight = 400
  1621. fontcharset fontcharset = gb2312charset!
  1622. fontpitch fontpitch = variable!
  1623. string facename = "宋体"
  1624. long textcolor = 33554432
  1625. long backcolor = 134217739
  1626. string text = "分 部"
  1627. boolean focusrectangle = false
  1628. end type
  1629. type cb_pypk from uo_imflatbutton within w_warepdb_bill
  1630. boolean visible = false
  1631. integer x = 837
  1632. integer width = 233
  1633. integer height = 164
  1634. integer taborder = 230
  1635. boolean bringtotop = true
  1636. string text = "盘盈/亏"
  1637. string normalpicname = "imexport.bmp"
  1638. integer picsize = 16
  1639. toolbaralignment pic_align = alignattop!
  1640. boolean border = false
  1641. end type
  1642. event clicked;call super::clicked;IF NOT f_power_ind(1007) THEN
  1643. MessageBox('提示','你没有使用权限!',information!,ok!)
  1644. RETURN
  1645. END IF
  1646. IF dw_edit_mode THEN RETURN
  1647. String arg_msg = ''
  1648. Long pagerert_row
  1649. pagerert_row = dw_pageretr.GetRow()
  1650. IF pagerert_row <= 0 THEN
  1651. MessageBox('提示','请选定当前目标单据!',information!,ok!)
  1652. RETURN
  1653. END IF
  1654. IF MessageBox ("询问","是否确定要审核当前单据吗?",Question!,YesNo! ) = 2 THEN RETURN
  1655. IF uo_ware.getinfo( dw_pageretr.Object.u_warepdb_bill_billid[pagerert_row],arg_msg) = 0 THEN
  1656. MessageBox('错误',arg_msg,stopsign!,ok!)
  1657. RETURN
  1658. END IF
  1659. IF uo_ware.pypk(publ_operator,TRUE,arg_msg) = 0 THEN
  1660. MessageBox('错误',arg_msg,stopsign!,ok!)
  1661. ELSE
  1662. MessageBox('提示','生成盘盈/盘亏成功!',information!,ok!)
  1663. wf_refresh_curuc(dw_pageretr.Object.u_warepdb_bill_scid[pagerert_row],dw_pageretr.Object.u_warepdb_bill_billid[pagerert_row])
  1664. END IF
  1665. end event
  1666. type cbx_packqty_cmpl from checkbox within w_warepdb_bill
  1667. integer x = 3269
  1668. integer y = 96
  1669. integer width = 576
  1670. integer height = 60
  1671. boolean bringtotop = true
  1672. integer textsize = -9
  1673. integer weight = 400
  1674. fontcharset fontcharset = gb2312charset!
  1675. fontpitch fontpitch = variable!
  1676. string facename = "宋体"
  1677. long textcolor = 33554432
  1678. long backcolor = 134217739
  1679. string text = "录入包装数计算数量"
  1680. end type
  1681. event clicked;IF THIS.Checked THEN
  1682. ii_packqty_cmpl = 1
  1683. ELSE
  1684. ii_packqty_cmpl = 0
  1685. END IF
  1686. f_SetProfileString (sys_empid,publ_userid+'_'+dw_uc.DataObject, "packqty_cmpl",String(ii_packqty_cmpl))
  1687. end event
  1688. event constructor;this.backcolor = 14215660
  1689. ii_packqty_cmpl = Long(f_ProfileString (sys_empid,publ_userid+'_'+dw_uc.DataObject, "packqty_cmpl",'0'))
  1690. IF ii_packqty_cmpl = 1 THEN
  1691. THIS.Checked = TRUE
  1692. ELSE
  1693. THIS.Checked = FALSE
  1694. END IF
  1695. //this.y = cbx_enamt_edit.y
  1696. //this.x = cbx_enamt_edit.x + cbx_enamt_edit.width + 10
  1697. end event
  1698. type cb_scanbill from commandbutton within w_warepdb_bill
  1699. integer x = 2423
  1700. integer y = 188
  1701. integer width = 384
  1702. integer height = 84
  1703. integer taborder = 50
  1704. boolean bringtotop = true
  1705. integer textsize = -9
  1706. integer weight = 400
  1707. fontcharset fontcharset = gb2312charset!
  1708. fontpitch fontpitch = variable!
  1709. string facename = "宋体"
  1710. boolean underline = true
  1711. string text = "条码扫描盘点"
  1712. end type
  1713. event clicked;String em,ls_str
  1714. Long this_parrow
  1715. Long i,ll_row,ll_ucrow
  1716. long ll_scid,ll_outwareid
  1717. IF Not dw_edit_mode THEN return
  1718. this_parrow = dw_pageretr.GetRow()
  1719. IF this_parrow <= 0 THEN
  1720. MessageBox('NO','请选择单据!')
  1721. RETURN
  1722. END IF
  1723. dw_uc.accepttext()
  1724. if dw_uc.object.storageid[dw_uc.getrow()]>0 then
  1725. else
  1726. MessageBox('NO','请选择仓库!')
  1727. RETURN
  1728. end if
  1729. //ll_scid=dw_pageretr.object.u_outware_scid[this_parrow]
  1730. //ll_outwareid=dw_pageretr.object.u_outware_outwareid[this_parrow]
  1731. s_edit_index_tran s_tran_mod
  1732. //s_tran_mod.b_long = ll_scid
  1733. s_tran_mod.c_long = dw_uc.object.storageid[dw_uc.getrow()]
  1734. //s_tran_mod.d_long = 0
  1735. //s_tran_mod.c_string = ''
  1736. OpenWithParm(w_warepdb_bill_p_scanqty,s_tran_mod)
  1737. //String em,ls_str
  1738. //Long this_parrow
  1739. //Long i,ll_row,ll_ucrow
  1740. //this_parrow = dw_pageretr.GetRow()
  1741. //IF this_parrow <= 0 THEN
  1742. // MessageBox('NO','请选择单据!')
  1743. // RETURN
  1744. //END IF
  1745. //
  1746. //TRY
  1747. // s_edit_index_tran s_ch_tran //传递参数使用
  1748. //
  1749. // OpenWithParm(w_scanbill,s_ch_tran )
  1750. //
  1751. //
  1752. // w_scanbill.cb_add.TriggerEvent('clicked')
  1753. // w_scanbill.cur_thflag = 0
  1754. // ll_ucrow = w_scanbill.dw_uc.GetRow()
  1755. // IF ll_ucrow <= 0 THEN RETURN
  1756. // w_scanbill.dw_uc.object.billtype[ll_ucrow]=0 //0 表示发货退货 1 表示盘点单
  1757. // w_scanbill.dw_uc.object.scid[ll_ucrow]=dw_pageretr.object.u_outware_scid[this_parrow]
  1758. // w_scanbill.dw_uc.object.outwareid[ll_ucrow]=dw_pageretr.object.u_outware_outwareid[this_parrow]
  1759. // w_scanbill.dw_uc.object.outwarecode[ll_ucrow]=dw_pageretr.object.u_outware_outwarecode[this_parrow]
  1760. //
  1761. // FOR i = 1 To dw_child.RowCount()
  1762. // w_scanbill.dw_child.Reset()
  1763. // ll_row = w_scanbill.dw_child.InsertRow(0)
  1764. // w_scanbill.dw_child.Object.u_outwaremx_mtrlid[ll_row] = dw_child.Object.u_outwaremx_mtrlid[i]
  1765. // w_scanbill.dw_child.Object.u_mtrldef_mtrlcode[ll_row] = dw_child.Object.u_mtrldef_mtrlcode[i]
  1766. // w_scanbill.dw_child.Object.u_mtrldef_mtrlname[ll_row] = dw_child.Object.u_mtrldef_mtrlname[i]
  1767. // w_scanbill.dw_child.Object.u_mtrldef_mtrlmode[ll_row] = dw_child.Object.u_mtrldef_mtrlmode[i]
  1768. // w_scanbill.dw_child.Object.u_mtrldef_unit[ll_row] = dw_child.Object.u_outwaremx_unit[i]
  1769. // w_scanbill.dw_child.Object.u_outwaremx_uqty[ll_row] = dw_child.Object.u_outwaremx_uqty[i]
  1770. // w_scanbill.dw_child.Object.u_scanbillmx_scanqty[ll_row] = 0
  1771. //
  1772. //
  1773. // NEXT
  1774. //
  1775. //
  1776. //
  1777. //
  1778. //
  1779. //Catch (RuntimeError rrrr)
  1780. // RETURN
  1781. //END TRY
  1782. //
  1783. //
  1784. //
  1785. end event
  1786. event constructor;//系统选项267销售发货单,销售退货单 扫描数不等于出仓数不能仓审
  1787. IF sys_option_check_scanqty = 1 THEN
  1788. This.Visible = True
  1789. ELSE
  1790. This.Visible = False
  1791. END IF
  1792. end event