Definir valores de campo usando parâmetros transmitidos a um formulário

 

Publicado: novembro de 2016

Aplicável a: Dynamics CRM 2015

O conteúdo deste tópico pode ser usado para o Atualização do Microsoft Dynamics CRM 2015 e Microsoft Dynamics CRM Online 2015. Você pode configurar os valores padrão para novos registros criados pelos usuários especificando valores do atributo na URL usada para abrir o formulário. Por padrão, esses valores são definidos no formulário, mas podem ser alterados pelos usuários antes de salvar o registro.

Neste tópico

Passar parâmetros para definir valores de registro de campo

Exemplo: Definir o valor do campo da cadeia de caracteres

Configurar valores para campos de pesquisa

Exemplo: Definir o valor dos campos de pesquisa

Exemplo: Definir o valor dos campos de data

Exemplo: Definir o valor dos campos de definição da opção

Exemplo: Use Xrm.Utility.openEntityForm para abrir uma nova janela

Exemplo: Use window.open para abrir uma nova janela

Passar parâmetros para definir valores de registro de campo

Observação

Você pode passar valores de parâmetro para o formulário para definir valores de campo usando a função Xrm.Utility.openEntityForm. Por ver um exemplo, consulte Exemplo: Use Xrm.Utility.openEntityForm para abrir uma nova janela.

Quando abrir um novo formulário com o endereço da URL, você pode incluir argumentos do parâmetro extraqs para definir valores de campo. Os seguintes requisitos devem ser atendidos:

  • Você deve codificar os parâmetros transmitidos no parâmetro extraqs. Para codificar esses parâmetros, use encodeURIComponent.

  • Os nomes dos argumentos da cadeia de caracteres de consulta devem coincidir ou incluir os nomes dos atributos da entidade.

  • Os valores transmitidos devem ser válidos.

  • O valor não pode ser um script.

Qualquer tentativa de transmitir um parâmetro ou um valor inválido resultará em um erro.

  • Para campos booleanos, use um valor inteiro de 0 ou 1 ou um valor de texto de true ou false para definir o valor.

  • Para campos de data e hora, use o valor texto de data.

Exemplo: Definir o valor do campo da cadeia de caracteres

O exemplo a seguir define o valor para o campo Nome de um novo registro de conta para "Nova Conta".

O valor não codificado para o parâmetro extraqs é "name=New Account".

/main.aspx?etn=account&extraqs=name%3DNew%20Account&pagetype=entityrecord

Configurar valores para campos de pesquisa

A tabela a seguir descreve cinco tipos de campos de pesquisa. Para obter exemplos usando campos de pesquisa, consulte Exemplo: Definir o valor dos campos de pesquisa e Exemplo: Use Xrm.Utility.openEntityForm para abrir uma nova janela.

Tipo de Pesquisa

Descrição

consulta simples

Permite uma referência única a um tipo de entidade.

pesquisa do cliente

Permite uma referência única a uma conta ou um registro de contato.

pesquisa do proprietário

Permite uma referência única a um registro da equipe ou do usuário do sistema.

pesquisa de lista de partes

Permite várias referências a várias entidades.

referentes à pesquisa

Permite uma única referência para várias entidades.

As seguintes diretrizes se aplicam ao definir o valor de uma pesquisa em um formulário com um argumento de caracteres da cadeia de consulta:

  • Para pesquisas simples você deve definir o valor e o texto que será exibido na pesquisa. Use o sufixo “name” com o nome do atributo para definir o valor do texto.

    Não use qualquer outro argumento.

  • Para pesquisas do proprietário e cliente, você deve definir o valor e o nome da mesma forma que definiu para pesquisas simples. Além disso, use o sufixo "tipo" para especificar o tipo de entidade. Os valores permitidos são account, contact, systemuser e team.

  • Não é possível definir os valores de partylist ou sobre pesquisas.

Exemplo: Definir o valor dos campos de pesquisa

Para definir valores de campos de pesquisa, use o valor de dados, o valor de nome e apenas para pesquisas do cliente ou proprietário, especifique o valor tipo no respectivo campo. O exemplo a seguir define o campo proprietário para um usuário chamado "Mark Folkerts".

O valor não codificado para o parâmetro extraqs parameter is “ownerid={B8C6E040-656E-DF11-B414-00155DB1891A}&owneridname=Mark Folkerts&owneridtype=systemuser”.

/main.aspx?etn=lead&pagetype=entityrecord&extraqs=ownerid%3D%7bB8C6E040-656E-DF11-B414-00155DB1891A%7d%26owneridname%3DMark%20Folkerts%26owneridtype%3Dsystemuser

O exemplo a seguir instala o campo de contato primário para um usuário chamado "Yvonne McKay". O valor não codificado para o parâmetro extraqs é "primarycontactid=“{43b58571-eefa-e311-80c1-00155d2a68c4}&primarycontactidname=Yvonne McKay (amostra)".

/main.aspx?etn=account&pagetype=entityrecord&extraqs=primarycontactid%3D%7B43b58571-eefa-e311-80c1-00155d2a68c4%7D%26primarycontactidname%3DYvonne%20McKay%20(sample)

Observação

Para obter uma consulta simples esta, não é necessário configurar um valor de tipo.

Exemplo: Definir o valor dos campos de data

A amostra a seguir define o campo Data Est. Fechamento para uma nova oportunidade em 31 de janeiro de 2011. O valor não codificado para o parâmetro extraqs é “estimatedclosedate=01/31/11”.

/main.aspx?etn=opportunity&extraqs=estimatedclosedate%3D01%2F31%2F11&pagetype=entityrecord

Exemplo: Definir o valor dos campos de definição da opção

Para definir o valor para um campo Conjunto de Opções, defina o valor inteiro da opção. O exemplo a seguir define o valor de campo Função para “Tomador de Decisões” em um novo registro de contato.

O valor não codificado para o parâmetro extraqs é “accountrolecode=1”.

/main.aspx?etn=contact&extraqs=accountrolecode%3D1&pagetype=entityrecord

Exemplo: Use Xrm.Utility.openEntityForm para abrir uma nova janela

A amostra a seguir configura os valores padrão em vários campos diferentes e mostra como usar a função Xrm.Utility.openEntityForm. É equivalente ao exemplo anterior que usou o método window.open.

function OpenNewContact() {
 var parameters = {};
 //Set the Parent Customer field value to “Contoso”.
 parameters["parentcustomerid"] = "2878282E-94D6-E111-9B1D-00155D9D700B";
 parameters["parentcustomeridname"] = "Contoso";
 parameters["parentcustomeridtype"] = "account";
 //Set the Address Type to “Primary”.
 parameters["address1_addresstypecode"] = "3";
 //Set text in the Description field.
 parameters["description"] = "Default values for this record were set programmatically.";
 //Set Do not allow E-mails to "Do Not Allow".
 parameters["donotemail"] = "1";

 // Open the window.
 Xrm.Utility.openEntityForm("contact", null, parameters);
}

Exemplo: Use window.open para abrir uma nova janela

Os seguintes exemplos definem os valores padrão em vários campos diferentes e mostra como usar o encodeURIComponent para codificar o valor do parâmetro extraqs. Se você usar o método window.open, é possível controlar os recursos da janela que é aberta.

function OpenNewContact() {
    //Set the Parent Customer field value to “Contoso”.
    var extraqs = "parentcustomerid={F01F3F6D-896E-DF11-B414-00155DB1891A}";
    extraqs += "&parentcustomeridname=Contoso";
    extraqs += "&parentcustomeridtype=account";
    //Set the Address Type to “Primary”.
    extraqs += "&address1_addresstypecode=3";
    //Set text in the Description field.
    extraqs += "&description=Default values for this record were set programatically.";
    //Set Do not allow E-mails to "Do Not Allow".
    extraqs += "&donotemail=1";
    //Set features for how the window will appear.
    var features = "location=no,menubar=no,status=no,toolbar=no";
    // Open the window.
    window.open("/main.aspx?etn=contact&pagetype=entityrecord&extraqs=" +
     encodeURIComponent(extraqs), "_blank", features, false);
}

Confira Também

Abrir formulários, exibições, caixas de diálogo e relatórios com uma URL
openEntityForm
Configurar um formulário para aceitar parâmetros de cadeia de caracteres de consulta personalizados

© 2017 Microsoft. Todos os direitos reservados. Direitos autorais