Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Abre um formulário de entidade ou um formulário de criação rápida.
Observação
Para abrir um formulário principal como uma caixa de diálogo, use o método navigateTo . Mais informações: Abrir o formulário principal em uma caixa de diálogo usando a API do cliente
Sintaxe
Xrm.Navigation.openForm(entityFormOptions, formParameters).then(successCallback, errorCallback);
Parâmetros
| Nome | Tipo | Obrigatório | Description |
|---|---|---|---|
entityFormOptions |
Object | Yes | Opções de formulário para abrir o formulário. Consulte o objeto entityFormOptions |
formParameters |
Object | Não | Um objeto de dicionário que passa parâmetros extras para o formulário. Parâmetros inválidos causarão um erro. Para obter informações sobre como passar parâmetros para um formulário, consulte Definir valores de coluna usando parâmetros passados para um formulário e configurar um formulário para aceitar parâmetros de querystring personalizados. |
successCallback |
Função | Não | Uma função a ser executada quando o registro é salvo no formulário de criação rápida. Essa função é passada por um objeto como um parâmetro. O objeto tem uma savedEntityReference matriz com as seguintes propriedades para identificar os registros exibidos ou criados:- entityType: o nome lógico da tabela.- id: uma representação de cadeia de caracteres de um valor GUID para o registro.- name: o valor da coluna primária do registro exibido ou criado.OBSERVAÇÃO: - A successCallback função não é executada quando você abre um formulário para um registro existente ou novo.- A successCallback função é executada somente quando você salva um registro em um formulário de criação rápida que foi aberto usando o método openForm. |
errorCallback |
Função | Não | Uma função a ser executada quando a operação falhar. |
Objeto entityFormOptions
O objeto contém os seguintes valores:
| Nome | Tipo | Obrigatório | Description |
|---|---|---|---|
entityName |
String | Yes | Nome lógico da tabela para a qual exibir o formulário. |
entityId |
String | Não | ID do registro de tabela para o qual exibir o formulário. |
formId |
String | Não | ID da instância de formulário a ser exibida. |
cmdbar |
Bool | Não | Indica se a barra de comandos deve ser exibida. Se você não especificar esse parâmetro, a barra de comandos será exibida por padrão. Requer a passagem openInNewWindow de parâmetro como true. |
createFromEntity |
Busca | Não | Designa um registro que fornecerá valores padrão com base em valores de coluna mapeados. O objeto de pesquisa tem as seguintes propriedades string: entityType, ide name (opcional). |
openInNewWindow |
Bool | Não | Indica se o formulário deve ser exibido em uma nova janela ou em uma nova guia. Se você especificar true e não especificar valores de altura ou largura, o formulário será exibido em uma nova guia. Abrir um formulário em uma nova janela ou uma nova guia torna a renderização do formulário lenta em comparação com a abertura do formulário na mesma guia; considere abrir um formulário na caixa de diálogo de formulário principal. No momento, essa propriedade não tem suporte para formulários de Criação Rápida, pois eles não podem ser abertos em uma nova janela ou guia. |
height |
Número | Não | Altura da janela do formulário a ser exibida em pixels. Requer a passagem openInNewWindow de parâmetro como true. |
width |
Número | Não | Largura da janela do formulário a ser exibida em pixels. Requer a passagem openInNewWindow de parâmetro como true. |
navbar |
String | Não | Controla se a barra de navegação é exibida e se a navegação do aplicativo está disponível usando as áreas e subáreas definidas no mapa do site. Os valores válidos são: on, offou entity. Requer a passagem do parâmetro openInNewWindow como true.- on: a barra de navegação é exibida. Esse é o comportamento padrão se o parâmetro navbar não for usado.- off: a barra de navegação não é exibida. As pessoas podem navegar usando outros elementos da interface do usuário ou os botões voltar e avançar.- entity: em um formulário, somente as opções de navegação para tabelas relacionadas estão disponíveis. Depois de navegar até uma tabela relacionada, um botão voltar é exibido na barra de navegação para permitir o retorno ao registro original. |
relationship |
Object | Não | Defina um objeto de relação para exibir os registros relacionados no formulário. Ver objeto de relação |
selectedStageId |
String | Não | ID do estágio selecionado na instância do processo empresarial. |
useQuickCreateForm |
Bool | Não | Indica se um formulário de criação rápida deve ser aberto. A tabela deve ter a opção Permitir Criação Rápida habilitada para que o formulário de criação rápida seja exibido e você também deve adicionar a tabela e o formulário de criação rápida ao seu aplicativo. Se você não especificar o valor, useQuickCreateFormo padrão será definido como false. |
objeto relationship
O objeto tem os seguintes valores.
| Nome | Tipo | Description |
|---|---|---|
attributeName |
String | Nome da coluna usada para relação. |
name |
String | Nome da coluna usada para relação. |
navigationPropertyName |
String | Nome da coluna usada para relação. |
relationshipType |
Número | Tipo de relacionamento. Especifique um dos seguintes valores: - 0:OneToMany - 1:ManyToMany |
roleType |
Número | Tipo de função na relação. Especifique um dos seguintes valores: - 1:Referenciando - 2:AssociationEntity |
Observações
Você deve usar esse método para abrir formulários de tabela ou criação rápida em vez dos métodos Xrm.Utility.openEntityForm e Xrm.Utility.openQuickCreate preteridos.
Use setActiveProcess para exibir um processo comercial específico e definirActiveProcessInstance para exibir uma instância de processo comercial específica no formulário.
Exemplos
Exemplo 1: Abrir um formulário para registro existente
O código de exemplo a seguir abre um formulário de contato para exibir um registro de contato 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 um formulário para novo registro
O código de exemplo a seguir abre um formulário de contato com alguns valores pré-preenchidos para criar um novo registro:
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 um formulário para novo registro (pesquisa complexa)
O código de exemplo a seguir abre um formulário de atividade com alguns valores pré-preenchidos (incluindo uma pesquisa complexa) para criar um novo registro:
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 um formulário de criação rápida
O código de exemplo a seguir abre um formulário de contato de criação rápida com alguns valores pré-preenchidos:
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);
});