Skip to content
Snippets Groups Projects
onActionProcess.js 2.00 KiB
import("system.translate");
import("system.datetime");
import("system.calendars");
import("system.eMath");
import("system.util");
import("system.db");
import("system.vars");
import("system.neon");
import("system.result");
import("Communication_lib");
import("Calendar_lib");
import("Contact_lib")
import("Sql_lib");

var selectionRowData = vars.get("$sys.selectionRows");

if(selectionRowData[0].VISITRECOMMENDATION_ID)
{
    newWhere("VISITRECOMMENDATION.VISITRECOMMENDATIONID", selectionRowData[0].VISITRECOMMENDATION_ID)
            .updateData(true, "VISITRECOMMENDATION", ["STATUS"], null, ["PLANNED"]);
}

var fullName = ContactUtils.getFullTitleByContactId(selectionRowData[0].CONTACT_ID, true)
var summary = translate.text("Site visit") + " || " + fullName;
var description = fullName;
var standardMail = CommUtil.getStandardMail(selectionRowData[0].CONTACT_ID); 

var startTime = selectionRowData[0].BEGIN_TIME;
var endTime = selectionRowData[0].END_TIME;
var duration = eMath.subInt(endTime, startTime);
var entryDate = datetime.toDate(selectionRowData[0].ENTRYDATE, "dd-MM-yyyy");
startTime = entryDate + " " + datetime.toDate(selectionRowData[0].BEGIN_TIME, "HH:mm:ss.S");
startTime = datetime.toLong(startTime, "dd-MM-yyyy HH:mm:ss.S");

var links = [
    {
        "OBJECT_ID" : selectionRowData[0]["ORGANISATION_CONTACT_ID"],
        "OBJECT_TYPE" : "Organisation"
    },
    {
        "OBJECT_ID" : selectionRowData[0]["CONTACT_ID"],
        "OBJECT_TYPE" : "Person"
    }
];

var params = {
    "Entry_param": JSON.stringify(CalendarUtil.createEntry(summary, description, links, undefined, undefined, Date(Date.toExponential(startTime)),
                                                                Date(Date.toExponential(endTime)), undefined, undefined, undefined, [standardMail], 
                                                                undefined, undefined, undefined))
};

neon.openContext("Appointment", "AppointmentEdit_view", [vars.get("$field.UID")], neon.OPERATINGSTATE_NEW, params, null);
result.string(true);