Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Consente di passare all'elenco di tabelle, al record di tabella, alla risorsa Web HTML o alla pagina personalizzata specificata.
Note
Questo metodo è supportato solo nell'interfaccia unificata.
Sintassi
Usare la sintassi seguente per chiamare Xrm.Navigation.navigateTo().
Xrm.Navigation.navigateTo(pageInput,navigationOptions).then(successCallback,errorCallback);
Parameters
Il metodo accetta i parametri seguenti.
| Name | Type | Obbligatorio | Description |
|---|---|---|---|
| pageInput | Oggetto | Sì | Input sulla pagina a cui passare. Vedere il parametro pageInput |
| navigationOptions | Oggetto | No | Opzioni per passare a una pagina: aprire inline o in una finestra di dialogo. Se non si specifica questo parametro, il metodo apre la pagina inline per impostazione predefinita. |
successCallback |
funzione | No | Funzione da eseguire dopo la corretta navigazione inline o quando una finestra di dialogo viene chiusa. Per i tipi di pagina che supportano la restituzione di un valore, la funzione riceve tale valore come argomento. |
errorCallback |
Funzione | No | Funzione da eseguire quando l'operazione ha esito negativo. |
parametro pageInput
La definizione dell'oggetto cambia a seconda del tipo di pagina a cui passare: elenco di entità, record di entità, dashboard, risorsa Web HTML, pagina personalizzata o pagina generativa.
Elenco entità
L'oggetto elenco di entità contiene i valori seguenti.
| Name | Type | Description |
|---|---|---|
pageType |
Stringa | Specificare entitylist. |
entityName |
Stringa | Nome logico della tabella da caricare nel controllo elenco. |
viewId |
Stringa | (Facoltativo) ID della visualizzazione da caricare. Se non lo specifichi, l'app passa alla visualizzazione principale predefinita per la tabella. |
viewType |
Stringa | (Facoltativo) Tipo di visualizzazione da caricare. Specificare savedquery o userquery. |
Record dell'entità
L'oggetto record di entità contiene i valori seguenti.
| Name | Type | Description |
|---|---|---|
pageType |
Stringa | Specificare entityrecord. |
entityName |
Stringa | Nome logico della tabella per cui visualizzare il modulo. |
entityId |
Stringa | (Facoltativo) ID del record di tabella per cui visualizzare il modulo. Se non si specifica questo valore, il modulo viene aperto in modalità di creazione. |
createFromEntity |
Ricerca | (Facoltativo) Definisce un record che fornisce valori predefiniti in base ai valori di colonna mappati. L'oggetto di ricerca presenta le seguenti proprietà di stringa: entityType, ID e name (facoltativo). |
data |
Oggetto | (Facoltativo) Oggetto dizionario che passa parametri aggiuntivi al form.
I parametri possono essere colonne di tabella con valori predefiniti impostati nei nuovi moduli (vedere Impostare i valori di colonna usando i parametri passati a una maschera) o parametri personalizzati a cui si accede nel modulo usando |
formId |
Stringa | (Facoltativo) ID dell'istanza del modulo da visualizzare. |
isCrossEntityNavigate |
Boolean | (Facoltativo) Indica se il modulo viene spostato da una tabella diversa usando il flusso del processo aziendale tra tabelle. |
isOfflineSyncError |
Boolean | (Facoltativo) Indica se sono presenti errori di sincronizzazione offline. |
processId |
Stringa | (Facoltativo) ID del processo aziendale da visualizzare nel modulo. |
processInstanceId |
Stringa | (Facoltativo) ID dell'istanza del processo aziendale da visualizzare nel modulo. |
relationship |
Oggetto | (Facoltativo) Definire un oggetto relazione per visualizzare i record correlati nel form. Vedere la relazione. |
selectedStageId |
Stringa | (Facoltativo) ID della fase selezionata nell'istanza del processo aziendale. |
tabName |
Stringa | (Facoltativo) Imposta lo stato attivo sulla scheda del form. |
Oggetto Relationship
L'oggetto relazione, utilizzato nel record Entity, contiene i valori seguenti.
| Name | Type | Description |
|---|---|---|
attributeName |
Stringa | Nome della colonna utilizzata per la relazione. |
name |
Stringa | Nome della relazione. |
navigationPropertyName |
Stringa | Nome della proprietà di navigazione per questa relazione. |
relationshipType |
Numero | Tipo di relazione. Specificare uno dei valori seguenti: 0:OneToMany, 1:ManyToMany. |
roleType |
Numero | Tipo di ruolo nella relazione. Specificare uno dei valori seguenti: 1:Referencing, 2:AssociationEntity. |
Dashboard
Usare questo oggetto come pageInput parametro quando si vuole aprire un dashboard.
L'oggetto dashboard contiene i valori seguenti.
| Name | Type | Description |
|---|---|---|
pageType |
Stringa | Specificare dashboard. |
dashboardId |
Stringa | ID del dashboard da caricare. Se non si specifica l'ID, l'app passa al dashboard predefinito. |
Risorsa Web HTML
Usare questo oggetto come pageInput parametro quando si desidera aprire una risorsa Web HTML.
L'oggetto risorsa Web HTML contiene i valori seguenti.
| Name | Type | Description |
|---|---|---|
pageType |
Stringa | Specificare webresource. |
webresourceName |
Stringa | Nome della risorsa Web da caricare. |
data |
Stringa | (Facoltativo) Dati da passare alla risorsa Web. |
Pagina personalizzata
Utilizzare questo oggetto come pageInput parametro quando si desidera aprire una pagina personalizzata.
L'oggetto pagina personalizzato contiene i valori seguenti.
| Name | Type | Description |
|---|---|---|
pageType |
Stringa | Specificare custom. |
name |
Stringa | Nome logico della pagina personalizzata da aprire. |
entityName |
Stringa | (Facoltativo) Nome logico della tabella da rendere disponibile nella pagina personalizzata tramite Param("entityName"). |
recordId |
Stringa | (Facoltativo) ID del record di tabella da rendere disponibile nella pagina personalizzata tramite Param("recordId"). |
Pagina generativa
Usare questo oggetto come pageInput parametro quando si desidera aprire una pagina generativa.
Per usare recordId, entityNameo data, la pagina generativa di destinazione deve essere configurata per accettare i parametri di input.
L'oggetto pagina generativa contiene i valori seguenti.
| Name | Type | Description |
|---|---|---|
pageType |
Stringa | Specificare generative. |
pageId |
Stringa | ID della pagina generativa da aprire. |
recordId |
Stringa | (Facoltativo) GUID di un record da passare alla pagina. |
entityName |
Stringa | (Facoltativo) Nome logico della tabella Dataverse corrispondente all'oggetto recordId. |
data |
Oggetto | (Facoltativo) Oggetto JSON contenente parametri personalizzati aggiuntivi da passare alla pagina. |
Vedere esempi che illustrano come passare a e da una pagina generativa usando l'API client
parametro navigationOptions
L'oggetto navigationOptions contiene i valori seguenti.
| Name | Type | Description |
|---|---|---|
target |
Numero | Specificare 1 per aprire la pagina inline. Specificare 2 per aprire la pagina in una finestra di dialogo.Inoltre, il resto dei valori (larghezza, altezza e posizione) è valido solo se si specifica 2 in questo valore (pagina aperta in una finestra di dialogo).Nota: è possibile aprire solo elenchi di entità inline. È possibile aprire record di entità, risorse Web e pagine generative inline o in una finestra di dialogo. |
width |
Numero o oggetto | (Facoltativo) Larghezza del dialogo. Per specificare la larghezza in pixel, digitare un valore numerico. Per specificare la larghezza in percentuale, specificare un oggetto di tipo SizeValue con le proprietà seguenti: - value: valore numerico di tipo Number.- unit: unità di misura di tipo String. Specificare % o px. Il valore predefinito è px. |
height |
Numero o oggetto | (Facoltativo) Altezza del dialogo. Per specificare l'altezza in pixel, digitare un valore numerico. Per specificare la larghezza in percentuale, specificare un oggetto di tipo SizeValue con le proprietà seguenti: - valore: valore numerico di tipo Number. - unit: unità di misura di tipo String. Specificare % o px. Il valore predefinito è px. |
position |
Numero | (Facoltativo) Specificare 1 per aprire la finestra di dialogo al centro; 2 per aprire il dialogo sul lato lontano. Il valore predefinito è 1 (al centro). |
title |
Stringa | (Facoltativo) Titolo della finestra di dialogo nella parte superiore della finestra di dialogo al centro o sul lato. |
Valore restituito
Restituisce una promessa. Il valore passato quando la promessa viene risolta dipende dal tipo di destinazione e di pagina:
- Inline: la promessa viene risolta al termine della navigazione e non restituisce un valore.
-
Finestra di dialogo: la promessa viene risolta alla chiusura del dialogo.
- Per un record di entità aperto in modalità di creazione, la promessa viene risolta con un oggetto contenente una
savedEntityReferencematrice. - Per una pagina generativa, la promessa viene risolta con un oggetto la cui
returnValueproprietà contiene il valore passato più di recente adataApi.setPageOutput(value). Se la pagina generativa non imposta un valore di output, la chiusura della finestra di dialogo selezionando Annulla o il pulsante di chiusura restituisce un valore non definitoreturnValue. - Altri tipi di pagina non restituiscono un valore quando la finestra di dialogo viene chiusa.
- Per un record di entità aperto in modalità di creazione, la promessa viene risolta con un oggetto contenente una
La savedEntityReference matrice restituita per un record di entità contiene queste proprietà:
- entityType: nome logico della tabella.
- id: rappresentazione di stringa del GUID del record.
- name: valore della colonna primaria del record.
Example
Gli esempi seguenti illustrano l'esplorazione inline di diversi tipi di pagina e in una finestra di dialogo.
Esempio 1: Aprire l'elenco di account
Apre l'elenco di account principale inline.
var pageInput = {
pageType: "entitylist",
entityName: "account"
};
Xrm.Navigation.navigateTo(pageInput).then(
function success() {
// Run code on success
},
function error() {
// Handle errors
}
);
Esempio 2: Aprire un record di account esistente all'interno di una finestra di dialogo
Apre un modulo di account esistente all'interno di una finestra di dialogo.
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
}
);
Esempio 3: Aprire un modulo account nella modalità di creazione all'interno di una finestra di dialogo
Apre un modulo account in modalità di creazione all'interno di una finestra di dialogo e restituisce il riferimento al record creato al momento del salvataggio.
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
}
);
Esempio 4: Aprire una risorsa Web HTML in una finestra di dialogo
Apre una risorsa Web HTML in una finestra di dialogo.
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
}
);
Esempio 5: Aprire una pagina generativa con parametri di input in una finestra di dialogo
Apre una pagina generativa come finestra di dialogo centrata, passando un ID record, un nome di entità e parametri di dati personalizzati. La pagina generativa deve essere configurata per accettare questi parametri.
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);
}
);
Articoli correlati
Xrm.Navigation
Passare a e da una pagina generativa
Navigazione da e verso una pagina personalizzata (anteprima)