Del via


Eksempel: Xrm.Page.data.process.getActivePath

 

Udgivet: januar 2017

Gælder for: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online

Dette eksempel viser de data, der returneres, når du bruger Xrm.Page.data.process.getActivePath-metoden.

Krav

Funktionen Sdk.formOnLoad i eksempelbiblioteket JavaScript skal angives som OnLoad-hændelseshandleren for en formular.

Demonstrerer

Xrm.Page.data.process.getActivePath-metoden returnerer en samling faser, som repræsenterer evt. foregående faser, den aktuelle aktive fase og de estimerede fremtidige faser under hensyntagen til forgreningsbetingelserne og de aktuelle formulardata. Hver fase er en getSteps-metode, som du kan bruge til at hente oplysninger om hvert trin i fasen.

Dette eksempel illustrerer brugen af nogle af metoderne i Xrm.Page.data.processAPI. Den bruger ikke dette API til repræsentation i forbindelse med opfyldelse af virksomhedens krav; det er kun beregnet til at demonstrere, hvordan du får adgang til de vigtigste egenskabsværdier i kode.

Eksempel

Funktionen Sdk.formOnLoad bruger Xrm.Page.data.process.getActivePath-metoden til at hente en samling af faser. Derefter bruger eksempelkoden forEach-metoden i samlingen til at gennemløbe hver fase. Koden skriver derefter vigtige egenskaber i fasen til konsollen ved hjælp af funktionen Sdk.writeToConsole, der er defineret i dette bibliotek. Koden kan derefter få adgang til en samling af trin for hver fase ved hjælp af getSteps-metoden. Endelig bruges forEach-metoden i samlingen af trin i eksemplet til at få adgang til hvert trin og skrive vigtige egenskaber i trinnet til konsollen.

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

Når eksemplet kører i browseren, kan du bruge udviklerværktøjerne i browseren til at få vist den tekst, der skrives til konsollen. For eksempel, når dette eksempel køres i objektformularen Kundeemne med Kundeemne til salgsproces for salgsmulighed, skrives følgende til konsollen:

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
    ---------------------------------------
---------------------------------------

Se også

Skrive scripts til forretningsprocesforløb
Eksempel: Xrm.Page.data.process.getEnabledProcesses

Microsoft Dynamics 365

© 2017 Microsoft. Alle rettigheder forbeholdes. Ophavsret