SAC scripting for charts

Add or remove measure from Chart:

Chart_1.addMeasure("[]",Feed.ValueAxis);
Chart_1.removeMeasure("[]",Feed.ValueAxis);

Email to selected user from chart:

var ch1 = Chart_1.getSelections();
var sel = Chart_1.getSelections()[0];
if (sel!==undefined)
{
// get label value from chart
        var value = Chart_1.getDataSource().getData(sel).formattedValue;
var subject="?subject=Non Reported Hours : " + value;
var to=ch1[0]["EmployeeUserName"];
var cc="&cc= ";
//var bcc="&bcc= ";
var body="&body=Hi "+ch1[0]["EmployeeName"];
var emailbody= ",%0A%0ANon Reported Hours : " + value + "%0A%0ABR,%0A" + Text_45.getPlainText();
NavigationUtils.openUrl("mailto:" + to + subject + cc +  body + emailbody,true);
}
else
{
Application.showMessage(ApplicationMessageType.Warning, "Please select only one employee from the chart");
}

Email to multiple user using BCC from chart:

var str="";
var selections = Chart_1.getDataSource().getDataSelections();
console.log(selections);
for (var i=0; i<selections.length; i++){
str =str+selections[i].EmployeeUserName+";";
};
console.log(str);
var subject="?subject=Non Reported Hours";
var to=" ";
var cc="&cc= ";
var bcc="&bcc="+str;
var body="&body=";
NavigationUtils.openUrl("mailto:" + to + subject + cc + bcc + body,true);

Email to multiple users using BCC from chart with dimension & measures in body:

var str="";
var str2="";
var selections = Chart_1.getDataSource().getDataSelections();
var arr = Chart_1.getDataSource().getResultSet();
//console.log(arr);
for (var i=0; i<selections.length; i++){
var string = arr[i][Alias.MeasureDimension].formattedValue;
string = string+arr[i][Alias.MeasureDimension].formattedValue;
str =str+selections[i].EmployeeUserName+";";
str2 =str2+selections[i].EmployeeUserName+"-"+arr[i][Alias.MeasureDimension].formattedValue+"\n%0A";
};
//console.log(str);
//console.log(str2);

var subject="?subject=Non Reported Hours";
var to=" ";
var cc="&cc= ";
var bcc="&bcc="+str;
var body="&body="+str2;
NavigationUtils.openUrl("mailto:" + to + subject + cc + bcc + body,true);

Email:

var ch1 = Chart_1.getSelections();
if (ch1[0]["EmployeeUserName"].length<10)
{
//console.log(ch1[0]["EmployeeUserName"].length);
//Text_45.applyText(ch1[0]["EmployeeUserName"]);
var sel = Chart_1.getSelections()[0];
var value = Chart_1.getDataSource().getData(sel).formattedValue;
//Text_45.applyText(value);
//console.log(value);
var subject="?subject=Non Reported Hours : ";
var emailbody= ",%0A%0ANon Reported Hours : " + value + "%0A%0ABR,%0A" + Text_45.getPlainText();
//TO
NavigationUtils.openUrl("mailto:" + ch1[0]["EmployeeUserName"] + subject + value + "&body=Hi " + ch1[0]["EmployeeName"] + emailbody,true);
//CC
//NavigationUtils.openUrl("mailto:" + ch1[0]["EmployeeUserName"] + subject + value + "&cc=email@example.com;email@example.com&body=Hi " + ch1[0]["EmployeeName"] + emailbody,true);
}

Filter measures in chart based on another chart:

var C1Selection = Chart_1.getSelections();
console.log(C1Selection);
var filterList=[""];
if (C1Selection.length > 0){
for (var i=0; i < C1Selection.length; i++){
filterList[i]=C1Selection[i]["@MeasureDimension"];
}
Chart_2.getDataSource().setDimensionFilter("@MeasureDimension",filterList);
}

एक टिप्पणी भेजें

0 टिप्पणियाँ