Partajați prin


getActivePath (referință API client)

Obține o colecție de etape aflate în prezent în calea activă cu metode pentru a interacționa cu etapele afișate în controlul fluxului de procese de afaceri.

Calea activă reprezintă etapele redate în prezent în controlul de proces pe baza regulilor de ramificare și a datelor curente din înregistrare.

Sintaxă

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

Valoarea returnată

Tip: Colecție.

Descriere: O colecție a tuturor etapelor finalizate, stadiul activ în prezent și setul estimat de etape viitoare pe baza condițiilor îndeplinite din regula de ramificare. Acesta poate fi un subset de etape returnate cu formContext.data.process. getActiveProcess , deoarece va include doar acele etape care reprezintă o tranziție validă de la etapa curentă pe baza ramificării care a avut loc în proces.

Exemplu

Funcția Sdk.formOnLoad utilizează metoda formContext.data.process.getActivePath pentru a regăsi o colecție de etape. Apoi, codul eșantion utilizează metoda forEach a colecției pentru a parcurge fiecare etapă. Codul scrie apoi proprietăți cheie ale scenei pe consolă utilizând funcția Sdk.writeToConsole definită în această bibliotecă. Codul accesează apoi o colecție de pași pentru fiecare etapă utilizând metoda getSteps . În sfârșit, eșantionul utilizează metoda forEach a colecției de pași pentru a accesa fiecare pas și a scrie proprietăți cheie ale pasului pe consolă.

Notă

Funcția Sdk.formOnLoad din biblioteca JavaScript eșantion trebuie să fie setată ca rutină de tratare eveniment OnLoad pentru un formular, iar contextul de execuție Pass ca prima casetă de selectare parametru trebuie să fie bifată în caseta de dialog Proprietăți handler .
De asemenea, acest exemplu ilustrează doar utilizarea unora dintre metodele din formContext.data.process API. Nu reprezintă utilizarea acestui API pentru a îndeplini o cerință de afaceri; este destinat doar pentru a demonstra modul în care valorile proprietății cheie pot fi accesate în cod.

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

Atunci când eșantionul rulează în browser, puteți utiliza instrumentele pentru dezvoltatori ale browserului pentru a vizualiza textul scris pe consolă. De exemplu, atunci când acest eșantion este rulat în formularul Oportunitate cu Procesul de vânzări oportunitate, următoarele sunt scrise pe consolă:

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