getActivePath (klient-API-referens)

Hämtar en samling faser som för närvarande finns i den aktiva sökvägen med metoder för att interagera med de faser som visas i affärsprocessflödeskontrollen.

Den aktiva sökvägen representerar de steg som för närvarande återges i processkontrollen baserat på förgreningsreglerna och aktuella data i posten.

Syntax

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

Returvärde

Typ: Samling.

Beskrivning: En samling av alla slutförda faser, den aktiva fasen och den förutsagda uppsättningen framtida faser baserat på uppfyllda villkor i förgreningsregeln. Detta kan vara en delmängd av stegen som returneras med formContext.data.process. getActiveProcess eftersom den endast innehåller de faser som representerar en giltig övergång från den aktuella fasen baserat på förgrening som har inträffat i processen.

Example

Funktionen Sdk.formOnLoad använder metoden formContext.data.process.getActivePath för att hämta en samling faser. Sedan använder exempelkoden metoden forEach i samlingen för att loopa igenom varje steg. Koden skriver sedan nyckelegenskaper för fasen till konsolen med hjälp av funktionen Sdk.writeToConsole som definierats i det här biblioteket. Koden kommer sedan åt en samling steg för varje steg med metoden getSteps . Slutligen använder exemplet metoden forEach i stegsamlingen för att komma åt varje steg och skriva nyckelegenskaper för steget till konsolen.

Anmärkning

Funktionen Sdk.formOnLoad i JavaScript-exempelbiblioteket måste anges som OnLoad-händelsehanterare för ett formulär, och kryssrutan Skicka körningskontext som den första parametern måste markeras i dialogrutan Egenskaper för hanterare .
Det här exemplet illustrerar också bara användningen av några av metoderna i API:et formContext.data.process . Det representerar inte att använda det här API:et för att uppfylla ett affärskrav. Det är bara avsett att visa hur nyckelegenskapsvärdena kan nås i kod.

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

När exemplet körs i webbläsaren kan du använda utvecklarverktygen i webbläsaren för att visa texten som skrivits till konsolen. När det här exemplet till exempel körs i formuläret Affärsmöjlighet med affärsmöjlighetsförsäljningsprocessen skrivs följande till konsolen:

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