w_incrdercr_edit.srw 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240
  1. $PBExportHeader$w_incrdercr_edit.srw
  2. forward
  3. global type w_incrdercr_edit from w_publ_edit_choice
  4. end type
  5. end forward
  6. global type w_incrdercr_edit from w_publ_edit_choice
  7. integer width = 1157
  8. integer height = 1652
  9. string title = "固定资产增减方式"
  10. boolean minbox = true
  11. windowtype windowtype = popup!
  12. long backcolor = 80269524
  13. end type
  14. global w_incrdercr_edit w_incrdercr_edit
  15. on w_incrdercr_edit.create
  16. call super::create
  17. end on
  18. on w_incrdercr_edit.destroy
  19. call super::destroy
  20. end on
  21. event retrieve_uc;dw_UC.retrieve(sys_accsetid)
  22. end event
  23. type cb_func from w_publ_edit_choice`cb_func within w_incrdercr_edit
  24. boolean visible = false
  25. integer x = 731
  26. integer y = 364
  27. end type
  28. type cb_exit from w_publ_edit_choice`cb_exit within w_incrdercr_edit
  29. integer x = 686
  30. end type
  31. type cb_add from w_publ_edit_choice`cb_add within w_incrdercr_edit
  32. integer x = 151
  33. end type
  34. event cb_add::clicked;IF NOT (f_power_ind(1938,sys_msg_pow) OR f_power_ind(1959,sys_msg_pow)) THEN
  35. MessageBox(publ_operator,'你没有使用权限!')
  36. RETURN
  37. END IF
  38. Long ll_newid,i
  39. String errmsg
  40. IF dw_edit_mode THEN
  41. dw_uc.AcceptText()
  42. IF dw_uc.GetNextModified(0, Primary!) = 0 THEN
  43. MessageBox(publ_operator,'没有任何修改,不可以保存!')
  44. RETURN
  45. END IF
  46. dw_uc.Object.incrdecrname[dw_uc.GetRow()] = Trim(dw_uc.Object.incrdecrname[dw_uc.GetRow()])
  47. IF dw_uc.Object.incrdecrname[dw_uc.GetRow()] = '' THEN
  48. MessageBox(publ_operator,'请输入结算方式名称!')
  49. RETURN
  50. END IF
  51. dw_uc.Object.accsetid[dw_uc.GetRow()] = sys_accsetid
  52. IF dw_uc.Object.incrdecrid[dw_uc.GetRow()] = 0 THEN
  53. ll_newid = f_sys_scidentity(sys_accsetid,"cw_incrdecr","incrdecrid",errmsg,TRUE,id_sqlca)
  54. IF ll_newid <= 0 THEN
  55. MessageBox(publ_operator,errmsg)
  56. RETURN
  57. ELSE
  58. dw_uc.Object.incrdecrid[dw_uc.GetRow()] = ll_newid
  59. END IF
  60. END IF
  61. END IF
  62. IF dw_edit_mode THEN
  63. String ls_errmsg
  64. IF dw_uc.UPDATE() = -1 THEN
  65. IF Pos(ins_sqlerrtext,"Cannot insert duplicate key row") > 0 THEN
  66. ls_errmsg = "关键内容重复"
  67. ELSE
  68. ls_errmsg = "因为网络或其他原因>"+ins_sqlerrtext
  69. END IF
  70. ROLLBACK;
  71. MessageBox (publ_operator,ls_errmsg+",保存操作失败!",Exclamation!,OK!)
  72. LS_UPDATE_FLAG = FALSE
  73. RETURN
  74. ELSE
  75. COMMIT;
  76. LS_UPDATE_FLAG = TRUE
  77. FOR i = 1 TO 4
  78. dw_uc.SetTabOrder ( i, 0 )
  79. NEXT
  80. LS_UPDATE_FLAG = TRUE
  81. END IF
  82. ins_sqlerrtext = ""
  83. ELSE
  84. Long li_row, li_cur_row
  85. li_cur_row = dw_uc.GetRow()
  86. li_row = dw_uc.InsertRow (0)
  87. FOR i = 1 TO 4
  88. dw_uc.SetTabOrder ( i, i*10 )
  89. NEXT
  90. dw_uc.SelectRow(0,FALSE)
  91. dw_uc.ScrollToRow (li_row)
  92. dw_uc.SelectRow(li_row,TRUE)
  93. dw_uc.SetFocus()
  94. modifyrow_no = li_row
  95. END IF
  96. dw_edit_mode = NOT dw_edit_mode
  97. WF_FACE_CHANGE()
  98. end event
  99. type cb_edit from w_publ_edit_choice`cb_edit within w_incrdercr_edit
  100. integer x = 343
  101. end type
  102. event cb_edit::clicked;IF NOT (f_power_ind(1938,sys_msg_pow) OR f_power_ind(1959,sys_msg_pow)) THEN
  103. MessageBox(publ_operator,'你没有使用权限!')
  104. RETURN
  105. END IF
  106. Long i
  107. IF dw_edit_mode THEN
  108. IF dw_uc.GetItemStatus(dw_uc.GetRow(), 0, Primary!) = NewModified! OR dw_uc.GetItemStatus(dw_uc.GetRow(), 0, Primary!) = New! THEN
  109. dw_uc.DeleteRow(dw_uc.GetRow())
  110. ELSE
  111. dw_uc.ReselectRow(dw_uc.GetRow())
  112. END IF
  113. FOR i = 1 TO 4
  114. dw_uc.SetTabOrder ( i, 0 )
  115. NEXT
  116. modifyrow_no = 0
  117. ELSE
  118. modifyrow_no = dw_uc.GetRow()
  119. FOR i = 1 TO 4
  120. dw_uc.SetTabOrder ( i, i*10 )
  121. NEXT
  122. dw_uc.SetFocus()
  123. dw_uc.SelectRow(0,FALSE)
  124. dw_uc.ScrollToRow (modifyrow_no)
  125. dw_uc.SelectRow(modifyrow_no,TRUE)
  126. END IF
  127. dw_edit_mode = NOT dw_edit_mode
  128. WF_FACE_CHANGE()
  129. end event
  130. type cb_delet from w_publ_edit_choice`cb_delet within w_incrdercr_edit
  131. integer x = 535
  132. end type
  133. event cb_delet::clicked;IF NOT (f_power_ind(1938,sys_msg_pow) OR f_power_ind(1959,sys_msg_pow)) THEN
  134. MessageBox(publ_operator,'你没有使用权限!')
  135. RETURN
  136. END IF
  137. IF MessageBox (publ_operator,"是否确定要删除当前记录?(选择确定后记录将不可恢复)",Question!,YesNo! ) = 2 THEN
  138. RETURN
  139. END IF
  140. Long LS_id
  141. Long LS_LONG = 0
  142. String ls_code,arg_msg
  143. IF DW_UC.GetRow() <= 0 THEN
  144. MessageBox(publ_operator,'没有操作目标记录!')
  145. RETURN
  146. END IF
  147. LS_id = DW_UC.Object.incrdecrid[DW_UC.GetRow()]
  148. SELECT COUNT(*) INTO :LS_LONG FROM cw_assetcard
  149. WHERE cw_assetcard.incrdecrid = :LS_id
  150. AND cw_assetcard.accsetid = :sys_accsetid;
  151. IF SQLCA.SQLCode <> 0 THEN
  152. MessageBox (publ_operator,"数据查询操作失败!(请重试!)",Exclamation!,OK!)
  153. RETURN
  154. END IF
  155. IF LS_LONG > 0 THEN
  156. MessageBox (publ_operator,"该资料已经使用于固定资产,不可以删除!",Exclamation!,OK!)
  157. RETURN
  158. END IF
  159. DW_UC.SetRedraw (FALSE)
  160. DW_UC.DeleteRow (0)
  161. DW_UC.TriggerEvent (RowFocusChanged!)
  162. IF DW_UC.UPDATE() = -1 THEN
  163. ROLLBACK;
  164. MessageBox (publ_operator,"删除记录操作失败!",Exclamation!,OK!)
  165. ELSE
  166. COMMIT;
  167. END IF
  168. DW_UC.SetRedraw (TRUE)
  169. end event
  170. type cb_choice from w_publ_edit_choice`cb_choice within w_incrdercr_edit
  171. boolean visible = false
  172. integer x = 645
  173. integer y = 368
  174. boolean enabled = false
  175. end type
  176. type dw_uc from w_publ_edit_choice`dw_uc within w_incrdercr_edit
  177. integer width = 1138
  178. integer height = 1380
  179. string dataobject = "dw_incrdecr_index"
  180. end type
  181. event dw_uc::rowfocuschanged;call super::rowfocuschanged;if currentrow>0 then
  182. this.selectrow(0,false)
  183. this.selectrow(currentrow,true)
  184. end if
  185. end event
  186. type cb_rtr from w_publ_edit_choice`cb_rtr within w_incrdercr_edit
  187. end type
  188. type cb_help from w_publ_edit_choice`cb_help within w_incrdercr_edit
  189. boolean visible = false
  190. integer x = 891
  191. integer y = 388
  192. end type
  193. type ln_bar from w_publ_edit_choice`ln_bar within w_incrdercr_edit
  194. end type
  195. type ln_bar2 from w_publ_edit_choice`ln_bar2 within w_incrdercr_edit
  196. end type
  197. type r_bar from w_publ_edit_choice`r_bar within w_incrdercr_edit
  198. end type