Hello everybody,
I'm new in the forum, and I have the same problem. So in the service field, there isn't events handler, but there are some form libraries in use for this fields. The first Library is ServiceAppointment_main_library.js and the code is:
/// <reference path="XrmPageTemplate.js"/>
/// <reference path="general.js"/>
function Form_onsave() {
var the_url = window.opener.document.URL;
var lead_slashes = the_url.indexOf("//");
var domain_start = lead_slashes + 2;
var without_resource = the_url.substring(domain_start, the_url.length);
var next_slash = without_resource.indexOf("/");
var final_domain = without_resource.substring(0, next_slash);
var d = crmForm.all.scheduledstart.DataValue;
//alert(datacrm.ToString('yyyy/mm/dd');
//crmForm.all.customers.DataValue[0].id
var s = d.getYear() + "-";
s += (d.getMonth() + 1) + "-";
s += d.getDate();
window.showModalDialog('http://' + final_domain + '/findapp/findapp.aspx?cliente=' + crmForm.all.customers.DataValue[0].id + '&data=' + s
, '', 'dialogHeight:300px;dialogWidth:600px;center:yes;resizable=yes');
}
function my_onLoad() {
//ConvertToButton('new_bottonecommessa', 'Commessa','75 px', BottoneCommessa_Click,'Cerca Commessa');
ConvertToButton('new_bottonesede', 'Sede', '50 px', BottoneSede_Click, 'Cerca Sede');
}
function BottoneCommessa_Click() {
var nWidth = 800;
var nHeight = 600;
var nLeft;
var nTop;
var lookup = new Array();
lookup = crmForm.all.customers.DataValue;
var cust = (lookup == null) ? '' : lookup[0].id;
var comm = (crmForm.all.new_codice_commessa.DataValue == null) ? '' : crmForm.all.new_codice_commessa.DataValue;
nLeft = (window.screen.width - nWidth) / 2;
nTop = (window.screen.height - nHeight) / 2;
var win = window.open('/Rapportini/new_commessa_select.aspx?ID=' + cust + '&COD=' + comm, 'Commesse', 'top=' + nTop + ',left=' + nLeft + ',height=' + nHeight + ',width=' + nWidth + ',toolbar=no,directories=no,scrollbars=yes,status=no,resizable=yes,location=no'); win.focus();
}
function BottoneSede_Click() {
var nWidth = 800;
var nHeight = 600;
var nLeft;
var nTop;
var lookup = new Array();
lookup = crmForm.all.customers.DataValue;
var cust = (lookup == null) ? '' : lookup[0].id;
var sede = (crmForm.all.new_sede.DataValue == null) ? '' : crmForm.all.new_sede.DataValue;
nLeft = (window.screen.width - nWidth) / 2;
nTop = (window.screen.height - nHeight) / 2;
var win = window.open('/Rapportini/new_sede_select.aspx?ID=' + cust + '&COD=' + sede, 'Sedi', 'top=' + nTop + ',left=' + nLeft + ',height=' + nHeight + ',width=' + nWidth + ',toolbar=no,directories=no,scrollbars=yes,status=no,resizable=yes,location=no'); win.focus();
}
function ConvertToButton(fieldname, buttontext, buttonwidth, clickevent, title) {
//check if object exists; else return
if (document.getElementById(fieldname) == null) {
return;
}
functiontocall = clickevent;
crmForm.all[fieldname].DataValue = buttontext;
crmForm.all[fieldname].readOnly = true;
crmForm.all[fieldname].style.borderRight = "#3366cc 1px solid";
crmForm.all[fieldname].style.paddingRight = "5px";
crmForm.all[fieldname].style.borderTop = "#3366cc 1px solid";
crmForm.all[fieldname].style.paddingLeft = "5px";
crmForm.all[fieldname].style.fontSize = "11px";
crmForm.all[fieldname].style.backgroundImage = "url(/_imgs/btn_rest.gif)";
crmForm.all[fieldname].style.borderLeft = "#3366cc 1px solid";
crmForm.all[fieldname].style.width = buttonwidth;
crmForm.all[fieldname].style.cursor = "pointer";
crmForm.all[fieldname].style.lineHeight = "18px";
crmForm.all[fieldname].style.borderBottom = "#3366cc 1px solid";
crmForm.all[fieldname].style.backgroundRepeat = "repeat-x";
crmForm.all[fieldname].style.fontFamily = "Tahoma";
crmForm.all[fieldname].style.height = "20px";
crmForm.all[fieldname].style.backgroundColor = "#cee7ff";
crmForm.all[fieldname].style.textAlign = "center";
crmForm.all[fieldname].style.overflow = "hidden";
crmForm.all[fieldname].attachEvent("onmousedown", push_button);
crmForm.all[fieldname].attachEvent("onmouseup", release_button);
crmForm.all[fieldname].attachEvent("onclick", functiontocall);
crmForm.all[fieldname].style.lineHeight = "14px";
crmForm.all[fieldname + '_c'].style.visibility = 'hidden';
crmForm.all[fieldname].title = title;
window.focus();
function push_button() {
window.event.srcElement.style.borderWidth = "2px";
window.event.srcElement.style.borderStyle = "groove ridge ridge groove";
window.event.srcElement.style.borderColor = "#3366cc #4080f0 #4080f0 #3366cc";
}
function release_button() {
window.event.srcElement.style.border = "1px solid #3366cc";
}
}
function customers_onchange() {
var AccountID = '';
var attributes = Xrm.Page.data.entity.attributes.get();
for (var i in attributes) {
var attribute = attributes[i];
if (attribute.getName() == 'customers') {
var value = attribute.getValue();
if (value != null) {
for (var j = 0; j < value.length; j++) {
AccountID = value[j].id;
}
}
}
}
if (AccountID != '') {
var strQuery = "accountSet?$select=address1_city&$filter=accountId eq guid'" + AccountID + "'";
generaljs.runRESTQuery(strQuery,
function (result) {
for (var l = 0; l < result.d.results.length; l++) {
Xrm.Page.getAttribute("location").setValue(result.d.results[l].address1_city);
}
},
function (jqXHR, textStatus, err) {
alert(textStatus);
alert(err);
});
}
}
Can you find where is the the error?
So, now I'm using a CRM 2015 TEST enviroment, and it was export from a CRM 2011 enviroment. Maybe the problem is the update.
Thank you so much for reply.