Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
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 są używane te same obiekty żądań co następujący artykuł: Tworzenie wiersza tabeli przy użyciu internetowego interfejsu API. W tym artykule pokazano, jak zdefiniować obiekt danych na potrzeby tworzenia rekordu tabeli.
| Przykład | Demonstruje | Przykład internetowego interfejsu API |
|---|---|---|
| Tworzenie podstawowe | Jak utworzyć rekord konta z wartościami kolumn. | Tworzenie podstawowe |
| Tworzenie powiązanych rekordów tabeli wraz z rekordem podstawowym | Jak utworzyć konto i powiązane kontakty, szansę sprzedaży i rekordy zadań w jednej operacji. | Tworzenie powiązanych wierszy tabeli w jednej operacji |
| Kojarzenie tabel podczas tworzenia nowych rekordów | Jak skojarzyć nowe konto z istniejącym kontaktem przy użyciu polecenia @odata.bind. |
Kojarzenie wierszy tabeli podczas tworzenia |
Podstawowy przykład tworzenia
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 przy użyciu polecenia create. Dowiedz się więcej o obrazach podstawowych
Tworzenie powiązanych rekordów tabeli wraz z przykładem rekordu podstawowego
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 utworzysz 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 podczas tworzenia nowych rekordów — przykład
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 interfejsu API sieci Web. Aby uzyskać więcej informacji, zobacz 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ć przedstawionego wcześniej przykładu @odata.bind 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ń. Należy jednak użyć @odata.bind adnotacji zarówno w scenariuszach online, jak i offline, zamiast używać 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