Jaa


getEnabledProcesses (asiakasohjelmointirajapinnan viittaus)

Asynkronisesti noutaa liiketoimintaprosessit, jotka on otettu käyttöön taulukolle, johon nykyinen käyttäjä voi vaihtaa.

Syntaksi

formContext.data.process.getEnabledProcesses(callbackFunction(enabledProcesses));

Parametri

Nimi Tyyppi Pakollinen Description
callbackFunction Function Kyllä Takaisinkutsufunktion on hyväksyttävä parametri, joka sisältää hakemisto-ominaisuuksilla olevan objektin, jossa ominaisuuden nimi on liiketoimintaprosessin tunnus ja ominaisuuden arvo on liiketoimintaprosessin työnkulun nimi.

Käytössä olevat prosessit suodatetaan käyttäjän oikeuksien mukaan. Käytössä olevien prosessien luettelo on sama, jonka käyttäjä voi nähdä käyttöliittymässä, jos hän haluaa muuttaa prosessia manuaalisesti.

Esimerkki:

Esimerkin Sdk.formOnLoad-funktio käyttää formContext.data.process.getEnabledProcesses-menetelmää noutaakseen asynkronisesti tietoja taulukolle käytössä olevista liiketoimintaprosessin työnkuluista. Malli välittää ensimmäisenä parametrina anonyymin funktion. Tämä funktio suoritetaan asynkronisesti, kun tiedot palautetaan ja tiedot välitetään parametrina anonyymiin funktioon.

Käyttöön otettua liiketoimintaprosessin työnkulkua koskevat tiedot annetaan hakemisto-objektina, jossa prosessin tunnus on ominaisuuden nimi ja liiketoimintaprosessin työnkulun nimi on ominaisuuden arvo. Mallikoodi käsittelee nämä tiedot ja määrittää yleisen Sdk.enabledProcesses-matriisin arvot, joita voi käyttää myöhemmin suoritettavan logiikan avulla. Malli käy läpi myös Sdk.enabledProcesses-matriisin arvot ja kirjoittaa noudettuja liiketoimintaprosessin työnkulkuja koskevia tietoja konsoliin Sdk.writeToConsole-funktion avulla.

Note

JavaScript-mallikirjaston Sdk.formOnLoad-funktio on määritettävä lomakkeen OnLoad-tapahtumakäsittelijäksi, ja Välitä suorituskonteksti ensimmäisenä parametrina -valintaruutu on valittava Käsittelijän ominaisuudet -valintaikkunassa.
Lisäksi tämä malli havainnollistaa vain joidenkin menetelmien käyttöä formContext.data.process-ohjelmointirajapinnassa . Se ei edusta tämän ohjelmointirajapinnan käyttämistä liiketoiminnan tarpeiden täyttämiseen. Se on tarkoitettu vain osoittamaan, miten avainominaisuusarvoja voidaan käyttää koodissa.

//A namespace defined for SDK sample code
//You should define a unique namespace for your libraries
var Sdk = window.Sdk || {};
(function () {
    //A global variable to store information about enabled business processes after they are retrieved asynchronously
    this.enabledProcesses = [];

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

        // Retrieve Enabled processes
        formContext.data.process.getEnabledProcesses(function (processes) {
            //Move processes to the global Sdk.enabledProcesses array;
            for (var processId in processes) {
                Sdk.enabledProcesses.push({ id: processId, name: processes[processId] })
            }
            Sdk.writeToConsole("Enabled business processes flows retrieved and added to Sdk.enabledProcesses array.");

            //Write the values of the Sdk.enabledProcesses array to the console
            if (Sdk.enabledProcesses.length < 0) {
                Sdk.writeToConsole("There are no enabled business process flows for this table.");
            }
            else {
                Sdk.writeToConsole("These are the enabled business process flows for this table:");
                for (var i = 0; i < Sdk.enabledProcesses.length; i++) {
                    var enabledProcess = Sdk.enabledProcesses[i];
                    Sdk.writeToConsole("id: " + enabledProcess.id + " name: " + enabledProcess.name)
                }
            }

            //Any code that depends on the Sdk.enabledProcesses array needs to be initiated here

        });
    };

}).call(Sdk);

Kun suoritat tämän mallin selaimen kehittäjätyökalut avattuna, seuraavassa on esimerkki konsoliin kirjoitetusta tulostuksesta taulukolle, jossa on käytössä useita liiketoimintaprosessin työnkulkuja.

Enabled business processes flows retrieved and added to Sdk.enabledProcesses array.
These are the enabled business process flows for this table:
id: 7994be68-899e-4a40-8d18-f5c3b6940188 name: Sample Lead Process
id: 919e14d1-6489-4852-abd0-a63a6ecaac5d name: Lead to Opportunity Sales Process

setActiveProcessInstance
formContext.data.process