Jagamisviis:


createRecord (kliendi API viide)

Loob tabelikirje.

Süntaks

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

Parameetrid

Nimi Liik Nõutav Kirjeldus
entityLogicalName String Jah Loodava tabeli loogiline nimi. Näiteks: account.
data Objekt Jah JSON-objekt, mis määratleb uue tabelikirje veerud ja väärtused. Kuva näited
successCallback Function Ei Funktsioon, mida kirje loomisel kutsuda. Kuva tagastusväärtus
errorCallback Function Ei Funktsioon, mida kutsuda, kui toiming nurjub. Edastatakse järgmiste atribuutidega objekt:
- errorCode:Arv. Tõrkekood positiivse kümnendarvuna. Näiteks tagastatakse kujul dokumenteeritud 0x80040333 tõrkekood.2147746611
- message:String. Probleemi kirjeldav tõrketeade.

Tagastatav väärtus

Edu korral tagastab lubaduse objekti järgmise successCallback atribuudiga:

Nimi Liik Kirjeldus
entityType String Uue kirje loogikanimi tabelina.
id String Uue kirje GUID.

Näited

Nendes näidetes kasutatakse samu päringuobjekte, nagu on näidatud artiklis Tabelirea loomine veebi-API abil tabelikirje loomise andmeobjekti määratlemiseks.

Elementaarne loomine

Loob näidiskontokirje.

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

Märkus.

Ühenduseta režiimis ei toetata primaarpildiga kirjete loomist. Esmaseid pilte saab määrata ainult võrgurežiimis loomisega. Muid pildiveerge ei saa luua. Lisateave põhipiltide kohta

Saate luua üksteisega seotud tabeleid, määratledes need navigeerimisatribuutide väärtustena. Seda mustrit nimetatakse sügavaks sisestamiseks. Selles näites loome näidiskontokirje koos esmase kontaktikirje ja seostuva võimalusekirjega.

Märkus.

Ühenduseta režiimis ei toetata seotud tabelikirjete loomist ühes loomistoimingus.

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

Tabelite seostamine uute kirjete loomisel

Uute tabelikirjete seostamiseks olemasolevate tabelikirjetega määrake marginaali abil ühe väärtusega @odata.bind navigeerimisatribuutide väärtus.

Märkus.

Ühe väärtusega navigeerimisatribuutide nimed ei ühti alati LogicalName otsinguatribuudiga. Peaksite veenduma, et kasutate Name veebi API $metadata teenusedokumendi elemendi atribuudi väärtust NavigationProperty . Lisateave: Veebi API navigeerimise atribuudid

Järgmise koodi näide:

Järgmises näites luuakse kontokirje ja seostatakse see olemasoleva kontaktikirjega, et määrata see uue kontokirje esmaseks kontaktiks:

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

Taunitud meetod ühenduseta mobiilsideseadme stsenaariumi jaoks

Märkus.

Varem kuvatud marginaalinäite kasutamise @odata.bind asemel toetatakse olemasolevate kohanduste puhul endiselt iganenud otsinguobjekti , mille tõstutundlikud atribuudid (logicalname ja id). Siiski on soovitatav kasutada @odata.bind selle iganenud objekti asemel marginaale nii võrguühendusega kui ka ühenduseta režiimis.

Järgmises näites kasutatakse kontokirje loomiseks iganenud meetodit ja seostatakse see olemasoleva kontaktikirjega, et määrata see ühenduseta režiimis töötades mobiiliklientide uue kontokirje esmaseks kontaktiks:

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

Tabelirea loomine veebi API abil
Xrm.WebApi