Compartilhar via


navigateTo (referência da API do cliente)

Navega até a lista de tabelas, o registro de tabela, o recurso da Web HTML ou a página personalizada especificada.

Observação

Esse método só tem suporte na Interface Unificada.

Sintaxe

Xrm.Navigation.navigateTo(pageInput,navigationOptions).then(successCallback,errorCallback);

Parâmetros

Nome Tipo Obrigatório Description
pageInput Object Yes Entrada sobre a página para a qual navegar. Consulte o parâmetro pageInput
navigationOptions Object Não Opções para navegar até uma página: se deseja abrir embutido ou em uma caixa de diálogo. Se você não especificar esse parâmetro, a página será aberta embutida por padrão.
successCallback função Não Uma função a ser executada na navegação bem-sucedida para a página ao navegar embutido e ao fechar a caixa de diálogo ao navegar até uma caixa de diálogo.
errorCallback Função Não Uma função a ser executada quando a operação falhar.

parâmetro pageInput

A definição de objeto muda dependendo do tipo de página para navegar até: lista de entidades, registro de entidade, painel, recurso web HTML ou página personalizada.

Lista de entidades

O objeto de lista de entidades contém os valores a seguir.

Nome Tipo Description
pageType String Especifique entitylist.
entityName String O nome lógico da tabela a ser carregada no controle de lista.
viewId String (Opcional) A ID do modo de exibição a ser carregado. Se você não especificá-lo, navegará até o modo de exibição principal padrão da tabela.
viewType String (Opcional) Tipo de exibição a ser carregado. Especifique savedquery ou userquery.

Registro da entidade

O objeto de registro de entidade contém os valores a seguir.

Nome Tipo Description
pageType String Especifique entityrecord.
entityName String Nome lógico da tabela para a qual exibir o formulário.
entityId String (Opcional) ID do registro de tabela para o qual exibir o formulário. Se você não especificar esse valor, o formulário será aberto no modo de criação.
createFromEntity Busca (Opcional) 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, id e nome (opcional).
data Object (Opcional) Um objeto de dicionário que passa parâmetros extras para o formulário.

Os parâmetros podem ser colunas de tabela com valores padrão definidos em novos formulários (consulte Definir valores de coluna usando parâmetros passados para um formulário) ou parâmetros personalizados que são acessados no formulário usando formContext.data.attributes (consulte Configurar um formulário para aceitar parâmetros de querystring personalizados e formContext.data). Parâmetros inválidos causarão um erro.

formId String (Opcional) ID da instância de formulário a ser exibida.
isCrossEntityNavigate booleano (Opcional) Indica se o formulário é navegado de uma tabela diferente usando o fluxo de processo de negócios entre tabelas.
isOfflineSyncError booleano (Opcional) Indica se há erros de sincronização offline.
processId String (Opcional) ID do processo de negócios a ser exibido no formulário.
processInstanceId String (Opcional) ID da instância do processo empresarial a ser exibida no formulário.
relationship Object (Opcional) Defina um objeto de relação para exibir os registros relacionados no formulário. Veja a relação.
selectedStageId String (Opcional) ID do estágio selecionado na instância do processo empresarial.
tabName String (Opcional) Define o foco na guia do formulário.
Objeto Relationship

O objeto de relação, usado no registro Entity, contém os valores a seguir.

Nome Tipo Description
attributeName String Nome da coluna usada para relação.
name String Nome da relação.
navigationPropertyName String Nome da propriedade de navegação para essa 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.

Dashboard

O objeto dashboard contém os valores a seguir.

Nome Tipo Description
pageType String Especifique dashboard.
dashboardId String A ID do painel a ser carregado. Se você não especificar a ID, navegará até o painel padrão.

Recurso da Web HTML

O objeto de recurso da Web HTML contém os valores a seguir.

Nome Tipo Description
pageType String Especifique webresource.
webresourceName String O nome do recurso da Web a ser carregado.
data String (Opcional) Os dados a serem passados para o recurso da Web.

Página personalizada

O objeto de página personalizado contém os valores a seguir.

Nome Tipo Description
pageType String Especifique custom.
name String O nome lógico da página personalizada a ser aberta.
entityName String (Opcional) O nome lógico da tabela a ser disponibilizada na página personalizada por meio de Param("entityName").
recordId String (Opcional) ID do registro da tabela a ser disponibilizado na página personalizada por meio de Param("recordId").

O objeto navigationOptions contém os valores a seguir.

Nome Tipo Description
target Número Especifique 1 para abrir a página embutida; 2 para abrir a página em uma caixa de diálogo.
Além disso, o restante dos valores (largura, altura e posição) são válidos somente se você tiver especificado 2 nesse valor (abrir página em uma caixa de diálogo).
Observação: as listas de entidades só podem ser abertas embutidas; Os registros de entidade e os recursos da Web podem ser abertos embutidos ou em uma caixa de diálogo.
width Número ou objeto (Opcional) A largura da caixa de diálogo. Para especificar a largura em pixels, basta digitar um valor numérico. Para especificar a largura em porcentagem, especifique um objeto do tipo SizeValue com as seguintes propriedades:
- value: o valor numérico do tipo Número.
- unit: a unidade de medida do tipo Cadeia de caracteres. Especifique % ou px. O valor padrão é px.
height Número ou objeto (Opcional) A altura da caixa de diálogo. Para especificar a altura em pixels, basta digitar um valor numérico. Para especificar a largura em porcentagem, especifique um objeto do tipo SizeValue com as seguintes propriedades:
- valor: o valor numérico do tipo Número.
- unidade: a unidade de medida do tipo Cadeia de caracteres. Especifique % ou px. O valor padrão é px.
position Número (Opcional) Especifique 1 para abrir a caixa de diálogo no centro; 2 para abrir a caixa de diálogo no outro lado. O padrão é 1 (centro).
title String (Opcional) O título da caixa de diálogo na parte superior da caixa de diálogo central ou lateral.

Valor de retorno

Retorna uma promessa. O valor passado quando a promessa é resolvida depende do destino:

  • embutido: a promessa é resolvida imediatamente e não retorna nenhum valor.

  • caixa de diálogo: a promessa é resolvida quando a caixa de diálogo é fechada. Um objeto será passado somente se você pageType = entityRecord abriu o formulário no modo de criação. O objeto tem uma savedEntityReference matriz com as seguintes propriedades para identificar o registro de tabela criado:

    • entityType: o nome lógico da tabela.
    • id: uma representação de cadeia de caracteres de um valor GUID para o registro.
    • nome: o valor da coluna primária do registro exibido ou criado.

Example

Exemplo 1: Abrir lista de contas

var pageInput = {
    pageType: "entitylist",
    entityName: "account"
};
Xrm.Navigation.navigateTo(pageInput).then(
    function success() {
            // Run code on success
    },
    function error() {
            // Handle errors
    }
);

Exemplo 2: abrir um registro de conta existente em uma caixa de diálogo

var pageInput = {
    pageType: "entityrecord",
    entityName: "account",
    entityId: "00aa00aa-bb11-cc22-dd33-44ee44ee44ee" //replace with actual ID
};
var navigationOptions = {
    target: 2,
    height: {value: 80, unit:"%"},
    width: {value: 70, unit:"%"},
    position: 1
};
Xrm.Navigation.navigateTo(pageInput, navigationOptions).then(
    function success() {
            // Run code on success
    },
    function error() {
            // Handle errors
    }
);

Exemplo 3: Abrir um formulário de conta no modo de criação em uma caixa de diálogo

var pageInput = {
    pageType: "entityrecord",
    entityName: "account"    
};
var navigationOptions = {
    target: 2,
    height: {value: 80, unit:"%"},
    width: {value: 70, unit:"%"},
    position: 1
};
Xrm.Navigation.navigateTo(pageInput, navigationOptions).then(
    function success(result) {
            console.log("Record created with ID: " + result.savedEntityReference[0].id + 
            " Name: " + result.savedEntityReference[0].name)
            // Handle dialog closed
    },
    function error() {
            // Handle errors
    }
);

Exemplo 4: Abrir um recurso da Web HTML em uma caixa de diálogo

var pageInput = {
    pageType: "webresource",
    webresourceName: "new_sample_webresource.htm"
};
var navigationOptions = {
    target: 2,
    width: 500, // value specified in pixel
    height: 400, // value specified in pixel
    position: 1
};
Xrm.Navigation.navigateTo(pageInput, navigationOptions).then(
    function success() {
            // Run code on success
    },
    function error() {
            // Handle errors
    }
);

Xrm.Navigation
Navegando de e para uma página personalizada (versão prévia)