updateRecord (Client-API-Referenz)

Aktualisiert einen Tabellendatensatz.

Syntax

Xrm.WebApi.updateRecord(entityLogicalName, id, data).then(successCallback, errorCallback);

Parameter

Name typ Erforderlich Beschreibung
entityLogicalName String Ja Der logische Tabellenname des Datensatzes, den Sie aktualisieren wollen. Beispiel: account.
id String Ja GUID des Tabellendatensatzes, den Sie aktualisieren wollen.
data Object Ja Ein JSON-Objekt mit key: value-Paaren, wobei key die Eigenschaft der Tabelle und value der Wert der Eigenschaft ist, die Sie aktualisieren möchten.
Siehe Beispiele weiter unten in diesem Thema, um zu sehen, wie Sie das data-Objekt für verschiedene Aktualisierungsszenarios definieren können.
successCallback Function Nein Eine Funktion zum Aufrufen, wenn ein Datensatz aktualisiert wird. Siehe Rückgabewert
errorCallback Function Nein Eine Funktion zum Aufrufen, wenn der Vorgang fehlschlug. Es wird ein Objekt mit den folgenden Eigenschaften übergeben:
- errorCode: Zahl. Der Fehlercode als positive Dezimalzahl. Der als 0x80040333 dokumentierte Fehlercode wird zum Beispiel als 2147746611 zurückgegeben.
- message: Zeichenfolge Eine Fehlermeldung, die das Problem beschreibt.

Zurückgegebener Wert

Bei Erfolg gibt dies ein Versprechen-Objekt mit den folgenden Eigenschaften an successCallback zurück:

Name typ Beschreibung
entityType String Der logische Tabellenname des Datensatzes.
id String GUID des Datensatzes.

Beispiele

In diesen Beispielen werden einige der gleichen Anforderungsobjekte verwendet, wie in Aktualisieren und löschen Sie Tabellenzeilen mithilfe der Web-API gezeigt, um das Datenobjekt zum Aktualisieren eines Tabellendatensatzes zu definieren.

Example Veranschaulicht Web-API-Beispiel
Grundlegende Aktualisierung Aktualisieren von Spaltenwerten für einen vorhandenen Kontodatensatz Grundlegende Aktualisierung
Aktualisieren von Zuordnungen zu den verknüpften Tabellen So ändern Sie den primären Kontakt eines Kontos mithilfe @odata.bindvon . Zuordnen zu einer einzelwertigen Navigationseigenschaft
Aktualisieren von Zuordnungen zu den zugehörigen Tabellen vom Typ "Aktivität" So ordnen Sie eine Aufgabe einer Verkaufschance zu, oder legen Sie den Entsprechenden Nachschlagevorgang auf ein Konto fest. Zuordnen zu einer einzelwertigen Navigationseigenschaft
Aktualisieren von Zuordnungen für Eigenschaften der Sammlungswertnavigation Zuordnen und Aufheben der Zuordnung verwandter Datensätze mithilfe von Xrm.WebApi.online.execute. Hinzufügen eines Datensatzes zu einer Auflistung und Entfernen eines Datensatzes aus einer Auflistung

Beispiel für einfaches Update

Aktualisiert einen vorhandenen Kontodatensatz mit der Datensatz-ID = 5531d753-95af-e711-a94e-000d3a11e605.

// define the data to update a record
var data =
    {
        "name": "Updated Sample Account ",
        "creditonhold": true,
        "address1_latitude": 47.639583,
        "description": "This is the updated description of the sample account",
        "revenue": 6000000,
        "accountcategorycode": 2
    }
// update the record
Xrm.WebApi.updateRecord("account", "5531d753-95af-e711-a94e-000d3a11e605", data).then(
    function success(result) {
        console.log("Account updated");
        // perform operations on record update
    },
    function (error) {
        console.log(error.message);
        // handle error conditions
    }
);

Um die Zuordnung zu den verknüpften Tabellendatensätzen (Nachschlagevorgängen) zu aktualisieren, legen Sie den Wert von Einzelwert-Navigationseigenschaften mithilfe der @odata.bind Anmerkung fest, um auf einen anderen Datensatz zu verweisen.

Ein weiteres Codebeispiel:

Im folgenden Beispiel wird ein Firmendatensatz aktualisiert und einem anderen Kontaktdatensatz als primärer Kontakt für die Firma zugeordnet:

// define the data to update a record
var data =
    {
        "primarycontactid@odata.bind": "/contacts(61a0e5b9-88df-e311-b8e5-6c3be5a8b200)"
    }
// update the record
Xrm.WebApi.updateRecord("account", "5531d753-95af-e711-a94e-000d3a11e605", data).then(
    function success(result) {
        console.log("Account updated");
        // perform operations on record update
    },
    function (error) {
        console.log(error.message);
        // handle error conditions
    }
);

Veraltete Methode für mobile offline Szenarien

Anmerkung

Anstatt die @odata.bind Anmerkung im vorherigen Beispiel zu verwenden, wird das veraltete Nachschlageobjekt mit eigenschaften mit Groß-/Kleinschreibung (logicalname und id) weiterhin für vorhandene Anpassungen unterstützt. Die Verwendung der @odata.bind Anmerkung wird jedoch für Online- und Offlineszenarien empfohlen, anstatt dieses veraltete Objekt zu verwenden.

Im folgenden Beispiel wird die veraltete Methode verwendet, um einen Firmendatensatzes zu aktualisieren, der mit einem weiteren Kontaktdatensatz als primären Kontakt für die Firma in der mobilen Clients verknüpft ist, während Sie im Offlinemodus arbeiten:

// define the data to update a record
var data =
    {
        "primarycontactid":
        {
            "logicalname": "contact",
            "id": "61a0e5b9-88df-e311-b8e5-6c3be5a8b200"
        }
    }
// update the record
Xrm.WebApi.offline.updateRecord("account", "5531d753-95af-e711-a94e-000d3a11e605", data).then(
    function success(result) {
        console.log("Account updated");
        // perform operations on record update
    },
    function (error) {
        console.log(error.message);
        // handle error conditions
    }
);

Wenn Sie Zuordnungen zu den zugehörigen Tabellen vom Typ "Aktivität" aktualisieren möchten, legen Sie den Wert der einwertigen Navigationseigenschaften fest, indem Sie die @odata.bind Anmerkung verwenden, um auf einen anderen Datensatz zu verweisen.

Aktualisieren Sie die zugehörige Verkaufschancen-Spalte für die Aufgabe

// define the data to update a record
var data =
    {
        "new_relatedopportunities_task@odata.bind": "/opportunities(61a0e5b9-88df-e311-b8e5-6c3be5a8b200)"
    }
// update the record
Xrm.WebApi.updateRecord("task", "5531d753-95af-e711-a94e-000d3a11e605", data).then(
    function success(result) {
        console.log("Task updated");
        // perform operations on record update
    },
    function (error) {
        console.log(error.message);
        // handle error conditions
    }
);

Update bezüglich Spalte auf Aufgabe

// define the data to update a record
var data =
   {
       "regardingobjectid_account_task@odata.bind": "/accounts(61a0e5b9-88df-e311-b8e5-6c3be5a8b200)"
   }
// update the record
Xrm.WebApi.updateRecord("task", "5531d753-95af-e711-a94e-000d3a11e605", data).then(
   function success(result) {
       console.log("Task updated");
       // perform operations on record update
   },
   function (error) {
       console.log(error.message);
       // handle error conditions
   }
);

Aktualisieren von Zuordnungen für Eigenschaften mit Sammlungswertnavigation

Verwenden Sie die Xrm.WebApi.online.execute-API zum Zuordnen und Aufheben der Zuordnung von Sammlungswert-Navigationseigenschaften. Dieses Feature wird für mobile Offlineszenarien nicht unterstützt.

Xrm.WebApi