Κοινοποίηση μέσω


getActivePath (αναφορά API προγράμματος-πελάτη)

Λαμβάνει μια συλλογή σταδίων προς το παρόν στην ενεργή διαδρομή με μεθόδους για αλληλεπίδραση με τα στάδια που εμφανίζονται στο στοιχείο ελέγχου ροής επιχειρηματικής διαδικασίας.

Η ενεργή διαδρομή αντιπροσωπεύει στάδια που αποδίδονται τη συγκεκριμένη στιγμή στο στοιχείο ελέγχου διαδικασίας με βάση τους κανόνες διακλάδωσης και τα τρέχοντα δεδομένα στην εγγραφή.

Σύνταξη

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

Τιμή επιστροφής

Τύπος: Συλλογή.

Περιγραφή: Μια συλλογή από όλα τα ολοκληρωμένα στάδια, το τρέχον ενεργό στάδιο και το προβλεπόμενο σύνολο μελλοντικών σταδίων με βάση τις ικανοποιημένες συνθήκες στον κανόνα διακλάδωσης. Αυτό μπορεί να είναι ένα υποσύνολο των σταδίων που επιστρέφονται με formContext.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
    ---------------------------------------
---------------------------------------

formContext.data.process