w_fifo_mtrlware_cb.srw 9.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499
  1. $PBExportHeader$w_fifo_mtrlware_cb.srw
  2. forward
  3. global type w_fifo_mtrlware_cb from w_publ_base
  4. end type
  5. type tab_1 from tab within w_fifo_mtrlware_cb
  6. end type
  7. type tabpage_2 from userobject within tab_1
  8. end type
  9. type dw_3 from u_dw_rbtnfilter within tabpage_2
  10. end type
  11. type tabpage_2 from userobject within tab_1
  12. dw_3 dw_3
  13. end type
  14. type tabpage_1 from userobject within tab_1
  15. end type
  16. type dw_2 from u_dw_rbtnfilter within tabpage_1
  17. end type
  18. type dw_1 from u_dw_rbtnfilter within tabpage_1
  19. end type
  20. type tabpage_1 from userobject within tab_1
  21. dw_2 dw_2
  22. dw_1 dw_1
  23. end type
  24. type tab_1 from tab within w_fifo_mtrlware_cb
  25. tabpage_2 tabpage_2
  26. tabpage_1 tabpage_1
  27. end type
  28. end forward
  29. global type w_fifo_mtrlware_cb from w_publ_base
  30. integer width = 3214
  31. integer height = 1992
  32. string title = "成本组成明细"
  33. boolean maxbox = true
  34. boolean resizable = true
  35. event ue_fj_view ( )
  36. tab_1 tab_1
  37. end type
  38. global w_fifo_mtrlware_cb w_fifo_mtrlware_cb
  39. type variables
  40. datawindow dw_cbmx
  41. datawindow dw_mtrlware,dw_mtrlwaremx
  42. long ins_mtrlid
  43. string ins_mtrlcode
  44. long cur_scid
  45. long cur_outwareid
  46. long cur_printid
  47. long cur_mtrlwareid
  48. decimal cur_dec_uqty
  49. string cur_mtrlname
  50. end variables
  51. forward prototypes
  52. public subroutine wf_retrieve (long arg_mtrlid)
  53. public subroutine wf_picretrieve (long arg_mtrlid)
  54. public subroutine wf_retrieve_cbmx ()
  55. public subroutine wf_retrieve_allmtrlware ()
  56. public subroutine wf_retrieve_allmtrlware_mx ()
  57. end prototypes
  58. event ue_fj_view();s_edit_index_tran s_pic
  59. Long ll_ConnectionID
  60. String arg_msg
  61. Long ls_row
  62. IF f_get_outerconnection(ll_ConnectionID,arg_msg) = 0 THEN
  63. MessageBox('提示','没有指定附件数据库连接'+arg_msg, Information!, OK! )
  64. RETURN
  65. END IF
  66. s_pic.f_long = 201 //物料资料 mainID
  67. s_pic.f_string = ins_mtrlcode
  68. s_pic.g_long = ins_mtrlid
  69. s_pic.d_long = 0 //relid_mx
  70. s_pic.d_string = '' //relcode_mx
  71. s_pic.e_long = 0 // scid
  72. s_pic.sqltransaction = sys_filedb_sqlca
  73. IF NOT f_power_ind(2154) THEN
  74. OpenWithParm(w_fj_bill_view,s_pic)
  75. ELSE
  76. OpenWithParm(w_fj_bill_mng,s_pic)
  77. END IF
  78. end event
  79. public subroutine wf_retrieve (long arg_mtrlid);
  80. IF tab_1.SelectedTab = 2 THEN
  81. dw_mtrlware.Retrieve(ins_mtrlid)
  82. ELSE
  83. wf_picretrieve(ins_mtrlid)
  84. END IF
  85. end subroutine
  86. public subroutine wf_picretrieve (long arg_mtrlid);//uo_fj_mng_billtype ls_uo_fjbt
  87. //ls_uo_fjbt = CREATE uo_fj_mng_billtype
  88. //
  89. //Long ll_fileid
  90. //
  91. //Blob ls_filedata
  92. //String arg_msg
  93. //Long ll_classid
  94. //String ls_filename
  95. //SetNull(ls_filedata)
  96. //
  97. //SELECT top 1 classid
  98. // INTO :ll_classid
  99. // FROM u_billpic_fileclass;
  100. //IF sqlca.SQLCode <> 0 THEN
  101. // SELECT top 1 classid
  102. // INTO :ll_classid
  103. // FROM U_FileClass
  104. // Where billtype = 201;
  105. // IF sqlca.SQLCode <> 0 THEN
  106. // ll_classid = 0
  107. // END IF
  108. //END IF
  109. //
  110. //
  111. //SELECT top 1 fileid,filename INTO :ll_fileid,:ls_filename
  112. // FROM u_file
  113. // WHERE relid = :arg_mtrlid
  114. // AND classid = :ll_classid
  115. // AND (filetype = 'bmp' OR filetype = 'rle' OR filetype = 'wmf'
  116. // OR filetype = 'tif' OR filetype = 'jpg' OR filetype = 'gif' OR filetype = 'jpeg')
  117. // USING sys_fileDB_sqlca;
  118. //IF sys_fileDB_sqlca.SQLCode <> 0 THEN
  119. // ll_fileid = 0
  120. //END IF
  121. //
  122. //IF ll_fileid > 0 THEN
  123. // IF ls_uo_fjbt.uf_getfjbolb_fromdb( ll_fileid, ls_filedata, sys_fileDB_sqlca, arg_msg) = 0 THEN
  124. // RETURN
  125. // END IF
  126. //ELSE
  127. // SetNull(ls_filedata)
  128. // ls_filename = ''
  129. //END IF
  130. //
  131. //tab_1.tabpage_2.uo_pic.OriginalSize = cbx_originalsize.Checked
  132. //tab_1.tabpage_2.uo_pic.of_showfile( ls_filedata,ls_filename, arg_msg)
  133. //tab_1.tabpage_2.uo_pic.of_setfilesize()
  134. //
  135. end subroutine
  136. public subroutine wf_retrieve_cbmx ();// //
  137. //
  138. //
  139. Long ll_row
  140. Long ll_scid,ll_outwareid,ll_printid
  141. Decimal dec_uqty
  142. dw_cbmx.Reset()
  143. //
  144. this.title='成本组成明细' + ' ' + string(cur_mtrlname )
  145. IF cur_dec_uqty < 0 THEN
  146. dw_cbmx.Reset()
  147. RETURN
  148. END IF
  149. dw_cbmx.Retrieve(cur_scid,cur_outwareid,cur_printid)
  150. end subroutine
  151. public subroutine wf_retrieve_allmtrlware ();//
  152. dw_mtrlware.Reset()
  153. IF cur_mtrlwareid = 0 THEN RETURN
  154. dw_mtrlware.Retrieve(cur_scid,cur_mtrlwareid)
  155. end subroutine
  156. public subroutine wf_retrieve_allmtrlware_mx ();////
  157. //
  158. //
  159. Long ll_row
  160. Long ll_scid,ll_mtrlwaremxid
  161. Decimal dec_uqty
  162. dw_mtrlwaremx.Reset()
  163. ll_row = dw_mtrlware.GetRow()
  164. IF ll_row = 0 THEN RETURN
  165. ll_mtrlwaremxid = dw_mtrlware.Object.mtrlwaremxid[ll_row]
  166. dw_mtrlwaremx.Retrieve(ll_mtrlwaremxid)
  167. //
  168. //
  169. //
  170. end subroutine
  171. on w_fifo_mtrlware_cb.create
  172. int iCurrent
  173. call super::create
  174. this.tab_1=create tab_1
  175. iCurrent=UpperBound(this.Control)
  176. this.Control[iCurrent+1]=this.tab_1
  177. end on
  178. on w_fifo_mtrlware_cb.destroy
  179. call super::destroy
  180. destroy(this.tab_1)
  181. end on
  182. event ue_before_open;call super::ue_before_open;dw_cbmx = tab_1.tabpage_2.dw_3
  183. dw_mtrlware = tab_1.tabpage_1.dw_1
  184. dw_mtrlwaremx = tab_1.tabpage_1.dw_2
  185. dw_mtrlware.settransobject(sqlca)
  186. dw_mtrlwaremx.settransobject(sqlca)
  187. dw_cbmx.settransobject(sqlca)
  188. end event
  189. event resize;call super::resize;tab_1.width = this.width - 11
  190. tab_1.height = this.height - 30
  191. dw_cbmx.width = tab_1.tabpage_1.width - 40
  192. dw_cbmx.height = tab_1.tabpage_2.height - 140
  193. dw_mtrlware.width = tab_1.tabpage_1.width - 40
  194. dw_mtrlware.height = tab_1.tabpage_1.height / 5 * 3
  195. dw_mtrlwaremx.width = tab_1.tabpage_1.width - 40
  196. dw_mtrlwaremx.y = dw_mtrlware.y + dw_mtrlware.height + 10
  197. dw_mtrlwaremx.height = (tab_1.tabpage_1.height / 5 * 2) - 140
  198. end event
  199. event open;call super::open;
  200. s_edit_index_tran INS_RT_STRU //传递参数使用
  201. INS_RT_STRU = Message.PowerObjectParm
  202. cur_scid=INS_RT_STRU.b_long //cur_scid
  203. cur_outwareid=INS_RT_STRU.c_long //cur_outwareid
  204. cur_printid=INS_RT_STRU.d_long //cur_printid
  205. cur_mtrlwareid=INS_RT_STRU.e_long //cur_mtrlwareid
  206. cur_dec_uqty=INS_RT_STRU.b_decimal //cur_dec_uqty
  207. cur_mtrlname=INS_RT_STRU.b_string //cur_mtrlname
  208. wf_retrieve_cbmx()
  209. end event
  210. type cb_func from w_publ_base`cb_func within w_fifo_mtrlware_cb
  211. boolean visible = false
  212. end type
  213. type cb_exit from w_publ_base`cb_exit within w_fifo_mtrlware_cb
  214. boolean visible = false
  215. integer x = 1925
  216. integer y = 1288
  217. end type
  218. type tab_1 from tab within w_fifo_mtrlware_cb
  219. integer width = 3159
  220. integer height = 1872
  221. integer taborder = 30
  222. boolean bringtotop = true
  223. integer textsize = -9
  224. integer weight = 400
  225. fontcharset fontcharset = gb2312charset!
  226. fontpitch fontpitch = variable!
  227. string facename = "宋体"
  228. long backcolor = 134217739
  229. boolean raggedright = true
  230. boolean focusonbuttondown = true
  231. integer selectedtab = 1
  232. tabpage_2 tabpage_2
  233. tabpage_1 tabpage_1
  234. end type
  235. on tab_1.create
  236. this.tabpage_2=create tabpage_2
  237. this.tabpage_1=create tabpage_1
  238. this.Control[]={this.tabpage_2,&
  239. this.tabpage_1}
  240. end on
  241. on tab_1.destroy
  242. destroy(this.tabpage_2)
  243. destroy(this.tabpage_1)
  244. end on
  245. event selectionchanged;//wf_retrieve(ins_mtrlid)
  246. //
  247. IF tab_1.SelectedTab = 1 THEN
  248. ELSE
  249. dw_mtrlwaremx.reset()
  250. wf_retrieve_allmtrlware()
  251. wf_retrieve_allmtrlware_mx()
  252. END IF
  253. end event
  254. event constructor;//long ll_tab
  255. //
  256. //ll_tab = long(ProfileString(SYS_INIFILENAME, "w_fj_fileopen", "SelectedTab", "1"))
  257. //tab_1.SelectTab(ll_tab)
  258. end event
  259. type tabpage_2 from userobject within tab_1
  260. integer x = 18
  261. integer y = 96
  262. integer width = 3122
  263. integer height = 1760
  264. long backcolor = 134217739
  265. string text = "成本组成明细"
  266. long tabtextcolor = 33554432
  267. long tabbackcolor = 134217739
  268. long picturemaskcolor = 536870912
  269. dw_3 dw_3
  270. end type
  271. on tabpage_2.create
  272. this.dw_3=create dw_3
  273. this.Control[]={this.dw_3}
  274. end on
  275. on tabpage_2.destroy
  276. destroy(this.dw_3)
  277. end on
  278. type dw_3 from u_dw_rbtnfilter within tabpage_2
  279. integer width = 3113
  280. integer height = 1048
  281. integer taborder = 30
  282. string dataobject = "dw_rp_sale_mx_dw_cbmx"
  283. boolean hscrollbar = true
  284. boolean vscrollbar = true
  285. boolean hsplitscroll = true
  286. borderstyle borderstyle = StyleBox!
  287. end type
  288. event rowfocuschanged;call super::rowfocuschanged;IF currentrow <= 0 THEN RETURN
  289. THIS.SelectRow(0,FALSE)
  290. THIS.SelectRow(currentrow,TRUE)
  291. end event
  292. event doubleclicked;call super::doubleclicked;IF row > 0 THEN
  293. String ls_code
  294. ls_code = THIS.Object.u_mtrlware_inmx_inwarecode[row]
  295. f_open_win(cur_scid,ls_code)
  296. END IF
  297. end event
  298. type tabpage_1 from userobject within tab_1
  299. integer x = 18
  300. integer y = 96
  301. integer width = 3122
  302. integer height = 1760
  303. long backcolor = 134217739
  304. string text = "库存进仓批"
  305. long tabtextcolor = 33554432
  306. long tabbackcolor = 134217739
  307. long picturemaskcolor = 536870912
  308. dw_2 dw_2
  309. dw_1 dw_1
  310. end type
  311. on tabpage_1.create
  312. this.dw_2=create dw_2
  313. this.dw_1=create dw_1
  314. this.Control[]={this.dw_2,&
  315. this.dw_1}
  316. end on
  317. on tabpage_1.destroy
  318. destroy(this.dw_2)
  319. destroy(this.dw_1)
  320. end on
  321. type dw_2 from u_dw_rbtnfilter within tabpage_1
  322. integer y = 1076
  323. integer width = 3113
  324. integer height = 672
  325. integer taborder = 30
  326. string dataobject = "dw_rp_sale_mx_dw4_allmtrlware_mx"
  327. boolean hscrollbar = true
  328. boolean vscrollbar = true
  329. boolean hsplitscroll = true
  330. borderstyle borderstyle = StyleBox!
  331. end type
  332. event rowfocuschanged;call super::rowfocuschanged;IF currentrow <= 0 THEN RETURN
  333. THIS.SelectRow(0,FALSE)
  334. THIS.SelectRow(currentrow,TRUE)
  335. end event
  336. event doubleclicked;call super::doubleclicked;IF row > 0 THEN
  337. String ls_code
  338. ls_code = THIS.Object.outwarecode[row]
  339. f_open_win(cur_scid,ls_code)
  340. END IF
  341. end event
  342. type dw_1 from u_dw_rbtnfilter within tabpage_1
  343. integer width = 3113
  344. integer height = 1020
  345. integer taborder = 20
  346. string dataobject = "dw_rp_sale_mx_dw3_allmtrlware"
  347. boolean hscrollbar = true
  348. boolean vscrollbar = true
  349. boolean hsplitscroll = true
  350. borderstyle borderstyle = StyleBox!
  351. end type
  352. event rowfocuschanged;call super::rowfocuschanged;IF currentrow <= 0 THEN RETURN
  353. THIS.SelectRow(0,FALSE)
  354. THIS.SelectRow(currentrow,TRUE)
  355. wf_retrieve_allmtrlware_mx()
  356. end event
  357. event clicked;call super::clicked;wf_retrieve_allmtrlware_mx()
  358. end event
  359. event doubleclicked;call super::doubleclicked;IF row > 0 THEN
  360. String ls_code
  361. ls_code = THIS.Object.u_mtrlware_inmx_inwarecode[row]
  362. f_open_win(cur_scid,ls_code)
  363. END IF
  364. end event