在 GDC 有提供寄送 e-mail 的功能,直接使用者的電腦寄送 e-mail 。
當使用者執行某一個動作時,就可以發送 e-mail 給相關的人員,可做為溝通連絡的用途。
舉例公司就是當修改料件製程時,有工單生產此料件還未結案時,就發通知給相關人員做檢查。
GDC 是屬於 Client 端的應用程式,所以 e-mail 是由 Client 端來發出,
可以透過 MAPI (如 Outlook) 或是 SMTP (郵件伺服器) 方式寄送。
語法說明:
需要注意 l_buf1、l_buf 變數必需定義為 STRING ,不能為 varchar 的型態,l_result、l_id 為 INTEGER 型態。
CALL ui.Interface.frontCall("WinMail", "Init", [], [l_id]) 宣告。
CALL ui.interface.frontCall("WinMail", "SetSubject", [l_id, l_buf], [l_result]) 設定 e-mail 主旨
CALL ui.interface.frontCall("WinMail", "SetBody", [l_id, l_buf], [l_result]) 設定 e-mail 的內容
CALL ui.Interface.frontCall("WinMail", "AddTo", [l_id, l_buf1, l_buf], [l_result]) 設定多個收件者名稱、e-mail
:
CALL ui.Interface.frontCall("WinMail", "AddCC", [l_id, l_buf1, l_buf], [l_result]) 設定多個複本收件者名稱、e-mail
:
CALL ui.Interface.frontCall("WinMail", "AddBCC", [l_id, l_buf1, l_buf], [l_result]) 設定多個密件複本收件者名稱、e-mail
:
CALL ui.Interface.frontCall("WinMail", "AddAttachment", [l_id, "c:\\mydocs\report.doc"], [result]) 設定多個附件
:
GDC 有二個方式寄送 e-mail ,透過 SMTP 直送發送 e-mail 或是開啟 Client 郵件軟體(如 Outlook)
A. MAPI 透過使用者端的郵件軟體來發送。
CALL ui.Interface.frontCall("WinMail","SendMailMAPI", [l_id], [l_result] )
B. SMTP 直接傳送郵件到郵件主機。
CALL ui.Interface.frontCall("WinMail", "SetFrom", [l_id, l_buf1, l_buf], [l_result]) 設定 e-mail 的寄件者名稱、e-mail
CALL ui.Interface.frontCall("WinMail", "SetSmtp", [l_id, "192.168.1.100"], [l_result]) 設定 SMTP Server
CALL ui.Interface.frontCall("WinMail", "SendMailSMTP", [l_id], [l_result]) 利用 SMTP 發送 e-mail
CALL ui.Interface.frontCall("WinMail", "GetError", [l_id], [l_str]) # 錯誤訊息
CALL ui.Interface.frontCall("WinMail", "Close", [l_id], [l_result]) # 關閉
雖然提供 Client 端的 e-mail 功能,不過使用上就顯的很陽春,只能用純文字發送 e-mail ,不能改為 HTML 樣式,也不能修改 e-mail 的編碼,所以中文字就不能顯示,再來就是 SMTP 沒有提供帳號驗証的功能,必須公司內部郵件主機是不需身份驗証的,所以使用此功能要特別注意。
在 TIPTOP 設定 e-mail 的收件者,儘可能在 aooi998 來設定,日後比較方便維護和紀錄。
在 TIPTOP 設定 e-mail 的收件者,儘可能在 aooi998 來設定,日後比較方便維護和紀錄。
看到您分享的資訊,向您請教。
回覆刪除如下語法,是用哪個變數去接主旨的內容?
CALL ui.interface.frontCall("WinMail", "SetSubject", [l_id, l_buf], [l_result])
l_result 和 l_id 為 INTEGER 型態,l_buf 變數為 STRING 型態,主旨是整數還是字串 ??
刪除您好,是字串唷~
刪除如果LET l_buf = "測試",那l_id需要額外給值嗎?
l_id 是 ui.interface.frontCall 在 Init 時回傳的唯一值,當有多個 Init 時做為區隔用,所以不需給值,l_result 回傳結果成功與否。
刪除