w_msg_send_mt.srw 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974
  1. $PBExportHeader$w_msg_send_mt.srw
  2. forward
  3. global type w_msg_send_mt from w_publ_base
  4. end type
  5. type sle_msgtitle from singlelineedit within w_msg_send_mt
  6. end type
  7. type st_2 from statictext within w_msg_send_mt
  8. end type
  9. type mle_objdpm from multilineedit within w_msg_send_mt
  10. end type
  11. type dw_1 from u_dw_rbtnfilter within w_msg_send_mt
  12. end type
  13. type rb_usergrp from radiobutton within w_msg_send_mt
  14. end type
  15. type rb_user from radiobutton within w_msg_send_mt
  16. end type
  17. type cb_que from uo_imflatbutton within w_msg_send_mt
  18. end type
  19. type cb_1 from uo_imflatbutton within w_msg_send_mt
  20. end type
  21. type st_1 from statictext within w_msg_send_mt
  22. end type
  23. type sle_billcode from singlelineedit within w_msg_send_mt
  24. end type
  25. type st_3 from statictext within w_msg_send_mt
  26. end type
  27. type uo_html from uo_html_editor within w_msg_send_mt
  28. end type
  29. type dw_mt_fj from datawindow within w_msg_send_mt
  30. end type
  31. type p_fj_add from picture within w_msg_send_mt
  32. end type
  33. type st_4 from statictext within w_msg_send_mt
  34. end type
  35. type st_fj_add from statictext within w_msg_send_mt
  36. end type
  37. type st_6 from statictext within w_msg_send_mt
  38. end type
  39. type st_send_suc_w from statictext within w_msg_send_mt
  40. end type
  41. type ln_bar from line within w_msg_send_mt
  42. end type
  43. type ln_bar2 from line within w_msg_send_mt
  44. end type
  45. type r_bar from rectangle within w_msg_send_mt
  46. end type
  47. type st_send_suc from statictext within w_msg_send_mt
  48. end type
  49. end forward
  50. global type w_msg_send_mt from w_publ_base
  51. integer x = 23
  52. integer y = 24
  53. integer width = 3502
  54. integer height = 2568
  55. string title = "唛头邮件"
  56. boolean minbox = false
  57. windowtype windowtype = response!
  58. long backcolor = 16777215
  59. event ue_fj_del ( )
  60. event ue_fj_del_all ( )
  61. event ue_fj_add_link ( )
  62. event ue_fj_add ( )
  63. sle_msgtitle sle_msgtitle
  64. st_2 st_2
  65. mle_objdpm mle_objdpm
  66. dw_1 dw_1
  67. rb_usergrp rb_usergrp
  68. rb_user rb_user
  69. cb_que cb_que
  70. cb_1 cb_1
  71. st_1 st_1
  72. sle_billcode sle_billcode
  73. st_3 st_3
  74. uo_html uo_html
  75. dw_mt_fj dw_mt_fj
  76. p_fj_add p_fj_add
  77. st_4 st_4
  78. st_fj_add st_fj_add
  79. st_6 st_6
  80. st_send_suc_w st_send_suc_w
  81. ln_bar ln_bar
  82. ln_bar2 ln_bar2
  83. r_bar r_bar
  84. st_send_suc st_send_suc
  85. end type
  86. global w_msg_send_mt w_msg_send_mt
  87. type variables
  88. uo_transmsg uo_msg
  89. Blob ins_fjdata[] //附件转换为的blob
  90. Long ins_max_fj = 0//附件数目
  91. s_admsg s_msg,s_return
  92. long ins_kind //0普通 1唛头 -1全部
  93. end variables
  94. forward prototypes
  95. public function integer wf_addobjdpm (string arg_objdpm)
  96. public function integer wf_dw ()
  97. end prototypes
  98. event ue_fj_del();Long lrow
  99. Long ls_i,ls_j = 0
  100. Blob ls_filedata[]
  101. lrow = dw_mt_fj.GetRow()
  102. IF lrow <= 0 THEN
  103. MessageBox('系统提示','请先选择目标!')
  104. RETURN
  105. END IF
  106. if messagebox('系统提示','确定要删除当前附件吗?',question!,yesno!) = 2 then return
  107. dw_mt_fj.DeleteRow(lrow)
  108. end event
  109. event ue_fj_del_all();//Long ls_i
  110. //Blob ls_null[]
  111. //ins_fjdata[] = ls_null[]
  112. //ins_max_fj = 0
  113. //IF dw_msg_fj.RowCount() > 0 THEN
  114. // FOR ls_i = dw_msg_fj.RowCount() TO 1 STEP -1
  115. // dw_msg_fj.DeleteRow(ls_i)
  116. // NEXT
  117. //END IF
  118. //
  119. end event
  120. event ue_fj_add_link();//s_inputbox s_ipb
  121. //String ls_linkpath = ''
  122. //Long ls_newrow
  123. //
  124. //s_ipb.Title = '请输入超链接路径'
  125. //OpenWithParm(w_inputbox,s_ipb)
  126. //ls_linkpath = Message.StringParm
  127. //
  128. //IF Trim(ls_linkpath) = '' THEN
  129. // RETURN
  130. //END IF
  131. //
  132. //ls_newrow = dw_msg_fj.InsertRow(0)
  133. //dw_msg_fj.Object.fjname[ls_newrow] = ls_linkpath
  134. //dw_msg_fj.Object.fjpath[ls_newrow] = ls_linkpath
  135. //dw_msg_fj.Object.fjtype[ls_newrow] = 1 //0为文件,1为超链接
  136. //ins_max_fj++
  137. //ins_fjdata[ins_max_fj] = Blob(ls_linkpath)
  138. //
  139. end event
  140. event ue_fj_add();////ue_selectfile
  141. String Pathname,Filename,FileType
  142. Integer i
  143. long row
  144. FileType = ''
  145. FileType = '所有文件(*.*),*.*,'
  146. // FileType += "配置文件(*.ini), *.ini,"
  147. FileType += "Zip压缩文件(*.Zip),*.Zip,"
  148. FileType += "RAR压缩文件(*.rar),*.rar,"
  149. // FileType += "XML文件(*.xml),*.xml,"
  150. FileType += "文本文件(*.txt),*.txt,"
  151. FileType += "Excel模版(*.xlt),*.xlt,"
  152. // FileType += "Excel文档(*.xls),*.xls,"
  153. // FileType += "Word模版(*.dot),*.dot,"
  154. FileType += "Word文档(*.doc),*.doc,"
  155. FileType += "JPG(*.JPG),*.JPG,"
  156. FileType += "位图文件(*.bmp),*.bmp,"
  157. FileType += "GIF文件(*.GIF),*.GIF"
  158. i = GetFileOpenName("请选择文件", Pathname,Filename, "All", FileType)
  159. IF i = 1 AND Trim(Pathname) <> '' AND Trim(Filename) <> "" THEN
  160. IF Pathname = '' OR NOT FileExists(Pathname) THEN
  161. MessageBox('系统提示','请选择文件!')
  162. RETURN
  163. END IF
  164. if FileLength(Pathname)/1024 > 10240 then
  165. messagebox('限制','附件文件大小不得大于10M')
  166. return
  167. end if
  168. row= dw_mt_fj.insertrow(0)
  169. dw_mt_fj.Object.fjpath[row] = Pathname
  170. Long poi = 0,Begin = 1
  171. Begin = Pos(Filename,'.',1)
  172. DO WHILE Begin > 0
  173. poi = Begin
  174. Begin = Pos(Filename,'.',Begin + 1)
  175. LOOP
  176. IF poi > 0 THEN
  177. dw_mt_fj.Object.fjname[row] = Filename//Mid(Filename,1,poi -1)
  178. dw_mt_fj.Object.FileType[row] = Mid(Filename,poi +1,Len(Filename) - poi)
  179. ELSE
  180. dw_mt_fj.Object.fjname[row] = Filename
  181. dw_mt_fj.Object.FileType[row] = ''
  182. END IF
  183. END IF
  184. //Integer i
  185. //Long ls_i,ls_j,ls_newrow,ls_filesize
  186. //Blob ls_filedata
  187. //String Pathname,ls_filename
  188. //String Filename[],errmsg
  189. //i = GetFileSaveName("选择附件",Pathname,Filename[],"*","程序文件,*.*")
  190. //
  191. //IF i = 1 AND Trim(Pathname) <> '' THEN
  192. // FOR ls_i = 1 TO UpperBound(Filename)
  193. // IF UpperBound(Filename) = 1 THEN
  194. // ls_filename = Pathname
  195. // ELSE
  196. // ls_filename = Pathname + '\'+Filename[ls_i]
  197. // END IF
  198. //// IF dw_msg_fj.Find( 'fjpath='+"'"+ls_filename+"'", 0, dw_msg_fj.RowCount()) > 0 THEN
  199. //// CONTINUE;
  200. //// END IF
  201. //// IF f_filetoblob(ls_filename,ls_filedata,errmsg) = 0 THEN
  202. //// MessageBox('系统提示',errmsg)
  203. //// RETURN
  204. //// END IF
  205. //// ls_filesize = Len(ls_filedata)
  206. // ls_newrow = dw_mt_fj.InsertRow(0)
  207. // dw_mt_fj.Object.fjname[ls_newrow] = Filename[ls_i]
  208. // dw_mt_fj.Object.fileid[ls_newrow] = 0
  209. // dw_mt_fj.Object.fjpath[ls_newrow] = ls_filename
  210. // NEXT
  211. //END IF
  212. end event
  213. public function integer wf_addobjdpm (string arg_objdpm);string tmp_objdpm
  214. tmp_objdpm=trim(mle_objdpm.text)
  215. if tmp_objdpm = '' then
  216. mle_objdpm.text=arg_objdpm
  217. else
  218. if pos(tmp_objdpm,arg_objdpm,1) > 0 and len(tmp_objdpm) = len(arg_objdpm) then return 0
  219. if pos(tmp_objdpm,';'+arg_objdpm+';',1) > 0 then return 0
  220. if pos(tmp_objdpm,arg_objdpm+';',1) > 0 then return 0
  221. if pos(tmp_objdpm,';'+arg_objdpm,1) > 0 then return 0
  222. mle_objdpm.text=tmp_objdpm + ';'+arg_objdpm
  223. end if
  224. return 1
  225. end function
  226. public function integer wf_dw ();dw_1.SetRedraw(False)
  227. If rb_user.Checked Then
  228. dw_1.DataObject = 'dw_objdpm_user_mt'
  229. dw_1.SetTransObject(sqlca)
  230. dw_1.Retrieve(sys_empid,ins_kind)
  231. Else
  232. dw_1.DataObject = 'dw_objdpm_usergrp'
  233. dw_1.SetTransObject(sqlca)
  234. dw_1.Retrieve(sys_scid)
  235. End If
  236. dw_1.SetRedraw(True)
  237. Return 1
  238. end function
  239. on w_msg_send_mt.create
  240. int iCurrent
  241. call super::create
  242. this.sle_msgtitle=create sle_msgtitle
  243. this.st_2=create st_2
  244. this.mle_objdpm=create mle_objdpm
  245. this.dw_1=create dw_1
  246. this.rb_usergrp=create rb_usergrp
  247. this.rb_user=create rb_user
  248. this.cb_que=create cb_que
  249. this.cb_1=create cb_1
  250. this.st_1=create st_1
  251. this.sle_billcode=create sle_billcode
  252. this.st_3=create st_3
  253. this.uo_html=create uo_html
  254. this.dw_mt_fj=create dw_mt_fj
  255. this.p_fj_add=create p_fj_add
  256. this.st_4=create st_4
  257. this.st_fj_add=create st_fj_add
  258. this.st_6=create st_6
  259. this.st_send_suc_w=create st_send_suc_w
  260. this.ln_bar=create ln_bar
  261. this.ln_bar2=create ln_bar2
  262. this.r_bar=create r_bar
  263. this.st_send_suc=create st_send_suc
  264. iCurrent=UpperBound(this.Control)
  265. this.Control[iCurrent+1]=this.sle_msgtitle
  266. this.Control[iCurrent+2]=this.st_2
  267. this.Control[iCurrent+3]=this.mle_objdpm
  268. this.Control[iCurrent+4]=this.dw_1
  269. this.Control[iCurrent+5]=this.rb_usergrp
  270. this.Control[iCurrent+6]=this.rb_user
  271. this.Control[iCurrent+7]=this.cb_que
  272. this.Control[iCurrent+8]=this.cb_1
  273. this.Control[iCurrent+9]=this.st_1
  274. this.Control[iCurrent+10]=this.sle_billcode
  275. this.Control[iCurrent+11]=this.st_3
  276. this.Control[iCurrent+12]=this.uo_html
  277. this.Control[iCurrent+13]=this.dw_mt_fj
  278. this.Control[iCurrent+14]=this.p_fj_add
  279. this.Control[iCurrent+15]=this.st_4
  280. this.Control[iCurrent+16]=this.st_fj_add
  281. this.Control[iCurrent+17]=this.st_6
  282. this.Control[iCurrent+18]=this.st_send_suc_w
  283. this.Control[iCurrent+19]=this.ln_bar
  284. this.Control[iCurrent+20]=this.ln_bar2
  285. this.Control[iCurrent+21]=this.r_bar
  286. this.Control[iCurrent+22]=this.st_send_suc
  287. end on
  288. on w_msg_send_mt.destroy
  289. call super::destroy
  290. destroy(this.sle_msgtitle)
  291. destroy(this.st_2)
  292. destroy(this.mle_objdpm)
  293. destroy(this.dw_1)
  294. destroy(this.rb_usergrp)
  295. destroy(this.rb_user)
  296. destroy(this.cb_que)
  297. destroy(this.cb_1)
  298. destroy(this.st_1)
  299. destroy(this.sle_billcode)
  300. destroy(this.st_3)
  301. destroy(this.uo_html)
  302. destroy(this.dw_mt_fj)
  303. destroy(this.p_fj_add)
  304. destroy(this.st_4)
  305. destroy(this.st_fj_add)
  306. destroy(this.st_6)
  307. destroy(this.st_send_suc_w)
  308. destroy(this.ln_bar)
  309. destroy(this.ln_bar2)
  310. destroy(this.r_bar)
  311. destroy(this.st_send_suc)
  312. end on
  313. event close;
  314. f_setProfileString (sys_empid,this.classname(), "x",string(this.x))
  315. f_setProfileString (sys_empid,this.classname(), "y",string(this.y))
  316. closewithreturn(this,s_return)
  317. end event
  318. event open;This.TriggerEvent('ue_before_open')
  319. s_msg = Message.PowerObjectParm
  320. ins_kind = 1
  321. dw_mt_fj.SetTransObject(sys_filedb_sqlca)
  322. wf_dw()
  323. If Integer(f_ProfileString (sys_empid,This.ClassName(), "x",String(This.X))) = 0 Then
  324. This.X = 23
  325. This.Y = 24
  326. Else
  327. This.X = Integer(f_ProfileString (sys_empid,This.ClassName(), "x",String(This.X)))
  328. This.Y = Integer(f_ProfileString (sys_empid,This.ClassName(), "y",String(This.Y)))
  329. End If
  330. If s_msg.ifback = 1 Then
  331. mle_objdpm.Text = s_msg.sendemp
  332. sle_billcode.Text = s_msg.billcode
  333. sle_msgtitle.Text = '回复:'+s_msg.msgtitle
  334. uo_html.uf_sethtml('<DIV><FONT face=Verdana color=#000080 size=2>&nbsp;</FONT></DIV><DIV><FONT face=Verdana color=#000080 size=2>&nbsp;</FONT></DIV><DIV><FONT face=Verdana color=#000080 size=2>&nbsp;</FONT></DIV><HR color=#b5c4df SIZE=1>' + s_msg.msg)
  335. Else
  336. sle_billcode.Text = s_msg.billcode
  337. If s_msg.ifpmc = 0 Then
  338. If Trim(s_msg.relcode) <> '' Then
  339. uo_html.uf_sethtml('附件为单号:'+s_msg.relcode+'的唛头文件,请查收')
  340. ElseIf Trim(s_msg.billcode) <> '' Then
  341. uo_html.uf_sethtml('附件为单号:'+s_msg.billcode+'的唛头文件,请查收')
  342. End If
  343. Elseif s_msg.ifpmc = 1 Then
  344. uo_html.uf_sethtml('销售订单:'+s_msg.billcode+'唛头用料已审核,请跟进')
  345. Elseif s_msg.ifpmc = 2 Then
  346. uo_html.uf_sethtml('销售订单:'+s_msg.billcode+'唛头文件已审核,请进行增加唛头用料操作')
  347. End If
  348. End If
  349. //读取最近一次发送唛头邮件时的收件人
  350. String ls_objdpm
  351. Select top 1 objdpm
  352. Into :ls_objdpm
  353. From Sys_admsg
  354. Where kind = 1
  355. And sendempid = :sys_empid
  356. Order By msgid Desc;
  357. If sqlca.SQLCode = 0 Then
  358. mle_objdpm.Text = ls_objdpm
  359. End If
  360. //刷新销售订单唛头附件
  361. dw_mt_fj.Retrieve(sys_mt_classid,s_msg.scid,s_msg.relid,s_msg.billtype,0)
  362. end event
  363. event key;if keydown(KeyControl!) and keydown(keyS!) then
  364. cb_que.triggerevent(clicked!)
  365. return 1
  366. end if
  367. end event
  368. event resize;call super::resize;//if newwidth < 3493 then this.width = 3493
  369. //if newheight < 2388 then this.height = 2388
  370. ln_bar.endx = this.width
  371. ln_bar2.endx = this.width
  372. r_bar.width = this.width
  373. //dw_1.x = this.width - dw_1.width - 40
  374. //rb_user.x = dw_1.x + 50
  375. //rb_usergrp.x = dw_1.x + 300
  376. //
  377. //mle_objdpm.width = dw_1.x - mle_objdpm.x
  378. //sle_msgtitle.width = mle_objdpm.width
  379. //
  380. //uo_html.width = dw_1.x - uo_html.x
  381. //dw_mt_fj.width = uo_html.width
  382. //
  383. //
  384. //
  385. //dw_1.height = this.height - dw_1.y - 140
  386. //
  387. //uo_html.height = this.height - uo_html.y - dw_mt_fj.height - 140
  388. //
  389. //dw_mt_fj.y = uo_html.y + uo_html.height
  390. end event
  391. type cb_func from w_publ_base`cb_func within w_msg_send_mt
  392. boolean visible = false
  393. integer x = 14
  394. integer y = 1092
  395. integer width = 133
  396. integer taborder = 10
  397. boolean enabled = false
  398. string text = ""
  399. end type
  400. type cb_exit from w_publ_base`cb_exit within w_msg_send_mt
  401. integer x = 594
  402. integer width = 151
  403. integer height = 164
  404. integer taborder = 110
  405. integer picsize = 16
  406. toolbaralignment pic_align = alignattop!
  407. boolean border = false
  408. end type
  409. type sle_msgtitle from singlelineedit within w_msg_send_mt
  410. event key pbm_keydown
  411. integer x = 256
  412. integer y = 372
  413. integer width = 2560
  414. integer height = 84
  415. integer taborder = 30
  416. boolean bringtotop = true
  417. integer textsize = -9
  418. integer weight = 400
  419. fontcharset fontcharset = gb2312charset!
  420. fontpitch fontpitch = variable!
  421. string facename = "宋体"
  422. long textcolor = 33554432
  423. string text = "唛头资料"
  424. boolean autohscroll = false
  425. end type
  426. event modified;keybd_event ( 9, 0, 0 , 0 ) // 按下tab
  427. keybd_event ( 9, 0, 2, 0 ) // 释放tab
  428. return 1
  429. end event
  430. type st_2 from statictext within w_msg_send_mt
  431. integer x = 23
  432. integer y = 388
  433. integer width = 224
  434. integer height = 48
  435. integer textsize = -9
  436. integer weight = 400
  437. fontcharset fontcharset = gb2312charset!
  438. fontpitch fontpitch = variable!
  439. string facename = "宋体"
  440. long textcolor = 33554432
  441. long backcolor = 16777215
  442. boolean enabled = false
  443. string text = "标题:"
  444. alignment alignment = right!
  445. boolean focusrectangle = false
  446. end type
  447. type mle_objdpm from multilineedit within w_msg_send_mt
  448. event key pbm_dwnkey
  449. integer x = 256
  450. integer y = 200
  451. integer width = 2560
  452. integer height = 164
  453. integer taborder = 20
  454. boolean bringtotop = true
  455. integer textsize = -11
  456. integer weight = 400
  457. fontcharset fontcharset = gb2312charset!
  458. fontpitch fontpitch = variable!
  459. string facename = "宋体"
  460. long textcolor = 33554432
  461. boolean vscrollbar = true
  462. end type
  463. type dw_1 from u_dw_rbtnfilter within w_msg_send_mt
  464. integer x = 2821
  465. integer y = 260
  466. integer width = 658
  467. integer height = 2216
  468. integer taborder = 130
  469. boolean bringtotop = true
  470. string dataobject = "dw_objdpm_user_mt"
  471. boolean vscrollbar = true
  472. borderstyle borderstyle = stylebox!
  473. boolean rbutton_filter_use = true
  474. end type
  475. event rowfocuschanged;//if currentrow<=0 then return
  476. //this.selectrow(0,false)
  477. //this.selectrow(currentrow,true)
  478. end event
  479. event doubleclicked;if row<=0 then return
  480. string ls_objdpm
  481. if rb_user.checked then
  482. ls_objdpm=dw_1.object.u_user_username[row]
  483. else
  484. ls_objdpm=dw_1.object.usergroup[row]
  485. end if
  486. wf_addobjdpm(ls_objdpm)
  487. end event
  488. type rb_usergrp from radiobutton within w_msg_send_mt
  489. integer x = 3118
  490. integer y = 196
  491. integer width = 247
  492. integer height = 52
  493. boolean bringtotop = true
  494. integer textsize = -9
  495. integer weight = 400
  496. fontcharset fontcharset = gb2312charset!
  497. fontpitch fontpitch = variable!
  498. string facename = "宋体"
  499. long textcolor = 33554432
  500. long backcolor = 16777215
  501. string text = "用户组"
  502. end type
  503. event clicked;wf_dw()
  504. end event
  505. type rb_user from radiobutton within w_msg_send_mt
  506. integer x = 2871
  507. integer y = 196
  508. integer width = 247
  509. integer height = 52
  510. boolean bringtotop = true
  511. integer textsize = -9
  512. integer weight = 400
  513. fontcharset fontcharset = gb2312charset!
  514. fontpitch fontpitch = variable!
  515. string facename = "宋体"
  516. long textcolor = 33554432
  517. long backcolor = 16777215
  518. string text = "用户"
  519. boolean checked = true
  520. end type
  521. event clicked;wf_dw()
  522. end event
  523. type cb_que from uo_imflatbutton within w_msg_send_mt
  524. integer width = 398
  525. integer height = 164
  526. integer taborder = 60
  527. string text = "发送[Ctrl+s]"
  528. string normalpicname = "email_view2.bmp"
  529. integer picsize = 16
  530. toolbaralignment pic_align = alignattop!
  531. boolean border = false
  532. end type
  533. event clicked;call super::clicked;String ls_objdpm,ls_msgtitle,ls_s_msg,arg_msg,ls_billcode
  534. Boolean ifcommit
  535. Long ls_i
  536. ls_objdpm = Trim(mle_objdpm.Text)
  537. ls_msgtitle = Trim(sle_msgtitle.Text)
  538. ls_s_msg = Trim(uo_html.uf_gethtml( ))
  539. ls_billcode = Trim(sle_billcode.Text)
  540. If Trim(ls_objdpm) = '' Then
  541. MessageBox('系统提示','请指定收件人')
  542. mle_objdpm.SetFocus()
  543. Return
  544. End If
  545. If Trim(ls_msgtitle) = '' Then
  546. MessageBox('系统提示','请输入标题')
  547. sle_msgtitle.SetFocus()
  548. Return
  549. End If
  550. Blob ls_filedata,ls_filedate_arr[]
  551. Long ll_cnt_fj
  552. String ls_fjname
  553. Long ll_FileID
  554. For ls_i = 1 To dw_mt_fj.RowCount()
  555. ls_fjname = dw_mt_fj.Object.fjname[ls_i]
  556. ll_FileID = dw_mt_fj.Object.fileid[ls_i]
  557. If ll_FileID = 0 Then
  558. If f_filetoblob(dw_mt_fj.Object.fjpath[ls_i],ls_filedata,arg_msg) = 0 Then
  559. MessageBox('系统提示','文件读取失败:'+ls_fjname+'~r~n'+arg_msg)
  560. Return
  561. End If
  562. Else
  563. SelectBlob FileData
  564. Into :ls_filedata
  565. From U_File
  566. Where (fileid = :ll_FileID) Using sys_filedb_sqlca;
  567. if sys_filedb_sqlca.sqlcode <> 0 then
  568. MessageBox('系统提示','文件读取失败:'+ls_fjname+'~r~n'+sys_filedb_sqlca.sqlerrtext)
  569. Return
  570. End If
  571. End If
  572. ll_cnt_fj++
  573. ls_filedate_arr[ll_cnt_fj] = ls_filedata
  574. Next
  575. If dw_mt_fj.RowCount() = 0 Then
  576. ifcommit = True
  577. Else
  578. ifcommit = False
  579. End If
  580. If uo_msg.f_create_admsg(sys_empid,publ_operator,ls_objdpm,ls_msgtitle,ls_s_msg,arg_msg,0,ls_billcode,ifcommit) = 0 Then
  581. MessageBox('系统提示','消息发送失败'+'~r~n'+arg_msg)
  582. Return
  583. End If
  584. For ls_i = 1 To dw_mt_fj.RowCount()
  585. If ls_i = dw_mt_fj.RowCount() Then
  586. ifcommit = True
  587. Else
  588. ifcommit = False
  589. End If
  590. If uo_msg.f_save_fj(uo_msg.uo_msgid,&
  591. dw_mt_fj.Object.fjname[ls_i],&
  592. ls_filedate_arr[ls_i],&
  593. 0,&
  594. 0,arg_msg,ifcommit) = 0 Then
  595. MessageBox('系统提示','添加附件失败'+'~r~n'+arg_msg)
  596. Return
  597. End If
  598. Next
  599. s_return.ifsend = 1
  600. st_send_suc_w.visible = true
  601. st_send_suc.visible = true
  602. long begintime ,endtime,stoptime
  603. begintime = cpu()
  604. do while stoptime < 600//(毫秒)
  605. // Yield()
  606. endtime = cpu()
  607. stoptime = endtime - begintime
  608. loop
  609. cb_exit.postevent(clicked!)
  610. //Close(Parent)
  611. end event
  612. type cb_1 from uo_imflatbutton within w_msg_send_mt
  613. boolean visible = false
  614. integer x = 398
  615. integer width = 197
  616. integer height = 164
  617. integer taborder = 70
  618. boolean bringtotop = true
  619. string text = "附件"
  620. string normalpicname = "email_fj.bmp"
  621. integer picsize = 16
  622. toolbaralignment pic_align = alignattop!
  623. boolean border = false
  624. end type
  625. event clicked;call super::clicked; m_Dfc_Control_PopupMenu dmPopupMenu
  626. String menustr,ls_level
  627. menustr = "Text=添附件~tEvent=ue_fj_add"
  628. menustr = menustr + "|" + "Text=添链接~tEvent=ue_fj_add_link"
  629. menustr = menustr + "|" + "Text=-"
  630. menustr = menustr + "|" + "Text=删条目~tEvent=ue_fj_del"
  631. menustr = menustr + "|" + "Text=清空~tEvent=ue_fj_del_all"
  632. IF Len(Trim(menustr)) <> 0 THEN
  633. dmPopupMenu = CREATE m_Dfc_Control_PopupMenu
  634. dmPopupMenu.mf_BuildMenu(THIS, menustr)
  635. dmPopupMenu.mf_PopMenu()
  636. DESTROY dmPopupMenu
  637. END IF
  638. end event
  639. type st_1 from statictext within w_msg_send_mt
  640. integer x = 23
  641. integer y = 200
  642. integer width = 224
  643. integer height = 48
  644. boolean bringtotop = true
  645. integer textsize = -9
  646. integer weight = 400
  647. fontcharset fontcharset = gb2312charset!
  648. fontpitch fontpitch = variable!
  649. string facename = "宋体"
  650. long textcolor = 33554432
  651. long backcolor = 16777215
  652. string text = "收件人:"
  653. alignment alignment = right!
  654. boolean focusrectangle = false
  655. end type
  656. type sle_billcode from singlelineedit within w_msg_send_mt
  657. event key pbm_keydown
  658. integer x = 256
  659. integer y = 464
  660. integer width = 704
  661. integer height = 84
  662. integer taborder = 40
  663. boolean bringtotop = true
  664. integer textsize = -9
  665. integer weight = 400
  666. fontcharset fontcharset = gb2312charset!
  667. fontpitch fontpitch = variable!
  668. string facename = "宋体"
  669. long textcolor = 33554432
  670. boolean autohscroll = false
  671. end type
  672. event modified;keybd_event ( 9, 0, 0 , 0 ) // 按下tab
  673. keybd_event ( 9, 0, 2, 0 ) // 释放tab
  674. return 1
  675. end event
  676. type st_3 from statictext within w_msg_send_mt
  677. integer x = 23
  678. integer y = 480
  679. integer width = 224
  680. integer height = 48
  681. boolean bringtotop = true
  682. integer textsize = -9
  683. integer weight = 400
  684. fontcharset fontcharset = gb2312charset!
  685. fontpitch fontpitch = variable!
  686. string facename = "宋体"
  687. long textcolor = 33554432
  688. long backcolor = 16777215
  689. string text = "相关号:"
  690. alignment alignment = right!
  691. boolean focusrectangle = false
  692. end type
  693. type uo_html from uo_html_editor within w_msg_send_mt
  694. integer x = 256
  695. integer y = 564
  696. integer width = 2560
  697. integer height = 912
  698. integer taborder = 60
  699. boolean bringtotop = true
  700. boolean border = true
  701. end type
  702. on uo_html.destroy
  703. call uo_html_editor::destroy
  704. end on
  705. type dw_mt_fj from datawindow within w_msg_send_mt
  706. integer x = 256
  707. integer y = 1572
  708. integer width = 2560
  709. integer height = 908
  710. integer taborder = 20
  711. boolean bringtotop = true
  712. string title = "none"
  713. string dataobject = "dw_msg_mt_fj"
  714. boolean vscrollbar = true
  715. boolean livescroll = true
  716. end type
  717. event clicked;if row > 0 then
  718. this.setrow(row)
  719. if dwo.name = 'del' then
  720. parent.triggerevent('ue_fj_del')
  721. end if
  722. end if
  723. end event
  724. type p_fj_add from picture within w_msg_send_mt
  725. integer x = 261
  726. integer y = 1496
  727. integer width = 73
  728. integer height = 64
  729. boolean bringtotop = true
  730. boolean originalsize = true
  731. string picturename = "mt_fj_add.png"
  732. boolean focusrectangle = false
  733. end type
  734. event clicked;parent.triggerevent('ue_fj_add')
  735. end event
  736. type st_4 from statictext within w_msg_send_mt
  737. integer x = 23
  738. integer y = 576
  739. integer width = 224
  740. integer height = 48
  741. boolean bringtotop = true
  742. integer textsize = -9
  743. integer weight = 400
  744. fontcharset fontcharset = gb2312charset!
  745. fontpitch fontpitch = variable!
  746. string facename = "宋体"
  747. long textcolor = 33554432
  748. long backcolor = 16777215
  749. string text = "正文:"
  750. alignment alignment = right!
  751. boolean focusrectangle = false
  752. end type
  753. type st_fj_add from statictext within w_msg_send_mt
  754. integer x = 352
  755. integer y = 1504
  756. integer width = 256
  757. integer height = 48
  758. boolean bringtotop = true
  759. integer textsize = -9
  760. integer weight = 400
  761. fontcharset fontcharset = gb2312charset!
  762. fontpitch fontpitch = variable!
  763. string facename = "宋体"
  764. long textcolor = 134217856
  765. long backcolor = 16777215
  766. string text = "添加附件"
  767. boolean focusrectangle = false
  768. end type
  769. event clicked;parent.triggerevent('ue_fj_add')
  770. end event
  771. type st_6 from statictext within w_msg_send_mt
  772. integer x = 23
  773. integer y = 1592
  774. integer width = 224
  775. integer height = 48
  776. boolean bringtotop = true
  777. integer textsize = -9
  778. integer weight = 400
  779. fontcharset fontcharset = gb2312charset!
  780. fontpitch fontpitch = variable!
  781. string facename = "宋体"
  782. long textcolor = 33554432
  783. long backcolor = 16777215
  784. string text = "附件:"
  785. alignment alignment = right!
  786. boolean focusrectangle = false
  787. end type
  788. type st_send_suc_w from statictext within w_msg_send_mt
  789. boolean visible = false
  790. integer x = 1285
  791. integer y = 76
  792. integer width = 704
  793. integer height = 236
  794. boolean bringtotop = true
  795. integer textsize = -20
  796. integer weight = 400
  797. fontcharset fontcharset = gb2312charset!
  798. fontpitch fontpitch = fixed!
  799. fontfamily fontfamily = modern!
  800. string facename = "黑体"
  801. long textcolor = 33554432
  802. long backcolor = 15793151
  803. boolean border = true
  804. long bordercolor = 12632256
  805. boolean focusrectangle = false
  806. end type
  807. type ln_bar from line within w_msg_send_mt
  808. long linecolor = 268435456
  809. integer linethickness = 4
  810. integer beginy = 172
  811. integer endx = 3200
  812. integer endy = 172
  813. end type
  814. type ln_bar2 from line within w_msg_send_mt
  815. long linecolor = 16777215
  816. integer linethickness = 4
  817. integer beginx = 14
  818. integer beginy = 176
  819. integer endx = 3278
  820. integer endy = 176
  821. end type
  822. type r_bar from rectangle within w_msg_send_mt
  823. long linecolor = 16777215
  824. integer linethickness = 4
  825. long fillcolor = 1073741824
  826. integer x = 2126
  827. integer y = 40
  828. integer width = 87
  829. integer height = 68
  830. end type
  831. event constructor;this.fillcolor = 14215660
  832. this.linecolor = 14215660
  833. this.x = -1
  834. this.y = -1
  835. this.height = ln_bar.beginy - 5
  836. end event
  837. type st_send_suc from statictext within w_msg_send_mt
  838. boolean visible = false
  839. integer x = 1371
  840. integer y = 136
  841. integer width = 544
  842. integer height = 116
  843. boolean bringtotop = true
  844. integer textsize = -20
  845. integer weight = 400
  846. fontcharset fontcharset = gb2312charset!
  847. fontpitch fontpitch = fixed!
  848. fontfamily fontfamily = modern!
  849. string facename = "黑体"
  850. long textcolor = 33554432
  851. long backcolor = 15793151
  852. string text = "发送成功"
  853. boolean focusrectangle = false
  854. end type