Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 6 Next »

Artigo que tem como objetivo instruir a criação de relatórios bem como a migração de relatórios da plataforma antiga.

Planilha do projeto de migração (precisa da aprovação do Rodrigo Oliveira para o acesso)
https://docs.google.com/spreadsheets/d/1WxIYQoPmHnG8PccoOTcCYXt3vhoBmEtN/edit#gid=1298578454


(warning) Artigo em construção!(warning)

\uD83D\uDCD8 Instruções

Na migração de relatórios, mantenha uma aba do antigo (no silverlight) e outra aba com o novo portal de relatórios:

  1. Primeiro verifique como esta o relatório na plataforma antiga

    image-20240409-151928.png

    image-20240409-151950.png

  2. Abra Dicionário > Variáveis você deverá replicar essas variáveis para a nova versão.

    image-20240409-152048.png

  3. Após isso, deve conferir o data source que precisa utilizar no relatório em questão, deve estar na planilha identificado uma sugestão, com isso deve validar a query no relatório antigo e criar um select novo para o relatório sobre o data-source, mantendo apenas os campos necessários, assim ‘economiza’ processamento de dados do banco.

    image-20240521-120132.png

    É necessário utilizar o DS para não utilizar sintaxe específica de um banco, assim tanto faz se o report for para sqlServer ou Oracle

  4. Os filtros sobre o Data-source não podem utilizar comandos da sintaxe específica do banco de dados, por isso é aconselhável utilizar de forma programática as queries com o stilmulsoft

    image-20240521-122029.png

    Outros Exemplos:

Variável relatório

Exemplo do filtro no oracle

Comando no Stimulsoft,Nesta coluna não pode ser utilizado comando específicos de um sql (oracl/sqlServer)

Observação

NumeroPedido : string

c.NumeroPedido = case when length ('{NumeroPedido}') > 0 then '{NumeroPedido}' else c.NumeroPedido end

NumeroPedido = {NumeroPedido == "" ? "NumeroPedido" : NumeroPedido}

Utilizar apenas quando o campo NumeroPedido da tabela nunca retornar Null, para este caso é necessário usar outro método

Setor : string

coalesce(cs.nome,'-') like case when length ('{Setor}') > 0 then UPPER('%{Setor}%') else coalesce(cs.nome,'-') end

(Setor = {Setor == "" ? "Setor" : "'"+Setor+"'"} or Setor is {Setor == "" ? "null" : "not null"})

Valida campo da tabela sendo vazio ou nulo

Destinatario : string

(d.CNPJ like case when length ('{Destinatario}') > 0 then UPPER('%{Destinatario}%') else d.CNPJ end OR d.RazaoSocial like case when length ('{Destinatario}') > 0 then UPPER('%{Destinatario}%') else d.RazaoSocial end)

(CNPJDestinatario like '%{Destinatario}%' or Destinatario like '%{Destinatario}%')

DataInicio : string no formato dd/mm/aaaa

c.DataPedido >= case when length ('{DataInicio}') > 0 then TO_DATE('{DataInicio} 00:00:01', 'dd/mm/yyyy hh24:mi:ss') else c.DataPedido end

DataPedido >= {DataInicio == "" ? "DataPedido" : "'"+DataInicio

para o fim do periodo apenas inverter >= para <=

Somentependentes : bool

b.nome = case when '{Somentependentes}'='true' then 'Aberta' else b.nome end

STATUSOCORRENCIA = {Somentependentes == true ? "'Aberta'" : "STATUSOCORRENCIA"}

a váriavel é apenas true / false, para casos de "três estados" para possibilitar ambas, precisa outro método

  1. A partir disso o trabalho é sobre o novo relatório, onde você precisará criar o arquivo e desenhar com base no relatório antigo, na sequência há a seção que descreve como criar o relatório.

🆕 Design de um novo relatório

  1. Acesse o ambiente de testes no portal de relatórios

    1. http://forlog-teste.viasoftcloud.com.br:16000/login

  2. Conforme o Relatório/Documento que deseja criar clique na aba referente, e em Novo

image-20240409-195709.png
  1. Em propriedades selecione o “ReportTemplate” e preencha:

    1. o Nome do Relatório: “relExemplo” que é a chave única do relatório;

    2. Apelido do Relatório: é o título, que ficará visível na primeira linha do relatório;

    3. Descrição do Relatório: uma descrição simples e objetiva referente o que é.

      image-20240409-195900.png

  2. Como dito anteriormente adicione as variáveis,

  3. Adicione o data-source com o filtro stimulsoft

  4. Desenhe o relatório

    1. no padrão há três páginas “Capa”, “Dados_retrato” e “Dados_paisagem”, analise o que mais se encaixa com o relatório a ser migrado em questão e remova as demais páginas, a capa a ideia seria apresentar os dados em gráficas ou algumas forma já processada, caso faça sentido.

  5. Realize testes em pré-visualização

  6. Opcional - Lembre de remover as configurações de ‘pedido de usuário’ das variáveis de teste, caso não estavam marcadas para isso.

  7. Exportar Relatório, vai gerar um arquivo Json

  8. Importar no projeto 'Relatorios' Ou “Documentos”

    image-20240521-122559.png

  9. Commitar o relatório (e possíveis alterações em DS) na branch “dev/epic-445

    1. Por padrão com a mensagem no commit, ex: “Task-1234 - relArtigoDeExemplo“


💡 Solução de problemas ou auxílios no Design de relatórios

Tabela com cores intercaladas

Para fazer uma tabela com sombreamento, como por exemplo

image-20240409-194522.png
  1. Selecione a tabela desejada e clique em Condições

image-20240409-194629.png
  1. Adicione uma “Condição”

    1. configure como “Expressão” no dropdown

    2. Coloque na expressão “Line % 2 == 0” isso significa que a linha da tabela quando for “Par” será aplicada esta condição,

    3. Configure como deve ser alterado, para o exemplo anterior, configurei apenas a cor de fundo.

      image-20240409-194732.png

Configurar relatório para Operador informar filtros antes de realizar a busca

Para evitar que o sistema dispare um filtro muito grande, é possível configurar para que ao abrir o relatório o sistema não dispare a geração do relatório de forma automática, esperando o operador informar os filtros antes.

image-20240523-192416.png

Destaque informações importantes em um painel como este. Para editar a cor ou o estilo desse painel, selecione uma das opções no menu.

\uD83D\uDCCB Artigos relacionados

  • No labels