แชร์ผ่าน


updateRecord (การอ้างอิง API ไคลเอ็นต์)

อัปเดตระเบียนตาราง

ไวยากรณ์

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

พารามิเตอร์

ชื่อ ประเภท ต้องมี คำอธิบาย
entityLogicalName สตริง ใช่ ชื่อตรรกะของตารางที่คุณต้องการอัปเดต ตัวอย่างเช่น: account
id สตริง ใช่ GUID ของระเบียนตารางที่คุณต้องการอัปเดต
data วัตถุ ใช่ วัตถุ JSON ที่มี key: value คู่ โดยที่เป็น key คุณสมบัติของตารางและ value เป็นค่าของคุณสมบัติที่คุณต้องการอัปเดต
ดู ตัวอย่าง เพื่อดูวิธีที่คุณสามารถกําหนด data ออบเจ็กต์สําหรับสถานการณ์การอัปเดตต่าง ๆ
successCallback ฟังก์ชัน ไม่ใช่ ฟังก์ชันที่จะเรียกใช้เมื่อมีการอัปเดตเรกคอร์ด ดู ค่าที่ส่งกลับ
errorCallback ฟังก์ชัน ไม่ใช่ ฟังก์ชันที่จะเรียกใช้เมื่อการดําเนินการล้มเหลว วัตถุที่มีคุณสมบัติต่อไปนี้จะถูกส่งผ่าน:
- errorCode:เลข รหัสข้อผิดพลาดเป็นเลขทศนิยมบวก ตัวอย่างเช่น รหัสข้อผิดพลาดที่จัดทําเป็น 0x80040333 จะถูกส่งกลับเป็น2147746611
- message:เชือก ข้อความแสดงข้อผิดพลาดที่อธิบายปัญหา

ค่าส่งกลับ

ในความสําเร็จ ส่งกลับวัตถุสัญญาไปยัง successCallback ด้วยคุณสมบัติต่อไปนี้:

ชื่อ ประเภท คำอธิบาย
entityType สตริง ชื่อตรรกะตารางของเรกคอร์ด
id สตริง GUID ของระเบียน

ตัวอย่าง

ตัวอย่างเหล่านี้ใช้วัตถุคําขอเดียวกันตามที่สาธิตใน อัปเดตและลบแถวของตารางโดยใช้ WEB API เพื่อกําหนดวัตถุข้อมูลสําหรับการอัปเดตเรกคอร์ดตาราง

การอัปเดตพื้นฐาน

อัปเดตเรกคอร์ดบัญชีที่มีอยู่ด้วยรหัสเรกคอร์ด = 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
    }
);

เมื่อต้องการอัปเดตความสัมพันธ์ไปยังเรกคอร์ดตารางที่เกี่ยวข้อง (ลุคอัพ) ให้ตั้งค่าของคุณสมบัติการนําทางแบบค่าเดียวโดยใช้ @odata.bind คําอธิบายประกอบไปยังเรกคอร์ดอื่น

นี่คือตัวอย่างรหัส:

ตัวอย่างต่อไปนี้จะอัปเดตระเบียนลูกค้าองค์กรเพื่อเชื่อมโยงเรกคอร์ดผู้ติดต่ออื่นเป็นผู้ติดต่อหลักสําหรับบัญชี:

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

วิธีการที่ยกเลิกการสนับสนุนสําหรับสถานการณ์แบบออฟไลน์บนอุปกรณ์เคลื่อนที่

Note

แทนที่จะใช้ @odata.bind ตัวอย่างคําอธิบายประกอบด้านบน ออบเจ็กต์ การค้นหา ที่เลิกใช้แล้วที่มีคุณสมบัติตรงตามตัวพิมพ์ใหญ่-เล็ก (logicalname และ id) จะยังคงได้รับการสนับสนุนสําหรับการเตรียมใช้งานการกําหนดเอง อย่างไรก็ตาม ขอแนะนําให้ใช้ @odata.bind คําอธิบายประกอบสําหรับทั้งสถานการณ์ออนไลน์และออฟไลน์แทนการใช้วัตถุที่ไม่สนับสนุนนี้

ตัวอย่างต่อไปนี้ใช้วิธีการเลิกใช้เพื่ออัปเดตเรกคอร์ดบัญชีเพื่อเชื่อมโยงเรกคอร์ดผู้ติดต่ออื่นเป็นผู้ติดต่อหลักสําหรับบัญชีจากไคลเอ็นต์เคลื่อนที่เมื่อทํางานในโหมดออฟไลน์:

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

เมื่อต้องการอัปเดตความสัมพันธ์กับตารางที่เกี่ยวข้องของชนิดกิจกรรม ให้ตั้งค่าคุณสมบัติการนําทางแบบค่าเดียวโดยใช้ @odata.bind คําอธิบายประกอบไปยังระเบียนอื่น

อัปเดตคอลัมน์โอกาสที่เกี่ยวข้องในงาน

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

อัปเดตคอลัมน์ที่เกี่ยวข้องในงาน

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

อัปเดตความสัมพันธ์สําหรับคุณสมบัติการนําทางที่มีค่าคอลเลกชัน

Xrm.WebApi.online.execute API สามารถใช้เพื่อเชื่อมโยงและแยกคุณสมบัติการนําทางที่มีค่าคอลเลกชันได้ ซึ่ง ไม่ได้ รับการสนับสนุนสําหรับสถานการณ์แบบออฟไลน์บนอุปกรณ์เคลื่อนที่

Xrm.WebApi