1

Wir haben nur eine unserer Dynamics CRM-Instanz von CRM Online 2015 CRM Online Upgrade 2016.Probleme in einigen javascripts nach zu Dynamics CRM Online Upgrade 2016

Während ich Rest der Funktionalitäten sehen konnte einwandfrei funktioniert, gibt es ein großer Show-Stopper für uns in einem bestimmten Szenario:

im Folgenden finden Sie den Code aus einer Java-Script-Funktion, die bei laden der Seite aufgerufen wird:

function SetDefaultValuesInLookup() 
{ 
    Xrm.Page.getAttribute("new_applicationcontactid").setValue([{ id: 
records.new_Contact.Id, name: records.new_Contact.Name, entityType: records.new_Contact.LogicalName }]); 

    ........ 

    Xrm.Page.getAttribute("new_applicationtype").setValue(1000002); 
} 

function ShowHideFields() 
{ 
    var applicationtype = Xrm.Page.getAttribute("new_applicationtype").getValue(); 

    ............... 

} 

Um SetDefaultValuesInLookup Funktion setzt einen Wert für das Klo zusammenfassen kup-Feld "Application Contact ID" im Formular und legt auch "new_applicationtype" basierend auf einer Bedingung fest.

Diese beiden Funktionen sind im Formular laden registriert, um in einer Bestellung ausgeführt zu werden. Das Problem ist jedoch, dass - manchmal die Methode SetDefaultValuesInLookup abrupt beendet nach der ersten getAttribute Wert ausgeführt wird, oder wenn die Methode die Ausführung beendet, dann erhalten wir keinen Wert im Feld new_applicationtype. Oder manchmal funktionieren beide Methoden richtig.

Ich habe versucht, den Code zu debuggen, und konnte sehen, dass wir bekommen, Id, Name und LogicalName Eigenschaften werden jedes Mal gefüllt, so gibt es kein Problem auf dieser Ebene.

Ich frage mich, ob es hier etwas gibt, das in CRM 2016 nicht unterstützt wird? Auch diese Funktionalität funktioniert immer noch perfekt in Online 2015

+1

Wissen Sie etwas an der Konsole angemeldet haben? Fehler können sein? Oftmals scheinen "Dinge" manchmal korrekt zu funktionieren, da die Fehler oft durch Daten verursacht werden (das heißt Code prüft nicht auf Null) usw. – dynamicallyCRM

+0

Klingt nach einer Wettlaufbedingung. Wie haben Sie Ihre Onload-Funktion über das Menü oder per Code registriert? Wenn Letzteres wahr ist, könnten Sie diesen Code hier teilen? Erhalten Sie in anderen Browsern (Chrome, Firefox) dieselben unberechenbaren Ergebnisse? –

Antwort

1

mit unten angegebenen Code Versuchen Sie, es funktionierte für mich

var object = new Array(); 
 
\t \t object[0] = new Object(); 
 
\t \t object[0].id = records.new_Contact.Id; 
 
\t \t object[0].name = records.new_Contact.Name; 
 
\t \t object[0].entityType = records.new_Contact.LogicalName; 
 
\t \t Xrm.Page.getAttribute(fieldName).setValue(object);