updateRecord (dokumentacja interfejsu API klienta)

Aktualizuje rekord tabeli.

Składnia

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

Parametry

Name Typ Wymagane Description
entityLogicalName Sznurek Tak Nazwa logiczna tabeli rekordu, który chcesz zaktualizować. Na przykład: account.
id Sznurek Tak Identyfikator GUID rekordu tabeli, który chcesz zaktualizować.
data Object Tak Obiekt JSON zawierający key: value pary, gdzie key jest właściwością tabeli i value jest wartością właściwości, którą chcesz zaktualizować.
Zobacz Przykłady , aby zobaczyć, jak można zdefiniować data obiekt dla różnych scenariuszy aktualizacji.
successCallback Funkcja Nie. Funkcja wywoływana podczas aktualizowania rekordu. Zobacz wartość zwracaną
errorCallback Funkcja Nie. Funkcja wywoływana, gdy operacja zakończy się niepowodzeniem. Obiekt z następującymi właściwościami jest przekazywany:
- errorCode:Numer. Kod błędu jako dodatnia liczba dziesiętna. Na przykład kod błędu udokumentowany jako 0x80040333 zostanie zwrócony jako 2147746611.
- message:Struna. Komunikat o błędzie opisujący problem.

Wartość zwracana

W przypadku powodzenia zwraca obiekt obietnicy do successCallback obiektu z następującymi właściwościami:

Name Typ Description
entityType Sznurek Nazwa logiczna tabeli rekordu.
id Sznurek Identyfikator GUID rekordu.

Przykłady

W tych przykładach użyto niektórych z tych samych obiektów żądań, co pokazano w artykule Aktualizowanie i usuwanie wierszy tabeli przy użyciu internetowego interfejsu API w celu zdefiniowania obiektu danych na potrzeby aktualizowania rekordu tabeli.

Przykład Demonstruje Przykład internetowego interfejsu API
Aktualizacja podstawowa Jak zaktualizować wartości kolumn dla istniejącego rekordu konta. Aktualizacja podstawowa
Aktualizowanie skojarzeń z powiązanymi tabelami Jak zmienić podstawowy kontakt konta przy użyciu polecenia @odata.bind. Kojarzenie z właściwością nawigacji z jedną wartością
Aktualizowanie skojarzeń z powiązanymi tabelami typu Activity Jak skojarzyć zadanie z szansą sprzedaży lub ustawić jego ustawienie Dotyczy wyszukiwania na koncie. Kojarzenie z właściwością nawigacji z jedną wartością
Aktualizowanie skojarzeń dla właściwości nawigacji z wartościami kolekcji Jak skojarzyć i usunąć skojarzenie powiązanych rekordów przy użyciu polecenia Xrm.WebApi.online.execute. Dodawanie rekordu do kolekcji i usuwanie rekordu z kolekcji

Podstawowy przykład aktualizacji

Aktualizuje istniejący rekord konta o identyfikatorze rekordu = 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
    }
);

Aby zaktualizować skojarzenie z powiązanymi rekordami tabeli (odnośnikami), ustaw wartość właściwości nawigacji jednowartościowej przy użyciu @odata.bind adnotacji, aby wskazać inny rekord.

Oto przykład kodu:

Poniższy przykład aktualizuje rekord konta, aby skojarzyć inny rekord kontaktu jako podstawowy kontakt dla konta:

// 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
    }
);

Przestarzała metoda dla scenariusza trybu offline dla urządzeń przenośnych

Uwaga / Notatka

Zamiast używać @odata.bind adnotacji w poprzednim przykładzie, przestarzały obiekt odnośnika z właściwościami uwzględniającymi wielkość liter (logicalname i id) jest nadal obsługiwany w przypadku istniejących dostosowań. Jednak użycie adnotacji @odata.bind jest zalecane zarówno w scenariuszach online, jak i offline, zamiast używania tego przestarzałego obiektu.

W poniższym przykładzie użyto przestarzałej metody w celu zaktualizowania rekordu konta w celu skojarzenia innego rekordu kontaktu jako podstawowego kontaktu dla konta z klientów mobilnych podczas pracy w trybie offline:

// 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
    }
);

Aby zaktualizować skojarzenia do powiązanych tabel typu Activity, ustaw wartość właściwości nawigacji o pojedynczej wartości przy użyciu @odata.bind adnotacji, aby wskazać inny rekord.

Aktualizowanie powiązanej kolumny szansy sprzedaży w zadaniu

// 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
    }
);

Aktualizacja kolumny Dotyczy zadania

// 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
   }
);

Przykład aktualizacji skojarzeń dla właściwości nawigacji z wartościami kolekcji

Użyj interfejsu API Xrm.WebApi.online.execute , aby skojarzyć i usunąć skojarzenie właściwości nawigacji z wartościami kolekcji. Ta funkcja nie jest obsługiwana w scenariuszach trybu offline dla urządzeń przenośnych.

Xrm.WebApi