مشاركة عبر


getActivePath (مرجع واجهة برمجة تطبيقات العميل)

يحصل على مجموعة من المراحل الموجودة حاليا في المسار النشط مع أساليب للتفاعل مع المراحل المعروضة في التحكم في تدفق عملية الأعمال.

يمثل المسار النشط المراحل المعروضة حاليا في عنصر تحكم العملية استنادا إلى قواعد التفريع والبيانات الحالية في السجل.

بناء الجملة

var stageCollection = formContext.data.process.getActivePath();

قيمة الإرجاع

النوع: مجموعة.

الوصف: مجموعة من جميع المراحل المكتملة والمرحلة النشطة حاليا ومجموعة متوقعة من المراحل المستقبلية استنادا إلى الشروط الراضية في قاعدة التفريع. قد تكون هذه مجموعة فرعية من المراحل التي تم إرجاعها باستخدام formContext.data.process. getActiveProcess لأنه سيتضمن فقط تلك المراحل التي تمثل انتقالا صالحا من المرحلة الحالية استنادا إلى التفريع الذي حدث في العملية.

مثال

تستخدم الدالة Sdk.formOnLoad أسلوب formContext.data.process.getActivePath لاسترداد مجموعة من المراحل. ثم، يستخدم نموذج التعليمات البرمجية أسلوب forEach للمجموعة لتكرار كل مرحلة. ثم تكتب التعليمات البرمجية الخصائص الرئيسية للمرحلة إلى وحدة التحكم باستخدام الدالة Sdk.writeToConsole المعرفة في هذه المكتبة. ثم تصل التعليمات البرمجية إلى مجموعة من الخطوات لكل مرحلة باستخدام أسلوب getSteps . وأخيرا، يستخدم النموذج أسلوب forEach لمجموعة الخطوات للوصول إلى كل خطوة وكتابة خصائص المفتاح للخطوة إلى وحدة التحكم.

Note

يجب تعيين الدالة Sdk.formOnLoad في مكتبة JavaScript النموذجية كمعالج أحداث OnLoad لنموذج، ويجب تحديد خانة الاختيار تمرير التنفيذ كمعلمة أولى في مربع الحوار خصائص المعالج .
أيضا، يوضح هذا النموذج فقط استخدام بعض الأساليب في 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
    ---------------------------------------
---------------------------------------

formContext.data.process