Sie befinden sich hier:
Anzeigen von Sonderangeboten anhand der Transaktionswährung in Organisationen mit mehreren Währungen (Beta)
Führen Sie diese optionale Einrichtung aus, um Sonderangebote basierend auf der Währung der Transaktion anzuzeigen. Wenn Sie mehrere Währungen in Ihrer Organisation verwenden, werden im Fenster "Kataloge durchsuchen" standardmäßig Sonderangebote basierend auf der Währung des Accounts angezeigt, der der Transaktion zugeordnet ist.
Erforderliche Editionen
| Verfügbarkeit: Lightning Experience |
| Verfügbarkeit: Enterprise, Unlimited und Developer Edition von Revenue Cloud mit der Lizenz Revenue Cloud Advanced |
| Erforderliche Benutzerberechtigungen | |
|---|---|
| Anpassen von Kontextdefinitionen: | Kontextservice-Administrator |
| Anpassen von Flows: | Flows verwalten |
Wichtig
Sonderangebote können nur auf der Grundlage der Transaktionswährung angezeigt werden, wenn Sie keine kanalbasierten Sonderangebote eingerichtet haben. hinzu.
Konfigurieren der Produkterkennungskontextdefinition
Ändern Sie die Definition, um Sonderangebote basierend auf der Transaktionswährung anzuzeigen.
-
Bearbeiten Sie Ihre erweiterte Produkterkennungskontextdefinition.
- Suchen Sie unter "Setup" nach Kontextdefinitionen und wählen Sie diese Option aus.
- Klicken Sie auf Benutzerdefinierte Definitionen.
-
Klicken Sie auf Ihre erweiterte Kontextdefinition für die Produkterkennung.
Wenn Sie die vordefinierte Kontextdefinition verwenden, erweitern Sie Ihre Kontextdefinition "ProductDiscoveryContext".
- Klicken Sie auf Bearbeiten.
- Klicken Sie auf der Seite "Kontextdefinitionen bearbeiten" auf Weiter.
-
Klicken Sie auf der Seite "Struktur bearbeiten" neben "Promotion__std" auf
.
- Geben Sie als Namen Transaction__c ein und klicken Sie auf Weiter.
- Klicken Sie auf Transaction__c.
-
Klicken Sie auf Attribute hinzufügen und fügen Sie die Währungsdetails hinzu.
- Geben Sie ccycode__c als Namen ein.
- Wählen Sie für "Typ" die Option EINGABEAUSGABE aus.
- Wählen Sie als Datentyp ZEICHENFOLGE aus.
-
Klicken Sie auf Attribute hinzufügen und fügen Sie die Accountdetails hinzu.
- Geben Sie accountId__c als Namen ein.
- Wählen Sie als Typ EINGABEAUSGABE aus.
- Wählen Sie als Datentyp ZEICHENFOLGE aus.
-
Klicken Sie auf Attribute hinzufügen und fügen Sie die ID-Details hinzu.
- Geben Sie id__c als Namen ein.
- Wählen Sie als Typ EINGABEAUSGABE aus.
- Wählen Sie als Datentyp ZEICHENFOLGE aus.
- Klicken Sie auf Weiter.
-
Fügen Sie auf der Seite "Attribut-Tags bearbeiten" die Attributnamen als Tag-Namen hinzu.
- Klicken Sie neben accountId__c auf Tags hinzufügen.
- Geben Sie als Tag-Namen accountId__c ein.
- Klicken Sie auf Fertig.
-
Wiederholen Sie diese Schritte, um Tags für ccycode__c und id__c hinzuzufügen.
Verwenden Sie den Attributnamen als Tag-Namen.
- Speichern Sie Ihre Änderungen.
Erstellen einer benutzerdefinierten Sonderangebotszuordnung
- Öffnen Sie die Registerkarte "Kartendaten".
-
Klicken Sie neben "ProductDiscoveryPromoMapping" auf
und wählen Sie Duplizieren aus.
- Geben Sie einen Namen ein und speichern Sie Ihre Änderungen.
- Löschen Sie die Zuordnung zwischen dem Knoten "Account" und dem Knoten "SalesTransaction".
-
Ordnen Sie diese Knoten und Attribute zu.
Produkterkennungskontext Vertriebstransaktionskontext Transaction__c SalesTransaction ccycode__c CurrencyIsoCode accountId__c Account - Speichern Sie Ihre Änderungen.
-
Klicken Sie neben "ProductDiscoveryMapping" auf
und wählen Sie Eingabezuordnung bearbeiten aus.
- Klicken Sie auf Knotenzuordnungen generieren.
- Klicken Sie im Fenster "Knotenzuordnungen generieren" auf Aufbewahren und generieren.
- Speichern Sie Ihre Änderungen.
- Aktivieren Sie Ihre Kontextdefinition.
Erstellen einer Apex-Klasse
Erstellen Sie eine Apex-Klasse für eine Flow-Aktion.
-
Klicken Sie auf
und wählen Sie Entwicklerkonsole aus.
- Wählen Sie Datei | Neu | Apex-Klasse .
- Geben Sie als Namen DiscoverProductFlowAction ein.
-
Fügen Sie diesen Code hinzu und speichern Sie Ihre Änderungen.
public class DiscoverProductFlowAction { // Define input parameters public class FlowInput { @InvocableVariable(required=false) public String objectApiName; @InvocableVariable(required=false) public String recordId; } // Define output parameters public class FlowOutput { @InvocableVariable public runtime_industries_cpq.ContextDataInput[] additionalContextData; } // This method is invoked from a flow @InvocableMethod(label='Process Input' description='Creates the Array of ContextDataInput for additional Context Data') public static List<FlowOutput> generateAdditionalContextData(List<FlowInput> inputs) { String objectApiName; String recordId; String ccyCode; String accountId; Quote quoteObject; Order orderObject; FlowOutput output = new FlowOutput(); // Capture input from the flow for(FlowInput input : inputs ){ objectApiName = input.objectApiName; recordId = input.recordId; } //Write logic to Query Currency from Transaction Entity if(objectApiName == 'Quote') { quoteObject = [SELECT CurrencyIsoCode,AccountId FROM Quote WHERE Id = :recordId LIMIT 1][0]; ccyCode = quoteObject.CurrencyIsoCode; accountId = quoteObject.AccountId; } else if(objectApiName == 'Order') { orderObject = [SELECT CurrencyIsoCode,AccountId FROM Order WHERE Id = :recordId LIMIT 1]; ccyCode = orderObject.CurrencyIsoCode; accountId = orderObject.AccountId; } //Populate the ContextDataInput list to store additional context data List<runtime_industries_cpq.ContextDataInput> listContextData = new List<runtime_industries_cpq.ContextDataInput>(); runtime_industries_cpq.ContextDataInput cd1 = new runtime_industries_cpq.ContextDataInput(); cd1.nodeName = 'Transaction'; //Where Quote is the name of the node in the context definition. cd1.nodeData = new Map<String,Object>(); cd1.nodeData.put('id',recordId); cd1.nodeData.put('ccycode',ccyCode); cd1.nodeData.put('accountId',accountId); listContextData.add(cd1); // Return the additional Context Data to a flow output.additionalContextData = listContextData; return new List<FlowOutput>{output}; } }
Anpassen des Produkterkennungs-Flows
- Suchen Sie unter "Setup" nach Flows und wählen Sie diese Option aus.
-
Öffnen Sie Ihren Produkterkennungs-Flow.
Wenn Sie den Standard-Flow verwenden, öffnen Sie Produkte entdecken.
-
Klicken Sie vor dem Bildschirmelement "Produktliste" auf
und wählen Sie Aktion aus.
- Geben Sie eine Bezeichnung und einen API-Namen ein.
- Suchen Sie DiscoverProductFlowAction und wählen Sie diese Option aus.
- Aktivieren Sie objectAPIName und geben Sie objectAPIName als Wert ein.
- Aktivieren Sie recordId und geben Sie recordId als Wert ein.
- Speichern Sie Ihre Änderungen.
- Klicken Sie auf Produktliste.
- Klicken Sie auf Container für Produktlistenseite.
- Wählen Sie für das Attribut "Kontextdaten-Eingabe-Array" die Ausgabe der Aktion aus.
- Speichern Sie Ihre Änderungen.
- Aktivieren Sie den Flow.
Konnten Sie Ihr Problem mithilfe dieses Artikels lösen?
Geben Sie uns Feedback, damit wir uns verbessern können.

