w_rp_cust_saletask.srw 44 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879
  1. $PBExportHeader$w_rp_cust_saletask.srw
  2. forward
  3. global type w_rp_cust_saletask from w_publ_easyq
  4. end type
  5. type dw_3 from u_dw_rbtnfilter within w_rp_cust_saletask
  6. end type
  7. type cbx_ifdate from checkbox within w_rp_cust_saletask
  8. end type
  9. type tv_1 from uo_tv_cusarea within w_rp_cust_saletask
  10. end type
  11. type cb_bill from uo_imflatbutton within w_rp_cust_saletask
  12. end type
  13. type st_1 from statictext within w_rp_cust_saletask
  14. end type
  15. type ddlb_1 from dropdownlistbox within w_rp_cust_saletask
  16. end type
  17. type ddlb_retrstatus from dropdownlistbox within w_rp_cust_saletask
  18. end type
  19. type st_5 from statictext within w_rp_cust_saletask
  20. end type
  21. type ddlb_scid from uo_ddlb_scid within w_rp_cust_saletask
  22. end type
  23. type cb_outware_info from uo_imflatbutton within w_rp_cust_saletask
  24. end type
  25. type cb_add_sale from uo_imflatbutton within w_rp_cust_saletask
  26. end type
  27. type cbx_all from checkbox within w_rp_cust_saletask
  28. end type
  29. type cb_4 from uo_imflatbutton within w_rp_cust_saletask
  30. end type
  31. type cbx_1 from checkbox within w_rp_cust_saletask
  32. end type
  33. type cbx_iffinish from checkbox within w_rp_cust_saletask
  34. end type
  35. type s_mx_arr from structure within w_rp_cust_saletask
  36. end type
  37. type s_mx from structure within w_rp_cust_saletask
  38. end type
  39. end forward
  40. type s_mx_arr from structure
  41. s_mx mx[]
  42. end type
  43. type s_mx from structure
  44. long scid
  45. long taskid
  46. long printid
  47. end type
  48. global type w_rp_cust_saletask from w_publ_easyq
  49. integer width = 5353
  50. string title = "销售订单明细跟踪表"
  51. event retrieve_dw2 ( long arg_custid, long arg_mtrlid )
  52. event ue_outware_info ( )
  53. event ue_retrieve_info ( )
  54. event ue_view_workpricetable ( )
  55. event ue_outware_add_hz ( )
  56. event ue_outware_add ( )
  57. dw_3 dw_3
  58. cbx_ifdate cbx_ifdate
  59. tv_1 tv_1
  60. cb_bill cb_bill
  61. st_1 st_1
  62. ddlb_1 ddlb_1
  63. ddlb_retrstatus ddlb_retrstatus
  64. st_5 st_5
  65. ddlb_scid ddlb_scid
  66. cb_outware_info cb_outware_info
  67. cb_add_sale cb_add_sale
  68. cbx_all cbx_all
  69. cb_4 cb_4
  70. cbx_1 cbx_1
  71. cbx_iffinish cbx_iffinish
  72. end type
  73. global w_rp_cust_saletask w_rp_cust_saletask
  74. type variables
  75. int cur_status = 1 //当前查询订单状态// -1 所有
  76. int cur_stattype = 0
  77. long cur_scid_arr[]
  78. String ls_areaname = ''
  79. long cur_scid = 0
  80. int li_type = 0 //控制界面
  81. int cur_ifstop=0
  82. int cur_iffinish = 0
  83. Long ins_if_info = 0,ins_if_saleout_info = 0
  84. end variables
  85. forward prototypes
  86. public subroutine wf_outware_add (long arg_scid[], long arg_taskid[], long arg_printid[], ref string arg_msg)
  87. end prototypes
  88. event ue_outware_info();IF Not f_power_ind(267) THEN
  89. MessageBox(publ_operator,'没有使用权限!')
  90. RETURN
  91. END IF
  92. Long ll_row
  93. ll_row = dw_1.GetRow()
  94. IF ll_row <= 0 THEN
  95. RETURN
  96. END IF
  97. Long ll_scid,ll_taskid,ll_printid
  98. ll_scid = dw_1.Object.u_saletaskmx_scid[ll_row]
  99. ll_taskid = dw_1.Object.u_saletask_taskid[ll_row]
  100. ll_printid = dw_1.Object.u_saletaskmx_printid[ll_row]
  101. s_edit_index_tran s_tran_info
  102. s_tran_info.b_long = ll_scid
  103. s_tran_info.c_long = ll_taskid
  104. s_tran_info.d_long = ll_printid
  105. IF IsValid(w_outware_sale_info) THEN
  106. w_outware_sale_info.WindowState = Normal!
  107. w_outware_sale_info.ins_scid = ll_scid
  108. w_outware_sale_info.ins_taskid = ll_taskid
  109. w_outware_sale_info.ins_printid = ll_printid
  110. w_outware_sale_info.wf_retrieve(ll_scid,ll_taskid,ll_printid)
  111. ELSE
  112. OpenWithParm(w_outware_sale_info,s_tran_info)
  113. END IF
  114. end event
  115. event ue_retrieve_info();Long ll_row
  116. Long ll_scid,ll_taskid,ll_printid
  117. ll_row = dw_1.GetRow()
  118. IF ll_row <= 0 THEN
  119. ll_scid = 0
  120. ll_taskid = 0
  121. ll_printid = 0
  122. ELSE
  123. ll_scid = dw_1.Object.u_saletaskmx_scid[ll_row]
  124. ll_taskid = dw_1.Object.u_saletask_taskid[ll_row]
  125. ll_printid = dw_1.Object.u_saletaskmx_printid[ll_row]
  126. END IF
  127. IF IsValid(w_outware_sale_info) THEN
  128. w_outware_sale_info.WindowState = Normal!
  129. w_outware_sale_info.ins_scid = ll_scid
  130. w_outware_sale_info.ins_taskid = ll_taskid
  131. w_outware_sale_info.ins_printid = ll_printid
  132. w_outware_sale_info.wf_retrieve(ll_scid,ll_taskid,ll_printid)
  133. END IF
  134. end event
  135. event ue_view_workpricetable();IF Not f_power_ind(1335) THEN
  136. MessageBox(publ_operator,'没有使用权限!')
  137. RETURN
  138. END IF
  139. string ls_mtrlcode
  140. if dw_1.getrow() <= 0 then
  141. MessageBox(publ_operator,"请选择目标行")
  142. return
  143. end if
  144. ls_mtrlcode = dw_1.object.u_mtrldef_mtrlcode[dw_1.getrow()]
  145. s_edit_index_tran s_tran
  146. s_tran.work_mode = 0
  147. s_tran.arg_pkid = 0
  148. s_tran.arg_string_code = ls_mtrlcode
  149. s_tran.c_long = 0
  150. s_tran.d_long = 2
  151. s_tran.if_retrieve_all = local_retrieve_all
  152. openwithparm(w_sc_workpricetable, s_tran)
  153. end event
  154. event ue_outware_add_hz();Long arr_cusid[]
  155. String arr_outrep[]
  156. String arr_rel_address[]
  157. String arr_rel_rep[]
  158. String arr_rel_tele[]
  159. Long arr_banktypeid[], ll_banktypeid
  160. Long arr_moneyid[], ll_moneyid
  161. Decimal arr_mrate[], ld_mrate
  162. Long arr_scid[]
  163. s_mx_arr bills[]
  164. String arr_part[]
  165. String arr_dscrp[]
  166. String arr_dscrp2[], ls_dscrp2
  167. Decimal arr_otheramt[], ld_otheramt
  168. Decimal arr_damt[], ld_damt
  169. String arr_freight[]
  170. String arr_freight_tele[]
  171. String arr_cus_fax[]
  172. Long ll_scid,ll_taskid,ll_printid
  173. Long cnt = 0
  174. Long i, j
  175. IF Not (f_power_ind(11) Or f_power_ind(869)) THEN
  176. MessageBox(publ_operator,'没有使用权限!')
  177. RETURN
  178. END IF
  179. FOR i = 1 To dw_1.RowCount()
  180. IF dw_1.Object.ch[i] = 1 THEN
  181. ll_scid = dw_1.Object.u_saletaskmx_scid[i]
  182. ll_taskid = dw_1.Object.u_saletask_taskid[i]
  183. ll_printid = dw_1.Object.u_saletaskmx_printid[i]
  184. SELECT banktypeid, moneyid, mrate, dscrp2, otheramt, damt
  185. INTO :ll_banktypeid, :ll_moneyid, :ld_mrate, :ls_dscrp2, :ld_otheramt, :ld_damt
  186. FROM u_saletask
  187. WHERE scid = :ll_scid
  188. And taskid = :ll_taskid;
  189. IF sqlca.SQLCode <> 0 THEN
  190. MessageBox('ERROR', '查询订单相关信息失败,' + sqlca.SQLErrText)
  191. RETURN
  192. END IF
  193. FOR j = 1 To UpperBound(arr_cusid)
  194. IF arr_cusid[j] = dw_1.Object.u_saletask_cusid[i] &
  195. And arr_outrep[j] = dw_1.Object.u_saletask_assign_emp[i] &
  196. And arr_rel_address[j] = dw_1.Object.cus_address[i] &
  197. And arr_rel_rep[j] = dw_1.Object.rel_rep[i] &
  198. And arr_rel_tele[j] = dw_1.Object.cus_tele[i] &
  199. And arr_banktypeid[j] = ll_banktypeid &
  200. And arr_moneyid[j] = ll_moneyid &
  201. And arr_mrate[j] = ld_mrate &
  202. And arr_scid[j] = ll_scid THEN
  203. EXIT
  204. END IF
  205. NEXT
  206. IF j > UpperBound(arr_cusid) THEN
  207. arr_cusid[j] = dw_1.Object.u_saletask_cusid[i]
  208. arr_outrep[j] = dw_1.Object.u_saletask_assign_emp[i]
  209. arr_rel_address[j] = dw_1.Object.cus_address[i]
  210. arr_rel_rep[j] = dw_1.Object.rel_rep[i]
  211. arr_rel_tele[j] = dw_1.Object.cus_tele[i]
  212. arr_banktypeid[j] = ll_banktypeid
  213. arr_moneyid[j] = ll_moneyid
  214. arr_mrate[j] = ld_mrate
  215. arr_scid[j] = ll_scid
  216. arr_part[j] = dw_1.Object.u_saletask_relcode[i]
  217. arr_dscrp[j] = dw_1.Object.dscrp[i]
  218. arr_dscrp2[j] = ls_dscrp2
  219. arr_otheramt[j] = ld_otheramt
  220. arr_damt[j] = ld_damt
  221. arr_freight[j] = dw_1.Object.freight[i]
  222. arr_freight_tele[j] = dw_1.Object.freight_tele[i]
  223. arr_cus_fax[j] = dw_1.Object.cus_fax[i]
  224. bills[j].mx[1].scid = ll_scid
  225. bills[j].mx[1].taskid = ll_taskid
  226. bills[j].mx[1].printid = ll_printid
  227. ELSE
  228. IF Pos(arr_part[j], dw_1.Object.u_saletask_relcode[i]) <= 0 THEN
  229. IF arr_part[j] = '' THEN
  230. arr_part[j] = dw_1.Object.u_saletask_relcode[i]
  231. ELSE
  232. arr_part[j] += ";" + dw_1.Object.u_saletask_relcode[i]
  233. END IF
  234. END IF
  235. IF Pos(arr_dscrp[j], dw_1.Object.dscrp[i]) <= 0 THEN
  236. IF arr_dscrp[j] = '' THEN
  237. arr_dscrp[j] = dw_1.Object.dscrp[i]
  238. ELSE
  239. arr_dscrp[j] += ";" + dw_1.Object.dscrp[i]
  240. END IF
  241. END IF
  242. IF Pos(arr_dscrp2[j], ls_dscrp2) <= 0 THEN
  243. IF arr_dscrp2[j] = '' THEN
  244. arr_dscrp2[j] = ls_dscrp2
  245. ELSE
  246. arr_dscrp2[j] += ";" + ls_dscrp2
  247. END IF
  248. END IF
  249. cnt = UpperBound(bills[j].mx)
  250. IF Not (bills[j].mx[cnt].scid = ll_scid And &
  251. bills[j].mx[cnt].taskid = ll_taskid) THEN
  252. arr_otheramt[j] += ld_otheramt
  253. arr_damt[j] += ld_damt
  254. END IF
  255. cnt = cnt + 1
  256. bills[j].mx[cnt].scid = ll_scid
  257. bills[j].mx[cnt].taskid = ll_taskid
  258. bills[j].mx[cnt].printid = ll_printid
  259. IF Pos(arr_freight[j], dw_1.Object.freight[i]) <= 0 THEN
  260. IF arr_freight[j] = '' THEN
  261. arr_freight[j] = dw_1.Object.freight[i]
  262. ELSE
  263. arr_freight[j] += ";" + dw_1.Object.freight[i]
  264. END IF
  265. END IF
  266. IF Pos(arr_freight_tele[j], dw_1.Object.freight_tele[i]) <= 0 THEN
  267. IF arr_freight_tele[j] = '' THEN
  268. arr_freight_tele[j] = dw_1.Object.freight_tele[i]
  269. ELSE
  270. arr_freight_tele[j] += ";" + dw_1.Object.freight_tele[i]
  271. END IF
  272. END IF
  273. IF Pos(arr_cus_fax[j], dw_1.Object.cus_fax[i]) <= 0 THEN
  274. IF arr_cus_fax[j] = '' THEN
  275. arr_cus_fax[j] = dw_1.Object.cus_fax[i]
  276. ELSE
  277. arr_cus_fax[j] += ";" + dw_1.Object.cus_fax[i]
  278. END IF
  279. END IF
  280. END IF
  281. END IF
  282. NEXT
  283. cnt = UpperBound(arr_cusid)
  284. String ls_msg = ''
  285. IF cnt <= 0 THEN
  286. MessageBox('', '请选择订单明细')
  287. RETURN
  288. END IF
  289. // TODO: 销售订单明细没有选择齐应该不允许
  290. uo_outware_sale uo_ware
  291. s_edit_index_tran s_ch
  292. Long storageid // 仓库
  293. Long ll_ok
  294. DateTime dt_server
  295. String arg_Msg
  296. Long mx_mtrlwareid
  297. Decimal mx_qty
  298. Decimal mx_addqty
  299. Decimal mx_fprice
  300. Decimal mx_rebate
  301. String mx_mxdscrp
  302. Long mx_printid
  303. Integer mx_ifrel
  304. Long mx_relid
  305. Long mx_relprintid
  306. Long mx_olmtrlid
  307. Long mx_packqty
  308. Int mx_outtype
  309. String mx_unit
  310. Decimal mx_rate
  311. String mx_mtrlcuscode
  312. String mx_formula
  313. String mx_mxdscrp2
  314. s_outwaremx s_mx
  315. Open(w_storage_index_ch)
  316. s_ch = Message.PowerObjectParm
  317. IF s_ch.c_long = 0 THEN RETURN
  318. storageid = s_ch.c_long
  319. SELECT top 1
  320. GETDATE()
  321. INTO :dt_server
  322. From u_user;
  323. IF sqlca.SQLCode <> 0 THEN
  324. MessageBox('ERROR', '查询服务器时间失败,' + sqlca.SQLErrText)
  325. RETURN
  326. END IF
  327. uo_ware = Create uo_outware_sale
  328. uo_ware.commit_transaction = sqlca
  329. ls_msg = ''
  330. Long arr_taskid[], arr_empty[], k
  331. s_outware_itemmx s_item[]
  332. FOR i = 1 To UpperBound(arr_cusid)
  333. ll_ok = 1
  334. IF uo_ware.newbegin(arr_scid[i],1,arg_Msg) = 0 THEN
  335. ll_ok = 0
  336. ls_msg += '失败,生成发货单失败,' + arg_Msg + '~r~n'
  337. GOTO _next
  338. END IF
  339. uo_ware.outdate = dt_server // 发生时间
  340. uo_ware.outrep = arr_outrep[i]
  341. IF Len(Trim(arr_part[i])) > 50 THEN
  342. arr_part[i] = Left(Trim(arr_part[i]),47) + '...'
  343. END IF
  344. uo_ware.part = arr_part[i]
  345. uo_ware.dscrp = arr_dscrp[i]
  346. uo_ware.dscrp2 = arr_dscrp2[i]
  347. uo_ware.cusid = arr_cusid[i]
  348. uo_ware.storageid = storageid
  349. uo_ware.relid = 0
  350. uo_ware.relint_1 = arr_banktypeid[i]
  351. uo_ware.relint_2 = arr_moneyid[i]
  352. uo_ware.relstr_1 = arr_freight[i]
  353. uo_ware.relstr_2 = arr_freight_tele[i]
  354. uo_ware.otheramt = arr_otheramt[i]
  355. uo_ware.deposit = arr_damt[i]
  356. uo_ware.mrate = arr_mrate[i]
  357. uo_ware.thflag = 0
  358. uo_ware.rel_address = arr_rel_address[i]
  359. uo_ware.rel_tele = arr_rel_tele[i]
  360. uo_ware.rel_fax = arr_cus_fax[i]
  361. uo_ware.rel_rep = arr_rel_rep[i]
  362. arr_taskid = arr_empty
  363. FOR j = 1 To UpperBound(bills[i].mx)
  364. SELECT TOP 1 u_mtrlware.mtrlwareid,
  365. u_SaleTaskMx.SaleQty,
  366. u_SaleTaskMx.fprice,
  367. u_SaleTaskMx.rebate,
  368. u_SaleTaskMx.mxdscrp,
  369. u_SaleTaskMx.MtrlID,
  370. u_mtrldef.packqty,
  371. u_SaleTaskMx.outtype,
  372. u_mtrldef.unit,
  373. u_SaleTaskMx.mtrlcuscode,
  374. u_SaleTaskMx.printid,
  375. u_saletaskmx.mxdscrp2
  376. INTO :mx_mtrlwareid,
  377. :mx_qty,
  378. :mx_fprice,
  379. :mx_rebate,
  380. :mx_mxdscrp,
  381. :mx_olmtrlid,
  382. :mx_packqty,
  383. :mx_outtype,
  384. :mx_unit,
  385. :mx_mtrlcuscode,
  386. :mx_relprintid,
  387. :mx_mxdscrp2
  388. FROM u_SaleTaskMx INNER JOIN
  389. u_mtrlware ON u_SaleTaskMx.MtrlID = u_mtrlware.mtrlid AND u_SaleTaskMx.status = u_mtrlware.Status AND
  390. u_SaleTaskMx.woodcode = u_mtrlware.woodcode AND u_SaleTaskMx.pcode = u_mtrlware.pcode INNER JOIN
  391. u_mtrldef ON u_SaleTaskMx.MtrlID = u_mtrldef.mtrlid
  392. WHERE (u_SaleTaskMx.scid = :bills[i].mx[j].scid)
  393. AND (u_SaleTaskMx.TaskID = :bills[i].mx[j].taskid)
  394. AND (u_SaleTaskMx.printid = :bills[i].mx[j].printid)
  395. And (u_mtrlware.storageid = :storageid);
  396. IF sqlca.SQLCode <> 0 THEN
  397. ll_ok = 0
  398. ls_msg += '失败,查询订单明细库存失败taskid:'+String(bills[i].mx[j].taskid)+',printid:'+String(bills[i].mx[j].printid)+',' + sqlca.SQLErrText + '~r~n'
  399. GOTO _next
  400. END IF
  401. mx_printid = j
  402. mx_addqty = 0
  403. mx_ifrel = 1
  404. mx_relid = bills[i].mx[j].taskid
  405. mx_rate = 1
  406. mx_formula = ''
  407. s_mx.mtrlwareid = mx_mtrlwareid
  408. s_mx.qty = mx_qty
  409. s_mx.addqty = mx_addqty
  410. s_mx.fprice = mx_fprice
  411. s_mx.rebate = mx_rebate
  412. s_mx.mxdscrp = mx_mxdscrp
  413. s_mx.printid = mx_printid
  414. s_mx.ifrel = mx_ifrel
  415. s_mx.relid = mx_relid
  416. s_mx.relprintid = mx_relprintid
  417. s_mx.relid2 = 0
  418. s_mx.olmtrlid = 0
  419. s_mx.packqty = mx_packqty
  420. s_mx.outtype = mx_outtype
  421. s_mx.unit = mx_unit
  422. s_mx.rate = mx_rate
  423. s_mx.mtrlcuscode = mx_mtrlcuscode
  424. s_mx.formula = mx_formula
  425. s_mx.mxdscrp2 = mx_mxdscrp2
  426. IF uo_ware.acceptmx(s_mx, arg_Msg) = 0 THEN
  427. ll_ok = 0
  428. ls_msg += '失败,添加发货明细失败,' + arg_Msg + '~r~n'
  429. GOTO _next
  430. END IF
  431. FOR k = 1 To UpperBound(arr_taskid)
  432. IF arr_taskid[k] = mx_relid THEN
  433. EXIT
  434. END IF
  435. NEXT
  436. arr_taskid[k] = mx_relid
  437. NEXT
  438. k = 1
  439. FOR j = 1 To UpperBound(arr_taskid)
  440. DECLARE cur1 CURSOR FOR
  441. SELECT itemid, amt, mxdscrp, printid, itype
  442. FROM u_saletask_itemmx
  443. WHERE scid = :arr_scid[i]
  444. AND saletaskid = :arr_taskid[j]
  445. Order By printid;
  446. OPEN cur1;
  447. FETCH cur1 Into :s_item[k].itemid, :s_item[k].amt, :s_item[k].mxdscrp, :s_item[k].saletaskprintid, :s_item[k].itype;
  448. DO WHILE sqlca.SQLCode = 0
  449. s_item[k].printid = k
  450. s_item[k].saletaskid = arr_taskid[j]
  451. k++
  452. FETCH cur1 Into :s_item[k].itemid, :s_item[k].amt, :s_item[k].mxdscrp, :s_item[k].saletaskprintid, :s_item[k].itype;
  453. LOOP
  454. CLOSE cur1;
  455. NEXT
  456. k = k - 1
  457. FOR j = 1 To k
  458. IF uo_ware.acceptmx_item(s_item[j], arg_Msg) = 0 THEN
  459. ll_ok = 0
  460. ls_msg += '失败,添加费用明细失败,' + arg_Msg + '~r~n'
  461. GOTO _next
  462. END IF
  463. NEXT
  464. IF uo_ware.Save(False,arg_Msg) = 0 THEN
  465. ll_ok = 0
  466. ls_msg += '失败,订单保存发货单失败,' + arg_Msg + '~r~n'
  467. GOTO _next
  468. END IF
  469. _next:
  470. IF ll_ok = 1 THEN
  471. COMMIT;
  472. ls_msg += '生成发货单成功,单号:"'+uo_ware.outwarecode+'"~r~n'
  473. ELSE
  474. ROLLBACK;
  475. END IF
  476. NEXT
  477. Destroy uo_ware
  478. IF ls_msg <> '' THEN
  479. OpenWithParm(w_message_err,ls_msg)
  480. // MessageBox('', ls_msg)
  481. ELSE
  482. MessageBox('提示', '生成成功')
  483. END IF
  484. end event
  485. event ue_outware_add();Long arr_scid[]
  486. Long arr_taskid[]
  487. Long arr_printid[]
  488. Long cnt = 0
  489. Long i
  490. IF Not (f_power_ind(11) Or f_power_ind(869)) THEN
  491. MessageBox(publ_operator,'没有使用权限!')
  492. RETURN
  493. END IF
  494. FOR i = 1 To dw_1.RowCount()
  495. IF dw_1.Object.ch[i] = 1 THEN
  496. cnt++
  497. arr_scid[cnt] = dw_1.Object.u_saletaskmx_scid[i]
  498. arr_taskid[cnt] = dw_1.Object.u_saletask_taskid[i]
  499. arr_printid[cnt] = dw_1.Object.u_saletaskmx_printid[i]
  500. END IF
  501. NEXT
  502. String ls_msg = ''
  503. IF cnt <= 0 THEN
  504. ls_msg = '请选择订单明细'
  505. GOTO ext
  506. END IF
  507. wf_outware_add(arr_scid, arr_taskid, arr_printid, ls_msg)
  508. ext:
  509. IF ls_msg <> '' THEN
  510. OpenWithParm(w_message_err,ls_msg)
  511. // MessageBox('', ls_msg)
  512. ELSE
  513. MessageBox('提示', '生成成功')
  514. END IF
  515. end event
  516. public subroutine wf_outware_add (long arg_scid[], long arg_taskid[], long arg_printid[], ref string arg_msg);
  517. arg_msg = ''
  518. uo_outware_sale uo_ware
  519. s_edit_index_tran arr_task[]
  520. s_edit_index_tran s_ch
  521. Long cnt = 0
  522. Long i, j, k
  523. String ls_msg
  524. Long ll_ok
  525. DateTime dt_server
  526. String ls_taskcode
  527. String outrep // 业务员
  528. String part // 相关号
  529. String dscrp // 备注
  530. Long cusid // 客户
  531. Long storageid // 仓库
  532. Long relid //
  533. Long relint_1 // 结算方式
  534. Long relint_2 // 币种
  535. String relstr_1 // 货运部
  536. String relstr_2 // 货运部电话
  537. Decimal otheramt // 优惠金额
  538. Decimal damt // 订金
  539. Decimal mrate // 汇率
  540. String rel_address // 客户地址
  541. String rel_tele // 客户电话
  542. String rel_fax // 客户传真
  543. String rel_rep // 联系人
  544. Long mx_mtrlwareid
  545. Decimal mx_qty
  546. Decimal mx_addqty
  547. Decimal mx_fprice
  548. Decimal mx_rebate
  549. String mx_mxdscrp
  550. Long mx_printid
  551. Integer mx_ifrel
  552. Long mx_relid
  553. Long mx_relprintid
  554. Long mx_olmtrlid
  555. Long mx_packqty
  556. Int mx_outtype
  557. String mx_unit
  558. Decimal mx_rate
  559. String mx_mtrlcuscode
  560. String mx_formula
  561. String mx_mxdscrp2
  562. s_outwaremx s_mx
  563. s_outware_itemmx s_item[]
  564. uo_ware = Create uo_outware_sale
  565. uo_ware.commit_transaction = sqlca
  566. FOR i = 1 To UpperBound(arg_scid)
  567. FOR j = 1 To cnt
  568. IF arr_task[j].b_long = arg_scid[i] And arr_task[j].c_long = arg_taskid[i] THEN
  569. EXIT
  570. END IF
  571. NEXT
  572. IF j > cnt THEN
  573. cnt++
  574. arr_task[cnt].b_long = arg_scid[i]
  575. arr_task[cnt].c_long = arg_taskid[i]
  576. arr_task[cnt].arr_long2[1] = arg_printid[i]
  577. ELSE
  578. k = UpperBound(arr_task[j].arr_long2) + 1
  579. arr_task[j].arr_long2[k] = arg_printid[i]
  580. END IF
  581. NEXT
  582. IF cnt <= 0 THEN
  583. arg_msg = '请选择订单明细'
  584. GOTO ext
  585. END IF
  586. SELECT top 1
  587. GETDATE()
  588. INTO :dt_server
  589. From u_user;
  590. IF sqlca.SQLCode <> 0 THEN
  591. arg_msg = '查询服务器时间失败,' + sqlca.SQLErrText
  592. GOTO ext
  593. END IF
  594. Open(w_storage_index_ch)
  595. s_ch = Message.PowerObjectParm
  596. IF s_ch.c_long = 0 THEN RETURN
  597. storageid = s_ch.c_long
  598. relid = 0
  599. FOR i = 1 To cnt
  600. ll_ok = 1
  601. SELECT taskcode,
  602. assign_emp,
  603. relcode,
  604. dscrp,
  605. cusid,
  606. banktypeid,
  607. moneyid,
  608. freight,
  609. freight_tele,
  610. otheramt,
  611. damt,
  612. mrate,
  613. cus_address,
  614. cus_tele,
  615. cus_fax,
  616. rel_rep
  617. INTO :ls_taskcode,
  618. :outrep,
  619. :part,
  620. :dscrp,
  621. :cusid,
  622. :relint_1,
  623. :relint_2,
  624. :relstr_1,
  625. :relstr_2,
  626. :otheramt,
  627. :damt,
  628. :mrate,
  629. :rel_address,
  630. :rel_tele,
  631. :rel_fax,
  632. :rel_rep
  633. FROM u_saletask
  634. WHERE scid = :arr_task[i].b_long
  635. And taskid = :arr_task[i].c_long;
  636. IF sqlca.SQLCode <> 0 THEN
  637. ll_ok = 0
  638. arg_msg += '订单[taskid='+String(arr_task[i].c_long)+']查询订单编号失败,' + sqlca.SQLErrText + '~r~n'
  639. GOTO _next
  640. END IF
  641. IF uo_ware.newbegin(arr_task[i].b_long,1,ls_msg) = 0 THEN
  642. ll_ok = 0
  643. arg_msg += '订单['+ls_taskcode+']新建发货单失败,' + ls_msg + '~r~n'
  644. GOTO _next
  645. END IF
  646. uo_ware.outdate = dt_server // 发生时间
  647. uo_ware.outrep = outrep
  648. uo_ware.part = part
  649. uo_ware.dscrp = dscrp
  650. uo_ware.cusid = cusid
  651. uo_ware.storageid = storageid
  652. uo_ware.relid = relid
  653. uo_ware.relint_1 = relint_1
  654. uo_ware.relint_2 = relint_2
  655. uo_ware.relstr_1 = relstr_1
  656. uo_ware.relstr_2 = relstr_2
  657. uo_ware.otheramt = otheramt
  658. uo_ware.deposit = damt
  659. uo_ware.mrate = mrate
  660. uo_ware.thflag = 0
  661. uo_ware.rel_address = rel_address
  662. uo_ware.rel_tele = rel_tele
  663. uo_ware.rel_fax = rel_fax
  664. uo_ware.rel_rep = rel_rep
  665. FOR j = 1 To UpperBound(arr_task[i].arr_long2)
  666. SELECT TOP 1 u_mtrlware.mtrlwareid,
  667. u_SaleTaskMx.SaleQty,
  668. u_SaleTaskMx.fprice,
  669. u_SaleTaskMx.rebate,
  670. u_SaleTaskMx.mxdscrp,
  671. u_SaleTaskMx.MtrlID,
  672. u_mtrldef.packqty,
  673. u_SaleTaskMx.outtype,
  674. u_mtrldef.unit,
  675. u_SaleTaskMx.mtrlcuscode,
  676. u_SaleTaskMx.printid,
  677. u_saletaskmx.mxdscrp2
  678. INTO :mx_mtrlwareid,
  679. :mx_qty,
  680. :mx_fprice,
  681. :mx_rebate,
  682. :mx_mxdscrp,
  683. :mx_olmtrlid,
  684. :mx_packqty,
  685. :mx_outtype,
  686. :mx_unit,
  687. :mx_mtrlcuscode,
  688. :mx_relprintid,
  689. :mx_mxdscrp2
  690. FROM u_SaleTaskMx INNER JOIN
  691. u_mtrlware ON u_SaleTaskMx.MtrlID = u_mtrlware.mtrlid AND u_SaleTaskMx.status = u_mtrlware.Status AND
  692. u_SaleTaskMx.woodcode = u_mtrlware.woodcode AND u_SaleTaskMx.pcode = u_mtrlware.pcode INNER JOIN
  693. u_mtrldef ON u_SaleTaskMx.MtrlID = u_mtrldef.mtrlid
  694. WHERE (u_SaleTaskMx.scid = :arr_task[i].b_long)
  695. AND (u_SaleTaskMx.TaskID = :arr_task[i].c_long)
  696. AND (u_SaleTaskMx.printid = :arr_task[i].arr_long2[j])
  697. And (u_mtrlware.storageid = :storageid);
  698. IF sqlca.SQLCode <> 0 THEN
  699. ll_ok = 0
  700. arg_msg += '订单['+ls_taskcode+']查询订单明细库存失败,' + ls_msg + '~r~n'
  701. GOTO _next
  702. END IF
  703. mx_printid = j
  704. mx_addqty = 0
  705. mx_ifrel = 1
  706. mx_relid = arr_task[i].c_long
  707. mx_rate = 1
  708. mx_formula = ''
  709. s_mx.mtrlwareid = mx_mtrlwareid
  710. s_mx.qty = mx_qty
  711. s_mx.addqty = mx_addqty
  712. s_mx.fprice = mx_fprice
  713. s_mx.rebate = mx_rebate
  714. s_mx.mxdscrp = mx_mxdscrp
  715. s_mx.printid = mx_printid
  716. s_mx.ifrel = mx_ifrel
  717. s_mx.relid = mx_relid
  718. s_mx.relprintid = mx_relprintid
  719. s_mx.relid2 = 0
  720. s_mx.olmtrlid = 0
  721. s_mx.packqty = mx_packqty
  722. s_mx.outtype = mx_outtype
  723. s_mx.unit = mx_unit
  724. s_mx.rate = mx_rate
  725. s_mx.mtrlcuscode = mx_mtrlcuscode
  726. s_mx.formula = mx_formula
  727. s_mx.mxdscrp2 = mx_mxdscrp2
  728. IF uo_ware.acceptmx(s_mx, ls_msg) = 0 THEN
  729. ll_ok = 0
  730. arg_msg += '订单['+ls_taskcode+']添加发货明细失败,' + ls_msg + '~r~n'
  731. GOTO _next
  732. END IF
  733. // IF uo_ware.acceptmx_sale(mx_mtrlwareid,&
  734. // mx_qty,&
  735. // mx_addqty,&
  736. // mx_fprice,&
  737. // mx_rebate,&
  738. // mx_mxdscrp,&
  739. // mx_printid,&
  740. // Ref ls_msg,&
  741. // mx_ifrel,&
  742. // mx_relid,&
  743. // mx_relprintid,&
  744. // 0,0,mx_packqty,&
  745. // mx_outtype,&
  746. // mx_unit,&
  747. // mx_rate,&
  748. // mx_mtrlcuscode,&
  749. // mx_formula,&
  750. // mx_mxdscrp2) = 0 THEN
  751. // ll_ok = 0
  752. // arg_msg += '订单['+ls_taskcode+']添加发货明细失败,' + ls_msg + '~r~n'
  753. // GOTO _next
  754. // END IF
  755. NEXT
  756. k = 1
  757. DECLARE cur1 CURSOR FOR
  758. SELECT itemid, amt, mxdscrp, printid, itype
  759. FROM u_saletask_itemmx
  760. WHERE scid = :arr_task[i].b_long
  761. AND saletaskid = :arr_task[i].c_long
  762. Order By printid;
  763. OPEN cur1;
  764. FETCH cur1 Into :s_item[k].itemid, :s_item[k].amt, :s_item[k].mxdscrp, :s_item[k].saletaskprintid, :s_item[k].itype;
  765. DO WHILE sqlca.SQLCode = 0
  766. s_item[k].printid = k
  767. s_item[k].saletaskid = arr_task[i].c_long
  768. k++
  769. FETCH cur1 Into :s_item[k].itemid, :s_item[k].amt, :s_item[k].mxdscrp, :s_item[k].saletaskprintid, :s_item[k].itype;
  770. LOOP
  771. CLOSE cur1;
  772. k = k - 1
  773. FOR j = 1 To k
  774. IF uo_ware.acceptmx_item(s_item[j], arg_msg) = 0 THEN
  775. ll_ok = 0
  776. ls_msg += '失败,添加费用明细失败,' + arg_msg + '~r~n'
  777. GOTO _next
  778. END IF
  779. NEXT
  780. IF uo_ware.Save(False,ls_msg) = 0 THEN
  781. ll_ok = 0
  782. arg_msg += '订单['+ls_taskcode+']保存发货单失败,' + ls_msg + '~r~n'
  783. GOTO _next
  784. END IF
  785. _next:
  786. IF ll_ok = 1 THEN
  787. COMMIT;
  788. arg_msg += '订单['+ls_taskcode+']生成发货单成功,单号:"'+uo_ware.outwarecode+'"~r~n'
  789. ELSE
  790. ROLLBACK;
  791. END IF
  792. NEXT
  793. ext:
  794. Destroy uo_ware
  795. RETURN
  796. end subroutine
  797. on w_rp_cust_saletask.create
  798. int iCurrent
  799. call super::create
  800. this.dw_3=create dw_3
  801. this.cbx_ifdate=create cbx_ifdate
  802. this.tv_1=create tv_1
  803. this.cb_bill=create cb_bill
  804. this.st_1=create st_1
  805. this.ddlb_1=create ddlb_1
  806. this.ddlb_retrstatus=create ddlb_retrstatus
  807. this.st_5=create st_5
  808. this.ddlb_scid=create ddlb_scid
  809. this.cb_outware_info=create cb_outware_info
  810. this.cb_add_sale=create cb_add_sale
  811. this.cbx_all=create cbx_all
  812. this.cb_4=create cb_4
  813. this.cbx_1=create cbx_1
  814. this.cbx_iffinish=create cbx_iffinish
  815. iCurrent=UpperBound(this.Control)
  816. this.Control[iCurrent+1]=this.dw_3
  817. this.Control[iCurrent+2]=this.cbx_ifdate
  818. this.Control[iCurrent+3]=this.tv_1
  819. this.Control[iCurrent+4]=this.cb_bill
  820. this.Control[iCurrent+5]=this.st_1
  821. this.Control[iCurrent+6]=this.ddlb_1
  822. this.Control[iCurrent+7]=this.ddlb_retrstatus
  823. this.Control[iCurrent+8]=this.st_5
  824. this.Control[iCurrent+9]=this.ddlb_scid
  825. this.Control[iCurrent+10]=this.cb_outware_info
  826. this.Control[iCurrent+11]=this.cb_add_sale
  827. this.Control[iCurrent+12]=this.cbx_all
  828. this.Control[iCurrent+13]=this.cb_4
  829. this.Control[iCurrent+14]=this.cbx_1
  830. this.Control[iCurrent+15]=this.cbx_iffinish
  831. end on
  832. on w_rp_cust_saletask.destroy
  833. call super::destroy
  834. destroy(this.dw_3)
  835. destroy(this.cbx_ifdate)
  836. destroy(this.tv_1)
  837. destroy(this.cb_bill)
  838. destroy(this.st_1)
  839. destroy(this.ddlb_1)
  840. destroy(this.ddlb_retrstatus)
  841. destroy(this.st_5)
  842. destroy(this.ddlb_scid)
  843. destroy(this.cb_outware_info)
  844. destroy(this.cb_add_sale)
  845. destroy(this.cbx_all)
  846. destroy(this.cb_4)
  847. destroy(this.cbx_1)
  848. destroy(this.cbx_iffinish)
  849. end on
  850. event open;call super::open;
  851. //f_title_change(dw_1)
  852. //
  853. //IF cbx_loginretr.Checked THEN
  854. // cb_1.TriggerEvent(Clicked!)
  855. //END IF
  856. ins_if_info = Long(f_ProfileString (sys_empid,'w_rp_cust_saletask', "ins_if_info",'0'))
  857. IF ins_if_info = 1 And f_power_ind(267) THEN
  858. This.PostEvent('ue_outware_info')
  859. END IF
  860. end event
  861. event resize;call super::resize;dw_3.Y = This.Height - (2300 - 1428 )
  862. tv_1.Height = This.Height - ( 2300 - 1128 )
  863. dw_1.Height = dw_3.Y + dw_3.Height - dw_1.Y
  864. end event
  865. event ue_before_open;call super::ue_before_open;if_ue_retr = true
  866. if_ue_filter = true
  867. if_ue_sort = true
  868. dw_3.SetTransObject (sqlca)
  869. end event
  870. event close;call super::close;
  871. IF IsValid(w_outware_sale_info) THEN
  872. ins_if_info = 1
  873. ELSE
  874. ins_if_info = 0
  875. END IF
  876. f_SetProfileString(sys_empid,"w_rp_cust_saletask","ins_if_info",String(ins_if_info))
  877. end event
  878. type cb_func from w_publ_easyq`cb_func within w_rp_cust_saletask
  879. integer x = 1728
  880. string text = "功能"
  881. end type
  882. type cb_exit from w_publ_easyq`cb_exit within w_rp_cust_saletask
  883. integer x = 2437
  884. end type
  885. type cb_2 from w_publ_easyq`cb_2 within w_rp_cust_saletask
  886. integer x = 2135
  887. boolean bringtotop = true
  888. end type
  889. type cb_psetup from w_publ_easyq`cb_psetup within w_rp_cust_saletask
  890. integer x = 1879
  891. boolean bringtotop = true
  892. end type
  893. type cb_1 from w_publ_easyq`cb_1 within w_rp_cust_saletask
  894. boolean bringtotop = true
  895. end type
  896. event cb_1::clicked;call super::clicked;Int li_ifdate
  897. DateTime first_date,end_date
  898. first_date = DateTime(Date(em_1.Text),Time(0))
  899. end_date = DateTime(Date(em_2.Text),Time('23:59:59'))
  900. IF cbx_ifdate.Checked THEN
  901. li_ifdate = 1
  902. ELSE
  903. li_ifdate = 0
  904. END IF
  905. dw_1.Retrieve(cur_scid_arr,sys_areaid,li_ifdate,cur_stattype,first_date,end_date,ls_areaname,cur_status,sys_user_outrep,sys_option_outrep,cur_ifstop,cur_iffinish)
  906. s_hide_col s_col,s_col_1
  907. s_col.col_1 = 'noamt'
  908. s_col.col_2 = 'cus_noallocqtyamt'
  909. s_col.col_3 = 'not_inqtyamt'
  910. s_col.col_4 = 'saleamt'
  911. s_col.col_5 = 'u_saletask_msttakeamt'
  912. s_col.col_6 = 'u_saletask_takeamt'
  913. s_col.col_7 = 'u_saletask_takedamt'
  914. s_col.col_8 = 'notakeamt'
  915. s_col.col_9 = 'stopamt'
  916. f_hide_col(122,dw_1,s_col)
  917. s_col_1.col_1 = 'p1'
  918. s_col_1.col_2 = 'p2'
  919. s_col_1.col_3 = 'enprice'
  920. s_col_1.col_4 = 'enamt'
  921. f_hide_col(122,dw_1,s_col_1)
  922. end event
  923. type st_3 from w_publ_easyq`st_3 within w_rp_cust_saletask
  924. integer x = 1408
  925. integer width = 215
  926. integer height = 48
  927. boolean enabled = true
  928. alignment alignment = left!
  929. end type
  930. type st_4 from w_publ_easyq`st_4 within w_rp_cust_saletask
  931. integer x = 2098
  932. integer height = 48
  933. boolean enabled = true
  934. end type
  935. type em_1 from w_publ_easyq`em_1 within w_rp_cust_saletask
  936. integer x = 1600
  937. integer y = 188
  938. integer width = 393
  939. boolean enabled = false
  940. end type
  941. type em_2 from w_publ_easyq`em_2 within w_rp_cust_saletask
  942. integer x = 2194
  943. integer y = 188
  944. integer width = 393
  945. boolean enabled = false
  946. end type
  947. type ddlb_yl from w_publ_easyq`ddlb_yl within w_rp_cust_saletask
  948. integer x = 3273
  949. end type
  950. type cbx_yl from w_publ_easyq`cbx_yl within w_rp_cust_saletask
  951. integer x = 3058
  952. integer y = 16
  953. end type
  954. type dw_1 from w_publ_easyq`dw_1 within w_rp_cust_saletask
  955. integer x = 1015
  956. integer y = 300
  957. integer width = 4297
  958. integer height = 1120
  959. string dataobject = "dw_rp_cust_saletask_1"
  960. boolean rbutton_filter_use = false
  961. boolean rbutton_setposition_use = false
  962. end type
  963. event dw_1::rowfocuschanged;call super::rowfocuschanged;Long ll_cusid,ll_mtrlid
  964. String ls_plancode,ls_status,ls_woodcode,ls_pcode
  965. Long ll_scid,ll_taskid,ll_printid
  966. IF currentrow <= 0 THEN
  967. dw_3.Reset()
  968. RETURN
  969. END IF
  970. IF dw_1.GetRow() > 0 THEN
  971. ll_cusid = dw_1.Object.u_saletask_cusid[dw_1.GetRow()]
  972. ll_mtrlid = dw_1.Object.u_saletaskmx_mtrlid[dw_1.GetRow()]
  973. ls_plancode = Trim(dw_1.Object.u_saletaskmx_mtrlcuscode[dw_1.GetRow()])
  974. ls_status = Trim(dw_1.Object.u_saletaskmx_status[dw_1.GetRow()])
  975. ls_woodcode = Trim(dw_1.Object.u_saletaskmx_woodcode[dw_1.GetRow()])
  976. ls_pcode = Trim(dw_1.Object.u_saletaskmx_pcode[dw_1.GetRow()])
  977. dw_3.Retrieve(ll_cusid,ll_mtrlid,ls_status,ls_woodcode,ls_pcode)
  978. ll_scid = dw_1.Object.u_saletaskmx_scid[dw_1.GetRow()]
  979. ll_taskid = dw_1.Object.u_saletask_taskid[dw_1.GetRow()]
  980. ll_printid = dw_1.Object.u_saletaskmx_printid[dw_1.GetRow()]
  981. ELSE
  982. dw_3.Reset()
  983. END IF
  984. Parent.TriggerEvent('ue_retrieve_info')
  985. end event
  986. event dw_1::doubleclicked;IF row > 0 THEN
  987. String ls_code
  988. Long ll_scid
  989. ll_scid = THIS.Object.u_saletaskmx_scid[row]
  990. ls_code = THIS.Object.u_saletaskmx_mtrlcuscode[row]
  991. f_open_win(ll_scid,ls_code)
  992. END IF
  993. end event
  994. event dw_1::constructor;call super::constructor;String ls_modify_str
  995. Int i
  996. Long Columns
  997. string ls_option_sale_mxdscrp = ''
  998. string ls_option_sale_mxdscrp2 = ''
  999. Columns = Long(dw_1.Describe("DataWindow.Column.Count"))
  1000. FOR i = 1 TO Columns
  1001. ls_modify_str = dw_1.Describe("#" + String(i) + ".name")
  1002. ls_modify_str = Lower(ls_modify_str)
  1003. IF Pos(ls_modify_str,'u_saletaskmx_mxdscrp') > 0 and ls_modify_str <> 'u_saletaskmx_mxdscrp2' AND ls_option_sale_mxdscrp <> '' THEN
  1004. IF Len(ls_modify_str) = Len('u_saletaskmx_mxdscrp') OR Pos(ls_modify_str,'u_saletaskmx_mxdscrp') > 0 THEN
  1005. dw_1.Modify(ls_modify_str+'_t'+ ".text='明细备注("+ls_option_sale_mxdscrp+")'")
  1006. END IF
  1007. END IF
  1008. IF Pos(ls_modify_str,'u_saletaskmx_mxdscrp2') > 0 AND ls_option_sale_mxdscrp2 <> '' THEN
  1009. IF Len(ls_modify_str) = Len('u_saletaskmx_mxdscrp2') OR Pos(ls_modify_str,'u_saletaskmx_mxdscrp2') > 0 THEN
  1010. dw_1.Modify(ls_modify_str+'_t'+ ".text='明细备注2("+ls_option_sale_mxdscrp2+")'")
  1011. END IF
  1012. END IF
  1013. NEXT
  1014. end event
  1015. event dw_1::sqlpreview;call super::sqlpreview;string ls
  1016. ls = sqlsyntax
  1017. end event
  1018. event dw_1::clicked;call super::clicked;IF row > 0 THEN
  1019. THIS.SelectRow(0,FALSE)
  1020. THIS.SelectRow(row,TRUE)
  1021. this.setrow(row)
  1022. END IF
  1023. end event
  1024. type sle_mtrl from w_publ_easyq`sle_mtrl within w_rp_cust_saletask
  1025. end type
  1026. type sle_cust from w_publ_easyq`sle_cust within w_rp_cust_saletask
  1027. end type
  1028. type st_mtrl from w_publ_easyq`st_mtrl within w_rp_cust_saletask
  1029. end type
  1030. type st_cust from w_publ_easyq`st_cust within w_rp_cust_saletask
  1031. end type
  1032. type cbx_loginretr from w_publ_easyq`cbx_loginretr within w_rp_cust_saletask
  1033. boolean visible = true
  1034. integer x = 3054
  1035. end type
  1036. type pb_em1 from w_publ_easyq`pb_em1 within w_rp_cust_saletask
  1037. integer x = 1998
  1038. integer y = 188
  1039. boolean enabled = false
  1040. end type
  1041. type pb_em2 from w_publ_easyq`pb_em2 within w_rp_cust_saletask
  1042. integer x = 2592
  1043. integer y = 188
  1044. boolean enabled = false
  1045. end type
  1046. type pb_2 from w_publ_easyq`pb_2 within w_rp_cust_saletask
  1047. integer x = 2702
  1048. integer y = 188
  1049. boolean enabled = false
  1050. end type
  1051. type cb_help from w_publ_easyq`cb_help within w_rp_cust_saletask
  1052. integer x = 2286
  1053. end type
  1054. type cb_copyself from w_publ_easyq`cb_copyself within w_rp_cust_saletask
  1055. integer x = 151
  1056. end type
  1057. type gb_1 from w_publ_easyq`gb_1 within w_rp_cust_saletask
  1058. integer x = 1600
  1059. integer y = 352
  1060. integer width = 997
  1061. integer height = 256
  1062. end type
  1063. type ln_bar from w_publ_easyq`ln_bar within w_rp_cust_saletask
  1064. end type
  1065. type ln_bar2 from w_publ_easyq`ln_bar2 within w_rp_cust_saletask
  1066. end type
  1067. type r_bar from w_publ_easyq`r_bar within w_rp_cust_saletask
  1068. integer x = 3305
  1069. end type
  1070. type ln_1 from w_publ_easyq`ln_1 within w_rp_cust_saletask
  1071. end type
  1072. type ln_2 from w_publ_easyq`ln_2 within w_rp_cust_saletask
  1073. end type
  1074. type ln_3 from w_publ_easyq`ln_3 within w_rp_cust_saletask
  1075. boolean visible = false
  1076. end type
  1077. type ln_4 from w_publ_easyq`ln_4 within w_rp_cust_saletask
  1078. boolean visible = false
  1079. end type
  1080. type dw_3 from u_dw_rbtnfilter within w_rp_cust_saletask
  1081. integer y = 1428
  1082. integer width = 1015
  1083. integer height = 732
  1084. integer taborder = 20
  1085. boolean bringtotop = true
  1086. string dataobject = "dw_rp_cust_saletask_3"
  1087. boolean hscrollbar = true
  1088. boolean vscrollbar = true
  1089. boolean hsplitscroll = true
  1090. end type
  1091. type cbx_ifdate from checkbox within w_rp_cust_saletask
  1092. integer x = 608
  1093. integer y = 204
  1094. integer width = 375
  1095. integer height = 60
  1096. boolean bringtotop = true
  1097. integer textsize = -9
  1098. integer weight = 400
  1099. fontcharset fontcharset = gb2312charset!
  1100. fontpitch fontpitch = variable!
  1101. string facename = "宋体"
  1102. long textcolor = 33554432
  1103. long backcolor = 134217739
  1104. string text = "按日期查询"
  1105. end type
  1106. event clicked;
  1107. em_1.Enabled = THIS.Checked
  1108. em_2.Enabled = THIS.Checked
  1109. pb_em1.Enabled = THIS.Checked
  1110. pb_em2.Enabled = THIS.Checked
  1111. pb_2.Enabled = THIS.Checked
  1112. ddlb_1.Enabled = THIS.Checked
  1113. cb_1.TriggerEvent(Clicked!)
  1114. end event
  1115. type tv_1 from uo_tv_cusarea within w_rp_cust_saletask
  1116. integer y = 300
  1117. integer width = 1015
  1118. integer height = 1132
  1119. integer taborder = 20
  1120. boolean bringtotop = true
  1121. integer textsize = -9
  1122. fontcharset fontcharset = gb2312charset!
  1123. fontfamily fontfamily = anyfont!
  1124. string facename = "宋体"
  1125. long textcolor = 0
  1126. long backcolor = 16777215
  1127. boolean hideselection = false
  1128. string picturename[] = {"Application!","LibraryList5!"}
  1129. long picturemaskcolor = 553648127
  1130. boolean if_power = true
  1131. end type
  1132. event selectionchanged;call super::selectionchanged;
  1133. ls_areaname = THIS.uo_cur_info.areaname
  1134. ls_areaname = ls_areaname + '%'
  1135. cb_1.TriggerEvent(Clicked!)
  1136. end event
  1137. type cb_bill from uo_imflatbutton within w_rp_cust_saletask
  1138. integer x = 407
  1139. integer width = 329
  1140. integer height = 164
  1141. integer taborder = 30
  1142. boolean bringtotop = true
  1143. string text = "客户调货单"
  1144. string normalpicname = "OPEN.BMP"
  1145. integer picsize = 16
  1146. toolbaralignment pic_align = alignattop!
  1147. boolean border = false
  1148. end type
  1149. event clicked;call super::clicked;IF NOT f_power_ind(297) THEN
  1150. MessageBox(publ_operator,'没有使用权限!')
  1151. RETURN
  1152. END IF
  1153. Long ll_row
  1154. ll_row = dw_1.GetRow()
  1155. IF ll_row <= 0 THEN
  1156. MessageBox('系统提示','请先选择明细内容')
  1157. RETURN
  1158. END IF
  1159. String ls_scname
  1160. s_edit_index_tran s_tran
  1161. s_tran.if_retrieve_all = local_retrieve_all //是否一次RETRIEVE所有行
  1162. s_tran.work_mode = 0 //0-单纯编辑模式, 1-选择模式
  1163. s_tran.arg_pkid = 0 //目标定位PKID (备用)
  1164. s_tran.arg_string_code = '' //查询列部分内容,用于初步筛选
  1165. s_tran.b_long = 1
  1166. s_tran.c_long = dw_1.Object.u_saletaskmx_scid[ll_row]
  1167. SELECT scname
  1168. INTO :ls_scname
  1169. FROM u_scdef
  1170. Where scid = :s_tran.c_long;
  1171. IF sqlca.SQLCode <> 0 THEN
  1172. MessageBox('系统提示','查询单据所属分部失败')
  1173. RETURN
  1174. END IF
  1175. s_tran.b_string = ls_scname
  1176. s_tran.d_long = dw_1.object.u_saletaskmx_mtrlid[ll_row]
  1177. s_tran.c_string = dw_1.object.u_saletaskmx_mtrlcuscode[ll_row]
  1178. s_tran.d_string = dw_1.object.u_saletaskmx_status[ll_row]
  1179. s_tran.e_string = dw_1.object.u_saletaskmx_woodcode[ll_row]
  1180. s_tran.f_string = dw_1.object.u_saletaskmx_pcode[ll_row]
  1181. s_tran.e_long = dw_1.object.u_saletask_cusid[ll_row]
  1182. //s_tran.c_decimal = dw_1.object.not_inqty[ll_row]
  1183. OpenWithParm(w_mtrlware_trans,s_tran)
  1184. end event
  1185. type st_1 from statictext within w_rp_cust_saletask
  1186. integer x = 9
  1187. integer y = 204
  1188. integer width = 165
  1189. integer height = 48
  1190. boolean bringtotop = true
  1191. integer textsize = -9
  1192. integer weight = 400
  1193. fontcharset fontcharset = gb2312charset!
  1194. fontpitch fontpitch = variable!
  1195. string facename = "宋体"
  1196. long textcolor = 33554432
  1197. long backcolor = 134217739
  1198. string text = "分部:"
  1199. alignment alignment = right!
  1200. boolean focusrectangle = false
  1201. end type
  1202. type ddlb_1 from dropdownlistbox within w_rp_cust_saletask
  1203. integer x = 987
  1204. integer y = 192
  1205. integer width = 407
  1206. integer height = 300
  1207. integer taborder = 120
  1208. boolean bringtotop = true
  1209. integer textsize = -9
  1210. integer weight = 400
  1211. fontcharset fontcharset = gb2312charset!
  1212. fontpitch fontpitch = variable!
  1213. string facename = "宋体"
  1214. long textcolor = 33554432
  1215. boolean enabled = false
  1216. string text = "按订货日期"
  1217. boolean sorted = false
  1218. string item[] = {"按订货日期","按交货日期","按确认日期"}
  1219. borderstyle borderstyle = stylelowered!
  1220. end type
  1221. event selectionchanged;if this.text = '按订货日期' then
  1222. cur_stattype = 0
  1223. elseif this.text = '按交货日期' then
  1224. cur_stattype = 1
  1225. elseif this.text = '按确认日期' then
  1226. cur_stattype = 2
  1227. end if
  1228. cb_1.TriggerEvent(Clicked!)
  1229. end event
  1230. type ddlb_retrstatus from dropdownlistbox within w_rp_cust_saletask
  1231. integer x = 2976
  1232. integer y = 196
  1233. integer width = 425
  1234. integer height = 860
  1235. integer taborder = 130
  1236. boolean bringtotop = true
  1237. integer textsize = -9
  1238. integer weight = 400
  1239. fontcharset fontcharset = gb2312charset!
  1240. fontpitch fontpitch = variable!
  1241. string facename = "宋体"
  1242. long textcolor = 33554432
  1243. string text = "在进行"
  1244. boolean sorted = false
  1245. boolean vscrollbar = true
  1246. string item[] = {"待审核","待生产审核","在进行","已暂停","已终止","已完成","[所有]"}
  1247. borderstyle borderstyle = stylelowered!
  1248. end type
  1249. event constructor;cur_status = Long(f_ProfileString(sys_empid, "w_rp_sale_saletask", "status", "-1"))
  1250. CHOOSE CASE cur_status
  1251. CASE 0
  1252. ddlb_retrstatus.Text = "待审核"
  1253. CASE 4
  1254. ddlb_retrstatus.Text = "待生产审核"
  1255. CASE 1
  1256. ddlb_retrstatus.Text = "在进行"
  1257. CASE 2
  1258. ddlb_retrstatus.Text = "已暂停"
  1259. CASE 3
  1260. ddlb_retrstatus.Text = "已终止"
  1261. CASE 5
  1262. ddlb_retrstatus.Text = "已完成"
  1263. CASE -1
  1264. ddlb_retrstatus.Text = "[所有]"
  1265. END CHOOSE
  1266. end event
  1267. event selectionchanged;CHOOSE CASE Index
  1268. CASE 1 //待销售审批
  1269. cur_status = 0
  1270. CASE 2 //待待生产审批
  1271. cur_status = 4
  1272. CASE 3 //在进行
  1273. cur_status = 1
  1274. CASE 4 //'已暂停'
  1275. cur_status = 2
  1276. CASE 5 //'已终止'
  1277. cur_status = 3
  1278. CASE 6 //'已完成'
  1279. cur_status = 5
  1280. CASE ELSE
  1281. cur_status = -1
  1282. END CHOOSE
  1283. f_SetProfileString(sys_empid,'w_rp_sale_saletask', "status", String(cur_status))
  1284. cb_1.TriggerEvent(Clicked!)
  1285. end event
  1286. type st_5 from statictext within w_rp_cust_saletask
  1287. integer x = 2825
  1288. integer y = 220
  1289. integer width = 137
  1290. integer height = 48
  1291. boolean bringtotop = true
  1292. integer textsize = -9
  1293. integer weight = 400
  1294. fontcharset fontcharset = gb2312charset!
  1295. fontpitch fontpitch = variable!
  1296. string facename = "宋体"
  1297. long textcolor = 33554432
  1298. long backcolor = 134217739
  1299. string text = "状态:"
  1300. alignment alignment = right!
  1301. boolean focusrectangle = false
  1302. end type
  1303. type ddlb_scid from uo_ddlb_scid within w_rp_cust_saletask
  1304. integer x = 178
  1305. integer y = 188
  1306. integer width = 421
  1307. integer height = 620
  1308. integer taborder = 90
  1309. boolean bringtotop = true
  1310. end type
  1311. event constructor;call super::constructor;cur_scid_arr = THIS.uo_scid_arr
  1312. cur_scid = this.uo_scid
  1313. end event
  1314. event selectionchanged;call super::selectionchanged;
  1315. cur_scid_arr = THIS.uo_scid_arr
  1316. cur_scid = this.uo_scid
  1317. cb_1.triggerevent(clicked!)
  1318. end event
  1319. type cb_outware_info from uo_imflatbutton within w_rp_cust_saletask
  1320. integer x = 1431
  1321. integer width = 297
  1322. integer height = 164
  1323. integer taborder = 40
  1324. boolean bringtotop = true
  1325. string text = "其他功能"
  1326. string normalpicname = "update2.BMP"
  1327. integer picsize = 16
  1328. toolbaralignment pic_align = alignattop!
  1329. boolean border = false
  1330. end type
  1331. event clicked;call super::clicked;//parent.triggerevent('ue_outware_info')
  1332. m_Dfc_Control_PopupMenu dmPopupMenu
  1333. String menustr
  1334. menustr = "Text=显示相关发货信息~tEvent=ue_outware_info"
  1335. menustr = menustr + "|" + "Text=-"
  1336. menustr = menustr + "|" + "Text=显示相关工价信息~tEvent=ue_view_workpricetable"
  1337. dmPopupMenu = Create m_Dfc_Control_PopupMenu
  1338. dmPopupMenu.mf_BuildMenu(This, menustr)
  1339. dmPopupMenu.mf_PopMenu()
  1340. Destroy dmPopupMenu
  1341. end event
  1342. type cb_add_sale from uo_imflatbutton within w_rp_cust_saletask
  1343. integer x = 736
  1344. integer width = 384
  1345. integer height = 164
  1346. integer taborder = 40
  1347. boolean bringtotop = true
  1348. string text = "建销售发货单"
  1349. string normalpicname = "OPEN.BMP"
  1350. integer picsize = 16
  1351. toolbaralignment pic_align = alignattop!
  1352. boolean border = false
  1353. end type
  1354. event clicked;call super::clicked;
  1355. IF Not (f_power_ind(11) Or f_power_ind(869)) THEN
  1356. MessageBox(publ_operator,'没有使用权限!')
  1357. RETURN
  1358. END IF
  1359. IF cur_scid < 0 THEN
  1360. MessageBox('系统提示','请先选择分部')
  1361. RETURN
  1362. END IF
  1363. Long ll_row,ll_i
  1364. Long ll_found,ll_cusid,ll_storageid
  1365. String ls_scname
  1366. Long cnt = 0
  1367. String ls_cus_address,ls_rel_rep
  1368. s_edit_index_tran s_tran,s_ch
  1369. ll_found = dw_1.Find("ch = 1",1, dw_1.RowCount())
  1370. IF ll_found <= 0 THEN
  1371. MessageBox('系统提示','请先选择要建立发货单的订单明细')
  1372. RETURN
  1373. END IF
  1374. FOR ll_i = 1 To dw_1.RowCount()
  1375. IF dw_1.Object.ch[ll_i] = 1 THEN
  1376. IF dw_1.Object.u_saletask_status[ll_i] <> 1 THEN
  1377. MessageBox('系统提示','选中的订单中含有不是在进行状态的,请检查')
  1378. RETURN
  1379. END IF
  1380. IF cnt = 0 THEN
  1381. ll_cusid = dw_1.Object.u_saletask_cusid[ll_i]
  1382. ls_cus_address = dw_1.Object.cus_address[ll_i]
  1383. ls_rel_rep = dw_1.Object.rel_rep[ll_i]
  1384. ELSE
  1385. IF ll_cusid <> dw_1.Object.u_saletask_cusid[ll_i] And ll_cusid <> 0 THEN
  1386. MessageBox('系统提示','请选择相同客户的订单明细')
  1387. RETURN
  1388. END IF
  1389. END IF
  1390. cnt++
  1391. s_tran.arr_long[cnt] = dw_1.Object.u_saletask_taskid[ll_i]
  1392. s_tran.arr_long2[cnt] = dw_1.Object.u_saletaskmx_printid[ll_i]
  1393. s_tran.arr_long3[cnt] = dw_1.Object.u_SaleTaskMx_mtrlid[ll_i]
  1394. s_tran.arr_string[cnt] = dw_1.Object.u_saletask_taskcode[ll_i]
  1395. END IF
  1396. NEXT
  1397. FOR ll_i = 1 To dw_1.RowCount()
  1398. IF dw_1.Object.ch[ll_i] = 1 THEN
  1399. IF ls_cus_address <> dw_1.Object.cus_address[ll_i] THEN
  1400. IF MessageBox('询问','所选订单出现不同的客户地址,是否继续?',question!,yesno!) = 2 THEN
  1401. RETURN
  1402. ELSE
  1403. EXIT
  1404. END IF
  1405. END IF
  1406. IF ls_rel_rep <> dw_1.Object.rel_rep[ll_i] THEN
  1407. IF MessageBox('询问','所选订单出现不同的联系人,是否继续?',question!,yesno!) = 2 THEN
  1408. RETURN
  1409. ELSE
  1410. EXIT
  1411. END IF
  1412. END IF
  1413. END IF
  1414. NEXT
  1415. Open(w_storage_index_ch)
  1416. s_ch = Message.PowerObjectParm
  1417. IF s_ch.c_long = 0 THEN RETURN
  1418. ll_storageid = s_ch.c_long
  1419. s_tran.if_retrieve_all = local_retrieve_all //是否一次RETRIEVE所有行
  1420. s_tran.work_mode = 0 //0-单纯编辑模式, 1-选择模式
  1421. s_tran.arg_pkid = 0 //目标定位PKID (备用)
  1422. s_tran.arg_string_code = '' //查询列部分内容,用于初步筛选
  1423. s_tran.e_long = 1
  1424. s_tran.c_long = cur_scid
  1425. SELECT scname
  1426. INTO :ls_scname
  1427. FROM u_scdef
  1428. Where scid = :s_tran.c_long;
  1429. IF sqlca.SQLCode <> 0 THEN
  1430. MessageBox('系统提示','查询单据所属分部失败')
  1431. RETURN
  1432. END IF
  1433. s_tran.d_string = ls_scname
  1434. s_tran.d_long = 2
  1435. s_tran.g_long = ll_cusid
  1436. s_tran.f_long = ll_storageid
  1437. //OpenWithParm(w_outware_sale,s_tran)
  1438. IF Not IsValid(w_outware_sale) THEN
  1439. OpenWithParm(w_outware_sale,s_tran)
  1440. w_outware_sale.cb_add.TriggerEvent(Clicked!)
  1441. String errmsg = ''
  1442. if w_outware_sale.wf_autoaddmx_rp(s_tran,errmsg) = 0 then
  1443. MessageBox('系统提示','新建失败,'+errmsg)
  1444. end if
  1445. w_outware_sale.dw_uc.SetRedraw(True)
  1446. END IF
  1447. end event
  1448. type cbx_all from checkbox within w_rp_cust_saletask
  1449. integer x = 5019
  1450. integer y = 204
  1451. integer width = 219
  1452. integer height = 60
  1453. boolean bringtotop = true
  1454. integer textsize = -9
  1455. integer weight = 400
  1456. fontcharset fontcharset = gb2312charset!
  1457. fontpitch fontpitch = variable!
  1458. string facename = "宋体"
  1459. long textcolor = 33554432
  1460. long backcolor = 134217739
  1461. string text = "全选"
  1462. end type
  1463. event clicked;Long ll_i
  1464. dw_1.SetRedraw(False)
  1465. IF This.Checked THEN
  1466. FOR ll_i = 1 To dw_1.RowCount()
  1467. dw_1.Object.ch[ll_i] = 1
  1468. NEXT
  1469. ELSE
  1470. FOR ll_i = 1 To dw_1.RowCount()
  1471. dw_1.Object.ch[ll_i] = 0
  1472. NEXT
  1473. END IF
  1474. dw_1.SetRedraw(True)
  1475. end event
  1476. type cb_4 from uo_imflatbutton within w_rp_cust_saletask
  1477. integer x = 1120
  1478. integer width = 311
  1479. integer height = 164
  1480. integer taborder = 50
  1481. boolean bringtotop = true
  1482. string text = "批建发货单"
  1483. string normalpicname = "OPEN.BMP"
  1484. integer picsize = 16
  1485. toolbaralignment pic_align = alignattop!
  1486. boolean border = false
  1487. end type
  1488. event clicked;call super::clicked;m_Dfc_Control_PopupMenu dmPopupMenu
  1489. String menustr
  1490. menustr = "Text=按订单批生成~tEvent=ue_outware_add"
  1491. menustr = menustr + "|" + "Text=按收货人汇总~tEvent=ue_outware_add_hz"
  1492. dmPopupMenu = Create m_Dfc_Control_PopupMenu
  1493. dmPopupMenu.mf_BuildMenu(This, menustr)
  1494. dmPopupMenu.mf_PopMenu()
  1495. Destroy dmPopupMenu
  1496. end event
  1497. type cbx_1 from checkbox within w_rp_cust_saletask
  1498. integer x = 3429
  1499. integer y = 204
  1500. integer width = 850
  1501. integer height = 60
  1502. boolean bringtotop = true
  1503. integer textsize = -9
  1504. integer weight = 400
  1505. fontcharset fontcharset = gb2312charset!
  1506. fontpitch fontpitch = variable!
  1507. string facename = "宋体"
  1508. long textcolor = 33554432
  1509. long backcolor = 134217739
  1510. string text = "不显示终止订单或明细整行终止"
  1511. end type
  1512. event clicked;IF This.checked THEN
  1513. cur_ifstop = 1
  1514. ELSE
  1515. cur_ifstop = 0
  1516. END IF
  1517. f_SetProfileString (sys_empid,Parent.Classname(), "cur_ifstop",String(cur_ifstop))
  1518. cb_1.TriggerEvent(Clicked!)
  1519. end event
  1520. event constructor;cur_ifstop = Long(f_ProfileString (sys_empid, Parent.Classname(), "cur_ifstop", "0"))
  1521. //This.Checked = cur_ifsc = 1
  1522. //
  1523. if cur_ifstop = 0 then
  1524. This.Checked = false
  1525. else
  1526. This.Checked = true
  1527. end if
  1528. end event
  1529. type cbx_iffinish from checkbox within w_rp_cust_saletask
  1530. integer x = 4315
  1531. integer y = 204
  1532. integer width = 631
  1533. integer height = 60
  1534. boolean bringtotop = true
  1535. integer textsize = -9
  1536. integer weight = 400
  1537. fontcharset fontcharset = gb2312charset!
  1538. fontpitch fontpitch = variable!
  1539. string facename = "宋体"
  1540. long textcolor = 33554432
  1541. long backcolor = 134217739
  1542. string text = "不显示已完成发货明细"
  1543. end type
  1544. event clicked;IF This.checked THEN
  1545. cur_iffinish = 1
  1546. ELSE
  1547. cur_iffinish = 0
  1548. END IF
  1549. f_SetProfileString (sys_empid,Parent.Classname(), "cur_iffinish",String(cur_iffinish))
  1550. cb_1.TriggerEvent(Clicked!)
  1551. end event
  1552. event constructor;cur_iffinish = Long(f_ProfileString (sys_empid,Parent.Classname(), "cur_iffinish", "0"))
  1553. //This.Checked = cur_ifsc = 1
  1554. //
  1555. if cur_iffinish = 0 then
  1556. This.Checked = false
  1557. else
  1558. This.Checked = true
  1559. end if
  1560. end event