Estender o Store Operations

As soluções do o Store Operations foram criadas no Microsoft Power Platform, que oferece um avançado conjunto de recursos de personalização e extensão na interface do usuário, nos fluxos empresariais, bem como integração com a Microsoft e o ecossistema de parceiros. O Store Operations oferece suporte a todas as extensões e personalizações com suporte do MDA do Power Apps por meio da mecânica de camadas da solução.

Entre no Administrador do Store Operations usando as credenciais de Administrador do Sistema para executar as seguintes personalizações:

Observação

Quando você instala novas versões do Store Operations, a arquitetura das IU (Interfaces do Usuário) não interrompe suas personalizações e extensões.

Personalize o formulário da tarefa

Ao configurar o Store Operations, você deve personalizar os formulários que o gerente de back-office usa para executar seu trabalho. Essa personalização é usada para capturar informações exclusivas de sua empresa ou setor e garantir que o layout do formulário corresponda aos seus processos de negócios.

A personalização adequada do formulário pode melhorar a usabilidade, tornando mais fácil para os gerentes de back-office ver e atualizar informações relevantes. As personalizações de formulário afetam o tempo que os formulários levam para carregar e salvar as alterações. Portanto, personalizar os formulários adequadamente é importante para maximizar o desempenho.

Esta seção aborda personalizações de formulários, limitações nas personalizações de formulários e como personalizar o formulário de saída, embora você possa usar as etapas para personalizar qualquer outro formulário.

O Store Operations permite personalizar os formulários com base nas necessidades específicas do setor. Você pode personalizar o formulário fornecido pelo Administrador do Store Operations como parte da solução ou copiar e criar um formulário com base nas necessidades de sua organização. A seção detalha os prós e contras dessas abordagens.

Personalizar um formulário existente

A personalização de um formulário existente é recomendada para cenários em que não há necessidade de fazer muitas alterações no layout ou nos campos. A vantagem dessa abordagem é que as atualizações do Administrador do Store Operations se mesclam com as personalizações específicas da sua organização. Entretanto, é recomendável validar o conteúdo do formulário após uma atualização.

Criar um novo formulário

Os formulários podem ser copiados e salvos como um novo formulário específico do cliente no Administrador do Store Operations. Qualquer tipo de página, páginas de MDA, personalizadas ou de tela podem ser adicionadas com o aplicativo Power Platform. Os principais motivos pelos quais você cria um formulário incluem:

  • Quando você tem um processo empresarial exclusivo e não consegue usar o processo padrão incluído na solução,
  • Quando você precisa adicionar muitos campos personalizados (maiores que 100)
  • Quando todas as funções de usuário (direitos de acesso e perfis de segurança de campo) não podem usar o mesmo formulário e limitar as informações, você deverá criar formulários diferentes para diferentes personas de usuário.

Importante

Nesse método, o novo formulário não refletirá as atualizações do Administrador do Store Operations, como visto durante a personalização de um formulário existente. Se quiser adotar um novo componente que foi liberado, você deverá adicioná-lo manualmente ao seu próprio formulário.

Você pode seguir as etapas fornecidas para personalizar o formulário de atividade de varejo.  

  1. Navegue até Power Apps e entre. 

  2. Escolha o ambiente correto.

  3. Navegue até Dataverse> Tabelas. Selecione Tudo.

    Selecione a guia Todos para criar um formulário personalizado.

  4. Role para baixo e selecione Atividade de varejo na lista de tabelas.

    Selecione Atividade de varejo para criar um formulário personalizado.

  5. Selecione Formulários para abrir a lista de formulários relacionados à Atividade de varejo.

  6. Selecione Formulário Principal de Back Office para abrir a página do designer.

    Selecione o formulário principal de back office para criar um formulário personalizado.

  7. Você pode editar ou alterar campos de formulário no designer. Você pode reorganizar os campos ou ocultar determinados campos com base em suas necessidades.  Por exemplo, você pode adicionar exibições de subgrade ao formulário para mostrar acompanhamentos abertos para a atividade de varejo. Selecione Componentes > Grade > Subgrade no painel de navegação esquerdo. Selecione Tabela para mostrar na subgrade e na exibição padrão. Depois de inserir os dados, selecione Concluído. 

    Edite a subgrade para criar um formulário personalizado.

  8. Selecione Salvar e depois selecione Publicar para publicar as alterações.

    Selecione Salvar e publicar para criar um formulário personalizado.

Personalizar o tema para o Store Operations

Você pode criar uma aparência (um tema com logotipo personalizado) personalizados para seu aplicativo fazendo alterações nas cores padrão e nos elementos visuais fornecidos no tema padrão. Por exemplo, você pode criar a identidade visual do seu produto pessoal adicionando um logotipo da sua empresa e fornecendo cores específicas da tabela. As cores do tema são aplicadas globalmente em todo o aplicativo.

O Store Operations oferece suporte a temas disponibilizados pela plataforma Dynamics. Você pode configurar temas nas configurações avançadas do Dynamics. O tema padrão é o mostrado:

A imagem mostra o tema padrão para o Store Operations

Todos os controles do Power Apps Component Framework (PCF) criados para o Administrador do Store Operations usam o tema nas Configurações de tema para mostrar os elementos da interface do usuário na cor configurada. Por exemplo, os acentos azuis por padrão podem ser alterados para vermelho ou verde sem alterar nenhum código. O tema se aplica automaticamente a todos os controles PCF.

Para obter mais informações sobre como aplicar e criar um novo tema, vá para Usar um tema para personalizar seu aplicativo.

Alterar a cor do plano de fundo padrão do Store Operations para dispositivos móveis

Para alterar a cor do plano de fundo padrão do Store Operations para dispositivos móveis, você pode usar as seguintes etapas:

  1. Vá até o painel Power Apps.

  2. Selecione seu ambiente do Store Operations no canto superior direito.

  3. Selecione Soluções no painel esquerdo e depois acesse Solução Padrão.

  4. Pesquise e selecione a configuração MobileBackgroundColor.

  5. No painel direito, sob o valor Ambiente de configuração, selecione + Novo valor do ambiente.

  6. Insira a cor hexadecimal que deseja para o plano de fundo (por exemplo, #CEEAFF) e selecione Salvar para substituir o valor padrão.

    A imagem mostra como alterar a cor do plano de fundo no Store Operations para dispositivos móveis.

    Observação

    No momento, não há escopo para alterar as cores do texto da fonte no Store Operations para dispositivos móveis.

Habilitar a exibição de calendário para o Store Operations para dispositivos móveis

Para habilitar a exibição de calendário para a lista de tarefas pendentes no Store Operations para dispositivos móveis, você pode usar as seguintes etapas:

  1. Vá até o painel Power Apps.

  2. Selecione seu ambiente do Store Operations no canto superior direito.

  3. Selecione Soluções no painel esquerdo e depois acesse Solução Padrão.

  4. Pesquise e selecione a configuração Habilitar Exibição de Calendário.

  5. No painel direito, em Valor de ambiente de configuração, selecione Sim para substituir o valor padrão.

    A imagem mostra como habilitar a exibição de calendário no Store Operations para dispositivos móveis.

Atualizar rótulos no Administrador do Store Operations

Você pode atualizar rótulos no Administrador do Store Operations para alinhar com as preferências de terminologia específicas usadas na sua empresa. Essa flexibilidade permite uma experiência de usuário mais intuitiva e personalizada, facilitando para os funcionários da loja navegar e interagir com os aplicativos. Além disso, a capacidade de renomear tarefas, lojas ou outros elementos pode aprimorar a clareza e simplificar a comunicação dentro da organização. No geral, esse recurso permite que as empresas de varejo adaptem o Administrador do Store Operations aos requisitos exclusivos, melhorando a usabilidade e a eficiência nas operações diárias.

Para obter mais informações sobre como atualizar rótulos no Administrador do Store Operations, consulte Propriedades da seção no designer de formulários clássico.

Limitações na personalização

O Power Apps component framework permite que os desenvolvedores criem seu próprio tipo de controle ou interface do usuário, que não é fornecido por controles prontos para uso. No entanto, eles têm suas limitações. O Store Operations usa controles PCF personalizados em muitas áreas. Esses controles não são de pouco código, mas são baseados em HTML (Hypertext Markup Language), CSS (Cascading Style Sheets) e JavaScript. Portanto, você não pode alterar ou personalizar nenhum controle PCF que faça parte do Store Operations.

Importante

As organizações podem personalizar um formulário existente ou criar um formulário para suas necessidades específicas de negócios. No entanto, se houver uma atualização da Microsoft para os controles PCF que fazem parte do Store Operations, essas atualizações, por sua vez, se refletirão em sua solução em ambos os cenários.

Práticas recomendadas para personalização

Quando você planeja personalizar o Administrador do Store Operations para qualquer requisito específico do cliente, é importante seguir as melhores práticas para evitar problemas de desempenho, usabilidade e capacidade de suporte. As recomendações para estender a solução são as seguintes:

  • Minimizar o número de campos personalizados em formulários

  • Não editar ou remover campos prontos para uso de formulários

  • Não editar os valores do conjunto de opções (escolha) para campos prontos para uso

  • Usar menos scripts personalizados em eventos de carregamento de formulário

Para considerações de design ao personalizar formulários, consulte Formulário de design para desempenho.

Usar a API personalizada de busca de produtos

Todos os produtos são armazenados no Microsoft Dataverse. No entanto, a contagem de estoque e o preço não estão no Dataverse e precisam ser consultados no ERP. Uma API personalizada (plug-in) no Dataverse, chamada API Buscar Produtos, consulta esses dados no ERP.

A API Buscar Produtos é um modelo, que retorna os valores padrão para todos os produtos, e você pode substituí-la por implementação personalizada. Para cada verificação de produto ou preço por loja, o plug-in Buscar Produtos é chamado. Os dados obtidos são armazenados na tabela Resposta da Auditoria, que contém um arquivo .json com todos os produtos, incluindo preço e contagem de estoque.​

O fluxo lógico do recurso de verificação de produto é mostrado na imagem a seguir:

A imagem mostra o processo de uso da API personalizada Buscar Produtos.

Exemplo: implementação da API Buscar Produtos

Você pode ver um exemplo da implementação da API Buscar Produtos da seguinte forma:

Parâmetros de entrada

  • Consulta do produto: um objeto expando com dois parâmetros

  • storeId: o nome da loja atual para a qual o plug-in é executado. É retirado do nome da unidade de negócios.

  • productIds: números de produtos separados por vírgulas

Parâmetros de saída

  • Products: a lista de objetos expando. Cada produto na coleção Products contém parâmetros conforme mostrado:

    • productNumber: o número do produto

    • oldPrice: preço antigo do produto

    • newPrice: preço novo do produto

    • attributes: mais atributos, coleção de valores-chave

    • count: contagem de produtos na loja

Código da API de exemplo – 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;
        }
    }
    
}


Baixar e personalizar relatórios do Power BI

Você pode baixar e personalizar relatórios do Power BI para serem usados fora do Store Operations. Você pode compartilhar os relatórios do Power BI baixados com outros usuários em sua organização que não estejam autorizados a usar o Administrador do Store Operations.

Baixar um relatório do Power BI

  1. Vá até app.powerbi.com.

  2. Vá para o espaço de trabalho e selecione o espaço de trabalho gerenciado criado,Solutions [RetailSOATest].

  3. Abra o Tipo de Relatório, Resumo das operações da loja de varejo.

    A imagem mostra como abrir a URL do relatório do Power BI.

  4. Acesse Arquivo> Baixar este arquivo.

  5. Na caixa de diálogo chamada O que você deseja baixar?, selecione Uma cópia do seu relatório e dados (.pbix) e selecione Baixar.

    A imagem mostra a caixa de diálogo

Agora você pode baixar o arquivo .pbix exportado para compartilhar com usuários que não têm acesso ao Administrador do Store Operations.

O mago mostra o relatório pronto para ser baixado.

Personalizar um relatório do Power BI

Você pode abrir os relatórios do Power BI do Store Operations em qualquer navegador ou outras áreas de trabalho ou serviços do Power BI fora do Administrador do Store Operations e personalizá-los ainda mais, conforme necessário.

  1. Baixar e abrir o aplicativo do Power BI Desktop.

  2. Selecione o arquivo de relatório Resumo de varejo das operações de loja.pbix na lista de relatórios recentes ou procure nos downloads.

    A imagem mostra como abrir a URL do relatório do Power BI no desktop.

  3. Você pode abrir o relatório no aplicativo Power BI desktop e fazer as alterações necessárias.

    A imagem mostra o relatório aberto no Power BI desktop.

Confira também

Usar a API Web do Microsoft Dataverse.
Visão geral dos conectores do Power Platform
Criar e personalizar aplicativos baseados em modelo.
Personalizações usando-se o Power Apps
Personalizações de tema OOB (prontas para uso)