Sdílet prostřednictvím


createRecord (referenční dokumentace k rozhraní API klienta)

Vytvoří záznam tabulky.

Syntaxe

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

Parametry

Název Typ Povinné Description
entityLogicalName String Ano Logický název tabulky, kterou chcete vytvořit. Například: account.
data Object Ano Objekt JSON definující sloupce a hodnoty nového záznamu tabulky. Viz příklady
successCallback Funkce Ne Funkce, která se má volat při vytvoření záznamu. Zobrazit vrácenou hodnotu
errorCallback Funkce Ne Funkce, která se má volat v případě selhání operace. Předá se objekt s následujícími vlastnostmi:
- errorCode:Číslo. Kód chyby jako kladné desetinné číslo. Například kód chyby zdokumentovaný tak, jak 0x80040333 bude vrácen jako 2147746611.
- message:Řetězec. Chybová zpráva popisující problém.

Návratová hodnota

Při úspěchu vrátí objekt příslibu successCallback s následujícími vlastnostmi:

Název Typ Description
entityType String Logický název tabulky nového záznamu.
id String IDENTIFIKÁTOR GUID nového záznamu.

Examples

Tyto příklady používají stejné objekty požadavku, jak je znázorněno v části Vytvoření řádku tabulky pomocí webového rozhraní API k definování datového objektu pro vytvoření záznamu tabulky.

Základní vytvoření

Vytvoří ukázkový záznam účtu.

// 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áření záznamů s primární imagí není v offline režimu podporováno. Primární image je možné nastavit pouze pomocí funkce Vytvořit v online režimu. Jiné sloupce obrázků nelze nastavit vytvořením. Další informace o primárních imagích

Tabulky, které spolu souvisejí, můžete vytvářet tak, že je definujete jako hodnoty vlastností navigace. Tento vzor se označuje jako hluboké vkládání. V tomto příkladu vytvoříme ukázkový záznam účtu společně s primárním záznamem kontaktu a přidruženým záznamem příležitosti.

Poznámka:

Vytváření souvisejících záznamů tabulek v rámci jedné operace vytvoření není podporováno v offline režimu.

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

Přidružení tabulek při vytváření nových záznamů

Chcete-li přidružit nové záznamy tabulky k existujícím záznamům tabulky, nastavte hodnotu vlastností navigace s jednou hodnotou pomocí poznámky @odata.bind .

Poznámka:

Názvy vlastností navigace s jednou hodnotou nejsou vždy stejné jako LogicalName u vyhledávacího atributu. Měli byste se ujistit, že používáte Name hodnotu atributu NavigationProperty elementu v dokumentu služby webového rozhraní API $metadata. Další informace: Vlastnosti navigace webového rozhraní API

Tady je příklad kódu:

Následující příklad vytvoří záznam účtu a přidruží ho k existujícímu záznamu kontaktu, který nastaví druhý záznam jako primární kontakt pro nový záznam účtu:

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

Zastaralá metoda pro scénář offline pro mobilní zařízení

Poznámka:

Místo použití @odata.bind dříve zobrazeného příkladu poznámek se zastaralým vyhledávacím objektem s vlastnostmi citlivými na malá a velká písmena (logicalname a id) se u stávajících přizpůsobení stále podporuje. Místo použití tohoto zastaralého objektu se ale doporučuje používat @odata.bind poznámky pro online i offline scénář.

Následující příklad používá zastaralou metodu k vytvoření záznamu účtu a jeho přidružení k existujícímu záznamu kontaktu k nastavení druhého kontaktu jako primárního kontaktu pro nový záznam účtu z mobilních klientů při práci v offline režimu:

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

Vytvoření řádku tabulky pomocí webového rozhraní API
Xrm.WebApi