Delen via


Voorbeeld: Xrm.Page.data.process.getActivePath

 

Gepubliceerd: november 2016

Is van toepassing op: Dynamics CRM 2015

In dit voorbeeld wordt de gegevens weergegeven die worden geretourneerd als u de methode Xrm.Page.data.process.getActivePath.

Vereisten

De functie Sdk.formOnLoad in de JavaScript-voorbeeldbibliotheek moet zijn ingesteld als OnLoad-gebeurtenishandler voor een formulier.

Demonstreert

De methode Xrm.Page.data.process.getActivePath retourneert een verzameling fasen die alle eerdere fasen, de huidige actieve fase en de voorspelde toekomstige fasen weergeeft met inachtneming van de vertakkingsvoorwaarden en de huidige formuliergegevens. Elke fase heeft een getSteps-methode die u kunt gebruiken om gegevens over elke stap in de fase op te halen.

Dit voorbeeld toont het gebruik van enkele van de methoden in de Xrm.Page.data.process-API. Het is niet bedoeld om het gebruik te illustreren van deze API om aan een zakelijk vereiste te voldoen; het is alleen bedoeld om te laten zien hoe de belangrijkste eigenschapswaarden toegankelijk zijn via code.

Voorbeeld

De functie Sdk.formOnLoad gebruikt de Xrm.Page.data.process.getActivePath-methode om een verzameling fasen op te halen. Vervolgens gebruikt de voorbeeldcode de forEach-methode van de verzameling om elke fase te doorlopen. De code schrijft vervolgens belangrijke eigenschappen van de fase naar de console met de functie Sdk.writeToConsole die in deze bibliotheek is gedefinieerd. De code verkrijgt vervolgens toegang tot een verzameling stappen voor elke fase via de getSteps-methode. Tot slot gebruikt het voorbeeld de forEach-methode van de stappenverzameling om toegang te verkrijgen tot elke stap en belangrijke eigenschappen van de stap naar de console te schrijven.

var Sdk = window.Sdk || { __namespace: true };
(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 () {
  //Enumerate the stages and steps in the active path
  var activePathCollection = Xrm.Page.data.process.getActivePath();
  activePathCollection.forEach(function (stage, n) {
   Sdk.writeToConsole("Stage Index: " + n);
   Sdk.writeToConsole("Entity: " + 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 Attribute: " + step.getAttribute());
    Sdk.writeToConsole("    Step Required: " + step.isRequired());
    Sdk.writeToConsole("    ---------------------------------------")
   })
   Sdk.writeToConsole("---------------------------------------")
  });
 };
}).call(Sdk);

Als het voorbeeld wordt uitgevoerd in de browser, kunt u de ontwikkelaarhulpprogramma's van de browser gebruiken om de tekst te bekijken die naar de console wordt geschreven. Als dit voorbeeld bijvoorbeeld wordt uitgevoerd in het entiteitformulier Potentiële klant met Potentiële klant ingesteld op Verkoopkansverkoopproces, wordt het volgende naar de console geschreven:

Stage Index: 0
Entity: lead
StageId: f99b4d48-7aad-456e-864a-8e7d543f7495
Status: active
    Step Name: Existing Contact?
    Step Attribute: null
    Step Required: false
    ---------------------------------------
    Step Name: Existing Account?
    Step Attribute: null
    Step Required: false
    ---------------------------------------
    Step Name: Purchase Timeframe
    Step Attribute: purchasetimeframe
    Step Required: false
    ---------------------------------------
    Step Name: Estimated Budget
    Step Attribute: budgetamount
    Step Required: false
    ---------------------------------------
    Step Name: Purchase Process
    Step Attribute: purchaseprocess
    Step Required: false
    ---------------------------------------
    Step Name: Identify Decision Maker
    Step Attribute: decisionmaker
    Step Required: false
    ---------------------------------------
    Step Name: Capture Summary
    Step Attribute: description
    Step Required: false
    ---------------------------------------
---------------------------------------
Stage Index: 1
Entity: opportunity
StageId: bfc9108c-8389-406b-9166-2c3298a2e41f
Status: inactive
    Step Name: Customer Need
    Step Attribute: customerneed
    Step Required: false
    ---------------------------------------
    Step Name: Proposed Solution
    Step Attribute: proposedsolution
    Step Required: false
    ---------------------------------------
    Step Name: Identify Stakeholders
    Step Attribute: identifycustomercontacts
    Step Required: false
    ---------------------------------------
    Step Name: Identify Competitors
    Step Attribute: identifycompetitors
    Step Required: false
    ---------------------------------------
---------------------------------------
Stage Index: 2
Entity: opportunity
StageId: 3a275c22-fc45-4e89-97fc-41e5ec578743
Status: inactive
    Step Name: Identify Sales Team
    Step Attribute: identifypursuitteam
    Step Required: false
    ---------------------------------------
    Step Name: Develop Proposal
    Step Attribute: developproposal
    Step Required: false
    ---------------------------------------
    Step Name: Complete Internal Review
    Step Attribute: completeinternalreview
    Step Required: false
    ---------------------------------------
    Step Name: Present Proposal
    Step Attribute: presentproposal
    Step Required: false
    ---------------------------------------
---------------------------------------
Stage Index: 3
Entity: opportunity
StageId: 7f5247fe-cfc3-42bc-aa77-b1d836d9b7c0
Status: inactive
    Step Name: Complete Final Proposal
    Step Attribute: completefinalproposal
    Step Required: false
    ---------------------------------------
    Step Name: Present Final Proposal
    Step Attribute: presentfinalproposal
    Step Required: false
    ---------------------------------------
    Step Name: Confirm Decision Date
    Step Attribute: finaldecisiondate
    Step Required: false
    ---------------------------------------
    Step Name: Send Thank You
    Step Attribute: sendthankyounote
    Step Required: false
    ---------------------------------------
    Step Name: File De-brief
    Step Attribute: filedebrief
    Step Required: false
    ---------------------------------------
---------------------------------------

Zie ook

Scripts schrijven voor bedrijfsprocesstromen

© 2017 Microsoft. Alle rechten voorbehouden. Auteursrecht