Aracılığıyla paylaş


updateRecord (İstemci API başvurusu)

Tablo kaydını güncelleştirir.

Sözdizimi

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

Parametreler

İsim Türü Gerekli Description
entityLogicalName String Yes Güncelleştirmek istediğiniz kaydın tablo mantıksal adı. Örneğin: account.
id String Yes Güncelleştirmek istediğiniz tablo kaydının GUID'i.
data Nesne Yes Çiftler içeren key: value bir JSON nesnesi; burada key tablonun özelliğidir ve value güncelleştirmek istediğiniz özelliğin değeridir.
Çeşitli güncelleştirme senaryoları için nesneyi nasıl tanımlayabileceğinizi data görmek için örneklere bakın.
successCallback İşlev Hayı Bir kayıt güncelleştirildiğinde çağrılacak bir işlev. Bkz . Dönüş Değeri
errorCallback İşlev Hayı İşlem başarısız olduğunda çağrılacak bir işlev. Aşağıdaki özelliklere sahip bir nesne geçirilir:
- errorCode:Sayı. Pozitif ondalık sayı olarak hata kodu. Örneğin, olarak 0x80040333 belgelenen hata kodu olarak 2147746611döndürülür.
- message:Dizgi. Sorunu açıklayan bir hata mesajı.

Dönüş Değeri

Başarılı olduğunda, aşağıdaki özelliklere sahip öğesine successCallback bir promise nesnesi döndürür:

İsim Türü Description
entityType String Kaydın tablo mantıksal adı.
id String Kaydın GUID değeri.

Örnekler

Bu örneklerde, tablo kaydını güncelleştirmek için veri nesnesini tanımlamak üzere Web API'sini kullanarak tablo satırlarını güncelleştirme ve silme bölümünde gösterildiği gibi aynı istek nesnelerinden bazıları kullanılır.

Temel güncelleştirme

Kayıt kimliği = 5531d753-95af-e711-a94e-000d3a11e605olan mevcut bir hesap kaydını güncelleştirir.

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

İlişkili tablo kayıtlarıyla (aramalar) ilişkilendirmeyi güncelleştirmek için, ek açıklamayı @odata.bind kullanarak tek değerli gezinti özelliklerinin değerini başka bir kayda ayarlayın.

Kod örneği aşağıda verilmiştir:

Aşağıdaki örnek, başka bir ilgili kişi kaydını firmanın birincil ilgili kişisi olarak ilişkilendirmek için bir hesap kaydını güncelleştirir:

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

Mobil çevrimdışı senaryo için kullanım dışı yöntemi

Uyarı

Yukarıdaki ek açıklama örneğini kullanmak @odata.bind yerine, büyük/küçük harfe duyarlı özelliklere (logicalname ve id) sahip kullanım dışı bırakılan arama nesnesi, özelleştirmelerin yenilenmesi için hala desteklenmektedir. Ancak, bu kullanım dışı nesne yerine hem çevrimiçi hem de çevrimdışı senaryo için ek açıklama kullanılması önerilir @odata.bind .

Aşağıdaki örnek, çevrimdışı modda çalışırken mobil istemcilerden gelen hesabın birincil ilgili kişisi olarak başka bir ilgili kişi kaydını ilişkilendirmek üzere bir hesap kaydını güncelleştirmek için kullanım dışı yöntemini kullanır:

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

İlişkilendirmeyi Etkinlik türündeki ilgili tablolarla güncelleştirmek için, ek açıklamayı kullanarak @odata.bind tek değerli gezinti özelliklerinin değerini başka bir kayda ayarlayın.

Görevdeki ilgili fırsat sütununu güncelleştirme

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

Görevdeki İlgili sütunu güncelleştir

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

Koleksiyon değerli gezinti özellikleri için ilişkilendirmeleri güncelleştirme

Xrm.WebApi.online.execute API'si koleksiyon değerli gezinti özelliklerini ilişkilendirmek ve ilişkilendirmek için kullanılabilir. Bu, mobil çevrimdışı senaryolar için DESTEKLENMEZ .

Xrm.WebApi