Loading
Impostazione e gestione di Retail Execution
Sommario
Seleziona filtri

          Nessun risultato
          Nessun risultato
          Ecco alcuni suggerimenti per la ricerca

          Controlla l'ortografia delle parole chiave.
          Usa termini di ricerca più generici.
          Seleziona meno filtri per ampliare la tua ricerca.

          Cerca in tutta la Guida di Salesforce
          Metodi dei componenti di servizio orderExtensionUtils

          Metodi dei componenti di servizio orderExtensionUtils

          Per accedere ai dati degli ordini di vendita al dettaglio, sono disponibili alcune API pronte all'uso nel componente di servizio orderExtensionUtils. Esempio: Accede ai dati degli ordini quando l'API getorderdata viene invocata dal componente LWC personalizzato.

          Versioni (Edition) richieste

          Disponibile nelle versioni: Lightning Experience

          Disponibile in: Enterprise Edition e Unlimited Edition con Consumer Goods Cloud abilitato

          Di seguito sono riportati i metodi disponibili nel componente di servizio orderExtensionUtils:

          Nota
          Nota La versione API per tutti i metodi è 59.
          Metodo Descrizione Sintassi Comando importazione Codice di esempio
          getOrderData Restituisce dati dai campi dell'ordine. getOrderData(recordId) import { getOrderData } from 'cgcloud/orderExtensionUtils'; { @api recordId; initialOrderData = {}; connectedCallback() { getOrderData(this.recordId).then((data) => { this.initialOrderData = data; }); }}
          updateOrderData Aggiorna i campi dell'ordine. updateOrderData(recordId, srcThisRef, fieldApiName, value) import { getOrderData, updateOrderData } from 'cgcloud/orderExtensionUtils'; { @api recordId; initialOrderData = {}; connectedCallback() { getOrderData(this.recordId).then((data) => {this.initialOrderData = data;});} // È possibile invocare questo metodo con un clic di buttonupdateOrderFieldValue() { const fieldName = 'cgcloud__Delivery_Note__c'; const newValue = 'test-note'; updateOrderData(this.recordId, this, fieldName, newValue);}}
          getOrderItemData Restituisce i dati delle voci ordine. getOrderItemData(recordId) import { getOrderItemData } from 'cgcloud/orderExtensionUtils'; { @api recordId; initialOrderItemsData = []; connectedCallback() { getOrderItemData(this.recordId).then((data) => {this.initialOrderItemsData = data;});}}
          updateOrderItemData Aggiorna i dati delle voci ordine. updateOrderItemData(recordId, srcThisRef, itemId, fieldApiName, value) import { getOrderItemData, updateOrderItemData } from '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 Imposta dati aggiuntivi da archiviare insieme ai dati dell'ordine. Ad esempio, creazione di un nuovo record in un oggetto personalizzato. L'impostazione aggiuntiva dei dati che utilizza il metodo setCustomState può essere inviata alla classe Apex personalizzata che gestisce le personalizzazioni di salvataggio. setCustomState(recordId, customState) import { setCustomState } from 'cgcloud/orderExtensionUtils'; { @api recordId; connectedCallback() {} setOrderCustomState() { setCustomState(this.recordId, { customProp: 'Test' }); }}
          getIsOrderInEditMode Indica se l'ordine è in modalità di modifica durante il caricamento iniziale della pagina. È possibile utilizzare queste informazioni per visualizzare i componenti LWC personalizzati solo in modalità di sola lettura durante il caricamento iniziale della pagina. getIsOrderInEditMode() import { getIsOrderInEditMode } from 'cgcloud/orderExtensionUtils'; { @api recordId; @track isOrderInEditMode = false; connectedCallback() { this.isOrderInEditMode = getIsOrderInEditMode();}}
          registerListenerForOrderDataUpdates Registra un metodo di richiamata invocato quando un qualsiasi campo ordine viene modificato. registerListenerForOrderDataUpdates(recordId, thisRef, callback) import { getOrderData, registerListenerForOrderDataUpdates} from '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 Registra un metodo di richiamata invocato quando un campo ordine cambia ed esegue una convalida sul campo ordine. registerOrderDataInlineValidator(recordId, thisRef, callback) import { getOrderData, registerOrderDataInlineValidator} from 'cgcloud/orderExtensionUtils'; { @api recordId; initialOrderData = {}; connectedCallback() { getOrderData(this.recordId).then(data) => {this.initialOrderData = data;}); registerOrderDataInlineValidator( this.recordId, this.validateOrderDataChanges ); } validateOrderDataChanges(fieldName, value) { switch (fieldName) { case 'cgcloud__Invoice_Note__c': case 'cgcloud__Delivery__Note__c': return this.validateNoteFields(value); default: return ''; } } validateNoteFields(value) { if (value & value.length > 100) { return 'Questo testo deve avere meno di 100 caratteri'; } }
          registerListenerForOrderItemDataUpdates Registra un metodo di richiamata invocato quando viene modificato un campo voce ordine. registerListenerForOrderItemDataUpdates(recordId, thisRef, callback) import { getOrderItemData, registerListenerForOrderItemDataUpdates} from 'cgcloud/orderExtensionUtils'; { @api recordId; initialOrderItemsData = []; connectedCallback() { getOrderItemData(this.recordId).then(data) => {this.initialOrderItemsData = data;}); registerListenerForOrderItemDataUpdates( this.recordId, this.handleOrderItemDataUpdates(itemId, fieldApiName, value) { const orderItem = this.initialOrderItemsData.find(_orderItem) => _orderItem.Id === itemId ); orderItem[fieldApiName] = value; }}
          registerOrderItemDataInlineValidator Registra un metodo di richiamata invocato quando un campo voce ordine cambia ed esegue una convalida sul campo voce ordine. registerOrderItemDataInlineValidator(recordId, thisRef, callback) import { getOrderItemData, registerOrderItemDataInlineValidator} from 'cgcloud/orderExtensionUtils'; { @api recordId; initialOrderItemsData = []; connectedCallback() { getOrderItemData(this.recordId).then(data) => {this.initialOrderItemsData = data; }); registerOrderItemDataInlineValidator( this.recordId, this.validateOrderItemDataChanges ); } validateOrderItemDataChanges(itemId, fieldName, value) { switch (fieldName) { case 'Discount__c': return this.validateDiscount(value); default: return ''; } validateDiscount(value) { if (value > 10) { return 'Lo sconto articolo non deve essere maggiore del 10%'; } return ''; }
          registerBeforeAddItemActionHandler Registra un metodo di richiamata prima di aggiungere voci in un ordine. registerBeforeAddItemActionHandler(recordId, thisRef, callback) import { getOrderData, registerListenerForOrderDataUpdates, registerBeforeAddItemActionHandler} from 'cgcloud/orderExtensionUtils'; { @api recordId; initialOrderData = {}; orderDataUpdates = {}; connectedCallback() { getOrderData(this.recordId).then(data) => { this.initialOrderData = data; }); registerListenerForOrderDataUpdates( this.recordId, this, this.handleOrderDataUpdates ); registerBeforeAddItemActionHandler( this.recordId, this, this.handleBeforeAddItemCB ); } handleOrderDataUpdates(fieldApiName, value) { this.orderDataUpdates[fieldApiName] = value; } handleBeforeAddItemCB(newOrderItems) { const orderData = { ...this.initialOrderData, ...this.orderDataUpdates }; newOrderItems = newOrderItems.map((orderItem) => { if ( orderData.cgcloud_Order_Account__r.Name === '*NTO Store #201' & orderItem['Product__r.Description_1__c'] == 'BBQ' ) { throw new Error("You can't add BBQ product"); } orderItem.Quantity_c = 2; orderItem.Number_c = 10; return orderItem; }
          registerBeforeSaveActionHandler Registra un metodo di richiamata prima di salvare un ordine. registerBeforeSaveActionHandler(recordId, thisRef, callback) import { getOrderData, registerBeforeSaveActionHandler} from '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 (let i = 0; i < orderItems.length; i++) { const orderItem = orderItems[i]; if (orderItem.cgcloud__Quantity__c > 90) { throw new Error("Order Item Quantity shouldn't be more than 90"); } } let headerDiscount = orderData.cgcloud__Discount_Percentage__c; headerDiscount = headerDiscount & Number(headerDiscount); if (headerDiscount & headerDiscount > 15) { throw new Error("Header discount can't be greater than 15"); } let deliveryDate = orderData.cgcloud__Delivery_Date_c; if (deliveryDate) { deliveryDate = new Date(deliveryDate.setDate() + 1); order.ccloud__Delivery_Date = deliveryDate; } } }
          registerListenerForEnablingOrDisablingEditMode Indica se l'ordine è in modalità di modifica durante il processo di acquisizione dell'ordine. È possibile utilizzare queste informazioni per visualizzare i componenti LWC personalizzati solo in modalità di sola lettura. registerListenerForEnablingOrDisablingEditMode(recordId, thisRef, callback) import { getOrderData, registerListenerForEnablingOrDisablingEditMode} from '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 (let i = 0; i < orderItems.length; i++) { const orderItem = orderItems[i]; if (orderItem.cgcloud__Quantity__c > 90) { throw new Error("Order Item Quantity shouldn't be more than 90"); } } let headerDiscount = orderData.cgcloud__Discount_Percentage__c; headerDiscount = headerDiscount & Number(headerDiscount); if (headerDiscount & headerDiscount > 15) { throw new Error("Header discount can't be greater than 15"); } let deliveryDate = orderData.cgcloud__Delivery_Date_c; if (deliveryDate) { deliveryDate = new Date(deliveryDate.setDate() + 1); order.ccloud__Delivery_Date = deliveryDate; } } }
           
          Caricamento
          Salesforce Help | Article