Nota
O acceso a esta páxina require autorización. Pode tentar iniciar sesión ou modificar os directorios.
O acceso a esta páxina require autorización. Pode tentar modificar os directorios.
Crea un rexistro de táboa.
Sintaxe
Xrm.WebApi.createRecord(entityLogicalName, data).then(successCallback, errorCallback);
Parámetros
| Nome | Tipo | Obrigatorio | Descrición |
|---|---|---|---|
entityLogicalName |
String | Si | Nome lóxico da táboa que se quere crear. Por exemplo: account. |
data |
Obxecto | Si | Obxecto JSON que define as columnas e os valores do novo rexistro da táboa. Ver exemplos |
successCallback |
Function | Non | Función a chamar cando se crea un rexistro. Ver valor de devolución |
errorCallback |
Function | Non | Unha función a chamar cando a operación falla. Pasa un obxecto coas seguintes propiedades: - errorCode: Número. O código de erro é un número decimal positivo. Por exemplo, o código de erro documentado como 0x80040333 será devolto como 2147746611.- message: String. Mensaxe de erro que describe o problema. |
Devolver valor
En caso de éxito, devolve un obxecto de promesa coas successCallback seguintes propiedades:
| Nome | Tipo | Descrición |
|---|---|---|
entityType |
String | O nome lóxico da táboa do novo rexistro. |
id |
String | Guía do novo disco. |
Exemplos
Estes exemplos usan os mesmos obxectos de solicitude que se mostra en Crear unha fila de táboa usando a API Web para definir o obxecto de datos para crear un rexistro de táboa.
Creación básica
Crea un rexistro de conta de mostra.
// 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
}
);
Nota
A creación de rexistros cunha imaxe principal non está soportada para o modo sen conexión. As imaxes primarias só se poden configurar con crear en modo en liña. Non se poden establecer outras columnas de imaxes con create. Ler máis acerca de Imaxes primarias
Crear rexistros de táboa relacionados xunto co rexistro principal
Pode crear táboas relacionadas entre si definíndoas como valores de propiedades de navegación. Este patrón coñécese como inserción profunda. Neste exemplo, creamos un rexistro de conta de mostra xunto co rexistro de contacto principal e un rexistro de oportunidade asociado.
Nota
A creación de rexistros de táboas relacionadas nunha soa operación de creación non está soportada para o modo sen conexión.
// 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
}
);
Asociar táboas na creación de novos rexistros
Para asociar novos rexistros de táboa a rexistros de táboa existentes, estableza o valor das propiedades de navegación dun só valor usando a @odata.bind anotación.
Nota
Os nomes das propiedades de navegación dun só valor non sempre son os mesmos que para LogicalName o atributo de busca. Debes asegurarte de que estás a usar o Name valor do atributo do NavigationProperty elemento no documento de servizo $metadata API web. Máis información: Propiedades de navegación da API web
Aquí tes un exemplo de código:
O seguinte exemplo crea un rexistro de conta e aséciao a un rexistro de contacto existente para establecer este último como contacto principal para o novo rexistro de conta:
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
}
);
Método obsoleto para o escenario de conexión móbil
Nota
En lugar de usar @odata.bind o exemplo de anotación mostrado anteriormente, o obxecto de busca obsoleto con propiedades sensibles entre maiúsculas e minúsculas (logicalname e id) aínda está soportado para as personalizacións existentes. Non obstante, recoméndase usar @odata.bind a anotación para escenarios en liña e fóra de liña en lugar de usar este obxecto obsoleto.
O seguinte exemplo usa o método obsoleto para crear un rexistro de conta e asocialo a un rexistro de contacto existente para establecer este último como o contacto principal para o novo rexistro de conta de clientes móbiles cando se traballa en modo sen conexión:
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
}
);