workspace

siham majdalan3
Tera Contributor

Hello, I added this script in workspace client script to modify an appointment from the calendar it displays the calendar well but it does not make the modifications in the table sn_apptmnt_booking_appointment_bookingCapture d’écran 2023-08-04 140812.png

function onClick(g_form) {
var incidentId;
var catId;

var ga = new GlideAjax('LP_ajax_appointments');
ga.addParam('sysparm_name', 'getinfo');
ga.addParam('sysparm_app', g_form.getUniqueValue());
ga.getXML(cancelApp);

function cancelApp(response) {
var answer = response.responseXML.documentElement.getAttribute("answer");
if (answer) {
var parsedObject = JSON.parse(answer);
incidentId = parsedObject.inc_sys_id;
catId = parsedObject.calend;
}

if (incidentId && catId !== "") {
var ga = new GlideAjax('LP_ajax_appointments');
ga.addParam('sysparm_name', 'Check_work_order');
ga.addParam('sysparm_incid', incidentId);
ga.addParam('sysparm_catid', catId);
ga.getXML(ajaxResponse);
} else {
GlideUI.get().addOutputMessage({'msg': getMessage('Please select one calendar'), 'type': 'error'});
}

function ajaxResponse(response) {
var taskId = response.responseXML.documentElement.getAttribute("answer").split(",")[2];
var callerId = response.responseXML.documentElement.getAttribute("answer").split(",")[0];
var catId = response.responseXML.documentElement.getAttribute("answer").split(",")[1];
var calendar = response.responseXML.documentElement.getAttribute("answer").split(",")[3];
var taskTable = "wm_order";

g_modal.sn_fsm_workspace.appointmentBooking({
title: getMessage('Schedule Appointment'),
size: 'lg',
params: {
taskId: taskId,
locationId: g_form.getValue("location"),
openedForId: callerId,
catalogId: catId
},
}).then(function(result) {
g_form.save();
}, function(error) {
g_form.save();
});
}

CustomEvent.observe("appt_booking.submit", function(params) {
var selectedWindow = params.selectedWindow;
if (selectedWindow && selectedWindow.actualStart && selectedWindow.actualEnd) {
var appointmentJSON = {}, catalogId = "";
appointmentJSON.config = params.configObject;

if (params.configObject) {
catalogId = params.configObject.catalogId;
selectedWindow.recordProducer = catalogId;
appointmentJSON.selectedWindow = selectedWindow;
}
var gr = new GlideRecord('sn_apptmnt_booking_appointment_booking');
gr.addEncodedQuery("number=APP0079329"); 
gr.query();
while (gr.next()) {
gr.setValue('start', selectedWindow.actualStart);
gr.setValue('end', selectedWindow.actualEnd);
gr.update();
}
}
});
}
}

1 REPLY 1

siham majdalan3
Tera Contributor

up !!