如果我要透過TIPTOP透過按鈕寄信給多個使用者的話,我可以怎麼做!!
你應該是要某個按鈕觸發另外一支報表程式,然後又由那支報表程式mail出去
可以去研究那支報表程式參數,應該有類似subject(主旨)、body(內容)、recipient(收件者)
針對recipient把收件人放進去就好(多個收件人我記得用;隔開的樣子)
1.完整的 send_mail function .
2.在call send_mail 前要先定義好: lr_gag.*
供大家參考 !
FUNCTION send_mail(lr_gag)
DEFINE p_gag RECORD LIKE gag_file.*
DEFINE lr_gag RECORD LIKE gag_file.*
DEFINE lr_gah RECORD LIKE gah_file.*
DEFINE lr_mail_info RECORD LIKE gai_file.*
LET lr_gah.gah01 = cl_get_msg_no(g_oga.oga01) # 訊息編號($模組別_單據編號_三位流水號)照著填單號
LET lr_gah.gah02 = lr_gag.gag11 # 指定處理人員 cpf02
LET lr_gah.gah03 = CURRENT YEAR TO SECOND # 產生日期(Year to Second)
LET lr_gah.gah04 = lr_gag.gag10 # 等級(A.緊急 B.重要 C.一般 D.通知 E.紀錄)# A
LET lr_gah.gah05 = g_oga.oga01 # 單據編號 g_oga.oga01
LET lr_gah.gah06 = lr_gag.gag08 # 訊息內容(應該要包含程式代號與功能類別)
LET lr_gah.gah07 = lr_gag.gag09 # 建議執行程式代號 cxmt610
LET lr_gah.gah08 = cl_get_deadline(lr_gag.gag12) # 處理期限(NULL為無限期完成)gag12為數字,天數,1
LET lr_gah.gah09 = NULL # 處理完成日期(NULL為未完成)
LET lr_gah.gah10 = lr_gag.gag13 # 逾期處理時的Mail通知清單
LET lr_gah.gah11 = lr_gag.gag15
IF NOT cl_null(lr_gah.gah02) THEN
INSERT INTO gah_file VALUES(lr_gah.*)
END IF
LET lr_mail_info.gai01 = lr_gah.gah01
LET lr_mail_info.gai01 = lr_gah.gah06[1,35] # 將訊息 SHOW 主旨
LET lr_mail_info.gai02 = lr_gah.gah04
LET lr_mail_info.gai03 = lr_gah.gah06
LET lr_mail_info.gai04 = lr_gah.gah07
LET lr_mail_info.gai05 = lr_gag.gag06 # cpf11 收件人
LET lr_mail_info.gai06 = lr_gag.gag07 # cc 副本
CASE lr_gag.gag05
WHEN '1' #即刻通知
IF (g_trace = 'Y') THEN
DISPLAY "cl_flow_notify : Send mail right now."
END IF
CALL cl_flow_mail("Notify ", lr_mail_info.*)
WHEN '2' #整批通知
INSERT INTO gai_file VALUES(lr_mail_info.*)
END CASE
IF NOT cl_null(lr_gah.gah02) THEN
CALL cl_ppcli_createToDoList(lr_gah.*) #FUN-6B0036 代辦事項拋轉至 Product Portal
END IF
END FUNCTION
樓上大神講的方法都對,但使用時機不太一樣
1.cl_flow_notify() 這是用內建的java mail環境來發信 aooi998來設定報表輸出到指定接收人
2.FUNCTION send_mail(lr_gag) 是使用p_flow來設定維護程式在新增/更改/刪除/確認/過帳/刪除時發信給指定接收人
以上應要先維護好aooi999 預設郵件主機
看要發信的內容是什麼決定用那一支程式
你可以參考一下p_flow針對程式基本的功能做發信通知.
如 確認/過帳/等等等
如果只有通知的話應該是可以滿足,但改成有附件的話就要自己寫呼叫報表背景發出瞜.