w_outware_pos_findmtrl.srw 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548
  1. $PBExportHeader$w_outware_pos_findmtrl.srw
  2. forward
  3. global type w_outware_pos_findmtrl from w_publ_base
  4. end type
  5. type cb_1 from uo_imflatbutton within w_outware_pos_findmtrl
  6. end type
  7. type st_1 from statictext within w_outware_pos_findmtrl
  8. end type
  9. type st_2 from statictext within w_outware_pos_findmtrl
  10. end type
  11. type st_3 from statictext within w_outware_pos_findmtrl
  12. end type
  13. type st_4 from statictext within w_outware_pos_findmtrl
  14. end type
  15. type dw_1 from u_dw_rbtnfilter within w_outware_pos_findmtrl
  16. end type
  17. type cb_retrieve from uo_imflatbutton within w_outware_pos_findmtrl
  18. end type
  19. type cb_2 from uo_imflatbutton within w_outware_pos_findmtrl
  20. end type
  21. type sle_1 from singlelineedit within w_outware_pos_findmtrl
  22. end type
  23. type sle_2 from singlelineedit within w_outware_pos_findmtrl
  24. end type
  25. type sle_3 from singlelineedit within w_outware_pos_findmtrl
  26. end type
  27. type sle_4 from singlelineedit within w_outware_pos_findmtrl
  28. end type
  29. end forward
  30. global type w_outware_pos_findmtrl from w_publ_base
  31. integer width = 3351
  32. integer height = 1928
  33. string title = "商品查询"
  34. boolean minbox = false
  35. windowtype windowtype = response!
  36. event keyup pbm_keyup
  37. event user_key ( )
  38. cb_1 cb_1
  39. st_1 st_1
  40. st_2 st_2
  41. st_3 st_3
  42. st_4 st_4
  43. dw_1 dw_1
  44. cb_retrieve cb_retrieve
  45. cb_2 cb_2
  46. sle_1 sle_1
  47. sle_2 sle_2
  48. sle_3 sle_3
  49. sle_4 sle_4
  50. end type
  51. global w_outware_pos_findmtrl w_outware_pos_findmtrl
  52. type variables
  53. s_pos_mtrl s_rt_stru
  54. long cur_storageid
  55. end variables
  56. event keyup;this.triggerevent('user_key')
  57. end event
  58. event user_key();if (keydown(KeyEnter!) and keydown(KeyControl!)) or keydown(KeyEnd!) then
  59. cb_1.triggerevent(clicked!)
  60. return
  61. elseif keydown(KeyEnter!) then
  62. cb_retrieve.triggerevent(clicked!)
  63. return
  64. elseif keydown(KeyDelete!) then
  65. cb_2.triggerevent(clicked!)
  66. return
  67. elseif keydown(KeyUpArrow!) then
  68. // dw_1.scrollpriorrow()
  69. if dw_1.getrow()>0 then
  70. dw_1.scrolltorow(dw_1.getrow() - 1)
  71. else
  72. dw_1.scrolltorow(dw_1.rowcount())
  73. end if
  74. if dw_1.getrow()>0 then
  75. dw_1.selectrow( 0, false)
  76. dw_1.selectrow( dw_1.getrow(), true)
  77. end if
  78. this.triggerevent('ue_retrieve_mtl')
  79. return
  80. elseif keydown(KeyDownArrow!) then
  81. // dw_1.scrollnextrow()
  82. if dw_1.getrow()>0 then
  83. dw_1.scrolltorow(dw_1.getrow() + 1)
  84. else
  85. dw_1.scrolltorow(1)
  86. end if
  87. if dw_1.getrow()>0 then
  88. dw_1.selectrow( 0, false)
  89. dw_1.selectrow( dw_1.getrow(), true)
  90. end if
  91. this.triggerevent('ue_retrieve_mtl')
  92. return
  93. elseif keydown(KeyEscape!) then
  94. s_rt_stru.if_ok = 0
  95. close(this)
  96. // cb_exit.postevent(clicked!)
  97. return
  98. end if
  99. end event
  100. on w_outware_pos_findmtrl.create
  101. int iCurrent
  102. call super::create
  103. this.cb_1=create cb_1
  104. this.st_1=create st_1
  105. this.st_2=create st_2
  106. this.st_3=create st_3
  107. this.st_4=create st_4
  108. this.dw_1=create dw_1
  109. this.cb_retrieve=create cb_retrieve
  110. this.cb_2=create cb_2
  111. this.sle_1=create sle_1
  112. this.sle_2=create sle_2
  113. this.sle_3=create sle_3
  114. this.sle_4=create sle_4
  115. iCurrent=UpperBound(this.Control)
  116. this.Control[iCurrent+1]=this.cb_1
  117. this.Control[iCurrent+2]=this.st_1
  118. this.Control[iCurrent+3]=this.st_2
  119. this.Control[iCurrent+4]=this.st_3
  120. this.Control[iCurrent+5]=this.st_4
  121. this.Control[iCurrent+6]=this.dw_1
  122. this.Control[iCurrent+7]=this.cb_retrieve
  123. this.Control[iCurrent+8]=this.cb_2
  124. this.Control[iCurrent+9]=this.sle_1
  125. this.Control[iCurrent+10]=this.sle_2
  126. this.Control[iCurrent+11]=this.sle_3
  127. this.Control[iCurrent+12]=this.sle_4
  128. end on
  129. on w_outware_pos_findmtrl.destroy
  130. call super::destroy
  131. destroy(this.cb_1)
  132. destroy(this.st_1)
  133. destroy(this.st_2)
  134. destroy(this.st_3)
  135. destroy(this.st_4)
  136. destroy(this.dw_1)
  137. destroy(this.cb_retrieve)
  138. destroy(this.cb_2)
  139. destroy(this.sle_1)
  140. destroy(this.sle_2)
  141. destroy(this.sle_3)
  142. destroy(this.sle_4)
  143. end on
  144. event open;call super::open;dw_1.SetTransObject(sqlca)
  145. sle_1.SetFocus()
  146. s_rt_stru.if_ok = 0
  147. cur_storageid = message.doubleparm
  148. end event
  149. event close;call super::close;closewithreturn(this,s_rt_stru)
  150. end event
  151. type cb_func from w_publ_base`cb_func within w_outware_pos_findmtrl
  152. boolean visible = false
  153. integer y = 1724
  154. integer taborder = 60
  155. end type
  156. type cb_exit from w_publ_base`cb_exit within w_outware_pos_findmtrl
  157. integer x = 1440
  158. integer y = 1716
  159. integer width = 411
  160. integer taborder = 50
  161. string text = "退出 ESC"
  162. end type
  163. event cb_exit::ue_keyup;call super::ue_keyup;//parent.triggerevent('user_key')
  164. end event
  165. event cb_exit::clicked;s_rt_stru.if_ok = 0
  166. close(parent)
  167. end event
  168. type cb_1 from uo_imflatbutton within w_outware_pos_findmtrl
  169. integer x = 562
  170. integer y = 1716
  171. integer width = 690
  172. integer height = 96
  173. integer taborder = 90
  174. boolean bringtotop = true
  175. string text = "确定 CTRL+ENT"
  176. end type
  177. event ue_keyup;call super::ue_keyup;parent.triggerevent('user_key')
  178. end event
  179. event clicked;call super::clicked;IF dw_1.RowCount() = 0 THEN
  180. OpenWithParm(w_pos_msg,'没有记录可选择!')
  181. RETURN
  182. END IF
  183. Long uc_row
  184. uc_row = dw_1.GetRow()
  185. IF uc_row <= 0 THEN
  186. OpenWithParm(w_pos_msg,'请先选择目标!')
  187. RETURN
  188. END IF
  189. s_rt_stru.mtrlid = dw_1.Object.u_mtrldef_mtrlid[uc_row]
  190. s_rt_stru.barcode = dw_1.Object.u_mtrldef_barcode[uc_row]
  191. s_rt_stru.mtrlcode = dw_1.Object.u_mtrldef_mtrlcode[uc_row]
  192. s_rt_stru.mtrlname = dw_1.Object.u_mtrldef_mtrlname[uc_row]
  193. s_rt_stru.unit = dw_1.Object.u_mtrldef_unit[uc_row]
  194. s_rt_stru.mtrlmode = dw_1.Object.u_mtrldef_mtrlmode[uc_row]
  195. s_rt_stru.mtrltype = dw_1.Object.u_mtrltype_mtrltype[uc_row]
  196. s_rt_stru.if_ok = 1
  197. Close(PARENT)
  198. end event
  199. type st_1 from statictext within w_outware_pos_findmtrl
  200. integer x = 23
  201. integer y = 48
  202. integer width = 283
  203. integer height = 52
  204. boolean bringtotop = true
  205. integer textsize = -9
  206. integer weight = 400
  207. fontcharset fontcharset = gb2312charset!
  208. fontpitch fontpitch = variable!
  209. string facename = "宋体"
  210. long textcolor = 33554432
  211. long backcolor = 134217739
  212. string text = "条 形 码:"
  213. boolean focusrectangle = false
  214. end type
  215. type st_2 from statictext within w_outware_pos_findmtrl
  216. integer x = 1015
  217. integer y = 48
  218. integer width = 283
  219. integer height = 52
  220. boolean bringtotop = true
  221. integer textsize = -9
  222. integer weight = 400
  223. fontcharset fontcharset = gb2312charset!
  224. fontpitch fontpitch = variable!
  225. string facename = "宋体"
  226. long textcolor = 33554432
  227. long backcolor = 134217739
  228. string text = "商品编码:"
  229. boolean focusrectangle = false
  230. end type
  231. type st_3 from statictext within w_outware_pos_findmtrl
  232. integer x = 23
  233. integer y = 144
  234. integer width = 283
  235. integer height = 52
  236. boolean bringtotop = true
  237. integer textsize = -9
  238. integer weight = 400
  239. fontcharset fontcharset = gb2312charset!
  240. fontpitch fontpitch = variable!
  241. string facename = "宋体"
  242. long textcolor = 33554432
  243. long backcolor = 134217739
  244. string text = "商品名称:"
  245. boolean focusrectangle = false
  246. end type
  247. type st_4 from statictext within w_outware_pos_findmtrl
  248. integer x = 1015
  249. integer y = 144
  250. integer width = 283
  251. integer height = 52
  252. boolean bringtotop = true
  253. integer textsize = -9
  254. integer weight = 400
  255. fontcharset fontcharset = gb2312charset!
  256. fontpitch fontpitch = variable!
  257. string facename = "宋体"
  258. long textcolor = 33554432
  259. long backcolor = 134217739
  260. string text = "商品类别:"
  261. boolean focusrectangle = false
  262. end type
  263. type dw_1 from u_dw_rbtnfilter within w_outware_pos_findmtrl
  264. integer y = 240
  265. integer width = 3305
  266. integer height = 1444
  267. integer taborder = 70
  268. boolean bringtotop = true
  269. string dataobject = "dw_outware_pos_findmtrl"
  270. boolean hscrollbar = true
  271. boolean vscrollbar = true
  272. boolean hsplitscroll = true
  273. boolean rbutton_filter_use = true
  274. boolean titleclick_sort_use = true
  275. boolean setcolumn_visible_use = false
  276. boolean autosave_filter_use = false
  277. boolean autosave_sort_use = false
  278. end type
  279. event rowfocuschanged;call super::rowfocuschanged;parent.triggerevent('ue_retrieve_mtl')
  280. if currentrow>0 then
  281. this.selectrow( 0, false)
  282. this.selectrow( currentrow, true)
  283. end if
  284. end event
  285. event clicked;call super::clicked;IF row > 0 THEN
  286. THIS.ScrollToRow(row)
  287. THIS.SelectRow( 0, FALSE)
  288. THIS.SelectRow( row, TRUE)
  289. END IF
  290. PARENT.TriggerEvent('ue_retrieve_mtl')
  291. end event
  292. event dwnkey;call super::dwnkey;parent.triggerevent('user_key')
  293. end event
  294. type cb_retrieve from uo_imflatbutton within w_outware_pos_findmtrl
  295. integer x = 1998
  296. integer y = 24
  297. integer width = 334
  298. integer height = 96
  299. integer taborder = 100
  300. boolean bringtotop = true
  301. string text = "查询 ENT"
  302. end type
  303. event clicked;call super::clicked;String ls_barcode,ls_mtrlcode,ls_mtrlname,ls_mtrltype
  304. IF Trim(sle_1.Text) <> '' THEN
  305. IF Pos(sle_1.Text,'%') > 0 THEN
  306. ls_barcode = Trim(sle_1.Text)
  307. ELSE
  308. ls_barcode = '%' + Trim(sle_1.Text) + '%'
  309. END IF
  310. END IF
  311. IF Trim(sle_2.Text) <> '' THEN
  312. IF Pos(sle_2.Text,'%') > 0 THEN
  313. ls_mtrlcode = Trim(sle_2.Text)
  314. ELSE
  315. ls_mtrlcode = '%' + Trim(sle_2.Text) + '%'
  316. END IF
  317. END IF
  318. IF Trim(sle_3.Text) <> '' THEN
  319. IF Pos(sle_3.Text,'%') > 0 THEN
  320. ls_mtrlname = Trim(sle_3.Text)
  321. ELSE
  322. ls_mtrlname = '%' + Trim(sle_3.Text) + '%'
  323. END IF
  324. END IF
  325. IF Trim(sle_4.Text) <> '' THEN
  326. IF Pos(sle_4.Text,'%') > 0 THEN
  327. ls_mtrltype = Trim(sle_4.Text)
  328. ELSE
  329. ls_mtrltype = '%' + Trim(sle_4.Text) + '%'
  330. END IF
  331. END IF
  332. dw_1.Retrieve(ls_barcode,ls_mtrlcode,ls_mtrlname,ls_mtrltype,cur_storageid)
  333. end event
  334. event ue_keyup;call super::ue_keyup;parent.triggerevent('user_key')
  335. end event
  336. type cb_2 from uo_imflatbutton within w_outware_pos_findmtrl
  337. integer x = 1998
  338. integer y = 124
  339. integer width = 334
  340. integer height = 96
  341. integer taborder = 110
  342. boolean bringtotop = true
  343. string text = "重查 DEL"
  344. end type
  345. event ue_keyup;call super::ue_keyup;parent.triggerevent('user_key')
  346. end event
  347. event clicked;call super::clicked;sle_1.text = ''
  348. sle_2.text = ''
  349. sle_3.text = ''
  350. sle_4.text = ''
  351. dw_1.reset()
  352. end event
  353. type sle_1 from singlelineedit within w_outware_pos_findmtrl
  354. event keyup pbm_keyup
  355. event keydown pbm_keydown
  356. integer x = 306
  357. integer y = 28
  358. integer width = 681
  359. integer height = 84
  360. integer taborder = 10
  361. boolean bringtotop = true
  362. integer textsize = -9
  363. integer weight = 700
  364. fontcharset fontcharset = gb2312charset!
  365. fontpitch fontpitch = variable!
  366. string facename = "宋体"
  367. long textcolor = 33554432
  368. borderstyle borderstyle = stylelowered!
  369. end type
  370. event keyup;//parent.triggerevent('user_key')
  371. end event
  372. event keydown;parent.triggerevent('user_key')
  373. if keydown(KeyRightArrow!) then
  374. if this.text = '' then
  375. sle_2.setfocus()
  376. else
  377. if this.position()=len(sle_1.text)+1 then
  378. sle_2.setfocus()
  379. end if
  380. end if
  381. end if
  382. end event
  383. event modified;cb_retrieve.triggerevent(clicked!)
  384. end event
  385. type sle_2 from singlelineedit within w_outware_pos_findmtrl
  386. event keyup pbm_keyup
  387. event keydown pbm_keydown
  388. integer x = 1298
  389. integer y = 32
  390. integer width = 681
  391. integer height = 84
  392. integer taborder = 20
  393. boolean bringtotop = true
  394. integer textsize = -9
  395. integer weight = 700
  396. fontcharset fontcharset = gb2312charset!
  397. fontpitch fontpitch = variable!
  398. string facename = "宋体"
  399. long textcolor = 33554432
  400. borderstyle borderstyle = stylelowered!
  401. end type
  402. event keyup;//parent.triggerevent('user_key')
  403. end event
  404. event keydown;parent.triggerevent('user_key')
  405. if keydown(KeyRightArrow!) then
  406. if this.text = '' then
  407. sle_3.setfocus()
  408. else
  409. if this.position()=len(sle_2.text)+1 then
  410. sle_3.setfocus()
  411. end if
  412. end if
  413. elseif keydown(KeyLeftArrow!) then
  414. if this.position() = 1 then
  415. sle_1.setfocus()
  416. end if
  417. end if
  418. end event
  419. event modified;cb_retrieve.triggerevent(clicked!)
  420. end event
  421. type sle_3 from singlelineedit within w_outware_pos_findmtrl
  422. event keyup pbm_keyup
  423. event keydown pbm_keydown
  424. integer x = 306
  425. integer y = 128
  426. integer width = 681
  427. integer height = 84
  428. integer taborder = 30
  429. boolean bringtotop = true
  430. integer textsize = -9
  431. integer weight = 700
  432. fontcharset fontcharset = gb2312charset!
  433. fontpitch fontpitch = variable!
  434. string facename = "宋体"
  435. long textcolor = 33554432
  436. borderstyle borderstyle = stylelowered!
  437. end type
  438. event keyup;//parent.triggerevent('user_key')
  439. end event
  440. event keydown;parent.triggerevent('user_key')
  441. if keydown(KeyRightArrow!) then
  442. if this.text = '' then
  443. sle_4.setfocus()
  444. else
  445. if this.position()=len(sle_3.text)+1 then
  446. sle_4.setfocus()
  447. end if
  448. end if
  449. elseif keydown(KeyLeftArrow!) then
  450. if this.position() = 1 then
  451. sle_2.setfocus()
  452. end if
  453. end if
  454. end event
  455. event modified;cb_retrieve.triggerevent(clicked!)
  456. end event
  457. type sle_4 from singlelineedit within w_outware_pos_findmtrl
  458. event keyup pbm_keyup
  459. event keydown pbm_keydown
  460. integer x = 1298
  461. integer y = 132
  462. integer width = 681
  463. integer height = 84
  464. integer taborder = 40
  465. boolean bringtotop = true
  466. integer textsize = -9
  467. integer weight = 700
  468. fontcharset fontcharset = gb2312charset!
  469. fontpitch fontpitch = variable!
  470. string facename = "宋体"
  471. long textcolor = 33554432
  472. borderstyle borderstyle = stylelowered!
  473. end type
  474. event keyup;//parent.triggerevent('user_key')
  475. end event
  476. event keydown;parent.triggerevent('user_key')
  477. if keydown(KeyLeftArrow!) then
  478. if this.position() = 1 then
  479. sle_3.setfocus()
  480. end if
  481. end if
  482. end event
  483. event modified;cb_retrieve.triggerevent(clicked!)
  484. end event