Kongsi melalui


createRecord (Rujukan API Klien)

Mencipta rekod jadual.

Sintaks

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

Parameter

Nama Jenis Wajib Keterangan
entityLogicalName String Ya Nama logik jadual yang anda mahu buat. Sebagai contoh: account.
data Objek Ya Objek JSON yang mentakrifkan lajur dan nilai untuk rekod jadual baharu. Lihat Contoh
successCallback Function Tidak Fungsi untuk memanggil apabila rekod dibuat. Lihat Nilai Pulangan
errorCallback Function Tidak Fungsi untuk memanggil apabila operasi gagal. Objek dengan sifat berikut diluluskan:
- errorCode:Nombor. Kod ralat sebagai nombor perpuluhan positif. Sebagai contoh, kod ralat yang didokumentasikan sebagai akan 0x80040333 dikembalikan sebagai 2147746611.
- message:Rentetan. Mesej ralat yang menerangkan isu tersebut.

Nilai Pulangan

Apabila berjaya, mengembalikan objek janji kepada dengan successCallback sifat berikut:

Nama Jenis Keterangan
entityType String Nama logik jadual rekod baru.
id String GUID daripada rekod baharu.

Contoh

Contoh ini menggunakan objek permintaan yang sama seperti yang ditunjukkan dalam Cipta baris jadual menggunakan API Web untuk mentakrifkan objek data untuk mencipta rekod jadual.

Mencipta asas

Mencipta rekod akaun sampel.

// define the data to create new account
var data =
    {
        "name": "Sample Account",
        "creditonhold": false,
        "address1_latitude": 47.639583,
        "description": "This is the description of the sample account",
        "revenue": 5000000,
        "accountcategorycode": 1,
        "opendeals_date": new Date("2024-02-03T00:00:00Z")
    }

// create account record
Xrm.WebApi.createRecord("account", data).then(
    function success(result) {
        console.log("Account created with ID: " + result.id);
        // perform operations on record creation
    },
    function (error) {
        console.log(error.message);
        // handle error conditions
    }
);

Nota

Mencipta rekod dengan imej utama tidak disokong untuk mod luar talian. Imej utama hanya boleh ditetapkan dengan cipta dalam mod dalam talian. Lajur imej lain tidak boleh ditetapkan dengan cipta. Ketahui lebih lanjut tentang imej utama

Anda boleh mencipta jadual yang berkaitan antara satu sama lain dengan mentakrifkannya sebagai nilai sifat navigasi. Corak ini dikenali sebagai sisipan dalam. Dalam contoh ini, kami mencipta rekod akaun sampel bersama-sama dengan rekod kenalan utama dan rekod peluang yang berkaitan.

Nota

Mencipta rekod jadual berkaitan dalam satu operasi cipta tidak disokong untuk mod luar talian.

// define data to create primary and related table records
var data =
    {
        "name": "Sample Account",
        "primarycontactid":
        {
            "firstname": "John",
            "lastname": "Smith"
        },
        "opportunity_customer_accounts":
        [
            {
                "name": "Opportunity associated to Sample Account",
                "Opportunity_Tasks":
                [
                    { "subject": "Task associated to opportunity" }
                ]
            }
        ]
    }

// create account record
Xrm.WebApi.createRecord("account", data).then(
    function success(result) {
        console.log("Account created with ID: " + result.id);
        // perform operations on record creation
    },
    function (error) {
        console.log(error.message);
        // handle error conditions
    }
);

Jadual kaitkan pada mencipta rekod baharu

Untuk mengaitkan rekod jadual baharu kepada rekod jadual sedia ada, tetapkan nilai sifat navigasi bernilai tunggal menggunakan @odata.bind anotasi.

Nota

Nama sifat navigasi bernilai tunggal tidak selalunya sama dengan LogicalName atribut untuk carian. Anda harus memastikan anda menggunakan Name nilai atribut elemen dalam NavigationProperty dokumen perkhidmatan $metadata API Web. Maklumat lanjut: Sifat Navigasi API Web

Berikut ialah contoh kod:

Contoh berikut mencipta rekod akaun dan mengaitkannya dengan rekod kenalan sedia ada untuk mengesetkan yang terakhir sebagai kenalan utama untuk rekod akaun baharu:

var data =
    {
        "name": "Sample Account",
        "primarycontactid@odata.bind": "/contacts(465b158c-541c-e511-80d3-3863bb347ba8)"
    }

// create account record
Xrm.WebApi.createRecord("account", data).then(
    function success(result) {
        console.log("Account created with ID: " + result.id);
        // perform operations on record creation
    },
    function (error) {
        console.log(error.message);
        // handle error conditions
    }
);

Kaedah ditamatkan untuk senario luar talian mudah alih

Nota

Daripada menggunakan @odata.bind contoh anotasi yang ditunjukkan sebelum ini, objek carian ditamatkan dengan sifatlogicalname sensitif huruf besar ( dan id) masih disokong untuk penyesuaian sedia ada. Walau bagaimanapun, adalah disyorkan untuk menggunakan @odata.bind anotasi untuk kedua-dua senario dalam talian dan luar talian dan bukannya menggunakan objek yang ditamatkan ini.

Contoh berikut menggunakan kaedah ditamatkan untuk mencipta rekod akaun dan mengaitkannya dengan rekod kenalan sedia ada untuk mengesetkan yang terakhir sebagai kenalan utama bagi rekod akaun baharu daripada klien mudah alih apabila bekerja dalam mod luar talian:

var data =
    {
        "name": "Sample Account",
        "primarycontactid":
        {
            "logicalname": "contact",
            "id": "465b158c-541c-e511-80d3-3863bb347ba8"
        } 
    }

// create account record
Xrm.WebApi.offline.createRecord("account", data).then(
    function success(result) {
        console.log("Account created with ID: " + result.id);
        // perform operations on record creation
    },
    function (error) {
        console.log(error.message);
        // handle error conditions
    }
);

Cipta baris jadual menggunakan API Web
Xrm.WebApi