Sie befinden sich hier:
Überschreiben des Flows für die Produkterkennung
Verwenden Sie den Flow "Produkte entdecken", um einen Katalog auszuwählen und dann Produkte aus dem Katalog zu den zugehörigen Datensatzseiten hinzuzufügen. Der Flow "Produkte entdecken" ist in der Produkterkennung ohne Weiteres verfügbar und Sie können den Flow über die verfügbaren Funktionen hinaus an Ihre Geschäftsanforderungen anpassen.
Erforderliche Editionen
| Zeigen Sie unterstützte Produkte und Editionen an. |
| Erforderliche Benutzerberechtigungen | |
|---|---|
| Öffnen, Bearbeiten oder Erstellen von Flows in Flow Builder: | Flow verwalten |
Erstellen einer Apex-Klasse zum Erstellen eines Kontextdateneingabe-Datensatzes
Der Flow verwendet eine Apex-Klasse, die eine Liste der ContextDataInput-Datensätze erstellt, die den API-Namen des Objekts und die Datensatz-ID enthalten. Anschließend übergibt der Flow die Liste mit den zusätzlichen Kontextdaten an die Komponente "Container für Produktlistenseiten". Die Komponente zeigt Produkte an und verwendet die zusätzlichen Kontextdaten, Kontextdefinitionen, Qualifikationsregelverfahren und Qualifikationsregeln, um die Produktberechtigung zu bestimmen.
Erstellen Sie eine Apex-Klasse, die den API-Namen und die Datensatz-ID eines Objekts als Eingabe verwendet und eine Liste der ContextDataInput-Datensätze als Ausgabe zurückgibt.
- Geben Sie unter "Setup" im Feld "Schnellsuche" den Text Apex Klassen ein und wählen Sie ihn aus.
- Klicken Sie auf Neu.
-
Passen Sie im Editor den Code an und fügen Sie ihn ein, der zusätzliche Kontextdaten für Ihre Datensätze erstellt.
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 apiName; String recId; FlowOutput output = new FlowOutput(); // Capture input from the flow for(FlowInput input : inputs ){ apiName = input.objectApiName; recId = input.recordId; } //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 = 'Quote'; //Where Quote is the name of the node in the context definition. cd1.nodeData = new Map<String,Object>(); cd1.nodeData.put('id',recId); listContextData.add(cd1); // Return the additional Context Data to a flow output.additionalContextData = listContextData; return new List<FlowOutput>{output}; } } - Speichern Sie Ihre Änderungen.
Erstellen eines benutzerdefinierten Discover-Produkt-Flows
Der vorkonfigurierte Flow "Produkte entdecken" identifiziert zunächst die Anzahl der für den Benutzer verfügbaren Kataloge. Wenn auf der Seite mit den Produkterkennungseinstellungen ein Standardkatalog ausgewählt ist, wird der Katalog automatisch angezeigt, wenn der Benutzer den Flow initiiert. Anschließend übergibt der Flow den objectApiName und die recordId des Datensatzes, über den der Flow aufgerufen wird, an die Apex-Klasse, um zusätzliche Kontextdaten zu generieren. Anschließend verwendet der Flow den ausgewählten Katalog und zusätzliche Kontextdaten in der Komponente "Container für Produktlistenseiten", in der die Produkte angezeigt werden, die Benutzer Angeboten und Aufträgen hinzufügen können.
Verwenden Sie die Komponente "Produktlistenseite", um einem beliebigen Objekt, einschließlich Angeboten und Aufträgen, oder in benutzerdefinierten Komponenten Produktlisten hinzuzufügen. Die Komponente "Produktlistenseite" bietet Ihnen mehr Flexibilität bei der Anpassung der Anzeige und der Aktionsbezeichnung der Produktliste an Ihre spezifischen Anforderungen.
Wenn Sie Ihrer benutzerdefinierten Lightning Web-Komponente die Komponente "Produktlistenseite" hinzufügen, aktivieren Sie die Kommunikation zwischen ihnen, indem Sie die benutzerdefinierte Komponente beim productDiscovery_notification des Lightning Message Service abonnieren. Passen Sie dann die Aktionen für die über den Kanal gesendeten Ereignisse an Ihre Geschäftsanforderungen an. Weitere Informationen finden Sie unter Abonnieren und Abbestellen in einem Nachrichtenkanal.
- Geben Sie unter "Setup" im Feld "Schnellsuche" den Text Flows ein und wählen Sie ihn aus.
- Klicken Sie zum Öffnen des vorkonfigurierten Flows auf Produkte entdecken.
- Klicken Sie in der Kopfzeile der Flow-Seite auf Als neuen Flow speichern und geben Sie eine Flow-Bezeichnung und einen Flow-API-Namen ein.
- Speichern Sie Ihre Änderungen.
Sie können den Flow nun anpassen.
Das Aktualisieren oder Deaktivieren vorhandener Parameter, die aus dem Flow "Produkte entdecken" übernommen wurden, führt zu unerwünschtem Verhalten oder Fehlern. Es wird empfohlen, neue Parameter zu erstellen, um den Flow für bestimmte Anwendungsfälle anzupassen.
Nachdem Sie den Flow erstellt haben, wählen Sie ihn auf der Seite "Einstellungen für die Produkterkennung" aus, um den Flow automatisch zu starten, wenn Benutzer auf Angebots- und Auftragsseiten auf die Schaltfläche "Kataloge durchsuchen" klicken. Ordnen Sie alternativ den Flow der zugehörigen Aktionsschaltfläche für Ihre Datensatzseiten zu.
Einschließen zusätzlicher Felder in Ihren Flow
Wenn Sie zusätzliche Standard- oder benutzerdefinierte Produktfelder in Ihrem überschriebenen Flow anzeigen möchten, erstellen Sie eine Sammlungsvariable, die diese Felder enthält, und wählen Sie dann die Variable im Eigenschaftenbereich der Produktlistencontainer-Komponente aus.
- Geben Sie unter "Setup" im Feld "Schnellsuche" den Text Flows ein und wählen Sie ihn aus.
- Öffnen Sie Ihren überschriebenen Flow.
-
Erstellen Sie eine Flow-Sammlungsvariable.
Sie können die Sammlungsvariable Produktfeldern in einem Zuweisungselement zuordnen.
- Klicken Sie im Toolbox-Manager auf Neue Ressource.
- Wählen Sie Variable als Ressourcentyp aus.
- Geben Sie einen API-Namen und eine Beschreibung für die Variable ein.
- Wählen Sie Text als Datentyp aus.
- Wählen Sie Mehrere Werte (Sammlung) zulassen aus, um die Variable in eine Sammlungsvariable zu konvertieren, in der mehrere Werte gespeichert werden können.
- Speichern Sie Ihre Änderungen.
-
Fügen Sie vor der Flow-Bildschirmkomponente "Produktlistenseite" ein Zuweisungselement hinzu, um der Sammlungsvariablen Werte zuzuweisen.
- Geben Sie einen Namen, einen API-Namen und eine Beschreibung für das Zuweisungselement ein.
- Geben Sie unter "Variable" den API-Namen der Flow-Sammlungsvariablen ein.
- Wählen Sie als Operator Hinzufügen aus.
-
Geben Sie den API-Namen des Produktfelds als Wert für die Variable an.
Geben Sie beispielsweise Product2.SpecificationType ein, um das Feld "Spezifikationstyp" des Produktobjekts als Wert für die Sammlungsvariable hinzuzufügen.
Sie können bis zu 3 zusätzliche Produktfelder einschließen. -
Wählen Sie die Sammlungsvariable in der Flow-Bildschirmkomponente "Produktlistencontainer" aus.
- Öffnen Sie die Flow-Bildschirmkomponente.
- Klicken Sie auf der Seite "Bearbeiten" auf die Komponente "Produktlistencontainer", um auf den Eigenschaftenbereich zuzugreifen.
- Geben Sie in der Eigenschaft "Zusätzliche Felder" den API-Namen der Sammlungsvariablen ein.
- Klicken Sie auf Fertig.
- Speichern Sie den Flow.

