Ich verfüge über eine benutzerdefinierte Workflowaktivität, die neue Opportunity aus meinen benutzerdefinierten Workflowaktivitäten erstellt. Ich habe diese Aktivität als Aktionsschritt. Ich benutze Aktion, weil sie eine Ausgabe hat. Ich muss eine Chance bekommen, die ich geschaffen habe. Ich rufe diese Aktion von JS Web-Ressource mit Process.js. Danach benutze ich Notify.js, um den Benutzer zu benachrichtigen, dass eine Opportunity erstellt wurde. Bei dieser Benachrichtigung muss ich eine Schaltfläche haben, die eine Verknüpfung zu der neu erstellten Opportunity darstellt.Fügen Sie einen Link zum neu erstellten Entitätsdatensatz mit Notify.js hinzu - CRM
Hier sind einige Teile des C# -Codes für den Ausgabeparameter. Nur, dass ein Teil des Codes bemerken Gelegenheit zum Erstellen, und einige weitere Aufgaben zu tun funktioniert:
//define variable
[Output("Opportunity")]
[ReferenceTarget("opportunity")]
public OutArgument<EntityReference> NewOpportunity { get; set; }
//create opportunity and entity reference(i am not sure do ineed entity reference, or something else for that link)
Guid opportunityId = service.Create(opportunity);
EntityReference OppId = new EntityReference(opportunity.LogicalName, opportunityId);
//assign value to the output variable
NewOpportunity.Set(Econtext, OppId);
Hier ist, wie ich meine Aktionsparameter in Aktion Definition erstellt:
Und hier ist die JS Code, wo Aktion aufgerufen wird:
function toOpportunity(){
Process.callAction("ad_opportunity",
[{
key: "Target",
type: Process.Type.EntityReference,
value: { id: Xrm.Page.data.entity.getId(), entityType: "ad_productsamplerequest" }
}],
function (param) {
//Success
Notify.add("New Opportunity was created:", "INFO", "opportunity",
[{
type: "button",
text: "Go to opportunity",
callback: function() {
}
}]);
},
function() {
// Error
alert("Opportunity was not created");
}
);
nur zu sagen, es funktioniert, wird Aktion aufgerufen, Möglichkeit geschaffen wird, gibt Benachrichtigung danach ist. Ich weiß einfach nicht, wie man den action output Parameter benutzt, um die Verbindung zu der Opportunity zu setzen.
Ist es irgendwie möglich, dies in Code Activity zu tun? Ich muss diese Code-Aktivität von Aktion aufrufen, weil ich wirklich bestimmte Bedingungen habe, wenn ich diese Bedingungen anrufe. Ich verwende eine Aktion, weil sie Ausgabeparameter hat, und ich lehrte, die ID unter Verwendung dieser Parameter zu erhalten. –
Ist es vielleicht möglich, ein neues Plugin nur für die ID zu haben? Um den Post-Create-Schritt zu registrieren, wenn Opportunity erstellt wird, und um es nur zu verwenden, um die ID der erstellten Opportunity zu erhalten? –
@MilosNikolic: Aktionen und Code-Aktivitäten sind zwei verschiedene Komponenten. Ich habe meine Antwort erweitert, um ein bisschen mehr Erklärung zu geben. Hilft das? –