w_saletask_sc_mx.srw 74 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075
  1. $PBExportHeader$w_saletask_sc_mx.srw
  2. forward
  3. global type w_saletask_sc_mx from w_publ_easyq
  4. end type
  5. type ddlb_1 from dropdownlistbox within w_saletask_sc_mx
  6. end type
  7. type ddlb_scid from uo_ddlb_scid within w_saletask_sc_mx
  8. end type
  9. type cb_3 from uo_imflatbutton within w_saletask_sc_mx
  10. end type
  11. type cb_4 from uo_imflatbutton within w_saletask_sc_mx
  12. end type
  13. type cbx_allselect from checkbox within w_saletask_sc_mx
  14. end type
  15. type cb_5 from uo_imflatbutton within w_saletask_sc_mx
  16. end type
  17. type cb_6 from uo_imflatbutton within w_saletask_sc_mx
  18. end type
  19. type cb_10 from uo_imflatbutton within w_saletask_sc_mx
  20. end type
  21. type ddlb_2 from dropdownlistbox within w_saletask_sc_mx
  22. end type
  23. type ddlb_3 from dropdownlistbox within w_saletask_sc_mx
  24. end type
  25. type cb_edit from uo_imflatbutton within w_saletask_sc_mx
  26. end type
  27. type cb_save from uo_imflatbutton within w_saletask_sc_mx
  28. end type
  29. type st_1 from statictext within w_saletask_sc_mx
  30. end type
  31. type cbx_notsc from checkbox within w_saletask_sc_mx
  32. end type
  33. type cb_xls from uo_imflatbutton within w_saletask_sc_mx
  34. end type
  35. type st_5 from statictext within w_saletask_sc_mx
  36. end type
  37. type ddlb_status from uo_ddlb_status within w_saletask_sc_mx
  38. end type
  39. type cbx_1 from checkbox within w_saletask_sc_mx
  40. end type
  41. type cb_9 from commandbutton within w_saletask_sc_mx
  42. end type
  43. type cb_11 from uo_imflatbutton within w_saletask_sc_mx
  44. end type
  45. type cb_12 from uo_imflatbutton within w_saletask_sc_mx
  46. end type
  47. type cb_add_sale from uo_imflatbutton within w_saletask_sc_mx
  48. end type
  49. type cbx_date from checkbox within w_saletask_sc_mx
  50. end type
  51. type cbx_iffinish from checkbox within w_saletask_sc_mx
  52. end type
  53. type cb_7 from uo_imflatbutton within w_saletask_sc_mx
  54. end type
  55. type cb_8 from uo_imflatbutton within w_saletask_sc_mx
  56. end type
  57. type ln_7 from line within w_saletask_sc_mx
  58. end type
  59. type ln_8 from line within w_saletask_sc_mx
  60. end type
  61. end forward
  62. global type w_saletask_sc_mx from w_publ_easyq
  63. integer width = 4832
  64. string title = "销售订单跟踪表"
  65. event ue_viewprint ( )
  66. event ue_print ( )
  67. event ue_viewprint_other ( )
  68. event ue_print_other ( )
  69. event ue_psetup ( )
  70. event ue_xls ( )
  71. event ue_p_plancode ( )
  72. event ue_view_mxdscrp ( )
  73. event ue_view_mxdscrp2 ( )
  74. event ue_p_mxdscrp3 ( )
  75. event ue_p_mxdscrp4 ( )
  76. ddlb_1 ddlb_1
  77. ddlb_scid ddlb_scid
  78. cb_3 cb_3
  79. cb_4 cb_4
  80. cbx_allselect cbx_allselect
  81. cb_5 cb_5
  82. cb_6 cb_6
  83. cb_10 cb_10
  84. ddlb_2 ddlb_2
  85. ddlb_3 ddlb_3
  86. cb_edit cb_edit
  87. cb_save cb_save
  88. st_1 st_1
  89. cbx_notsc cbx_notsc
  90. cb_xls cb_xls
  91. st_5 st_5
  92. ddlb_status ddlb_status
  93. cbx_1 cbx_1
  94. cb_9 cb_9
  95. cb_11 cb_11
  96. cb_12 cb_12
  97. cb_add_sale cb_add_sale
  98. cbx_date cbx_date
  99. cbx_iffinish cbx_iffinish
  100. cb_7 cb_7
  101. cb_8 cb_8
  102. ln_7 ln_7
  103. ln_8 ln_8
  104. end type
  105. global w_saletask_sc_mx w_saletask_sc_mx
  106. type variables
  107. int cur_status = 1 //当前查询订单状态// -1 所有
  108. int cur_stattype = 0
  109. long cur_scid_arr[]
  110. long cur_scid = -1
  111. String ls_newname = ''
  112. Long ll_prownum
  113. Long ls_powerid
  114. Int li_auditprint
  115. String ls_rpname = ''
  116. Long ls_msgprintid_rpt = 0
  117. boolean if_sc = false
  118. //int if_viewprint
  119. uo_order_ml obj_order
  120. uo_saletask uo_sale
  121. int cur_inware = -1
  122. int cur_sc = -1
  123. int cur_ifsc = 0
  124. int cur_ifstop=0
  125. int cur_date = 0
  126. int cur_iffinish = 0
  127. boolean print_sc = false
  128. String ins_openfile_log[] //用于退出后删除
  129. Long ins_openfile_log_p = 0 //用于退出后删除
  130. Long ll_xls_billid,ll_xls_Templatesid
  131. String ls_xls_DefaultDataWindow
  132. end variables
  133. forward prototypes
  134. public function integer wf_hide_col ()
  135. public function integer wf_dw ()
  136. public function integer wf_refresh_interface ()
  137. public subroutine wf_addlog_tempfilepathname (string arg_filepathname)
  138. 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)
  139. public subroutine wf_checkdate ()
  140. end prototypes
  141. event ue_viewprint();IF NOT f_power_ind(984) THEN
  142. MessageBox('提示','你没有使用权限!',information!,OK!)
  143. RETURN
  144. END IF
  145. Long LS_ROW
  146. Long ll_sptid,printid
  147. String ls_taskcode
  148. String ls_printid
  149. String ls_parms[]
  150. String ls_msg
  151. Long ll_mx
  152. Long cur_scid
  153. Long ls_msgprintid
  154. s_saletaskmx s_mx[]
  155. ls_msgprintid = Message.LongParm
  156. SELECT dft_new_dwname,powerid,auditprint,prownum
  157. INTO :ls_newname,:ls_powerid,:li_auditprint,:ll_prownum
  158. FROM sys_dft_dwprint_dynamic
  159. Where sys_dft_dwprint_dynamic.dwprintid = :ls_msgprintid USING sqlca;
  160. IF sqlca.SQLCode <> 0 THEN
  161. ls_newname = ''
  162. ls_powerid = 0
  163. END IF
  164. IF ddlb_scid.uo_scid = - 1 THEN
  165. MessageBox('提示','请先选择分部',information!,OK!)
  166. RETURN
  167. END IF
  168. ll_mx = 0
  169. ls_msg = ''
  170. cur_scid = ddlb_scid.uo_scid
  171. dw_1.AcceptText()
  172. FOR LS_ROW = 1 TO dw_1.RowCount()
  173. IF dw_1.Object.isselect[LS_ROW] = 1 THEN
  174. ls_taskcode = dw_1.Object.u_saletask_taskcode[LS_ROW]
  175. ll_mx ++
  176. ls_printid = String(dw_1.Object.u_saletaskmx_printid[LS_ROW],'#####0')
  177. ls_parms[ll_mx] = LeftTrim(RightTrim(ls_taskcode)) + LeftTrim(RightTrim(ls_printid))
  178. s_mx[ll_mx].taskid = dw_1.Object.u_saletask_taskid[LS_ROW]
  179. s_mx[ll_mx].scid = dw_1.Object.u_saletask_scid[LS_ROW]
  180. s_mx[ll_mx].printid = dw_1.Object.u_saletaskmx_printid[LS_ROW]
  181. s_mx[ll_mx].ifsc = dw_1.Object.u_saletaskmx_ifsc[LS_ROW]
  182. s_mx[ll_mx].cardcount = dw_1.Object.u_saletaskmx_orderqty[LS_ROW]
  183. IF if_sc THEN
  184. IF s_mx[ll_mx].ifsc = 1 THEN
  185. ls_msg = ls_msg + '第' + String(dw_1.Object.row[LS_ROW]) + '行,订单:' + ls_taskcode + ',产品:' + dw_1.Object.u_mtrldef_mtrlcode[LS_ROW] + '已排产,不能重复排产! ~n'
  186. END IF
  187. END IF
  188. END IF
  189. NEXT
  190. IF ls_msg <> '' THEN
  191. MessageBox('错误',ls_msg,stopsign!,OK!)
  192. RETURN
  193. END IF
  194. IF ll_mx = 0 THEN
  195. MessageBox('提示','请选择要打印的目标单据!',information!,OK!)
  196. RETURN
  197. ELSE
  198. IF if_sc THEN
  199. if_sc = FALSE
  200. IF obj_order.uof_sc(s_mx,ll_mx,1,ls_msg) = 0 THEN
  201. MessageBox('错误',ls_msg,stopsign!,OK!)
  202. RETURN
  203. END IF
  204. END IF
  205. END IF
  206. S_print_MSG LS_PRMSG
  207. IF ls_newname <> '' THEN
  208. LS_PRMSG.obj_dwNAME = ls_newname
  209. ELSE
  210. LS_PRMSG.obj_dwNAME = 'dw_rp_saletask_sc_mx_edit'
  211. END IF
  212. datetime firstdate,enddate
  213. firstdate = DATEtime(date(EM_1.TEXT),time(0))
  214. enddate = datetime(date(EM_2.TEXT),time('23:59:59'))
  215. LS_PRMSG.TAG_TEXT = '销售排产打印单汇总打印'
  216. LS_PRMSG.FILTER_STRING = ''
  217. LS_PRMSG.retr_pram_falg = 17
  218. LS_PRMSG.PAGECH_FLAG = 0
  219. LS_PRMSG.retr_scid = cur_scid
  220. LS_PRMSG.a_string_arr = ls_parms
  221. LS_PRMSG.rowcnt = ll_mx
  222. LS_PRMSG.retr_pramfdt = firstdate
  223. LS_PRMSG.retr_pramedt = enddate
  224. OpenWithParm(w_publ_preview,LS_PRMSG)
  225. String arg_msg
  226. printnum = Message.DoubleParm
  227. IF printnum > 0 THEN
  228. FOR LS_ROW = 1 TO ll_mx
  229. f_update_printnum('u_saletaskmx',printnum,cur_scid,s_mx[LS_ROW].scid,ls_parms[LS_ROW],'',arg_msg,TRUE)
  230. NEXT
  231. CHOOSE CASE sys_option_saletask_sc_print2
  232. CASE 1
  233. IF MessageBox ("询问","打印是否成功?成功则确认当前选定明细。",Question!,YesNo! ) = 1 THEN
  234. print_sc = TRUE
  235. cb_3.TriggerEvent(Clicked!)
  236. END IF
  237. CASE 2
  238. print_sc = TRUE
  239. cb_3.TriggerEvent(Clicked!)
  240. END CHOOSE
  241. END IF
  242. end event
  243. event ue_print();IF NOT f_power_ind(987) THEN
  244. MessageBox('提示','你没有使用权限!',information!,OK!)
  245. RETURN
  246. END IF
  247. Long LS_ROW
  248. Long ll_sptid,printid
  249. String ls_taskcode
  250. String ls_printid
  251. String ls_parms[]
  252. String ls_msg
  253. Long ll_mx
  254. Long cur_scid
  255. Long ls_msgprintid
  256. s_saletaskmx s_mx[]
  257. ls_msgprintid = Message.LongParm
  258. SELECT dft_new_dwname,powerid,auditprint,prownum
  259. INTO :ls_newname,:ls_powerid,:li_auditprint,:ll_prownum
  260. FROM sys_dft_dwprint_dynamic
  261. Where sys_dft_dwprint_dynamic.dwprintid = :ls_msgprintid USING sqlca;
  262. IF sqlca.SQLCode <> 0 THEN
  263. ls_newname = ''
  264. ls_powerid = 0
  265. END IF
  266. IF ddlb_scid.uo_scid = - 1 THEN
  267. MessageBox('提示','请先选择分部',information!,OK!)
  268. RETURN
  269. END IF
  270. ll_mx = 0
  271. ls_msg = ''
  272. cur_scid = ddlb_scid.uo_scid
  273. dw_1.AcceptText()
  274. FOR LS_ROW = 1 TO dw_1.RowCount()
  275. IF dw_1.Object.isselect[LS_ROW] = 1 THEN
  276. ls_taskcode = dw_1.Object.u_saletask_taskcode[LS_ROW]
  277. ll_mx ++
  278. ls_printid = String(dw_1.Object.u_saletaskmx_printid[LS_ROW],'#####0')
  279. ls_parms[ll_mx] = LeftTrim(RightTrim(ls_taskcode)) + LeftTrim(RightTrim(ls_printid))
  280. s_mx[ll_mx].taskid = dw_1.Object.u_saletask_taskid[LS_ROW]
  281. s_mx[ll_mx].scid = dw_1.Object.u_saletask_scid[LS_ROW]
  282. s_mx[ll_mx].printid = dw_1.Object.u_saletaskmx_printid[LS_ROW]
  283. s_mx[ll_mx].cardcount = dw_1.Object.u_saletaskmx_orderqty[LS_ROW]
  284. END IF
  285. NEXT
  286. IF ls_msg <> '' THEN
  287. MessageBox('错误',ls_msg,stopsign!,OK!)
  288. RETURN
  289. END IF
  290. IF ll_mx = 0 THEN
  291. MessageBox('提示','请选择要打印的目标单据!',information!,OK!)
  292. RETURN
  293. END IF
  294. S_print_MSG LS_PRMSG
  295. IF ls_newname <> '' THEN
  296. LS_PRMSG.obj_dwNAME = ls_newname
  297. ELSE
  298. LS_PRMSG.obj_dwNAME = 'dw_rp_saletask_sc_mx_edit'
  299. END IF
  300. datetime firstdate,enddate
  301. firstdate = DATEtime(date(EM_1.TEXT),time(0))
  302. enddate = datetime(date(EM_2.TEXT),time('23:59:59'))
  303. uo_print_preview uo_print
  304. LS_PRMSG.TAG_TEXT = '销售排产打印单汇总打印'
  305. LS_PRMSG.FILTER_STRING = ''
  306. LS_PRMSG.retr_pram_falg = 17
  307. LS_PRMSG.PAGECH_FLAG = 0
  308. LS_PRMSG.retr_scid = cur_scid
  309. LS_PRMSG.a_string_arr = ls_parms
  310. LS_PRMSG.rowcnt = ll_mx
  311. LS_PRMSG.retr_pramfdt = firstdate
  312. LS_PRMSG.retr_pramedt = enddate
  313. uo_print.FACT_PRINT_MSG = LS_PRMSG
  314. String arg_msg
  315. IF uo_print.uof_print_begin(arg_msg) = 0 THEN
  316. MessageBox("错误",arg_msg,stopsign!,OK!)
  317. RETURN
  318. END IF
  319. uo_print.ds_print()
  320. FOR LS_ROW = 1 TO ll_mx
  321. f_update_printnum('u_saletaskmx',1,cur_scid,s_mx[LS_ROW].scid,ls_parms[LS_ROW],'',arg_msg,TRUE)
  322. NEXT
  323. CHOOSE CASE sys_option_saletask_sc_print2
  324. CASE 1
  325. IF MessageBox ("询问","打印是否成功?成功则确认当前选定明细。",Question!,YesNo! ) = 1 THEN
  326. print_sc = TRUE
  327. cb_3.TriggerEvent(Clicked!)
  328. END IF
  329. CASE 2
  330. print_sc = TRUE
  331. cb_3.TriggerEvent(Clicked!)
  332. END CHOOSE
  333. end event
  334. event ue_viewprint_other();IF Not f_power_ind(984) THEN
  335. MessageBox('提示','你没有使用权限!',information!,OK!)
  336. RETURN
  337. END IF
  338. Long LS_ROW
  339. Long ll_sptid,printid
  340. String ls_taskcode
  341. String ls_printid
  342. String ls_parms[]
  343. String ls_msg
  344. Long ll_mx
  345. Long cur_scid
  346. Long ls_msgprintid
  347. Long ld_orderqty
  348. s_saletaskmx s_mx[]
  349. S_print_MSG LS_PRMSG
  350. ls_msgprintid = Message.LongParm
  351. SELECT dft_new_dwname,powerid,auditprint,prownum
  352. INTO :ls_newname,:ls_powerid,:li_auditprint,:ll_prownum
  353. FROM sys_dft_dwprint_dynamic
  354. Where sys_dft_dwprint_dynamic.dwprintid = :ls_msgprintid Using sqlca;
  355. IF sqlca.SQLCode <> 0 THEN
  356. ls_newname = ''
  357. ls_powerid = 0
  358. END IF
  359. IF ddlb_scid.uo_scid = - 1 THEN
  360. MessageBox('提示','请先选择分部',information!,OK!)
  361. RETURN
  362. END IF
  363. LS_PRMSG.TAG_TEXT = '销售排产打印单单件打印'
  364. LS_PRMSG.FILTER_STRING = ''
  365. LS_PRMSG.retr_pram_falg = 18
  366. LS_PRMSG.PAGECH_FLAG = 0
  367. LS_PRMSG.retr_scid = cur_scid
  368. LS_PRMSG.rowcnt = 1
  369. ll_mx = 0
  370. ls_msg = ''
  371. cur_scid = ddlb_scid.uo_scid
  372. dw_1.AcceptText()
  373. FOR LS_ROW = 1 To dw_1.RowCount()
  374. IF dw_1.Object.isselect[LS_ROW] = 1 THEN
  375. ls_taskcode = dw_1.Object.u_saletask_taskcode[LS_ROW]
  376. IF dw_1.Object.u_saletask_status[LS_ROW] = 1 And dw_1.Object.u_saletaskmx_ifsc[LS_ROW] = 0 THEN
  377. ll_mx ++
  378. LS_PRMSG.retr_pramnmb = dw_1.Object.u_SaleTask_TaskID[LS_ROW]
  379. LS_PRMSG.b_long = dw_1.Object.u_saletaskmx_printid[LS_ROW]
  380. ld_orderqty = Round(dw_1.Object.u_saletaskmx_orderqty[LS_ROW],0)
  381. IF ld_orderqty < dw_1.Object.u_saletaskmx_orderqty[LS_ROW] THEN ld_orderqty = ld_orderqty + 1
  382. LS_PRMSG.c_long = ld_orderqty
  383. s_mx[ll_mx].taskid = dw_1.Object.u_SaleTask_TaskID[LS_ROW]
  384. s_mx[ll_mx].scid = dw_1.Object.u_saletask_scid[LS_ROW]
  385. s_mx[ll_mx].printid = dw_1.Object.u_saletaskmx_printid[LS_ROW]
  386. ELSE
  387. ls_msg = ls_msg + '第' + String(dw_1.Object.row[LS_ROW]) + '行,订单:' + ls_taskcode + ',产品:' + dw_1.Object.u_mtrldef_mtrlcode[LS_ROW] + '不符合条件打印! ~n'
  388. END IF
  389. END IF
  390. NEXT
  391. IF ls_msg <> '' THEN
  392. MessageBox('错误',ls_msg,stopsign!,OK!)
  393. RETURN
  394. END IF
  395. IF ll_mx <> 1 THEN
  396. MessageBox('提示','打印目标只能选一条明细!',information!,OK!)
  397. RETURN
  398. ELSE
  399. IF if_sc THEN
  400. if_sc = False
  401. IF obj_order.uof_sc(s_mx,ll_mx,1,ls_msg) = 0 THEN
  402. MessageBox('错误',ls_msg,stopsign!,OK!)
  403. RETURN
  404. END IF
  405. END IF
  406. END IF
  407. IF ls_newname <> '' THEN
  408. LS_PRMSG.obj_dwNAME = ls_newname
  409. ELSE
  410. LS_PRMSG.obj_dwNAME = 'dw_rp_saletask_sc_mx1_edit'
  411. END IF
  412. OpenWithParm(w_publ_preview,LS_PRMSG)
  413. cb_1.TriggerEvent(Clicked!)
  414. end event
  415. event ue_print_other();IF NOT f_power_ind(987) THEN
  416. MessageBox('提示','你没有使用权限!',information!,OK!)
  417. RETURN
  418. END IF
  419. Long LS_ROW
  420. Long ll_sptid,printid
  421. String ls_taskcode
  422. String ls_printid
  423. String ls_parms[]
  424. String ls_msg
  425. Long ll_mx
  426. Long cur_scid
  427. Long ls_msgprintid
  428. long ld_orderqty
  429. s_saletaskmx s_mx[]
  430. ls_msgprintid = Message.LongParm
  431. S_print_MSG LS_PRMSG
  432. SELECT dft_new_dwname,powerid,auditprint,prownum
  433. INTO :ls_newname,:ls_powerid,:li_auditprint,:ll_prownum
  434. FROM sys_dft_dwprint_dynamic
  435. Where sys_dft_dwprint_dynamic.dwprintid = :ls_msgprintid USING sqlca;
  436. IF sqlca.SQLCode <> 0 THEN
  437. ls_newname = ''
  438. ls_powerid = 0
  439. END IF
  440. IF ddlb_scid.uo_scid = - 1 THEN
  441. MessageBox('提示','请先选择分部',information!,OK!)
  442. RETURN
  443. END IF
  444. ll_mx = 0
  445. ls_msg = ''
  446. cur_scid = ddlb_scid.uo_scid
  447. dw_1.AcceptText()
  448. FOR LS_ROW = 1 TO dw_1.RowCount()
  449. IF dw_1.Object.isselect[LS_ROW] = 1 THEN
  450. ls_taskcode = dw_1.Object.u_saletask_taskcode[LS_ROW]
  451. IF dw_1.Object.u_saletask_status[LS_ROW] = 1 THEN
  452. ll_mx ++
  453. LS_PRMSG.retr_pramnmb = dw_1.Object.u_SaleTask_TaskID[LS_ROW]
  454. LS_PRMSG.b_long = dw_1.Object.u_saletaskmx_printid[LS_ROW]
  455. ld_orderqty = round(dw_1.Object.u_saletaskmx_orderqty[LS_ROW],0)
  456. if ld_orderqty < dw_1.Object.u_saletaskmx_orderqty[LS_ROW] then ld_orderqty = ld_orderqty + 1
  457. LS_PRMSG.c_long = ld_orderqty
  458. s_mx[1].taskid = dw_1.Object.u_saletask_taskid[LS_ROW]
  459. s_mx[1].scid = dw_1.Object.u_saletask_scid[LS_ROW]
  460. s_mx[1].printid = dw_1.Object.u_saletaskmx_printid[LS_ROW]
  461. ELSE
  462. ls_msg = ls_msg + '第' + string(dw_1.Object.row[LS_ROW]) + '行,订单:' + ls_taskcode + ',产品:' + dw_1.Object.u_mtrldef_mtrlcode[LS_ROW] + '不符合条件打印! ~n'
  463. END IF
  464. END IF
  465. NEXT
  466. IF ls_msg <> '' THEN
  467. MessageBox('错误',ls_msg,stopsign!,OK!)
  468. RETURN
  469. END IF
  470. IF ll_mx <> 1 THEN
  471. MessageBox('提示','打印目标只能选一条明细!',information!,OK!)
  472. RETURN
  473. END IF
  474. IF ls_newname <> '' THEN
  475. LS_PRMSG.obj_dwNAME = ls_newname
  476. ELSE
  477. LS_PRMSG.obj_dwNAME = 'dw_rp_saletask_sc_mx1_edit'
  478. END IF
  479. uo_print_preview uo_print
  480. LS_PRMSG.TAG_TEXT = '销售排产打印单单件打印'
  481. LS_PRMSG.FILTER_STRING = ''
  482. LS_PRMSG.retr_pram_falg = 18
  483. LS_PRMSG.PAGECH_FLAG = 0
  484. LS_PRMSG.retr_scid = cur_scid
  485. LS_PRMSG.rowcnt = 1
  486. uo_print.FACT_PRINT_MSG = LS_PRMSG
  487. String arg_msg
  488. IF uo_print.uof_print_begin(arg_msg) = 0 THEN
  489. MessageBox("错误",arg_msg,stopsign!,OK!)
  490. RETURN
  491. END IF
  492. uo_print.ds_print()
  493. cb_1.triggerevent(clicked!)
  494. end event
  495. event ue_psetup();s_print_value s_print
  496. s_print.obj_dw = DW_1
  497. s_print.dft_printername = ''
  498. OpenWithParm(w_sys_printpage_value,s_print)
  499. end event
  500. event ue_xls();
  501. string arg_msg
  502. Long ll_Templatesid,ll_ationid
  503. ll_Templatesid = Message.LongParm
  504. ll_ationid = long(Message.wordparm )
  505. if isnull(ll_Templatesid) then ll_Templatesid = 0
  506. if isnull(ll_ationid) then ll_ationid = 0
  507. if ll_Templatesid = 0 then return
  508. ll_xls_Templatesid = ll_Templatesid
  509. uo_xls_constant uo_constant //Excel全局设置对象
  510. uo_constant = create uo_xls_constant
  511. uo_sendtoexcel obj_st //实例化数据处理对象
  512. obj_st = create uo_sendtoexcel
  513. obj_st.commit_transaction = sqlca //事务对象 建议显示设置 默认等于sqlca
  514. obj_st.uo_const = uo_constant //全局配置对象
  515. s_xls_billlist str_billlist
  516. str_billlist = obj_st.of_getbillinfo(ll_Templatesid,arg_msg) //根据模版获取相应的单据信息
  517. if str_billlist.count <=0 then
  518. MessageBox('错误',arg_msg)
  519. return
  520. end if
  521. if wf_xls_retrievedata(ll_ationid,str_billlist,obj_st,arg_msg) <> 1 then
  522. MessageBox('错误',arg_msg)
  523. return
  524. end if
  525. //发送数据
  526. obj_st.event oe_sendtoexcel(str_billlist)
  527. end event
  528. event ue_p_plancode();IF NOT dw_edit_mode THEN RETURN
  529. IF MessageBox('提示','是否要确定要以递增的方式批设定批号', question!, YesNo!, 2) = 2 THEN
  530. RETURN
  531. END IF
  532. dw_1.accepttext()
  533. IF dw_1.rowcount()<=0 then return
  534. string ls_plancode
  535. long ll_plancode,i
  536. string ls_zero
  537. long ll_zero
  538. ls_plancode = dw_1.object.plancode[1]
  539. string L_plancode,R_plancode
  540. L_plancode=left(ls_plancode,len(ls_plancode) - 4)
  541. R_plancode=right(ls_plancode, 4)
  542. ls_plancode=R_plancode
  543. IF NOT isnumber(ls_plancode) then
  544. messagebox("提示","第一行批号后四位不是数字形式,操作取消")
  545. return
  546. end if
  547. ll_plancode = long(ls_plancode)
  548. //ll_zero = len(ls_plancode) - LEN(string(ll_plancode))
  549. //IF ll_zero >0 then
  550. // for i =1 to ll_zero
  551. // ls_zero = ls_zero +'0'
  552. // next
  553. //end if
  554. //
  555. dw_1.SetRedraw(FALSE)
  556. FOR i = 1 TO dw_1.RowCount()
  557. dw_1.object.plancode[i] = L_plancode +string(ll_plancode,'0000')
  558. ll_plancode++
  559. NEXT
  560. dw_1.SetRedraw(TRUE)
  561. end event
  562. event ue_view_mxdscrp();s_view_dscrp s_view,s_return
  563. String ls_dscrp
  564. dw_1.AcceptText()
  565. ls_dscrp = dw_1.Object.u_saletaskmx_mxdscrp[dw_1.GetRow()]
  566. s_view.Title = '销售订单明细备注'
  567. s_view.dscrp = ls_dscrp
  568. s_view.editmode = dw_edit_mode
  569. OpenWithParm(w_view_dscrp,s_view)
  570. IF dw_edit_mode THEN
  571. s_return = Message.PowerObjectParm
  572. dw_1.Object.u_saletaskmx_mxdscrp[dw_1.GetRow()] = s_return.dscrp
  573. END IF
  574. end event
  575. event ue_view_mxdscrp2();s_view_dscrp s_view,s_return
  576. String ls_dscrp
  577. dw_1.AcceptText()
  578. ls_dscrp = dw_1.Object.mxdscrp2[dw_1.GetRow()]
  579. s_view.Title = '销售订单明细备注'
  580. s_view.dscrp = ls_dscrp
  581. s_view.editmode = dw_edit_mode
  582. OpenWithParm(w_view_dscrp,s_view)
  583. IF dw_edit_mode THEN
  584. s_return = Message.PowerObjectParm
  585. dw_1.Object.mxdscrp2[dw_1.GetRow()] = s_return.dscrp
  586. END IF
  587. end event
  588. event ue_p_mxdscrp3();IF Not dw_edit_mode THEN RETURN
  589. IF MessageBox('提示','是否要确定要以递增的方式批设定明细备注3', question!, YesNo!, 2) = 2 THEN
  590. RETURN
  591. END IF
  592. dw_1.AcceptText()
  593. IF dw_1.RowCount() <= 0 THEN RETURN
  594. String ls_plancode
  595. Long ll_plancode,i
  596. String ls_zero
  597. Long ll_zero
  598. ls_plancode = dw_1.Object.u_saletaskmx_mxdscrp3[1]
  599. IF Not IsNumber(ls_plancode) THEN RETURN
  600. String L_plancode,R_plancode
  601. ll_plancode = Long(ls_plancode)
  602. dw_1.SetRedraw(False)
  603. FOR i = 1 To dw_1.RowCount()
  604. dw_1.Object.u_saletaskmx_mxdscrp3[i] =String(ll_plancode)
  605. ll_plancode++
  606. NEXT
  607. dw_1.SetRedraw(True)
  608. end event
  609. event ue_p_mxdscrp4();IF Not dw_edit_mode THEN RETURN
  610. IF MessageBox('提示','是否要确定要以递增的方式批设定明细备注4', question!, YesNo!, 2) = 2 THEN
  611. RETURN
  612. END IF
  613. dw_1.AcceptText()
  614. IF dw_1.RowCount() <= 0 THEN RETURN
  615. String ls_plancode
  616. Long ll_plancode,i
  617. String ls_zero
  618. Long ll_zero
  619. ls_plancode = dw_1.Object.u_saletaskmx_mxdscrp4[1]
  620. IF Not IsNumber(ls_plancode) THEN RETURN
  621. String L_plancode,R_plancode
  622. ll_plancode = Long(ls_plancode)
  623. dw_1.SetRedraw(False)
  624. FOR i = 1 To dw_1.RowCount()
  625. dw_1.Object.u_saletaskmx_mxdscrp4[i] =String(ll_plancode)
  626. ll_plancode++
  627. NEXT
  628. dw_1.SetRedraw(True)
  629. end event
  630. public function integer wf_hide_col ();//s_hide_col s_col
  631. //
  632. //if dw_1.dataobject = 'dw_rp_sale_saletask' then
  633. // s_col.col_1 = 'fprice'
  634. // s_col.col_2 = 'amt'
  635. // s_col.col_3 = 'not_consignedqtyamt'
  636. // s_col.col_4 = 'u_saletaskmx_enprice'
  637. // s_col.col_5 = 'enamt'
  638. // s_col.col_6 = 'u_saletaskmx_dftsaleprice'
  639. // s_col.col_8 = 'rebate'
  640. // s_col.col_9 = 'u_saletaskmx_acprice'
  641. // s_col.col_10 = 'ware_amt'
  642. // s_col.col_11 = 'u_saletaskmx_ware_fprice'
  643. //elseif dw_1.dataobject = 'dw_rp_sale_saletask_hz' then
  644. // s_col.col_1 = 'amt'
  645. // s_col.col_2 = 'consignedqtyamt'
  646. // s_col.col_3 = 'not_consignedqtyamt'
  647. // s_col.col_4 = 'stopamt'
  648. //elseif dw_1.dataobject = 'dw_rp_sale_saletask_hz_cust' then
  649. // s_col.col_1 = 'amt'
  650. // s_col.col_2 = 'consignedqtyamt'
  651. // s_col.col_3 = 'not_consignedqtyamt'
  652. // s_col.col_4 = 'stopamt'
  653. //elseif dw_1.dataobject = 'dw_rp_sale_saletask_hz_assignemp' then
  654. // s_col.col_1 = 'amt'
  655. // s_col.col_2 = 'consignedqty'
  656. // s_col.col_3 = 'not_consignedqty'
  657. //elseif dw_1.dataobject = 'dw_rp_sale_saletask_hz_mtrlsectype' then
  658. // s_col.col_1 = 'amt'
  659. // s_col.col_2 = 'consignedqtyamt'
  660. // s_col.col_3 = 'not_consignedqtyamt'
  661. // s_col.col_4 = 'stopamt'
  662. //elseif dw_1.dataobject = 'dw_rp_sale_saletask_hz_zxmtrlmode' then
  663. // s_col.col_1 = 'amt'
  664. // s_col.col_2 = 'not_consignedqtyamt'
  665. // s_col.col_3 = 'consignedqtyamt'
  666. // s_col.col_4 = 'stopamt'
  667. //elseif dw_1.dataobject = 'dw_rp_sale_saletask_hz_bill' then
  668. // s_col.col_1 = 'amt'
  669. // s_col.col_2 = 'not_consignedqtyamt'
  670. // s_col.col_3 = 'consignedqtyamt'
  671. // s_col.col_4 = 'stopamt'
  672. //end if
  673. //
  674. //
  675. //f_hide_col(122,dw_1,s_col)
  676. //
  677. //
  678. return 1
  679. //
  680. //
  681. //
  682. end function
  683. public function integer wf_dw ();//String ls_windowname
  684. //ls_windowname = THIS.ClassName ( )
  685. //
  686. //String ls_old_dwname,ls_new_dwname = ''
  687. //ls_old_dwname = dw_1.DataObject
  688. //ls_new_dwname = f_get_dwprint_dynamic_chname(ls_old_dwname,ls_windowname)
  689. //
  690. //IF ls_new_dwname = '' THEN
  691. // ls_new_dwname = ls_old_dwname
  692. //END IF
  693. //
  694. //dw_1.DataObject = ls_new_dwname
  695. //dw_1.SetTransObject(sqlca)
  696. //
  697. //dw_1.triggerevent("constructor")
  698. ////dw_1.uf_read_profile_layout()
  699. ////f_title_change(dw_1)
  700. //
  701. //
  702. //s_hide_col s_col_mtrlsectype
  703. //s_col_mtrlsectype.col_1 = 'u_mtrldef_mtrlsectype'
  704. //f_hide_col(1308,dw_1,s_col_mtrlsectype)
  705. //
  706. //s_hide_col s_col_zxmtrlmode
  707. //s_col_zxmtrlmode.col_1 = 'u_mtrldef_zxmtrlmode'
  708. //f_hide_col(1309,dw_1,s_col_zxmtrlmode)
  709. RETURN 1
  710. end function
  711. public function integer wf_refresh_interface ();//wf_refresh_interface
  712. IF dw_edit_mode THEN
  713. cb_3.Enabled = FALSE
  714. cb_4.Enabled = FALSE
  715. cb_10.Enabled = FALSE
  716. cb_2.Enabled = FALSE
  717. cb_add_sale.Enabled = FALSE
  718. cb_save.Enabled = TRUE
  719. cb_edit.Text = "放弃&E"
  720. cb_edit.normalpicname = 'Undo.bmp'
  721. dw_1.RBUTTON_FILTER_USE = FALSE //右键查询功能开关
  722. dw_1.RBUTTON_SETPOSITION_USE = TRUE //定位
  723. // dw_1.settaborder("isselect",0)
  724. dw_1.settaborder("u_saletaskmx_orderqty",10)
  725. dw_1.settaborder("needbuyqty",20)
  726. dw_1.settaborder("needwfjgqty",30)
  727. dw_1.settaborder("u_saletaskmx_mxdscrp",40)
  728. dw_1.settaborder("mxdscrp2",50)
  729. dw_1.settaborder("plancode",60)
  730. dw_1.settaborder("u_saletaskmx_mxdscrp3",70)
  731. dw_1.settaborder("u_saletaskmx_mxdscrp4",70)
  732. dw_1.settaborder("requiredate",80)
  733. dw_1.object.isselect_t.color = rgb(0,0,255)
  734. dw_1.object.u_saletaskmx_orderqty_t.color = rgb(0,0,255)
  735. dw_1.object.needbuyqty_t.color = rgb(0,0,255)
  736. dw_1.object.needwfjgqty_t.color = rgb(0,0,255)
  737. dw_1.object.u_saletaskmx_mxdscrp_t.color = rgb(0,0,255)
  738. dw_1.object.mxdscrp2_t.color = rgb(0,0,255)
  739. dw_1.object.plancode_t.color = rgb(0,0,255)
  740. dw_1.object.u_saletaskmx_mxdscrp3_t.color = rgb(0,0,255)
  741. dw_1.object.u_saletaskmx_mxdscrp4_t.color = rgb(0,0,255)
  742. ELSE
  743. cb_3.Enabled = TRUE
  744. cb_4.Enabled = TRUE
  745. cb_10.Enabled = TRUE
  746. cb_2.Enabled = TRUE
  747. cb_add_sale.Enabled = TRUE
  748. cb_save.Enabled = FALSE
  749. cb_edit.Text = "修改&E"
  750. cb_edit.normalpicname = 'OPEN.bmp'
  751. dw_1.RBUTTON_FILTER_USE = TRUE //右键查询功能开关
  752. dw_1.RBUTTON_SETPOSITION_USE = TRUE //定位
  753. // dw_1.settaborder("isselect",10)
  754. dw_1.settaborder("u_saletaskmx_orderqty",0)
  755. dw_1.settaborder("needbuyqty",0)
  756. dw_1.settaborder("needwfjgqty",0)
  757. dw_1.settaborder("u_saletaskmx_mxdscrp",0)
  758. dw_1.settaborder("mxdscrp2",0)
  759. dw_1.settaborder("plancode",0)
  760. dw_1.settaborder("u_saletaskmx_mxdscrp3",0)
  761. dw_1.settaborder("u_saletaskmx_mxdscrp4",0)
  762. dw_1.settaborder("requiredate",0)
  763. dw_1.object.isselect_t.color = rgb(0,0,255)
  764. dw_1.object.u_saletaskmx_orderqty_t.color = rgb(0,0,0)
  765. dw_1.object.needbuyqty_t.color = rgb(0,0,0)
  766. dw_1.object.needwfjgqty_t.color = rgb(0,0,0)
  767. dw_1.object.u_saletaskmx_mxdscrp_t.color = rgb(0,0,0)
  768. dw_1.object.mxdscrp2_t.color = rgb(0,0,0)
  769. dw_1.object.plancode_t.color = rgb(0,0,0)
  770. dw_1.object.u_saletaskmx_mxdscrp3_t.color = rgb(0,0,0)
  771. dw_1.object.u_saletaskmx_mxdscrp4_t.color = rgb(0,0,0)
  772. END IF
  773. cb_edit.of_init_draw()
  774. cb_edit.of_paint()
  775. cb_edit.TriggerEvent('ue_textchange')
  776. RETURN 1
  777. end function
  778. public subroutine wf_addlog_tempfilepathname (string arg_filepathname);//wf_addlog_tempfilepathname
  779. if isnull(arg_filepathname) or len(trim(arg_filepathname))<3 then return
  780. ins_openfile_log_p++
  781. ins_openfile_log[ins_openfile_log_p]=arg_filepathname
  782. // string ins_openfile_log[] //用于退出后删除
  783. // long ins_openfile_log_p=0 //用于退出后删除
  784. //
  785. end subroutine
  786. 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);Long LS_ROW,ll_id,i,ll_scid
  787. LS_ROW = dw_1.GetRow()
  788. IF LS_ROW <= 0 THEN
  789. arg_msg = '没有目标单据!'
  790. RETURN 0
  791. END IF
  792. //修改点:获取 指定retriev参数
  793. string ls_taskcode
  794. Long li_printid
  795. dw_1.AcceptText()
  796. ll_scid = ddlb_scid.uo_scid
  797. ls_taskcode = dw_1.Object.u_saletask_taskcode[LS_ROW]
  798. li_printid = dw_1.Object.u_saletaskmx_printid[LS_ROW]
  799. //查询所选模版是否含有图片信息
  800. Long ll_ifpic
  801. Long ll_classid
  802. SELECT ifpic
  803. INTO :ll_ifpic
  804. FROM U_XLS_Templates
  805. Where id = :ll_xls_Templatesid;
  806. IF sqlca.SQLCode <> 0 THEN
  807. ll_ifpic = 0
  808. END IF
  809. Long ll_i,ll_j
  810. Long ll_mtrlid
  811. Long ll_fileid
  812. Blob ls_filedata
  813. SetNull(ls_filedata)
  814. String Pathname,ls_filename,ls_filetype
  815. String errmsg
  816. uo_fj_mng_billtype ls_uo_fjbt
  817. ls_uo_fjbt = CREATE uo_fj_mng_billtype
  818. s_xls_pic_list s_pic //结构数组-用于保存图片路径
  819. IF ll_ifpic = 1 THEN //如果含有图片信息,则查询本类型单据需要带出哪类附件
  820. SELECT classid
  821. INTO :ll_classid
  822. FROM u_billpic_fileclass
  823. Where (billtype = 102);
  824. IF sqlca.SQLCode <> 0 THEN
  825. ll_classid = 0
  826. END IF
  827. IF ll_classid > 0 THEN //如果已经指定好附件类型,则循环明细表查询每个明细的图片信息.
  828. FOR ll_i = 1 TO dw_1.RowCount()
  829. IF dw_1.Object.isselect[i] = 1 THEN
  830. ll_mtrlid = dw_1.Object.mtrlid[ll_i]
  831. //取该附件类型中的第一个附件.
  832. SELECT top 1 fileid,DisplayName,FileType INTO :ll_fileid,:ls_filename,:ls_filetype
  833. FROM u_file
  834. WHERE relid = :ll_mtrlid
  835. AND classid = :ll_classid
  836. AND (filetype = 'bmp' OR filetype = 'rle' OR filetype = 'wmf'
  837. OR filetype = 'tif' OR filetype = 'jpg' OR filetype = 'gif' OR filetype = 'jpeg')
  838. USING sys_fileDB_sqlca;
  839. IF sys_fileDB_sqlca.SQLCode <> 0 THEN
  840. ll_fileid = 0
  841. END IF
  842. IF ll_fileid > 0 THEN
  843. Pathname = sys_cur_path+ins_fjtemppath+'\'+String(Today(),'yymmdd')+String(Now(),'hhmmss')+'_'+ls_filename+'.'+ls_filetype
  844. IF Trim(Pathname) <> '' THEN
  845. IF ls_uo_fjbt.uf_getfjbolb_fromdb( ll_fileid, ls_filedata, sys_fileDB_sqlca, arg_msg) = 0 THEN
  846. RETURN 0
  847. END IF
  848. IF f_saveblobtofile(ls_filedata,Pathname,errmsg) = 0 THEN
  849. RETURN 0
  850. ELSE
  851. s_pic.path[ll_i] = Pathname
  852. //记录临时文件位置,本窗口退出后删除
  853. wf_addlog_tempfilepathname(Pathname)
  854. END IF
  855. ELSE
  856. s_pic.path[ll_i] = ''
  857. END IF
  858. ELSE
  859. s_pic.path[ll_i] = ''
  860. END IF
  861. END IF
  862. NEXT
  863. END IF
  864. //
  865. END IF
  866. ////可选设置/ //
  867. arg_obj_st.uo_const.create_new_pwd( ) //创建随机密码
  868. IF sys_option_xls_ifuse_passwd = 1 THEN arg_obj_st.uo_const.pwd = Trim(sys_option_xls_user_passwd) //默认加密密码 默认为随即密码
  869. Boolean xls_locked
  870. xls_locked = Not (sys_option_xls_lock = 1)
  871. // Excel 的可选设置
  872. IF arg_obj_st.of_setoption(arg_ationid, xls_locked,TRUE,arg_msg) <> 1 THEN
  873. RETURN 0
  874. END IF
  875. FOR i = 1 TO arg_str_billlist.count
  876. ////可选操作/ //
  877. arg_str_billlist.bill[i].ds_data = CREATE datastore //
  878. arg_str_billlist.bill[i].ds_data.DataObject = arg_str_billlist.bill[i].datawindow //
  879. arg_str_billlist.bill[i].ds_data.SetTransObject(sqlca)
  880. //修改点:注意retrieve 参数与上文对应
  881. arg_str_billlist.bill[i].ds_data.Retrieve(ls_taskcode,li_printid)
  882. IF ll_ifpic = 1 and ll_classid > 0 THEN
  883. IF arg_str_billlist.bill[i].datawindow = 'dw_saletask_sc_mx_xls' AND arg_str_billlist.bill[i].ds_data.RowCount() > 0 THEN //设置图片路径
  884. FOR ll_j = 1 TO arg_str_billlist.bill[i].ds_data.RowCount()
  885. arg_str_billlist.bill[i].ds_data.Object.pic[ll_j] = s_pic.path[ll_j]
  886. NEXT
  887. END IF
  888. END IF
  889. NEXT
  890. DESTROY ls_uo_fjbt
  891. RETURN 1
  892. end function
  893. public subroutine wf_checkdate ();//
  894. if cur_date = 0 then
  895. em_1.enabled = false
  896. em_2.enabled = false
  897. pb_em1.enabled = false
  898. pb_em2.enabled = false
  899. pb_2.enabled = false
  900. else
  901. em_1.enabled = true
  902. em_2.enabled = true
  903. pb_em1.enabled = true
  904. pb_em2.enabled = true
  905. pb_2.enabled = true
  906. end if
  907. end subroutine
  908. on w_saletask_sc_mx.create
  909. int iCurrent
  910. call super::create
  911. this.ddlb_1=create ddlb_1
  912. this.ddlb_scid=create ddlb_scid
  913. this.cb_3=create cb_3
  914. this.cb_4=create cb_4
  915. this.cbx_allselect=create cbx_allselect
  916. this.cb_5=create cb_5
  917. this.cb_6=create cb_6
  918. this.cb_10=create cb_10
  919. this.ddlb_2=create ddlb_2
  920. this.ddlb_3=create ddlb_3
  921. this.cb_edit=create cb_edit
  922. this.cb_save=create cb_save
  923. this.st_1=create st_1
  924. this.cbx_notsc=create cbx_notsc
  925. this.cb_xls=create cb_xls
  926. this.st_5=create st_5
  927. this.ddlb_status=create ddlb_status
  928. this.cbx_1=create cbx_1
  929. this.cb_9=create cb_9
  930. this.cb_11=create cb_11
  931. this.cb_12=create cb_12
  932. this.cb_add_sale=create cb_add_sale
  933. this.cbx_date=create cbx_date
  934. this.cbx_iffinish=create cbx_iffinish
  935. this.cb_7=create cb_7
  936. this.cb_8=create cb_8
  937. this.ln_7=create ln_7
  938. this.ln_8=create ln_8
  939. iCurrent=UpperBound(this.Control)
  940. this.Control[iCurrent+1]=this.ddlb_1
  941. this.Control[iCurrent+2]=this.ddlb_scid
  942. this.Control[iCurrent+3]=this.cb_3
  943. this.Control[iCurrent+4]=this.cb_4
  944. this.Control[iCurrent+5]=this.cbx_allselect
  945. this.Control[iCurrent+6]=this.cb_5
  946. this.Control[iCurrent+7]=this.cb_6
  947. this.Control[iCurrent+8]=this.cb_10
  948. this.Control[iCurrent+9]=this.ddlb_2
  949. this.Control[iCurrent+10]=this.ddlb_3
  950. this.Control[iCurrent+11]=this.cb_edit
  951. this.Control[iCurrent+12]=this.cb_save
  952. this.Control[iCurrent+13]=this.st_1
  953. this.Control[iCurrent+14]=this.cbx_notsc
  954. this.Control[iCurrent+15]=this.cb_xls
  955. this.Control[iCurrent+16]=this.st_5
  956. this.Control[iCurrent+17]=this.ddlb_status
  957. this.Control[iCurrent+18]=this.cbx_1
  958. this.Control[iCurrent+19]=this.cb_9
  959. this.Control[iCurrent+20]=this.cb_11
  960. this.Control[iCurrent+21]=this.cb_12
  961. this.Control[iCurrent+22]=this.cb_add_sale
  962. this.Control[iCurrent+23]=this.cbx_date
  963. this.Control[iCurrent+24]=this.cbx_iffinish
  964. this.Control[iCurrent+25]=this.cb_7
  965. this.Control[iCurrent+26]=this.cb_8
  966. this.Control[iCurrent+27]=this.ln_7
  967. this.Control[iCurrent+28]=this.ln_8
  968. end on
  969. on w_saletask_sc_mx.destroy
  970. call super::destroy
  971. destroy(this.ddlb_1)
  972. destroy(this.ddlb_scid)
  973. destroy(this.cb_3)
  974. destroy(this.cb_4)
  975. destroy(this.cbx_allselect)
  976. destroy(this.cb_5)
  977. destroy(this.cb_6)
  978. destroy(this.cb_10)
  979. destroy(this.ddlb_2)
  980. destroy(this.ddlb_3)
  981. destroy(this.cb_edit)
  982. destroy(this.cb_save)
  983. destroy(this.st_1)
  984. destroy(this.cbx_notsc)
  985. destroy(this.cb_xls)
  986. destroy(this.st_5)
  987. destroy(this.ddlb_status)
  988. destroy(this.cbx_1)
  989. destroy(this.cb_9)
  990. destroy(this.cb_11)
  991. destroy(this.cb_12)
  992. destroy(this.cb_add_sale)
  993. destroy(this.cbx_date)
  994. destroy(this.cbx_iffinish)
  995. destroy(this.cb_7)
  996. destroy(this.cb_8)
  997. destroy(this.ln_7)
  998. destroy(this.ln_8)
  999. end on
  1000. event open;call super::open;
  1001. //if_viewprint = Integer(f_ProfileString (sys_empid,this.ClassName( ), "if_viewprint", '0'))
  1002. //IF if_viewprint = 0 THEN
  1003. // rb_1.Checked = FALSE
  1004. // rb_2.Checked = TRUE
  1005. //ELSE
  1006. // rb_1.Checked = TRUE
  1007. // rb_2.Checked = FALSE
  1008. //END IF
  1009. end event
  1010. event close;call super::close;//dw_1.uf_save_profile_layout()
  1011. f_SetProfileString (sys_empid,"saletask_sc_mx", "cur_sc", string(cur_sc))
  1012. f_SetProfileString(sys_empid, "saletask_sc_mx", "cur_inware", string(cur_inware))
  1013. f_SetProfileString(sys_empid, "saletask_sc_mx", "cur_stattype", string(cur_stattype))
  1014. f_SetProfileString(sys_empid, "saletask_sc_mx", "cur_date", string(cur_date))
  1015. end event
  1016. event ue_before_openretrieve;call super::ue_before_openretrieve;EM_1.TEXT=string(today(),'yyyy-mm')+'-01'
  1017. EM_2.TEXT=STRING(TODAY(),'YYYY-MM-DD')
  1018. s_hide_col s_col_mtrlsectype
  1019. s_col_mtrlsectype.col_1 = 'u_mtrldef_mtrlsectype'
  1020. f_hide_col(1308,dw_1,s_col_mtrlsectype)
  1021. s_hide_col s_col_zxmtrlmode
  1022. s_col_zxmtrlmode.col_1 = 'u_mtrldef_zxmtrlmode'
  1023. f_hide_col(1309,dw_1,s_col_zxmtrlmode)
  1024. end event
  1025. event ue_before_open;call super::ue_before_open;st_1.visible = false
  1026. obj_order = create uo_order_ml
  1027. obj_order.commit_transaction = sqlca
  1028. uo_sale = create uo_saletask
  1029. uo_sale.commit_transaction = sqlca
  1030. end event
  1031. type cb_func from w_publ_easyq`cb_func within w_saletask_sc_mx
  1032. end type
  1033. event cb_func::clicked;m_Dfc_Control_PopupMenu dmPopupMenu
  1034. String menustr
  1035. IF if_ue_retr THEN
  1036. menustr = "Text=查询~tEvent=ue_retr"
  1037. END IF
  1038. IF if_ue_filter THEN
  1039. IF Len(Trim(menustr)) = 0 THEN
  1040. menustr = "Text=高级筛选~tEvent=ue_filter"
  1041. ELSE
  1042. menustr = menustr + "|" + "Text=高级筛选~tEvent=ue_filter"
  1043. END IF
  1044. END IF
  1045. IF if_ue_sort THEN
  1046. IF Len(Trim(menustr)) = 0 THEN
  1047. menustr = "Text=排序~tEvent=ue_sort"
  1048. ELSE
  1049. menustr = menustr + "|" + "Text=排序~tEvent=ue_sort"
  1050. END IF
  1051. END IF
  1052. IF menustr <> "" AND if_ue_sentdataout THEN menustr = menustr + "|" + "Text=-"
  1053. IF if_ue_sentdataout THEN
  1054. IF Len(Trim(menustr)) = 0 THEN
  1055. menustr = "Text=数据发送~tEvent=ue_sentdataout"
  1056. ELSE
  1057. menustr = menustr + "|" + "Text=数据发送~tEvent=ue_sentdataout"
  1058. END IF
  1059. END IF
  1060. IF menustr <> "" THEN menustr = menustr + "|" + "Text=-"
  1061. IF Len(Trim(menustr)) = 0 THEN
  1062. menustr = "Text=页面设置~tEvent=ue_psetup"
  1063. ELSE
  1064. menustr = menustr + "|" + "Text=页面设置~tEvent=ue_psetup"
  1065. END IF
  1066. IF Len(Trim(menustr)) <> 0 THEN
  1067. dmPopupMenu = CREATE m_Dfc_Control_PopupMenu
  1068. dmPopupMenu.mf_BuildMenu(THIS, menustr)
  1069. dmPopupMenu.mf_PopMenu()
  1070. DESTROY dmPopupMenu
  1071. END IF
  1072. end event
  1073. type cb_exit from w_publ_easyq`cb_exit within w_saletask_sc_mx
  1074. integer x = 3666
  1075. end type
  1076. type cb_2 from w_publ_easyq`cb_2 within w_saletask_sc_mx
  1077. integer x = 2898
  1078. integer width = 256
  1079. boolean bringtotop = true
  1080. string text = "报表打印"
  1081. end type
  1082. event cb_2::clicked;IF DW_1.RowCount() >= 1 THEN
  1083. cbx_YL.Checked = TRUE
  1084. cbx_YL.TriggerEvent(Clicked!)
  1085. OpenWithParm(w_sys_printpagesetting,DW_1)
  1086. ELSE
  1087. MessageBox('提示','数据窗口中没有任何记录,不能打印!',information!,OK!)
  1088. END IF
  1089. IF Trim(DW_1.DataObject) = '' THEN RETURN
  1090. f_SetProfileString (sys_empid,DW_1.DataObject, "MARGIN_TOP", String(DW_1.Object.DataWindow.Print.MARGIN.Top))
  1091. f_SetProfileString (sys_empid,DW_1.DataObject, "MARGIN_LEFT", String(DW_1.Object.DataWindow.Print.MARGIN.Left))
  1092. f_SetProfileString (sys_empid,DW_1.DataObject, "MARGIN_BOTTOM", String(DW_1.Object.DataWindow.Print.MARGIN.BOTTOM))
  1093. f_SetProfileString (sys_empid,DW_1.DataObject, "MARGIN_RIGHT", String(DW_1.Object.DataWindow.Print.MARGIN.Right))
  1094. end event
  1095. type cb_psetup from w_publ_easyq`cb_psetup within w_saletask_sc_mx
  1096. boolean visible = false
  1097. integer x = 306
  1098. boolean bringtotop = true
  1099. end type
  1100. type cb_1 from w_publ_easyq`cb_1 within w_saletask_sc_mx
  1101. boolean bringtotop = true
  1102. end type
  1103. event cb_1::clicked;call super::clicked;//dw_1.uf_read_profile_layout()
  1104. IF dw_edit_mode THEN RETURN
  1105. datetime firstdate,enddate
  1106. firstdate = DATEtime(date(EM_1.TEXT),time(0))
  1107. enddate = datetime(date(EM_2.TEXT),time('23:59:59'))
  1108. Int li_option_outrep
  1109. IF sys_power_issuper THEN
  1110. li_option_outrep = 0
  1111. ELSE
  1112. li_option_outrep = sys_option_outrep
  1113. END IF
  1114. dw_1.Retrieve(cur_scid_arr,cur_status,cur_stattype,firstdate,enddate,sys_areaid,cur_sc,cur_inware, sys_user_outrep, li_option_outrep,cur_ifsc,cur_ifstop,cur_date,cur_iffinish)
  1115. //f_title_change(dw_1)
  1116. //wf_hide_col()
  1117. end event
  1118. type st_3 from w_publ_easyq`st_3 within w_saletask_sc_mx
  1119. integer x = 526
  1120. integer y = 304
  1121. integer width = 215
  1122. alignment alignment = left!
  1123. end type
  1124. type st_4 from w_publ_easyq`st_4 within w_saletask_sc_mx
  1125. integer x = 1239
  1126. integer y = 304
  1127. end type
  1128. type em_1 from w_publ_easyq`em_1 within w_saletask_sc_mx
  1129. integer x = 736
  1130. integer y = 288
  1131. end type
  1132. type em_2 from w_publ_easyq`em_2 within w_saletask_sc_mx
  1133. integer x = 1339
  1134. integer y = 288
  1135. end type
  1136. type ddlb_yl from w_publ_easyq`ddlb_yl within w_saletask_sc_mx
  1137. integer x = 4087
  1138. integer y = 36
  1139. end type
  1140. type cbx_yl from w_publ_easyq`cbx_yl within w_saletask_sc_mx
  1141. integer x = 3835
  1142. integer y = 28
  1143. integer width = 238
  1144. end type
  1145. type dw_1 from w_publ_easyq`dw_1 within w_saletask_sc_mx
  1146. integer y = 400
  1147. integer width = 2967
  1148. integer height = 1724
  1149. string dataobject = "dw_saletask_sc_mx_edit"
  1150. end type
  1151. event dw_1::doubleclicked;String LS_STR,column_name
  1152. IF Not DW_EDIT_MODE THEN
  1153. IF if_mdf_title THEN
  1154. IF Lower(Left(dwo.Type,4)) = 'text' THEN
  1155. s_inputbox S_SREU
  1156. S_SREU.Title = '目前标题为: '+dwo.Text+' 。请输入新标题: '
  1157. S_SREU.OLD_TEXT = dwo.Text
  1158. column_name = dwo.Name
  1159. OpenWithParm(w_inputbox,S_SREU)
  1160. LS_STR = Message.StringParm
  1161. IF Trim(LS_STR) <> '' And dwo.Text <> LS_STR THEN
  1162. This.Modify(column_name+'.text="'+LS_STR+'"')
  1163. END IF
  1164. END IF
  1165. ELSE
  1166. IF row > 0 THEN
  1167. String ls_code
  1168. Long ll_scid
  1169. ll_scid = This.Object.u_saletask_scid[row]
  1170. ls_code = This.Object.u_saletask_taskcode[row]
  1171. f_open_win(ll_scid,ls_code)
  1172. END IF
  1173. END IF
  1174. ELSE
  1175. IF Lower(Left(dwo.Type,4)) = 'text' THEN
  1176. column_name = dwo.Name
  1177. IF column_name = 'plancode_t' THEN
  1178. Parent.TriggerEvent('ue_p_plancode')
  1179. ELSEIF column_name = 'u_saletaskmx_mxdscrp3_t' THEN
  1180. Parent.TriggerEvent('ue_p_mxdscrp3')
  1181. ELSEIF column_name = 'u_saletaskmx_mxdscrp4_t' THEN
  1182. Parent.TriggerEvent('ue_p_mxdscrp4')
  1183. END IF
  1184. ELSE
  1185. IF dwo.Name = 'u_saletaskmx_mxdscrp' THEN
  1186. Parent.TriggerEvent('ue_view_mxdscrp')
  1187. RETURN
  1188. ELSEIF dwo.Name = 'mxdscrp2' THEN
  1189. Parent.TriggerEvent('ue_view_mxdscrp2')
  1190. RETURN
  1191. END IF
  1192. END IF
  1193. END IF
  1194. //IF not dw_edit_mode THEN
  1195. // IF row > 0 THEN
  1196. // String ls_code
  1197. // Long ll_scid
  1198. //
  1199. // ll_scid = THIS.Object.u_saletask_scid[row]
  1200. // ls_code = THIS.Object.u_saletask_taskcode[row]
  1201. //
  1202. // f_open_win(ll_scid,ls_code)
  1203. // END IF
  1204. //END IF
  1205. //IF dw_edit_mode THEN
  1206. //
  1207. //
  1208. //END IF
  1209. end event
  1210. event dw_1::clicked;call super::clicked;this.setrow(row)
  1211. THIS.SelectRow(0,FALSE)
  1212. THIS.SelectRow(row,TRUE)
  1213. end event
  1214. type sle_mtrl from w_publ_easyq`sle_mtrl within w_saletask_sc_mx
  1215. end type
  1216. type sle_cust from w_publ_easyq`sle_cust within w_saletask_sc_mx
  1217. end type
  1218. type st_mtrl from w_publ_easyq`st_mtrl within w_saletask_sc_mx
  1219. end type
  1220. type st_cust from w_publ_easyq`st_cust within w_saletask_sc_mx
  1221. end type
  1222. type cbx_loginretr from w_publ_easyq`cbx_loginretr within w_saletask_sc_mx
  1223. integer x = 2674
  1224. end type
  1225. type pb_em1 from w_publ_easyq`pb_em1 within w_saletask_sc_mx
  1226. integer x = 1147
  1227. integer y = 288
  1228. end type
  1229. type pb_em2 from w_publ_easyq`pb_em2 within w_saletask_sc_mx
  1230. integer x = 1760
  1231. integer y = 288
  1232. end type
  1233. type pb_2 from w_publ_easyq`pb_2 within w_saletask_sc_mx
  1234. integer x = 1870
  1235. integer y = 288
  1236. end type
  1237. type cb_help from w_publ_easyq`cb_help within w_saletask_sc_mx
  1238. integer x = 3515
  1239. end type
  1240. type cb_copyself from w_publ_easyq`cb_copyself within w_saletask_sc_mx
  1241. boolean visible = false
  1242. integer width = 238
  1243. end type
  1244. type gb_1 from w_publ_easyq`gb_1 within w_saletask_sc_mx
  1245. end type
  1246. type ln_bar from w_publ_easyq`ln_bar within w_saletask_sc_mx
  1247. end type
  1248. type ln_bar2 from w_publ_easyq`ln_bar2 within w_saletask_sc_mx
  1249. end type
  1250. type r_bar from w_publ_easyq`r_bar within w_saletask_sc_mx
  1251. integer x = 4649
  1252. integer y = 24
  1253. end type
  1254. type ln_1 from w_publ_easyq`ln_1 within w_saletask_sc_mx
  1255. integer beginy = 388
  1256. integer endy = 388
  1257. end type
  1258. type ln_2 from w_publ_easyq`ln_2 within w_saletask_sc_mx
  1259. integer beginy = 396
  1260. integer endy = 396
  1261. end type
  1262. type ln_3 from w_publ_easyq`ln_3 within w_saletask_sc_mx
  1263. end type
  1264. type ln_4 from w_publ_easyq`ln_4 within w_saletask_sc_mx
  1265. end type
  1266. type ddlb_1 from dropdownlistbox within w_saletask_sc_mx
  1267. integer y = 292
  1268. integer width = 407
  1269. integer height = 300
  1270. integer taborder = 110
  1271. boolean bringtotop = true
  1272. integer textsize = -9
  1273. integer weight = 400
  1274. fontcharset fontcharset = gb2312charset!
  1275. fontpitch fontpitch = variable!
  1276. string facename = "宋体"
  1277. long textcolor = 33554432
  1278. string text = "按订货日期"
  1279. boolean sorted = false
  1280. string item[] = {"按订货日期","按交货日期"}
  1281. borderstyle borderstyle = stylelowered!
  1282. end type
  1283. event selectionchanged;if this.text = '按订货日期' then
  1284. cur_stattype = 0
  1285. else
  1286. cur_stattype = 1
  1287. end if
  1288. cb_1.triggerevent(clicked!)
  1289. end event
  1290. event constructor;cur_stattype = Long(f_ProfileString(sys_empid, "saletask_sc_mx", "cur_stattype", "0"))
  1291. CHOOSE CASE cur_stattype
  1292. CASE 0
  1293. this.Text = "按订货日期"
  1294. CASE 1
  1295. this.Text = "按交货日期"
  1296. END CHOOSE
  1297. end event
  1298. type ddlb_scid from uo_ddlb_scid within w_saletask_sc_mx
  1299. integer y = 188
  1300. integer width = 549
  1301. integer height = 620
  1302. integer taborder = 90
  1303. boolean bringtotop = true
  1304. end type
  1305. event constructor;call super::constructor;cur_scid_arr = THIS.uo_scid_arr
  1306. cur_scid = This.uo_scid
  1307. end event
  1308. event selectionchanged;call super::selectionchanged;cur_scid_arr = THIS.uo_scid_arr
  1309. cur_scid = This.uo_scid
  1310. cb_1.triggerevent(clicked!)
  1311. end event
  1312. type cb_3 from uo_imflatbutton within w_saletask_sc_mx
  1313. integer x = 603
  1314. integer width = 151
  1315. integer height = 164
  1316. integer taborder = 90
  1317. boolean bringtotop = true
  1318. string text = "确认"
  1319. string normalpicname = "audit.BMP"
  1320. integer picsize = 16
  1321. toolbaralignment pic_align = alignattop!
  1322. boolean border = false
  1323. end type
  1324. event clicked;call super::clicked;IF NOT f_power_ind(984) THEN
  1325. MessageBox('提示','你没有使用权限!',information!,OK!)
  1326. RETURN
  1327. END IF
  1328. IF sys_option_saletask_sc_print = 0 or print_sc THEN
  1329. print_sc = false
  1330. Long LS_ROW
  1331. Long ll_sptid,printid
  1332. String ls_taskcode
  1333. String ls_printid
  1334. String ls_parms[]
  1335. String ls_msg
  1336. Long ll_mx
  1337. Long ls_msgprintid
  1338. s_saletaskmx s_mx[]
  1339. dw_1.AcceptText()
  1340. FOR LS_ROW = 1 TO dw_1.RowCount()
  1341. IF dw_1.Object.isselect[LS_ROW] = 1 THEN
  1342. ls_taskcode = dw_1.Object.u_saletask_taskcode[LS_ROW]
  1343. IF dw_1.Object.u_saletaskmx_ifsc[LS_ROW] = 0 and dw_1.Object.u_saletask_status[LS_ROW] > 0 THEN
  1344. ll_mx ++
  1345. ls_printid = String(dw_1.Object.u_saletaskmx_printid[LS_ROW],'#####0')
  1346. ls_parms[ll_mx] = LeftTrim(RightTrim(ls_taskcode)) + LeftTrim(RightTrim(ls_printid))
  1347. s_mx[ll_mx].taskid = dw_1.Object.u_saletask_taskid[LS_ROW]
  1348. s_mx[ll_mx].scid = dw_1.Object.u_saletask_scid[LS_ROW]
  1349. s_mx[ll_mx].printid = dw_1.Object.u_saletaskmx_printid[LS_ROW]
  1350. s_mx[ll_mx].cardcount = dw_1.Object.u_saletaskmx_orderqty[LS_ROW]
  1351. s_mx[ll_mx].mtrlid = dw_1.Object.mtrlid[LS_ROW]
  1352. s_mx[ll_mx].mtrlcode= dw_1.Object.u_mtrldef_mtrlcode[LS_ROW]
  1353. s_mx[ll_mx].Status= dw_1.Object.u_saletaskmx_status[LS_ROW]
  1354. s_mx[ll_mx].pcode= dw_1.Object.u_saletaskmx_pcode[LS_ROW]
  1355. s_mx[ll_mx].woodcode= dw_1.Object.u_saletaskmx_woodcode[LS_ROW]
  1356. ELSE
  1357. ls_msg = ls_msg + '第' + String(dw_1.Object.row[LS_ROW]) + '行,订单:' + ls_taskcode + ',产品:' + dw_1.Object.u_mtrldef_mtrlcode[LS_ROW] + '~n'
  1358. END IF
  1359. END IF
  1360. NEXT
  1361. IF ls_msg <> '' THEN
  1362. ls_msg = ls_msg + '已确认或未审核,操作取消! '
  1363. MessageBox('错误',ls_msg,stopsign!,OK!)
  1364. RETURN
  1365. END IF
  1366. IF obj_order.uof_sc(s_mx,ll_mx,1,ls_msg) = 0 THEN
  1367. MessageBox('错误',ls_msg,stopsign!,OK!)
  1368. RETURN
  1369. END IF
  1370. cb_1.TriggerEvent(Clicked!)
  1371. ELSE
  1372. String ls_dft_old_dwname, ls_dft_new_dwname,ls_chnname,ls_dwtype
  1373. Long ls_dwprintid
  1374. String ls_windowname
  1375. Int ls_i
  1376. Long ll_billid
  1377. Int li_ifuse
  1378. Long ll_row
  1379. String Name,ll_rpname
  1380. Long ll_RpID,ll_flag,ll_ifuse
  1381. if_sc = TRUE
  1382. w_curwin = PARENT
  1383. ls_windowname = PARENT.ClassName ( )
  1384. SELECT billid,ifuse
  1385. INTO :ll_billid,
  1386. :li_ifuse
  1387. FROM u_report_bill
  1388. Where winName = :ls_windowname;
  1389. IF sqlca.SQLCode <> 0 THEN
  1390. li_ifuse = 0
  1391. END IF
  1392. IF li_ifuse = 0 THEN
  1393. DECLARE dft_dwprint CURSOR FOR
  1394. SELECT dwprintid,dft_old_dwname, dft_new_dwname, chnname, dwtype
  1395. FROM sys_dft_dwprint_dynamic
  1396. WHERE dwtype = :ls_windowname
  1397. AND ptype = 0;
  1398. OPEN dft_dwprint;
  1399. FETCH dft_dwprint INTO :ls_dwprintid,:ls_dft_old_dwname, :ls_dft_new_dwname,:ls_chnname, :ls_dwtype;
  1400. IF sqlca.SQLCode <> 0 THEN
  1401. PARENT.TriggerEvent('ue_viewprint',0,0)
  1402. ELSE
  1403. m_dft_dwprint_item m_1
  1404. m_1 = CREATE m_dft_dwprint_item
  1405. ls_i = 1
  1406. DO WHILE sqlca.SQLCode = 0
  1407. f_add_menuItem_dft(m_1,ls_i,ls_chnname,String(ls_dwprintid))
  1408. FETCH dft_dwprint INTO :ls_dwprintid,:ls_dft_old_dwname, :ls_dft_new_dwname,:ls_chnname, :ls_dwtype;
  1409. ls_i++
  1410. LOOP
  1411. CLOSE dft_dwprint;
  1412. m_1.PopMenu(THIS.X+50,THIS.Y+50)
  1413. END IF
  1414. ELSE
  1415. DECLARE rpt_dwprint CURSOR FOR
  1416. SELECT RpID,RpName,Flag,Ifuse
  1417. FROM U_report_list
  1418. WHERE billid = :ll_billid
  1419. Order By RpName;
  1420. OPEN rpt_dwprint;
  1421. FETCH rpt_dwprint INTO :ll_RpID,:ll_rpname,:ll_flag,:ll_ifuse;
  1422. IF sqlca.SQLCode <> 0 THEN
  1423. PARENT.TriggerEvent('ue_rpt_viewprint',0,0)
  1424. ELSE
  1425. m_rpt_dwprint_item m_2
  1426. m_2 = CREATE m_rpt_dwprint_item
  1427. ls_i = 1
  1428. DO WHILE sqlca.SQLCode = 0
  1429. IF f_pow_rpt(ll_RpID) AND ll_ifuse = 1 AND ll_flag = 1 THEN //权限检查f_pow_rpt( )
  1430. f_add_menuItem_rpt(m_2,ls_i,ll_rpname,String(ll_RpID))
  1431. END IF
  1432. FETCH rpt_dwprint INTO :ll_RpID,:ll_rpname,:ll_flag,:ll_ifuse;
  1433. ls_i++
  1434. LOOP
  1435. CLOSE rpt_dwprint;
  1436. m_2.Item[1].Visible = FALSE
  1437. m_2.PopMenu(THIS.X+50,THIS.Y+50)
  1438. END IF
  1439. END IF
  1440. END IF
  1441. end event
  1442. type cb_4 from uo_imflatbutton within w_saletask_sc_mx
  1443. integer x = 754
  1444. integer width = 256
  1445. integer height = 164
  1446. integer taborder = 100
  1447. boolean bringtotop = true
  1448. string text = "取消确认"
  1449. string normalpicname = "caudit.BMP"
  1450. integer picsize = 16
  1451. toolbaralignment pic_align = alignattop!
  1452. boolean border = false
  1453. end type
  1454. event clicked;call super::clicked;IF NOT f_power_ind(986) THEN
  1455. MessageBox('提示','你没有使用权限!',information!,OK!)
  1456. RETURN
  1457. END IF
  1458. Long LS_ROW
  1459. String ls_parms[]
  1460. String ls_msg
  1461. Long ll_mx
  1462. String ls_taskcode
  1463. s_saletaskmx s_mx[]
  1464. IF MessageBox ("询问","是否确定要取消确认当前选择明细吗",Question!,YesNo! ) = 2 THEN RETURN
  1465. IF ddlb_scid.uo_scid = - 1 THEN
  1466. MessageBox('提示','请先选择分部',information!,OK!)
  1467. RETURN
  1468. END IF
  1469. ll_mx = 0
  1470. ls_msg = ''
  1471. dw_1.AcceptText()
  1472. FOR LS_ROW = 1 TO dw_1.RowCount()
  1473. IF dw_1.Object.isselect[LS_ROW] = 1 THEN
  1474. ls_taskcode = dw_1.Object.u_saletask_taskcode[LS_ROW]
  1475. IF dw_1.Object.u_saletaskmx_ifsc[LS_ROW] = 1 THEN
  1476. ll_mx ++
  1477. s_mx[ll_mx].taskid = dw_1.Object.u_saletask_taskid[LS_ROW]
  1478. s_mx[ll_mx].scid = dw_1.Object.u_saletask_scid[LS_ROW]
  1479. s_mx[ll_mx].printid = dw_1.Object.u_saletaskmx_printid[LS_ROW]
  1480. s_mx[ll_mx].printrow= dw_1.Object.row[LS_ROW]
  1481. ELSE
  1482. ls_msg = ls_msg + '第' + string(dw_1.Object.row[LS_ROW]) + '行,订单:' + ls_taskcode + ',产品:' + dw_1.Object.u_mtrldef_mtrlcode[LS_ROW] + '~n'
  1483. END IF
  1484. END IF
  1485. NEXT
  1486. IF ls_msg <> '' THEN
  1487. ls_msg = ls_msg + '已经排产,不能取消确认!'
  1488. MessageBox('错误',ls_msg,stopsign!,OK!)
  1489. RETURN
  1490. END IF
  1491. IF ll_mx = 0 THEN
  1492. MessageBox('提示','请选择要目标明细!',information!,OK!)
  1493. RETURN
  1494. ELSE
  1495. IF obj_order.uof_sc(s_mx,ll_mx,0,ls_msg) = 0 THEN
  1496. MessageBox('错误',ls_msg,stopsign!,OK!)
  1497. RETURN
  1498. END IF
  1499. END IF
  1500. cb_1.triggerevent(clicked!)
  1501. end event
  1502. type cbx_allselect from checkbox within w_saletask_sc_mx
  1503. integer x = 2011
  1504. integer y = 304
  1505. integer width = 210
  1506. integer height = 60
  1507. boolean bringtotop = true
  1508. integer textsize = -9
  1509. integer weight = 400
  1510. fontcharset fontcharset = gb2312charset!
  1511. fontpitch fontpitch = variable!
  1512. string facename = "宋体"
  1513. long textcolor = 33554432
  1514. long backcolor = 134217739
  1515. string text = "全选"
  1516. end type
  1517. event clicked;Int li
  1518. IF THIS.Checked THEN
  1519. FOR li = 1 TO dw_1.RowCount()
  1520. dw_1.object.isselect[li] = 1
  1521. NEXT
  1522. ELSE
  1523. FOR li = 1 TO dw_1.RowCount()
  1524. dw_1.object.isselect[li] = 0
  1525. NEXT
  1526. END IF
  1527. end event
  1528. type cb_5 from uo_imflatbutton within w_saletask_sc_mx
  1529. integer x = 2514
  1530. integer width = 192
  1531. integer height = 164
  1532. integer taborder = 110
  1533. boolean bringtotop = true
  1534. string text = "预览&P"
  1535. string normalpicname = "preview.bmp"
  1536. integer picsize = 16
  1537. toolbaralignment pic_align = alignattop!
  1538. boolean border = false
  1539. end type
  1540. event clicked;call super::clicked;String ls_dft_old_dwname, ls_dft_new_dwname,ls_chnname,ls_dwtype
  1541. Long ls_dwprintid
  1542. String ls_windowname
  1543. Int ls_i
  1544. Long ll_billid
  1545. Int li_ifuse
  1546. Long ll_row
  1547. String Name,ll_rpname
  1548. Long ll_RpID,ll_flag,ll_ifuse
  1549. if_sc = FALSE
  1550. w_curwin = PARENT
  1551. ls_windowname = PARENT.ClassName ( )
  1552. SELECT billid,ifuse
  1553. INTO :ll_billid,
  1554. :li_ifuse
  1555. FROM u_report_bill
  1556. Where winName = :ls_windowname;
  1557. IF sqlca.SQLCode <> 0 THEN
  1558. li_ifuse = 0
  1559. END IF
  1560. IF li_ifuse = 0 THEN
  1561. DECLARE dft_dwprint CURSOR FOR
  1562. SELECT dwprintid,dft_old_dwname, dft_new_dwname, chnname, dwtype
  1563. FROM sys_dft_dwprint_dynamic
  1564. WHERE dwtype = :ls_windowname
  1565. AND ptype = 0 and ifuse = 1;
  1566. OPEN dft_dwprint;
  1567. FETCH dft_dwprint INTO :ls_dwprintid,:ls_dft_old_dwname, :ls_dft_new_dwname,:ls_chnname, :ls_dwtype;
  1568. IF sqlca.SQLCode <> 0 THEN
  1569. PARENT.TriggerEvent('ue_viewprint',0,0)
  1570. ELSE
  1571. m_dft_dwprint_item m_1
  1572. m_1 = CREATE m_dft_dwprint_item
  1573. ls_i = 1
  1574. DO WHILE sqlca.SQLCode = 0
  1575. f_add_menuItem_dft(m_1,ls_i,ls_chnname,String(ls_dwprintid))
  1576. FETCH dft_dwprint INTO :ls_dwprintid,:ls_dft_old_dwname, :ls_dft_new_dwname,:ls_chnname, :ls_dwtype;
  1577. ls_i++
  1578. LOOP
  1579. CLOSE dft_dwprint;
  1580. m_1.PopMenu(THIS.X+50,THIS.Y+50)
  1581. END IF
  1582. ELSE
  1583. DECLARE rpt_dwprint CURSOR FOR
  1584. SELECT RpID,RpName,Flag,Ifuse
  1585. FROM U_report_list
  1586. WHERE billid = :ll_billid
  1587. Order By RpName;
  1588. OPEN rpt_dwprint;
  1589. FETCH rpt_dwprint INTO :ll_RpID,:ll_rpname,:ll_flag,:ll_ifuse;
  1590. IF sqlca.SQLCode <> 0 THEN
  1591. PARENT.TriggerEvent('ue_rpt_viewprint',0,0)
  1592. ELSE
  1593. m_rpt_dwprint_item m_2
  1594. m_2 = CREATE m_rpt_dwprint_item
  1595. ls_i = 1
  1596. DO WHILE sqlca.SQLCode = 0
  1597. IF f_pow_rpt(ll_RpID) AND ll_ifuse = 1 AND ll_flag = 1 THEN //权限检查f_pow_rpt( )
  1598. f_add_menuItem_rpt(m_2,ls_i,ll_rpname,String(ll_RpID))
  1599. END IF
  1600. FETCH rpt_dwprint INTO :ll_RpID,:ll_rpname,:ll_flag,:ll_ifuse;
  1601. ls_i++
  1602. LOOP
  1603. CLOSE rpt_dwprint;
  1604. m_2.Item[1].Visible = FALSE
  1605. m_2.PopMenu(THIS.X+50,THIS.Y+50)
  1606. END IF
  1607. END IF
  1608. end event
  1609. type cb_6 from uo_imflatbutton within w_saletask_sc_mx
  1610. integer x = 2706
  1611. integer width = 192
  1612. integer height = 164
  1613. integer taborder = 100
  1614. boolean bringtotop = true
  1615. string text = "打印&O"
  1616. string normalpicname = "print.bmp"
  1617. integer picsize = 16
  1618. toolbaralignment pic_align = alignattop!
  1619. boolean border = false
  1620. end type
  1621. event clicked;call super::clicked;String ls_dft_old_dwname, ls_dft_new_dwname,ls_chnname,ls_dwtype
  1622. Long ls_dwprintid
  1623. String ls_windowname
  1624. Int ls_i
  1625. Long ll_billid
  1626. Int li_ifuse
  1627. Long ll_row
  1628. String Name,ll_rpname
  1629. Long ll_RpID,ll_flag,ll_ifuse
  1630. w_curwin = PARENT
  1631. ls_windowname = PARENT.ClassName ( )
  1632. SELECT billid,ifuse
  1633. INTO :ll_billid,
  1634. :li_ifuse
  1635. FROM u_report_bill
  1636. Where winName = :ls_windowname;
  1637. IF sqlca.SQLCode <> 0 THEN
  1638. li_ifuse = 0
  1639. END IF
  1640. IF li_ifuse = 0 THEN
  1641. DECLARE dft_dwprint1 CURSOR FOR
  1642. SELECT dwprintid,dft_old_dwname, dft_new_dwname, chnname, dwtype
  1643. FROM sys_dft_dwprint_dynamic
  1644. WHERE dwtype = :ls_windowname
  1645. AND ptype = 0 and ifuse = 1;
  1646. OPEN dft_dwprint1;
  1647. FETCH dft_dwprint1 INTO :ls_dwprintid,:ls_dft_old_dwname, :ls_dft_new_dwname,:ls_chnname, :ls_dwtype;
  1648. IF sqlca.SQLCode <> 0 THEN
  1649. PARENT.TriggerEvent('ue_print',0,0)
  1650. ELSE
  1651. m_dft_dwprint_print_item m_3
  1652. m_3 = CREATE m_dft_dwprint_print_item
  1653. ls_i = 1
  1654. DO WHILE sqlca.SQLCode = 0
  1655. f_add_menuitem_print_dft(m_3,ls_i,ls_chnname,String(ls_dwprintid))
  1656. FETCH dft_dwprint1 INTO :ls_dwprintid,:ls_dft_old_dwname, :ls_dft_new_dwname,:ls_chnname, :ls_dwtype;
  1657. ls_i++
  1658. LOOP
  1659. CLOSE dft_dwprint1;
  1660. m_3.PopMenu(THIS.X+50,THIS.Y+50)
  1661. END IF
  1662. ELSE
  1663. DECLARE rpt_dwprint2 CURSOR FOR
  1664. SELECT RpID,RpName,Flag,Ifuse
  1665. FROM U_report_list
  1666. WHERE billid = :ll_billid
  1667. Order By RpName;
  1668. OPEN rpt_dwprint2;
  1669. FETCH rpt_dwprint2 INTO :ll_RpID,:ll_rpname,:ll_flag,:ll_ifuse;
  1670. IF sqlca.SQLCode <> 0 THEN
  1671. PARENT.TriggerEvent('ue_print',0,0)
  1672. ELSE
  1673. m_rpt_dwprint_print_item m_4
  1674. m_4 = CREATE m_rpt_dwprint_print_item
  1675. ls_i = 1
  1676. DO WHILE sqlca.SQLCode = 0
  1677. IF ll_ifuse = 1 AND ll_flag = 1 AND f_pow_rpt(ll_RpID) THEN //需添加权限
  1678. f_add_menuItem_print_rpt(m_4,ls_i,ll_rpname,String(ll_RpID))
  1679. END IF
  1680. FETCH rpt_dwprint2 INTO :ll_RpID,:ll_rpname,:ll_flag,:ll_ifuse;
  1681. ls_i++
  1682. LOOP
  1683. CLOSE rpt_dwprint2;
  1684. m_4.Item[1].Visible = FALSE
  1685. m_4.PopMenu(THIS.X+50,THIS.Y+50)
  1686. END IF
  1687. END IF
  1688. end event
  1689. type cb_10 from uo_imflatbutton within w_saletask_sc_mx
  1690. integer x = 2286
  1691. integer width = 201
  1692. integer height = 164
  1693. integer taborder = 110
  1694. boolean bringtotop = true
  1695. string text = "流程卡"
  1696. string normalpicname = "update2.BMP"
  1697. integer picsize = 16
  1698. toolbaralignment pic_align = alignattop!
  1699. boolean border = false
  1700. end type
  1701. event clicked;call super::clicked;IF NOT f_power_ind(1357) THEN
  1702. MessageBox('提示','你没有使用权限!',information!,OK!)
  1703. RETURN
  1704. END IF
  1705. dw_1.AcceptText()
  1706. IF dw_1.RowCount() = 0 THEN RETURN
  1707. Long i,cnt
  1708. Long scid,taskid,mxprintid
  1709. Long qty
  1710. String ls_msg
  1711. cnt = 0
  1712. s_edit_index_tran s_tranf8
  1713. FOR i = 1 TO dw_1.RowCount()
  1714. IF dw_1.Object.isselect[i] = 1 THEN
  1715. cnt ++
  1716. s_tranf8.arr_long[cnt] = dw_1.Object.u_saletask_scid[i]
  1717. s_tranf8.arr_long2[cnt] = dw_1.Object.u_saletask_taskid[i]
  1718. s_tranf8.arr_long3[cnt] = dw_1.Object.u_saletaskmx_printid[i]
  1719. qty = ceiling(dw_1.Object.u_saletaskmx_orderqty[i])
  1720. s_tranf8.arr_long4[cnt] = qty
  1721. END IF
  1722. NEXT
  1723. IF cnt = 0 THEN
  1724. i = dw_1.GetRow()
  1725. IF i <= 0 THEN
  1726. MessageBox('提示','请先选择一条订单明细', information!, OK! )
  1727. RETURN
  1728. END IF
  1729. cnt ++
  1730. s_tranf8.arr_long[cnt] = dw_1.Object.u_saletask_scid[i]
  1731. s_tranf8.arr_long2[cnt] = dw_1.Object.u_saletask_taskid[i]
  1732. s_tranf8.arr_long3[cnt] = dw_1.Object.u_saletaskmx_printid[i]
  1733. qty = ceiling(dw_1.Object.u_saletaskmx_orderqty[i])
  1734. s_tranf8.arr_long4[cnt] = qty
  1735. END IF
  1736. OpenWithParm(w_saletask_sc_card,s_tranf8)
  1737. end event
  1738. type ddlb_2 from dropdownlistbox within w_saletask_sc_mx
  1739. integer x = 585
  1740. integer y = 188
  1741. integer width = 306
  1742. integer height = 300
  1743. integer taborder = 120
  1744. boolean bringtotop = true
  1745. integer textsize = -9
  1746. integer weight = 400
  1747. fontcharset fontcharset = gb2312charset!
  1748. fontpitch fontpitch = variable!
  1749. string facename = "宋体"
  1750. long textcolor = 33554432
  1751. string text = "[全部]"
  1752. boolean sorted = false
  1753. string item[] = {"[全部]","未排产","已排产"}
  1754. borderstyle borderstyle = stylelowered!
  1755. end type
  1756. event selectionchanged;IF THIS.Text = '未排产' THEN
  1757. cur_sc = 0
  1758. ELSEIF THIS.Text = '已排产' THEN
  1759. cur_sc = 1
  1760. ELSE
  1761. cur_sc = -1
  1762. END IF
  1763. cb_1.triggerevent(clicked!)
  1764. end event
  1765. event constructor;
  1766. cur_sc = Long(f_ProfileString (sys_empid,"saletask_sc_mx", "cur_sc", "-1"))
  1767. CHOOSE CASE cur_sc
  1768. CASE 0
  1769. this.Text = "未排产"
  1770. CASE 1
  1771. this.Text = "已排产"
  1772. CASE -1
  1773. this.Text = "[全部]"
  1774. END CHOOSE
  1775. end event
  1776. type ddlb_3 from dropdownlistbox within w_saletask_sc_mx
  1777. integer x = 914
  1778. integer y = 192
  1779. integer width = 306
  1780. integer height = 300
  1781. integer taborder = 120
  1782. boolean bringtotop = true
  1783. integer textsize = -9
  1784. integer weight = 400
  1785. fontcharset fontcharset = gb2312charset!
  1786. fontpitch fontpitch = variable!
  1787. string facename = "宋体"
  1788. long textcolor = 33554432
  1789. string text = "[全部]"
  1790. boolean sorted = false
  1791. string item[] = {"[全部]","未进仓","已进仓"}
  1792. borderstyle borderstyle = stylelowered!
  1793. end type
  1794. event selectionchanged;IF This.Text = '未进仓' THEN
  1795. cur_inware = 0
  1796. ELSEIF This.Text = '已进仓' THEN
  1797. cur_inware = 1
  1798. ELSE
  1799. cur_inware = -1
  1800. END IF
  1801. cb_1.TriggerEvent(Clicked!)
  1802. end event
  1803. event constructor;cur_inware = Long(f_ProfileString(sys_empid, "saletask_sc_mx", "cur_inware", "-1"))
  1804. CHOOSE CASE cur_inware
  1805. CASE 0
  1806. this.Text = "未进仓"
  1807. CASE 1
  1808. this.Text = "已进仓"
  1809. CASE -1
  1810. this.Text = "[全部]"
  1811. END CHOOSE
  1812. end event
  1813. type cb_edit from uo_imflatbutton within w_saletask_sc_mx
  1814. integer x = 306
  1815. integer width = 151
  1816. integer height = 164
  1817. integer taborder = 90
  1818. boolean bringtotop = true
  1819. string text = "修改"
  1820. string normalpicname = "OPEN.bmp"
  1821. integer picsize = 16
  1822. toolbaralignment pic_align = alignattop!
  1823. boolean border = false
  1824. end type
  1825. event clicked;call super::clicked;IF NOT f_power_ind(1492) THEN
  1826. MessageBox('提示','你没有使用权限!',information!,OK!)
  1827. RETURN
  1828. END IF
  1829. IF dw_edit_mode THEN
  1830. IF MessageBox ("IF","是否确定要放弃保存?",Question!,YesNo! ) = 2 THEN RETURN
  1831. ELSE
  1832. END IF
  1833. dw_edit_mode = NOT dw_edit_mode
  1834. wf_refresh_interface()
  1835. IF NOT dw_edit_mode THEN
  1836. cb_1.TriggerEvent(Clicked!)
  1837. END IF
  1838. end event
  1839. type cb_save from uo_imflatbutton within w_saletask_sc_mx
  1840. integer x = 453
  1841. integer width = 151
  1842. integer height = 164
  1843. integer taborder = 100
  1844. boolean bringtotop = true
  1845. boolean enabled = false
  1846. string text = "保存"
  1847. string normalpicname = "Save.bmp"
  1848. integer picsize = 16
  1849. toolbaralignment pic_align = alignattop!
  1850. boolean border = false
  1851. end type
  1852. event clicked;call super::clicked;IF NOT f_power_ind(1492) THEN
  1853. MessageBox('提示','你没有使用权限!',information!,OK!)
  1854. RETURN
  1855. END IF
  1856. dw_1.AcceptText()
  1857. IF dw_edit_mode THEN
  1858. IF dw_1.GetNextModified(0, Primary!) = 0 THEN
  1859. MessageBox('系统提示','没有任何修改,不可以保存!')
  1860. RETURN
  1861. END IF
  1862. Int li_qtychk
  1863. Long ll_scid, ll_taskid
  1864. DateTime ldt_moddate
  1865. Long ll_row, ll_rowCnt
  1866. String ls_errmsg
  1867. // ll_row = dw_1.Find("qtychk = 1",1, dw_1.RowCount())
  1868. //
  1869. // IF ll_row > 0 THEN
  1870. // MessageBox('系统提示','行['+String(ll_row)+'],需排产数 + 需订购数 + 需外协数 > 订单数量,请检查')
  1871. // RETURN
  1872. // END IF
  1873. // //保存修改人
  1874. // ll_rowCnt = dw_1.RowCount()
  1875. // ldt_moddate = DateTime(Today(), Now())
  1876. // DO WHILE ll_row <= ll_rowCnt
  1877. // ll_row = dw_1.GetNextModified(ll_row, Primary!)
  1878. // IF ll_row > 0 THEN
  1879. // ll_scid = dw_1.Object.u_saletask_scid[ll_row]
  1880. // ll_taskid = dw_1.Object.u_saletask_taskid[ll_row]
  1881. // UPDATE u_saletask
  1882. // SET moddate = :ldt_moddate,
  1883. // modemp = :publ_operator
  1884. // where scid = :ll_scid
  1885. // and taskid = :ll_taskid;
  1886. // IF sqlca.SQLCode <> 0 THEN
  1887. // ROLLBACK;
  1888. // MessageBox ("系统提示",ls_errmsg+"保存修改人操作失败!",exclamation!,OK!)
  1889. // RETURN
  1890. // END IF
  1891. // ELSE
  1892. // ll_row = ll_rowCnt + 1
  1893. // END IF
  1894. // LOOP
  1895. //保存修改
  1896. IF dw_1.Update() = -1 THEN
  1897. ROLLBACK;
  1898. MessageBox ("系统提示",ls_errmsg+"保存操作失败!",exclamation!,OK!)
  1899. RETURN
  1900. ELSE
  1901. COMMIT;
  1902. END IF
  1903. END IF
  1904. dw_edit_mode = NOT dw_edit_mode
  1905. wf_refresh_interface()
  1906. end event
  1907. type st_1 from statictext within w_saletask_sc_mx
  1908. integer x = 4375
  1909. integer y = 132
  1910. integer width = 457
  1911. integer height = 76
  1912. boolean bringtotop = true
  1913. integer textsize = -9
  1914. integer weight = 400
  1915. fontcharset fontcharset = gb2312charset!
  1916. fontpitch fontpitch = variable!
  1917. string facename = "宋体"
  1918. long textcolor = 255
  1919. long backcolor = 67108864
  1920. string text = "dw_1要用到update"
  1921. boolean focusrectangle = false
  1922. end type
  1923. type cbx_notsc from checkbox within w_saletask_sc_mx
  1924. integer x = 2025
  1925. integer y = 196
  1926. integer width = 498
  1927. integer height = 60
  1928. boolean bringtotop = true
  1929. integer textsize = -9
  1930. integer weight = 400
  1931. fontcharset fontcharset = gb2312charset!
  1932. fontpitch fontpitch = variable!
  1933. string facename = "宋体"
  1934. long textcolor = 33554432
  1935. long backcolor = 134217739
  1936. string text = "显示不需排产的"
  1937. end type
  1938. event clicked;IF This.checked THEN
  1939. cur_ifsc = 1
  1940. ELSE
  1941. cur_ifsc = 0
  1942. END IF
  1943. f_SetProfileString (sys_empid,'saletask_sc_mx', "cur_ifsc",String(cur_ifsc))
  1944. cb_1.TriggerEvent(Clicked!)
  1945. end event
  1946. event constructor;cur_ifsc = Long(f_ProfileString (sys_empid,"saletask_sc_mx", "cur_ifsc", "0"))
  1947. //This.Checked = cur_ifsc = 1
  1948. //
  1949. if cur_ifsc = 0 then
  1950. This.Checked = false
  1951. else
  1952. This.Checked = true
  1953. end if
  1954. end event
  1955. type cb_xls from uo_imflatbutton within w_saletask_sc_mx
  1956. boolean visible = false
  1957. integer x = 3232
  1958. integer width = 306
  1959. integer height = 164
  1960. integer taborder = 20
  1961. boolean bringtotop = true
  1962. string text = "Excel打印"
  1963. string normalpicname = "excel.bmp"
  1964. integer picsize = 16
  1965. toolbaralignment pic_align = alignattop!
  1966. boolean border = false
  1967. end type
  1968. event clicked;call super::clicked;// 约定 用 parent.Classname ( ) 即状况名称 作为打印模板的分类
  1969. uo_sendtoexcel obj_st
  1970. obj_st = Create uo_sendtoexcel
  1971. obj_st.commit_transaction = sqlca
  1972. obj_st.TriggerEventObject = This.GetParent()
  1973. obj_st.TriggerEventname = 'ue_xls'
  1974. String arg_msg
  1975. menu m1
  1976. m1 = obj_st.of_createmenu( Parent.ClassName ( ),sys_user_xls_print_str,sys_user_xls_send_str)
  1977. IF UpperBound( m1.Item) = 2 THEN
  1978. MessageBox('错误','当前单据还没有设置Excel打印模板.')
  1979. ELSE
  1980. m1.PopMenu(This.X ,This.Y+This.Height)
  1981. END IF
  1982. end event
  1983. type st_5 from statictext within w_saletask_sc_mx
  1984. integer x = 1248
  1985. integer y = 204
  1986. integer width = 343
  1987. integer height = 48
  1988. boolean bringtotop = true
  1989. integer textsize = -9
  1990. integer weight = 400
  1991. fontcharset fontcharset = gb2312charset!
  1992. fontpitch fontpitch = variable!
  1993. string facename = "宋体"
  1994. long textcolor = 33554432
  1995. long backcolor = 134217739
  1996. string text = "销售订单状态"
  1997. alignment alignment = right!
  1998. boolean focusrectangle = false
  1999. end type
  2000. type ddlb_status from uo_ddlb_status within w_saletask_sc_mx
  2001. integer x = 1605
  2002. integer y = 192
  2003. integer width = 389
  2004. integer height = 812
  2005. integer taborder = 100
  2006. boolean bringtotop = true
  2007. string item[] = {"[全部]","待审核[0]","待二审[4]","在进行[1]","已暂停[2]","已终止[3]","已完成[5]","手动完成[6]"}
  2008. integer uo_status = 1
  2009. integer dft_index = 4
  2010. end type
  2011. event selectionchanged;call super::selectionchanged;cb_1.TriggerEvent(Clicked!)
  2012. end event
  2013. event uof_getvalue;call super::uof_getvalue;cur_status = this.uo_status
  2014. end event
  2015. type cbx_1 from checkbox within w_saletask_sc_mx
  2016. integer x = 2546
  2017. integer y = 196
  2018. integer width = 850
  2019. integer height = 60
  2020. boolean bringtotop = true
  2021. integer textsize = -9
  2022. integer weight = 400
  2023. fontcharset fontcharset = gb2312charset!
  2024. fontpitch fontpitch = variable!
  2025. string facename = "宋体"
  2026. long textcolor = 33554432
  2027. long backcolor = 134217739
  2028. string text = "不显示终止订单或明细整行终止"
  2029. end type
  2030. event clicked;IF This.checked THEN
  2031. cur_ifstop = 1
  2032. ELSE
  2033. cur_ifstop = 0
  2034. END IF
  2035. f_SetProfileString (sys_empid,'saletask_sc_mx', "cur_ifstop",String(cur_ifstop))
  2036. cb_1.TriggerEvent(Clicked!)
  2037. end event
  2038. event constructor;cur_ifstop = Long(f_ProfileString (sys_empid,"saletask_sc_mx", "cur_ifstop", "0"))
  2039. //This.Checked = cur_ifsc = 1
  2040. //
  2041. if cur_ifstop = 0 then
  2042. This.Checked = false
  2043. else
  2044. This.Checked = true
  2045. end if
  2046. end event
  2047. type cb_9 from commandbutton within w_saletask_sc_mx
  2048. integer x = 2487
  2049. integer y = 304
  2050. integer width = 402
  2051. integer height = 84
  2052. integer taborder = 130
  2053. boolean bringtotop = true
  2054. integer textsize = -9
  2055. integer weight = 400
  2056. fontcharset fontcharset = gb2312charset!
  2057. fontpitch fontpitch = variable!
  2058. string facename = "宋体"
  2059. string text = "自动批号"
  2060. end type
  2061. event clicked;Long ll_Plancode,ll_number,ll_row
  2062. long ll_scid,ll_taskid,ll_printid
  2063. string ls_Plancode,ls_mid_number,ls_left,ls_auto_code,ls_j
  2064. Int i,j = 0
  2065. FOR ll_row = 1 TO dw_1.RowCount()
  2066. if dw_1.Object.u_saletaskmx_ifsc[ll_row] = 1 then Continue//已排产不参与自动批号
  2067. IF dw_1.Object.isselect[ll_row] = 1 THEN
  2068. ll_scid = dw_1.Object.scid[ll_row]
  2069. ll_taskid = dw_1.Object.taskid[ll_row]
  2070. ll_printid = dw_1.Object.u_saletaskmx_printid[ll_row]
  2071. // ls_plancode = dw_1.Object.plancode[ll_row]
  2072. // if ls_plancode <> '' then
  2073. // MessageBox('错误','选中的某个订单已有批号,请重新选择!',information!,OK!)
  2074. // exit
  2075. // end if
  2076. select max(Plancode) into :ls_Plancode from u_saletaskmx;
  2077. IF sqlca.SQLCode <> 0 THEN
  2078. MessageBox('提示','查找编号失败!~n'+sqlca.SQLErrText,information!,OK!)
  2079. RETURN
  2080. End if
  2081. IF IsNull(ls_Plancode) THEN
  2082. ll_number = 0
  2083. ls_left = '000'
  2084. ELSE
  2085. for i = 1 to len(ls_Plancode)
  2086. ls_mid_number = Mid(ls_Plancode,i,1)
  2087. if isnumber(ls_mid_number) = true then
  2088. exit
  2089. end if
  2090. next
  2091. ll_number = LONG(right(ls_Plancode,len(ls_Plancode) - i + 1))
  2092. ls_left = left(ls_Plancode,i -1)
  2093. END IF
  2094. ls_auto_code = ls_left + String(ll_number+1,'0000')
  2095. dw_1.Object.plancode[ll_row] = ls_auto_code
  2096. UPDATE u_saletaskmx
  2097. SET plancode = :ls_auto_code
  2098. WHERE scid = :ll_scid
  2099. AND TaskID = :ll_taskid
  2100. AND printid = :ll_printid;
  2101. j++
  2102. end if
  2103. next
  2104. if j = 0 then
  2105. MessageBox('提示','请选择订单!',information!,OK!)
  2106. return
  2107. else
  2108. ls_j = string(j)
  2109. MessageBox('提示','成功为'+ls_j+'行数据进行自动批号',information!,OK!)
  2110. end if
  2111. end event
  2112. type cb_11 from uo_imflatbutton within w_saletask_sc_mx
  2113. integer x = 1010
  2114. integer width = 165
  2115. integer height = 164
  2116. integer taborder = 100
  2117. boolean bringtotop = true
  2118. string text = "核对"
  2119. string normalpicname = "audit.BMP"
  2120. integer picsize = 16
  2121. toolbaralignment pic_align = alignattop!
  2122. boolean border = false
  2123. end type
  2124. event clicked;call super::clicked;IF NOT f_power_ind(2062) THEN
  2125. MessageBox('提示','你没有使用权限!',information!,OK!)
  2126. RETURN
  2127. END IF
  2128. If dw_edit_mode Then Return
  2129. Long ll_row
  2130. Long ll_scid,ll_taskid,ll_printid
  2131. Int li_checkflag,j,i = 0
  2132. String ls_emp,ls_j,ls_msg,ls_taskcode
  2133. DateTime nulldate,ld_checkdate
  2134. SetNull(nulldate)
  2135. ls_emp = publ_operator
  2136. If MessageBox ("询问","是否确定要对选中订单进行核对?",Question!,YesNo! ) = 2 Then Return
  2137. For ll_row = 1 To dw_1.RowCount()
  2138. If dw_1.Object.isselect[ll_row] = 1 Then
  2139. ll_scid = dw_1.Object.scid[ll_row]
  2140. ll_taskid = dw_1.Object.taskid[ll_row]
  2141. ll_printid = dw_1.Object.u_saletaskmx_printid[ll_row]
  2142. li_checkflag = dw_1.Object.checkflag[ll_row]
  2143. ls_taskcode = dw_1.Object.u_saletask_taskcode[ll_row]
  2144. If li_checkflag <> 0 Then
  2145. ls_msg = ls_msg + '第' + String(dw_1.Object.row[ll_row]) + '行,订单:' + ls_taskcode + ',产品:' + dw_1.Object.u_mtrldef_mtrlcode[ll_row] + '~n'
  2146. i++
  2147. If ls_msg <> '' Then
  2148. ls_msg = ls_msg + '已核对,不能重复核对! '+'~r~n'
  2149. End If
  2150. End If
  2151. If uo_sale.salecheck(ll_scid,ll_taskid,ll_printid,ls_emp,ls_msg,True) = 0 Then
  2152. Continue
  2153. End If
  2154. Select checkflag,
  2155. checkemp,
  2156. checkdate
  2157. Into :li_checkflag,
  2158. :ls_emp,
  2159. :ld_checkdate
  2160. From u_saletaskmx
  2161. Where scid = :ll_scid And taskid = :ll_taskid And printid = :ll_printid;
  2162. dw_1.Object.checkflag[ll_row] = li_checkflag
  2163. dw_1.Object.checkemp[ll_row] = ls_emp
  2164. dw_1.Object.checkdate[ll_row] = ld_checkdate
  2165. j++
  2166. End If
  2167. Next
  2168. If i > 0 Then
  2169. MessageBox('错误',ls_msg,stopsign!,OK!)
  2170. End If
  2171. If j = 0 Then
  2172. MessageBox('提示','请选择订单!',information!,OK!)
  2173. Return
  2174. End If
  2175. end event
  2176. type cb_12 from uo_imflatbutton within w_saletask_sc_mx
  2177. integer x = 1179
  2178. integer width = 274
  2179. integer height = 164
  2180. integer taborder = 110
  2181. boolean bringtotop = true
  2182. string text = "取消核对"
  2183. string normalpicname = "caudit.BMP"
  2184. integer picsize = 16
  2185. toolbaralignment pic_align = alignattop!
  2186. boolean border = false
  2187. end type
  2188. event clicked;call super::clicked;IF NOT f_power_ind(2063) THEN
  2189. MessageBox('提示','你没有使用权限!',information!,OK!)
  2190. RETURN
  2191. END IF
  2192. DateTime nulldate
  2193. SetNull(nulldate)
  2194. Long ll_row,ll_scid,ll_taskid,ll_printid
  2195. Int li_checkflag,j,i = 0
  2196. String ls_j,ls_msg,ls_taskcode,ls_emp,ld_checkdate
  2197. If MessageBox ("询问","是否取消核对选中订单?",Question!,YesNo! ) = 2 Then Return
  2198. For ll_row = 1 To dw_1.RowCount()
  2199. If dw_1.Object.isselect[ll_row] = 1 Then
  2200. ll_scid = dw_1.Object.scid[ll_row]
  2201. ll_taskid = dw_1.Object.taskid[ll_row]
  2202. ll_printid = dw_1.Object.u_saletaskmx_printid[ll_row]
  2203. li_checkflag = dw_1.Object.checkflag[ll_row]
  2204. ls_taskcode = dw_1.Object.u_saletask_taskcode[ll_row]
  2205. If li_checkflag <> 1 Then
  2206. ls_msg = ls_msg + '第' + String(dw_1.Object.row[ll_row]) + '行,订单:' + ls_taskcode + ',产品:' + dw_1.Object.u_mtrldef_mtrlcode[ll_row] + '~n'
  2207. i++
  2208. If ls_msg <> '' Then
  2209. ls_msg = ls_msg + '没有核对,不能取消核对! '+'~r~n'
  2210. End If
  2211. End If
  2212. If uo_sale.salecheck_cancel(ll_scid,ll_taskid,ll_printid,ls_msg,True) = 0 Then
  2213. End If
  2214. dw_1.Object.checkflag[ll_row] = 0
  2215. dw_1.Object.checkemp[ll_row] = ''
  2216. dw_1.Object.checkdate[ll_row] = nulldate
  2217. j++
  2218. End If
  2219. Next
  2220. If i > 0 Then
  2221. MessageBox('错误',ls_msg,stopsign!,OK!)
  2222. End If
  2223. If j = 0 Then
  2224. MessageBox('提示','请选择订单!',information!,OK!)
  2225. Return
  2226. End If
  2227. end event
  2228. type cb_add_sale from uo_imflatbutton within w_saletask_sc_mx
  2229. integer x = 1458
  2230. integer width = 384
  2231. integer height = 164
  2232. integer taborder = 50
  2233. boolean bringtotop = true
  2234. string text = "建销售发货单"
  2235. string normalpicname = "OPEN.BMP"
  2236. integer picsize = 16
  2237. toolbaralignment pic_align = alignattop!
  2238. boolean border = false
  2239. end type
  2240. event clicked;call super::clicked;
  2241. IF Not (f_power_ind(11) Or f_power_ind(869)) THEN
  2242. MessageBox(publ_operator,'没有使用权限!')
  2243. RETURN
  2244. END IF
  2245. IF cur_scid < 0 THEN
  2246. MessageBox('系统提示','请先选择分部')
  2247. RETURN
  2248. END IF
  2249. Long ll_row,ll_i
  2250. Long ll_found,ll_cusid,ll_storageid
  2251. String ls_scname
  2252. Long cnt = 0
  2253. String ls_cus_address,ls_rel_rep
  2254. s_edit_index_tran s_tran,s_ch
  2255. ll_found = dw_1.Find("isselect = 1",1, dw_1.RowCount())
  2256. IF ll_found <= 0 THEN
  2257. MessageBox('系统提示','请先选择要建立发货单的订单明细')
  2258. RETURN
  2259. END IF
  2260. FOR ll_i = 1 To dw_1.RowCount()
  2261. IF dw_1.Object.isselect[ll_i] = 1 THEN
  2262. IF dw_1.Object.u_saletask_status[ll_i] <> 1 THEN
  2263. MessageBox('系统提示','选中的订单中含有不是在进行状态的,请检查')
  2264. RETURN
  2265. END IF
  2266. IF cnt = 0 THEN
  2267. ll_cusid = dw_1.Object.cusid[ll_i]
  2268. ls_cus_address = dw_1.Object.cus_address[ll_i]
  2269. ls_rel_rep = dw_1.Object.rel_rep[ll_i]
  2270. ELSE
  2271. IF ll_cusid <> dw_1.Object.cusid[ll_i] And ll_cusid <> 0 THEN
  2272. MessageBox('系统提示','请选择相同客户的订单明细')
  2273. RETURN
  2274. END IF
  2275. END IF
  2276. cnt++
  2277. s_tran.arr_long[cnt] = dw_1.Object.u_saletask_taskid[ll_i]
  2278. s_tran.arr_long2[cnt] = dw_1.Object.u_saletaskmx_printid[ll_i]
  2279. s_tran.arr_long3[cnt] = dw_1.Object.mtrlid[ll_i]
  2280. s_tran.arr_string[cnt] = dw_1.Object.u_saletask_taskcode[ll_i]
  2281. END IF
  2282. NEXT
  2283. FOR ll_i = 1 To dw_1.RowCount()
  2284. IF dw_1.Object.isselect[ll_i] = 1 THEN
  2285. IF ls_cus_address <> dw_1.Object.cus_address[ll_i] THEN
  2286. IF MessageBox('询问','所选订单出现不同的客户地址,是否继续?',question!,yesno!) = 2 THEN
  2287. RETURN
  2288. ELSE
  2289. EXIT
  2290. END IF
  2291. END IF
  2292. IF ls_rel_rep <> dw_1.Object.rel_rep[ll_i] THEN
  2293. IF MessageBox('询问','所选订单出现不同的联系人,是否继续?',question!,yesno!) = 2 THEN
  2294. RETURN
  2295. ELSE
  2296. EXIT
  2297. END IF
  2298. END IF
  2299. END IF
  2300. NEXT
  2301. Open(w_storage_index_ch)
  2302. s_ch = Message.PowerObjectParm
  2303. IF s_ch.c_long = 0 THEN RETURN
  2304. ll_storageid = s_ch.c_long
  2305. s_tran.if_retrieve_all = local_retrieve_all //是否一次RETRIEVE所有行
  2306. s_tran.work_mode = 0 //0-单纯编辑模式, 1-选择模式
  2307. s_tran.arg_pkid = 0 //目标定位PKID (备用)
  2308. s_tran.arg_string_code = '' //查询列部分内容,用于初步筛选
  2309. s_tran.e_long = 1
  2310. s_tran.c_long = cur_scid
  2311. SELECT scname
  2312. INTO :ls_scname
  2313. FROM u_scdef
  2314. Where scid = :s_tran.c_long;
  2315. IF sqlca.SQLCode <> 0 THEN
  2316. MessageBox('系统提示','查询单据所属分部失败')
  2317. RETURN
  2318. END IF
  2319. s_tran.d_string = ls_scname
  2320. s_tran.d_long = 2
  2321. s_tran.g_long = ll_cusid
  2322. s_tran.f_long = ll_storageid
  2323. //OpenWithParm(w_outware_sale,s_tran)
  2324. IF Not IsValid(w_outware_sale) THEN
  2325. OpenWithParm(w_outware_sale,s_tran)
  2326. w_outware_sale.cb_add.TriggerEvent(Clicked!)
  2327. String errmsg = ''
  2328. if w_outware_sale.wf_autoaddmx_rp(s_tran,errmsg) = 0 then
  2329. MessageBox('系统提示','新建失败,'+errmsg)
  2330. end if
  2331. w_outware_sale.dw_uc.SetRedraw(True)
  2332. END IF
  2333. end event
  2334. type cbx_date from checkbox within w_saletask_sc_mx
  2335. integer x = 434
  2336. integer y = 300
  2337. integer width = 82
  2338. integer height = 60
  2339. boolean bringtotop = true
  2340. integer textsize = -9
  2341. integer weight = 400
  2342. fontcharset fontcharset = gb2312charset!
  2343. fontpitch fontpitch = variable!
  2344. string facename = "宋体"
  2345. long textcolor = 33554432
  2346. long backcolor = 134217739
  2347. end type
  2348. event clicked;IF This.checked THEN
  2349. cur_date = 1
  2350. ELSE
  2351. cur_date = 0
  2352. END IF
  2353. wf_checkdate()
  2354. cb_1.TriggerEvent(Clicked!)
  2355. end event
  2356. event constructor;cur_date = Long(f_ProfileString (sys_empid,"saletask_sc_mx", "cur_date", "1"))
  2357. This.Checked = cur_date = 1
  2358. wf_checkdate()
  2359. end event
  2360. type cbx_iffinish from checkbox within w_saletask_sc_mx
  2361. integer x = 3433
  2362. integer y = 192
  2363. integer width = 631
  2364. integer height = 60
  2365. boolean bringtotop = true
  2366. integer textsize = -9
  2367. integer weight = 400
  2368. fontcharset fontcharset = gb2312charset!
  2369. fontpitch fontpitch = variable!
  2370. string facename = "宋体"
  2371. long textcolor = 33554432
  2372. long backcolor = 134217739
  2373. string text = "不显示已完成发货明细"
  2374. end type
  2375. event clicked;IF This.checked THEN
  2376. cur_iffinish = 1
  2377. ELSE
  2378. cur_iffinish = 0
  2379. END IF
  2380. f_SetProfileString (sys_empid,'saletask_sc_mx', "cur_iffinish",String(cur_iffinish))
  2381. cb_1.TriggerEvent(Clicked!)
  2382. end event
  2383. event constructor;cur_iffinish = Long(f_ProfileString (sys_empid,"saletask_sc_mx", "cur_iffinish", "0"))
  2384. //This.Checked = cur_ifsc = 1
  2385. //
  2386. if cur_iffinish = 0 then
  2387. This.Checked = false
  2388. else
  2389. This.Checked = true
  2390. end if
  2391. end event
  2392. type cb_7 from uo_imflatbutton within w_saletask_sc_mx
  2393. integer x = 1847
  2394. integer width = 439
  2395. integer height = 164
  2396. integer taborder = 60
  2397. boolean bringtotop = true
  2398. string text = "建立生产进仓单"
  2399. string normalpicname = "OPEN.BMP"
  2400. integer picsize = 16
  2401. toolbaralignment pic_align = alignattop!
  2402. boolean border = false
  2403. end type
  2404. event clicked;call super::clicked;//辅助生成生产进仓单
  2405. IF NOT( f_power_ind(1494) OR f_power_ind(1054) ) THEN
  2406. MessageBox('提示','你没有使用权限!', Information!, OK! )
  2407. RETURN
  2408. END IF
  2409. Open(w_order_ml_storage)
  2410. Long ll_storageid
  2411. ll_storageid = Message.DoubleParm
  2412. IF ll_storageid = 0 THEN RETURN
  2413. Long cnt
  2414. String ls_msg
  2415. Long i,j
  2416. s_saletask_mtrl s_saletask
  2417. Long ll_scid
  2418. dw_1.AcceptText()
  2419. cnt = 0
  2420. FOR i = 1 TO dw_1.RowCount()
  2421. IF dw_1.Object.isselect[i] = 1 THEN
  2422. FOR j = 1 TO UpperBound(s_saletask.scid)
  2423. IF s_saletask.scid[j] <> dw_1.Object.scid[i] THEN
  2424. MessageBox('系统提示','当前选定订单明细存在不同分部!',Information!,OK!)
  2425. RETURN
  2426. END IF
  2427. NEXT
  2428. cnt++
  2429. ll_scid = dw_1.Object.scid[i]
  2430. s_saletask.scid[cnt] = dw_1.Object.scid[i]
  2431. s_saletask.taskid[cnt] = dw_1.Object.taskid[i]
  2432. s_saletask.printid[cnt] = dw_1.Object.u_saletaskmx_printid[i]
  2433. s_saletask.saletaskcode[cnt] = dw_1.Object.u_saletask_taskcode[i]
  2434. END IF
  2435. NEXT
  2436. IF cnt = 0 THEN
  2437. i = dw_1.GetRow()
  2438. IF i <= 0 THEN
  2439. MessageBox('系统提示','请选定当前目标订单明细!',Information!,OK!)
  2440. RETURN
  2441. END IF
  2442. // IF Not (dw_1.Object.flag[i] = 1 &
  2443. // AND dw_1.Object.scllflag[i] = 1) THEN
  2444. // MessageBox('系统提示','当前选定订单明细没有用料审!',Information!,OK!)
  2445. // RETURN
  2446. // END IF
  2447. ll_scid = dw_1.Object.scid[i]
  2448. s_saletask.scid[1] = dw_1.Object.scid[i]
  2449. s_saletask.taskid[1] = dw_1.Object.taskid[i]
  2450. s_saletask.printid[1] = dw_1.Object.u_saletaskmx_printid[i]
  2451. s_saletask.saletaskcode[1] = dw_1.Object.u_saletask_taskcode[i]
  2452. END IF
  2453. IF Not ( f_power_ind(291) OR f_power_ind(1053) ) THEN
  2454. MessageBox('提示','你没有生产进仓单的使用权限!', Information!, OK! )
  2455. RETURN
  2456. END IF
  2457. s_edit_index_tran s_tran
  2458. if not isvalid(w_inware_cp) then
  2459. OpenWithParm(w_inware_cp,s_tran)
  2460. w_inware_cp.ddlb_scid.uf_selectsc(ll_scid)
  2461. w_inware_cp.cb_add.TriggerEvent(Clicked!)
  2462. w_inware_cp.dw_uc.Object.storageid[w_inware_cp.dw_uc.GetRow()] = ll_storageid
  2463. w_inware_cp.wf_autoaddmx_salemx(ll_scid,s_saletask,ll_storageid,ls_msg)
  2464. end if
  2465. end event
  2466. type cb_8 from uo_imflatbutton within w_saletask_sc_mx
  2467. integer x = 3154
  2468. integer width = 357
  2469. integer height = 164
  2470. integer taborder = 110
  2471. boolean bringtotop = true
  2472. string text = "Excel打印&O"
  2473. string normalpicname = "excel.bmp"
  2474. integer picsize = 16
  2475. toolbaralignment pic_align = alignattop!
  2476. boolean border = false
  2477. end type
  2478. event clicked;call super::clicked;// 约定 用 parent.Classname ( ) 即状况名称 作为打印模板的分类
  2479. uo_sendtoexcel obj_st
  2480. obj_st = create uo_sendtoexcel
  2481. obj_st.commit_transaction = sqlca
  2482. obj_st.TriggerEventObject = this.getparent()
  2483. obj_st.TriggerEventname = 'ue_xls'
  2484. string arg_msg
  2485. menu m1
  2486. m1 = obj_st.of_createmenu( parent.Classname ( ),sys_user_xls_print_str,sys_user_xls_send_str)
  2487. if upperbound( m1.item)=2 then
  2488. messagebox('错误','当前单据还没有设置Excel打印模板.')
  2489. else
  2490. m1.PopMenu(this.x ,this.y+THIS.height)
  2491. end if
  2492. end event
  2493. type ln_7 from line within w_saletask_sc_mx
  2494. long linecolor = 268435456
  2495. integer linethickness = 4
  2496. integer beginx = 2496
  2497. integer endx = 2496
  2498. integer endy = 184
  2499. end type
  2500. type ln_8 from line within w_saletask_sc_mx
  2501. long linecolor = 16777215
  2502. integer linethickness = 4
  2503. integer beginx = 2487
  2504. integer beginy = 12
  2505. integer endx = 2487
  2506. integer endy = 184
  2507. end type