現在、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>