Loading
Opsæt og vedligehold Retail Execution
serviceExtensionUtils-komponentmetoder

serviceExtensionUtils-komponentmetoder

Hvis du ønsker adgang til detailbestillingsdataene, kan du bruge nogle få indbyggede API'er, der vises i servicekomponenten orderExtensionUtils. Eksempel: Fås adgang til bestillingsdata, når getorderdata API kaldes fra den tilpassede LWC-komponent.

EditionsHeading

Tilgængelig i: Lightning Experience

Tilgængelig i: Enterprise og Unlimited Edition, der har Consumer Goods Cloud aktiveret

Her er de metoder, der er tilgængelige i servicekomponenten orderExtensionUtils:

Bemærk
Bemærk API-versionen for alle metoder er 59.
Metode Beskrivelse Syntaks Importkommando Eksempelkode
getOrderData Returnerer data fra bestillingsfelter. getOrderData(recordId) importer { getOrderData } fra "cgcloud/orderExtensionUtils" { @api recordId; initialOrderData = {}; connectedCallback() { getOrderData(this.recordId).then((data) => { this.initialOrderData = data; }); }}
updateOrderData Opdaterer bestillingsfelter. updateOrderData(recordId, srcThisRef, fieldApiName, værdi) importer { getOrderData, updateOrderData } fra 'cgcloud/orderExtensionUtils'; { @api recordId; initialOrderData = {}; connectedCallback() { getOrderData(this.recordId).then((data) => { this.initialOrderData = data; }); } // Du kan kalde denne metode ved at klikke på en knap updateOrderFieldValue() { const fieldName = 'cgcloud__Delivery_Note__c'; const newValue = 'test-note'; updateOrderData(this.recordId, this, fieldName, newValue); }}
getOrderItemData Returnerer bestillingselementdata. getOrderItemData(recordId) importer { getOrderItemData } fra 'cgcloud/orderExtensionUtils'; { @api recordId; initialOrderItemsData = []; connectedCallback() { getOrderItemData(this.recordId).then((data) => { this.initialOrderItemsData = data; }); }}
updateOrderItemData Opdaterer bestillingselementdata. updateOrderItemData(recordId, srcThisRef, itemId, fieldApiName, værdi) importer { getOrderItemData, updateOrderItemData } fra "cgcloud/orderExtensionUtils" { @api recordId; initialOrderItemsData = []; connectedCallback() { getOrderItemData(this.recordId).then((data) => { this.initialOrderItemsData = data; }); } updateOrderItemFieldData() { const orderItemId = this.initialOrderItemsData[0].Id; const fieldName = 'cgcloud__Discount__c'; const value = 9; updateOrderItemData(this.recordId, this, orderItemId, fieldName, value); }}
setCustomState Opsætter yderligere data, der skal lagres sammen med bestillingsdataene. F.eks. ny registreringsoprettelse i et tilpasset objekt. Den yderligere dataopsætning, der bruger setCustomState-metoden, kan sendes til den tilpassede Apex, der håndterer lagringstilpasninger. setCustomState(recordId, customState) importer { setCustomState } fra "cgcloud/orderExtensionUtils" { @api recordId; connectedCallback() {} setOrderCustomState() { setCustomState(this.recordId, { customProp: 'Test' }); }}
getIsOrderInEditMode Returnerer, om bestillingen er i redigeringstilstand under den indledende sideindlæsning. Du kan bruge disse oplysninger til kun at vise tilpassede LWC-komponenter i skrivebeskyttet tilstand under den indledende sideindlæsning. getIsOrderInEditMode() importer { getIsOrderInEditMode } fra 'cgcloud/orderExtensionUtils'; { @api recordId; @track isOrderInEditMode = false; connectedCallback() { this.isOrderInEditMode = getIsOrderInEditMode(); }}
registerListenerForOrderDataUpdates Registrerer en tilbagekaldsmetode, der kaldes, når et bestillingsfelt ændres. registerListenerForOrderDataUpdates(recordId, thisRef, tilbagekald) import { getOrderData, registerListenerForOrderDataUpdates} fra 'cgcloud/orderExtensionUtils'; { @api recordId; initialOrderData = {}; orderDataUpdates = {}; connectedCallback() { getOrderData(this.recordId).then((data) => { this.initialOrderData = data; }); registerListenerForOrderDataUpdates( this.recordId, this, this.handleOrderDataUpdates ); } handleOrderDataUpdates(fieldApiName, value) { this.orderDataUpdates[fieldApiName] = value; }}
registerOrderDataInlineValidator Registrerer en tilbagekaldsmetode, der kaldes, når et bestillingsfelt ændres og udfører en validering på bestillingsfeltet. registerOrderDataInlineValidator(recordId, thisRef, tilbagekald) import { getOrderData, registerOrderDataInlineValidator} fra 'cgcloud/orderExtensionUtils'; { @api recordId; initialOrderData = {}; connectedCallback() { getOrderData(this.recordId).then((data) => { this.initialOrderData = data; }); registerOrderDataInlineValidator( this.recordId, this, this.validateOrderDataChanges ); } validateOrderDataChanges(fieldName, value) { switch (fieldName) { case 'cgcloud__Invoice_Note__c':      case 'cgcloud__Delivery_Note__c':        return this.validateNoteFields(værdi), standard:        return ''; } validateNoteFields(value) { if (value && value.length > 100) { return 'This text should be less than 100 characters'; } }}
registerListenerForOrderItemDataUpdates Registrerer en tilbagekaldsmetode, der kaldes, når et bestillingselementfelt ændres. registerListenerForOrderItemDataUpdates(recordId, thisRef, tilbagekald) importere { getOrderItemData, registerListenerForOrderItemDataUpdates} fra 'cgcloud/orderExtensionUtils'; { @api recordId; initialOrderItemsData = []; connectedCallback() { getOrderItemData(this.recordId).then((data) => { this.initialOrderItemsData = data; }); registerListenerForOrderItemDataUpdates( this.recordId, this, this.handleOrderItemDataUpdates ); } handleOrderItemDataUpdates(itemId, fieldApiName, value) { const orderItem = this.initialOrderItemsData.find( (_orderItem) => _orderItem.Id === item ); orderItem[ApifieldName =] value; }}
registerOrderItemDataInlineValidator Registrerer en tilbagekaldsmetode, der kaldes, når et bestillingselementfelt ændres og udfører en validering på bestillingselementfeltet. registerOrderItemDataInlineValidator(recordId, thisRef, tilbagekald) import { getOrderItemData, registerOrderItemDataInlineValidator} fra 'cgcloud/orderExtensionUtils'; { @api recordId; initialOrderItemsData = []; connectedCallback() { getOrderItemData(this.recordId).then((data) => { this.initialOrderItemsData = data; }); registerOrderItemDataInlineValidator( this.recordId, this, this.validateOrderItemDataChanges ); } validateOrderItemDataChanges(itemId, fieldName, value) { switch (fieldName) { case 'Discount__c':        return this.validateDiscount(værdi), standard:        return ''; } validateDiscount(value) { if (value > 10) { return 'Elementrabat bør ikke være større end 10%'; } return ''; }}
registerBeforeAddItemActionHandler Registrerer en tilbagekaldsmetode, før du tilføjer elementer i en bestilling. registerBeforeAddItemActionHandler(recordId, thisRef, tilbagekald) import { getOrderData, registerListenerForOrderDataUpdates, registerBeforeAddItemActionHandler} fra 'cgcloud/orderExtensionUtils'; { @api recordId; initialOrderDataUpdates = {}; orderDataUpdates = {}; connectedCallback() { getOrderData(this.recordId).then((data) => { this.initialOrderData = data; }); registerListenerForOrderDataUpdates( this.recordId, this, this.handleOrderDataUpdates ); registerBeforeAddItemActionHandler( this.recordId); registerBeforeAddItemActionHandler( this.recordId, this, this.handleBeforeAddItemCB ); } handleOrderDataUpdates(fieldApiName, value) { this.orderOrderDataUpdates(fieldApiDataUpdates, value) { this.orderDataUpdates(fieldApiDataUpdates), value)
registerBeforeSaveActionHandler Registrerer en tilbagekaldsmetode, før du gemmer en bestilling. registerBeforeSaveActionHandler(recordId, thisRef, tilbagekald) import { getOrderData, registerBeforeSaveActionHandler} fra 'cgcloud/orderExtensionUtils'; { @api recordId; initialOrderData = {}; connectedCallback() { getOrderData(this.recordId).then((data) => { this.initialOrderData = data; }); registerBeforeSaveActionHandler( this.recordId, this, this.handleBeforeSaveCB ); } handleBeforeSaveCB(savePayload) { const { orderItemsToBeUpserted: orderItems, updatedOrder: orderData } = savePayload; for (lad i = 0; i < orderItems.length; i++) { const orderItem = orderItems[i]; if (orderItem.cgcloud__Quantity__c > 90) { throw new Error("Order Item Quantity should not be greater than 90"); } } let headerDiscount = orderData.cgcloud__Header_Discount_Percentage__c; headerDiscount = headerDiscount && Number(headerDiscount); if (headerDiscount && headerDiscount > 15) { throw new Error("Order Item Quantity should not be greater than 15"); } let deliveryDate = orderData.cgcloud__Delivery_Date__c; (ifdelyDate___DeliveryDate) delivery {Date = new Date(deliveryDate);DiveryDate(cladedate)
registerListenerForEnablingOrDisablingEditMode Returnerer, om bestillingen er i redigeringstilstand under bestillingsoptagelsesprocessen. Du kan bruge disse oplysninger til kun at vise tilpassede LWC-komponenter i skrivebeskyttet tilstand. registerListenerForEnablingOrDisablingEditMode(recordId, thisRef, tilbagekald) import { getOrderData, registerListenerForEnablingOrDisablingEditMode} fra 'cgcloud/orderExtensionUtils'; { @api recordId; initialOrderData = {}; connectedCallback() { getOrderData(this.recordId).then((data) => { this.initialOrderData = data; }); registerBeforeSaveActionHandler( this.recordId, this, this.handleBeforeSaveCB ); } handleBeforeSaveCB(savePayload) { const { orderItemsToBeUpserted: orderItems, updatedOrder: orderData } = savePayload; for (lad i = 0; i < orderItems.length; i++) { const orderItem = orderItems[i]; if (orderItem.cgcloud__Quantity__c > 90) { throw new Error("Order Item Quantity should not be greater than 90"); } } let headerDiscount = orderData.cgcloud__Header_Discount_Percentage__c; headerDiscount = headerDiscount && Number(headerDiscount); if (headerDiscount && headerDiscount > 15) { throw new Error("Order Item Quantity should not be greater than 15"); } let deliveryDate = orderData.cgcloud__Delivery_Date__c; (ifdelyDate___DeliveryDate) delivery {Date = new Date(deliveryDate);DiveryDate(cladedate)
 
Indlæser
Salesforce Help | Article