w_subjectdef_edit_input.srw 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205
  1. $PBExportHeader$w_subjectdef_edit_input.srw
  2. forward
  3. global type w_subjectdef_edit_input from w_publ_base
  4. end type
  5. type cb_1 from uo_imflatbutton within w_subjectdef_edit_input
  6. end type
  7. type dw_1 from datawindow within w_subjectdef_edit_input
  8. end type
  9. end forward
  10. global type w_subjectdef_edit_input from w_publ_base
  11. integer width = 2153
  12. integer height = 1504
  13. string title = "会计科目编辑"
  14. boolean minbox = false
  15. windowtype windowtype = response!
  16. long backcolor = 80269524
  17. cb_1 cb_1
  18. dw_1 dw_1
  19. end type
  20. global w_subjectdef_edit_input w_subjectdef_edit_input
  21. type variables
  22. s_sub_edit s_edit,s_rst_subid
  23. uo_subject uo_sub
  24. end variables
  25. on w_subjectdef_edit_input.create
  26. int iCurrent
  27. call super::create
  28. this.cb_1=create cb_1
  29. this.dw_1=create dw_1
  30. iCurrent=UpperBound(this.Control)
  31. this.Control[iCurrent+1]=this.cb_1
  32. this.Control[iCurrent+2]=this.dw_1
  33. end on
  34. on w_subjectdef_edit_input.destroy
  35. call super::destroy
  36. destroy(this.cb_1)
  37. destroy(this.dw_1)
  38. end on
  39. event open;call super::open;Long li_row
  40. String arg_msg
  41. uo_sub = CREATE uo_subject
  42. dw_1.SetTransObject(sqlca)
  43. s_edit = Message.PowerObjectParm
  44. IF s_edit.openparm = 2 THEN
  45. li_row = dw_1.InsertRow(0)
  46. dw_1.Object.editflag[li_row] = s_edit.editflag
  47. dw_1.Object.subflag[li_row] = s_edit.subflag
  48. dw_1.Object.dcflag[li_row] = s_edit.dcflag
  49. dw_1.Object.subid[li_row] = s_edit.subid
  50. uo_sub.uof_update_status(2)
  51. ELSEIF s_edit.openparm = 1 THEN
  52. li_row = dw_1.InsertRow(0)
  53. dw_1.Object.editflag[li_row] = s_edit.editflag
  54. dw_1.Object.subflag[li_row] = s_edit.subflag
  55. dw_1.Object.dcflag[li_row] = s_edit.dcflag
  56. dw_1.Object.subid[li_row] = s_edit.subid
  57. dw_1.Object.subsubid[li_row] = s_edit.subsubid
  58. uo_sub.uof_update_status(1)
  59. ELSEIF s_edit.openparm = 3 THEN
  60. dw_1.Retrieve(sys_accsetid,s_edit.subid)
  61. dw_1.Object.editflag[1] = s_edit.editflag
  62. dw_1.Object.subflag[1] = s_edit.subflag
  63. dw_1.SetTabOrder('subid',0)
  64. uo_sub.update_begin(s_edit.subid,arg_msg)
  65. END IF
  66. IF sys_system_mode = -1 THEN
  67. dw_1.SetTabOrder('hsspt',0)
  68. dw_1.SetTabOrder('hscust',0)
  69. END IF
  70. dw_1.SetFocus()
  71. dw_1.SetColumn('name')
  72. end event
  73. event close;DESTROY uo_sub
  74. CloseWithReturn(THIS,s_rst_subid)
  75. end event
  76. type cb_func from w_publ_base`cb_func within w_subjectdef_edit_input
  77. boolean visible = false
  78. integer x = 878
  79. integer y = 348
  80. boolean enabled = false
  81. end type
  82. type cb_exit from w_publ_base`cb_exit within w_subjectdef_edit_input
  83. integer x = 1239
  84. integer y = 1204
  85. string text = "取消"
  86. end type
  87. event cb_exit::clicked;s_rst_subid.subid = ''
  88. close(parent)
  89. end event
  90. type cb_1 from uo_imflatbutton within w_subjectdef_edit_input
  91. integer x = 622
  92. integer y = 1204
  93. integer width = 311
  94. integer height = 96
  95. integer taborder = 20
  96. boolean bringtotop = true
  97. string text = "保存&S"
  98. string normalpicname = "save.bmp"
  99. end type
  100. event clicked;Long li_row,ls_hand
  101. String arg_msg = '',msg_str
  102. dw_1.AcceptText()
  103. li_row = dw_1.GetRow()
  104. IF s_edit.openparm = 1 THEN
  105. uo_sub.subid = Trim(dw_1.Object.subid[li_row]) + Trim(dw_1.Object.subsubid[li_row])
  106. ELSEIF s_edit.openparm = 2 OR s_edit.openparm = 3 THEN
  107. uo_sub.subid = Trim(dw_1.Object.subid[li_row])
  108. END IF
  109. uo_sub.Name = Trim(dw_1.Object.Name[li_row])
  110. IF uo_sub.check_data(arg_msg) = 0 THEN
  111. MessageBox(publ_operator,arg_msg)
  112. RETURN
  113. END IF
  114. IF s_edit.openparm = 1 THEN
  115. IF uo_sub.check_firstsub(arg_msg) = 2 THEN
  116. MessageBox(publ_operator,arg_msg)
  117. RETURN
  118. ELSEIF uo_sub.check_firstsub(arg_msg) = 1 THEN
  119. IF uo_sub.check_suboperation(1,arg_msg) = 1 THEN
  120. msg_str = '科目已经有业务发生,如果在该科目下设明细科目,这样该科目发生的所有 ~n'
  121. msg_str = msg_str+'业务及币种、核算内容等属性都将转移到新增加的明细科目。~n ~n'
  122. msg_str = msg_str+'是否确认这种引起科目级别发生的修改? ~n'
  123. IF MessageBox(publ_operator,msg_str, Exclamation!, YesNo!, 2) = 2 THEN
  124. RETURN
  125. ELSE
  126. IF uo_sub.update_add_del(1,uo_sub.subid,arg_msg,FALSE) = 0 THEN
  127. MessageBox(publ_operator,arg_msg)
  128. RETURN
  129. END IF
  130. END IF
  131. END IF
  132. END IF
  133. END IF
  134. IF dw_1.Object.hswb[li_row] = 0 or dw_1.Object.hswb[li_row] = 2 THEN
  135. dw_1.Object.moneyid[li_row] = 0
  136. END IF
  137. uo_sub.dcflag = dw_1.Object.dcflag[li_row]
  138. uo_sub.hswb = dw_1.Object.hswb[li_row]
  139. uo_sub.moneyid = dw_1.Object.moneyid[li_row]
  140. uo_sub.hsqty = dw_1.Object.hsqty[li_row]
  141. uo_sub.unit = Trim(dw_1.Object.unit[li_row])
  142. uo_sub.hsdept = dw_1.Object.hsdept[li_row]
  143. uo_sub.hsemp = dw_1.Object.hsemp[li_row]
  144. uo_sub.hsitem = dw_1.Object.hsitem[li_row]
  145. uo_sub.hscust = dw_1.Object.hscust[li_row]
  146. uo_sub.hsspt = dw_1.Object.hsspt[li_row]
  147. uo_sub.hstrader = dw_1.Object.hstrader[li_row]
  148. IF uo_sub.Save(arg_msg,TRUE) = 0 THEN
  149. MessageBox(publ_operator,arg_msg)
  150. RETURN
  151. ELSE
  152. s_rst_subid.subid = uo_sub.subid
  153. s_rst_subid.subname = uo_sub.Name
  154. Close(PARENT)
  155. END IF
  156. end event
  157. type dw_1 from datawindow within w_subjectdef_edit_input
  158. integer x = 105
  159. integer y = 72
  160. integer width = 1911
  161. integer height = 1064
  162. integer taborder = 30
  163. boolean bringtotop = true
  164. string dataobject = "dw_subaccset_edit"
  165. boolean border = false
  166. boolean livescroll = true
  167. end type