So kopieren Sie Ihre Datensätze in Microsoft Dynamics 365 CRM mittels JavaScript.

6 Min.
18.09.2019

Blog_Artikel_Datensaetze_Javaskript(Bildquelle: Pixabay)

Hatten Sie in Ihrem Unternehmen schon mal den Fall, dass Sie in Ihrem Dynamics CRM einen oder mehrere Datensätze kopieren mussten? Die Datensätze manuell zu kopieren, kann sehr zeitaufwendig sein. Daher zeigen wir Ihnen in diesem Blogartikel, wie Sie mittels JavaScript mit nur einem Klick einen Datensatz kopieren können.

Immer UpToDate mit dem digital-letter

XRMToolBox herunterladen


Als Erstes müssen Sie die kostenlose XRMToolBox herunterladen. Darin finden Sie zahlreiche Tools, die das Arbeiten mit Microsoft Dynamics CRM einfacher machen. Nachdem Sie die XRMToolBox installiert und sich angemeldet haben, können Sie unter „Plugin-Store“ den FetchXML Builder herunterladen. Der FetchXML Builder dient zum Abfragen der Daten und ist bei der Programmierung sehr hilfreich. Detaillierte Informationen zu den Themen XRMToolBox und FetchXML Builder finden Sie unter diesem Blogartikel: Dynamics CRM und die XrmToolBox

Tipps & Tricks rund um Microsoft Dynamics 365: In unserem Self-Service-Bereich  erhältst Du weitere Informationen zum Thema CRM. »

 

FetchXML Builder öffnen

Als Nächstes öffnen Sie den FetchXML Builder. Auf der linken Seite haben Sie die Option, eine Entität auszuwählen. Das ist die Entität, von der Sie die Daten abrufen möchten.

So kopieren Sie Ihre Datensätze im Microsoft Dynamics CRM mittels JavaScript.

 

Sobald Sie eine Entität ausgewählt haben, werden Ihnen verschiedene Aktionen angezeigt. Wählen Sie „all-attributes“ aus, da wir zum Kopieren eines Datensatzes alle Attribute abrufen wollen.

So kopieren Sie Ihre Datensätze im Microsoft Dynamics CRM mittels JavaScript.

 

Klicken Sie im Nachhinein auf „filter“. Wählen Sie in dem Feld Attribute die ID des Datensatzes aus und vergeben Sie eine beliebige ID – diese wird im Code entsprechend angepasst und durch eine Variable ersetzt.

So kopieren Sie Ihre Datensätze im Microsoft Dynamics CRM mittels JavaScript.

 

Nun können Sie mit F5 die Daten abrufen und unter „View -> FetchXML Javascript Code“ den benötigten JavaScript-Code ansehen.

Anschließend kopieren Sie diesen Code.

So kopieren Sie Ihre Datensätze im Microsoft Dynamics CRM mittels JavaScript.


und ersetzen „id_Account“ durch die ID im FetchXML-Code wie folgt:

So kopieren Sie Ihre Datensätze im Microsoft Dynamics CRM mittels JavaScript.

 

Folgende Funktion ruft das Ergebnis von Ihrem FetchXML in Microsoft Dynamics CRM auf. Mit dem Ergebnis können Sie eine Aktion (in diesem Fall einen neuen Datensatz erstellen) ausführen.

 „result.entities[i]“ ist das Ergebnis des FetchXML vom Typ Objekt und beinhaltet die Werte der Attribute des Datensatzes. Für eine bessere Übersicht definieren Sie „result.entities[i]“ als Variable (data). Diese Werte werden beim Anlegen des neuen Datensatzes benötigt.

So kopieren Sie Ihre Datensätze im Microsoft Dynamics CRM mittels JavaScript.


Funktionen wie Erstellen, Bearbeiten oder Löschen eines Datensatzes und weitere, können mithilfe des CRM Rest Builder erstellt werden. Der CRM Rest Builder ist eine verwaltete Lösung, welche Ihnen die Möglichkeit bietet, WebAPI-Anfragen zu erstellen. Sie können Ihre gewünschte Funktion angeben (siehe nachfolgender Screenshot „Action“) und die WebAPI-Anfrage wird automatisch erstellt. Hier sehen Sie die Oberfläche des CRM Rest Builders:

So kopieren Sie Ihre Datensätze im Microsoft Dynamics CRM mittels JavaScript.


Bei den einfachen Feldern können Sie die Werte der Attribute, genau wie Sie diese abrufen, übertragen. Im Gegensatz zu den einfachen Feldern müssen komplexe Felder – wie Lookup-Felder – zuerst angepasst werden. Sie passen die Werte wie folgt an:

Achtung: Gucken Sie zuerst, welche Lookup-Felder in der Entität vorhanden sind. Füllen Sie alle Felder aus und führen Sie dann im Anschluss die nächsten Schritte aus. Damit verhindern Sie, dass einige Lookup-Felder nicht in Ihrem Code erwähnt werden.

  1. Lesen Sie mithilfe des Debuggers oder der App Fiedler die Werte aus der Variablen „data“ aus. Damit sehen Sie, welche Lookup-Felder übertragen werden.


    So kopieren Sie Ihre Datensätze im Microsoft Dynamics CRM mittels JavaScript.
  2. Erstellen Sie wie im unten geschriebenen Format ein neues Element und weisen Sie die ID vom Lookup-Feld zu. Verwenden Sie an dieser Stelle @odata.bind, um in WebAPI-Anfragen den Wert eines Lookup-Feldes festzulegen.

    So kopieren Sie Ihre Datensätze im Microsoft Dynamics CRM mittels JavaScript.

  3. Löschen Sie die anderen Elemente aus dem Objekt heraus, sobald Sie das neue Element erstellt haben.

    So kopieren Sie Ihre Datensätze im Microsoft Dynamics CRM mittels JavaScript.

 

Nun kann die Variable „data“ in der Create-Funktion verwendet werden.

So kopieren Sie Ihre Datensätze im Microsoft Dynamics CRM mittels JavaScript.

 

Beachten Sie: In der zweiten Zeile steht “/api/data/v9.1/”. Dies variiert je nachdem, welche CRM-Version Sie nutzen und muss individuell angepasst werden. Sie finden dies in Ihrem Microsoft Dynamics CRM unter „Anpassungen -> Entwicklerressourcen“ und können es dort anpassen.

Den gesamten Code können Sie hier abrufen.

 

Ribbon Workbench öffnen

Nun legen Sie nur noch den geschriebenen Code in Ihrem Dynamics CRM an und verknüpfen diesen mit einem beliebigen Button an der Entität „Firma“. Dies ermöglicht Ihnen, mit nur einem Klick den Datensatz zu kopieren.

Für das Verknüpfen einer Webressource und eines Buttons können die Ribbon Workbench im XRMToolBox genutzt werden. 

 

So kopieren Sie Ihre Datensätze im Microsoft Dynamics CRM mittels JavaScript.

 

Sie können entweder einen vorhandenen Button bearbeiten oder einen neuen Button anlegen. Wenn Sie links auf „Button“ klicken und diesen in den Home-, SubGrid- oder Formbereich ziehen, wird ein neuer Button erstellt. Benennen Sie den Button um, fügen Sie ein Iconund ein Command hinzu. Um das Icon hinzuzufügen, müssen Sie es in der richtigen Größe (16*16) in einer Webressource im Microsoft Dynamics CRM speichern. Unter „Actions“ können Sie Ihre JavaScript Webressource mit dem Command verknüpfen. Das war alles!

 

So kopieren Sie Ihre Datensätze im Microsoft Dynamics CRM mittels JavaScript.

 

In den folgenden Screenshots sehen Sie, das mit einem Klick auf „Datensatz kopieren“ der vorhandene Datensatz dupliziert wird.

So kopieren Sie Ihre Datensätze im Microsoft Dynamics CRM mittels JavaScript.

So kopieren Sie Ihre Datensätze im Microsoft Dynamics CRM mittels JavaScript.

 

Sie haben Fragen oder stehen vor ähnlichen Herausforderungen mit Ihrem CRM-System Microsoft Dynamics 365? Dann kontaktieren Sie uns, wir helfen Ihnen gerne weiter!

Support für CRM

 

Diese Artikel zum Arbeiten mit Microsoft Dynamics CRM könnten Sie ebenfalls interessieren:

 

Blog abonnieren