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.
Abre un formulario de entidade ou un formulario de creación rápida.
Nota
Para abrir un formulario principal como un diálogo, use o método navigateTo . Máis información: Abre o formulario principal nun diálogo mediante a API do cliente
Sintaxe
Xrm.Navigation.openForm(entityFormOptions, formParameters).then(successCallback, errorCallback);
Parámetros
| Nome | Tipo | Necesario | Descripción |
|---|---|---|---|
entityFormOptions |
Obxecto | Si | Opcións de formulario para abrir o formulario. Ver o obxecto entityFormOptions |
formParameters |
Obxecto | Non | Un obxecto de dicionario que pasa parámetros adicionais ao formulario. Parámetros inválidos causan un erro. Para obter información sobre o paso de parámetros a un formulario, consulte Establecer valores de columna usando parámetros pasados a un formulario e Configurar un formulario para aceptar parámetros de cadea de consulta personalizados. |
successCallback |
Function | Non | Unha función para executar cando o rexistro se garda na forma de creación rápida. Esta función acepta un obxecto como parámetro. O obxecto ten un savedEntityReference array coas seguintes propiedades para identificar os rexistros mostrados ou creados:- entityTypeNome lóxico da táboa.- id: Representación de cadea dun valor GUID para o rexistro.- name: O valor da columna principal do rexistro mostrado ou creado.NOTA: - A successCallback función non se executa cando abres un formulario para un rexistro existente ou novo.- A successCallback función só se executa cando se garda un rexistro nun formulario de creación rápida que se abriu usando o método openForm. |
errorCallback |
Function | Non | Función a executar cando a operación falla. |
Obxecto entityFormOptions
O obxecto contén os seguintes valores:
| Nome | Tipo | Necesario | Descripción |
|---|---|---|---|
entityName |
String | Si | Nome lóxico da táboa para a que se amosa o formulario. |
entityId |
String | Non | ID do rexistro da táboa para o que se amosa o formulario. |
formId |
String | Non | ID da instancia do formulario a mostrar. |
cmdbar |
Bool | Non | Indica se debe mostrar a barra de comandos. Se non especificas este parámetro, a barra de comandos móstrase por defecto. Require pasar openInNewWindow o parámetro como verdadeiro. |
createFromEntity |
Busca | Non | Designa un rexistro que proporciona valores predeterminados baseados en valores de columna mapeados. O obxecto de busca ten as seguintes propiedades String: entityType, id, e name (opcional). |
openInNewWindow |
Bool | Non | Indica se mostrar o formulario nunha nova xanela ou nunha nova pestana. Se especificas true e non especificas valores para altura ou ancho, o formulario móstrase nunha nova pestana. Abrir un formulario nunha nova xanela ou nunha nova pestana fai que o renderizado do formulario sexa lento en comparación con abrilo na mesma pestana; considera abrir un formulario no diálogo principal do formulario en vez diso. Esta propiedade actualmente non está soportada para formularios de Creación Rápida, xa que non se poden abrir nunha nova xanela ou pestana. |
height |
Número | Non | Altura da xanela do formulario a mostrar en píxeles. Require pasar openInNewWindow o parámetro como verdadeiro. |
width |
Número | Non | Ancho da xanela do formulario a mostrar en píxeles. Require pasar openInNewWindow o parámetro como verdadeiro. |
navbar |
String | Non | Controla se se mostra a barra de navegación e se a navegación por aplicacións está dispoñible usando as áreas e subáreas definidas no mapa do sitio. Os valores válidos son: on, off, ou entity. Require pasar o parámetro openInNewWindow como true.- on: Aparece a barra de navegación. Este é o comportamento predeterminado se non se usa o parámetro da barra de navegación.- off: A barra de navegación non se mostra. A xente pode navegar usando outros elementos da interface de usuario ou os botóns de volta e adiante.- entity: Nun formulario, só están dispoñibles as opcións de navegación para as táboas relacionadas. Despois de navegar a unha táboa relacionada, móstrase un botón atrás na barra de navegación para permitir volver ao rexistro orixinal. |
relationship |
Obxecto | Non | Definir un obxecto de relación para mostrar os rexistros relacionados no formulario. Ver obxecto de relación |
selectedStageId |
String | Non | ID da fase seleccionada na instancia do proceso de negocio. |
useQuickCreateForm |
Bool | Non | Indica se se debe abrir un formulario de creación rápida. A táboa debe ter activada a opción Permitir creación rápida para que se mostre o formulario de creación rápida e tamén debes engadir a táboa e o formulario de creación rápida á túa aplicación. Se non especificas o valor de useQuickCreateForm, o valor por defecto configúrase en false. |
Obxecto de relación
O obxecto ten os seguintes valores.
| Nome | Tipo | Descripción |
|---|---|---|
attributeName |
String | Nome da columna empregada para a relación. |
name |
String | Nome da columna empregada para a relación. |
navigationPropertyName |
String | Nome da columna empregada para a relación. |
relationshipType |
Número | Tipo de relación. Especifica un dos seguintes valores: - 0:OneToMany - 1:MoitosMoitos |
roleType |
Número | Tipo de rol na relación. Especifica un dos seguintes valores: - 1:Referencias - 2: EntidadeAsociación |
Observacións
Debe usar este método para abrir formularios de táboa ou creación rápida en lugar dos métodos obsoletos Xrm.Utility.openEntityForm e Xrm.Utility.openQuickCreate .
Use setActiveProcess para mostrar un determinado proceso de negocio e setActiveProcessInstance para mostrar unha determinada instancia de proceso de negocio no formulario.
Exemplos
Exemplo 1: Abrir un formulario para o rexistro existente
O seguinte código de exemplo abre un formulario de contacto para mostrar un rexistro de contacto existente:
var entityFormOptions = {};
entityFormOptions["entityName"] = "contact";
entityFormOptions["entityId"] = "00aa00aa-bb11-cc22-dd33-44ee44ee44ee";
// Open the form.
Xrm.Navigation.openForm(entityFormOptions).then(
function (success) {
console.log(success);
},
function (error) {
console.log(error);
});
Exemplo 2: Abrir un formulario para un novo rexistro
O seguinte código de exemplo abre un formulario de contacto con algúns valores pre-enchidos para crear un novo rexistro:
var entityFormOptions = {};
entityFormOptions["entityName"] = "contact";
// Set default values for the Contact form
var formParameters = {};
formParameters["firstname"] = "Sample";
formParameters["lastname"] = "Contact";
formParameters["fullname"] = "Sample Contact";
formParameters["emailaddress1"] = "contact@adventure-works.com";
formParameters["jobtitle"] = "Sr. Marketing Manager";
formParameters["donotemail"] = "1";
formParameters["description"] = "Default values for this record were set programmatically.";
// Set lookup column
formParameters["preferredsystemuserid"] = "3493e403-fc0c-eb11-a813-002248e258e0"; // ID of the user.
formParameters["preferredsystemuseridname"] = "Admin user"; // Name of the user.
// End of set lookup column
// Open the form.
Xrm.Navigation.openForm(entityFormOptions, formParameters).then(
function (success) {
console.log(success);
},
function (error) {
console.log(error);
});
Exemplo 3: Abrir un formulario para un novo rexistro (busca complexa)
O seguinte código de exemplo abre un formulario de actividade con algúns valores pre-preprecheos (incluíndo unha consulta complexa) para crear un novo rexistro:
var entityFormOptions = {};
entityFormOptions["entityName"] = "email";
// Set default values for the Contact form
var formParameters = {};
formParameters["subject"] = "Sample";
formParameters["description"] = "Default values for this record were set programmatically.";
// Set lookup column
formParameters["regardingobjectid"] = "3493e403-fc0c-eb11-a813-002248e258e0"; // ID of the user.
formParameters["regardingobjectidname"] = "Admin user"; // Name of the user.
formParameters["regardingobjectidtype"] = "systemuser"; // Table name.
// End of set lookup column
// Open the form.
Xrm.Navigation.openForm(entityFormOptions, formParameters).then(
function (success) {
console.log(success);
},
function (error) {
console.log(error);
});
Exemplo 4: Abrir un formulario de creación rápida
O seguinte código de exemplo abre un formulario de contacto de creación rápida con algúns valores pre-enchidos:
var entityFormOptions = {};
entityFormOptions["entityName"] = "contact";
entityFormOptions["useQuickCreateForm"] = true;
// Set default values for the Contact form
var formParameters = {};
formParameters["firstname"] = "Sample";
formParameters["lastname"] = "Contact";
formParameters["fullname"] = "Sample Contact";
formParameters["emailaddress1"] = "contact@adventure-works.com";
formParameters["jobtitle"] = "Sr. Marketing Manager";
formParameters["donotemail"] = "1";
formParameters["description"] = "Default values for this record were set programmatically.";
// Set lookup column
formParameters["preferredsystemuserid"] = "3493e403-fc0c-eb11-a813-002248e258e0"; // ID of the user.
formParameters["preferredsystemuseridname"] = "Admin user"; // Name of the user.
formParameters["preferredsystemuseridtype"] = "systemuser"; // Table name.
// End of set lookup column
// Open the form.
Xrm.Navigation.openForm(entityFormOptions, formParameters).then(
function (success) {
console.log(success);
},
function (error) {
console.log(error);
});