Sdílet prostřednictvím


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

Parametry

Název Typ Povinné Description
entityFormOptions Object Ano Možnosti formuláře pro otevření formuláře Zobrazit objekt entityFormOptions
formParameters Object Ne Objekt slovníku, který do formuláře předává další parametry. Neplatné parametry způsobí 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 Ne Funkce, která se má provést, když je záznam uložen ve formuláři pro rychlé vytvoření. Tato funkce se předá objektu 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 Ne Funkce, která se má provést, když se operace nezdaří.

entityFormOptions – objekt

Objekt obsahuje následující hodnoty:

Název Typ Povinné Description
entityName String Ano Logický název tabulky pro zobrazení formuláře.
entityId String Ne ID záznamu tabulky pro zobrazení formuláře.
formId String Ne ID instance formuláře, která se má zobrazit.
cmdbar Booleovská hodnota Ne Označuje, zda se má zobrazit panel příkazů. Pokud tento parametr neurčíte, zobrazí se ve výchozím nastavení panel příkazů. Vyžaduje předání openInNewWindow parametru jako true.
createFromEntity Vyhledat Ne Určuje záznam, který bude poskytovat výchozí hodnoty na základě mapovaných hodnot sloupců. Vyhledávací objekt má následující vlastnosti String: entityType, ida name (volitelné).
openInNewWindow Booleovská hodnota Ne 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 hlavním dialogovém okně formuláře. Tato vlastnost se v současné době nepodporuje pro formuláře Rychlé vytvoření, protože je nelze otevřít v novém okně nebo kartě.
height Number Ne Výška okna formuláře, které má být zobrazeno v pixelech. Vyžaduje předání openInNewWindow parametru jako true.
width Number Ne Šířka okna formuláře, které má být zobrazeno v pixelech. Vyžaduje předání openInNewWindow parametru jako true.
navbar String Ne 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 není použit 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 Object Ne Definujte objekt relace pro zobrazení souvisejících záznamů ve formuláři. Zobrazit objekt relace
selectedStageId String Ne ID vybrané fáze v instanci obchodního procesu.
useQuickCreateForm Booleovská hodnota Ne 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 useQuickCreateForm, výchozí hodnota bude nastavena na falsehodnotu .

objekt relace

Objekt má následující hodnoty.

Název Typ Description
attributeName String Název sloupce použitého pro relaci
name String Název sloupce použitého pro relaci
navigationPropertyName String Název sloupce použitého pro relaci
relationshipType Number Typ vztahu. Zadejte jednu z následujících hodnot:
- 0:OneToMany
- 1:ManyToMany
roleType Number 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