w_fx_sctask_sel.srw 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250
  1. $PBExportHeader$w_fx_sctask_sel.srw
  2. forward
  3. global type w_fx_sctask_sel from w_publ_base_style
  4. end type
  5. type cb_refresh from uo_imflatbutton within w_fx_sctask_sel
  6. end type
  7. type cb_select from uo_imflatbutton within w_fx_sctask_sel
  8. end type
  9. type dw_fx_sctask from u_dw_rbtnfilter within w_fx_sctask_sel
  10. end type
  11. type cbx_all from checkbox within w_fx_sctask_sel
  12. end type
  13. end forward
  14. global type w_fx_sctask_sel from w_publ_base_style
  15. integer x = 2002
  16. integer y = 500
  17. integer width = 3511
  18. integer height = 2428
  19. string title = "派工单选择"
  20. boolean minbox = false
  21. windowtype windowtype = response!
  22. string icon = "AppIcon!"
  23. boolean if_ue_retr = true
  24. boolean if_ue_filter = true
  25. boolean if_ue_sort = true
  26. boolean if_ue_sentdataout = true
  27. cb_refresh cb_refresh
  28. cb_select cb_select
  29. dw_fx_sctask dw_fx_sctask
  30. cbx_all cbx_all
  31. end type
  32. global w_fx_sctask_sel w_fx_sctask_sel
  33. type variables
  34. Long ins_cuscomid
  35. end variables
  36. forward prototypes
  37. public subroutine wf_retrieve_mx ()
  38. end prototypes
  39. public subroutine wf_retrieve_mx ();String arg_msg
  40. Long i,row
  41. oleobject request,response,mxs,Item
  42. request = FXAppCom.CreatePbDictionary()
  43. request.SetString('token', app_token_fx)
  44. request.SetInt('cuscomid',ins_cuscomid)
  45. response = FXAppCom.DoExecute('GetFxScTaskSel', request)
  46. arg_msg = response.GetString('ErrMsg')
  47. If (arg_msg <> '') THEN
  48. MessageBox('提示', '获取待完工派工单列表失败,原因:' + arg_msg)
  49. RETURN
  50. END IF
  51. dw_fx_sctask.Reset()
  52. dw_fx_sctask.SetRedraw(False)
  53. mxs = response.GetArrOfPBDictionary('FxScTasks')
  54. DateTime ld_now,requiredate
  55. ld_now = DateTime(Today(),Now())
  56. FOR i = 1 To mxs.Count
  57. Item = mxs.GetItem(i - 1)
  58. row = dw_fx_sctask.InsertRow(0)
  59. dw_fx_sctask.SetItem(row, 'fxtaskid', Item.GetInt('fxtaskid'))
  60. dw_fx_sctask.SetItem(row, 'fx_sc_task_fxtaskcode', Item.GetInt('fxtaskcode'))
  61. dw_fx_sctask.SetItem(row, 'fx_company_cusname', Item.GetString('cusname'))
  62. dw_fx_sctask.SetItem(row, 'fx_sc_task_erptaskcode', Item.GetString('erptaskcode'))
  63. dw_fx_sctask.SetItem(row, 'fx_sc_task_billtype', Item.GetInt('billtype'))
  64. dw_fx_sctask.SetItem(row, 'fx_sc_task_procode', Item.GetInt('procode'))
  65. dw_fx_sctask.SetItem(row, 'fx_sc_task_proname', Item.GetInt('proname'))
  66. dw_fx_sctask.SetItem(row, 'fx_sc_task_qty', Item.GetDouble('qty'))
  67. dw_fx_sctask.SetItem(row, 'fx_sc_task_fqty', Item.GetDouble('fqty'))
  68. dw_fx_sctask.SetItem(row, 'fx_sc_task_backqty', Item.GetDouble('backqty'))
  69. dw_fx_sctask.SetItem(row, 'fx_sc_task_backreason', Item.GetString('backreason'))
  70. dw_fx_sctask.SetItem(row, 'fx_sc_task_backemp', Item.GetString('backemp'))
  71. dw_fx_sctask.SetItem(row, 'fx_sc_task_backdate', Item.GetDatetime('fxtaskid'))
  72. dw_fx_sctask.SetItem(row, 'fx_sc_task_taskdate', Item.GetDatetime('taskdate'))
  73. dw_fx_sctask.SetItem(row, 'fx_sc_task_rqdate', Item.GetDatetime('rqdate'))
  74. dw_fx_sctask.SetItem(row, 'fx_sc_task_dscrp', Item.GetString('dscrp'))
  75. dw_fx_sctask.SetItem(row, 'fx_sc_task_status', Item.GetString('status'))
  76. dw_fx_sctask.SetItem(row, 'fx_sc_task_mtrlcode', Item.GetString('mtrlcode'))
  77. dw_fx_sctask.SetItem(row, 'fx_sc_task_mtrlname', Item.GetString('mtrlname'))
  78. dw_fx_sctask.SetItem(row, 'fx_sc_task_mtrlmode', Item.GetString('mtrlmode'))
  79. dw_fx_sctask.SetItem(row, 'fx_sc_task_unit', Item.GetString('unit'))
  80. dw_fx_sctask.SetItem(row, 'billtypestr', Item.GetString('billtypestr'))
  81. dw_fx_sctask.SetItem(row, 'statusstr', Item.GetString('statusstr'))
  82. dw_fx_sctask.SetItem(row, 'unfqty', Item.GetDouble('unfqty'))
  83. dw_fx_sctask.SetItem(row, 'ch', 0)
  84. NEXT
  85. dw_fx_sctask.SetRedraw(True)
  86. end subroutine
  87. on w_fx_sctask_sel.create
  88. int iCurrent
  89. call super::create
  90. this.cb_refresh=create cb_refresh
  91. this.cb_select=create cb_select
  92. this.dw_fx_sctask=create dw_fx_sctask
  93. this.cbx_all=create cbx_all
  94. iCurrent=UpperBound(this.Control)
  95. this.Control[iCurrent+1]=this.cb_refresh
  96. this.Control[iCurrent+2]=this.cb_select
  97. this.Control[iCurrent+3]=this.dw_fx_sctask
  98. this.Control[iCurrent+4]=this.cbx_all
  99. end on
  100. on w_fx_sctask_sel.destroy
  101. call super::destroy
  102. destroy(this.cb_refresh)
  103. destroy(this.cb_select)
  104. destroy(this.dw_fx_sctask)
  105. destroy(this.cbx_all)
  106. end on
  107. event resize;call super::resize;r_bar.height = this.height
  108. dw_fx_sctask.width = this.workspacewidth()
  109. dw_fx_sctask.height = this.workspaceheight() - dw_fx_sctask.y
  110. end event
  111. event open;call super::open;ins_cuscomid = Message.DoubleParm
  112. wf_movetocenter()
  113. wf_retrieve_mx()
  114. end event
  115. type cb_func from w_publ_base_style`cb_func within w_fx_sctask_sel
  116. boolean visible = false
  117. end type
  118. type cb_exit from w_publ_base_style`cb_exit within w_fx_sctask_sel
  119. integer x = 315
  120. end type
  121. type ln_bar from w_publ_base_style`ln_bar within w_fx_sctask_sel
  122. end type
  123. type ln_bar2 from w_publ_base_style`ln_bar2 within w_fx_sctask_sel
  124. end type
  125. type r_bar from w_publ_base_style`r_bar within w_fx_sctask_sel
  126. end type
  127. type cb_refresh from uo_imflatbutton within w_fx_sctask_sel
  128. integer width = 151
  129. integer height = 164
  130. integer taborder = 10
  131. boolean bringtotop = true
  132. string text = "刷新"
  133. string normalpicname = "refresh.bmp"
  134. integer picsize = 16
  135. toolbaralignment pic_align = alignattop!
  136. boolean border = false
  137. end type
  138. event clicked;call super::clicked;wf_retrieve_mx()
  139. end event
  140. type cb_select from uo_imflatbutton within w_fx_sctask_sel
  141. integer x = 151
  142. integer y = 4
  143. integer width = 165
  144. integer height = 164
  145. integer taborder = 10
  146. boolean bringtotop = true
  147. string text = "选定"
  148. string normalpicname = "ok.bmp"
  149. integer picsize = 16
  150. toolbaralignment pic_align = alignattop!
  151. boolean border = false
  152. end type
  153. event clicked;call super::clicked;datastore ds
  154. ds = create datastore
  155. ds.DataObject = 'dw_fx_sctask_sel'
  156. //返回选择数据
  157. long i,row
  158. ds.Reset()
  159. for i = 1 to dw_fx_sctask.RowCount()
  160. row = 0
  161. if dw_fx_sctask.Object.ch[i] = 1 then
  162. row++
  163. dw_fx_sctask.RowsCopy(i, i, Primary!, ds, row, Primary!)
  164. end if
  165. next
  166. CloseWithReturn(PARENT, ds)
  167. end event
  168. type dw_fx_sctask from u_dw_rbtnfilter within w_fx_sctask_sel
  169. integer y = 188
  170. integer width = 3515
  171. integer height = 2140
  172. integer taborder = 20
  173. boolean bringtotop = true
  174. string dataobject = "dw_fx_sctask_sel"
  175. boolean hscrollbar = true
  176. boolean vscrollbar = true
  177. boolean rbutton_filter_use = true
  178. boolean rbutton_setposition_use = true
  179. boolean titleclick_sort_use = true
  180. end type
  181. event clicked;call super::clicked;if (row > 0) then
  182. this.SelectRow(0, false)
  183. this.SelectRow(row, true)
  184. end if
  185. end event
  186. type cbx_all from checkbox within w_fx_sctask_sel
  187. integer x = 517
  188. integer y = 48
  189. integer width = 251
  190. integer height = 60
  191. boolean bringtotop = true
  192. integer textsize = -9
  193. integer weight = 400
  194. fontcharset fontcharset = gb2312charset!
  195. fontpitch fontpitch = variable!
  196. string facename = "宋体"
  197. long backcolor = 67108864
  198. string text = "全选"
  199. end type
  200. event clicked;long ll_i, ll_checked
  201. IF cbx_all.Checked THEN
  202. ll_checked = 1
  203. ELSE
  204. ll_checked = 0
  205. END IF
  206. FOR ll_i = 1 TO dw_fx_sctask.RowCount()
  207. dw_fx_sctask.Object.ch[ll_i] = ll_checked
  208. NEXT
  209. end event