Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Tworzy rekord tabeli.
Składnia
Xrm.WebApi.createRecord(entityLogicalName, data).then(successCallback, errorCallback);
Parametry
| Name | Typ | Wymagane | Description |
|---|---|---|---|
entityLogicalName |
Sznurek | Tak | Logiczna nazwa tabeli, którą chcesz utworzyć. Na przykład: account. |
data |
Object | Tak | Obiekt JSON definiujący kolumny i wartości dla nowego rekordu tabeli. Zobacz przykłady |
successCallback |
Funkcja | Nie. | Funkcja wywoływana podczas tworzenia rekordu. Zobacz wartość zwracaną |
errorCallback |
Funkcja | Nie. | Funkcja wywoływana, gdy operacja zakończy się niepowodzeniem. Obiekt z następującymi właściwościami jest przekazywany: - errorCode:Numer. Kod błędu jako dodatnia liczba dziesiętna. Na przykład kod błędu udokumentowany jako 0x80040333 zostanie zwrócony jako 2147746611.- message:Struna. Komunikat o błędzie opisujący problem. |
Wartość zwracana
W przypadku powodzenia zwraca obiekt obietnicy do successCallback obiektu z następującymi właściwościami:
| Name | Typ | Description |
|---|---|---|
entityType |
Sznurek | Nazwa logiczna tabeli nowego rekordu. |
id |
Sznurek | Identyfikator GUID nowego rekordu. |
Przykłady
W tych przykładach użyto tych samych obiektów żądań, jak pokazano w artykule Tworzenie wiersza tabeli przy użyciu internetowego interfejsu API do zdefiniowania obiektu danych na potrzeby tworzenia rekordu tabeli.
Tworzenie podstawowe
Tworzy przykładowy rekord 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
}
);
Uwaga / Notatka
Tworzenie rekordów z obrazem podstawowym nie jest obsługiwane w trybie offline. Obrazy podstawowe można ustawić tylko przy użyciu funkcji tworzenia w trybie online. Nie można ustawić innych kolumn obrazu za pomocą polecenia create. Dowiedz się więcej o obrazach podstawowych
Tworzenie powiązanych rekordów tabeli wraz z rekordem podstawowym
Tabele powiązane ze sobą można tworzyć, definiując je jako wartości właściwości nawigacji. Ten wzorzec jest nazywany głębokim wstawianiem. W tym przykładzie utworzymy przykładowy rekord konta wraz z podstawowym rekordem kontaktu i skojarzonym rekordem szansy sprzedaży.
Uwaga / Notatka
Tworzenie powiązanych rekordów tabeli w ramach jednej operacji tworzenia nie jest obsługiwane w trybie 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
}
);
Kojarzenie tabel z tworzeniem nowych rekordów
Aby skojarzyć nowe rekordy tabeli z istniejącymi rekordami tabeli, ustaw wartość właściwości nawigacji jednowartościowej przy użyciu @odata.bind adnotacji.
Uwaga / Notatka
Nazwy właściwości nawigacji jednowartościowej nie zawsze są takie same jak LogicalName dla atrybutu odnośnika. Upewnij się, że używasz Name wartości atrybutu NavigationProperty elementu w dokumencie usługi $metadata internetowego interfejsu API. Więcej informacji: Właściwości nawigacji interfejsu API sieci Web
Oto przykład kodu:
Poniższy przykład tworzy rekord konta i kojarzy go z istniejącym rekordem kontaktu, aby ustawić ten ostatni jako podstawowy kontakt dla nowego rekordu 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
}
);
Przestarzała metoda dla scenariusza trybu offline dla urządzeń przenośnych
Uwaga / Notatka
Zamiast używać @odata.bind przedstawionego wcześniej przykładu adnotacji, przestarzały obiekt odnośnika z właściwościami uwzględniającymi wielkość liter (logicalname i id) jest nadal obsługiwany w przypadku istniejących dostosowań. Zaleca się jednak używanie @odata.bind adnotacji zarówno w scenariuszu online, jak i offline, zamiast używania tego przestarzałego obiektu.
W poniższym przykładzie użyto przestarzałej metody do utworzenia rekordu konta i skojarzenia go z istniejącym rekordem kontaktu w celu ustawienia tego ostatniego jako podstawowego kontaktu dla nowego rekordu konta z klientów mobilnych podczas pracy w trybie 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
}
);
Powiązane artykuły
Tworzenie wiersza tabeli przy użyciu internetowego interfejsu API
Xrm.WebApi