w_aifmb_user_manage.srw 7.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384
  1. $PBExportHeader$w_aifmb_user_manage.srw
  2. forward
  3. global type w_aifmb_user_manage from window
  4. end type
  5. type cb_1 from uo_imflatbutton within w_aifmb_user_manage
  6. end type
  7. type dw_2 from u_dw_rbtnfilter within w_aifmb_user_manage
  8. end type
  9. type cb_del from uo_imflatbutton within w_aifmb_user_manage
  10. end type
  11. type cb_edit from uo_imflatbutton within w_aifmb_user_manage
  12. end type
  13. type cb_add from uo_imflatbutton within w_aifmb_user_manage
  14. end type
  15. type cb_refresh from uo_imflatbutton within w_aifmb_user_manage
  16. end type
  17. type dw_1 from u_dw_rbtnfilter within w_aifmb_user_manage
  18. end type
  19. type cb_exit from uo_imflatbutton within w_aifmb_user_manage
  20. end type
  21. type r_bar from rectangle within w_aifmb_user_manage
  22. end type
  23. type ln_bar from line within w_aifmb_user_manage
  24. end type
  25. type ln_bar2 from line within w_aifmb_user_manage
  26. end type
  27. end forward
  28. global type w_aifmb_user_manage from window
  29. integer width = 3310
  30. integer height = 1980
  31. boolean titlebar = true
  32. string title = "用户管理"
  33. windowtype windowtype = child!
  34. long backcolor = 67108864
  35. string icon = "AppIcon!"
  36. boolean center = true
  37. event ue_refresh ( )
  38. cb_1 cb_1
  39. dw_2 dw_2
  40. cb_del cb_del
  41. cb_edit cb_edit
  42. cb_add cb_add
  43. cb_refresh cb_refresh
  44. dw_1 dw_1
  45. cb_exit cb_exit
  46. r_bar r_bar
  47. ln_bar ln_bar
  48. ln_bar2 ln_bar2
  49. end type
  50. global w_aifmb_user_manage w_aifmb_user_manage
  51. type variables
  52. end variables
  53. event ue_refresh();DataStore ds_entuser
  54. ds_entuser = Create DataStore
  55. uo_aifmb = Create uo_aifmb
  56. Int rslt = 1
  57. String arg_msg
  58. IF uo_aifmb.uf_getentuserlist(ds_entuser, arg_msg) <> 1 THEN
  59. rslt = 0
  60. GOTO ext
  61. END IF
  62. dw_1.Reset()
  63. ds_entuser.RowsCopy(1, ds_entuser.RowCount(), Primary!, dw_1, 1, Primary!)
  64. Long row
  65. row = dw_1.GetRow()
  66. IF row > 0 THEN
  67. dw_1.Trigger Event RowFocusChanged(row)
  68. END IF
  69. ext:
  70. Destroy ds_entuser
  71. Destroy uo_aifmb
  72. IF rslt = 0 THEN
  73. MessageBox('ERROR', arg_msg)
  74. END IF
  75. end event
  76. on w_aifmb_user_manage.create
  77. this.cb_1=create cb_1
  78. this.dw_2=create dw_2
  79. this.cb_del=create cb_del
  80. this.cb_edit=create cb_edit
  81. this.cb_add=create cb_add
  82. this.cb_refresh=create cb_refresh
  83. this.dw_1=create dw_1
  84. this.cb_exit=create cb_exit
  85. this.r_bar=create r_bar
  86. this.ln_bar=create ln_bar
  87. this.ln_bar2=create ln_bar2
  88. this.Control[]={this.cb_1,&
  89. this.dw_2,&
  90. this.cb_del,&
  91. this.cb_edit,&
  92. this.cb_add,&
  93. this.cb_refresh,&
  94. this.dw_1,&
  95. this.cb_exit,&
  96. this.r_bar,&
  97. this.ln_bar,&
  98. this.ln_bar2}
  99. end on
  100. on w_aifmb_user_manage.destroy
  101. destroy(this.cb_1)
  102. destroy(this.dw_2)
  103. destroy(this.cb_del)
  104. destroy(this.cb_edit)
  105. destroy(this.cb_add)
  106. destroy(this.cb_refresh)
  107. destroy(this.dw_1)
  108. destroy(this.cb_exit)
  109. destroy(this.r_bar)
  110. destroy(this.ln_bar)
  111. destroy(this.ln_bar2)
  112. end on
  113. event open;datastore ds_rights
  114. uo_aifmb = Create uo_aifmb
  115. ds_rights = Create datastore
  116. Int rslt = 1
  117. String arg_msg
  118. IF uo_aifmb.uf_getuserrightlist(ds_rights, arg_msg) <> 1 THEN
  119. rslt = 0
  120. GOTO ext
  121. END IF
  122. ds_rights.RowsCopy(1, ds_rights.RowCount(), Primary!, dw_2, 1, Primary!)
  123. triggerevent('ue_refresh')
  124. ext:
  125. Destroy uo_aifmb
  126. Destroy ds_rights
  127. IF rslt <> 1 THEN
  128. MessageBox('ERROR', arg_msg)
  129. END IF
  130. end event
  131. event resize;ln_bar.EndX = THIS.Width
  132. ln_bar2.EndX = THIS.Width
  133. r_bar.Width = THIS.Width
  134. dw_1.Height = this.WorkSpaceHeight() - dw_1.Y
  135. dw_2.Height = this.WorkSpaceHeight() - dw_2.Y
  136. dw_1.Width = this.WOrkSpaceWidth() - dw_1.X - dw_2.Width
  137. dw_2.X = dw_1.X + dw_1.Width
  138. end event
  139. type cb_1 from uo_imflatbutton within w_aifmb_user_manage
  140. integer x = 603
  141. integer width = 329
  142. integer height = 164
  143. integer taborder = 20
  144. string text = "绑定操作员"
  145. string normalpicname = "update2.BMP"
  146. integer picsize = 16
  147. toolbaralignment pic_align = alignattop!
  148. boolean border = false
  149. end type
  150. event clicked;call super::clicked;String ls_logname
  151. String ls_logpsw
  152. Long ll_row
  153. ll_row = dw_1.GetRow()
  154. IF ll_row <= 0 THEN
  155. MessageBox('提示', '请选择对象')
  156. RETURN
  157. END IF
  158. Open(w_aifmb_user_choice)
  159. s_aifmb_user_choice s_tran
  160. s_tran = Message.PowerObjectParm
  161. IF s_tran.UserID <> '' THEN
  162. ls_logname = dw_1.Object.logname[ll_row]
  163. ls_logpsw = dw_1.Object.psw[ll_row]
  164. String arg_msg
  165. UPDATE u_user SET
  166. aifmb_logname = :ls_logname,
  167. aifmb_logpsw = :ls_logpsw
  168. WHERE userid = :s_tran.userid
  169. Using sqlca;
  170. IF sqlca.SQLCode <> 0 THEN
  171. arg_msg = '绑定用户失败,' + sqlca.SQLErrText
  172. ROLLBACK Using sqlca;
  173. MessageBox('ERROR', arg_msg)
  174. RETURN
  175. END IF
  176. COMMIT Using sqlca;
  177. MessageBox('提示', '绑定成功')
  178. END IF
  179. end event
  180. type dw_2 from u_dw_rbtnfilter within w_aifmb_user_manage
  181. integer x = 2331
  182. integer y = 184
  183. integer taborder = 30
  184. string dataobject = "dw_aifmb_rights"
  185. boolean hscrollbar = true
  186. boolean vscrollbar = true
  187. boolean hsplitscroll = true
  188. end type
  189. type cb_del from uo_imflatbutton within w_aifmb_user_manage
  190. integer x = 302
  191. integer width = 151
  192. integer height = 164
  193. integer taborder = 40
  194. boolean enabled = false
  195. string text = "删除"
  196. string normalpicname = "delete.BMP"
  197. integer picsize = 16
  198. toolbaralignment pic_align = alignattop!
  199. boolean border = false
  200. end type
  201. type cb_edit from uo_imflatbutton within w_aifmb_user_manage
  202. integer x = 151
  203. integer width = 151
  204. integer height = 164
  205. integer taborder = 30
  206. string text = "修改"
  207. string normalpicname = "open.BMP"
  208. integer picsize = 16
  209. toolbaralignment pic_align = alignattop!
  210. boolean border = false
  211. end type
  212. event clicked;call super::clicked;Long row
  213. row = dw_1.GetRow()
  214. IF row <= 0 THEN
  215. MessageBox('提示', '请选择修改对象')
  216. RETURN
  217. END IF
  218. s_aifmb_entuser_edit_tran s_tran
  219. s_tran.row = row
  220. s_tran.dw_user = dw_1
  221. s_tran.dw_rights = dw_2
  222. OpenWithParm(w_aifmb_entuser_edit, s_tran)
  223. end event
  224. type cb_add from uo_imflatbutton within w_aifmb_user_manage
  225. integer width = 151
  226. integer height = 164
  227. integer taborder = 20
  228. string text = "新建"
  229. string normalpicname = "new.BMP"
  230. integer picsize = 16
  231. toolbaralignment pic_align = alignattop!
  232. boolean border = false
  233. end type
  234. event clicked;call super::clicked;s_aifmb_entuser_edit_tran s_tran
  235. s_tran.row = 0
  236. s_tran.dw_user = dw_1
  237. s_tran.dw_rights = dw_2
  238. OpenWithParm(w_aifmb_entuser_edit, s_tran)
  239. end event
  240. type cb_refresh from uo_imflatbutton within w_aifmb_user_manage
  241. integer x = 453
  242. integer width = 151
  243. integer height = 164
  244. integer taborder = 20
  245. string text = "刷新"
  246. string normalpicname = "refresh.bmp"
  247. integer picsize = 16
  248. toolbaralignment pic_align = alignattop!
  249. boolean border = false
  250. end type
  251. event clicked;call super::clicked;parent.triggerevent('ue_refresh')
  252. end event
  253. type dw_1 from u_dw_rbtnfilter within w_aifmb_user_manage
  254. integer y = 184
  255. integer width = 2331
  256. integer height = 1660
  257. integer taborder = 20
  258. string dataobject = "dw_aifmb_entuser"
  259. boolean hscrollbar = true
  260. boolean vscrollbar = true
  261. boolean hsplitscroll = true
  262. end type
  263. event rowfocuschanged;call super::rowfocuschanged;This.SelectRow(0, False)
  264. IF currentrow > 0 THEN
  265. This.SelectRow(currentrow, True)
  266. Long i
  267. FOR i = 1 To dw_2.RowCount()
  268. dw_2.Object.ch[i] = f_aifmb_ind_power(dw_1.Object.powers[currentrow], dw_2.Object.rightsindex[i])
  269. NEXT
  270. END IF
  271. end event
  272. event clicked;call super::clicked;IF row > 0 THEN
  273. This.SetRow(row)
  274. This.ScrollToRow(row)
  275. END IF
  276. end event
  277. type cb_exit from uo_imflatbutton within w_aifmb_user_manage
  278. integer x = 933
  279. integer width = 151
  280. integer height = 164
  281. integer taborder = 10
  282. string text = "退出"
  283. boolean cancel = true
  284. string normalpicname = "exit.bmp"
  285. integer picsize = 16
  286. toolbaralignment pic_align = alignattop!
  287. boolean border = false
  288. end type
  289. event clicked;call super::clicked;Close(PARENT)
  290. end event
  291. type r_bar from rectangle within w_aifmb_user_manage
  292. long linecolor = 16777215
  293. integer linethickness = 4
  294. long fillcolor = 1073741824
  295. integer x = 2139
  296. integer width = 146
  297. integer height = 68
  298. end type
  299. event constructor;this.fillcolor = 14215660
  300. this.linecolor = 14215660
  301. this.x = -1
  302. this.y = -1
  303. this.height = ln_bar.beginy - 5
  304. end event
  305. type ln_bar from line within w_aifmb_user_manage
  306. long linecolor = 268435456
  307. integer linethickness = 4
  308. integer beginy = 172
  309. integer endx = 2007
  310. integer endy = 172
  311. end type
  312. type ln_bar2 from line within w_aifmb_user_manage
  313. long linecolor = 16777215
  314. integer linethickness = 4
  315. integer beginy = 176
  316. integer endx = 2039
  317. integer endy = 176
  318. end type