openForm (препратка към API на клиент)

Отваря формуляр на обект или формуляр за бързо създаване.

Бележка

За да отворите главен формуляр като диалогов прозорец, вместо това използвайте метода navigateTo . Повече информация: Отваряне на основния формуляр в диалогов прозорец с помощта на клиентски API

Синтаксис

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

Параметри

Име Тип Задължителни Описание
entityFormOptions Обект Да Опции за формуляр за отваряне на формуляра. Вижте обекта entityFormOptions
formParameters Обект Не Речников обект, който предава допълнителни параметри на формуляра. Невалидните параметри предизвикват грешка.

За информация за преминаването на параметри към формуляр вижте Задаване на стойности на колони с помощта на параметри, подадени към формуляр , и Конфигуриране на формуляр за приемане на параметри по избор на низа на заявката.
successCallback Function Не Функция за изпълнение, когато записът е записан във формуляра за бързо създаване. Тази функция приема обект като параметър. Обектът има savedEntityReference масив със следните свойства, за да идентифицира показаните или създадените записи:
- entityType: Логическото име на таблицата.
- id: Представяне на низ на GUID стойност за записа.
- name: Стойността на основната колона на записа, показан или създаден.

ЗАБЕЛЕЖКА:
- Функцията successCallback не се изпълнява, когато отворите формуляр за съществуващ или нов запис.
- Функцията successCallback се изпълнява само когато запишете запис във формуляр за бързо създаване, който е бил отворен с помощта на метода openForm.
errorCallback Function Не Функция, която се изпълнява, когато операцията е неуспешна.

entityFormOptions обект

Обектът съдържа следните стойности:

Име Тип Задължителни Описание
entityName String Да Логическо име на таблицата, за която да се покаже формулярът.
entityId String Не ИД на записа на таблицата, за който трябва да се покаже формулярът.
formId String Не ИД на екземпляра на формуляра, който трябва да се покаже.
cmdbar Булева променлива Не Показва дали да се покаже командната лента. Ако не зададете този параметър, лентата с команди се показва по подразбиране. Изисква предаване openInNewWindow на параметър като true.
createFromEntity Справка Не Определя запис, който предоставя стойности по подразбиране на базата на нанесени стойности на колони. Обектът за търсене има следните свойства на Низ: entityType, idи name (незадължително).
openInNewWindow Булева променлива Не Показва дали да се показва формуляр в нов прозорец, или нов раздел. Ако зададете true и не зададете стойности за височина или ширина, формулярът се показва в нов раздел. Отварянето на формуляр в нов прозорец или нов раздел прави рендирането на формуляра бавно в сравнение с отварянето на формуляра в същия раздел; помислете вместо това да отворите формуляр в диалоговия прозорец на главния формуляр. Това свойство в момента не се поддържа за формуляри за бързо създаване, тъй като те не могат да бъдат отворени в нов прозорец или раздел.
height Число Не Височина на прозореца на формуляра, който ще се показва в пиксели. Изисква предаване openInNewWindow на параметър като true.
width Число Не Ширината на прозореца на формуляра, който ще се показва в пиксели. Изисква предаване openInNewWindow на параметър като true.
navbar String Не Контролира дали навигационната лента да се показва и дали навигацията на приложението е налична с помощта на областите и подобластите, дефинирани в картата на сайта. Валидните стойности са: on, off, или entity. Изисква преминаване на параметър openInNewWindow като true.
- on: Показва се навигационната лента. Това е поведението по подразбиране, ако параметърът на навигационната лента не се използва.
- off: Навигационната лента не се показва. Хората могат да навигират с помощта на други елементи на потребителския интерфейс или бутоните назад и напред.
- entity: Във формуляр са налични само опциите за навигация за свързани таблици. След като навигирате до свързана таблица, в навигационната лента се показва бутон "Назад", за да се позволи връщане към първоначалния запис.
relationship Обект Не Дефиниране на обект на релация за показване на свързаните записи във формуляра. Преглед на обект на релация
selectedStageId String Не ИД на избрания етап в екземпляра на бизнес процеса.
useQuickCreateForm Булева променлива Не Показва дали да отворите формуляр за бързо създаване. В таблицата трябва да е разрешена опцията Разрешаване на бързо създаване , за да се показва формулярът за бързо създаване, и трябва също да добавите таблицата и формуляра за бързо създаване във вашето приложение. Ако не зададете стойността на useQuickCreateForm, стойността по подразбиране е зададена falseна .

обект на релация

Обектът има следните стойности:

Име Тип Описание
attributeName String Име на колоната, използвана за релация.
name String Име на колоната, използвана за релация.
navigationPropertyName String Име на колоната, използвана за релация.
relationshipType Число Тип връзка. Задайте една от следните стойности:
- 0:OneToMany
- 1:ManyToMany
roleType Число Тип роля в релация. Задайте една от следните стойности:
- 1: Препращане
- 2:Несъседство

Забележки

Трябва да използвате този метод, за да отворите таблица или да създадете бързо формуляри вместо отхвърлените методи Xrm.Utility.openEntityForm и Xrm.Utility.openQuickCreate .

Използвайте setActiveProcess , за да покажете конкретен бизнес процес и setActiveProcessInstance , за да покажете конкретен екземпляр на бизнес процес във формуляра.

Примери

Пример 1: Отваряне на формуляр за съществуващ запис

Следният примерен код отваря формуляр за контакт, за да покаже съществуващ запис на контакт:

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

Пример 2: Отваряне на формуляр за нов запис

Следният примерен код отваря формуляр за контакт с някои предварително попълнени стойности, за да се създаде нов запис:

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

Пример 3: Отваряне на формуляр за нов запис (сложно търсене)

Следният примерен код отваря формуляр за дейност с някои предварително попълнени стойности (включително сложно търсене), за да създадете нов запис:

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

Пример 4: Отваряне на формуляр за бързо създаване

Следният примерен код отваря формуляр за контакт за бързо създаване с някои предварително попълнени стойности:

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