Partilhar via


navigateTo (referência da API do cliente)

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

Observação

Este método é suportado apenas na Interface Unificada.

Sintaxe

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

Parâmetros

Nome Tipo Obrigatório Description
pageInput Objeto Yes Entrada sobre a página para a qual navegar. Consulte o parâmetro pageInput
navegaçãoOpções Objeto Não Opções para navegar até uma página: abrir em linha 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 para executar na navegação bem-sucedida para a página ao navegar em linha e ao fechar a caixa de diálogo ao navegar para uma caixa de diálogo.
errorCallback Função Não Uma função a ser executada quando a operação falha.

parâmetro pageInput

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

Lista de entidades

O objeto entity list contém os seguintes valores.

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) O ID do modo de exibição a ser carregado. Se você não especificá-lo, navega até a exibição principal padrão da tabela.
viewType String (Opcional) Tipo de vista a carregar. Especifique savedquery ou userquery.

Registo de entidade

O objeto de registro de entidade contém os seguintes valores.

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 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 name (opcional).
data Objeto (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 que sã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 querystring personalizados e formContext.data). Parâmetros inválidos causarão um erro.

formId String (Opcional) ID da instância do formulário a ser exibida.
isCrossEntityNavigate booleano (Opcional) Indica se o formulário é navegado a partir 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 comercial a ser exibido no formulário.
processInstanceId String (Opcional) ID da instância do processo comercial a ser exibida no formulário.
relationship Objeto (Opcional) Defina um objeto de relacionamento para exibir os registros relacionados no formulário. Ver relação.
selectedStageId String (Opcional) ID do estágio selecionado na instância do processo de negócios.
tabName String (Opcional) Define o foco na guia do formulário.
Objeto de relacionamento

O objeto relationship, usado no registro Entity, contém os seguintes valores.

Nome Tipo Description
attributeName String Nome da coluna usada para relacionamento.
name String Nome da relação.
navigationPropertyName String Nome da propriedade de navegação para esta relação.
relationshipType Número Tipo de relação. 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:Referencing, 2:AssociationEntity.

Dashboard

O objeto dashboard contém os seguintes valores.

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

Recurso da Web HTML

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

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 personalizada contém os seguintes valores.

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 via Param("entityName").
recordId String (Opcional) ID do registro de tabela a ser disponibilizado na página personalizada via Param("recordId").

O objeto navigationOptions contém os seguintes valores.

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).
Nota: As listas de entidades só podem ser abertas em linha; Os registros de entidade e os recursos da Web podem ser abertos em linha 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 String. Especifique % ou px. O valor predefinido é px.
height Número ou objeto (Opcional) A altura do 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 String. Especifique % ou px. O valor predefinido é 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 lado oposto. 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

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

  • inline: Promise resolve imediatamente e não retorna nenhum valor.

  • diálogo : Promessa é resolvido quando a caixa de diálogo é fechada. Um objeto é passado somente se o pageType = entityRecord e você 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.
    • name: 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 registo de conta existente numa 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 dentro de 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.Navegação
Navegar de e para uma página personalizada (pré-visualização)