Étendre Store Operations Assist

Les solutions Store Operations Assist sont basées sur Microsoft Power Platform, qui offre un riche ensemble de fonctionnalités de personnalisation et d’extension sur l’interface utilisateur, les flux commerciaux ainsi que l’intégration avec l’écosystème Microsoft et partenaire. Store Operations Assist prend en charge toutes les extensions et personnalisations prises en charge par MDA Power Apps via les mécanismes de superposition de solutions.

Note

Lorsque vous installez de nouvelles versions de Store Operations Assist, l’architecture de l’interface utilisateur (interfaces utilisateur) n’interrompt pas vos personnalisations et extensions.

Personnaliser le formulaire de tâches

Lors de la configuration de Store Operations Assist, vous devrez personnaliser les formulaires que le responsable du back-office utilise pour effectuer son travail. Cette personnalisation permet de capturer des informations propres à votre entreprise ou à votre secteur d’activité et pour s’assurer que la disposition du formulaire correspond à vos processus d’entreprise.

Une personnalisation appropriée des formulaires peut améliorer la convivialité, ce qui permet aux responsables du back-office de visualiser et de mettre à jour plus facilement les informations pertinentes. Les personnalisations de formulaire affectent le temps nécessaire aux formulaires pour charger et enregistrer les modifications. Il en résulte que la personnalisation des formulaires est importante pour optimiser les performances.

Cette section couvre les personnalisations de formulaire, les limitations des personnalisations de formulaire et comment personnaliser le formulaire de point de vente, bien que vous puissiez utiliser les étapes pour personnaliser tout autre formulaire.

Store Operations Assist vous permet de personnaliser les formulaires en fonction des besoins spécifiques de votre secteur. Vous pouvez personnaliser le formulaire fourni par Store Operations Assist Admin dans le cadre de la solution ou copier et créer un nouveau formulaire en fonction des besoins de votre organisation. La section détaille les avantages et les inconvénients de ces approches.

Personnaliser un formulaire existant

La personnalisation d’un formulaire existant est recommandée pour les scénarios où il n’est pas nécessaire d’apporter de nombreuses modifications à la mise en page ou aux champs. L’avantage de cette approche est que les mises à jour de Store Operations Assist Admin fusionnent avec les personnalisations spécifiques à votre organisation. Nous vous recommandons cependant de valider le contenu du formulaire après une mise à jour.

Créer un formulaire

Les formulaires peuvent être copiés et enregistrés en tant que nouveau formulaire spécifique au client dans Store Operations Assist Admin. Tout type de page, MDA, pages personnalisées ou canevas peut être ajouté avec Power Platform App. Les principales raisons pour lesquelles vous créez un nouveau formulaire sont les suivantes :

  • Quand vous avez un processus métier unique et que vous ne pouvez pas utiliser le processus standard inclus dans la solution,
  • Quand vous devez ajouter de nombreux champs personnalisés (plus de 100)
  • Quand tous les rôles ne peuvent pas utiliser le même formulaire limiter les informations ; vous devez également créer différents formulaires pour différents utilisateurs.

Important

Dans cette méthode, le nouveau formulaire ne reflétera pas les mises à jour de Store Operations Assist Admin comme on le voit lors de la personnalisation d’un formulaire existant. Si vous souhaitez adopter un nouveau composant qui est publié, vous devez l’ajouter manuellement à votre propre formulaire.

Vous pouvez suivre les étapes indiquées pour personnaliser le formulaire d’activité de vente au détail.  

  1. Accédez à Power Apps et connectez-vous. 

  2. Choisir l’environnement correct.

  3. Accédez à Dataverse> Tables. Sélectionnez Tout.

    Pour créer un formulaire personnalisé, sélectionnez Tous les onglets.

  4. Faites défiler vers le bas et sélectionnez Activité de vente au détail de la liste des tables.

    Sélectionnez Activité de vente au détail pour créer un formulaire.

  5. Sélectionnez Formulaires pour ouvrir la liste des formulaires liés à l’activité de vente au détail.

  6. Sélectionner Formulaire principal du back office pour ouvrir la page du concepteur.

    Sélectionnez le formulaire principal du back office pour créer un formulaire personnalisé.

  7. Vous pouvez modifier ou changer les champs de formulaire dans le concepteur. Vous pouvez réorganiser les champs ou masquer certains champs en fonction de vos besoins.  Par exemple, vous pouvez ajouter des vues de sous-grille au formulaire pour afficher les suivis ouverts pour l’activité de vente au détail. Sélectionnez Composants > Grille > Sous-grille dans le volet de navigation de gauche. Sélectionner la Table à afficher dans la sous-grille et la vue par défaut. Après avoir entré les données, sélectionnez Terminé. 

    Modifiez la sous-grille pour créer un formulaire personnalisé.

  8. Sélectionnez Enregistrer, puis Publier pour publier tous les changements.

    Sélectionnez Enregistrer et publier pour créer un formulaire personnalisé.

Personnalisation du thème de Store Operations Assist

Vous pouvez créer une apparence (un thème avec logo personnalisé) personnalisé pour votre application en modifiant les couleurs et les éléments visuels du thème par défaut. Par exemple, vous pouvez créer votre marquage de produit personnel en ajoutant un logo de la société et en indiquant des couleurs spécifiques aux tables. Les couleurs de thème sont appliquées globalement dans toute l’application.

Store Operations Assist prend en charge les thèmes fournis par la plateforme Dynamics. Vous pouvez configurer des thèmes dans les paramètres avancés de Dynamics. Le thème par défaut est comme indiqué :

L’image montre le thème par défaut pour Store Operations Assist.

Tous les contrôles Power Apps Component Framework (PCF) créés pour Store Operations Assist Admin utilisent le thème dans les paramètres de thème pour afficher les éléments de l’interface utilisateur dans la couleur configurée. Par exemple, les accents bleus par défaut pourraient être changés en rouge ou vert sans changer de code. Le thème s’applique automatiquement à tous les contrôles PCF.

Pour plus d’informations sur la façon d’appliquer et de créer un nouveau thème, consultez Utiliser un thème pour personnaliser l’aspect de votre application.

Modifiez la couleur d’arrière-plan par défaut de Store Operations Assist Mobile

Pour modifier la couleur d’arrière-plan par défaut de Store Operations Assist Mobile, vous pouvez suivre les étapes suivantes :

  1. Accédez au tableau de bord Power Apps.

  2. Sélectionnez votre environnement Store Operations Assist en haut à droite.

  3. Sélectionnez Solutions dans le volet de gauche, puis accédez à Solution par défaut.

  4. Recherchez et sélectionnez le paramètre MobileBackgroundColor.

  5. Dans le volet de droite, sous la valeur de l’environnement Paramètre, sélectionnez + Nouvelle valeur d’environnement.

  6. Entrez la couleur hexadécimale que vous voulez pour l’arrière-plan (par exemple, #CEEAFF), et sélectionnez Enregistrer pour remplacer la valeur par défaut.

    L’image montre comment modifier la couleur d’arrière-plan dans l’application Store Operations Mobile.

    Note

    Actuellement, il n’est pas possible de modifier les couleurs du texte de police dans Store Operations Assist Mobile.

Activer la vue du calendrier pour Store Operations Assist Mobile

Pour activer l’affichage du calendrier pour la liste de tâches dans Store Operations Assist Mobile, vous pouvez suivre les étapes suivantes :

  1. Accédez au tableau de bord Power Apps.

  2. Sélectionnez votre environnement Store Operations Assist en haut à droite.

  3. Sélectionnez Solutions dans le volet de gauche, puis accédez à Solution par défaut.

  4. Recherchez et sélectionnez le paramètre Activer l’affichage du calendrier.

  5. Sur le volet droit, sous la valeur Paramètre de l’environnement sélectionnez Oui, à remplacer la valeur par défaut.

    L’image montre comment activer la vue du calendrier dans Store Operations Mobile.

Mettre à jour les étiquettes dans Store Operations Assist Admin

Vous pouvez mettre à jour les étiquettes dans Store Operations Assist Admin pour les aligner sur les préférences terminologiques spécifiques utilisées au sein de votre entreprise. Cette flexibilité permet une expérience utilisateur plus intuitive et personnalisée, ce qui facilite la navigation et l’interaction avec les applications pour les associés du magasin. De plus, la possibilité de renommer les tâches, les magasins ou d’autres éléments peut améliorer la clarté et rationaliser la communication au sein de l’organisation. Dans l’ensemble, cette fonctionnalité permet aux commerces de détail d’adapter le Store Operations Assist Admin à leurs besoins uniques, améliorant ainsi la convivialité et l’efficacité de leurs opérations quotidiennes.

Pour plus d’informations sur la mise à jour des étiquettes dans Store Operations Assist Admin, voir Propriétés de section dans le classique concepteur de formulaires.

Limitations dans la personnalisation

Power Apps component framework permet aux développeurs de créer leur propre type de contrôle ou d’interface utilisateur, qui n’est pas fourni par les contrôles prêts à l’emploi. Cependant, ils ont leurs limites. Store Operations Assist utilise des contrôles PCF dans de nombreux domaines. Ces contrôles ne sont pas low-code, mais sont créés à l’aide de HTML, CSS et JavaScript. Par conséquent, vous ne pouvez pas modifier ou personnaliser les contrôles PCF qui font partie de Store Operations Assist.

Important

Les organisations peuvent personnaliser un formulaire existant ou en créer un nouveau pour leurs besoins spécifiques. Cependant, si Microsoft met à jour les contrôles PCF qui font partie de Store Operations Assist, ces mises à jour seront à leur tour reflétées dans votre solution dans ces deux scénarios.

Meilleures pratiques de personnalisation

Lorsque vous envisagez de personnaliser Store Operations Assist Admin pour des besoins spécifiques à un client, il est important de suivre les meilleures pratiques pour éviter les problèmes de performances, de convivialité et de prise en charge. Les recommandations pour étendre la solution sont les suivantes :

  • Réduisez le nombre de champs personnalisés sur les formulaires

  • Ne modifiez pas, ni ne supprimez les champs de formulaire prédéfinis

  • Ne modifiez pas les valeurs groupe d’options (choix) pour les champs prêts à l’emploi

  • Utiliser moins de scripts personnalisés sur les événements de chargement de formulaire

Pour les considérations de conception à la personnalisation des formulaires, reportez-vous à Concevoir un formulaire pour la performance.

Utiliser l’API personnalisée Fetch Products

Tous les produits sont stockés dans Microsoft Dataverse. Cependant, le nombre et le prix de l’inventaire ne sont pas dans Dataverse et ils doivent être interrogés à partir de l’ERP. Une API personnalisée (plugin) dans Dataverse, appelée l’API Fetch Products, interroge ces données à partir de l’ERP.

L’API Fetch Products est un modèle qui renvoie les valeurs par défaut pour tous les produits et vous pouvez la remplacer par une implémentation personnalisée. Pour chaque vérification de produit ou de prix par magasin, le plugin Fetch Products est appelé. Les données extraites sont stockées dans la table Réponse de l’audit qui contient un fichier .json avec tous les produits, y compris le prix et le nombre d’inventaire.​

Le flux logique de la fonction de vérification du produit est illustré dans l’image suivante :

L’image montre le processus d’utilisation de l’API personnalisée Fetch Products.

Exemple : Implémentation de l’API Fetch Products

Vous pouvez voir un exemple de l’implémentation de l’API Fetch Products comme suit :

Paramètres d’entrée

  • Requête de produit : un objet expando avec deux paramètres

  • storeId : le nom du magasin actuel pour lequel le plugin est exécuté. Il est tiré du nom de la division.

  • productIds : numéros de produits séparés par des virgules

Paramètres de sortie

  • Produits : la liste des objets expando. Chaque produit de la collection Products contient les paramètres suivants :

    • productNumber : numéro du produit

    • oldPrice : ancien tarif du produit

    • newPrice : nouveau tarif du produit

    • attributes : plus d’attributs, collection de valeurs clés

    • count : nombre de produits sur le magasin

Exemple de code API - 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;
        }
    }
    
}


Télécharger et personnaliser les formulaires et les rapports de Power BI

Vous pouvez télécharger et personnaliser Power BI les rapports à utiliser en dehors de Store Operations Assist. Vous pouvez partager les rapports téléchargés Power BI avec d’autres utilisateurs de votre organisation qui ne sont pas autorisés à utiliser Store Operations Admin.

Télécharger un rapport Power BI

  1. Accédez à app.powerbi.com.

  2. Accédez à l’espace de travail et sélectionnez l’espace de travail géré créé, Solutions [RetailSOATest].

  3. Ouvrez le type de rapport, Récapitulatif des opérations du magasin de détail.

    L’image montre comment ouvrir le rapport Power BI.

  4. Accédez à Fichier > Télécharger ce fichier.

  5. Dans la boîte de dialogue intitulée Que souhaitez-vous télécharger ?, sélectionnez Une copie de votre rapport et de vos données (.pbix), puis sélectionnez Télécharger.

    L’image montre la boîte de dialogue « Quoi télécharger ».

Vous pouvez maintenant télécharger le fichier .pbix exporté pour le partager avec les utilisateurs qui n’ont pas accès à Store Operations Assist Admin.

L’image montre le rapport prêt à être téléchargé.

Personnaliser un rapport Power BI

Vous pouvez ouvrir les rapports Power BI de Store Operations Assist dans n’importe quel navigateur ou autre bureau ou service Power BI en dehors de Store Operations Admin et les personnaliser davantage si nécessaire.

  1. Téléchargez et ouvrez l’application Power BI Desktop.

  2. Sélectionnez le fichier de rapport Retail summary store ops.pbix dans la liste des rapports récents ou parcourez les téléchargements.

    L’image montre comment ouvrir le rapport Power BI dans le bureau.

  3. Vous pouvez ouvrir le rapport dans l’application Power BI Desktop et apportez les modifications nécessaires.

    L’image montre comment ouvrir le rapport dans Power BI Desktop.

Voir aussi

Utiliser l’API web Microsoft Dataverse.
Vue d’ensemble des connecteurs Power Platform
Créer et personnaliser des applications basées sur un modèle.
Personnalisations à l’aide de Power Apps
Personnalisations de thème prêtes à l’emploi (OOB)