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