Estendere le operazioni di punto vendita

Le soluzioni per le operazioni del punto vendita si basano su Microsoft Power Platform, che offre un ampio set di funzionalità di personalizzazione ed estensione dell'interfaccia utente, dei flussi aziendali e dell'integrazione con l'ecosistema di Microsoft e dei partner. Le operazioni del punto vendita supportano tutte le estensioni e le personalizzazioni supportate da MDA Power Apps tramite meccanismi di stratificazione delle soluzioni.

Accedi a Operazioni di punto vendita per amministratori utilizzando le tue credenziali di Amministratore di sistema per eseguire le seguenti personalizzazioni:

Nota

Quando installi nuove versioni di Operazioni di punto vendita, l'architettura dell'IU (interfacce utente) non interrompe le tue personalizzazioni ed estensioni.

Personalizzare il modulo attività

Durante la configurazione di Operazioni di punto vendita, è necessario personalizzare i moduli che il responsabile del back-office utilizza per eseguire il proprio lavoro. Questa personalizzazione viene utilizzata per acquisire informazioni univoche per la tua azienda o settore e garantire che il layout del modulo corrisponda ai tuoi processi aziendali.

Una corretta personalizzazione dei moduli può migliorare l'usabilità, rendendo più facile per i responsabili del back-office visualizzare e aggiornare le informazioni rilevanti. Le personalizzazioni dei moduli influiscono sul tempo impiegato dai moduli per caricare e salvare le modifiche. Pertanto la personalizzazione corretta dei moduli è molto importante per massimizzare le prestazioni.

Questa sezione illustra le personalizzazioni dei moduli, le limitazioni nelle personalizzazioni dei moduli e come personalizzare il modulo outlet, sebbene sia possibile utilizzare i passaggi per personalizzare qualsiasi altro modulo.

Operazioni di punto vendita ti consente di personalizzare i moduli in base alle specifiche esigenze del tuo settore. Puoi personalizzare il modulo fornito dall'amministratore di Operazioni di punto vendita come parte della soluzione oppure copiare e creare un nuovo modulo in base alle esigenze della tua organizzazione. La sezione descrive in dettaglio i pro e i contro di questi approcci.

Personalizzare un modulo esistente

La personalizzazione di un modulo esistente è consigliata per gli scenari in cui non è necessario apportare molte modifiche al layout o ai campi. Il vantaggio di questo approccio è che gli aggiornamenti provenienti dall'amministratore di Operazioni di punto vendita si fondono con le personalizzazioni specifiche della tua organizzazione. Ti consigliamo tuttavia di convalidare il contenuto del modulo dopo un aggiornamento.

Crea un nuovo modulo

I moduli possono essere copiati e salvati come un nuovo modulo specifico per il cliente nell'amministrazione di Operazioni di punto vendita. Qualsiasi tipo di pagina, MDA, Personalizzata o Canvas, può essere aggiunto con l'app Power Platform. I motivi principali per cui crei un nuovo modulo includono:

  • Quando hai un processo aziendale univoco e non sei in grado di utilizzare il processo standard incluso nella soluzione,
  • Quando è necessario aggiungere molti campi personalizzati (più di 100)
  • Quando tutti i ruoli utente (ruoli di sicurezza e profili di sicurezza sul campo) non possono utilizzare lo stesso modulo e limitare le informazioni, devi creare moduli diversi per utenti tipo diversi.

Importante

Con questo metodo, il nuovo modulo non rifletterà gli aggiornamenti provenienti dall'amministratore di Operazioni di punto vendita, come avviene quando si personalizza un modulo esistente. Se vuoi adottare un nuovo componente rilasciato, devi aggiungerlo manualmente al tuo modulo.

È possibile seguire i passaggi indicati per personalizzare il modulo Attività di vendita al dettaglio.  

  1. Vai a Power Apps ed effettua l'accesso. 

  2. Scegli l'ambiente corretto.

  3. Accedi a Dataverse > Tabelle. Selezionare Tutto.

    Seleziona la scheda Tutto per creare un nuovo modulo personalizzato.

  4. Scorri verso il basso e seleziona Attività di vendita al dettaglio dall'elenco delle tabelle.

    Seleziona Attività di vendita al dettaglio per creare un nuovo modulo personalizzato.

  5. Seleziona Moduli per aprire l'elenco dei moduli relativi all'attività di vendita al dettaglio.

  6. Seleziona Modulo principale back office per aprire la pagina della finestra di progettazione.

    Seleziona il modulo principale del back office per creare un nuovo modulo personalizzato.

  7. Puoi modificare o cambiare i campi del modulo nella finestra di progettazione. Puoi riorganizzare i campi o nascondere determinati campi in base alle tue esigenze.  Ad esempio, è possibile aggiungere visualizzazioni griglia secondaria al modulo per mostrare i completamenti aperti per l'attività di vendita al dettaglio. Seleziona Componenti > Griglia >Griglia secondaria nel riquadro di spostamento a sinistra. Seleziona Tabella per mostrare nella griglia secondaria e nella visualizzazione predefinita. Dopo aver inserito i dati, seleziona Fatto. 

    Modifica la griglia secondaria per creare un nuovo modulo personalizzato.

  8. Seleziona Salva e quindi seleziona Pubblica per pubblicare le modifiche all'app.

    Seleziona Salva e pubblica per creare un nuovo modulo personalizzato.

Personalizzare il tema per Operazioni di punto vendita

È possibile creare un aspetto personalizzato (un tema con logo personalizzato) per l'applicazione apportando le modifiche ai colori predefiniti e agli elementi grafici disponibili nel tema predefinito. Ad esempio, puoi creare un marchio di prodotto personale, aggiungendo il logo della società e applicando i colori specifici della tabella. I colori del tema vengono applicati a livello globale nell'applicazione.

Operazioni di punto vendita supporta temi forniti dalla piattaforma Dynamics. Puoi configurare i temi nelle impostazioni avanzate di Dynamics. Il tema predefinito è come mostrato:

Immagine che mostra il tema predefinito per Operazioni di punto vendita.

Tutti i controlli di Power Apps Component Framework (PCF) creati per l'amministratore di Operazioni di punto vendita usa il tema nelle impostazioni del Tema per mostrare gli elementi dell'interfaccia utente nel colore configurato. Ad esempio, gli accenti blu per impostazione predefinita potrebbero essere modificati in rosso o verde senza modificare alcun codice. Il tema si applica automaticamente a tutti i controlli PCF.

Per maggiori informazioni su come applicare e creare un nuovo tema, vai a Usare un tema per creare un look personalizzato per l'app.

Modificare il colore di sfondo predefinito per Operazioni di punto vendita per dispositivi mobili

Per modificare il colore di sfondo predefinito per Operazioni di punto vendita per dispositivi mobili, puoi procedere come segue:

  1. Vai al dashboard di Power Apps.

  2. Seleziona l'ambiente Operazioni di punto vendita nell'angolo in alto a destra.

  3. Seleziona Soluzioni nel riquadro di sinistra e vai a Soluzione predefinita.

  4. Cerca e seleziona l'impostazione MobileBackgroundColor.

  5. Nel riquadro di destra, sotto il valore dell'ambiente di impostazione, seleziona + Nuovo valore dell'ambiente.

  6. Immetti il colore esadecimale desiderato per lo sfondo (ad esempio, #CEEAFF) e seleziona Salva per sovrascrivere il valore predefinito.

    Immagine che mostra come cambiare il colore di sfondo in Operazioni di punto vendita per dispositivi mobili.

    Nota

    Al momento, non è possibile modificare i colori del testo in Operazioni di punto vendita per dispositivi mobili.

Abilita la visualizzazione del calendario per Operazioni di punto vendita per dispositivi mobili

Per abilitare la visualizzazione del calendario per l'elenco delle cose da fare in Operazioni di punto vendita per dispositivi mobili, puoi procedere come segue:

  1. Vai al dashboard di Power Apps.

  2. Seleziona l'ambiente Operazioni di punto vendita nell'angolo in alto a destra.

  3. Seleziona Soluzioni nel riquadro di sinistra e vai a Soluzione predefinita.

  4. Cerca e seleziona l'impostazione Abilita visualizzazione calendario.

  5. Nel riquadro di destra, sotto il valore dell'ambiente di impostazione, seleziona per sovrascrivere il valore predefinito.

    Immagine che mostra come abilitare la visualizzazione del calendario nell'app Operazioni di punto vendita per dispositivi mobili.

Aggiorna le etichette in Amministratore di Operazioni di punto vendita

Puoi aggiornare le etichette in Amministrazione di Operazioni di punto vendita con le preferenze terminologiche specifiche utilizzate dalla tua azienda. Questa flessibilità consente un'esperienza utente più intuitiva e su misura, facilitando la navigazione e l'interazione con le app da parte degli addetti del negozio. Inoltre, la possibilità di rinominare attività, negozi o altri elementi può migliorare la chiarezza e semplificare la comunicazione all'interno dell'organizzazione. Nel complesso, questa funzionalità consente alle attività di vendita al dettaglio di adattare Amministratore di Operazioni di punto vendita alle proprie specifiche esigenze, migliorando l'usabilità e l'efficienza nelle operazioni quotidiane.

Per ulteriori informazioni su come aggiornare le etichette in Amministratore di Operazioni di punto vendita, vedi Proprietà della sezione nella finestra di progettazione classica.

Limitazioni relative alla personalizzazione

Power Apps component framework consente agli sviluppatori di creare il proprio tipo di controllo o interfaccia utente, che non è fornito dai controlli predefiniti. Tuttavia, hanno i loro limiti. Le operazioni del punto vendita utilizzano controlli PCF personalizzati in molte aree. Questi controlli non sono con poco codice ma sono creati utilizzando HTML (Hypertext Markup Language), CSS (Cascading Style Sheets) e JavaScript. Pertanto non è possibile modificare o personalizzare alcun controllo PCF che faccia parte delle operazioni dello Store.

Importante

Le organizzazioni possono personalizzare un modulo esistente o crearne uno nuovo per le proprie esigenze aziendali specifiche. Tuttavia, se viene rilasciato un aggiornamento da Microsoft ai controlli PCF che fanno parte delle operazioni dello Store, tali aggiornamenti si rifletteranno a loro volta nella soluzione in entrambi gli scenari.

Procedure consigliate per la personalizzazione

Quando si pianifica di personalizzare Amministratore di Operazioni di punto vendita in base a requisiti specifici del cliente, è importante adottare le procedure consigliate da seguire per evitare problemi di prestazioni, usabilità e supporto. Le raccomandazioni per estendere la soluzione sono le seguenti:

  • Ridurre il numero di campi personalizzati sui moduli

  • Non modificare o rimuovere i campi predefiniti dai moduli

  • Non modificare i valori set di opzioni (scelta) per i campi predefiniti

  • Usare meno script personalizzati sugli eventi di caricamento del modulo

Per considerazioni sulla progettazione durante la personalizzazione dei moduli, fai riferimento a Progettare moduli per le prestazioni.

Utilizzare l'API personalizzata Recupera prodotti

Tutti i prodotti sono archiviati in Microsoft Dataverse. Tuttavia, il conteggio e il prezzo dell'inventario non sono presenti in Dataverse e devono essere interrogati dall'ERP. Un'API personalizzata (plug-in) in Dataverse, denominata Recupera prodotti , interroga questi dati da ERP.

L'API Recupera prodotti è un modello che restituisce i valori predefiniti per tutti i prodotti e puoi sovrascriverla con un'implementazione personalizzata. Per ogni controllo prodotto o controllo prezzo per negozio, viene richiamato il plug-in Recupera prodotti. I dati recuperati vengono archiviati nella tabella Risposta controllo che contiene un file .json con tutti i prodotti, inclusi il prezzo e il conteggio dell'inventario.​

Il flusso logico della funzione di controllo del prodotto è mostrato nell'immagine seguente:

L'immagine mostra il processo di utilizzo dell'API personalizzata Recupera prodotti.

Esempio: implementazione dell'API Recupera prodotti

Puoi vedere un esempio di implementazione dell'API Recupera prodotti come segue:

Parametri di input

  • Query del prodotto: un oggetto expando con due parametri

  • storeId: il nome del negozio corrente per il quale viene eseguito il plugin. Viene preso dal nome della business unit.

  • productIds: numeri di prodotto separati da virgola

Parametri di output

  • Prodotti: l'elenco di prodotti expando. Ogni prodotto nella raccolta Prodotti contiene parametri come mostrato:

    • productNumber: numero prodotto

    • oldPrice: vecchio prezzo del prodotto

    • newPrice: nuovo prezzo del prodotto

    • attributi: più attributi, raccolta di valori chiave

    • conteggio: numero di prodotti nel negozio

Codice API di esempio: FetchProductsPlugin.cs


using Microsoft.Xrm.Sdk;
using Microsoft.Xrm.Sdk.PluginTelemetry;
using System;
using System.Collections.Generic;

namespace RetailConnectApp.Plugins
{
    public class FetchProductsPlugin  : IPlugin
    {
        public FetchProductsPlugin ()
        {

        }

        public FetchProductsPlugin(string unsecureConfiguration, string secureConfiguration)
        {
                
        }

        public void Execute(IServiceProvider serviceProvider)
        {
            // Obtain the tracing service
            var tracingService =
            (ITracingService)serviceProvider.GetService(typeof(ITracingService));
            var logger = (ILogger)serviceProvider.GetService(typeof(ILogger));

            // Obtain the execution context from the service provider.  
            IPluginExecutionContext context = (IPluginExecutionContext)
                serviceProvider.GetService(typeof(IPluginExecutionContext));

            try
            {
                var storeId = GetInputParameter<String>(context, "storeIds");
                var productIdString = GetInputParameter<String>(context, "productIds");

                //Fetch data from ERP

                var products = new EntityCollection();
                if (!string.IsNullOrEmpty(storeId) && !string.IsNullOrEmpty(productIdString))
                {
                    var productIds = productIdString.Split(',');

                    foreach (var productId in productIds)
                    {


                        var product = new Entity() { Attributes = {
                                    { "productNumber", productId },
                                    { "oldPrice",(decimal)0.0 },
                                    { "newPrice", (decimal)0.0 },
                                    { "count", 0 },
                                    { "attributes",  new Entity() 
                                        {
                                        Attributes =
                                            {
                                                //attributes with key-value pair
                                                /*
                                                { "city","Redmond" },
                                                { "countryOrRegion","United States" },
                                                { "postalCode","98008" },
                                                { "state","Washington" },
                                                { "street","123 Maple St" },*/
                                            }
                                        }
                                    }
                                }
                        };
                        products.Entities.Add(product);
                    }
                }
                context.OutputParameters["products"] = products;
            }
            catch (Exception ex)
            {
                logger.LogError(ex, "msret_FetchProducts: {0}");
                throw new InvalidPluginExecutionException("An error occurred in msret_FetchProducts.", ex);
            }
        }
        
        public static T GetInputParameter<T>(IPluginExecutionContext context, string inputParameterName)
        {
            T parameter = default(T);

            if (context.InputParameters.Contains(inputParameterName))
            {
                parameter = (T)context.InputParameters[inputParameterName];
            }

            return parameter;
        }
    }
    
}


Scaricare e personalizzare report di Power BI

Puoi scaricare e personalizzare i report di Power BI da utilizzare al di fuori di Operazioni di punto vendita. Puoi condividere i report Power BI scaricati con altri utenti nella tua organizzazione che non sono autorizzati a utilizzare Amministratore di Operazioni di punto vendita.

Scaricare un report di Power BI

  1. Vai a app.powerbi.com.

  2. Vai all'area di lavoro e seleziona l'area di lavoro gestita creata, ovvero Soluzioni [RetailSOATest].

  3. Apri il tipo di report, Riepilogo operazioni punto vendita al dettaglio.

    L'immagine mostra come aprire il report di Power BI.

  4. Vai a File> Scarica questo file.

  5. Nella finestra di dialogo Cosa vuoi scaricare?, seleziona Una copia del report e dei dati (.pbix), quindi seleziona Scarica.

    L'immagine mostra la finestra di dialogo

Ora puoi scaricare il file .pbix esportato da condividere con gli utenti che non hanno accesso ad Amministratore di Operazioni di punto vendita.

L'immagine mostra il report pronto per essere scaricato.

Personalizzare un report di Power BI

Puoi aprire i report di Power BI da Operazioni di punto vendita in qualsiasi browser o altro desktop o servizio Power BI fuori da Amministratore di Operazioni di punto vendita e personalizzarli ulteriormente come richiesto.

  1. Scarica e apri l'app Power BI Desktop.

  2. Seleziona il file di report Retail summary store ops.pbix dall'elenco dei report recenti o cercalo nei download.

    L'immagine mostra come aprire il report di Power BI nel desktop.

  3. Puoi aprire il report nell'app Power BI Desktop e apportare le modifiche necessarie.

    L'immagine mostra il report aperto in Power BI Desktop.

Vedi anche

Utilizzare l'API Web Microsoft Dataverse.
Panoramica dei connettori di Power Platform
Creare e personalizzare app basate su modello.
Personalizzazioni con Power Apps
Personalizzazioni del tema predefinite