w_rapmoney_add_del.srw 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302
  1. $PBExportHeader$w_rapmoney_add_del.srw
  2. forward
  3. global type w_rapmoney_add_del from w_publ_base
  4. end type
  5. type dw_1 from datawindow within w_rapmoney_add_del
  6. end type
  7. type cb_2 from uo_imflatbutton within w_rapmoney_add_del
  8. end type
  9. type cb_1 from uo_imflatbutton within w_rapmoney_add_del
  10. end type
  11. type gb_1 from groupbox within w_rapmoney_add_del
  12. end type
  13. end forward
  14. global type w_rapmoney_add_del from w_publ_base
  15. integer width = 1861
  16. integer height = 1248
  17. string title = "出纳帐录入"
  18. boolean minbox = false
  19. windowtype windowtype = response!
  20. long backcolor = 80269524
  21. dw_1 dw_1
  22. cb_2 cb_2
  23. cb_1 cb_1
  24. gb_1 gb_1
  25. end type
  26. global w_rapmoney_add_del w_rapmoney_add_del
  27. type variables
  28. s_edit_index_tran s_tran
  29. uo_rapmoney uo_rap
  30. end variables
  31. forward prototypes
  32. public function integer wf_save ()
  33. end prototypes
  34. public function integer wf_save ();Int rslt = 1
  35. Long li_row
  36. dw_1.AcceptText()
  37. li_row = dw_1.GetRow()
  38. IF li_row <= 0 THEN
  39. MessageBox('提示','记录错误',information!,ok!)
  40. rslt = 0
  41. GOTO ext
  42. END IF
  43. Long arg_accountid
  44. Long arg_rapid
  45. DateTime arg_takedate
  46. String arg_billcode
  47. String arg_dscrp
  48. Decimal arg_msttakeamt
  49. Decimal arg_takeamt
  50. String arg_msg
  51. Long arg_banktypeid
  52. String arg_takeemp
  53. Long arg_acntid
  54. string arg_relcode
  55. arg_accountid = dw_1.Object.accountid[li_row]
  56. arg_rapid = dw_1.Object.rapmoneyid[li_row]
  57. arg_takedate = dw_1.Object.takedate[li_row]
  58. arg_billcode = dw_1.Object.billcode[li_row]
  59. arg_dscrp = dw_1.Object.dscrp[li_row]
  60. arg_msttakeamt = dw_1.Object.msttakeamt[li_row]
  61. arg_takeamt = dw_1.Object.takeamt[li_row]
  62. arg_takeemp = dw_1.Object.takeemp[li_row]
  63. arg_banktypeid = dw_1.Object.banktypeid[li_row]
  64. arg_acntid = dw_1.Object.acntid[li_row]
  65. arg_relcode = dw_1.Object.relcode[li_row]
  66. uo_rap.commit_transaction = sqlca
  67. IF uo_rap.add_del(arg_accountid,arg_takedate,arg_takeemp,arg_dscrp,arg_msttakeamt,arg_takeamt,arg_billcode,0,0,0,publ_operator,arg_msg,TRUE,arg_banktypeid,arg_acntid,arg_relcode) = 0 THEN
  68. MessageBox('错误',arg_msg,stopsign!,ok!)
  69. rslt = 0
  70. GOTO ext
  71. END IF
  72. ext:
  73. RETURN rslt
  74. end function
  75. on w_rapmoney_add_del.create
  76. int iCurrent
  77. call super::create
  78. this.dw_1=create dw_1
  79. this.cb_2=create cb_2
  80. this.cb_1=create cb_1
  81. this.gb_1=create gb_1
  82. iCurrent=UpperBound(this.Control)
  83. this.Control[iCurrent+1]=this.dw_1
  84. this.Control[iCurrent+2]=this.cb_2
  85. this.Control[iCurrent+3]=this.cb_1
  86. this.Control[iCurrent+4]=this.gb_1
  87. end on
  88. on w_rapmoney_add_del.destroy
  89. call super::destroy
  90. destroy(this.dw_1)
  91. destroy(this.cb_2)
  92. destroy(this.cb_1)
  93. destroy(this.gb_1)
  94. end on
  95. event open;call super::open;dw_1.settransobject(sqlca)
  96. s_tran=message.powerobjectparm
  97. uo_rap = create uo_rapmoney
  98. int li_opentype
  99. long li_rapid,li_accountsid
  100. long li_row
  101. li_opentype = s_tran.b_long
  102. li_accountsid = s_tran.c_long
  103. li_rapid = s_tran.d_long
  104. if li_opentype = 1 then
  105. dw_1.setredraw(false)
  106. li_row = dw_1.insertrow(0)
  107. dw_1.object.accountid[li_row] = li_accountsid
  108. dw_1.setredraw(true)
  109. else
  110. dw_1.retrieve(li_rapid,li_accountsid)
  111. end if
  112. end event
  113. event close;call super::close;destroy uo_rap
  114. end event
  115. type cb_func from w_publ_base`cb_func within w_rapmoney_add_del
  116. boolean visible = false
  117. integer x = 325
  118. integer y = 836
  119. end type
  120. type cb_exit from w_publ_base`cb_exit within w_rapmoney_add_del
  121. integer x = 1463
  122. integer y = 1020
  123. integer taborder = 30
  124. string text = "取消"
  125. end type
  126. type dw_1 from datawindow within w_rapmoney_add_del
  127. event key pbm_dwnkey
  128. event dwnkey pbm_dwnkey
  129. integer x = 37
  130. integer y = 64
  131. integer width = 1755
  132. integer height = 940
  133. integer taborder = 10
  134. boolean bringtotop = true
  135. string dataobject = "dw_add_Del_mod"
  136. boolean livescroll = true
  137. borderstyle borderstyle = stylelowered!
  138. end type
  139. event dwnkey;if key = KeyDownArrow! then return 1
  140. string ls_itemcode
  141. string ls_itemname
  142. string ls_itemtype
  143. int li_itemflag
  144. long ll_itemid,li_row
  145. dw_1.accepttext()
  146. li_row=dw_1.getrow()
  147. if dw_1.getcolumnname ( )='u_itemdef_itemcode' and key = keyenter! then
  148. // ls_itemcode=trim(dw_1.object.u_itemdef_itemcode[li_row])
  149. // select itemid,itemname,itemflag,itemtype into :ll_itemid,:ls_itemname,:li_itemflag,:ls_itemtype from u_itemdef where itemcode=:ls_itemcode;
  150. // dw_1.setredraw(false)
  151. // if sqlca.sqlcode<>0 then
  152. // dw_1.triggerevent(doubleclicked!)
  153. // return 0
  154. // else
  155. // dw_1.object.u_iteminput_itemid[li_row]=ll_itemid
  156. // dw_1.object.u_itemdef_itemname[li_row]=ls_itemname
  157. // dw_1.object.u_itemdef_itemtype[li_row]=ls_itemtype
  158. // dw_1.object.u_itemdef_itemflag[li_row]=li_itemflag
  159. // end if
  160. // dw_1.setredraw(true)
  161. // dw_1.setcolumn("u_iteminput_outamt")
  162. // return 0
  163. else
  164. if key = keyenter! or key = keydownarrow! then //
  165. keybd_event ( 9, 0, 0 , 0 ) // 按下tab
  166. keybd_event ( 9, 0, 2, 0 ) // 释放tab
  167. return 0
  168. elseif key = keyuparrow! then
  169. keybd_event ( 16, 0, 0 , 0 )
  170. keybd_event ( 9, 0, 0 , 0 )
  171. keybd_event ( 9, 0, 2, 0 )
  172. keybd_event ( 16, 0, 2, 0 )
  173. return 0
  174. end if
  175. end if
  176. end event
  177. event doubleclicked;//string ls_itemcode
  178. //long li_row
  179. //dw_1.accepttext()
  180. //li_row=dw_1.getrow()
  181. //
  182. //ls_itemcode=trim(dw_1.object.u_itemdef_itemcode[li_row])
  183. //
  184. //if not isvalid(w_itemdef) then
  185. // s_edit_index_tran s_ch_tran //传递参数使用
  186. // s_ch_tran.if_retrieve_all=local_retrieve_all //是否一次retrieve所有行
  187. // s_ch_tran.work_mode=1 //0-单纯编辑模式 1-选择\编辑模式
  188. // s_ch_tran.arg_pkid=0 //目标定位pkid (备用)
  189. // s_ch_tran.arg_string_code=ls_itemcode //查询列(物料编码)部分内容,用于初步筛选
  190. //
  191. // openwithparm(w_itemdef,s_ch_tran) //调用
  192. //
  193. // s_itemdef s_inscust
  194. // s_inscust=message.powerobjectparm //接受返回结构
  195. //
  196. // if s_inscust.itemid > 0 then //正常返回值则可以取以下值
  197. // dw_1.setredraw(false)
  198. // dw_1.object.u_iteminput_itemid[li_row]=s_inscust.itemid
  199. // dw_1.object.u_itemdef_itemcode[li_row]=s_inscust.itemcode
  200. // dw_1.object.u_itemdef_itemname[li_row]=s_inscust.itemname
  201. // dw_1.object.u_itemdef_itemtype[li_row]=s_inscust.itemtype
  202. // dw_1.object.u_itemdef_itemflag[li_row]=s_inscust.itemflag
  203. // dw_1.setcolumn("u_iteminput_outamt")
  204. // dw_1.setredraw(true)
  205. // end if
  206. //end if
  207. //
  208. //
  209. end event
  210. event rbuttondown;Long ll_row,ll_column
  211. ll_row = THIS.GetRow()
  212. ll_column = THIS.GetColumn()
  213. IF ll_row <= 0 THEN RETURN
  214. IF ll_column <= 0 THEN RETURN
  215. IF Left( THIS.Describe( dwo.Name+ ".coltype"),4) = 'date' THEN
  216. s_calender_arg s_calender
  217. s_calender.PointerX = THIS.PointerX()
  218. s_calender.PointerY = THIS.PointerY()
  219. s_calender.X = THIS.X + PARENT.X
  220. s_calender.Y = THIS.Y + PARENT.Y
  221. OpenWithParm(w_calendar,s_calender)
  222. THIS.SetItem(ll_row,ll_column,id_date_selected)
  223. end if
  224. end event
  225. type cb_2 from uo_imflatbutton within w_rapmoney_add_del
  226. integer x = 1134
  227. integer y = 1020
  228. integer width = 329
  229. integer height = 96
  230. integer taborder = 40
  231. string text = "保存[C^+S]"
  232. end type
  233. event clicked;call super::clicked;if wf_save() = 0 then return
  234. close(parent)
  235. end event
  236. type cb_1 from uo_imflatbutton within w_rapmoney_add_del
  237. integer x = 731
  238. integer y = 1020
  239. integer width = 407
  240. integer height = 96
  241. integer taborder = 40
  242. string text = "保存&新增[&S]"
  243. end type
  244. event clicked;call super::clicked;if wf_save() = 0 then return
  245. dw_1.reset()
  246. dw_1.insertrow(0)
  247. dw_1.setfocus()
  248. dw_1.setcolumn('billcode')
  249. end event
  250. type gb_1 from groupbox within w_rapmoney_add_del
  251. integer width = 1829
  252. integer height = 1144
  253. integer taborder = 30
  254. integer textsize = -9
  255. integer weight = 400
  256. fontcharset fontcharset = gb2312charset!
  257. fontpitch fontpitch = variable!
  258. string facename = "宋体"
  259. long textcolor = 33554432
  260. long backcolor = 67108864
  261. string text = "资料录入"
  262. end type