Zdieľať cez


createRecord (odkaz na rozhranie API klienta)

Vytvorí záznam tabuľky.

Syntax

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

Parametre

Meno Typ Požaduje sa Popis
entityLogicalName String Áno Logický názov tabuľky, ktorú chcete vytvoriť. Napríklad: account.
data Namietať Áno Objekt JSON definujúci stĺpce a hodnoty pre nový záznam tabuľky. Zobraziť príklady
successCallback Function Nie Funkcia, ktorá sa volá pri vytvorení záznamu. Zobraziť vrátenú hodnotu
errorCallback Function Nie Funkcia, ktorá sa volá v prípade zlyhania operácie. Odovzdá sa objekt s nasledujúcimi vlastnosťami:
- errorCode:Číslo. Kód chyby ako kladné desatinné číslo. Napríklad kód chyby zdokumentovaný ako 0x80040333 sa vráti ako 2147746611.
- message:Povrázok. Chybové hlásenie popisujúce problém.

Vrátená hodnota

Po úspešnom dokončení vráti objekt sľubu successCallback s nasledujúcimi vlastnosťami:

Meno Typ Popis
entityType String Logický názov tabuľky nového záznamu.
id String Identifikátor GUID nového záznamu.

Príklady

Tieto príklady používajú rovnaké objekty požiadavky, ako je to znázornené v téme Vytvorenie riadka tabuľky pomocou webového rozhrania API na definovanie údajového objektu na vytvorenie záznamu tabuľky.

Základné vytvorenie

Vytvorí vzorový záznam konta.

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

Poznámka

Vytváranie záznamov s primárnym obrázkom nie je podporované v režime offline. Primárne obrázky je možné nastaviť iba s vytvorením v online režime. Ostatné stĺpce obrázkov nie je možné nastaviť pomocou funkcie vytvoriť. Ďalšie informácie o primárnych obrázkoch

Môžete vytvárať tabuľky, ktoré navzájom súvisia, a to definovaním týchto tabuliek ako hodnôt vlastností navigácie. Tento vzor je známy ako vloženie do hĺbky. V tomto príklade vytvoríme vzorový záznam konta spolu s primárnym záznamom kontaktu a priradeným záznamom príležitosti.

Poznámka

Vytváranie súvisiacich záznamov tabuľky v rámci jednej operácie vytvorenia nie je podporované v režime 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
    }
);

Priradenie tabuliek na vytváranie nových záznamov

Ak chcete priradiť nové záznamy tabuľky k existujúcim záznamom tabuľky, nastavte hodnotu vlastností navigácie s jednou hodnotou pomocou @odata.bind komentára.

Poznámka

Názvy vlastností navigácie s jednou hodnotou nie sú vždy rovnaké ako LogicalName pre atribút vyhľadávania. Mali by ste sa uistiť, že používate hodnotu atribútu Name prvku NavigationProperty vo webovom rozhraní API $metadata dokumente služby. Ďalšie informácie: Vlastnosti navigácie webového rozhrania API

Tu je príklad kódu:

Nasledujúci príklad vytvorí záznam konta a priradí ho k existujúcemu záznamu kontaktu, aby ho nastavil ako primárny kontakt pre nový záznam konta:

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

Zastaraná metóda pre scenár mobilnej offline

Poznámka

Namiesto používania @odata.bind predtým zobrazeného príkladu poznámok je zastaraný objekt vyhľadávania s vlastnosťami rozlišujúcich veľké a malé písmená (logicalname a id) stále podporovaný pre existujúce prispôsobenia. Odporúča sa však namiesto používania tohto zastaraného objektu použiť @odata.bind komentár pre scenár online aj offline.

Nasledujúci príklad používa zastaranú metódu na vytvorenie záznamu konta a priradí ho k existujúcemu záznamu kontaktu, aby ho nastavil ako primárny kontakt pre nový záznam konta z mobilných klientov pri práci v režime 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
    }
);

Vytvorenie riadka tabuľky pomocou webového rozhrania API
Xrm.WebApi