$PBExportHeader$w_ljmail_revmsg.srw forward global type w_ljmail_revmsg from w_publ_base end type type dw_1 from u_dw_rbtnfilter within w_ljmail_revmsg end type type cb_rev from uo_imflatbutton within w_ljmail_revmsg end type type cb_refresh from uo_imflatbutton within w_ljmail_revmsg end type type r_bar from rectangle within w_ljmail_revmsg end type type ln_bar from line within w_ljmail_revmsg end type type ln_bar2 from line within w_ljmail_revmsg end type end forward global type w_ljmail_revmsg from w_publ_base integer width = 3168 integer height = 2060 string title = "接收龙嘉邮件" event ue_retrieve ( ) dw_1 dw_1 cb_rev cb_rev cb_refresh cb_refresh r_bar r_bar ln_bar ln_bar ln_bar2 ln_bar2 end type global w_ljmail_revmsg w_ljmail_revmsg type variables Transaction Commit_Tran Transaction fj_tran end variables event ue_retrieve();Int rslt = 1 String arg_msg String ls_ljmail uo_ljmail_msg uo_ljmail uo_ljmail = Create uo_ljmail_msg uo_ljmail.commit_transaction = fj_tran IF uo_ljmail.uf_getljmail(ls_ljmail, arg_msg) <> 1 THEN rslt = 0 GOTO ext END IF dw_1.Retrieve(ls_ljmail) Long i String ls_id String htmlbody Long Len Long cnt FOR i = 1 To dw_1.RowCount() ls_id = dw_1.Object.ljfieb_packet_serialnum[i] SELECT count(0) INTO :cnt FROM LJFIEB_ljmail_fj WHERE SerialNum = :ls_id Using fj_tran; IF fj_tran.SQLCode <> 0 THEN rslt = 0 arg_msg = '查询附件数失败,' + fj_tran.SQLErrText GOTO ext END IF dw_1.Object.fjcnt[i] = cnt SELECT datalength(htmlbody) INTO :Len FROM LJFIEB_ljmail_msg WHERE SerialNum = :ls_id Using fj_tran; IF fj_tran.SQLCode <> 0 THEN rslt = 0 arg_msg = '查询正文长度失败,' + fj_tran.SQLErrText GOTO ext END IF SELECT substring(htmlbody, 1, 100) INTO :htmlbody FROM LJFIEB_ljmail_msg WHERE SerialNum = :ls_id Using fj_tran; IF fj_tran.SQLCode <> 0 THEN rslt = 0 arg_msg = '查询正文失败,' + fj_tran.SQLErrText GOTO ext END IF IF Len > 100 THEN htmlbody = htmlbody + '...' END IF dw_1.Object.htmlbody[i] = htmlbody NEXT ext: Destroy uo_ljmail IF rslt = 0 THEN MessageBox('系统错误', arg_msg, stopsign!) END IF end event on w_ljmail_revmsg.create int iCurrent call super::create this.dw_1=create dw_1 this.cb_rev=create cb_rev this.cb_refresh=create cb_refresh this.r_bar=create r_bar this.ln_bar=create ln_bar this.ln_bar2=create ln_bar2 iCurrent=UpperBound(this.Control) this.Control[iCurrent+1]=this.dw_1 this.Control[iCurrent+2]=this.cb_rev this.Control[iCurrent+3]=this.cb_refresh this.Control[iCurrent+4]=this.r_bar this.Control[iCurrent+5]=this.ln_bar this.Control[iCurrent+6]=this.ln_bar2 end on on w_ljmail_revmsg.destroy call super::destroy destroy(this.dw_1) destroy(this.cb_rev) destroy(this.cb_refresh) destroy(this.r_bar) destroy(this.ln_bar) destroy(this.ln_bar2) end on event resize;call super::resize;r_bar.Width = This.Width ln_bar.EndX = This.Width ln_bar2.EndX = This.Width dw_1.Width = This.WorkSpaceWidth() - dw_1.X dw_1.Height = This.WorkSpaceHeight() - dw_1.Y end event event open;call super::open;Long ll_ConnectionID String arg_msg Commit_Tran = sqlca IF sys_email_sqlca.DBHandle() > 0 THEN fj_tran = sys_email_sqlca ELSE MessageBox('系统提示','要使用邮件功能,请先定义邮件数据库') cb_exit.PostEvent(Clicked!) RETURN END IF dw_1.SetTransObject(fj_tran) end event type cb_func from w_publ_base`cb_func within w_ljmail_revmsg boolean visible = false end type type cb_exit from w_publ_base`cb_exit within w_ljmail_revmsg integer x = 311 integer width = 151 integer height = 164 integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type type dw_1 from u_dw_rbtnfilter within w_ljmail_revmsg integer y = 184 integer width = 3378 integer height = 952 integer taborder = 40 boolean bringtotop = true string dataobject = "dw_ljmail_revmsg" boolean hscrollbar = true boolean vscrollbar = true boolean hsplitscroll = true boolean rbutton_filter_use = true end type event clicked;call super::clicked;IF row <= 0 THEN RETURN This.SetRow(row) end event event rowfocuschanged;call super::rowfocuschanged;This.SelectRow(0, False) IF currentrow > 0 THEN This.SelectRow(currentrow, True) END IF end event type cb_rev from uo_imflatbutton within w_ljmail_revmsg integer width = 151 integer height = 164 integer taborder = 100 boolean bringtotop = true string text = "接收" string normalpicname = "OPEN.BMP" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;Int rslt = 1 Long ll_row String arg_msg uo_ljmail_msg uo_ljmail uo_ljmail = Create uo_ljmail_msg uo_ljmail.commit_transaction = fj_tran ll_row = dw_1.GetRow() IF ll_row <= 0 THEN rslt = 0 arg_msg = '请选择接收对象' GOTO ext END IF String ls_id ls_id = dw_1.Object.ljfieb_packet_serialnum[ll_row] IF uo_ljmail.uf_rev_msg(ls_id, arg_msg) <> 1 THEN rslt = 0 GOTO ext END IF dw_1.DeleteRow(ll_row) ext: Destroy uo_ljmail IF rslt = 0 THEN MessageBox('系统提示', arg_msg) END IF end event type cb_refresh from uo_imflatbutton within w_ljmail_revmsg integer x = 155 integer width = 151 integer height = 164 integer taborder = 110 boolean bringtotop = true string text = "刷新" string normalpicname = "refresh.BMP" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;parent.TriggerEvent('ue_retrieve') end event type r_bar from rectangle within w_ljmail_revmsg long linecolor = 16777215 integer linethickness = 4 long fillcolor = 1073741824 integer x = 791 integer width = 146 integer height = 68 end type event constructor;this.fillcolor = 14215660 this.linecolor = 14215660 this.x = -1 this.y = -1 this.height = ln_bar.beginy - 5 end event type ln_bar from line within w_ljmail_revmsg long linecolor = 268435456 integer linethickness = 4 integer beginy = 168 integer endx = 2007 integer endy = 168 end type type ln_bar2 from line within w_ljmail_revmsg long linecolor = 16777215 integer linethickness = 4 integer beginy = 172 integer endx = 2039 integer endy = 172 end type