目前,JSL 中的郵件功能允許您將電子郵件發送到有效電子郵件地址列表,但是,它是透過遞增列表並向每個收件人發送單獨的電子郵件來實現的。在電子郵件用戶端需要使用者乾預以允許 JMP 發送電子郵件的電腦上(例如企業環境中 Windows 上的 Outlook),這意味著使用者必須坐下來等待每個收件者的警告訊息,有時需要使用內建的-延遲!這是非常低效的,並且意味著使用郵件功能自動發送報告給感興趣的利害關係人所需的時間與手動將報告複製並貼上到電子郵件中所花費的時間一樣多,甚至更多。
JMP 版本 16.2.0
範例程式碼(假設報表以 png 格式儲存在暫存資料夾中,使用虛擬電子郵件地址):
sites = {"Site-1", "Site-2"};
report_path = Convert File Path( "$TEMP" );
default_dn = "example.com";
maillist = Associative Array(
sites,
{{// Site-1
"support@example.com", "stakeholder1@example.com", "stakeholder2@example.com", "stakeholder3@example.com"},
{// Site-2
"support@example.com", "stakeholder3@example.com", "vpsales@example.com"}}
);
For( i = 1, i <= N Items( sites ), i++,
site = sites[i];
rep_title = Eval Insert( "^site^_Report" );
temp_file_path = Convert File Path( report_path || "/" || rep_title || ".png" );
winmail = New Window( Eval Insert( "Send ^site^ Email" ),
V List Box(
Lineup Box( N Col( 2 ),
Text Box( "To:" ),
H List Box(
lb_to = List Box( maillist[site], <<NLINES> 0,
newl = lb_to << Get Items;
For( i = N Items( newl ), i > 0, i--,
If( Contains( seli, i ),
Remove From( newl, i )
)
);
lb_to << Set Items( newl );
);
)
)
),
Text Box( "Subject:" ),
teb_subj = Text Edit Box( rep_title ),
Text Box( "Body:" ),
teb_body = Text Edit Box(
Eval Insert( "Hello All,\!N\!tPlease find ^rep_title^ attached.\!N\!N" ),
<<SETNLINES></SETNLINES></NLINES>同意這對許多用戶來說是使用電子郵件功能的障礙!最好將其納入此項目的請求中直接發送帶有警報腳本的圖表 - JMP 用戶社區
並使電子郵件功能超級有用!
@gob0b感謝您對郵件功能的輸入。我們正在調查此事,並在有更多資訊可供分享時進行跟進。
你好@gob0b , 謝謝你的建議! 我們已收到您的請求並將予以考慮。
JMP 19 的 Python 連線功能有一個變通方法,就是讓 JMP 啟動一個處理電子郵件的 Python 腳本。
Python Submit File( "send_email.py" );<BR />
其中 send_email.py 是同一目錄下的一個 Python 腳本。