Actualmente, la función Correo en JSL le permite enviar correo electrónico a una lista de direcciones de correo electrónico válidas; sin embargo, lo hace incrementando la lista y enviando un correo electrónico individual a cada destinatario.En una máquina donde el cliente de correo electrónico requiere la intervención del usuario para permitir que JMP envíe un correo electrónico (por ejemplo, Outlook en Windows en un entorno corporativo), esto significa que el usuario debe sentarse y esperar un mensaje de advertencia para cada destinatario, a veces con un -¡retrasado!Esto es muy ineficiente y significa que enviar un informe a las partes interesadas requiere tanto tiempo, si no más, cuando se utiliza automáticamente la función de correo que copiar y pegar manualmente el informe en un correo electrónico.
JMP versión 16.2.0
Código de ejemplo (supone informes guardados en la carpeta temporal como pngs, usa direcciones de correo electrónico ficticias):
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>