openForm (referenční dokumentace k rozhraní API klienta)

Otevře formulář entity nebo formulář pro rychlé vytvoření.

Poznámka:

Chcete-li otevřít hlavní formulář jako dialogové okno, použijte metodu navigateTo . Více informací: Otevření hlavního formulář v dialogu pomocí klientského rozhraní API

Syntaxe

Xrm.Navigation.openForm(entityFormOptions, formParameters).then(successCallback, errorCallback);

Parameters

Name Typ Povinné Popis
entityFormOptions Objekt Yes Možnosti formuláře pro otevření formuláře Zobrazit objekt entityFormOptions
formParameters Objekt No Objekt slovníku, který do formuláře předává další parametry. Neplatné parametry způsobují chybu.

Informace o předávání parametrů do formuláře naleznete v tématu Nastavení hodnot sloupců pomocí parametrů předaných do formuláře a Konfigurace formuláře pro přijetí vlastních parametrů řetězce dotazu.
successCallback Funkce No Funkce, která se má provést, když je záznam uložen ve formuláři pro rychlé vytvoření. Tato funkce přijímá objekt jako parametr. Objekt má savedEntityReference pole s následujícími vlastnostmi pro identifikaci zobrazených nebo vytvořených záznamů:
- entityType: Logický název tabulky.
- id: Řetězcové vyjádření hodnoty GUID záznamu.
- name: Hodnota primárního sloupce zobrazeného nebo vytvořeného záznamu.

POZNÁMKA:
– Funkce successCallback se nespustí při otevření formuláře pro existující nebo nový záznam.
- Funkce successCallback se spustí pouze při uložení záznamu ve formuláři rychlého vytvoření, který byl otevřen pomocí metody openForm.
errorCallback Funkce No Funkce, která se má provést, když se operace nezdaří.

entityFormOptions – objekt

Objekt obsahuje následující hodnoty:

Name Typ Povinné Popis
entityName Řetězec Yes Logický název tabulky pro zobrazení formuláře.
entityId Řetězec No ID záznamu tabulky pro zobrazení formuláře.
formId Řetězec No ID instance formuláře, která se má zobrazit.
cmdbar Bool No Označuje, zda se má zobrazit panel příkazů. Pokud tento parametr nezadáte, zobrazí se ve výchozím nastavení panel příkazů. Vyžaduje předání openInNewWindow parametru jako true.
createFromEntity Vyhledávání No Určuje záznam, který poskytuje výchozí hodnoty na základě mapovaných hodnot sloupců. Vyhledávací objekt má následující vlastnosti String: entityType, ida name (volitelné).
openInNewWindow Bool No Určuje, zda se má formulář zobrazit v novém okně nebo na nové kartě. Pokud zadáte a nezadáte true hodnoty pro výšku nebo šířku, formulář se zobrazí na nové kartě. Otevření formuláře v novém okně nebo na nové kartě zpomalí vykreslování formuláře ve srovnání s otevřením formuláře na stejné kartě. Zvažte možnost otevření formuláře v dialogovém okně hlavního formuláře. Tato vlastnost se v současné době nepodporuje pro formuláře rychlého vytvoření, protože je nelze otevřít v novém okně nebo kartě.
height Číslo No Výška okna formuláře, které má být zobrazeno v pixelech. Vyžaduje předání openInNewWindow parametru jako true.
width Číslo No Šířka okna formuláře, které má být zobrazeno v pixelech. Vyžaduje předání openInNewWindow parametru jako true.
navbar Řetězec No Určuje, zda se zobrazí navigační panel a zda je navigace v aplikaci dostupná pomocí oblastí a podoblastí definovaných v mapě webu. Platné hodnoty jsou: on, offnebo entity. Vyžaduje předání parametru openInNewWindow jako true.
- on: Zobrazí se navigační panel. Toto je výchozí chování, pokud se nepoužívá parametr navigačního panelu.
- off: Navigační panel se nezobrazuje. Uživatelé mohou navigovat pomocí jiných prvků uživatelského rozhraní nebo tlačítek Zpět a Vpřed.
- entity: Ve formuláři jsou k dispozici pouze možnosti navigace pro související tabulky. Po přechodu na související tabulku se na navigačním panelu zobrazí tlačítko Zpět, které umožní návrat k původnímu záznamu.
relationship Objekt No Definujte objekt relace pro zobrazení souvisejících záznamů ve formuláři. Zobrazit objekt relace
selectedStageId Řetězec No ID vybrané fáze v instanci obchodního procesu.
useQuickCreateForm Bool No Určuje, zda se má formulář pro rychlé vytvoření otevřít. Tabulka musí mít povolenou možnost Povolit rychlé vytvoření , aby se zobrazil formulář pro rychlé vytvoření, a musíte také přidat tabulku a formulář pro rychlé vytvoření do aplikace. Pokud nezadáte hodnotu , výchozí hodnota useQuickCreateFormje nastavená na falsehodnotu .

objekt relace

Objekt má následující hodnoty.

Name Typ Popis
attributeName Řetězec Název sloupce použitého pro relaci
name Řetězec Název sloupce použitého pro relaci
navigationPropertyName Řetězec Název sloupce použitého pro relaci
relationshipType Číslo Typ vztahu. Zadejte jednu z následujících hodnot:
- 0:OneToMany
- 1:ManyToMany
roleType Číslo Typ role v relaci. Zadejte jednu z následujících hodnot:
- 1:Odkazování
- 2:AssociationEntity

Poznámky

Tuto metodu je nutné použít k otevření tabulky nebo rychlého vytvoření formulářů namísto zastaralé metody Xrm.Utility.openEntityForm a Xrm.Utility.openQuickCreate .

Pomocí setActiveProcess zobrazte konkrétní obchodní proces a setActiveProcessInstance k zobrazení konkrétní instance obchodního procesu ve formuláři.

Examples

Příklad 1: Otevření formuláře pro existující záznam

Následující ukázkový kód otevře formulář kontaktu pro zobrazení existujícího záznamu kontaktu:

var entityFormOptions = {};
entityFormOptions["entityName"] = "contact";
entityFormOptions["entityId"] = "00aa00aa-bb11-cc22-dd33-44ee44ee44ee";

// Open the form.
Xrm.Navigation.openForm(entityFormOptions).then(
    function (success) {
        console.log(success);
    },
    function (error) {
        console.log(error);
    });

Příklad 2: Otevření formuláře pro nový záznam

Následující ukázkový kód otevře formulář kontaktu s několika předem vyplněnými hodnotami pro vytvoření nového záznamu:

var entityFormOptions = {};
entityFormOptions["entityName"] = "contact";

// Set default values for the Contact form
var formParameters = {};
formParameters["firstname"] = "Sample";
formParameters["lastname"] = "Contact";
formParameters["fullname"] = "Sample Contact";
formParameters["emailaddress1"] = "contact@adventure-works.com";
formParameters["jobtitle"] = "Sr. Marketing Manager";
formParameters["donotemail"] = "1";
formParameters["description"] = "Default values for this record were set programmatically.";

// Set lookup column
formParameters["preferredsystemuserid"] = "3493e403-fc0c-eb11-a813-002248e258e0"; // ID of the user.
formParameters["preferredsystemuseridname"] = "Admin user"; // Name of the user.
// End of set lookup column

// Open the form.
Xrm.Navigation.openForm(entityFormOptions, formParameters).then(
    function (success) {
        console.log(success);
    },
    function (error) {
        console.log(error);
    });

Příklad 3: Otevření formuláře pro nový záznam (komplexní vyhledávání)

Následující ukázkový kód otevře formulář aktivity s některými předem vyplněnými hodnotami (včetně komplexního vyhledávání) a vytvoří nový záznam:

var entityFormOptions = {};
entityFormOptions["entityName"] = "email";

// Set default values for the Contact form
var formParameters = {};
formParameters["subject"] = "Sample";
formParameters["description"] = "Default values for this record were set programmatically.";

// Set lookup column
formParameters["regardingobjectid"] = "3493e403-fc0c-eb11-a813-002248e258e0"; // ID of the user.
formParameters["regardingobjectidname"] = "Admin user"; // Name of the user.
formParameters["regardingobjectidtype"] = "systemuser"; // Table name. 
// End of set lookup column

// Open the form.
Xrm.Navigation.openForm(entityFormOptions, formParameters).then(
    function (success) {
        console.log(success);
    },
    function (error) {
        console.log(error);
    });

Příklad 4: Otevření formuláře pro rychlé vytvoření

Následující ukázkový kód otevře formulář rychlého vytvoření kontaktu s několika předem vyplněnými hodnotami:

var entityFormOptions = {};
entityFormOptions["entityName"] = "contact";
entityFormOptions["useQuickCreateForm"] = true;

// Set default values for the Contact form
var formParameters = {};
formParameters["firstname"] = "Sample";
formParameters["lastname"] = "Contact";
formParameters["fullname"] = "Sample Contact";
formParameters["emailaddress1"] = "contact@adventure-works.com";
formParameters["jobtitle"] = "Sr. Marketing Manager";
formParameters["donotemail"] = "1";
formParameters["description"] = "Default values for this record were set programmatically.";

// Set lookup column
formParameters["preferredsystemuserid"] = "3493e403-fc0c-eb11-a813-002248e258e0"; // ID of the user.
formParameters["preferredsystemuseridname"] = "Admin user"; // Name of the user.
formParameters["preferredsystemuseridtype"] = "systemuser"; // Table name.
// End of set lookup column

// Open the form.
Xrm.Navigation.openForm(entityFormOptions, formParameters).then(
    function (success) {
        console.log(success);
    },
    function (error) {
        console.log(error);
    });

Xrm.Navigation