w_saletask_fx_finish_edit.srw 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441
  1. $PBExportHeader$w_saletask_fx_finish_edit.srw
  2. forward
  3. global type w_saletask_fx_finish_edit from window
  4. end type
  5. type cb_2 from commandbutton within w_saletask_fx_finish_edit
  6. end type
  7. type cb_1 from commandbutton within w_saletask_fx_finish_edit
  8. end type
  9. type st_1 from statictext within w_saletask_fx_finish_edit
  10. end type
  11. type dw_2 from u_dw_rbtnfilter within w_saletask_fx_finish_edit
  12. end type
  13. type dw_saletaskmx from u_dw_rbtnfilter within w_saletask_fx_finish_edit
  14. end type
  15. type ln_bar from line within w_saletask_fx_finish_edit
  16. end type
  17. type r_bar from rectangle within w_saletask_fx_finish_edit
  18. end type
  19. end forward
  20. global type w_saletask_fx_finish_edit from window
  21. integer width = 3918
  22. integer height = 2400
  23. boolean titlebar = true
  24. string title = "录入完工数"
  25. boolean controlmenu = true
  26. windowtype windowtype = response!
  27. long backcolor = 134217739
  28. string icon = "AppIcon!"
  29. boolean center = true
  30. cb_2 cb_2
  31. cb_1 cb_1
  32. st_1 st_1
  33. dw_2 dw_2
  34. dw_saletaskmx dw_saletaskmx
  35. ln_bar ln_bar
  36. r_bar r_bar
  37. end type
  38. global w_saletask_fx_finish_edit w_saletask_fx_finish_edit
  39. type variables
  40. Long ins_taskid
  41. String ins_taskcode
  42. end variables
  43. forward prototypes
  44. public function integer wf_get_filedata (string arg_filedir, string arg_filemd5, string arg_filetype, ref string arg_msg)
  45. public function integer wf_refresh (long arg_taskid)
  46. public function integer wf_remx (long arg_taskid, long arg_printid)
  47. end prototypes
  48. public function integer wf_get_filedata (string arg_filedir, string arg_filemd5, string arg_filetype, ref string arg_msg);Long rslt = 1
  49. oleobject parm
  50. parm = FxAppCom.CreatePbDictionary()
  51. parm.SetString('token', app_token_fx)
  52. parm.SetString('fileDir', arg_filedir)
  53. parm.SetString('filename', arg_filemd5)
  54. parm.SetString('extension', arg_filetype)
  55. parm.SetString('md5', arg_filemd5)
  56. FXAppCom.GetFileDataByMd5(parm, ref arg_msg)
  57. IF NOT ISNULL(arg_msg) AND Len(arg_msg) > 0 THEN
  58. rslt = 0
  59. GOTO ext
  60. END IF
  61. ext:
  62. RETURN rslt
  63. end function
  64. public function integer wf_refresh (long arg_taskid);int rslt = 1
  65. if (IsNull(arg_taskid)) then return 0
  66. string arg_msg = ''
  67. oleobject list,request,response
  68. request = FXAppCom.CreatePbDictionary()
  69. request.SetString("token",app_token_fx)
  70. request.SetInt("taskid",arg_taskid)
  71. response = FXAppCom.DoExecute("GetSaletaskmx", request)
  72. if (arg_msg <> '') then
  73. rslt = 0
  74. MessageBox('提示', '获取订单明细有误:' + arg_msg)
  75. goto ext
  76. end if
  77. list = response.GetArrOfPBDictionary('mxs')
  78. // 订单明细
  79. dw_saletaskmx.Reset( )
  80. dw_saletaskmx.SetRedraw(false)
  81. long i
  82. any requiredate
  83. oleobject item
  84. IF ISNULL(list) THEN
  85. return rslt
  86. END IF
  87. for i = 1 to list.Count
  88. item = list.GetItem(i - 1)
  89. dw_saletaskmx.Object.taskid[i] = item.GetInt('taskid')
  90. dw_saletaskmx.Object.printid[i] = item.GetInt('printid')
  91. dw_saletaskmx.Object.mxcode[i] = item.GetString('mxcode')
  92. dw_saletaskmx.Object.fxmtrlid[i] = item.GetInt('fxmtrlid')
  93. dw_saletaskmx.Object.mtrlid[i] = item.GetInt('mtrlid')
  94. dw_saletaskmx.Object.mtrlcode[i] = item.GetString('mtrlcode')
  95. dw_saletaskmx.Object.mtrlname[i] = item.GetString('mtrlname')
  96. dw_saletaskmx.Object.mtrlmode[i] = item.GetString('mtrlmode')
  97. dw_saletaskmx.Object.status[i] = item.GetString('status')
  98. dw_saletaskmx.Object.woodcode[i] = item.GetString('woodcode')
  99. dw_saletaskmx.Object.pcode[i] = item.GetString('pcode')
  100. dw_saletaskmx.Object.qty[i] = item.GetDouble('qty')
  101. dw_saletaskmx.Object.qty_wait[i] = item.GetDouble('qtyWait')
  102. dw_saletaskmx.Object.cus_receiveqty[i] = item.GetDouble('cus_receiveqty')
  103. dw_saletaskmx.Object.price[i] = item.GetDouble('price')
  104. dw_saletaskmx.Object.mxdscrp[i] = item.GetString('mxdscrp')
  105. dw_saletaskmx.Object.mxdscrp2[i] = item.GetString('mxdscrp2')
  106. dw_saletaskmx.Object.mtrlcuscode[i] = item.GetString('mtrlcuscode')
  107. dw_saletaskmx.Object.plancode[i] = item.GetString('plancode')
  108. dw_saletaskmx.Object.cus_mtrldef_senddays[i] = item.GetDouble('cus_mtrldef_senddays')
  109. dw_saletaskmx.SetItem(i, 'earliestsenddate', item.GetDateTime('earliestSendDate'))
  110. requiredate = item.GetDateTime('requiredate')
  111. if (not IsNull(requiredate)) then
  112. dw_saletaskmx.Object.requiredate[i] = requiredate
  113. end if
  114. dw_saletaskmx.Object.qty_ready[i] = item.GetDouble('qty_ready')
  115. dw_saletaskmx.Object.sptflagstr[i] = item.GetString('sptFlagStr')
  116. dw_saletaskmx.Object.date_confirm_flag[i] = item.GetInt('date_confirm_flag')
  117. dw_saletaskmx.Object.stopQty[i] = item.GetDouble('stopQty')
  118. dw_saletaskmx.Object.stopEmp[i] = item.GetString('stopEmp')
  119. IF NOT IsNull(item.GetDateTime('stopDate')) THEN
  120. dw_saletaskmx.Object.stopDate[i] = item.GetDateTime('stopDate')
  121. END IF
  122. dw_saletaskmx.Object.stopReason[i] = item.GetString('stopReason')
  123. dw_saletaskmx.Object.gydscrp[i] = item.GetString('gydscrp')
  124. dw_saletaskmx.Object.order_mtrlname_str[i] = item.GetString('order_mtrlname_str')
  125. dw_saletaskmx.Object.saletask_mxid[i] = item.GetInt('saletask_mxid')
  126. dw_saletaskmx.Object.finishqty[i] = item.GetDouble('finishqty')
  127. dw_saletaskmx.Object.nofinishqty[i] = item.GetDouble('nofinishqty')
  128. next
  129. dw_saletaskmx.AcceptText()
  130. dw_saletaskmx.SetSort('printid')
  131. dw_saletaskmx.Sort()
  132. dw_saletaskmx.SetRedraw(true)
  133. ext:
  134. return rslt
  135. end function
  136. public function integer wf_remx (long arg_taskid, long arg_printid);
  137. int rslt = 1
  138. if (IsNull(arg_taskid)) then return 0
  139. string arg_msg = ''
  140. oleobject list,request,response
  141. request = FXAppCom.CreatePbDictionary()
  142. request.SetString("token",app_token_fx)
  143. request.SetInt("taskid",arg_taskid)
  144. request.SetInt("printid",arg_printid)
  145. response = FXAppCom.DoExecute("GetFxSaletaskmxFinishmx", request)
  146. if (arg_msg <> '') then
  147. rslt = 0
  148. MessageBox('提示', '获取订单明细有误:' + arg_msg)
  149. goto ext
  150. end if
  151. list = response.GetArrOfPBDictionary('finishList')
  152. // 订单明细
  153. dw_2.Reset( )
  154. dw_2.SetRedraw(false)
  155. long i
  156. any requiredate
  157. oleobject item
  158. IF ISNULL(list) THEN
  159. return rslt
  160. END IF
  161. for i = 1 to list.Count
  162. item = list.GetItem(i - 1)
  163. dw_2.Object.taskid[i] = item.GetInt('taskid')
  164. dw_2.Object.printid[i] = item.GetInt('printid')
  165. dw_2.Object.mxid[i] = item.GetInt('mxid')
  166. dw_2.Object.taskcode[i] = item.GetString('taskcode')
  167. dw_2.Object.finishqty[i] = item.GetDouble('finishqty')
  168. dw_2.Object.finishtime[i] = item.GetDateTime('finishtime')
  169. next
  170. dw_2.AcceptText()
  171. dw_2.SetSort('mxid')
  172. dw_2.Sort()
  173. dw_2.SetRedraw(true)
  174. ext:
  175. return rslt
  176. end function
  177. on w_saletask_fx_finish_edit.create
  178. this.cb_2=create cb_2
  179. this.cb_1=create cb_1
  180. this.st_1=create st_1
  181. this.dw_2=create dw_2
  182. this.dw_saletaskmx=create dw_saletaskmx
  183. this.ln_bar=create ln_bar
  184. this.r_bar=create r_bar
  185. this.Control[]={this.cb_2,&
  186. this.cb_1,&
  187. this.st_1,&
  188. this.dw_2,&
  189. this.dw_saletaskmx,&
  190. this.ln_bar,&
  191. this.r_bar}
  192. end on
  193. on w_saletask_fx_finish_edit.destroy
  194. destroy(this.cb_2)
  195. destroy(this.cb_1)
  196. destroy(this.st_1)
  197. destroy(this.dw_2)
  198. destroy(this.dw_saletaskmx)
  199. destroy(this.ln_bar)
  200. destroy(this.r_bar)
  201. end on
  202. event open;s_edit_index_tran s_tran //翻页功能窗口 传递参数使用
  203. s_tran = Message.PowerObjectParm
  204. ins_taskid = s_tran.b_long
  205. ins_taskcode = s_tran.b_string
  206. //Long i
  207. //for i = 1 to dw_1.rowcount()
  208. // dw_1.object.ex_finishqty[i] = 0
  209. //next
  210. wf_refresh(ins_taskid)
  211. Long li_printid,li_taskid
  212. IF dw_saletaskmx.rowcount() > 0 then
  213. li_taskid = dw_saletaskmx.object.taskid[1]
  214. li_printid = dw_saletaskmx.object.printid[1]
  215. wf_remx(li_taskid,li_printid)
  216. END IF
  217. end event
  218. event resize;ln_bar.EndX = THIS.Width
  219. r_bar.Width = THIS.Width
  220. end event
  221. type cb_2 from commandbutton within w_saletask_fx_finish_edit
  222. integer x = 274
  223. integer width = 261
  224. integer height = 116
  225. integer taborder = 20
  226. integer textsize = -11
  227. integer weight = 400
  228. fontcharset fontcharset = gb2312charset!
  229. fontpitch fontpitch = variable!
  230. string facename = "宋体"
  231. string text = "退出"
  232. end type
  233. event clicked;close(parent)
  234. end event
  235. type cb_1 from commandbutton within w_saletask_fx_finish_edit
  236. integer width = 261
  237. integer height = 116
  238. integer taborder = 10
  239. integer textsize = -11
  240. integer weight = 400
  241. fontcharset fontcharset = gb2312charset!
  242. fontpitch fontpitch = variable!
  243. string facename = "宋体"
  244. string text = "确定"
  245. end type
  246. event clicked;int rslt = 1
  247. Long i
  248. dw_saletaskmx.accepttext()
  249. string arg_msg = '',arg_msg_tmp
  250. oleobject list,request,response,lo_mx,mxItem
  251. request = FXAppCom.CreatePbDictionary()
  252. request.SetString("token",app_token_fx)
  253. request.SetInt("taskid",ins_taskid)
  254. request.SetInt("typeid",0)
  255. lo_mx = FXAppCom.NewPBArray()
  256. FOR i = 1 To dw_saletaskmx.rowcount()
  257. IF dw_saletaskmx.object.ex_finishqty[i] <= 0 THEN CONTINUE
  258. mxItem = FXAppCom.CreatePbDictionary()
  259. mxItem.SetInt('taskid',ins_taskid)
  260. mxItem.SetInt('printid',dw_saletaskmx.object.printid[i])
  261. mxItem.SetString('taskcode',ins_taskcode)
  262. mxItem.SetDouble('finishqty',dw_saletaskmx.object.ex_finishqty[i])
  263. lo_mx.AddObject(mxItem)
  264. NEXT
  265. request.SetObject("FinishmxList", lo_mx)
  266. oleobject lo_rsp
  267. lo_rsp = FXAppCom.DoExecute("SaveSaletaskmxFinishqtymx", request)
  268. arg_msg_tmp = lo_rsp.GetString("ErrMsg")
  269. If arg_msg_tmp <> "" Then
  270. arg_msg = arg_msg_tmp
  271. rslt = 0
  272. goto ext
  273. END IF
  274. ext:
  275. IF rslt = 0 THEN
  276. messagebox("提示","保存失败"+arg_msg)
  277. return
  278. ELSEIF rslt = 1 THEN
  279. messagebox("提示","保存成功")
  280. END IF
  281. close(parent)
  282. end event
  283. type st_1 from statictext within w_saletask_fx_finish_edit
  284. integer x = 5
  285. integer y = 1192
  286. integer width = 402
  287. integer height = 48
  288. integer textsize = -9
  289. integer weight = 400
  290. fontcharset fontcharset = gb2312charset!
  291. fontpitch fontpitch = variable!
  292. string facename = "宋体"
  293. long textcolor = 33554432
  294. long backcolor = 134217739
  295. string text = "完工明细:"
  296. boolean focusrectangle = false
  297. end type
  298. type dw_2 from u_dw_rbtnfilter within w_saletask_fx_finish_edit
  299. integer x = 5
  300. integer y = 1264
  301. integer width = 1518
  302. integer height = 1016
  303. integer taborder = 40
  304. string dataobject = "dw_saletask_fx_finishmx_edit"
  305. boolean hscrollbar = true
  306. boolean vscrollbar = true
  307. boolean hsplitscroll = true
  308. boolean rbutton_filter_use = true
  309. boolean rbutton_setposition_use = true
  310. boolean titleclick_sort_use = true
  311. end type
  312. type dw_saletaskmx from u_dw_rbtnfilter within w_saletask_fx_finish_edit
  313. integer y = 148
  314. integer width = 3895
  315. integer height = 1024
  316. integer taborder = 30
  317. string dataobject = "dw_saletask_fx_finish_edit"
  318. boolean hscrollbar = true
  319. boolean vscrollbar = true
  320. boolean hsplitscroll = true
  321. boolean rbutton_filter_use = true
  322. boolean rbutton_setposition_use = true
  323. boolean titleclick_sort_use = true
  324. end type
  325. event rowfocuschanged;call super::rowfocuschanged;if IsNull(currentrow) then return
  326. if (currentrow <= 0) then return
  327. this.SelectRow(0, false)
  328. this.SelectRow(currentrow, true)
  329. this.Setrow(currentrow)
  330. end event
  331. event clicked;call super::clicked;IF row <= 0 then return
  332. this.SelectRow(0, false)
  333. this.SelectRow(row, true)
  334. this.Setrow(row)
  335. Long li_taskid
  336. Long li_printid
  337. li_taskid = This.object.taskid[row]
  338. li_printid = This.object.printid[row]
  339. wf_remx(li_taskid,li_printid)
  340. end event
  341. type ln_bar from line within w_saletask_fx_finish_edit
  342. long linecolor = 268435456
  343. integer linethickness = 4
  344. integer beginy = 168
  345. integer endx = 2002
  346. integer endy = 168
  347. end type
  348. type r_bar from rectangle within w_saletask_fx_finish_edit
  349. long linecolor = 16777215
  350. integer linethickness = 4
  351. long fillcolor = 1073741824
  352. integer x = 2203
  353. integer y = 40
  354. integer width = 87
  355. integer height = 52
  356. end type
  357. event constructor;THIS.FillColor = 14215660
  358. THIS.LineColor = 14215660
  359. THIS.X = -1
  360. THIS.Y = -1
  361. THIS.Height = ln_bar.BeginY - 5
  362. end event