Bagikan melalui


createRecord (Referensi API Klien)

Membuat rekaman tabel.

Syntax

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

Parameter-parameternya

Nama Tipe Diperlukan Description
entityLogicalName String Yes Nama logis tabel yang ingin Anda buat. Misalnya: account.
data Objek Yes Objek JSON yang menentukan kolom dan nilai untuk rekaman tabel baru. Lihat Contoh
successCallback Function Tidak. Fungsi untuk memanggil saat rekaman dibuat. Lihat Mengembalikan Nilai
errorCallback Function Tidak. Fungsi untuk memanggil saat operasi gagal. Objek dengan properti berikut diteruskan:
- errorCode:Angka. Kode kesalahan sebagai angka desimal positif. Misalnya, kode kesalahan yang didokumenkan sebagai 0x80040333 akan dikembalikan sebagai 2147746611.
- message:Tali. Pesan kesalahan yang menjelaskan masalah.

Mengembalikan Nilai

Setelah berhasil, mengembalikan objek janji ke successCallback dengan properti berikut:

Nama Tipe Description
entityType String Nama logis tabel dari rekaman baru.
id String GUID rekaman baru.

Examples

Contoh ini menggunakan objek permintaan yang sama seperti yang ditunjukkan dalam Membuat baris tabel menggunakan API Web untuk menentukan objek data untuk membuat rekaman tabel.

Pembuatan dasar

Membuat rekaman akun 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

Membuat rekaman dengan gambar utama tidak didukung untuk mode offline. Gambar utama hanya dapat diatur dengan buat dalam mode online. Kolom gambar lain tidak dapat diatur dengan buat. Pelajari selengkapnya tentang Gambar utama

Anda dapat membuat tabel yang terkait satu sama lain dengan menentukannya sebagai nilai properti navigasi. Pola ini dikenal sebagai penyisipan mendalam. Dalam contoh ini, kami membuat rekaman akun sampel bersama dengan rekaman kontak utama dan rekaman peluang terkait.

Nota

Membuat rekaman tabel terkait dalam operasi pembuatan tunggal tidak didukung untuk mode offline.

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

Mengaitkan tabel tentang membuat rekaman baru

Untuk mengaitkan rekaman tabel baru ke rekaman tabel yang sudah ada, atur nilai properti navigasi bernilai tunggal menggunakan @odata.bind anotasi.

Nota

Nama properti navigasi bernilai tunggal tidak selalu sama dengan LogicalName untuk atribut pencarian. Anda harus memastikan Anda menggunakan Name nilai NavigationProperty atribut elemen dalam dokumen layanan api web $metadata. Informasi selengkapnya: Properti Navigasi API Web

Berikut adalah contoh kode:

Contoh berikut membuat catatan akun, dan mengaitkannya ke rekaman kontak yang sudah ada untuk mengatur yang terakhir sebagai kontak utama untuk catatan akun baru:

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

Metode yang tidak digunakan lagi untuk skenario offline seluler

Nota

Alih-alih menggunakan @odata.bind contoh anotasi yang ditampilkan sebelumnya, objek pencarian yang tidak digunakan lagi dengan properti peka huruf besar/kecil (logicalname dan id) masih didukung untuk kustomisasi yang ada. Namun, disarankan untuk menggunakan @odata.bind anotasi untuk skenario online dan offline alih-alih menggunakan objek yang tidak digunakan lagi ini.

Contoh berikut menggunakan metode yang tidak digunakan lagi untuk membuat rekaman akun, dan mengaitkannya ke rekaman kontak yang ada untuk mengatur yang terakhir sebagai kontak utama untuk rekaman akun baru dari klien seluler saat bekerja dalam mode offline:

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

Membuat baris tabel menggunakan API Web
Xrm.WebApi