Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Crea un record di tabella.
Sintassi
Xrm.WebApi.createRecord(entityLogicalName, data).then(successCallback, errorCallback);
Parametri
| Nome | TIPO | Obbligatorio | Description |
|---|---|---|---|
entityLogicalName |
String | Yes | Nome logico della tabella da creare. Ad esempio: account. |
data |
Oggetto | Yes | Oggetto JSON che definisce le colonne e i valori per il nuovo record di tabella. Vedere esempi |
successCallback |
Funzione | NO | Funzione da chiamare quando viene creato un record. Vedere Valore restituito |
errorCallback |
Funzione | NO | Funzione da chiamare quando l'operazione ha esito negativo. Viene passato un oggetto con le proprietà seguenti: - errorCode:Numero. Codice di errore come numero decimale positivo. Ad esempio, il codice di errore documentato come 0x80040333 verrà restituito come 2147746611.- message:Corda. Un messaggio di errore che descrive il problema. |
Valore restituito
In caso di esito positivo, restituisce un oggetto promise a successCallback con le proprietà seguenti:
| Nome | TIPO | Description |
|---|---|---|
entityType |
String | Nome logico della tabella del nuovo record. |
id |
String | GUID del nuovo record. |
Esempi
Questi esempi usano gli stessi oggetti richiesta dell'articolo seguente: Creare una riga di tabella usando l'API Web. L'articolo illustra come definire l'oggetto dati per la creazione di un record di tabella.
| Esempio | Dimostra | Esempio di API Web |
|---|---|---|
| Creazione di base | Come creare un record account con valori di colonna. | Creazione di base |
| Creare record di tabella correlati insieme al record primario | Come creare un account e i relativi record di contatto, opportunità e attività in un'unica operazione. | Creare righe di tabella correlate in un'operazione |
| Associare tabelle durante la creazione di nuovi record | Come associare un nuovo account a un contatto esistente usando @odata.bind. |
Associare righe di tabella alla creazione |
Esempio di creazione di base
Crea un record di account di esempio.
// 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
}
);
Annotazioni
La creazione di record con un'immagine primaria non è supportata per la modalità offline. È possibile impostare le immagini primarie solo usando crea in modalità online. Non è possibile impostare altre colonne di immagine usando create. Altre informazioni sulle immagini primarie
Creare record di tabella correlati insieme all'esempio di record primario
È possibile creare tabelle correlate tra loro definendole come valori delle proprietà di navigazione. Questo modello è noto come inserimento avanzato. In questo esempio viene creato un record di account di esempio insieme al record contatto principale e a un record di opportunità associato.
Annotazioni
La creazione di record di tabella correlati in una singola operazione di creazione non è supportata per la modalità 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
}
);
Associare tabelle durante la creazione di nuovi record di esempio
Per associare nuovi record di tabella ai record di tabella esistenti, impostare il valore delle proprietà di navigazione a valore singolo utilizzando l'annotazione @odata.bind .
Annotazioni
I nomi delle proprietà di spostamento a valore singolo non sono sempre uguali a per l'attributo LogicalName di ricerca. Assicurarsi di usare il Name valore dell'attributo dell'elemento nel documento dell'API NavigationProperty Web $metadata servizio. Per altre informazioni, vedere Proprietà di navigazione dell'API Web.
Ecco un esempio di codice:
L'esempio seguente crea un record account e lo associa a un record di contatto esistente per impostare quest'ultimo come contatto principale per il nuovo record dell'account:
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
}
);
Metodo deprecato per lo scenario offline per dispositivi mobili
Annotazioni
Anziché usare l'esempio di annotazione illustrato in precedenza, l'oggetto @odata.binddi ricerca deprecato con proprietà con distinzione tra maiuscole e minuscole (logicalname e id) è ancora supportato per le personalizzazioni esistenti. Tuttavia, usare l'annotazione @odata.bind sia per gli scenari online che per gli scenari offline anziché usare questo oggetto deprecato.
Nell'esempio seguente viene utilizzato il metodo deprecato per creare un record di account e associarlo a un record di contatto esistente per impostare quest'ultimo come contatto principale per il nuovo record di account dai client mobili quando si lavora in modalità 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
}
);