Нотатка
Доступ до цієї сторінки потребує авторизації. Можна спробувати ввійти або змінити каталоги.
Доступ до цієї сторінки потребує авторизації. Можна спробувати змінити каталоги.
Відкриває форму сутності або форму швидкого створення.
Примітка
Щоб відкрити головну форму як діалогове вікно, скористайтеся методом 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 |
Рядок | Так | Логічне ім'я таблиці для відображення форми. |
entityId |
Рядок | Ні | Ідентифікатор запису таблиці для відображення форми. |
formId |
Рядок | Ні | Ідентифікатор екземпляра форми для відображення. |
cmdbar |
Bool (Логічне значення) | Ні | Вказує, чи потрібно відображати панель команд. Якщо не вказати цей параметр, панель команд відображається за замовчуванням. Потрібно передати openInNewWindow параметр як істинний. |
createFromEntity |
Підстановка | Ні | Визначає запис, який надає значення за замовчуванням на основі зіставлених значень стовпців. Об'єкт підстановки має такі властивості string: entityType, id, і name (необов'язково). |
openInNewWindow |
Bool (Логічне значення) | Ні | Указує, чи потрібно відображати форму в новому вікні або новій вкладці. Якщо вказати true та не вказувати значення висоти або ширини, форма відображатиметься на новій вкладці. Якщо відкрити форму в новому вікні або на новій вкладці, відтворення форми сповільниться порівняно з відкриттям форми на тій самій вкладці; натомість можна відкрити форму в головному діалоговому вікні форми. Ця властивість наразі не підтримується для форм швидкого створення, оскільки її не можна відкрити в новому вікні або вкладці. |
height |
Число | Ні | Висота вікна форми, яка буде відображатися в пікселях. Потрібно передати openInNewWindow параметр як істинний. |
width |
Число | Ні | Ширина вікна форми, яке буде відображатися в пікселях. Потрібно передати openInNewWindow параметр як істинний. |
navbar |
Рядок | Ні | Контролює, чи відображається панель навігації та чи доступна навігація додатком за допомогою областей та підобластей, визначених на карті сайту. Припустимі значення: on, , offабо entity. Потрібно передати параметр OpenInNewWindow як значення true.- on: з'явиться панель переходів. Це стандартна поведінка, якщо параметр панелі переходів не використовується.- off: панель переходів не відображається. Люди можуть здійснювати навігацію за допомогою інших елементів інтерфейсу користувача або кнопок «Назад» і «Вперед».- entity: У формі доступні лише параметри навігації для пов'язаних таблиць. Після переходу до пов'язаної таблиці на панелі переходів з'явиться кнопка "Назад", яка дає змогу повернутися до вихідного запису. |
relationship |
Об'єкт | Ні | Визначення об'єкта зв'язку для відображення пов'язаних записів у формі. Переглянути об'єкт зв'язку |
selectedStageId |
Рядок | Ні | Ідентифікатор вибраної стадії в екземплярі бізнес-процесу. |
useQuickCreateForm |
Bool (Логічне значення) | Ні | Указує, чи слід відкривати форму швидкого створення. У таблиці має бути ввімкнуто параметр Дозволити швидке створення для відображення форми швидкого створення, а також додати таблицю та форму швидкого створення до програми. Якщо не вказати значення useQuickCreateForm, за замовчуванням установлено значення false. |
об'єкт зв'язку
Об'єкт має наведені нижче значення.
| Ім'я | Тип | Опис |
|---|---|---|
attributeName |
Рядок | Ім'я стовпця, який використовується для зв'язку. |
name |
Рядок | Ім'я стовпця, який використовується для зв'язку. |
navigationPropertyName |
Рядок | Ім'я стовпця, який використовується для зв'язку. |
relationshipType |
Число | Тип відносин. Укажіть одне з таких значень: - 0:OneToMany; - 1:ManyToMany |
roleType |
Число | Тип ролі у зв'язку. Укажіть одне з таких значень: - 1:Посилання - 2:AssociationEntity |
Примітки
Цей метод слід використовувати, щоб відкривати таблиці або форми швидкого створення замість застарілих методів Xrm.Utility.openEntityForm і Xrm.Utility.openQuickCreate .
Використовуйте setActiveProcess , щоб відобразити певний бізнес-процес і встановитиActiveProcessInstance для відображення певного екземпляра бізнес-процесу у формі.
Приклади
Приклад 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);
});