uo_task_detail.sru 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865
  1. $PBExportHeader$uo_task_detail.sru
  2. forward
  3. global type uo_task_detail from tab
  4. end type
  5. type tabpage_1 from userobject within uo_task_detail
  6. end type
  7. type dw_1 from u_dw_rbtnfilter within tabpage_1
  8. end type
  9. type tabpage_1 from userobject within uo_task_detail
  10. dw_1 dw_1
  11. end type
  12. type tabpage_2 from userobject within uo_task_detail
  13. end type
  14. type dw_2 from u_dw_rbtnfilter within tabpage_2
  15. end type
  16. type tabpage_2 from userobject within uo_task_detail
  17. dw_2 dw_2
  18. end type
  19. type tabpage_3 from userobject within uo_task_detail
  20. end type
  21. type dw_3 from u_dw_rbtnfilter within tabpage_3
  22. end type
  23. type tabpage_3 from userobject within uo_task_detail
  24. dw_3 dw_3
  25. end type
  26. type tabpage_4 from userobject within uo_task_detail
  27. end type
  28. type dw_4 from u_dw_rbtnfilter within tabpage_4
  29. end type
  30. type tabpage_4 from userobject within uo_task_detail
  31. dw_4 dw_4
  32. end type
  33. type tabpage_5 from userobject within uo_task_detail
  34. end type
  35. type dw_5 from u_dw_rbtnfilter within tabpage_5
  36. end type
  37. type tabpage_5 from userobject within uo_task_detail
  38. dw_5 dw_5
  39. end type
  40. type tabpage_6 from userobject within uo_task_detail
  41. end type
  42. type cb_1 from commandbutton within tabpage_6
  43. end type
  44. type mle_1 from multilineedit within tabpage_6
  45. end type
  46. type tabpage_6 from userobject within uo_task_detail
  47. cb_1 cb_1
  48. mle_1 mle_1
  49. end type
  50. end forward
  51. global type uo_task_detail from tab
  52. integer width = 2661
  53. integer height = 1552
  54. integer textsize = -9
  55. integer weight = 400
  56. fontcharset fontcharset = gb2312charset!
  57. fontpitch fontpitch = variable!
  58. string facename = "宋体"
  59. long backcolor = 16777215
  60. boolean raggedright = true
  61. boolean focusonbuttondown = true
  62. integer selectedtab = 1
  63. tabpage_1 tabpage_1
  64. tabpage_2 tabpage_2
  65. tabpage_3 tabpage_3
  66. tabpage_4 tabpage_4
  67. tabpage_5 tabpage_5
  68. tabpage_6 tabpage_6
  69. event ue_resize ( )
  70. event ue_fjchanged ( )
  71. end type
  72. global uo_task_detail uo_task_detail
  73. type variables
  74. datawindow dw_1, dw_2, dw_3, dw_4, dw_5
  75. long ins_status = 0
  76. long ins_taskid = 0
  77. end variables
  78. forward prototypes
  79. public subroutine uof_retrieve (long arg_taskid)
  80. public subroutine wf_gettasklog ()
  81. end prototypes
  82. event ue_resize();dw_1.width = tabpage_1.width
  83. dw_1.height = tabpage_1.height
  84. dw_2.width = tabpage_2.width
  85. dw_2.height = tabpage_2.height
  86. dw_3.width = tabpage_3.width
  87. dw_3.height = tabpage_3.height
  88. dw_4.width = tabpage_4.width
  89. dw_4.height = tabpage_4.height
  90. dw_5.width = tabpage_5.width
  91. dw_5.height = tabpage_5.height
  92. tabpage_6.mle_1.width = tabpage_6.width
  93. tabpage_6.mle_1.height = tabpage_6.height - tabpage_6.mle_1.y
  94. end event
  95. public subroutine uof_retrieve (long arg_taskid);// 获取订单明细
  96. ins_taskid = arg_taskid
  97. oleobject parms, lo_rslt, lo_fjs, lo_fjbacks, lo_orders, lo_wkps, lo_barcodes, lo_item, lo_task
  98. String arg_msg = ''
  99. parms = AppCom.CreatePbDictionary()
  100. parms.SetString('token', app_token)
  101. parms.SetInt('taskid', arg_taskid)
  102. lo_fjs = AppCom.GetTaskFJs(parms, Ref arg_msg)
  103. IF arg_msg <> '' THEN
  104. MessageBox('ERROR', arg_msg)
  105. RETURN
  106. END IF
  107. Long ll_cnt, i, row
  108. ll_cnt = lo_fjs.Count
  109. dw_1.Reset()
  110. dw_1.SetRedraw(False)
  111. FOR i = 1 To ll_cnt
  112. lo_item = lo_fjs.GetItem(i - 1)
  113. row = dw_1.InsertRow(0)
  114. dw_1.SetItem(row, 'taskid', lo_item.GetInt('taskid'))
  115. dw_1.SetItem(row, 'printid', lo_item.GetInt('printid'))
  116. dw_1.SetItem(row, 'mxcode', lo_item.GetString('mxcode'))
  117. dw_1.SetItem(row, 'price_ls', lo_item.GetDouble('price_ls'))
  118. dw_1.SetItem(row, 'price_jm', lo_item.GetDouble('price_jm'))
  119. dw_1.SetItem(row, 'mtrltype', lo_item.GetString('mtrltype'))
  120. dw_1.SetItem(row, 'fjname', lo_item.GetString('fjname'))
  121. dw_1.SetItem(row, 'fjdscrp', lo_item.GetString('fjdscrp'))
  122. NEXT
  123. dw_1.SetRedraw(True)
  124. lo_rslt = AppCom.GetTaskDetail(parms, Ref arg_msg)
  125. IF arg_msg <> '' THEN
  126. MessageBox('ERROR', arg_msg)
  127. RETURN
  128. END IF
  129. lo_task = lo_rslt.GetPBDictionary('task')
  130. ins_status = lo_task.GetInt('status')
  131. tabpage_6.mle_1.Text = lo_task.GetString('oplog')
  132. lo_fjbacks = lo_rslt.GetArrOfPBDictionary('fjbacks')
  133. ll_cnt = lo_fjbacks.Count
  134. dw_2.Reset()
  135. dw_2.SetRedraw(False)
  136. FOR i = 1 To ll_cnt
  137. lo_item = lo_fjbacks.GetItem(i - 1)
  138. row = dw_2.InsertRow(0)
  139. dw_2.SetItem(row, 'taskid', lo_item.GetInt('taskid'))
  140. dw_2.SetItem(row, 'printid', lo_item.GetInt('printid'))
  141. dw_2.SetItem(row, 'fjname', lo_item.GetString('fjname'))
  142. dw_2.SetItem(row, 'fjdscrp', lo_item.GetString('fjdscrp'))
  143. dw_2.SetItem(row, 'withprice', lo_item.GetInt('withprice'))
  144. NEXT
  145. dw_2.SetRedraw(True)
  146. lo_orders = lo_rslt.GetArrOfPBDictionary("orders")
  147. ll_cnt = lo_orders.Count
  148. dw_3.Reset()
  149. dw_3.SetRedraw(False)
  150. FOR i = 1 To ll_cnt
  151. lo_item = lo_orders.GetItem(i - 1)
  152. row = dw_3.InsertRow(0)
  153. dw_3.SetItem(row, 'taskid', lo_item.GetInt('taskid'))
  154. dw_3.SetItem(row, 'orderid', lo_item.GetInt('orderid'))
  155. dw_3.SetItem(row, 'scid', lo_item.GetInt('scid'))
  156. dw_3.SetItem(row, 'ordercode', lo_item.GetString('ordercode'))
  157. dw_3.SetItem(row, 'pordercode', lo_item.GetString('pordercode'))
  158. dw_3.SetItem(row, 'status', lo_item.GetInt('status'))
  159. dw_3.SetItem(row, 'mtrlcode', lo_item.GetString('mtrlcode'))
  160. dw_3.SetItem(row, 'mtrlname', lo_item.GetString('mtrlname'))
  161. dw_3.SetItem(row, 'mtrlmode', lo_item.GetString('mtrlmode'))
  162. dw_3.SetItem(row, 'ifpack', lo_item.GetInt('ifpack'))
  163. dw_3.SetItem(row, 'orderqty', lo_item.GetDouble('orderqty'))
  164. dw_3.SetItem(row, 'acmpqty', lo_item.GetDouble('acmpqty'))
  165. dw_3.SetItem(row, 'ifpban', lo_item.GetInt('ifpban'))
  166. dw_3.SetItem(row, 'ifupban', lo_item.GetInt('ifupban'))
  167. dw_3.SetItem(row, 'ifqiban', lo_item.GetInt('ifqiban'))
  168. dw_3.SetItem(row, 'ordermtrlcode', lo_item.GetString('ordermtrlcode'))
  169. dw_3.SetItem(row, 'ordermtrlname', lo_item.GetString('ordermtrlname'))
  170. dw_3.SetItem(row, 'upmtrlcode', lo_item.GetString('upmtrlcode'))
  171. dw_3.SetItem(row, 'upmtrlname', lo_item.GetString('upmtrlname'))
  172. NEXT
  173. dw_3.SetRedraw(True)
  174. lo_wkps = lo_rslt.GetArrOfPBDictionary('wkps')
  175. ll_cnt = lo_wkps.Count
  176. dw_4.Reset()
  177. dw_4.SetRedraw(False)
  178. FOR i = 1 To ll_cnt
  179. lo_item = lo_wkps.GetItem(i - 1)
  180. row = dw_4.InsertRow(0)
  181. dw_4.SetItem(row, 'taskid', lo_item.GetInt('taskid'))
  182. dw_4.SetItem(row, 'orderid', lo_item.GetInt('orderid'))
  183. dw_4.SetItem(row, 'scid', lo_item.GetInt('scid'))
  184. dw_4.SetItem(row, 'wrkgrpid', lo_item.GetInt('wrkgrpid'))
  185. dw_4.SetItem(row, 'owrkgrpid', lo_item.GetInt('owrkgrpid'))
  186. dw_4.SetItem(row, 'wkpname', lo_item.GetString('wkpname'))
  187. dw_4.SetItem(row, 'workgroupid', lo_item.GetInt('workgroupid'))
  188. dw_4.SetItem(row, 'begindate', lo_item.GetDateTime('begindate'))
  189. dw_4.SetItem(row, 'requiredate', lo_item.GetDateTime('requiredate'))
  190. dw_4.SetItem(row, 'orderqty', lo_item.GetDouble('orderqty'))
  191. dw_4.SetItem(row, 'taskqty', lo_item.GetDouble('taskqty'))
  192. dw_4.SetItem(row, 'finishqty', lo_item.GetDouble('finishqty'))
  193. dw_4.SetItem(row, 'stopqty', lo_item.GetDouble('stopqty'))
  194. dw_4.SetItem(row, 'acceptqty', lo_item.GetDouble('acceptqty'))
  195. dw_4.SetItem(row, 'ordercode', lo_item.GetString('ordercode'))
  196. dw_4.SetItem(row, 'mtrlcode', lo_item.GetString('mtrlcode'))
  197. dw_4.SetItem(row, 'mtrlname', lo_item.GetString('mtrlname'))
  198. dw_4.SetItem(row, 'mtrlmode', lo_item.GetString('mtrlmode'))
  199. dw_4.SetItem(row, 'wrkgrpname', lo_item.GetString('wrkgrpname'))
  200. dw_4.SetItem(row, 'owrkgrpname', lo_item.GetString('owrkgrpname'))
  201. dw_4.SetItem(row, 'workgroupname', lo_item.GetString('workgroupname'))
  202. NEXT
  203. dw_4.SetRedraw(True)
  204. lo_barcodes = lo_rslt.GetArrOfPBDictionary('barcodes')
  205. ll_cnt = lo_barcodes.Count
  206. dw_5.Reset()
  207. dw_5.SetRedraw(False)
  208. FOR i = 1 To ll_cnt
  209. lo_item = lo_barcodes.GetItem(i - 1)
  210. row = dw_5.InsertRow(0)
  211. dw_5.SetItem(row, 'taskid', lo_item.GetInt('taskid'))
  212. dw_5.SetItem(row, 'barcode', lo_item.GetString('barcode'))
  213. dw_5.SetItem(row, 'inflag', lo_item.GetInt('inflag'))
  214. dw_5.SetItem(row, 'outflag', lo_item.GetInt('outflag'))
  215. dw_5.SetItem(row, 'cmgflag', lo_item.GetInt('cmgflag'))
  216. dw_5.SetItem(row, 'sjflag', lo_item.GetInt('sjflag'))
  217. dw_5.SetItem(row, 'ordercode', lo_item.GetString('ordercode'))
  218. dw_5.SetItem(row, 'mtrlcode', lo_item.GetString('mtrlcode'))
  219. dw_5.SetItem(row, 'mtrlname', lo_item.GetString('mtrlname'))
  220. dw_5.SetItem(row, 'mtrlmode', lo_item.GetString('mtrlmode'))
  221. dw_5.SetItem(row, 'packqty', lo_item.GetDouble('packqty'))
  222. dw_5.SetItem(row, 'qty', lo_item.GetDouble('qty'))
  223. NEXT
  224. dw_5.SetRedraw(True)
  225. end subroutine
  226. public subroutine wf_gettasklog ();
  227. String arg_msg = '', ls_rslt
  228. oleobject parms
  229. parms = AppCom.CreatePbDictionary()
  230. parms.SetString('token', app_token)
  231. parms.SetInt('taskid', ins_taskid)
  232. ls_rslt = AppCom.GetTaskLog(parms, Ref arg_msg)
  233. IF arg_msg <> '' THEN
  234. MessageBox('ERROR', arg_msg)
  235. RETURN
  236. END IF
  237. tabpage_6.mle_1.Text = ls_rslt
  238. end subroutine
  239. on uo_task_detail.create
  240. this.tabpage_1=create tabpage_1
  241. this.tabpage_2=create tabpage_2
  242. this.tabpage_3=create tabpage_3
  243. this.tabpage_4=create tabpage_4
  244. this.tabpage_5=create tabpage_5
  245. this.tabpage_6=create tabpage_6
  246. this.Control[]={this.tabpage_1,&
  247. this.tabpage_2,&
  248. this.tabpage_3,&
  249. this.tabpage_4,&
  250. this.tabpage_5,&
  251. this.tabpage_6}
  252. end on
  253. on uo_task_detail.destroy
  254. destroy(this.tabpage_1)
  255. destroy(this.tabpage_2)
  256. destroy(this.tabpage_3)
  257. destroy(this.tabpage_4)
  258. destroy(this.tabpage_5)
  259. destroy(this.tabpage_6)
  260. end on
  261. event constructor;dw_1 = tabpage_1.dw_1
  262. dw_2 = tabpage_2.dw_2
  263. dw_3 = tabpage_3.dw_3
  264. dw_4 = tabpage_4.dw_4
  265. dw_5 = tabpage_5.dw_5
  266. end event
  267. type tabpage_1 from userobject within uo_task_detail
  268. event create ( )
  269. event destroy ( )
  270. integer x = 18
  271. integer y = 96
  272. integer width = 2624
  273. integer height = 1440
  274. long backcolor = 16777215
  275. string text = "询价明细"
  276. long tabtextcolor = 33554432
  277. long picturemaskcolor = 536870912
  278. dw_1 dw_1
  279. end type
  280. on tabpage_1.create
  281. this.dw_1=create dw_1
  282. this.Control[]={this.dw_1}
  283. end on
  284. on tabpage_1.destroy
  285. destroy(this.dw_1)
  286. end on
  287. type dw_1 from u_dw_rbtnfilter within tabpage_1
  288. integer width = 2459
  289. integer height = 1340
  290. boolean bringtotop = true
  291. string dataobject = "dw_saletask_detail_fj"
  292. boolean hscrollbar = true
  293. boolean vscrollbar = true
  294. boolean hsplitscroll = true
  295. boolean rbutton_filter_use = true
  296. boolean titleclick_sort_use = true
  297. end type
  298. event rowfocuschanged;call super::rowfocuschanged;this.selectrow(0, false)
  299. if currentrow > 0 then
  300. this.selectrow(currentrow, true)
  301. end if
  302. end event
  303. event clicked;call super::clicked;IF row <= 0 THEN RETURN
  304. This.SetRow(row)
  305. String ls_name
  306. ls_name = dwo.Name
  307. Long taskid, printid, i
  308. String Filename, Pathname, FileType
  309. oleobject parms
  310. String arg_msg = ''
  311. IF ls_name = 'btn' Or ls_name = 'btn1' THEN
  312. taskid = This.Object.taskid[row]
  313. printid = This.Object.printid[row]
  314. Filename = This.Object.fjname[row]
  315. IF MessageBox('提问', '是否要打开文件'+Filename+'?', Question!, YesNo!, 1) <> 1 THEN RETURN
  316. Pathname = GetCurrentDirectory() + "\" + "fjtemp"
  317. IF Not DirectoryExists(Pathname) THEN
  318. CreateDirectory(Pathname)
  319. END IF
  320. Filename = Pathname + "\" + Filename
  321. IF FileExists(Filename) THEN
  322. FileDelete(Filename)
  323. END IF
  324. parms = AppCom.CreatePbDictionary()
  325. parms.SetString('token', app_token)
  326. parms.SetInt('taskid', taskid)
  327. parms.SetInt('printid', printid)
  328. parms.SetString('filename', Filename)
  329. IF ins_status = 2 THEN
  330. AppCom.EditFjDataAsync(parms, Ref arg_msg)
  331. ELSE
  332. AppCom.OpenFjDataAsync(parms, Ref arg_msg)
  333. END IF
  334. IF arg_msg <> '' THEN
  335. MessageBox('ERROR', arg_msg)
  336. RETURN
  337. END IF
  338. RETURN
  339. // 使用异步打开文件,下面的同步打开文件
  340. AppCom.GetFjData(parms, Ref arg_msg)
  341. IF arg_msg <> '' THEN
  342. MessageBox('ERROR', arg_msg)
  343. RETURN
  344. END IF
  345. oleobject FM
  346. FM = Create oleobject
  347. uo_reghelper ll_reghelper
  348. ll_reghelper = Create uo_reghelper
  349. Boolean changed = False
  350. IF ll_reghelper.ConnectToNewObject("LJCom.FileHelper", "LJCom.FileHelper.dll", FM, arg_msg) <> 1 THEN
  351. Destroy ll_reghelper
  352. Destroy FM
  353. MessageBox('ERROR', '连接LJCom.FileHelper失败,' + arg_msg)
  354. GOTO ext
  355. END IF
  356. // DONE: 如果当前状态可以修改
  357. IF ins_status = 2 THEN
  358. IF Not FM.EditFile(Filename, Ref changed, Ref arg_msg) THEN
  359. Destroy ll_reghelper
  360. Destroy FM
  361. MessageBox('ERROR', '编辑文件失败,' + arg_msg)
  362. GOTO ext
  363. END IF
  364. ELSE
  365. IF Not FM.OpenFile(Filename, Ref arg_msg) THEN
  366. Destroy ll_reghelper
  367. Destroy FM
  368. MessageBox('ERROR', '打开文件失败,' + arg_msg)
  369. GOTO ext
  370. END IF
  371. END IF
  372. Destroy ll_reghelper
  373. Destroy FM
  374. IF changed THEN
  375. IF MessageBox('提问', '文件已被修改,是否提交?(修改后订单可以重新询价)', Question!, YesNo!, 1) <> 1 THEN GOTO ext
  376. parms = AppCom.CreatePbDictionary()
  377. parms.SetString('token', app_token)
  378. parms.SetInt('taskid', taskid)
  379. parms.SetInt('printid', printid)
  380. parms.SetString('filename', Filename)
  381. AppCom.SaveFJ(parms, Ref arg_msg)
  382. IF arg_msg <> '' THEN
  383. MessageBox('ERROR', arg_msg)
  384. GOTO ext
  385. END IF
  386. MessageBox('OK', '文件提交完成')
  387. Parent.GetParent().TriggerEvent('ue_fjchanged')
  388. END IF
  389. ext:
  390. FileDelete(Filename)
  391. // Pathname = Filename
  392. // FileType = '所有文件,*.*'
  393. // i = GetFileSaveName("请选择文件", Pathname,Filename, "All", FileType)
  394. //
  395. // IF i = 1 And Trim(Pathname) <> '' And Trim(Filename) <> "" THEN
  396. // IF FileExists(Pathname) THEN
  397. // IF MessageBox('提问', '文件'+Pathname+'已存在是否要覆盖?', Question!, YesNo!, 1) <> 1 THEN RETURN
  398. // END IF
  399. //
  400. // parms = AppCom.CreatePbDictionary()
  401. // parms.SetString('token', app_token)
  402. // parms.SetInt('taskid', taskid)
  403. // parms.SetInt('printid', printid)
  404. // parms.SetString('filename', Pathname)
  405. // AppCom.GetFjData(parms, Ref arg_msg)
  406. // IF arg_msg <> '' THEN
  407. // MessageBox('ERROR', arg_msg)
  408. // RETURN
  409. // END IF
  410. // END IF
  411. END IF
  412. end event
  413. type tabpage_2 from userobject within uo_task_detail
  414. event create ( )
  415. event destroy ( )
  416. integer x = 18
  417. integer y = 96
  418. integer width = 2624
  419. integer height = 1440
  420. long backcolor = 16777215
  421. string text = "报价明细"
  422. long tabtextcolor = 33554432
  423. long tabbackcolor = 16777215
  424. long picturemaskcolor = 536870912
  425. dw_2 dw_2
  426. end type
  427. on tabpage_2.create
  428. this.dw_2=create dw_2
  429. this.Control[]={this.dw_2}
  430. end on
  431. on tabpage_2.destroy
  432. destroy(this.dw_2)
  433. end on
  434. type dw_2 from u_dw_rbtnfilter within tabpage_2
  435. integer width = 2459
  436. integer height = 1340
  437. integer taborder = 20
  438. boolean bringtotop = true
  439. string dataobject = "dw_saletask_detail_fjback"
  440. boolean hscrollbar = true
  441. boolean vscrollbar = true
  442. boolean hsplitscroll = true
  443. boolean rbutton_filter_use = true
  444. boolean titleclick_sort_use = true
  445. end type
  446. event rowfocuschanged;call super::rowfocuschanged;this.selectrow(0, false)
  447. if currentrow > 0 then
  448. this.selectrow(currentrow, true)
  449. end if
  450. end event
  451. event clicked;call super::clicked;IF row <= 0 THEN RETURN
  452. This.SetRow(row)
  453. String ls_name
  454. ls_name = dwo.Name
  455. Long taskid, printid, i
  456. String Filename, Pathname, FileType
  457. oleobject parms
  458. String arg_msg = ''
  459. IF ls_name = 'btn' Or ls_name = 'btn1' THEN
  460. taskid = This.Object.taskid[row]
  461. printid = This.Object.printid[row]
  462. Filename = This.Object.fjname[row]
  463. IF MessageBox('提问', '是否要打开文件'+Filename+'?', Question!, YesNo!, 1) <> 1 THEN RETURN
  464. Pathname = GetCurrentDirectory() + "\" + "fjtemp"
  465. IF Not DirectoryExists(Pathname) THEN
  466. CreateDirectory(Pathname)
  467. END IF
  468. Filename = Pathname + "\" + Filename
  469. IF FileExists(Filename) THEN
  470. FileDelete(Filename)
  471. END IF
  472. parms = AppCom.CreatePbDictionary()
  473. parms.SetString('token', app_token)
  474. parms.SetInt('taskid', taskid)
  475. parms.SetInt('printid', printid)
  476. parms.SetString('filename', Filename)
  477. //messageBox('', Filename)
  478. IF ins_status = 1 OR ins_status = 8 THEN
  479. AppCom.EditFjBackDataAsync(parms, Ref arg_msg)
  480. ELSE
  481. AppCom.OpenFjBackDataAsync(parms, Ref arg_msg)
  482. END IF
  483. IF arg_msg <> '' THEN
  484. MessageBox('ERROR', arg_msg)
  485. RETURN
  486. END IF
  487. RETURN
  488. // 使用异步打开文件,下面的同步打开文件
  489. AppCom.GetFjBackData(parms, Ref arg_msg)
  490. IF arg_msg <> '' THEN
  491. MessageBox('ERROR', arg_msg)
  492. RETURN
  493. END IF
  494. oleobject FM
  495. FM = Create oleobject
  496. uo_reghelper ll_reghelper
  497. ll_reghelper = Create uo_reghelper
  498. Boolean changed = False
  499. IF ll_reghelper.ConnectToNewObject("LJCom.FileHelper", "LJCom.FileHelper.dll", FM, arg_msg) <> 1 THEN
  500. Destroy ll_reghelper
  501. Destroy FM
  502. MessageBox('ERROR', '连接LJCom.FileHelper失败,' + arg_msg)
  503. goto ext
  504. END IF
  505. // DONE: 如果当前状态可以修改
  506. if ins_status = 1 OR ins_status = 8 then
  507. IF Not FM.EditFile(Filename, Ref changed, Ref arg_msg) THEN
  508. Destroy ll_reghelper
  509. Destroy FM
  510. MessageBox('ERROR', '编辑文件失败,' + arg_msg)
  511. goto ext
  512. END IF
  513. else
  514. IF Not FM.OpenFile(Filename, Ref arg_msg) THEN
  515. Destroy ll_reghelper
  516. Destroy FM
  517. MessageBox('ERROR', '打开文件失败,' + arg_msg)
  518. goto ext
  519. END IF
  520. end if
  521. Destroy ll_reghelper
  522. Destroy FM
  523. IF changed THEN
  524. IF MessageBox('提问', '文件已被修改,是否提交?(修改后订单只能重新询价,不能审核)', Question!, YesNo!, 1) <> 1 THEN goto ext
  525. parms = AppCom.CreatePbDictionary()
  526. parms.SetString('token', app_token)
  527. parms.SetInt('taskid', taskid)
  528. parms.SetInt('printid', printid)
  529. parms.SetString('filename', Filename)
  530. AppCom.SaveFJBack(parms, Ref arg_msg)
  531. IF arg_msg <> '' THEN
  532. MessageBox('ERROR', arg_msg)
  533. goto ext
  534. END IF
  535. MessageBox('OK', '文件提交完成')
  536. parent.getparent().triggerevent('ue_fjchanged')
  537. END IF
  538. ext:
  539. FileDelete(Filename)
  540. // Pathname = Filename
  541. // FileType = '所有文件,*.*'
  542. // i = GetFileSaveName("请选择文件", Pathname,Filename, "All", FileType)
  543. //
  544. // IF i = 1 And Trim(Pathname) <> '' And Trim(Filename) <> "" THEN
  545. // IF FileExists(Filename) THEN
  546. // IF MessageBox('提问', '文件已存在是否要覆盖?', Question!, YesNo!, 1) <> 1 THEN RETURN
  547. // END IF
  548. //
  549. // parms = AppCom.CreatePbDictionary()
  550. // parms.SetString('token', app_token)
  551. // parms.SetInt('taskid', taskid)
  552. // parms.SetInt('printid', printid)
  553. // parms.SetString('filename', Filename)
  554. // AppCom.GetFjBackData(parms, Ref arg_msg)
  555. // IF arg_msg <> '' THEN
  556. // MessageBox('ERROR', arg_msg)
  557. // RETURN
  558. // END IF
  559. // END IF
  560. END IF
  561. end event
  562. type tabpage_3 from userobject within uo_task_detail
  563. event create ( )
  564. event destroy ( )
  565. integer x = 18
  566. integer y = 96
  567. integer width = 2624
  568. integer height = 1440
  569. long backcolor = 16777215
  570. string text = "指令单"
  571. long tabtextcolor = 33554432
  572. long tabbackcolor = 16777215
  573. long picturemaskcolor = 536870912
  574. dw_3 dw_3
  575. end type
  576. on tabpage_3.create
  577. this.dw_3=create dw_3
  578. this.Control[]={this.dw_3}
  579. end on
  580. on tabpage_3.destroy
  581. destroy(this.dw_3)
  582. end on
  583. type dw_3 from u_dw_rbtnfilter within tabpage_3
  584. integer width = 2459
  585. integer height = 1340
  586. integer taborder = 20
  587. boolean bringtotop = true
  588. string dataobject = "dw_saletask_detail_order"
  589. boolean hscrollbar = true
  590. boolean vscrollbar = true
  591. boolean hsplitscroll = true
  592. boolean rbutton_filter_use = true
  593. boolean titleclick_sort_use = true
  594. end type
  595. event rowfocuschanged;call super::rowfocuschanged;this.selectrow(0, false)
  596. if currentrow > 0 then
  597. this.selectrow(currentrow, true)
  598. end if
  599. end event
  600. type tabpage_4 from userobject within uo_task_detail
  601. event create ( )
  602. event destroy ( )
  603. integer x = 18
  604. integer y = 96
  605. integer width = 2624
  606. integer height = 1440
  607. long backcolor = 16777215
  608. string text = "工组进度"
  609. long tabtextcolor = 33554432
  610. long tabbackcolor = 16777215
  611. long picturemaskcolor = 536870912
  612. dw_4 dw_4
  613. end type
  614. on tabpage_4.create
  615. this.dw_4=create dw_4
  616. this.Control[]={this.dw_4}
  617. end on
  618. on tabpage_4.destroy
  619. destroy(this.dw_4)
  620. end on
  621. type dw_4 from u_dw_rbtnfilter within tabpage_4
  622. integer width = 2459
  623. integer height = 1340
  624. integer taborder = 20
  625. boolean bringtotop = true
  626. string dataobject = "dw_saletask_detail_order_wkp"
  627. boolean hscrollbar = true
  628. boolean vscrollbar = true
  629. boolean hsplitscroll = true
  630. boolean rbutton_filter_use = true
  631. boolean titleclick_sort_use = true
  632. end type
  633. event rowfocuschanged;call super::rowfocuschanged;this.selectrow(0, false)
  634. if currentrow > 0 then
  635. this.selectrow(currentrow, true)
  636. end if
  637. end event
  638. type tabpage_5 from userobject within uo_task_detail
  639. event create ( )
  640. event destroy ( )
  641. integer x = 18
  642. integer y = 96
  643. integer width = 2624
  644. integer height = 1440
  645. long backcolor = 16777215
  646. string text = "条码"
  647. long tabtextcolor = 33554432
  648. long tabbackcolor = 16777215
  649. long picturemaskcolor = 536870912
  650. dw_5 dw_5
  651. end type
  652. on tabpage_5.create
  653. this.dw_5=create dw_5
  654. this.Control[]={this.dw_5}
  655. end on
  656. on tabpage_5.destroy
  657. destroy(this.dw_5)
  658. end on
  659. type dw_5 from u_dw_rbtnfilter within tabpage_5
  660. integer width = 2459
  661. integer height = 1340
  662. integer taborder = 20
  663. boolean bringtotop = true
  664. string dataobject = "dw_saletask_detail_order_barcode"
  665. boolean hscrollbar = true
  666. boolean vscrollbar = true
  667. boolean hsplitscroll = true
  668. boolean rbutton_filter_use = true
  669. boolean titleclick_sort_use = true
  670. end type
  671. event rowfocuschanged;call super::rowfocuschanged;this.selectrow(0, false)
  672. if currentrow > 0 then
  673. this.selectrow(currentrow, true)
  674. end if
  675. end event
  676. type tabpage_6 from userobject within uo_task_detail
  677. event create ( )
  678. event destroy ( )
  679. integer x = 18
  680. integer y = 96
  681. integer width = 2624
  682. integer height = 1440
  683. long backcolor = 16777215
  684. string text = "日志"
  685. long tabtextcolor = 33554432
  686. long tabbackcolor = 16777215
  687. long picturemaskcolor = 536870912
  688. cb_1 cb_1
  689. mle_1 mle_1
  690. end type
  691. on tabpage_6.create
  692. this.cb_1=create cb_1
  693. this.mle_1=create mle_1
  694. this.Control[]={this.cb_1,&
  695. this.mle_1}
  696. end on
  697. on tabpage_6.destroy
  698. destroy(this.cb_1)
  699. destroy(this.mle_1)
  700. end on
  701. type cb_1 from commandbutton within tabpage_6
  702. integer width = 251
  703. integer height = 112
  704. integer taborder = 20
  705. integer textsize = -9
  706. integer weight = 400
  707. fontcharset fontcharset = gb2312charset!
  708. fontpitch fontpitch = variable!
  709. string facename = "宋体"
  710. string text = "留言"
  711. end type
  712. event clicked;S_INPUTBOX s_input
  713. s_input.Title = '留言'
  714. s_input.OLD_TEXT = ''
  715. OpenWithParm(w_inputbox, s_input)
  716. String rslt
  717. rslt = Message.StringParm
  718. IF rslt = '' THEN RETURN
  719. oleobject parms
  720. parms = AppCom.CreatePbDictionary()
  721. parms.SetString('token', app_token)
  722. parms.SetInt('taskid', ins_taskid)
  723. parms.SetString('opemp', app_username)
  724. parms.SetString('logmsg', rslt)
  725. String arg_msg = ''
  726. AppCom.AddTaskLog(parms, Ref arg_msg)
  727. IF arg_msg <> '' THEN
  728. MessageBox('ERROR', arg_msg)
  729. RETURN
  730. END IF
  731. wf_gettasklog()
  732. end event
  733. type mle_1 from multilineedit within tabpage_6
  734. integer y = 116
  735. integer width = 2331
  736. integer height = 1296
  737. integer taborder = 20
  738. integer textsize = -9
  739. integer weight = 400
  740. fontcharset fontcharset = gb2312charset!
  741. fontpitch fontpitch = variable!
  742. string facename = "宋体"
  743. long textcolor = 33554432
  744. boolean hscrollbar = true
  745. boolean vscrollbar = true
  746. boolean autohscroll = true
  747. boolean autovscroll = true
  748. boolean displayonly = true
  749. borderstyle borderstyle = stylelowered!
  750. boolean hideselection = false
  751. end type