No exemplo que será apresentado a seguir, definiremos um relatório/consulta que totalizará as vendas de um determinado período, com personalização do relatório com o logotipo cadastrado no Hipercusto.


  • Para entender o apresentado você deve possuir conhecimentos mínimos de Excel e de criação de comandos SQL de extração de dados (SELECT).
  • Esse exemplo é um pouco extenso, mas se você seguir o passo a passo indicado, verá que é simples criar relatórios e/ou consultas utilizando o Hipercusto.
  • Os nomes das tabelas, nomes dos campos e finalidade de cada campo poderá ser obtido no módulo "Dicionário de dados".
  • No exemplo apresentado, no item em que descrevemos como gerar o template no Excel, utilizamos a versão em português do Excel que acompanha o Office 365 (versão 16.0.922.2156). Caso você utilize outra versão talvez seja necessário converter as instruções apresentadas para a sua versão.


(1)

Carregue o Hipercusto, selecione o menu "Gestão Avançada" e em seguida acione o módulo "Reports for Hipercusto & PowerVendas".


(2)

Na tela que será exibida, clique no botão "Incluir" para iniciar o cadastramento de um novo relatório/consulta.


(3)

Na tela que será exibida, mantenha selecionada a aba "Identificação e validade", e digite os seguintes dados:

No campo

Digite o seguinte valor / texto

Nome da consulta

Resumo de vendas (diário).

Descrição, resumo ou finalidade

Valor total das vendas e margem de contribuição.

Válido do dia

Não preencha (deixe em branco).

Até o dia

Não preencha (deixe em branco).

Quais usuários podem executar a consulta?

Pode ser executada por qualquer usuário.

Exibir no menu do Hipercusto

Não exibir no menu

Situação da consulta (status)

Ativa

Instruções de uso

Totaliza, dia a dia, as vendas efetuadas e margem de contribuição obtida no período informado.


Após a digitação a tela deverá estar como a indicada abaixo:




(4)

Agora selecione a aba "Definições dos dados para o template" e informe:

No campo

Digite o seguinte valor / texto

Nome da consulta

VENDAS

Descrição consulta (opcional)

Totalizará as vendas no período informado.

Código SQL desta consulta

SELECT hvDATA,

       SUM(hvVLR_FINAL) TOTAL_VENDAS,

       SUM(hvVLR_MARGEM_CONT) TOTAL_MC

FROM HIP0051R

WHERE CAST(hvDATA AS DATE) BETWEEN :DATA_INICIAL AND :DATA_FINAL

      AND hvSTATUS = 'V'

GROUP BY hvDATA

ORDER BY hvDATA


No código SQL acima estamos pedindo para selecionar (1) a data da venda (2), a soma total das vendas efetuadas (3) e renomear o total obtido para TOTAL_VENDAS (4). Também estamos pedindo para totalizar a margem de contribuição obtida (5) e renomear o total obtido para TOTAL_MC  (6).


Estamos solicitando que os dados sejam obtidos da tabela de pedidos (7) e estamos pedindo que apenas os registros de um determinado período sejam selecionados (8), sendo que essas duas datas serão informadas na hora de executar o relatório. A esse tipo de dado passado para uma condição de seleção chamamos de parâmetros (os parâmetros sempre devem ser precedidos por dois pontos).


Como no arquivo de pedidos podem existir orçamentos, registros de vendas e vendas canceladas, solicitamos que apenas os registros de venda ativos sejam totalizados (9).  Como desejamos obter o total obtido em cada dia, solicitamos que os dados sejam agrupados por data (10) e também solicitamos que os dados sejam classificados por ordem crescente de data (11):



Após a digitação, sua tela deverá ficar parecida com a tela abaixo:


 


(5)

Vamos incluir uma nova consulta cujo único objetivo será obter o logotipo da empresa no relatório. Para isso clique na aba "Nova consulta" (na parte inferior da tela) e será exibida uma mensagem perguntando se você deseja incluir uma nova consulta no template, onde você deverá clicar em "Sim". Em seguida, forneça os seguintes dados:


No campo

Digite o seguinte valor / texto

Nome da consulta

LOGOTIPO

Descrição consulta (opcional)

Recupera o logotipo da empresa armazenado no banco de dados.

Código SQL desta consulta

SELECT prLOGOTIPO IMAGEM

FROM HIP0000I


Após a digitação você verá uma tela similar a tela abaixo:



Repare que temos duas abas de consultas, na primeira aba (Consulta 1) está a consulta que foi digitada no passo 4, e na segunda aba (Consulta 2) está a que acabamos de digitar. Não existe limite pré-definido do número de consultas que podem ser cadastradas (o limite é definido pelo hardware do seu PC ou pelo sistema operacional utilizado).


(6)

Agora, na parte superior da tela, selecione a aba "Definições e configurações dos parâmetros", onde deveremos cadastrar os dois parâmetros que deverão ser solicitados para serem enviados para a consulta definida no passo 4. Clique na coluna vazia com o cabeçalho "Seq" e informe os seguintes dados:

Na coluna

Digite o seguinte valor / texto

Seq.

1

Parâmetro

DATA_INICIAL

Descrição que deverá ser exibida para o usuário

Totalizar as vendas do dia.

Tipo parâmetro

Selecione a opção "data",

Tamanho máximo

Não preencha (deixe em branco).

Valor mínimo

Não preencha (deixe em branco).

Valor máximo

Não preencha (deixe em branco).

Obrigatório

Ative esse campo (a caixa deverá ficar marcada)

Apenas maiúsculas

Deixe em branco.

Usar na consulta

Não preencha (deixe em branco).

Lista de valores

Não preencha (deixe em branco).

Resultado lista

Não preencha (deixe em branco).

Inicializar o campo com

Não preencha (deixe em branco).


Importante: na digitação dos nomes dos parâmetros (a coluna "Parâmetro") você deve digitar o nome do parâmetro sem os dois pontos. O ":" deve ser informado somente na definição do SELECT (passo 4 descrito anteriormente).


Pressione a seta para baixo, indicando que finalizou a definição do primeiro parâmetro e vamos iniciar a definição do segundo parâmetro (basta pressionar a seta para baixo para confirmar automaticamente os dados do parâmetro atual e iniciar a definição de um novo:


Na coluna

Digite o seguinte valor / texto

Seq.

2

Parâmetro

DATA_FINAL

Descrição que deverá ser exibida para o usuário

Até o dia:

Tipo parâmetro

Selecione a opção "data",

Tamanho máximo

Não preencha (deixe em branco).

Valor mínimo

Não preencha (deixe em branco).

Valor máximo

Não preencha (deixe em branco).

Obrigatório

Ative esse campo (a caixa deverá ficar marcada)

Apenas maiúsculas

Deixe em branco.

Usar na consulta

Não preencha (deixe em branco).

Lista de valores

Não preencha (deixe em branco).

Resultado lista

Não preencha (deixe em branco).

Inicializar o campo com

Não preencha (deixe em branco).


Em seguida, clique no botão "Confirmar" (na parte inferior da tela) apenas para salvar os dados digitados até o momento. Sua tela deverá ficar parecida com a tela abaixo (na imagem abaixo nós reduzimos o tamanho de algumas colunas para poder exibir todas as colunas preenchidas):




(7)

O próximo passo é definir o modelo em Excel que deverá ser utilizado na geração do relatório mas, antes, vamos recapitular o que definimos até agora:

  • Criamos dois SELECTs, um para totalização das vendas e outro para obter o logotipo da empresa:
    • O nome dos dados da consulta que totaliza as vendas é, VENDAS e retornará três campos: hvDATA, TOTAL_VENDAS e TOTAL_MC ou, conforme explicamos no tópico etiquetas de dados, o nome completo de cada campo desta tabela será: <#VENDAS.hvDATA>, <#VENDAS.TOTAL_VENDAS> e <#VENDAS.TOTAL_MC>.
    • O nome da consulta que retorna o logotipo da empresa é LOGOTIPO e o nome do campo é IMAGEM, ou, utilizando a etiqueta de dados, o nome completo deste campo será <#LOGOTIPO.IMAGEM>.
  • Também definimos dois parâmetros chamados DATA_INICIAL e DATA_FINAL que serão enviados automaticamente para o SELECT definido no passo 4 mas, se você desejar utilizar no templete os parâmetros que foram digitados pelo usuário poderá referenciá-los como: <#DATA_INICIAL> e <#DATA_FINAL>.


Agora abra o Excel e inicie a digitação de uma nova planilha.


Na célula / Operação

Digite o seguinte valor / texto ou execute a operação abaixo

Aumente o tamanho das colunas para cerca de 3 cm.

Clique na seta que fica entre a coluna A e a linha 1 para selecionar toda a planilha, e, mantendo todas a planilha selecionada, clique com botão direito no cabeçalho da coluna "A", selecione a opção "Largura da coluna" e aumente seu e digite o número 17,57:


Lembre que a unidade de medida do Excel é pontos e esse número de 17,57 equivale a +/- 3 cm de largura.

Mescle as células A1 até a B3

Para mesclar essas células, marque as célula A1 até a B3 e selecione a opção "Mesclar e centralizar" do Excel.

Nas células mescladas (A1 até B3)

Insira uma imagem em branco, no formato PNG e, depois que a imagem estiver no Excel troque seu nome para <#LOGOTIPO.IMAGEM>.  Abaixo indicamos o local no Excel onde você define um nome para a imagem que foi importada:


Em seguida, redimensione a imagem de modo a ocupar apenas o tamanho das células mescladas (A1 até B3).

Mescle as células C1 até a E1

Para mesclar essas células, marque as célula C1 até a E1 e selecione a opção "Mesclar e centralizar" do Excel.

Nas células mescladas (C1 a E1) digite:

Total diário de vendas

Mescle as células C3 até a E3

Para mesclar essas células, marque as célula C3 até a D3 e selecione a opção "Mesclar e centralizar" do Excel.

Vamos inserir o período informado pelo usuário na coluna acima. Para isso, na célula C3 você deverá digitar:

Período: <#DATA_INICIAL> até <#DATA_FINAL>

Vamos definir que a coluna B deverá ser utilizada para a data da venda. Para isso, na coluna B4 digite o texto:

Dia da venda

A coluna C será reservada para o total das vendas do dia, para isso, na coluna C4 digite:

Total das vendas

A coluna D será reservada para a margem de contribuição obtida na data esta linha. Para isso, na coluna D4 você deverá digitar:

MC das vendas

Agora vamos iniciar os definição dos alcances dos dados. Na coluna B5 vamos especificar a etiqueta que contém a data da venda. Para isso, digite:

<#VENDAS.hvDATA>

Na coluna C5 vamos especificar a etiqueta com o total das vendas, para isso, digite:

<#VENDAS.TOTAL.VENDAS>

Na coluna D5 vamos especificar a etiqueta com a margem de contribuição obtida, para isso digite:

<#VENDAS.TOTAL_MC>

Vamos incluir uma linha de totalização que somará o total das vendas de todos os dias. Para fazer isso, na coluna: B7 digite o texto:

Total geral:

Na coluna C7 digite a fórmula do Excel que somará o total das linhas superiores. Você deverá somar as células C5 e C6, para isso, digite:

=SOMA(C5:C6)

Na coluna D7 digite a fórmula que somará o total das linhas superiores, isto é, digite a fórmula:

=SOMA(D5:D6)

Agora vamos definir o alance dos dados, isto é, cada área do relatório que receberá as informações lidas do banco de dados. Primeiro vamos definir a área do logotipo, para isso marque as linhas 1 a 4:

Para marcar a linha, basta posicionar o cursor na lateral da linha 1, pressionar o Shift e clicar na linha 4.

Selecione o menu "Fórmulas" e em seguida clique no botão "Gerenciador de nomes":

Na tela que será exibida, clique no botão "Novo..." e, na tela de definição do nome, digite "__LOGOTIPO__" no campo Nome (lembre que antes e depois do texto LOGOTIPO devem ser digitados dois "underscore") e em seguida clique em "OK" e depois em "Fechar":

Agora vamos definir a área dos dados.Para isso, marque a linha 5, selecione novamente o Gerenciador de Nomes, clique no botão "Novo..." e, na tela que será exibida, digite o texto "__VENDAS__" no campo "Nome" (lembre que antes e depois do texto VENDAS  devem ser digitados dois "underscore") em seguida clique em "Ok" e em "Fechar"

Se desejar, dê uma aparência "simpática" para a planilha como definição de cores diferentes para as linhas de cabeçalhos, máscaras para os valores, bordas, etc. Para isso, use as opções de formatação que o Excel possui. Veja como nosso template ficou após termos formatado os cabeçalhos das colunas (como você só está "aprendendo", não é necessário formatar as células):

Agora salve este template em um local do seu PC (lembre o local e o nome onde o template foi salvo).

Para isso, clique em "Arquivo" e selecione a opção "Salvar" ou "Salvar como".



(8)

Agora precisamos incorporar o template definido acima na consulta. Para isso, retorne para a tela do Hipercusto, selecione a aba "Identificação e validade", clique no botão "Importar template" e selecione o arquivo que você gerou no passo 7. Em seguida, clique no botão "Confirmar" para salvar todas as alterações efetuadas até o momento.


(9)

Repare que no topo da tela existe uma mensagem em vermelho com o texto "Efetuar teste" isso significa que para liberar a consulta para os usuários é preciso fazer um teste e verificar se ela está funcionando corretamente. Para isso, pressione o botão "Testar consulta", quando será apresentada a tela abaixo:



No primeiro campo você deverá digitar o primeiro dia do período desejado e no segundo campo a data final do período que será totalizado. Em seguida, clique no botão "Processar consulta" e você verá o resultado da consulta que acabamos de definir:



Repare que existe uma linha "em branco" antes do total geral e que a data foi impressa em formato numérico pois não informamos para o Excel que ele deveria utilizar a máscara de data. Além disso, o logotipo apareceu esticado e a linha com o período ficaria melhor se estivesse logo abaixo do cabeçalho do relatório. Vamos corrigir tudo isso.


(10)

Abra novamente, no Excel, o template que você criou e faça os seguintes ajustes:


Descrição do ajuste ou da alteração

Na coluna B5 indique que a máscara desse campo é "Data abreviada".

Selecione a imagem da célula A1/B3 e estreite-a um pouco.

Mova o texto da célula C3 para a célula C2.

No gerenciador de nomes, selecione o nome __VENDAS__ , clique em Editar e troque seu nome para __VENDAS__X . Em seguida clique em salvar (o "X" após o nome indica que a próxima linha após o alcance dos dados deverá ser eliminada).

Salve o template em disco e, no Hipercusto, clique novamente no botão "Importar template" e selecione o template alterado.


Repita o teste (passos 8 e 9) e o novo relatório apresentado será similar ao abaixo:




  • Na criação do template você poderá utilizar a maioria dos recursos disponíveis no Excel como: totais, cabeçalhos, rodapés, cores, condições, etc.
  • Se você incluir gráficos no template, este deverá ser salvo no formato XLS (antigo formado do Excel) pois os gráficos do formato XLSx são incompatíveis com o Reports.