w_rp_mstpay_fx.srw 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673
  1. $PBExportHeader$w_rp_mstpay_fx.srw
  2. $PBExportComments$供应商对账单(协同)
  3. forward
  4. global type w_rp_mstpay_fx from w_publ_base_style
  5. end type
  6. type cb_retrieve from uo_imflatbutton within w_rp_mstpay_fx
  7. end type
  8. type cb_1 from uo_imflatbutton within w_rp_mstpay_fx
  9. end type
  10. type st_1 from statictext within w_rp_mstpay_fx
  11. end type
  12. type em_datea from editmask within w_rp_mstpay_fx
  13. end type
  14. type st_2 from statictext within w_rp_mstpay_fx
  15. end type
  16. type em_datez from editmask within w_rp_mstpay_fx
  17. end type
  18. type dw_mstpay_ff from datawindow within w_rp_mstpay_fx
  19. end type
  20. type dw_mstpay from u_dw_rbtnfilter within w_rp_mstpay_fx
  21. end type
  22. type dw_mstpay_data from datawindow within w_rp_mstpay_fx
  23. end type
  24. type cb_2 from commandbutton within w_rp_mstpay_fx
  25. end type
  26. type st_4 from statictext within w_rp_mstpay_fx
  27. end type
  28. type em_heightedit from editmask within w_rp_mstpay_fx
  29. end type
  30. type cb_read from uo_imflatbutton within w_rp_mstpay_fx
  31. end type
  32. end forward
  33. global type w_rp_mstpay_fx from w_publ_base_style
  34. integer width = 4713
  35. integer height = 2768
  36. string title = "供应商对账表"
  37. boolean maxbox = true
  38. boolean resizable = true
  39. long backcolor = 16777215
  40. event ue_page_next ( )
  41. event ue_page_before ( )
  42. event ue_page_end ( )
  43. cb_retrieve cb_retrieve
  44. cb_1 cb_1
  45. st_1 st_1
  46. em_datea em_datea
  47. st_2 st_2
  48. em_datez em_datez
  49. dw_mstpay_ff dw_mstpay_ff
  50. dw_mstpay dw_mstpay
  51. dw_mstpay_data dw_mstpay_data
  52. cb_2 cb_2
  53. st_4 st_4
  54. em_heightedit em_heightedit
  55. cb_read cb_read
  56. end type
  57. global w_rp_mstpay_fx w_rp_mstpay_fx
  58. type variables
  59. long ins_cur_pageNum = 1 // 用于记录当前页码
  60. long ins_totalPages = 1 // 用于记录总页数
  61. end variables
  62. forward prototypes
  63. public function integer wf_retrieve ()
  64. public function integer wf_retrieve_data (long a_row)
  65. public function integer wf_delete_local_data (boolean a_ifsilence)
  66. end prototypes
  67. event ue_page_next();// 下页
  68. if (ins_cur_pageNum = ins_totalPages) then return
  69. ins_cur_pageNum ++
  70. end event
  71. event ue_page_before();// 上页
  72. if (ins_cur_pageNum = 1) then return
  73. ins_cur_pageNum --
  74. end event
  75. event ue_page_end();// 末页
  76. if (ins_cur_pageNum = ins_totalPages) then return
  77. ins_cur_pageNum = ins_totalPages
  78. end event
  79. public function integer wf_retrieve ();int rslt = 1
  80. string arg_msg
  81. long oriRow
  82. oriRow = dw_mstpay.GetRow()
  83. datetime dateA, dateZ
  84. dateA = DateTime(Date(em_dateA.Text), Time(0))
  85. dateZ = DateTime(Date(em_dateZ.Text), Time('23:59:59'))
  86. oleobject obj, parm, list, item
  87. parm = FxAppCom.CreatePbDictionary()
  88. parm.SetString('token', app_token_fx)
  89. parm.SetDateTime('dateA', dateA)
  90. parm.SetDateTime('dateZ', dateZ)
  91. obj = FXAppCom.GetRpMstpay(parm, ref arg_msg)
  92. if (arg_msg <> '') then
  93. rslt = 0
  94. goto ext
  95. end if
  96. dw_mstpay.Reset()
  97. dw_mstpay_ff.Reset()
  98. dw_mstpay_data.Reset()
  99. long i, row
  100. list = obj.GetPBArray('list')
  101. dw_mstpay.SetRedraw(false)
  102. for i = 1 to list.Count
  103. item = list.GetPBDictionary(i - 1)
  104. row = dw_mstpay.InsertRow(0)
  105. dw_mstpay.Object.ch[row] = 0
  106. dw_mstpay.Object.SerialNum[row] = item.GetString('SerialNum')
  107. dw_mstpay.Object.SendSCcode[row] = item.GetString('SendSCcode')
  108. dw_mstpay.Object.AddUser[row] = item.GetString('AddUser')
  109. if (not IsNull(item.GetDateTime('AddTime'))) then
  110. dw_mstpay.Object.AddTime[row] = item.GetDateTime('AddTime')
  111. end if
  112. // dw_mstpay.Object.Summary[row] = item.GetString('Summary')
  113. dw_mstpay.Object.Postscript[row] = item.GetString('Postscript')
  114. // dw_mstpay.Object.Remark[row] = item.GetString('Remark')
  115. if (not IsNull(item.GetDateTime('effectDateA'))) then
  116. dw_mstpay.Object.effectDateA[row] = item.GetDateTime('effectDateA')
  117. end if
  118. if (not IsNull(item.GetDateTime('effectDateZ'))) then
  119. dw_mstpay.Object.effectDateZ[row] = item.GetDateTime('effectDateZ')
  120. end if
  121. dw_mstpay.Object.flag[row] = item.GetInt('flag')
  122. dw_mstpay.Object.opemp[row] = item.GetString('opemp')
  123. if (not IsNull(item.GetDateTime('opdate'))) then
  124. dw_mstpay.Object.opdate[row] = item.GetDateTime('opdate')
  125. end if
  126. dw_mstpay.Object.withdrawEmp[row] = item.GetString('withdrawEmp')
  127. if (not IsNull(item.GetDateTime('withdrawDate'))) then
  128. dw_mstpay.Object.withdrawDate[row] = item.GetDateTime('withdrawDate')
  129. end if
  130. dw_mstpay.Object.filename[row] = item.GetString('filename')
  131. dw_mstpay.Object.extension[row] = item.GetString('extension')
  132. dw_mstpay.Object.comname[row] = item.GetString('comname')
  133. if (item.GetInt('Status') = 5) then // [5]接收未处理
  134. dw_mstpay.Object.unread[row] = 1
  135. else
  136. dw_mstpay.Object.unread[row] = 0
  137. end if
  138. next
  139. dw_mstpay.AcceptText()
  140. dw_mstpay.SetRedraw(true)
  141. //wf_delete_local_data(true)
  142. ext:
  143. if (rslt = 1) then
  144. if (dw_mstpay.RowCount() > 0) then
  145. dw_mstpay.SelectRow(0, false)
  146. if (oriRow > 0 and oriRow <= dw_mstpay.RowCount()) then
  147. dw_mstpay.SelectRow(oriRow, true)
  148. dw_mstpay.SetRow(oriRow)
  149. dw_mstpay.post event RowFocusChanged(oriRow)
  150. else
  151. dw_mstpay.SelectRow(1, true)
  152. dw_mstpay.SetRow(1)
  153. dw_mstpay.post event RowFocusChanged(1)
  154. end if
  155. end if
  156. else
  157. MessageBox('提示', arg_msg)
  158. end if
  159. return rslt
  160. end function
  161. public function integer wf_retrieve_data (long a_row);int rslt = 1
  162. string arg_msg
  163. if (IsNull(a_row)) then return 0
  164. if (a_row <= 0) then return 0
  165. dw_mstpay_data.Reset()
  166. dw_mstpay.Accepttext( )
  167. long flag // 0-不可读 1-可读 2-被撤回
  168. flag = dw_mstpay.Object.flag[a_row]
  169. if (flag = 0 or flag = 2) then return 0
  170. string sn, filename, extension, exePath, fileDir
  171. sn = dw_mstpay.Object.SerialNum[a_row]
  172. filename = dw_mstpay.Object.filename[a_row]
  173. extension = dw_mstpay.Object.extension[a_row]
  174. exePath = GetCurrentDirectory()
  175. fileDir = exePath + '\cache\mstpay\'
  176. IF ISNULL(sn) THEN RETURN 0
  177. long insertRow
  178. oleobject parm
  179. dw_mstpay_data.SetRedraw(false)
  180. if (FileExists(fileDir + filename + extension)) then // 先查找本地是否存在文件
  181. insertRow = dw_mstpay_data.InsertRow(0)
  182. dw_mstpay_data.Object.filepath[insertRow] = fileDir + filename + extension
  183. else
  184. parm = FxAppCom.CreatePbDictionary()
  185. parm.SetString('token', app_token_fx)
  186. parm.SetString('sn', sn)
  187. // parm.SetString('exePath', exePath)
  188. parm.SetString('fileDir', fileDir)
  189. parm.SetString('filename',filename)
  190. parm.SetString('extension',extension)
  191. FXAppCom.GetRpMstpayData(parm, ref arg_msg)
  192. IF NOT ISNULL(arg_msg) AND Len(arg_msg) > 0 THEN
  193. rslt = 0
  194. GOTO ext
  195. END IF
  196. // TODO
  197. insertRow = dw_mstpay_data.InsertRow(0)
  198. dw_mstpay_data.Object.filepath[insertRow] = fileDir + filename + extension
  199. end if
  200. dw_mstpay_data.SetRedraw(true)
  201. ext:
  202. IF rslt <> 1 AND NOT ISNULL(arg_msg) AND Len(arg_msg) > 0 THEN
  203. MessageBox('提示','获取对账单图片失败,'+arg_msg)
  204. END IF
  205. return rslt
  206. end function
  207. public function integer wf_delete_local_data (boolean a_ifsilence);// 删除本地超期/被撤回的对账表
  208. // a_ifsilence = true不弹出错误信息
  209. int rslt = 1
  210. datetime ldt_now
  211. ldt_now = datetime(today(), now())
  212. long findRow
  213. findRow = dw_mstpay.Find('', 1, dw_mstpay.RowCount())
  214. // TODO
  215. return rslt
  216. end function
  217. on w_rp_mstpay_fx.create
  218. int iCurrent
  219. call super::create
  220. this.cb_retrieve=create cb_retrieve
  221. this.cb_1=create cb_1
  222. this.st_1=create st_1
  223. this.em_datea=create em_datea
  224. this.st_2=create st_2
  225. this.em_datez=create em_datez
  226. this.dw_mstpay_ff=create dw_mstpay_ff
  227. this.dw_mstpay=create dw_mstpay
  228. this.dw_mstpay_data=create dw_mstpay_data
  229. this.cb_2=create cb_2
  230. this.st_4=create st_4
  231. this.em_heightedit=create em_heightedit
  232. this.cb_read=create cb_read
  233. iCurrent=UpperBound(this.Control)
  234. this.Control[iCurrent+1]=this.cb_retrieve
  235. this.Control[iCurrent+2]=this.cb_1
  236. this.Control[iCurrent+3]=this.st_1
  237. this.Control[iCurrent+4]=this.em_datea
  238. this.Control[iCurrent+5]=this.st_2
  239. this.Control[iCurrent+6]=this.em_datez
  240. this.Control[iCurrent+7]=this.dw_mstpay_ff
  241. this.Control[iCurrent+8]=this.dw_mstpay
  242. this.Control[iCurrent+9]=this.dw_mstpay_data
  243. this.Control[iCurrent+10]=this.cb_2
  244. this.Control[iCurrent+11]=this.st_4
  245. this.Control[iCurrent+12]=this.em_heightedit
  246. this.Control[iCurrent+13]=this.cb_read
  247. end on
  248. on w_rp_mstpay_fx.destroy
  249. call super::destroy
  250. destroy(this.cb_retrieve)
  251. destroy(this.cb_1)
  252. destroy(this.st_1)
  253. destroy(this.em_datea)
  254. destroy(this.st_2)
  255. destroy(this.em_datez)
  256. destroy(this.dw_mstpay_ff)
  257. destroy(this.dw_mstpay)
  258. destroy(this.dw_mstpay_data)
  259. destroy(this.cb_2)
  260. destroy(this.st_4)
  261. destroy(this.em_heightedit)
  262. destroy(this.cb_read)
  263. end on
  264. event open;call super::open;//
  265. //dw_mstpay_dada.InsertRow(0)
  266. string arg_msg // 70-供应商对账表
  267. if (f_find_fx_user_power(70, ref arg_msg) <> 1) then
  268. MessageBox('权限提示', arg_msg)
  269. Close(this)
  270. return
  271. end if
  272. em_datea.Text = String(RelativeDate(Today(), - 120))
  273. em_datez.Text = String(Today())
  274. wf_retrieve()
  275. end event
  276. event resize;call super::resize;if (this.Width < 4100) then this.Width = 4100
  277. if (this.Height < 2600) then this.Height = 2600
  278. dw_mstpay_ff.Width = this.workspacewidth( ) * 0.4
  279. dw_mstpay.X = dw_mstpay_ff.Width + 5
  280. dw_mstpay.Width = this.workspacewidth( ) - dw_mstpay_ff.Width - 10
  281. dw_mstpay_data.Width = this.workspacewidth( )
  282. dw_mstpay_data.Height = this.workspaceheight( ) - dw_mstpay_data.Y
  283. // 按钮靠右
  284. cb_exit.X = this.workspacewidth( ) - cb_exit.Width
  285. end event
  286. type cb_func from w_publ_base_style`cb_func within w_rp_mstpay_fx
  287. boolean visible = false
  288. integer x = 3113
  289. boolean enabled = false
  290. end type
  291. type cb_exit from w_publ_base_style`cb_exit within w_rp_mstpay_fx
  292. integer x = 3607
  293. end type
  294. type ln_bar from w_publ_base_style`ln_bar within w_rp_mstpay_fx
  295. end type
  296. type ln_bar2 from w_publ_base_style`ln_bar2 within w_rp_mstpay_fx
  297. end type
  298. type r_bar from w_publ_base_style`r_bar within w_rp_mstpay_fx
  299. end type
  300. type cb_retrieve from uo_imflatbutton within w_rp_mstpay_fx
  301. integer width = 151
  302. integer height = 164
  303. integer taborder = 20
  304. boolean bringtotop = true
  305. string text = "刷新"
  306. string normalpicname = "refresh.bmp"
  307. integer picsize = 16
  308. toolbaralignment pic_align = alignattop!
  309. boolean border = false
  310. end type
  311. event clicked;call super::clicked;wf_retrieve()
  312. end event
  313. type cb_1 from uo_imflatbutton within w_rp_mstpay_fx
  314. boolean visible = false
  315. integer x = 2496
  316. integer width = 151
  317. integer height = 164
  318. integer taborder = 20
  319. boolean bringtotop = true
  320. boolean enabled = false
  321. string text = "打印"
  322. end type
  323. type st_1 from statictext within w_rp_mstpay_fx
  324. integer x = 14
  325. integer y = 204
  326. integer width = 183
  327. integer height = 60
  328. boolean bringtotop = true
  329. integer textsize = -9
  330. integer weight = 400
  331. fontcharset fontcharset = gb2312charset!
  332. fontpitch fontpitch = variable!
  333. string facename = "宋体"
  334. long textcolor = 33554432
  335. long backcolor = 16777215
  336. string text = "日期从"
  337. boolean focusrectangle = false
  338. end type
  339. type em_datea from editmask within w_rp_mstpay_fx
  340. integer x = 192
  341. integer y = 188
  342. integer width = 389
  343. integer height = 84
  344. integer taborder = 40
  345. boolean bringtotop = true
  346. integer textsize = -9
  347. integer weight = 400
  348. fontcharset fontcharset = gb2312charset!
  349. fontpitch fontpitch = variable!
  350. string facename = "宋体"
  351. long textcolor = 33554432
  352. string text = "0000-00-00"
  353. borderstyle borderstyle = stylelowered!
  354. maskdatatype maskdatatype = datemask!
  355. string mask = "yyyy-mm-dd"
  356. boolean spin = true
  357. end type
  358. type st_2 from statictext within w_rp_mstpay_fx
  359. integer x = 599
  360. integer y = 204
  361. integer width = 87
  362. integer height = 60
  363. boolean bringtotop = true
  364. integer textsize = -9
  365. integer weight = 400
  366. fontcharset fontcharset = gb2312charset!
  367. fontpitch fontpitch = variable!
  368. string facename = "宋体"
  369. long textcolor = 33554432
  370. long backcolor = 16777215
  371. string text = "到"
  372. boolean focusrectangle = false
  373. end type
  374. type em_datez from editmask within w_rp_mstpay_fx
  375. integer x = 672
  376. integer y = 188
  377. integer width = 389
  378. integer height = 84
  379. integer taborder = 50
  380. boolean bringtotop = true
  381. integer textsize = -9
  382. integer weight = 400
  383. fontcharset fontcharset = gb2312charset!
  384. fontpitch fontpitch = variable!
  385. string facename = "宋体"
  386. long textcolor = 33554432
  387. string text = "0000-00-00"
  388. borderstyle borderstyle = stylelowered!
  389. maskdatatype maskdatatype = datemask!
  390. string mask = "yyyy-mm-dd"
  391. boolean spin = true
  392. end type
  393. type dw_mstpay_ff from datawindow within w_rp_mstpay_fx
  394. integer y = 284
  395. integer width = 1856
  396. integer height = 692
  397. integer taborder = 50
  398. boolean bringtotop = true
  399. string title = "none"
  400. string dataobject = "dw_fieb_rp_mstpay_ff"
  401. boolean livescroll = true
  402. borderstyle borderstyle = stylelowered!
  403. end type
  404. type dw_mstpay from u_dw_rbtnfilter within w_rp_mstpay_fx
  405. integer x = 1851
  406. integer y = 284
  407. integer width = 2258
  408. integer height = 692
  409. integer taborder = 20
  410. boolean bringtotop = true
  411. boolean titlebar = true
  412. string title = "对账表列表"
  413. string dataobject = "dw_fieb_rp_mstpay"
  414. boolean controlmenu = true
  415. boolean minbox = true
  416. boolean maxbox = true
  417. boolean hscrollbar = true
  418. boolean vscrollbar = true
  419. boolean resizable = true
  420. boolean hsplitscroll = true
  421. boolean rbutton_filter_use = true
  422. boolean rbutton_setposition_use = true
  423. boolean titleclick_sort_use = true
  424. end type
  425. event rowfocuschanged;call super::rowfocuschanged;if IsNull(currentrow) then
  426. IF THIS.rowcount() > 0 then
  427. THIS.SelectRow(0,FALSE)
  428. THIS.SelectRow(1,TRUE)
  429. THIS.setrow(1)
  430. currentrow =1
  431. end if
  432. end if
  433. if IsNull(currentrow) then
  434. currentrow = this.GetRow()
  435. if IsNull(currentrow) then return
  436. end if
  437. if (currentrow <= 0) then return
  438. this.SelectRow(0, false)
  439. this.SelectRow(currentrow, true)
  440. dw_mstpay_ff.Reset( )
  441. this.RowsCopy(currentrow, currentrow, Primary!, dw_mstpay_ff, 1, Primary!)
  442. string arg_msg // 71-供应商对账表确认
  443. if (f_find_fx_user_power(71, ref arg_msg) = 1 and this.Object.unread[currentrow] = 1) then
  444. cb_read.Enabled = true
  445. else
  446. cb_read.Enabled = false
  447. end if
  448. wf_retrieve_data(currentrow)
  449. end event
  450. event clicked;call super::clicked;if (row > 0) then
  451. this.SelectRow(0, false)
  452. this.SelectRow(row, true)
  453. THIS.SetRow(row)
  454. end if
  455. end event
  456. type dw_mstpay_data from datawindow within w_rp_mstpay_fx
  457. integer y = 972
  458. integer width = 4105
  459. integer height = 1236
  460. integer taborder = 60
  461. boolean bringtotop = true
  462. string title = "none"
  463. string dataobject = "dw_fieb_rp_mstpay_data"
  464. boolean hscrollbar = true
  465. boolean vscrollbar = true
  466. boolean livescroll = true
  467. borderstyle borderstyle = stylelowered!
  468. end type
  469. type cb_2 from commandbutton within w_rp_mstpay_fx
  470. integer x = 1609
  471. integer y = 188
  472. integer width = 247
  473. integer height = 84
  474. integer taborder = 70
  475. boolean bringtotop = true
  476. integer textsize = -9
  477. integer weight = 400
  478. fontcharset fontcharset = gb2312charset!
  479. fontpitch fontpitch = variable!
  480. string facename = "宋体"
  481. string pointer = "Arrow!"
  482. string text = "调整"
  483. end type
  484. event clicked;//dw_mstpay_dada
  485. //dw_mstpay_dada.Modify("DataWindow.detail.height = 1000")
  486. Long ll_height
  487. ll_height = Long(em_heightedit.Text)
  488. IF ISNULL(ll_height) OR ll_height <= 0 THEN
  489. RETURN
  490. END IF
  491. dw_mstpay_data.Modify("pic.height = '" + String(ll_height) + "'")
  492. end event
  493. type st_4 from statictext within w_rp_mstpay_fx
  494. integer x = 1115
  495. integer y = 204
  496. integer width = 265
  497. integer height = 60
  498. boolean bringtotop = true
  499. integer textsize = -9
  500. integer weight = 400
  501. fontcharset fontcharset = gb2312charset!
  502. fontpitch fontpitch = variable!
  503. string facename = "宋体"
  504. long textcolor = 33554432
  505. string text = "图片高度;"
  506. boolean focusrectangle = false
  507. end type
  508. type em_heightedit from editmask within w_rp_mstpay_fx
  509. integer x = 1376
  510. integer y = 188
  511. integer width = 201
  512. integer height = 84
  513. integer taborder = 90
  514. boolean bringtotop = true
  515. integer textsize = -9
  516. integer weight = 400
  517. fontcharset fontcharset = gb2312charset!
  518. fontpitch fontpitch = variable!
  519. string facename = "宋体"
  520. long textcolor = 33554432
  521. string text = "600"
  522. borderstyle borderstyle = stylelowered!
  523. string mask = "######"
  524. end type
  525. type cb_read from uo_imflatbutton within w_rp_mstpay_fx
  526. integer x = 155
  527. integer width = 256
  528. integer height = 164
  529. integer taborder = 70
  530. boolean bringtotop = true
  531. string text = "标记已读"
  532. string normalpicname = "ok.bmp"
  533. integer picsize = 16
  534. toolbaralignment pic_align = alignattop!
  535. boolean border = false
  536. end type
  537. event clicked;call super::clicked;long findRow, index = 0
  538. long rows[]
  539. findRow = dw_mstpay.Find('ch = 1', 1, dw_mstpay.RowCount())
  540. if (findRow > 0) then // 多选
  541. do while findRow > 0
  542. index++
  543. rows[index] = findRow
  544. if (findRow >= dw_mstpay.RowCount()) then exit
  545. findRow = dw_mstpay.Find('ch = 1', findRow + 1, dw_mstpay.RowCount())
  546. loop
  547. else // 单选
  548. findRow = dw_mstpay.GetRow()
  549. if (findRow > 0) then
  550. if (dw_mstpay.IsSelected(findRow)) then
  551. index++
  552. rows[index] = findRow
  553. end if
  554. end if
  555. end if
  556. if (index <= 0) then
  557. MessageBox('提示', '请选中/勾选需要标记已读的项')
  558. return
  559. end if
  560. string tmp_serialnum
  561. long ll_i
  562. oleobject strList, parm
  563. strList = FXAppCom.NewPBArray()
  564. for ll_i = 1 to UpperBound(rows)
  565. if (dw_mstpay.Object.unread[rows[ll_i]] = 0) then continue
  566. tmp_serialnum = Trim(dw_mstpay.Object.serialnum[rows[ll_i]])
  567. strList.AddString(tmp_serialnum)
  568. next
  569. string arg_msg
  570. if (strList.Count > 0) then
  571. parm = FxAppCom.CreatePbDictionary()
  572. parm.SetString('token', app_token_fx)
  573. parm.SetObject('list', strList)
  574. FxAppCom.ReadRpMstpay(parm, ref arg_msg)
  575. if (arg_msg <> '') then
  576. MessageBox('提示', arg_msg)
  577. end if
  578. end if
  579. cb_retrieve.post event clicked()
  580. end event