Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Navega a la lista de tabla, registro de tabla, recurso web HTML o página personalizada especificados.
Nota:
Este método solo se admite en la Interfaz unificada.
Syntax
Use la sintaxis siguiente para llamar a Xrm.Navigation.navigateTo().
Xrm.Navigation.navigateTo(pageInput,navigationOptions).then(successCallback,errorCallback);
Parámetros
El método acepta los parámetros siguientes.
| Name | Type | Obligatorio | Description |
|---|---|---|---|
| pageInput | Objeto | Sí | Entrada sobre la página a la que se va a navegar. Consulte Parámetro pageInput |
| navigationOptions | Objeto | Ninguno | Opciones para navegar a una página: si se abre en línea o en un cuadro de diálogo. Si no especifica este parámetro, el método abre la página insertada de forma predeterminada. |
successCallback |
function | Ninguno | Función que se va a ejecutar después de una navegación insertada correcta o cuando se cierra un cuadro de diálogo. Para los tipos de página que admiten devolver un valor, la función recibe ese valor como argumento. |
errorCallback |
Función | Ninguno | Función que se ejecuta cuando la operación produce un error. |
Parámetro pageInput
La definición de objeto cambia en función del tipo de página para navegar a: lista de entidades, registro de entidad, panel, recurso web HTML, página personalizada o página generativa.
Lista de entidades
El objeto lista de entidades contiene los siguientes valores.
| Name | Type | Description |
|---|---|---|
pageType |
Cuerda | Especifique entitylist. |
entityName |
Cuerda | El nombre lógico de la tabla que se cargará en el control de lista. |
viewId |
Cuerda | (Opcional) El id. de la vista a cargar. Si no lo especifica, la aplicación navega a la vista principal predeterminada de la tabla. |
viewType |
Cuerda | (Opcional) Tipo de vista a cargar. Especifique savedquery o userquery. |
Registro de entidad
El objeto registro de entidades contiene los siguientes valores.
| Name | Type | Description |
|---|---|---|
pageType |
Cuerda | Especifique entityrecord. |
entityName |
Cuerda | Nombre lógico de la tabla para la que se va a mostrar el formulario. |
entityId |
Cuerda | (Opcional) El Identificador de la tabla de registro para el que se va a mostrar el formulario. Si no especifica este valor, el formulario se abre en modo de creación. |
createFromEntity |
Buscar | (Opcional) Designa un registro que proporciona valores predeterminados basados en valores de columna asignados. El objeto de búsqueda tiene las siguientes propiedades de cadena: entityType, id. y name (opcional). |
data |
Objeto | (Opcional) Un objeto de diccionario que pasa parámetros adicionales al formulario.
Los parámetros pueden ser columnas de tabla con valores predeterminados que se establecen en formularios nuevos (consulte Establecer valores de columna usando parámetros pasados a un formulario) o parámetros personalizados a los que se accede en el formulario mediante |
formId |
Cuerda | (Opcional) Identificador de la instancia de formulario que se va a mostrar. |
isCrossEntityNavigate |
Boolean | (Opcional) Indica si se navega al formulario desde una tabla diferente usando la tabla cruzada flujo de proceso de negocio. |
isOfflineSyncError |
Boolean | (Opcional) Indica si hay errores de sincronización sin conexión. |
processId |
Cuerda | (Opcional) Identificador del proceso de negocio que se va a mostrar en el formulario. |
processInstanceId |
Cuerda | (Opcional) Identificador de la instancia de proceso de negocio que se va a mostrar en el formulario. |
relationship |
Objeto | (Opcional) Defina un objeto de relación para mostrar los registros relacionados en el formulario. Vea relationship. |
selectedStageId |
Cuerda | (Opcional) Id. de la fase seleccionada en la instancia de proceso de negocio. |
tabName |
Cuerda | (Opcional) Establece el foco en la pestaña del formulario. |
Objeto de relación
El objeto de relación, utilizado en el registro de entidades, contiene los siguientes valores.
| Name | Type | Description |
|---|---|---|
attributeName |
Cuerda | Nombre de la columna utilizada para la relación. |
name |
Cuerda | Nombre de la relación. |
navigationPropertyName |
Cuerda | Nombre de la propiedad de navegación de esta relación. |
relationshipType |
Número | Tipo de relación. Especifique uno de los siguientes valores: 0:OneToMany, 1:ManyToMany. |
roleType |
Número | Tipo de rol en la relación. Especifique uno de los siguientes valores: 1:Referencing, 2:AssociationEntity. |
Panel de información
Use este objeto como pageInput parámetro cuando desee abrir un panel.
El objeto del panel contiene los siguientes valores.
| Name | Type | Description |
|---|---|---|
pageType |
Cuerda | Especifique dashboard. |
dashboardId |
Cuerda | Id. del panel que se va a cargar. Si no especifica el identificador, la aplicación navega al panel predeterminado. |
Recurso web HTML
Use este objeto como pageInput parámetro cuando desee abrir un recurso web HTML.
El objeto del recurso web HTML contiene los siguientes valores.
| Name | Type | Description |
|---|---|---|
pageType |
Cuerda | Especifique webresource. |
webresourceName |
Cuerda | Nombre del recurso web que se va a cargar. |
data |
Cuerda | (Opcional) Los datos para pasar al recurso web. |
Página personalizada
Use este objeto como parámetro pageInput cuando desee abrir una página personalizada.
El objeto de página personalizado contiene los valores siguientes.
| Name | Type | Description |
|---|---|---|
pageType |
Cuerda | Especifique custom. |
name |
Cuerda | El nombre lógico de la página personalizada a abrir. |
entityName |
Cuerda | (Opcional) El nombre lógico de la tabla que estará disponible en la página personalizada a través de Param("entityName"). |
recordId |
Cuerda | (Opcional) El id. del registro de la tabla que estará disponible en la página personalizada a través de Param("recordId"). |
Página generativa
Use este objeto como pageInput parámetro cuando desee abrir una página generativa.
Para usar recordId, entityNameo data, la página generativa de destino debe configurarse para aceptar parámetros de entrada.
El objeto de página generativa contiene los siguientes valores.
| Name | Type | Description |
|---|---|---|
pageType |
Cuerda | Especifique generative. |
pageId |
Cuerda | Identificador de la página generativa que se va a abrir. |
recordId |
Cuerda | (Opcional) GUID de un registro que se va a pasar a la página. |
entityName |
Cuerda | (Opcional) Nombre lógico de la tabla de Dataverse correspondiente a recordId. |
data |
Objeto | (Opcional) Objeto JSON que contiene parámetros personalizados adicionales que se van a pasar a la página. |
Parámetro navigationOptions
El navigationOptions objeto contiene los valores siguientes.
| Name | Type | Description |
|---|---|---|
target |
Número | Especifique 1 para abrir la página insertada. Especifique 2 para abrir la página en un cuadro de diálogo.Además, el resto de los valores (ancho, alto y posición) solo son válidos si se especifica 2 en este valor (abrir página en un cuadro de diálogo).Nota: Solo puede abrir listas de entidades insertadas. Puede abrir registros de entidades, recursos web y páginas generativas insertadas o en un cuadro de diálogo. |
width |
Número u objeto | (Opcional) Ancho del cuadro de diálogo. Para especificar el ancho en píxeles, escriba un valor numérico. Para especificar el ancho en porcentaje, especifique un objeto de tipo SizeValue con las siguientes propiedades: - value: El valor numérico de tipo Número.- unit: La unidad de medida de tipo Cadena. Especifique % o px. El valor predeterminado es px. |
height |
Número u objeto | (Opcional) Altura del cuadro de diálogo. Para especificar el alto en píxeles, escriba un valor numérico. Para especificar el ancho en porcentaje, especifique un objeto de tipo SizeValue con las siguientes propiedades: - value: El valor numérico de tipo Número. - unit: La unidad de medida de tipo Cadena. Especifique % o px. El valor predeterminado es px. |
position |
Número | (Opcional) Especifique 1 para abrir el cuadro de diálogo en el centro; 2 para abrir el cuadro de diálogo en el lado lejano. El valor predeterminado es 1 (centro). |
title |
Cuerda | (Opcional) El título del cuadro de diálogo en la parte superior del cuadro de diálogo central o lateral. |
Valor devuelto
Devuelve una promesa. El valor pasado cuando la promesa se resuelve depende del tipo de página y destino:
- Insertado: la promesa se resuelve cuando se completa la navegación y no devuelve un valor.
-
Cuadro de diálogo: la promesa se resuelve cuando se cierra el diálogo.
- Para un registro de entidad abierto en modo de creación, la promesa se resuelve con un objeto que contiene una
savedEntityReferencematriz. - Para una página generativa, la promesa se resuelve con un objeto cuya
returnValuepropiedad contiene el valor pasado más recientemente adataApi.setPageOutput(value). Si la página generativa no establece un valor de salida, al cerrar el cuadro de diálogo, seleccione Cancelar o el botón Cerrar dará como resultado un valor indefinidoreturnValue. - Otros tipos de página no devuelven un valor cuando se cierra el cuadro de diálogo.
- Para un registro de entidad abierto en modo de creación, la promesa se resuelve con un objeto que contiene una
La savedEntityReference matriz devuelta para un registro de entidad contiene estas propiedades:
- entityType: el nombre lógico de la tabla.
- id: representación de cadena del GUID de registro.
- name: el valor de la columna principal del registro.
Ejemplo
En los ejemplos siguientes se muestra cómo navegar a diferentes tipos de página insertados y en un cuadro de diálogo.
Ejemplo 1: lista de cuentas abiertas
Abre la lista de cuentas principal insertada.
var pageInput = {
pageType: "entitylist",
entityName: "account"
};
Xrm.Navigation.navigateTo(pageInput).then(
function success() {
// Run code on success
},
function error() {
// Handle errors
}
);
Ejemplo 2: abrir un registro de cuenta existente dentro de un cuadro de diálogo
Abre un formulario de cuenta existente dentro de un cuadro 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
}
);
Ejemplo 3: abrir un formulario de cuenta en modo de creación dentro de un cuadro de diálogo
Abre un formulario de cuenta en modo de creación dentro de un cuadro de diálogo y devuelve la referencia de registro creada cuando se guarda.
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
}
);
Ejemplo 4: abrir un recurso web HTML en un cuadro de diálogo
Abre un recurso web HTML en un cuadro 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
}
);
Ejemplo 5: Abrir una página generativa con parámetros de entrada en un cuadro de diálogo
Abre una página generativa como un cuadro de diálogo centrado, pasando un identificador de registro, un nombre de entidad y parámetros de datos personalizados. La página generativa debe configurarse para aceptar estos parámetros.
var pageInput = {
pageType: "generative",
pageId: "<genPageID>", // replace with the ID of your generative page
recordId: "00aa00aa-bb11-cc22-dd33-44ee44ee44ee", // replace with actual record GUID
entityName: "account",
data: { status: "active", category: "premium" }
};
var navigationOptions = {
target: 2,
height: {value: 80, unit: "%"},
width: {value: 70, unit: "%"},
position: 1
};
Xrm.Navigation.navigateTo(pageInput, navigationOptions).then(
function success(result) {
const output = result?.returnValue;
if (output) {
console.log("Value returned by generative page:", output);
}
},
function error(error) {
console.log(error.message);
}
);
Artículos relacionados
Xrm.Navigation
Navegar a y desde una página generativa
Navegar hacia y desde una página personalizada (versión preliminar)