Нотатка
Доступ до цієї сторінки потребує авторизації. Можна спробувати ввійти або змінити каталоги.
Доступ до цієї сторінки потребує авторизації. Можна спробувати змінити каталоги.
Отримує колекцію стадій, які зараз є активним шляхом, за допомогою методів взаємодії з етапами, які відображаються в елементі керування потоком бізнес-процесів.
Активний шлях позначає стадії, які зараз відображаються в елементі керування процесом на основі правил розгалуження та поточних даних у записі.
Синтаксис
var stageCollection = formContext.data.process.getActivePath();
Повернуте значення
Тип: колекція.
Опис. Колекція всіх завершених етапів, поточна активна стадія та прогнозований набір майбутніх етапів на основі відповідних умов у правилі розгалуження. Це може бути підмножина етапів, повернутих із формоюContext.data.process. getActiveProcess , оскільки вона включатиме лише ті стадії, які представляють припустимий перехід із поточної стадії на основі розгалуження, яке відбулося в процесі.
Приклад
Функція Sdk.formOnLoad використовує метод formContext.data.process.getActivePath для отримання колекції етапів. Потім зразок коду використовує метод forEach колекції, щоб циклічного проходження кожного етапу. Потім код записує ключові властивості етапу до консолі за допомогою функції Sdk.writeToConsole , визначеної в цій бібліотеці. Потім код отримує доступ до колекції кроків для кожного етапу за допомогою методу getSteps . Нарешті, зразок використовує метод forEach колекції кроків, щоб отримати доступ до кожного кроку та написати основні властивості кроку до консолі.
Нотатка
Функцію Sdk.formOnLoad у зразку бібліотеки JavaScript потрібно встановити як обробник подій OnLoad для форми, а в діалоговому вікні Властивості обробника слід установити прапорець Перед виконання як перший параметр.
Крім того, цей зразок просто ілюструє використання деяких методів у API formContext.data.process . Він не представляє використання цього API для задоволення бізнес-вимог; він призначений лише для демонстрації того, як ключові значення властивостей можуть бути доступні в коді.
// A namespace defined for SDK sample code
// You should define a unique namespace for your libraries
var Sdk = window.Sdk || {};
(function () {
// A function to log messages while debugging only
this.writeToConsole = function (message) {
if (typeof console != 'undefined')
{ console.log(message); }
};
// Code to run in the OnLoad event
this.formOnLoad = function (executionContext) {
// Retrieve the formContext
var formContext = executionContext.getFormContext();
// Enumerate the stages and steps in the active path
var activePathCollection = formContext.data.process.getActivePath();
activePathCollection.forEach(function (stage, n) {
Sdk.writeToConsole("Stage Index: " + n);
Sdk.writeToConsole("Table: " + stage.getEntityName());
Sdk.writeToConsole("StageId: " + stage.getId());
Sdk.writeToConsole("Status: " + stage.getStatus());
var stageSteps = stage.getSteps();
stageSteps.forEach(function (step, i) {
Sdk.writeToConsole(" Step Name: " + step.getName());
Sdk.writeToConsole(" Step Column: " + step.getAttribute());
Sdk.writeToConsole(" Step Required: " + step.isRequired());
Sdk.writeToConsole(" ---------------------------------------")
})
Sdk.writeToConsole("---------------------------------------")
});
};
}).call(Sdk);
Коли зразок запускається в браузері, можна скористатися інструментами розробника браузера, щоб переглянути текст, написаний на консолі. Наприклад, коли цей зразок виконується у формі потенційної угоди з процесом збуту потенційної угоди, на консоль записується таке:
Stage Index: 0
Table: opportunity
StageId: 6b9ce798-221a-4260-90b2-2a95ed51a5bc
Status: active
Step Name: Identify Contact
Step Column: parentcontactid
Step Required: false
---------------------------------------
Step Name: Identify Account
Step Column: parentaccountid
Step Required: false
---------------------------------------
Step Name: Purchase Timeframe
Step Column: purchasetimeframe
Step Required: false
---------------------------------------
Step Name: Estimated Budget
Step Column: budgetamount
Step Required: false
---------------------------------------
Step Name: Purchase Process
Step Column: purchaseprocess
Step Required: false
---------------------------------------
Step Name: Identify Decision Maker
Step Column: decisionmaker
Step Required: false
---------------------------------------
Step Name: Capture Summary
Step Column: description
Step Required: false
---------------------------------------
---------------------------------------
Stage Index: 1
Table: opportunity
StageId: 650e06b4-789b-46c1-822b-0da76bedb1ed
Status: inactive
Step Name: Customer Need
Step Column: customerneed
Step Required: false
---------------------------------------
Step Name: Proposed Solution
Step Column: proposedsolution
Step Required: false
---------------------------------------
Step Name: Identify Stakeholders
Step Column: identifycustomercontacts
Step Required: false
---------------------------------------
Step Name: Identify Competitors
Step Column: identifycompetitors
Step Required: false
---------------------------------------
---------------------------------------
Stage Index: 2
Table: opportunity
StageId: d3ca8878-8d7b-47b9-852d-fcd838790cfd
Status: inactive
Step Name: Identify Sales Team
Step Column: identifypursuitteam
Step Required: false
---------------------------------------
Step Name: Develop Proposal
Step Column: developproposal
Step Required: false
---------------------------------------
Step Name: Complete Internal Review
Step Column: completeinternalreview
Step Required: false
---------------------------------------
Step Name: Present Proposal
Step Column: presentproposal
Step Required: false
---------------------------------------
---------------------------------------
Stage Index: 3
Table: opportunity
StageId: bb7e830a-61bd-441b-b1fd-6bb104ffa027
Status: inactive
Step Name: Complete Final Proposal
Step Column: completefinalproposal
Step Required: false
---------------------------------------
Step Name: Present Final Proposal
Step Column: presentfinalproposal
Step Required: false
---------------------------------------
Step Name: Confirm Decision Date
Step Column: finaldecisiondate
Step Required: false
---------------------------------------
Step Name: Send Thank You
Step Column: sendthankyounote
Step Required: false
---------------------------------------
Step Name: File De-brief
Step Column: filedebrief
Step Required: false
---------------------------------------
---------------------------------------