createRecord (client-API-verwijzing)

Hiermee maakt u een tabelrecord.

Syntaxis

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

Parameterwaarden

Naam Typologie Verplicht Description
entityLogicalName Snaar / Touwtje Yes Logische naam van de tabel die u wilt maken. Voorbeeld: account.
data Object Yes Een JSON-object waarmee de kolommen en waarden voor de nieuwe tabelrecord worden gedefinieerd. Voorbeelden bekijken
successCallback Functie Nee. Een functie om aan te roepen wanneer een record wordt gemaakt. Zie Retourwaarde
errorCallback Functie Nee. Een functie om aan te roepen wanneer de bewerking mislukt. Er wordt een object met de volgende eigenschappen doorgegeven:
- errorCode:Getal. De foutcode als een positief decimaal getal. De foutcode die wordt beschreven zoals 0x80040333 wordt geretourneerd als 2147746611.
- message:Snaar. Een foutmelding die het probleem beschrijft.

Retourwaarde

Retourneert bij succes een promise-object aan de successCallback hand van de volgende eigenschappen:

Naam Typologie Description
entityType Snaar / Touwtje De logische tabelnaam van de nieuwe record.
id Snaar / Touwtje GUID van de nieuwe record.

Voorbeelden

In deze voorbeelden worden dezelfde aanvraagobjecten gebruikt als in het volgende artikel: Een tabelrij maken met behulp van de web-API. In het artikel wordt beschreven hoe u het gegevensobject definieert voor het maken van een tabelrecord.

Example Demonstreert Voorbeeld van web-API
Basis maken Een accountrecord maken met kolomwaarden. Basis maken
Gerelateerde tabelrecords maken samen met de primaire record Een account en gerelateerde contactpersoon, verkoopkans en taakrecords in één bewerking maken. Gerelateerde tabelrijen in één bewerking maken
Tabellen koppelen bij het maken van nieuwe records Een nieuw account koppelen aan een bestaande contactpersoon met behulp van @odata.bind. Tabelrijen koppelen bij maken

Voorbeeld van basis maken

Hiermee maakt u een voorbeeldaccountrecord.

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

Opmerking

Het maken van records met een primaire installatiekopie wordt niet ondersteund voor de offlinemodus. U kunt primaire afbeeldingen alleen instellen met behulp van maken in de onlinemodus. U kunt geen andere afbeeldingskolommen instellen met behulp van maken. Meer informatie over primaire installatiekopieën

U kunt tabellen met elkaar maken door ze te definiëren als waarden voor navigatie-eigenschappen. Dit patroon wordt deep insert genoemd. In dit voorbeeld maakt u een voorbeeldaccountrecord samen met de primaire contactpersoonrecord en een bijbehorende verkoopkansrecord.

Opmerking

Het maken van gerelateerde tabelrecords in één maakbewerking wordt niet ondersteund voor de offlinemodus.

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

Tabellen koppelen bij het maken van een voorbeeld van nieuwe records

Als u nieuwe tabelrecords wilt koppelen aan bestaande tabelrecords, stelt u de waarde van navigatie-eigenschappen met één waarde in met behulp van de @odata.bind aantekening.

Opmerking

De namen van navigatie-eigenschappen met één waarde zijn niet altijd hetzelfde als voor het LogicalName opzoekkenmerk. Zorg ervoor dat u de Name kenmerkwaarde van het element in het NavigationProperty web-API-$metadata servicedocument gebruikt. Zie Eigenschappen van web-API-navigatie voor meer informatie.

Hier volgt een codevoorbeeld:

In het volgende voorbeeld wordt een accountrecord gemaakt en gekoppeld aan een bestaande record voor contactpersonen om deze record in te stellen als de primaire contactpersoon voor de nieuwe accountrecord:

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

Afgeschafte methode voor mobiel offlinescenario

Opmerking

In plaats van het @odata.bind eerder getoonde voorbeeld van aantekeningen te gebruiken, wordt het afgeschafte opzoekobject met hoofdlettergevoelige eigenschappen (logicalname en id) nog steeds ondersteund voor bestaande aanpassingen. Gebruik echter de @odata.bind aantekening voor zowel online- als offlinescenario's in plaats van dit afgeschafte object te gebruiken.

In het volgende voorbeeld wordt de afgeschafte methode gebruikt om een accountrecord te maken en deze te koppelen aan een bestaande contactpersoonrecord om de laatste als primaire contactpersoon voor de nieuwe accountrecord van mobiele clients in te stellen bij het werken in de offlinemodus:

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

Een tabelrij maken met behulp van de web-API
Xrm.WebApi