IBQConfigBase-API: Bereichsbezogen
Skripteinbindung, die für erweitert werden muss Vertriebs- und Auftragsmanagement Anforderungstracker zum Nachverfolgen der Anforderungen. Diese Skripteinbindung bietet überschreibbare Methoden, die definieren, wie Anforderungen ausgeführt werden sollen.
Das Plugin „Sales and Service API Core“ (com.sn_tmt_Core) muss für aktiviert sein IBQConfigBase Skripteinbindung, die in einer Instanz verfügbar sein soll. Diese Skripteinbindung gehört zu sn_tmt_Core Namespace und erfordert die Administratorrolle.
Erweitern der IBQConfigBase-API
Definieren Sie eine Skripteinbindung mit den überschreibbaren Methoden der IBQConfigBase-API.
- Erstellen Sie eine Skripteinbindung. Der Name muss mit beginnen IBQConfig , Beispiel: IBQConfigQuoteToOrderFlowSNC .
- Erweitern Sie IBQConfigBase API.Zum Beispiel:
IBQConfigQuoteToOrderFlowSNC.prototype = Object.extendsObject(sn_tmt_core.IBQConfigBase, { ... }); - Überschreiben Sie alle erforderlichen Methoden, die von bereitgestellt werden IBQConfigBase API.Zum Beispiel:
getRunMode: function(inboundQueueParams) { return this.quoteUtil.getQuoteSize(inboundQueueParams.source_record_ids, this.threshold); }, generateParentRecord: function(inboundQueueParams, additionalParams, context) { var result = ""; var entityMappingGr = this.getMapingConfigIdFromSysId(inboundQueueParams.requested_flow); var sourceToTargetConfigID = entityMappingGr.getValue("mapping_config_id"); var sourceHeaderId = inboundQueueParams.source_record_ids; if (gs.nil(inboundQueueParams.requested_flow)) throw "sourceToTargetConfigID cannot be null"; if (gs.nil(inboundQueueParams.source_record_ids)) throw "source record id cannot be null"; var util = new sn_l2c_core.PrimitiveUtil(); if (gs.nil(additionalParams)) additionalParams = {}; additionalParams[this.SKIP_LINES_KEY] = "true"; }, processInboundQueueRequest: function(inboundQueueGR) { gs.info("processRequest inboundQueueGR " + JSON.stringify(inboundQueueGR)); var result = this.quoteUtil.createOrderFromQuoteUsingMetadata(inboundQueueGR.getValue('source_record_ids'), 'sn_l2c_quote_to_order', null, null, inboundQueueGR.getValue('record_id')); return result; } - Erstellen Sie einen neuen Metadateneintrag in der Tabelle „Konfiguration eingehender Anforderungen“ [sn_tmt_Core_inbound_Queue_config], um zu definieren, wie eine Anforderung verarbeitet werden soll.
- Verknüpfen Sie die erstellte Skripteinbindung mit Configuration_api Feld des Metadatendatensatzes zur Verwendung der anwenderdefinierten Logik, die bei der Verarbeitung der Anforderung definiert wurde. Auf die Skripteinbindung wird in verwiesen Configuration_api Feld beim Erstellen eingehender Anforderungskonfigurationsmetadaten.
Anwendungsfall: IBQConfigQuoteToOrderFlow
var IBQConfigQuoteToOrderFlowSNC = Class.create();
IBQConfigQuoteToOrderFlowSNC.prototype = Object.extendsObject(sn_tmt_core.IBQConfigBase, {
initialize: function() {
this.quoteUtil = new sn_quote_mgmt.OrderIntegration();
this.SKIP_LINES_KEY = "skipLines";
this.threshold = 15;
},
getRunMode: function(inboundQueueParams) {
return this.quoteUtil.getQuoteSize(inboundQueueParams.source_record_ids, this.threshold);
},
generateParentRecord: function(inboundQueueParams, additionalParams, context) {
var result = "";
var entityMappingGr = this.getMapingConfigIdFromSysId(inboundQueueParams.requested_flow);
var sourceToTargetConfigID = entityMappingGr.getValue("mapping_config_id");
var sourceHeaderId = inboundQueueParams.source_record_ids;
if (gs.nil(inboundQueueParams.requested_flow))
throw "sourceToTargetConfigID cannot be null";
if (gs.nil(inboundQueueParams.source_record_ids))
throw "source record id cannot be null";
var util = new sn_l2c_core.PrimitiveUtil();
if (gs.nil(additionalParams))
additionalParams = {};
additionalParams[this.SKIP_LINES_KEY] = "true";
// additional parameters are retrieved using the PrimitiveUtil() utility methods provided by the Lead to Cash Core application
var service = util.getPrimitivesEPService(sourceToTargetConfigID, context);
var isEmpty = false;
if (service) {
var createInstanceOutput = service.createInstance(sourceHeaderId, null, false, additionalParams);
if (gs.nil(sourceHeaderId))
isEmpty = this.__isEmpty(createInstanceOutput.lineItems);
else
isEmpty = this.__isEmpty(createInstanceOutput);
if (!isEmpty) {
var effectOutput = service.effect(createInstanceOutput, null, additionalParams);
if (!this.__isEmpty(effectOutput)) {
var commitOutput = service.commitInstance(effectOutput, additionalParams);
return commitOutput;
}
}
}
return result;
},
processInboundQueueRequest: function(inboundQueueGR) {
gs.info("processRequest inboundQueueGR " + JSON.stringify(inboundQueueGR));
var result = this.quoteUtil.createOrderFromQuoteUsingMetadata(inboundQueueGR.getValue('source_record_ids'), 'sn_l2c_quote_to_order', null, null, inboundQueueGR.getValue('record_id'));
return result;
},
__isEmpty: function(sourceObj) {
if (gs.nil(sourceObj))
return true;
return Object.keys(sourceObj).length === 0;
},
getMapingConfigIdFromSysId(requestedFlow) {
var gr = new GlideRecord("sn_l2c_core_entity_mapping");
gr.addQuery("sys_id", requestedFlow);
gr.query();
if (gr.next()) {
gs.info("mapping id received to corresponding requestedFlow");
return gr;
}
},
type: 'IBQConfigQuoteToOrderFlowSNC'
});IBQConfigBase – generateParentRecord(Object ibqParams)
Erstellt einen übergeordneten Datensatz, der der Record_ID des Datensatzes der eingehenden Anforderung [sn_tmt_Core_inbound_Queue_list] hinzugefügt wird, bevor die Anforderung verarbeitet wird.
Hat Ein übergeordneter Datensatz „Vor der Verarbeitung erstellt“ ist ideal für die asynchrone Verarbeitung und ermöglicht Ihnen das Hinzufügen von Aktivitäten zu Ihrer Skripteinbindung, die während der Verarbeitung ausgeführt werden können. Beispiel: Anzeige einer Nachricht auf dem Bildschirm.
| Name | Typ | Beschreibung |
|---|---|---|
| IbqParams | Objekt | JSON-Objekt, das die Details des zu erstellenden Datensatzes für eingehende Anforderungen enthält. |
| Account | Zeichenfolge | Optional. Informationen zum Account, der dem Datensatz zugeordnet ist. Tabelle: Account [Customer_Account] |
| Verbraucher | Zeichenfolge | Optional. Informationen zum Verbraucher, der dem Datensatz zugeordnet ist. Tabelle: Verbraucher [csm_Consumer] |
| Kontakt | Zeichenfolge | Optional. Informationen zum Kontakt, der dem Datensatz zugeordnet ist. Tabelle: Kontakt [Customer_contact] |
| Nutzlast | Objekt | Optional. JSON-Objekt, das erforderlich ist, um die Anforderung mit zu verarbeiten PrimitiveUtil() API. Informationen zur Nutzung finden Sie unter LeadToCashCore . |
| Payload.zusätzliche Parameter | Objekt | Optional. Zusätzliche zu verwendende Parameter. |
| Payload.zusätzliche Parameter.Aktion | Zeichenfolge | Optional. Gibt den Typ der deklarativen Aktion an, die ausgeführt wird. Weitere Informationen finden Sie unter Customer Life Cycle Management Workflows. Mögliche Werte:
|
| Nutzlast.zusätzliche Parameter.actionReason | Zeichenfolge | Optional. Eigenschaft, die in Flows mit deklarativen Aktionen verwendet wird. Grund für die Aktion. |
| Payload.zusätzliche Parameter.Enddatum | Zeichenfolge | Optional. Enddatum, das zum Ausführen von Flows mit deklarativen Aktionen erforderlich ist. Format: jjjj-MM-TT HH:mm:ss |
| Payload.additionalParameter.skipLines | Boolean | Optional. Kennzeichnung, die angibt, ob Einzelposten für die angegebene Entität abgerufen werden sollen. Gültige Werte:
|
| Payload.zusätzliche Parameter.Startdatum | Zeichenfolge | Optional. Startdatum für die Ausführung von Flows mit deklarativen Aktionen. Format: jjjj-MM-TT HH:mm:ss |
| Payload.context | Objekt | Optional. Zusätzliche Parameteroptionen zum Anzeigen von Attributwerten und zum Aufrufen mehrerer Instanzen gleichzeitig. |
| Nutzlast.Kontext.isMultiSelect | Boolean | Optional. Kennzeichnung, die angibt, ob mehrere Entitäten als Eingabe übergeben werden sollen, um die Instanz zu erstellen. Gültige Werte:
|
| Payload.context.sourceToTargetConfigID | Zeichenfolge | Optional. Zuordnungskonfigurations-ID für die Quell-zu-Ziel-Zuordnung. Tabelle: Lead-to-Cash-Entitätszuordnung [sn_l2c_Core_Entity_Mapping] |
| payload.inputParams | Objekt | Optional. Dieses Objekt ist ein Platzhalter für alle Eingabeparameter, die zum Aufrufen der Verwendung eines bestimmten Flows erforderlich sind. |
| Payload.Source | Array | Optional. JSON-Objekt mit Details der Quellentität, aus der Daten abgerufen werden sollen. |
| Payload.Source.headerId | Zeichenfolge | Optional. Header-sys_ID der Quellentität, aus der Daten abgerufen werden sollen.
|
| Payload.Source.lineIds | Array | Optional. Array mit sys_ID(s) des Quellpositionselements einer Entität, aus der Entitätsdaten abgerufen werden sollen. Erforderlich, wenn Sie die Header-ID nicht angeben und wenn die Entitätsstruktur mit Einzelposten wie „verkauftes Produkt“ beginnt. |
| Payload.target | Array | Optional. JSON-Objekt mit Details der Zielentität. |
| Payload.target.headerId | Zeichenfolge | Optional. Header-sys_ID der Zielentität, aus der Daten abgerufen werden sollen. Erforderlich, wenn Sie nicht angeben lineIdsParameter. Übergeben Sie null , wenn Sie keine Header-sys_IDs übergeben. |
| Payload.target.lineIds | Array | Optional. Array mit sys_ID(s) des Zielpositionen einer Entität, aus der Entitätsdaten abgerufen werden sollen. Erforderlich, wenn Sie keine Header-ID angeben und die Entitätsstruktur mit Einzelposten wie „verkauftes Produkt“ beginnt. |
| record_id | Zeichenfolge | Optional. SYS_ID des Zieldatensatzes, falls bereits vorhanden. |
| Request_Flow | Zeichenfolge | Optional. Zuordnungskonfigurations-ID für Quell-zu-Ziel-Zuordnung. Diese Eigenschaft ist für Flows mit erforderlich Entity configuration and mapping. Tabelle: Lead-to-Cash-Entitätszuordnung [sn_l2c_Core_Entity_Mapping] |
| Source_Record_IDs | Array | Array, das die sys_IDs der Quelldatensätze enthält. |
| source_table | Zeichenfolge | Name der Tabelle, die den Quelldatensatz des Flows enthält. |
| table | Zeichenfolge | Name der Tabelle, die den Zieldatensatz des Flows enthält. |
| Typ | Beschreibung |
|---|---|
| JSON-Objekt | Ein JSON-Objekt mit der Header-ID des erstellten Zieldatensatzes.
|
| HeaderID | SYS_ID des Headers des erstellten Zieldatensatzes. Dieser Wert wird verwendet, um das Feld „Record_ID“ beim Erstellen des Datensatzes der eingehenden Anforderung auszufüllen. |
var ibqParams = {
"source_record_ids": "f83e29574df02210f877142d1adc9531",
"requested_flow": "0feb6d9da36271105c24939ef31e61dc",
"initiated_by": "admin",
"source_table": "sn_quote_mgmt_core_quote",
"table": "sn_ind_tmt_orm_order",
"payload": {}
};
var service = new sn_quote_mgmt.IBQConfigQuoteToOrderFlow();
var parentRecord = service.generateParentRecord(ibqParams);
gs.info("Parent record = "+JSON.stringify(parentRecord));
Parent record = {"headerID":"d11bd507dc6c6a10f877720033b5d0b9", ...} IBQConfigBase – getRunMode (Objekt-ibqParams)
Bestimmt, ob ein Flow im synchronisierten oder asynchronen Modus ausgeführt werden soll.
| Name | Typ | Beschreibung |
|---|---|---|
| IbqParams | Objekt | JSON-Objekt, das die Details des zu erstellenden Datensatzes für eingehende Anforderungen enthält. |
| Account | Zeichenfolge | Optional. Informationen zum Account, der dem Datensatz zugeordnet ist. Tabelle: Account [Customer_Account] |
| Verbraucher | Zeichenfolge | Optional. Informationen zum Verbraucher, der dem Datensatz zugeordnet ist. Tabelle: Verbraucher [csm_Consumer] |
| Kontakt | Zeichenfolge | Optional. Informationen zum Kontakt, der dem Datensatz zugeordnet ist. Tabelle: Kontakt [Customer_contact] |
| Nutzlast | Objekt | Optional. JSON-Objekt, das erforderlich ist, um die Anforderung mit zu verarbeiten PrimitiveUtil() API. Informationen zur Nutzung finden Sie unter LeadToCashCore . |
| Payload.zusätzliche Parameter | Objekt | Optional. Zusätzliche zu verwendende Parameter. |
| Payload.zusätzliche Parameter.Aktion | Zeichenfolge | Optional. Gibt den Typ der deklarativen Aktion an, die ausgeführt wird. Weitere Informationen finden Sie unter Customer Life Cycle Management Workflows. Mögliche Werte:
|
| Nutzlast.zusätzliche Parameter.actionReason | Zeichenfolge | Optional. Eigenschaft, die in Flows mit deklarativen Aktionen verwendet wird. Grund für die Aktion. |
| Payload.zusätzliche Parameter.Enddatum | Zeichenfolge | Optional. Enddatum, das zum Ausführen von Flows mit deklarativen Aktionen erforderlich ist. Format: jjjj-MM-TT HH:mm:ss |
| Payload.additionalParameter.skipLines | Boolean | Optional. Kennzeichnung, die angibt, ob Einzelposten für die angegebene Entität abgerufen werden sollen. Gültige Werte:
|
| Payload.zusätzliche Parameter.Startdatum | Zeichenfolge | Optional. Startdatum für die Ausführung von Flows mit deklarativen Aktionen. Format: jjjj-MM-TT HH:mm:ss |
| Payload.context | Objekt | Optional. Zusätzliche Parameteroptionen zum Anzeigen von Attributwerten und zum Aufrufen mehrerer Instanzen gleichzeitig. |
| Nutzlast.Kontext.isMultiSelect | Boolean | Optional. Kennzeichnung, die angibt, ob mehrere Entitäten als Eingabe übergeben werden sollen, um die Instanz zu erstellen. Gültige Werte:
|
| Payload.context.sourceToTargetConfigID | Zeichenfolge | Optional. Zuordnungskonfigurations-ID für die Quell-zu-Ziel-Zuordnung. Tabelle: Lead-to-Cash-Entitätszuordnung [sn_l2c_Core_Entity_Mapping] |
| payload.inputParams | Objekt | Optional. Dieses Objekt ist ein Platzhalter für alle Eingabeparameter, die zum Aufrufen der Verwendung eines bestimmten Flows erforderlich sind. |
| Payload.Source | Array | Optional. JSON-Objekt mit Details der Quellentität, aus der Daten abgerufen werden sollen. |
| Payload.Source.headerId | Zeichenfolge | Optional. Header-sys_ID der Quellentität, aus der Daten abgerufen werden sollen.
|
| Payload.Source.lineIds | Array | Optional. Array mit sys_ID(s) des Quellpositionselements einer Entität, aus der Entitätsdaten abgerufen werden sollen. Erforderlich, wenn Sie die Header-ID nicht angeben und wenn die Entitätsstruktur mit Einzelposten wie „verkauftes Produkt“ beginnt. |
| Payload.target | Array | Optional. JSON-Objekt mit Details der Zielentität. |
| Payload.target.headerId | Zeichenfolge | Optional. Header-sys_ID der Zielentität, aus der Daten abgerufen werden sollen. Erforderlich, wenn Sie nicht angeben lineIdsParameter. Übergeben Sie null , wenn Sie keine Header-sys_IDs übergeben. |
| Payload.target.lineIds | Array | Optional. Array mit sys_ID(s) des Zielpositionen einer Entität, aus der Entitätsdaten abgerufen werden sollen. Erforderlich, wenn Sie keine Header-ID angeben und die Entitätsstruktur mit Einzelposten wie „verkauftes Produkt“ beginnt. |
| record_id | Zeichenfolge | Optional. SYS_ID des Zieldatensatzes, falls bereits vorhanden. |
| Request_Flow | Zeichenfolge | Optional. Zuordnungskonfigurations-ID für Quell-zu-Ziel-Zuordnung. Diese Eigenschaft ist für Flows mit erforderlich Entity configuration and mapping. Tabelle: Lead-to-Cash-Entitätszuordnung [sn_l2c_Core_Entity_Mapping] |
| Source_Record_IDs | Array | Array, das die sys_IDs der Quelldatensätze enthält. |
| source_table | Zeichenfolge | Name der Tabelle, die den Quelldatensatz des Flows enthält. |
| table | Zeichenfolge | Name der Tabelle, die den Zieldatensatz des Flows enthält. |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Informationen zum Ausführungsmodus, der zum Ausführen der Anforderung verwendet werden soll. Mögliche Werte:
|
Asynchron .var ibqParams = {
"source_record_ids": "04ba9004f11f3110f8777d7194f166f6",
"requested_flow": "0feb6d9da36271105c24939ef31e61dc",
"initiated_by": "admin",
"source_table": "sn_quote_mgmt_core_quote",
"table": "sn_ind_tmt_orm_order",
"payload": {}
};
var service = new sn_quote_mgmt.IBQConfigQouteToOrderFlow();
var runMode = service.getRunMode(ibqParams);
gs.info("RunMode = "+JSON.stringify(runMode));
RunMode = "async"var ibqParams = {
"source_record_ids": "0b0f5cc8f11f3110f8777d7194f16610",
"requested_flow": "0feb6d9da36271105c24939ef31e61dc",
"initiated_by": "admin",
"source_table": "sn_quote_mgmt_core_quote",
"table": "sn_ind_tmt_orm_order",
"payload": {}
};
var service = new sn_quote_mgmt.IBQConfigQouteToOrderFlow();
var runMode = service.getRunMode(ibqParams);
gs.info("RunMode = "+JSON.stringify(runMode));
RunMode = "sync"IBQConfigBase – processInbound QueueRequest(GlideRecord ibqGr)
Definiert die Logik für die Verarbeitung eines eingehenden Anforderungsdatensatzes.
| Name | Typ | Beschreibung |
|---|---|---|
| IbqGr | GlideRecord | GlideRecord Verweis auf den Datensatz der eingehenden Anforderung, der den Flow ausgelöst hat. Tabelle: Eingehende Anforderung [sn_tmt_Core_inbound_Queue] |
| Typ | Beschreibung |
|---|---|
| Objekt | Ein JSON-Objekt, das die Verarbeitungsdetails des Datensatzes der eingehenden Anforderung enthält. |
| Fehler | Wert, der den Fehler bei der Verarbeitung der Anforderung angibt. Datentyp: Zeichenfolge |
| response | Ein JSON-Objekt, das die Antwort der Verarbeitung des Datensatzes der eingehenden Anforderung enthält. Für Flows, die vom Lead-to-Cash-Core erstellt wurden PrimitiveUtil API, kann diese Ausgabe mit bereitgestellt werden CommitInstance() Methode. Datentyp: Objekt |
| status | Wert, der den Status der Anforderungsverarbeitung angibt. Mögliche Werte:
Datentyp: Zeichenfolge |
| Ziel | Optional. SYS_ID des Zieldatensatzes, der für die weitere Verarbeitung verwendet werden soll, z. B. UI-Bestätigung. Das Ziel kann entweder während des Flows erstellt oder als Eingabe an übergeben werden ibqParamsVon GenerateParentRecord() Methode abhängig von der Anforderung. Datentyp: Zeichenfolge |
var gr = new GlideRecord('sn_tmt_core_inbound_queue');
gr.get('c48ea9974df02210f877142d1adc951a');
var service = new sn_quote_mgmt.IBQConfigQuoteToOrderFlow();
var processRequest = service.processInboundQueueRequest(gr);
gs.info("processRequest = "+JSON.stringify(processRequest));
processRequest = {
"response": {
"status": "success",
"error": "",
"message": "Commit operation successfully processed.",
"displayMessage": "Commit operation successfully processed.",
"dataObject": {
"sys_id": "a6f4568bdce0aa10f877720033b5d069",
"table": "sn_ind_tmt_orm_order",
"attributes": {
"account": {
"value": "9e2fd2ee11b43110f877366201dea674"
},
"quote": {
"value": "c8841a4bdce0aa10f877720033b5d0f8"
}
},
"_glide_action": "UPDATE",
"_source_object": {
"sys_id": "c8841a4bdce0aa10f877720033b5d0f8",
"table": "sn_quote_mgmt_core_quote"
},
"lineItems": [
{
"sys_id": "-1",
"table": "sn_ind_tmt_orm_order_line_item",
"attributes": {
"short_description": {
"value": "Home Automation Bundle"
},
"account": {
"value": "9e2fd2ee11b43110f877366201dea674"
}
},
"_glide_action": "INSERT",
"_source_object": {
"sys_id": "afc4528bdce0aa10f877720033b5d0d0",
"table": "sn_quote_mgmt_core_quote_line_item"
},
"characteristics": [],
"lineItems": [
{
"sys_id": "-1",
"table": "sn_ind_tmt_orm_order_line_item",
"attributes": {
"short_description": {
"value": "Door Sensor"
},
"account": {
"value": "9e2fd2ee11b43110f877366201dea674"
}
},
"_glide_action": "INSERT",
"_source_object": {
"sys_id": "77c4528bdce0aa10f877720033b5d0d5",
"table": "sn_quote_mgmt_core_quote_line_item"
},
"characteristics": [],
"lineItems": [],
"pricingAdjustments": [
{
"sys_id": "-1",
"table": "sn_ind_tmt_orm_pricing_adjustment",
"attributes": {
"name": {
"value": "door sensor bundle discount"
}
},
"_glide_action": "INSERT",
"_source_object": {
"sys_id": "f3c4928bdce0aa10f877720033b5d02f",
"table": "sn_quote_mgmt_core_pricing_adjustment"
},
"_commitObjectInfo": {
"sys_id": "e6955acbdce0aa10f877720033b5d082",
"status": "success"
}
}
],
"coveredProducts": [],
"attributeAdjustment": [],
"_commitObjectInfo": {
"sys_id": "26955acbdce0aa10f877720033b5d07d",
"status": "success"
}
}
],
"pricingAdjustments": [],
"coveredProducts": [],
"attributeAdjustment": [],
"_commitObjectInfo": {
"sys_id": "22955acbdce0aa10f877720033b5d078",
"status": "success"
}
}
],
"_commitObjectInfo": {
"status": "success"
}
},
"headerID": "a6f4568bdce0aa10f877720033b5d069",
"rootLineIDs": [
"22955acbdce0aa10f877720033b5d078"
]
},
"status": "success",
"error": "",
"target": "a6f4568bdce0aa10f877720033b5d069"
}IBQConfigBase – setExecuteAfterRequest(Object ibqParams)
Legt fest Execute_After Wert und Updates status Zu Ausstehend für den aktuellen Datensatz der eingehenden Anforderung, um die Reihenfolge zu konfigurieren, in der Datensätze in der Tabelle „eingehende Anforderungen“ verarbeitet werden.
Die SetExecuteAfterRequest() Die Methode kann überschrieben werden, um abzuleiten execute_afterWert aus anderen Parametern. Standardmäßig fragt diese Methode die Tabelle „eingehende Anforderung“ [sn_tmt_Core_inbound_Queue] ab, um den neuesten Datensatz mit Übereinstimmung zu finden source_record_ids, record_id, Und resourceWerte. Diese Methode aktualisiert dann den aktuellen Datensatz Execute_After Feld mit sys_ID des abgefragten Datensatzes, das den aktuellen Datensatz markiert, der nach dem abgefragten Datensatz verarbeitet werden soll. Infolgedessen SetExecuteAfterRequest() Legt die Reihenfolge fest, in der Datensätze verarbeitet werden.
| Name | Typ | Beschreibung |
|---|---|---|
| IbqParams | Objekt | JSON-Objekt, das die Details der festzulegenden Datensätze für eingehende Anforderungen enthält. Diese Parameter umfassen die sys_ID des Datensatzes, die vor dem aktuellen Datensatz verarbeitet werden soll, und den Workflow-Namen, nach dem in der Tabelle „eingehende Anforderung“ [sn_tmt_Core_inbound_Queue] gefiltert werden soll. |
| Account | Zeichenfolge | Optional. Informationen zum Account, der dem Datensatz zugeordnet ist. Tabelle: Account [Customer_Account] |
| Verbraucher | Zeichenfolge | Optional. Informationen zum Verbraucher, der dem Datensatz zugeordnet ist. Tabelle: Verbraucher [csm_Consumer] |
| Kontakt | Zeichenfolge | Optional. Informationen zum Kontakt, der dem Datensatz zugeordnet ist. Tabelle: Kontakt [Customer_contact] |
| IbqParams.execute_After | Zeichenfolge | Optional. SYS_ID der eingehenden Anforderung, die vor der aktuellen Anforderung verarbeitet werden soll. Tabelle: Eingehende Anforderung [sn_tmt_Core_inbound_Queue] |
| Nutzlast | Objekt | Optional. JSON-Objekt, das erforderlich ist, um die Anforderung mit zu verarbeiten PrimitiveUtil() API. Informationen zur Nutzung finden Sie unter LeadToCashCore . |
| Payload.zusätzliche Parameter | Objekt | Optional. Zusätzliche zu verwendende Parameter. |
| Payload.zusätzliche Parameter.Aktion | Zeichenfolge | Optional. Gibt den Typ der deklarativen Aktion an, die ausgeführt wird. Weitere Informationen finden Sie unter Customer Life Cycle Management Workflows. Mögliche Werte:
|
| Nutzlast.zusätzliche Parameter.actionReason | Zeichenfolge | Optional. Eigenschaft, die in Flows mit deklarativen Aktionen verwendet wird. Grund für die Aktion. |
| Payload.zusätzliche Parameter.Enddatum | Zeichenfolge | Optional. Enddatum, das zum Ausführen von Flows mit deklarativen Aktionen erforderlich ist. Format: jjjj-MM-TT HH:mm:ss |
| Payload.additionalParameter.skipLines | Boolean | Optional. Kennzeichnung, die angibt, ob Einzelposten für die angegebene Entität abgerufen werden sollen. Gültige Werte:
|
| Payload.zusätzliche Parameter.Startdatum | Zeichenfolge | Optional. Startdatum für die Ausführung von Flows mit deklarativen Aktionen. Format: jjjj-MM-TT HH:mm:ss |
| Payload.context | Objekt | Optional. Zusätzliche Parameteroptionen zum Anzeigen von Attributwerten und zum Aufrufen mehrerer Instanzen gleichzeitig. |
| Nutzlast.Kontext.isMultiSelect | Boolean | Optional. Kennzeichnung, die angibt, ob mehrere Entitäten als Eingabe übergeben werden sollen, um die Instanz zu erstellen. Gültige Werte:
|
| Payload.context.sourceToTargetConfigID | Zeichenfolge | Optional. Zuordnungskonfigurations-ID für die Quell-zu-Ziel-Zuordnung. Tabelle: Lead-to-Cash-Entitätszuordnung [sn_l2c_Core_Entity_Mapping] |
| payload.inputParams | Objekt | Optional. Dieses Objekt ist ein Platzhalter für alle Eingabeparameter, die zum Aufrufen der Verwendung eines bestimmten Flows erforderlich sind. |
| Payload.Source | Array | Optional. JSON-Objekt mit Details der Quellentität, aus der Daten abgerufen werden sollen. |
| Payload.Source.headerId | Zeichenfolge | Optional. Header-sys_ID der Quellentität, aus der Daten abgerufen werden sollen.
|
| Payload.Source.lineIds | Array | Optional. Array mit sys_ID(s) des Quellpositionselements einer Entität, aus der Entitätsdaten abgerufen werden sollen. Erforderlich, wenn Sie die Header-ID nicht angeben und wenn die Entitätsstruktur mit Einzelposten wie „verkauftes Produkt“ beginnt. |
| Payload.target | Array | Optional. JSON-Objekt mit Details der Zielentität. |
| Payload.target.headerId | Zeichenfolge | Optional. Header-sys_ID der Zielentität, aus der Daten abgerufen werden sollen. Erforderlich, wenn Sie nicht angeben lineIdsParameter. Übergeben Sie null , wenn Sie keine Header-sys_IDs übergeben. |
| Payload.target.lineIds | Array | Optional. Array mit sys_ID(s) des Zielpositionen einer Entität, aus der Entitätsdaten abgerufen werden sollen. Erforderlich, wenn Sie keine Header-ID angeben und die Entitätsstruktur mit Einzelposten wie „verkauftes Produkt“ beginnt. |
| record_id | Zeichenfolge | Optional. SYS_ID des Zieldatensatzes, falls bereits vorhanden. |
| Request_Flow | Zeichenfolge | Optional. Zuordnungskonfigurations-ID für Quell-zu-Ziel-Zuordnung. Diese Eigenschaft ist für Flows mit erforderlich Entity configuration and mapping. Tabelle: Lead-to-Cash-Entitätszuordnung [sn_l2c_Core_Entity_Mapping] |
| IbqParams.resource | Zeichenfolge | Name des Flows, der den Datensatz in der Tabelle „eingehende Anforderung“ erstellt (z. B. ein Angebot oder eine Bestellung). Dieser Wert wird verwendet, um abhängige Datensätze desselben Typs zu finden, um die Reihenfolge der Datensatzverarbeitung zu bestimmen. |
| Source_Record_IDs | Array | Array, das die sys_IDs der Quelldatensätze enthält. |
| source_table | Zeichenfolge | Name der Tabelle, die den Quelldatensatz des Flows enthält. |
| table | Zeichenfolge | Name der Tabelle, die den Zieldatensatz des Flows enthält. |
| Typ | Beschreibung |
|---|---|
| Keine |
Im folgenden Beispiel fragt das Skript die Tabelle „eingehende Anforderung“ [sn_tmt_Core_inbound_Queue] ab, um den neuesten Datensatz mit übereinstimmenden Source_Record_IDs, Record_ID und Ressourcenwerten zu finden. Das Skript ruft dann auf SetExecuteAfterRequest() Methode zum Aktualisieren des Werts „execute_After“ des aktuellen Datensatzes mit der sys_ID des abgerufenen Datensatzes und zum Festlegen des Status auf „Ausstehend“. Daher wird der aktuelle Datensatz nach dem im Feld „execute_After“ angegebenen Datensatz ausgeführt.
var ibqParams = {
"source_record_ids": "e32e29fd28d26a14f8775b8f954723b8",
"record_id":"b9be293128166a14f8775b8f9547239f",
"requested_flow": "0feb6d9da36271105c24939ef31e61dc",
"initiated_by": "admin",
"source_table": "sn_quote_mgmt_core_quote",
"table": "sn_ind_tmt_orm_order",
"payload": {
"context": {}},
"resource": "quote_to_order"
};
new sn_tmt_core.IBQConfigBase().setExecuteAfterRequest(ibqParams);
Diese Methode gibt keine Ausgabe zurück.