# Dashboards, Relatórios e Consultas # 3.0 Configuração de dashboards # Ativando e Criando Dashboards no CRM One Web ## Como ativar os dashboards padrões 1. Acesse o CRM One Web 2. No menu, clique em **Ferramentas > Configurações de Dashboard**. 3. Na coluna "Ativo", clique no botão liga/desliga para ativar os indicadores desejados. 4. Acesse a aba **Dashboard** para visualizar os indicadores. [](http://manuais.dwu.com.br/uploads/images/gallery/2025-06/L3Limage.png) ## Como criar um novo indicador ou gráfico Para criar indicadores personalizados, é necessário ter conhecimento em consultas SQL/HANA. ### 1. Acesse o menu Navegue até **Ferramentas > Configurações de Dashboard** e clique em **Adicionar novo**. [](http://manuais.dwu.com.br/uploads/images/gallery/2025-06/yQCimage.png) Na tela seguinte, iniciamos a criação do nosso novo indicador ou gráfico para a aba “Dashboard”. [](http://manuais.dwu.com.br/uploads/images/gallery/2025-06/8PUimage.png) ### 2. Preencha as informações
Campo | Descrição |
---|---|
Nome indicador | Nome interno do indicador. |
Ícone | Visível apenas se o tipo for "Indicador". |
Nome para exibição | Nome visível no dashboard. |
Agrupador | Ex: "Clientes", "Vendas". Agrupa visualmente os indicadores. |
Ordenação | Use números como 100, 200, 300 para ordenar. |
Detalhes do indicador | Descrição informativa sobre a lógica do indicador. |
Tipo | Indicador, Gráfico de Barras ou Gráfico de Pizza. |
Consulta SQL para indicador | Consulta principal. |
Consulta SQL para detalhe | Consulta de detalhe ao clicar. |
Tipo mostrador | Moeda ou Número. |
Coluna da consulta | Coluna com chave primária (ex: DocEntry). |
Tabela de detalhe | Ex: OCRD, ORDR, OQUT, OSCL, etc. |
Autorização de usuários | Selecione usuários ou deixe em branco para liberar a todos. |
Ativo | Ativa ou desativa o indicador. |
**Dica:** personalize as cores dos dados do gráfico com códigos HTML. Exemplo: `SUM(T1.LineTotal) AS 'Venda realizada |#2E9AFE|'.`Cores HTML: [https://html-color-codes.info/Codigos-de-Cores-HTML/](https://html-color-codes.info/Codigos-de-Cores-HTML/)
### Gráfico de pizza ``` SELECT T2.SlpName AS 'Vendedor', SUM(T1.LineTotal) AS 'Venda realizada' FROM OINV T0 INNER JOIN INV1 T1 ON T1.DocEntry = T0.DocEntry INNER JOIN OSLP T2 ON T0.SlpCode = T2.SlpCode WHERE T0."CANCELED" = 'N' AND T1."Usage" IN (SELECT "U_Valor" FROM "@DWU_CFG" WHERE "U_Param" = 'UtilizacaoVenda') AND T0."SlpCode" IN ((SELECT "SlpCode" FROM RetornaVendedoresSubordinados('#UserIDCRM#'))) GROUP BY T2.SlpName ``` [](http://manuais.dwu.com.br/uploads/images/gallery/2025-06/xgnimage.png) ## Consulta de detalhe (clique no gráfico) ``` SELECT TOP 10 CardCode AS Código, 'Nome do cliente exemplo' AS Cliente FROM OCRD ``` O clique no gráfico executará essa consulta e abrirá os dados em uma modal. [](http://manuais.dwu.com.br/uploads/images/gallery/2025-06/QPhimage.png) De acordo com o ID da coluna configurada e a tabela de destino, o clique na linha o levará para o cadastro/documento respectivo. Exemplo: Coluna da consulta = 0 Tabela de detalhe = OCRD [](http://manuais.dwu.com.br/uploads/images/gallery/2025-06/TnXimage.png) ## Variáveis disponíveis para uso nas consultasVariável | Retorna |
---|---|
\#UserIDCRM# | ID do usuário logado |
\#SlpCodeCRM# | ID do vendedor logado |
Aviso: O cenário acima é apenas um demonstrativo de como funciona o disparo automático da consulta em campos de usuários. Ao decorrer do manual será explicado e detalhado todo o processo de consulta formatada.
Campo na tela | Variável |
---|---|
ID do usuário logado | \#UserIDCRM# |
Número do documento | \#ctl00\_ContentPlaceHolder1\_txtNumeroDocumento# |
Código Cliente | \#ctl00\_ContentPlaceHolder1\_txtCodigoClienteDocumento# |
Nome Cliente | \#ctl00\_ContentPlaceHolder1\_txtNomeClienteDocumento# |
Lista de Preço | \#ctl00\_ContentPlaceHolder1\_ddlListaDePreco# |
Válido até | \#ctl00\_ContentPlaceHolder1\_txtDataVencimento# |
Filial | \#ctl00\_ContentPlaceHolder1\_ddlFilial# |
Endereço de entrega | \#ctl00\_ContentPlaceHolder1\_end\_entrega# |
Endereço de cobrança | \#ctl00\_ContentPlaceHolder1\_end\_cobranca# |
Condição de pagamento | \#ctl00\_ContentPlaceHolder1\_cond\_pagamento# |
Uso principal | \#ctl00\_ContentPlaceHolder1\_ddlUsoPrincipal# |
Código Item | \#ctl00\_ContentPlaceHolder1\_txtNumeroItem# |
**Editável:** Todos os campos que tem a flag “Editável” marcada, exibirão o campo aberto para digitação (desde que o usuário tenha permissão nas Autorizações Gerais). Com isso, a inserção de itens com essas informações se torna mais prática e rápida, possibilitando a pesquisa e inserção de vários itens ao mesmo tempo no documento**.**
- **Coluna obrigatória a partir do ID:** Define o inicio da coluna que será obrigatória o preenchimento dos dados. ### Abas Disponíveis - **Simples:** consultas diretas e leves - **Avançada:** para consultas com `JOINs`, `CALLs` ou lógica mais complexa - **Filtros Selecionáveis:** possibilita criar dropdowns com opções dinâmicas (ex.: grupo de itens, marcas, tipos) ### Filtro Selecionável Você pode adicionar filtros dinâmicos à interface de seleção, por exemplo, um filtro de **Grupo de Itens**: ``` SELECT T0."ItmsGrpNam", T0."ItmsGrpNam" FROM OITB T0 ``` Nesse caso, o dropdown exibirá os grupos de itens, e ao selecionar um, a exibição será filtrada com base na seleção.Observação: A consulta precisa retornar exatamente duas colunas – a primeira será o valor do filtro aplicado, e a segunda o texto que será exibido ao usuário.
[](http://manuais.dwu.com.br/uploads/images/gallery/2025-07/ZyTimage.png) [](http://manuais.dwu.com.br/uploads/images/gallery/2025-07/W3Limage.png) ### Variáveis Disponíveis - **\#UserIDCRM#** – ID do usuário logado - **\#SlpCodeCRM#** – Código do vendedor - **\#CardCode#** – Código do cliente - **\#ListaPreco#** – Lista de preço - **\#CondicaoPagamento#** – Condição de pagamento - **\#Filial#** – Filial - **\#DataEntrega#** – Data de entrega - **\#PrecoUnitario#** – Preço da lista - **\#UltimoPreco#** – Último preço de venda ### Utilização no CRM One Web Após salvar o filtro, acesse o portal Web, inicie uma nova cotação ou pedido, e clique na tela de **seleção de itens**. O dropdown com os filtros personalizados será exibido. Ao selecionar um filtro, apenas os itens que atendem aos critérios definidos na consulta serão listados. Se a coluna “Quantidade” for 0, o usuário poderá preenchê-la manualmente. Somente itens com quantidade maior que zero serão inseridos no documento. [](http://manuais.dwu.com.br/uploads/images/gallery/2025-07/Jleimage.png)**DICA: caso queira repetir o último pedido do cliente por exemplo, é possível trazer o campo quantidade e preço já preenchidos. Assim, o usuário conseguirá apenas selecionar o filtro e em seguida clicar em “Adicionar itens”.**
# 3.3 Análise de origem de documentos (Pedido de vendas) # Relatório de Pedidos por Origem Ao adicionar um documento através do CRM One, é possível identificar se ele foi criado pelo **Portal** ou pelo **Aplicativo Mobile**. Se sua empresa deseja analisar a quantidade de documentos criados por origem, é possível utilizar o modelo de relatório abaixo.**Recomendação:** Utilize o formato **Tabela Dinâmica** para visualizar os dados de forma flexível.
**[Tabelas dinâmicas](http://manuais.dwu.com.br/books/crm-one-web/page/34-tabelas-dinamicas "Tabelas dinâmicas")** O uso de tabelas dinâmicas (ou pivot tables) é uma excelente forma de fazer análises gerenciais de forma ágil e dinâmica. Visando a disponibilização de uma funcionalidade prática foi implementado no CRM One web este novo recurso, que permitirá a execução de relatórios no formato de tabela dinâmica (pivot table). Cenário de exemplo O primeiro … [Continue lendo](http://manuais.dwu.com.br/books/crm-one-web/page/34-tabelas-dinamicas "Tabelas dinâmicas") |
DICA: Utilize o Gerador de Consultas do SAP para construir a estrutura inicial da consulta.
## Desenvolvimento da consulta Para elaboração de forma fácil da consulta SQL, uma sugestão é utilizar o “Gerador de consultas” do SAP Business One, a ferramenta ajuda efetuando de forma automática o link (joins) entre as tabelas do sistema, então vamos acessar o client do SAP Business One e em: ” > Ferramentas > Consultas > Gerador de consultas” [](http://manuais.dwu.com.br/uploads/images/gallery/2025-06/lkWimage.png) Recomendamos que a lista de tabelas seja informada em uma ordem específica, de modo que a ligação entre os dados atinja o objetivo desejado, sendo necessário informar: 1. **OINV** 2. **INV1** 3. **OSLP** 4. **OUSG** 5. **OSHP** 6. **OCRD** 7. **OCRG** 8. **OITM** 9. **OITB** [](http://manuais.dwu.com.br/uploads/images/gallery/2025-06/cU0image.png) Como resultado o próprio SAP Business One irá gerar o comando SQL necessário, onde realizamos alguns ajustes, incluindo “apelidos” (aliases) para as colunas e chegando ao resultado final abaixo, com uma consulta válida para SQL e HANA: ## Consulta SQL (válida para SQL Server e SAP HANA) ``` SELECT T6."GroupName" as "Grupo PN", T5."CardCode" as "Cód. PN", T5."CardName" as "Nome do PN", T5."CardFName" as "Nome estrangeiro/fantasia", T5."MailCity" as "Cidade", T5."State2" as "UF", T4."TrnspName" as "Tipo de envio", T2."SlpName" as "Vendedor", T0."DocNum" as "Num. doc", T0."Serial" as "Num. NF", T0."DocDate" as "Data", MONTH(T0."DocDate") as "Mês", YEAR(T0."DocDate") as "Ano", T8."ItmsGrpNam" as "Grupo de itens", T7."ItemCode" as "Cód. Item", T7."ItemName" as "Desc. Item", T3."Usage" as "Utilização", T1."Quantity" as "Quant.", T1."Price" as "Preço unit.", T1."LineTotal" as "Total", 'Total linhas' as "Total Linhas", 'Total colunas' as "Total colunas" FROM OINV T0 INNER JOIN INV1 T1 ON T0."DocEntry" = T1."DocEntry" INNER JOIN OSLP T2 ON T0."SlpCode" = T2."SlpCode" INNER JOIN OUSG T3 ON T1."Usage" = T3."ID" INNER JOIN OSHP T4 ON T0."TrnspCode" = T4."TrnspCode" INNER JOIN OCRD T5 ON T0."CardCode" = T5."CardCode" INNER JOIN OCRG T6 ON T5."GroupCode" = T6."GroupCode" INNER JOIN OITM T7 ON T1."ItemCode" = T7."ItemCode" INNER JOIN OITB T8 ON T7."ItmsGrpCod" = T8."ItmsGrpCod" WHERE T0."CANCELED" = 'N' ```**Dica:** As colunas “Total linhas” e “Total colunas” servem para facilitar a criação de totalizadores automáticos no relatório.
## Testando a consulta Durante a construção da consulta SQL é fundamental testar e verificar se o conjunto de dados está coerente, se os dados estão corretos e não foi gerado nenhum produto cartesiano. [](http://manuais.dwu.com.br/uploads/images/gallery/2025-06/uEpimage.png) ### Dica 1 – Gere totalizadores com colunas fixas Na consulta SQL, são utilizadas duas colunas fixas chamadas **"Total linhas"** e **"Total colunas"**. Esses campos possuem o mesmo valor para todas as linhas retornadas, e seu objetivo não é exibir dados adicionais, mas sim **possibilitar a exibição de totais gerais** na tabela dinâmica. Para utilizá-las corretamente: - Adicione o campo **Total linhas** no início da área **Linhas**. - Adicione o campo **Total colunas** no início da área **Colunas**. Com isso, a plataforma exibirá automaticamente os totais nas extremidades da tabela, facilitando a leitura e comparação de dados. ### Dica 2 – Otimize a performance do relatório O processamento das informações é realizado diretamente no navegador. Para evitar lentidão na visualização ou travamentos durante a análise, é importante que a consulta SQL esteja **otimizada**. Recomendações: - Evite retornar grandes volumes de dados em formato bruto; - Utilize **filtros na própria SQL** para limitar o resultado (por período, tipo de documento, status etc.); - Realize **agrupamentos** e **cálculos** dentro da própria SQL sempre que possível. Essas práticas contribuem para que a montagem da tabela dinâmica seja mais ágil e eficiente, além de melhorar a experiência de navegação do usuário. ## Configurando no CRM One Web [](http://manuais.dwu.com.br/uploads/images/gallery/2025-06/PkYimage.png) 1. Acesse o menu **Ferramentas > Configuração de Consultas**. 2. Na aba **Importação de Consultas**: 1. Nome no menu: *Análise de vendas* 2. Tipo de consulta: selecione a categoria desejada no menu 3. Consulta ativa: **Sim** 4. Todos usuários: **Sim** 5. Tipo de consulta: **Tabela dinâmica** 6. Cole a consulta SQL no campo indicado 7. Clique em **Testar consulta** 8. Por fim, clique em **Adicionar** [](http://manuais.dwu.com.br/uploads/images/gallery/2025-06/Ewrimage.png) ## Executando o Relatório Acesse o menu onde o relatório foi criado. Ao selecionar a opção, uma nova aba será aberta com a tabela dinâmica. Clique em **Cenário selecionado** para abrir os filtros e em seguida clique em **Gerar Relatório**. [](http://manuais.dwu.com.br/uploads/images/gallery/2025-06/E9Dimage.png) Ao clicar no item de menu será carregada uma nova aba “Análise de vendas, clicar na tarja azul “Cenário selecionado”, para abrir as opções de filtro e disponibilizar o botão “Gerar Relatório”, neste exemplo como não há filtros o usuário deverá clicar para gerar e começar a trabalhar com a sua tabela dinâmica. [](http://manuais.dwu.com.br/uploads/images/gallery/2025-06/1AVimage.png) ## Montando sua Tabela Dinâmica - **Campos:** lista de colunas disponíveis - **Filtros:** condiciona os dados - **Colunas:** define o eixo horizontal - **Linhas:** define o eixo vertical - **Valores:** define os cálculos (ex: soma) [](http://manuais.dwu.com.br/uploads/images/gallery/2025-06/0rJimage.png) ### Primeira execução 1. Arraste **Nome do PN** para o quadro **Linhas**. 2. Arraste **Total** para **Valores**. 3. No botão de configuração do campo Total: - Função cálculo: **Soma** - Prefixo moeda: **R$** - Separador de milhar: **.** - Separador de decimais: **,** Esse formato mostrará a soma total de vendas por cliente. [](http://manuais.dwu.com.br/uploads/images/gallery/2025-06/YvCimage.png) Repita o passo anterior, desta vez localizando o campo “Total”, lembrando que este campo representa “\[INV1\].\[LineTotal\] na consulta SQL. [](http://manuais.dwu.com.br/uploads/images/gallery/2025-06/5tmimage.png) Vamos agora fazer alguns ajustes na apresentação dos “Valores”, para esta configuração, clicar no ícone de três barras horizontais localizado junto ao campo “Total” recentemente colocado na área de valores. Será apresentado o formulário de “Configuração de campos”. [](http://manuais.dwu.com.br/uploads/images/gallery/2025-06/Lc6image.png) Na opção “Função cálculo” podem ser selecionadas as opções: - Contagem - Soma - Mínimo - Máximo - Average (média) - Produto Onde selecionaremos a opção “Soma”