w_rp_combine_setting_add1.srw 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238
  1. $PBExportHeader$w_rp_combine_setting_add1.srw
  2. forward
  3. global type w_rp_combine_setting_add1 from w_publ_base
  4. end type
  5. type dw_1 from datawindow within w_rp_combine_setting_add1
  6. end type
  7. type cb_1 from uo_imflatbutton within w_rp_combine_setting_add1
  8. end type
  9. type cb_2 from uo_imflatbutton within w_rp_combine_setting_add1
  10. end type
  11. end forward
  12. global type w_rp_combine_setting_add1 from w_publ_base
  13. integer width = 1906
  14. integer height = 1384
  15. string title = "报表增加|修改"
  16. boolean minbox = false
  17. windowtype windowtype = response!
  18. dw_1 dw_1
  19. cb_1 cb_1
  20. cb_2 cb_2
  21. end type
  22. global w_rp_combine_setting_add1 w_rp_combine_setting_add1
  23. forward prototypes
  24. public function integer wf_save ()
  25. public subroutine wf_insertrow ()
  26. end prototypes
  27. public function integer wf_save ();Long ll_row
  28. Long ll_rpid
  29. String ls_rpcode,ls_rpname
  30. String ls_col1name,ls_col2name
  31. String ls_col1name_addname,ls_col2name_addname
  32. Int li_rptype
  33. String errmsg
  34. Int rslt = 1
  35. dw_1.AcceptText()
  36. ll_row = dw_1.GetRow()
  37. IF ll_row <= 0 THEN
  38. MessageBox('提示','请选择资料')
  39. rslt = 0
  40. GOTO ext
  41. END IF
  42. ll_rpid = dw_1.Object.rpid[ll_row]
  43. ls_rpcode = Trim(dw_1.Object.rpcode[ll_row])
  44. ls_rpname = Trim(dw_1.Object.rpname[ll_row])
  45. ls_col1name = Trim(dw_1.Object.col1name[ll_row])
  46. ls_col2name = Trim(dw_1.Object.col2name[ll_row])
  47. ls_col1name_addname = Trim(dw_1.Object.col1name_addname[ll_row])
  48. ls_col2name_addname = Trim(dw_1.Object.col2name_addname[ll_row])
  49. li_rptype = dw_1.Object.rptype[ll_row]
  50. IF ls_rpcode = '' THEN
  51. MessageBox('提示','请输入编号')
  52. dw_1.SetFocus()
  53. dw_1.SetColumn('rpcode')
  54. rslt = 0
  55. GOTO ext
  56. END IF
  57. IF ls_rpname = '' THEN
  58. MessageBox('提示','请输入报表名称')
  59. dw_1.SetFocus()
  60. dw_1.SetColumn('rpname')
  61. rslt = 0
  62. GOTO ext
  63. END IF
  64. IF ls_col1name = '' THEN
  65. MessageBox('提示','请输入列1标题')
  66. dw_1.SetFocus()
  67. dw_1.SetColumn('col1name')
  68. rslt = 0
  69. GOTO ext
  70. END IF
  71. IF li_rptype = 1 AND ls_col2name = '' THEN
  72. MessageBox('提示','请输入列2标题')
  73. dw_1.SetFocus()
  74. dw_1.SetColumn('col2name')
  75. rslt = 0
  76. GOTO ext
  77. END IF
  78. IF ll_rpid = 0 THEN
  79. ll_rpid = f_sys_scidentity(0,"cw_rp","rpid",errmsg,TRUE,id_sqlca)
  80. IF ll_rpid <= 0 THEN
  81. MessageBox('提示',errmsg)
  82. rslt = 0
  83. GOTO ext
  84. END IF
  85. INSERT INTO cw_rp(rpid,rpcode,rpname,rptype,col1name,col2name,col1name_addname,col2name_addname)
  86. Values(:ll_rpid,:ls_rpcode,:ls_rpname,:li_rptype,:ls_col1name,:ls_col2name,:ls_col1name_addname,:ls_col2name_addname);
  87. IF sqlca.SQLCode <> 0 THEN
  88. errmsg = sqlca.SQLErrText
  89. ROLLBACK;
  90. MessageBox('提示','增加报表失败,'+errmsg)
  91. rslt = 0
  92. GOTO ext
  93. END IF
  94. ELSE
  95. UPDATE cw_rp SET
  96. rpcode = :ls_rpcode,
  97. rpname = :ls_rpname,
  98. rptype = :li_rptype,
  99. col1name = :ls_col1name,
  100. col2name = :ls_col2name,
  101. col1name_addname = :ls_col1name_addname,
  102. col2name_addname = :ls_col2name_addname
  103. Where rpid = :ll_rpid;
  104. IF sqlca.SQLCode <> 0 THEN
  105. errmsg = sqlca.SQLErrText
  106. ROLLBACK;
  107. MessageBox('提示','修改报表失败,'+errmsg)
  108. rslt = 0
  109. GOTO ext
  110. END IF
  111. END IF
  112. COMMIT;
  113. ext:
  114. RETURN rslt
  115. end function
  116. public subroutine wf_insertrow ();long ll_row
  117. dw_1.reset()
  118. ll_row = dw_1.InsertRow(0)
  119. dw_1.SetRow(ll_row)
  120. dw_1.SetColumn('rpcode')
  121. end subroutine
  122. on w_rp_combine_setting_add1.create
  123. int iCurrent
  124. call super::create
  125. this.dw_1=create dw_1
  126. this.cb_1=create cb_1
  127. this.cb_2=create cb_2
  128. iCurrent=UpperBound(this.Control)
  129. this.Control[iCurrent+1]=this.dw_1
  130. this.Control[iCurrent+2]=this.cb_1
  131. this.Control[iCurrent+3]=this.cb_2
  132. end on
  133. on w_rp_combine_setting_add1.destroy
  134. call super::destroy
  135. destroy(this.dw_1)
  136. destroy(this.cb_1)
  137. destroy(this.cb_2)
  138. end on
  139. event open;call super::open;Long ll_rpid
  140. dw_1.SetTransObject(sqlca)
  141. ll_rpid = Message.DoubleParm
  142. IF dw_1.Retrieve(ll_rpid) = 0 THEN
  143. wf_insertrow()
  144. ELSE
  145. dw_1.SetColumn('rpcode')
  146. END IF
  147. end event
  148. type cb_func from w_publ_base`cb_func within w_rp_combine_setting_add1
  149. integer x = 558
  150. integer y = 308
  151. integer width = 311
  152. integer height = 96
  153. string text = "功能"
  154. string normalpicname = ""
  155. integer picsize = 0
  156. toolbaralignment pic_align = alignatleft!
  157. boolean border = true
  158. end type
  159. type cb_exit from w_publ_base`cb_exit within w_rp_combine_setting_add1
  160. integer x = 1234
  161. integer y = 1096
  162. end type
  163. type dw_1 from datawindow within w_rp_combine_setting_add1
  164. integer x = 165
  165. integer y = 68
  166. integer width = 1518
  167. integer height = 956
  168. integer taborder = 30
  169. boolean bringtotop = true
  170. string title = "none"
  171. string dataobject = "dw_rp_combine_setting_add1"
  172. boolean border = false
  173. boolean livescroll = true
  174. end type
  175. type cb_1 from uo_imflatbutton within w_rp_combine_setting_add1
  176. integer x = 448
  177. integer y = 1096
  178. integer width = 329
  179. integer height = 96
  180. integer taborder = 30
  181. boolean bringtotop = true
  182. string text = "保存并退出"
  183. end type
  184. event clicked;call super::clicked;IF wf_save() = 1 THEN CLOSE(PARENT)
  185. end event
  186. type cb_2 from uo_imflatbutton within w_rp_combine_setting_add1
  187. integer x = 841
  188. integer y = 1096
  189. integer width = 329
  190. integer height = 96
  191. integer taborder = 20
  192. boolean bringtotop = true
  193. string text = "保存并新增"
  194. end type
  195. event clicked;call super::clicked;IF wf_save() = 1 THEN wf_insertrow()
  196. end event