navigateTo (odkaz na klientske rozhranie API)

Prejde na zadaný zoznam tabuliek, záznam tabuľky, webový zdroj HTML alebo vlastnú stránku.

Poznámka

Táto metóda je podporovaná len v zjednotenom rozhraní.

Syntax

Na volanie metódy Xrm.Navigation.navigateTo()použite nasledujúcu syntax .

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

Parametre

Metóda prijíma nasledujúce parametre.

Meno Zadať Required Popis
pageInput Object Yes Vstup o stránke, na ktorý chcete prejsť. Pozri parameter pageInput
navigation (navigácia)Možnosti Object Nie Možnosti prechodu na stranu: či sa má otvoriť v rámci riadka alebo v dialógovom okne. Ak tento parameter nezadáte, metóda otvorí predvolene vnoreovú stránku.
successCallback funkcia Nie Funkcia, ktorá sa vykoná po úspešnej navigácii na stránku pri prechode na inline a pri zatvorení dialógového okna pri prechode na dialógové okno.
errorCallback Function Nie Funkcia, ktorá sa vykoná v prípade zlyhania operácie.

pageInput Parameter

Definícia objektu sa mení v závislosti od typu stránky, na ktorej sa bude prechádzať: zoznam entít, záznam entity, tabuľa, webový zdroj HTML, vlastná stránka alebo generatatívna stránka.

Zoznam entít

Objekt zoznamu entít obsahuje nasledujúce hodnoty.

Meno Zadať Popis
pageType Povrázok Zadajte hodnotu entitylist.
entityName Povrázok Logický názov tabuľky, ktorá sa má načítať do ovládacieho prvku zoznamu.
viewId Povrázok (Voliteľné) ID zobrazenia, ktoré sa má načítať. Ak ho nezadáte, aplikácia prejde na predvolené hlavné zobrazenie tabuľky.
viewType Povrázok (Voliteľné) Typ zobrazenia, ktoré sa má načítať. Zadajte savedquery alebo userquery.

Záznam entity

Objekt záznamu entity obsahuje nasledujúce hodnoty.

Meno Zadať Popis
pageType Povrázok Zadajte hodnotu entityrecord.
entityName Povrázok Logický názov tabuľky, pre ktorý sa má zobraziť formulár.
entityId Povrázok (Voliteľné) ID záznamu tabuľky, pre ktorý sa má zobraziť formulár. Ak túto hodnotu nezadáte, formulár sa otvorí v režime vytvárania.
createFromEntity Vyhľadávanie (Voliteľné) Určí záznam, ktorý poskytuje predvolené hodnoty na základe hodnôt namapovaných stĺpcov. Vyhľadávací objekt má nasledujúce vlastnosti Reťazca: entityType, ID a name (voliteľné).
data Object (Voliteľné) Slovníkový objekt, ktorý odovzdá do formulára ďalšie parametre.

Parametrami môžu byť stĺpce tabuľky s predvolenými hodnotami, ktoré sú nastavené v nových formulároch (pozri tému Nastavenie hodnôt stĺpcov pomocou parametrov odovzdaných formuláru) alebo vlastné parametre, ktoré sú prístupné vo formulári pomocou formContext.data.attributes (pozri tému Konfigurácia formulára na prijímanie vlastných parametrov reťazca dotazu a formContext.data). Neplatné parametre spôsobia chybu.

formId Povrázok (Voliteľné) ID inštancie formulára, ktorá sa má zobraziť.
isCrossEntityNavigate booleovský (Voliteľné) Udáva, či sa formulár presunie z inej tabuľky pomocou postupu obchodného procesu medzi tabuľkami.
isOfflineSyncError booleovský (Voliteľné) Udáva, či existujú nejaké chyby synchronizácie offline.
processId Povrázok (Voliteľné) ID obchodného procesu, ktorý sa zobrazí vo formulári.
processInstanceId Povrázok (Voliteľné) ID inštancie obchodného procesu, ktorá sa zobrazí vo formulári.
relationship Object (Voliteľné) Definovanie objektu vzťahu na zobrazenie súvisiacich záznamov vo formulári. Pozrite si vzťah.
selectedStageId Povrázok (Voliteľné) ID vybratej fázy v inštancii obchodného procesu.
tabName Povrázok (Voliteľné) Nastaví zameranie na karte formulára.
Objekt vzťahu

Objekt vzťahu, ktorý sa používa v zázname entity, obsahuje nasledujúce hodnoty.

Meno Zadať Popis
attributeName Povrázok Názov stĺpca použitého pre vzťah.
name Povrázok Názov vzťahu.
navigationPropertyName Povrázok Názov vlastnosti navigácie pre tento vzťah.
relationshipType Číslo Typ vzťahu. Zadajte jednu z nasledujúcich hodnôt: 0:OneToMany, 1:ManyToMany.
roleType Číslo Typ roly vo vzťahu. Zadajte jednu z nasledujúcich hodnôt: 1: Odkazovanie, 2:PriradenieEntita.

Tabuľa

Tento objekt použite ako parameter, pageInput keď chcete otvoriť tabuľu.

Objekt tabule obsahuje nasledujúce hodnoty.

Meno Zadať Popis
pageType Povrázok Zadajte hodnotu dashboard.
dashboardId Povrázok ID tabule, ktorá sa má načítať. Ak NEZADáte ID, aplikácia prejde na predvolenú tabuľu.

Webový zdroj HTML

Tento objekt použite ako pageInput parameter, keď chcete otvoriť webový prostriedok vo formáte HTML.

Objekt webového zdroja HTML obsahuje nasledujúce hodnoty.

Meno Zadať Popis
pageType Povrázok Zadajte hodnotu webresource.
webresourceName Povrázok Názov webového zdroja, ktorý sa má načítať.
data Povrázok (Voliteľné) Údaje, ktoré sa majú preniesť do webového zdroja.

Vlastná stránka

Tento objekt použite ako parameter, pageInput keď chcete otvoriť vlastnú stranu.

Objekt vlastnej stránky obsahuje nasledujúce hodnoty.

Meno Zadať Popis
pageType Povrázok Zadajte hodnotu custom.
name Povrázok Logický názov vlastnej strany, ktorá sa má otvoriť.
entityName Povrázok (Voliteľné) Logický názov tabuľky, ktorá sa má sprístupniť na vlastnej stránke prostredníctvom Param("entityName").
recordId Povrázok (Voliteľné) ID záznamu tabuľky, ktorý sa má sprístupniť na vlastnej stránke cez Param("recordId").

Generačná stránka

Tento objekt použite ako pageInput parameter, keď chcete otvoriť generatatívnu stránku.

Ak chcete použiť recordId, entityNamealebo data, cieľová generatatívna stránka musí byť nastavená tak, aby prijímala vstupné parametre.

Objekt generativnej stránky obsahuje nasledujúce hodnoty.

Meno Zadať Popis
pageType Povrázok Zadajte hodnotu generative.
pageId Povrázok ID generativnej stránky, ktorá sa má otvoriť.
recordId Povrázok (Voliteľné) Identifikátor GUID záznamu, ktorý sa má preniesť na stránku.
entityName Povrázok (Voliteľné) Logický názov tabuľky Dataverse, ktorá zodpovedá recordId.
data Object (Voliteľné) Objekt JSON obsahujúci ďalšie vlastné parametre, ktoré sa majú odovzdať na stránku.

Pozrite si príklady, ktoré zobrazujú, ako prejsť na a z generatatívnej stránky pomocou klientskeho rozhrania API

Objekt navigationOptions obsahuje nasledujúce hodnoty.

Meno Zadať Popis
target Číslo Zadajte hodnotu 1 , ak chcete otvoriť vnoreovú stranu. Ak chcete otvoriť stranu v dialógovom okne, zadajte hodnotu 2 .
Ostatné hodnoty (šírka, výška a pozícia) sú platné len vtedy, ak je v tejto hodnote zadané 2 (v dialógovom okne sa otvorí strana).
Poznámka: Vnoriť môžete len zoznamy entít. Záznamy entity, webové zdroje a generatatívne stránky môžete otvoriť buď vnorené, alebo v dialógovom okne.
width Číslo alebo objekt (Voliteľné) Šírka dialógového okna. Ak chcete zadať šírku v pixeloch, zadajte číselnú hodnotu. Ak chcete určiť šírku v percentách, zadajte objekt typu SizeValue s nasledujúcimi vlastnosťami:
- value: Číselná hodnota typu Číslo.
- unit: Merná jednotka typu Reťazec. Zadajte % alebo px. Predvolená hodnota je px.
height Číslo alebo objekt (Voliteľné) Výška dialógového okna. Ak chcete určiť výšku v pixeloch, zadajte číselnú hodnotu. Ak chcete určiť šírku v percentách, zadajte objekt typu SizeValue s nasledujúcimi vlastnosťami:
– hodnota: Číselná hodnota typu Číslo.
- unit: Merná jednotka typu Reťazec. Zadajte % alebo px. Predvolená hodnota je px.
position Číslo (Voliteľné) Zadajte hodnotu 1 , ak chcete otvoriť dialógové okno v strede. 2 Ak chcete otvoriť dialógové okno úplne na ďalekej strane. Predvolená hodnota je 1 (v strede).
title Povrázok (Voliteľné) Názov dialógového okna v hornej časti stredného alebo bočného dialógového okna.

Vrátená hodnota

Vráti sľub. Hodnota odovzdaná pri vyriešení sľubu závisí od cieľa:

  • inline: Funkcia Promise sa vyrieši okamžite a nevráti žiadnu hodnotu.

  • dialog: Promise sa vyrieši po zatvorení dialógového okna. Objekt sa odovzdá iba v prípade, pageType = entityRecord ak ste formulár otvorili v režime vytvorenia. Objekt má savedEntityReference pole s nasledujúcimi vlastnosťami na identifikáciu vytvoreného záznamu tabuľky:

    • EntityType: Logický názov tabuľky.
    • id: vyjadrenie reťazca hodnoty GUID pre záznam.
    • name: Hodnota primárneho stĺpca záznamu zobrazeného alebo vytvoreného.

Príklad

Nasledujúce príklady ukazujú navigáciu k rôznym typom stránok vnorených a v dialógovom okne.

Príklad 1: Otvorenie zoznamu kont

Otvorí vložený zoznam hlavného konta.

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

Príklad 2: Otvorenie existujúceho záznamu konta v dialógovom okne

V dialógovom okne sa otvorí existujúci formulár konta.

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
    }
);

Príklad 3: Otvorenie formulára konta v režime vytvárania v rámci dialógového okna

V dialógovom okne otvorí formulár konta v režime vytvárania a po uložení vráti vytvorený odkaz na záznam.

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
    }
);

Príklad 4: Otvorenie webového zdroja HTML v dialógovom okne

V dialógovom okne otvorí webový prostriedok vo formáte HTML.

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
    }
);

Príklad 5: Otvorenie generativnej stránky so vstupnými parametrami v dialógovom okne

Otvorí sa generatatívna stránka ako vycentrované dialógové okno, kde môžete odovzdať ID záznamu, názov entity a vlastné údajové parametre. Na prijímanie týchto parametrov musí byť nastavená generatatívna stránka.

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() {
            // Run code on success
    },
    function error() {
            // Handle errors
    }
);

Xrm.Navigation
Prejdite na a z generačnej stránky
Prechod na vlastnú stránku a jej zobrazenie (Ukážka)