Expandir o Store Operations Assist

As soluções do Store Operations Assist estão incorporadas no Microsoft Power Platform, o que oferece um rico conjunto de capacidades de personalização e extensão na IU, fluxos de negócio, bem como a integração com o ecossistema Microsoft e parceiro. O Store Operations Assist suporta todas as extensões e personalizações suportadas pelo MDA Power Apps através da mecânica de camadas de solução.

Nota

Quando instala novas versões do Store Operations Assist, a arquitetura de IU (interfaces de utilizador) não interrompe as suas personalizações e extensões.

Personalizar o formulário de tarefa

Ao configurar o Store Operations Assist, poderá ter de personalizar os formulários que o gestor de back-office utiliza para executar o respetivo trabalho. Esta personalização é utilizada para capturar informações exclusivas para o seu negócio ou setor e garantir que o esquema do formulário corresponde aos seus processos de negócio.

A personalização adequada do formulário pode melhorar a usabilidade, tornando mais fácil para os gestores de back office visualizar e atualizar informações relevantes. As personalizações dos formulários afetam o tempo necessário para os formulários carregarem e guardarem as alterações. Portanto, é importante personalizar os formulários adequadamente para maximizar o desempenho.

Esta secçã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 possa utilizar os passos para personalizar qualquer outro formulário.

O Store Operations Assist permite-lhe personalizar os formulários com base nas necessidades específicas do setor. Pode personalizar o formulário fornecido pelo Store Operations Assist Admin como parte da solução ou copiar e criar um novo formulário com base nas necessidades da sua organização. A secção detalha os prós e os contras destas 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 esquema ou nos campos. A vantagem dessa abordagem é que as atualizações do Store Operations Assist Admin são intercaladas com as personalizações específicas da sua organização. No entanto, recomendamos que valide o conteúdo do formulário após uma atualização.

Criar um novo formulário

Os formulários podem ser copiados e guardados como um novo formulário específico do cliente no Administrador do Store Operations Assist. É possível adicionar qualquer tipo de página, página MDA, Personalizada ou de Tela com a Aplicação do Power Platform. As principais razões para criar um novo formulário incluem:

  • Quando tem um processo de negócio exclusivo e não consegue utilizar o processo padrão incluído na solução,
  • Quando necessita de adicionar muitos campos personalizados (superiores a 100)
  • Quando todas as funções de utilizador (direitos de acesso e perfis de segurança de campo) não podem utilizar o mesmo formulário e limitar as informações, tem de criar formulários diferentes para diferentes personas de utilizador.

Importante

Neste método, o novo formulário não refletirá as atualizações do Store Operations Assist Admin, conforme visto ao personalizar um formulário existente. Se quiser adotar um novo componente que foi lançado, deve adicioná-lo manualmente ao seu próprio formulário.

Pode seguir os passos determinados para personalizar o formulário de atividades de Retalho.  

  1. Navegue para Power Apps e inicie sessão. 

  2. Escolha o ambiente correto.

  3. Navegue para Tabelas do Dataverse>. Selecione Tudo.

    Selecione o separador Tudo para criar um novo formulário personalizado.

  4. Desloque-se para baixo e selecione Atividade de Retalho a partir da lista de tabelas.

    Selecione Atividade de Retalho para criar um novo formulário personalizado.

  5. Selecione Formulários para abrir a lista de formulários relacionados com a Atividade de Retalho.

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

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

  7. Pode editar ou alterar campos de formulário no estruturador. Pode reorganizar os campos ou ocultar determinados campos com base nas suas necessidades.  Por exemplo, pode adicionar vistas de subgrelha ao formulário para mostrar os seguimentos abertos para a atividade de Retalho. Selecione Componentes > Grelha >Subgrelha no painel de navegação esquerdo. Selecione Tabela para mostrar na subgrelha e na vista predefinida. Depois de introduzir os dados, selecione Concluído. 

    Edite a subgrelha para criar um novo formulário personalizado.

  8. Selecione Guardar e, em seguida, selecione Publicar para publicar as alterações.

    Selecione Guardar e Publicar para criar um novo formulário personalizado.

Personalizar tema para Store Operations Assist

Pode criar um aspeto e funcionamento personalizado (um tema com logótipo personalizado) para a sua aplicação alterando as cores e os elementos visuais predefinidos fornecidos no tema predefinido. Por exemplo, pode criar uma marca pessoal para os seus produtos adicionando o seu logótipo da empresa e fornecendo cores específicas da tabela. As cores dos temas são aplicadas globalmente na aplicação.

O Store Operations Assist suporta os temas fornecidos pela plataforma Dynamics. É possível configurar os temas nas definições avançadas do Dynamics. O tema predefinido é o mostrado:

A imagem mostra o tema predefinido do Store Operations Assist.

Todos os controlos do Power Apps Component Framework (PCF) criados para o Store Operations Assist Admin utilizam o tema nas definições do Tema para mostrar os elementos da IU na cor configurada. Por exemplo, os acentos azuis por predefinição podem ser alterados para vermelho ou verde sem alterar nenhum código. O tema aplica-se automaticamente a todos os controlos do PCF.

Para obter mais informações sobre como aplicar e criar um novo tema, vá a Utilizar um tema para criar um aspeto personalizado para a sua aplicação.

Alterar a cor de fundo predefinida para o Store Operations Assist Mobile

Para alterar a cor de segundo plano predefinida do Store Operations Assist Mobile, pode utilizar os seguintes passos:

  1. Aceda ao dashboard do Power Apps.

  2. Selecione o ambiente do Store Operations Assist na canto superior direito.

  3. Selecione Soluções no painel esquerdo e, em seguida, aceda a Solução Predefinida.

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

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

  6. Introduza a cor hexadecimal, se quiser o fundo (por exemplo, #CEEAFF) e selecione Guardar para substituir o valor predefinido.

    A imagem mostra como alterar a cor de fundo na Aplicação móvel Store Operations.

    Nota

    Atualmente, não há âmbito para alterar as cores do texto do tipo de letra no Store Operations Assist Mobile.

Ativar a vista de calendário para o Store Operations Assist Mobile

Para ativar a vista de calendário para a lista de tarefas no Store Operations Assist Mobile, pode utilizar os seguintes passos:

  1. Aceda ao dashboard do Power Apps.

  2. Selecione o ambiente do Store Operations Assist na canto superior direito.

  3. Selecione Soluções no painel esquerdo e, em seguida, aceda a Solução Predefinida.

  4. Procure e selecione a definição Ativar Vista de Calendário.

  5. No painel direito, sob o valor do ambiente de Definição, selecione Sim para anular o valor predefinido.

    A imagem mostra como ativar a vista de calendário no Store Operations Mobile.

Atualizar etiquetas no Store Operations Assist Admin

Pode atualizar etiquetas no Store Operations Assist Admin para se alinharem com as preferências de terminologia específicas utilizadas na empresa. Esta flexibilidade permite uma experiência de utilizador mais intuitiva e personalizada, facilitando a navegação e interação dos associados com as aplicações. Além disso, a capacidade de mudar o nome de tarefas, lojas ou outros elementos pode melhorar a claridade e simplificar a comunicação na organização. No geral, esta funcionalidade capacita as empresas a retalho para adaptarem o Store Operations Assist Admin aos seus requisitos exclusivos, melhorando a capacidade de utilização e eficiência nas suas operações diárias.

Para obter mais informações sobre como atualizar etiquetas no Store Operations Assist Admin, consulte Propriedades da secção no estruturador de formulários clássico.

Limitações na personalização

O Power Apps component framework permite que os programadores criem o seu próprio tipo de controlo ou IU, que não é fornecido por controlos prontos a usar. No entanto, têm as suas limitações. O Store Operations Assist utiliza controlos do PCF personalizados em muitas áreas. Estes controlos não são de pouco código, mas são construídos utilizando a linguagem HTML (Hypertext Markup Language), CSS (Folhas de Estilos em Cascata) e JavaScript. Assim, não é possível alterar ou personalizar controlos do PCF que fazem parte do Store Operations Assist.

Importante

As organizações podem personalizar um formulário existente ou criar um novo formulário de acordo com as necessidades específicas do seu negócio. No entanto, se houver uma atualização da Microsoft para os controlos do PCF que fazem parte do Store Operations Assist, estas atualizações, por sua vez, refletir-se-ão na sua solução em ambos os cenários.

Melhores práticas para personalização

Quando planear personalizar o Store Operations Assist Admin para quaisquer requisitos específicos do cliente, é importante seguir as melhores práticas para evitar problemas de desempenho, capacidade de utilização e capacidade de suporte. As recomendações para expandir a solução são as seguintes:

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

  • Não editar nem remover campos prontos a usar dos formulários

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

  • Utilizar menos scripts personalizados em eventos de carregamento de formulários

Para obter considerações de conceção ao personalizar os formulários, consulte Estruturar formulário para desempenho.

Utilizar a API personalizada de Obter Produtos

Todos os produtos são armazenados no Microsoft Dataverse. No entanto, a contagem e o preço do inventário não estão no Dataverse e é necessário consultar a partir do ERP. Uma API Personalizada (plug-in) no Dataverse, denominada API Obter Produtos consulta estes dados a partir do ERP.

A API Obter Produtos é um modelo que devolve os valores predefinidos para todos os produtos e pode ser substituída por implementação personalizada. Para cada verificação de produto ou verificação de preços por loja, é chamado o plug-in Obter Produtos. Os dados obtidos são armazenados na tabela Resposta de Auditoria, que contém um ficheiro .json com todos os produtos, incluindo o preço e a contagem de inventário.​

A funcionalidade de verificação de fluxo lógico de produto é mostrada na imagem seguinte:

A imagem mostra o processo de utilização da API personalizada de obter produtos.

Exemplo: Implementação da API Obter Produtos

Poderá ver um exemplo da implementação da API Obter Produtos da seguinte forma:

Parâmetros de entrada

  • Consulta de Produtos: um objeto de expansão com dois parâmetros

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

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

Parâmetros de saída

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

    • productNumber: número do produto

    • oldPrice: preço antigo do produto

    • newPrice: preço novo do produto

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

    • contagem: contagem de produtos na loja

Código 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;
        }
    }
    
}


Transferir e personalizar relatórios do Power BI

Pode transferir e personalizar relatórios do Power BI para que sejam utilizados fora do Store Operations Assist. Pode partilhar os relatórios do Power BI transferidos outros utilizadores da organização que não estão autorizados a utilizar o Store Operations Admin.

Transferir um relatório do Power BI

  1. Aceda a app.powerbi.com.

  2. Aceda à área de trabalho e selecione a área de trabalho gerida criada, Soluções [RetailSOATest].

  3. Abra o tipo Relatório, Operações de loja de resumo do retalho.

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

  4. Aceda a Ficheiro> Transferir este ficheiro.

  5. Na caixa de diálogo intitulada O que pretende transferir?, selecione Uma cópia do relatório e dos dados (.pbix) e, em seguida, selecione Transferir.

    A imagem mostra a caixa de diálogo 'O que transferir'.

Agora, pode transferir o ficheiro .pbi exportado para partilhar com utilizadores que não têm acesso ao Store Operations Assist Admin.

A imagem mostra o relatório pronto para ser transferido.

Personalizar um relatório do Power BI

Pode abrir os relatórios do Power BI a partir do Store Operations Assist em qualquer browser ou outros ambientes de trabalho ou serviços do Power BI fora do Store Operations Admin e personalizá-los ainda mais conforme necessário.

  1. Transfira e abra a aplicação Power BI Desktop.

  2. Selecione o ficheiro de relatório Operações da loja de resumo de retalho.pbix na lista de relatórios recentes ou procure em Transferências.

    A imagem mostra como abrir o relatório do Power BI no ambiente de trabalho.

  3. Pode abrir o relatório na aplicação Power BI Desktop e efetuar alterações, conforme necessário.

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

Consulte também

Utilizar a API Web do Microsoft Dataverse.
Vista geral dos conectores do Power Platform
Criar e personalizar aplicações condicionadas por modelo.
Personalizações através do Power Apps
Personalizações de temas prontas a usar (OOB)