Manuais
PHC GO Como colocar gráficos treemap
 
As Análises do PHC GO contemplam a possibilidade de incluir gráficos de vários tipos, o que em certos casos pode ser uma mais-valia pois irá enriquecer o seu conteúdo e facilitar a leitura dos dados extraídos nas mesmas.

Assim, este tópico irá explicar em detalhe como configurar uma análise com gráficos de tipo tree map através de um exemplo prático e irá terminar com a execução da mesma para observar o aspecto final do gráfico.
Notas

Para mais informações de configurações de outros tipos de gráficos em análises clique abaixo no tópico respetivo:

Configuração da análise com gráfico tree map


1. Configuração da análise com gráfico tree map



  1. Aceda ao menu localizado no lado esquerdo da página, e navegue até Configuração de análises ( Menu > Definições > Reporting );

  2. Pressione o botão Introduza configuração de análise;

  3. Preencha os seguintes campos:
     
    • Descrição da análise: Ranking de clientes em vendas

    • Grupo: Clientes e Vendas
    • Nota

      O Campo Descrição da análise representa o título que a análise irá assumir. O campo Grupo serve para determinar em que agrupador se vai localizar a análise dentro do ecrã de Clientes.
    • Tipo: Normal
    • Notas

      Tem a possibilidade de construir até 6 Tipos de Análises, para mais informações sobre a forma como cada uma é configurada clique no link respetivo.


      • Normal

        Análises tipicamente construídas através de uma Expressão SQL ou através de programa em linguagem VB.NET.


      • Anual

        Análises para verificar o comportamento anual de uma entidade, por exemplo, a rentabilidade anual da empresa.


      • Mensal

        Análises para observar o comportamento de determinadas variáveis ao mês.


      • Extrato

        Análises para avaliar a evolução de um conjunto de movimentos com a apresentação do respetivo saldo.


      • Comparação Anual

        Análises que exibem dados comparativos entre dois anos selecionados pelo utilizador.


      • Ranking

        Análises que comparam dados num período de datas definido com um período homólogo, exibindo os dados ordenados por importância.

  4. No separador Detalhes preencha o campo Descrição completa, com uma descrição sucinta do âmbito da análise. Na prática, esta descrição virá refletida quando executar a análise e passar com o cursor do rato sobre o icone localizado à direita do nome da análise.

  5. No exemplo da análise seria: Esta análise apresenta o ranking de todos os clientes a quem se faturou (documentos de fatura e notas de crédito, excluindo notas de débito e documentos em rascunho ou anulados) no ano atual. A análise permite também navegar para o cliente.

    • É uma análise de ecrã: Sim
    • Nota

      Se o campo É análise de ecrã estiver ativado, então irá determinar que se trata de uma análise associada a um ecrã. Caso o campo esteja desativado, então a análise será considerada global, ou seja, que pode ser executada a partir do menu Análises e Listagens sem depender de nenhum ecrã.

    • Ecrã: Clientes

    • Plano mínimo: Selecione o plano Grow

  6. No separador Normal, preencha os seguintes dados:
    Informação

    A inclusão de um gráfico numa análise implica sempre a existência de código SQL ou em VB.NET relacionado com a grelha dos resultados, isto é, não é possível construir uma análise unicamente com um gráfico.

    • É uma expressão SQL: Sim

    • Código:

    • select sum(ft.ettiliq-ft.efinv) as ivavalor, ftstamp
      into #calciva
      from ft
      where (ft.tiposaft='FT' or ft.tiposaft='NC' or ft.tiposaft='FR' or ft.tiposaft='FS')
      and ft.fno>0 and ft.anulada=0
      group by ftstamp
      select *, case when Vendas_ano_anterior=0 then 0 when Vendas_este_ano=0 then 0
      else (Vendas_este_ano-Vendas_ano_anterior)/Vendas_ano_anterior end as variacao
      from (
      select RANK() OVER(ORDER BY sum(case when year(ft.fdata)=year(getdate()) then (ivavalor)
      else 0 end) DESC) as posicao,
      case when cl.estab>0 then ltrim(rtrim(cl.nome))+' - '+
      convert(varchar(10),cl.no)+' - '+
      convert(varchar(10),cl.estab)
      else cl.nome+ ' - ' +convert(varchar(10),cl.no) end as Nome,
      cl.clstamp as stamp,
      case when sum(case when year(ft.fdata)=year(getdate()) then (ivavalor)
      else 0 end) > 1000000
      then round(sum(case when year(ft.fdata)=year(getdate()) then (ivavalor)
      else 0 end),0)
      else sum(case when year(ft.fdata)=year(getdate()) then (ivavalor)
      else 0 end) end as Vendas_este_ano,
      isnull((sum(case when year(ft.fdata)=year(getdate()) then (ivavalor)
      else 0 end))
      / (select sum((ivavalor)) from ft inner join #calciva on #calciva.ftstamp = ft.ftstamp
      where year(ft.fdata)=year(getdate())), 0) *100 as percentagemdototal,
      case when sum(case when year(ft.fdata)=year(getdate())-1 and month(ft.fdata)<=month(getdate()) then (ivavalor)
      else 0 end) > 1000000
      then round(sum(case when year(ft.fdata)=year(getdate())-1
      and month(ft.fdata)<=month(getdate()) then (ivavalor) else 0 end),0)
      else sum(case when year(ft.fdata)=year(getdate())-1 and month(ft.fdata)<=month(getdate()) then (ivavalor)
      else 0 end) end as Vendas_ano_anterior,
      isnull(((sum(case when year(ft.fdata)=year(getdate())-1 and
      month(ft.fdata)<=month(getdate()) then (ivavalor) else 0 end))
      / (select sum((ivavalor)) from ft inner join #calciva on #calciva.ftstamp = ft.ftstamp
      where year(ft.fdata)=year(getdate())-1 and
      month(ft.fdata)<=month(getdate()))),0) *100 as percentagemdototaldoanopassado,
      (sum(case when year(ft.fdata)=year(getdate()) then (ivavalor) else 0 end) -
      sum(case when year(ft.fdata)=year(getdate())-1 and month(ft.fdata)<=month(getdate())
      then (ivavalor) else 0 end)) as Variação_Valor
      from ft (nolock)
      inner join cl (nolock) on cl.no=ft.no and cl.estab=ft.estab
      inner join #calciva on #calciva.ftstamp = ft.ftstamp
      inner join td on td.ndoc=ft.ndoc and td.[excluianalises]=0
      where (ft.tiposaft='FT' or ft.tiposaft='NC' or ft.tiposaft='FR' or ft.tiposaft='FS')
      and ft.fno>0 and ft.anulada=0
      group by cl.nome,cl.clstamp, cl.estab, cl.no
      )t
      where t.Vendas_ano_anterior<>0 or t.Vendas_este_ano<>0

    • Colunas expressão SQL: posicao;Nome;Vendas_este_ano;percentagemdototal;Vendas_ano_anterior;percentagemdototaldoanopassado;Variação_Valor;variacao
    • Nota

      Este campo serve para indicar o nome das colunas que a expressão SQL retorna, separados por ponto e vírgula. É sensível a maiúsculas e minúsculas.
    • Tipo de dados para cada coluna: n0;c;mb1;pct1;mb1;pct1;mb1;pct1
    • Nota

      Os valores das colunas que a expressão SQL pode retornar são:

        n para valores numéricos,
        qtt para quantidades,
        pct para percentagens,
        c para carateres,
        l para lógicos,
        d para datas,
        mb para moeda base,
        me para moeda estrangeira,

        Os diversos tipos que indicar neste campo, devem vir separados sempre por ponto e vírgula.

        Além disso, pode definir o tamanho de cada coluna. Para isso, após o tipo de dado de cada coluna deve acrescentar ":" seguido de um valor em pixéis. (Por exemplo mb:80)
    • Títulos das expressões SQL: Posição;Nome;Vendas este ano;% do total;Vendas do ano anterior;% do total;Variação Valor;Variação %
    • Nota

      Este campo destina-se ao preenchimento dos títulos das colunas que a expressão de SQL retorna, separados por ponto e vírgula. Estes títulos são aqueles que virão exibidos nas colunas da análise quando esta for executada na prática.
    • Calcula totais: Sim


    • Colunas a calcular: 3;4;5;6;7 (neste caso serão totalizados os valores obtidos nas colunas:
      Vendas este ano, % do total, Vendas do ano anterior, % do total e Variação Valor)


    • Permite navegar para um ecrã: Sim


    • Nome da tabela a ligar: Clientes
      Ao preencher estes 2 últimos campos, estamos a determinar que a análise irá permitir navegação para registos de clientes. As análises configuradas desta forma, quando executadas irão exibir ao fim da última coluna o icone que indica que é passível de navegação para um registo.
    Dica

    Caso queira saber mais informações de como configurar navegações para uma análise, pode aceder aqui
  7. No separador Gráficos é onde iremos configurar o gráfico a incluir na análise.

    • Tem gráfico: Sim


    • Tipo de gráfico: Tree map


    • Posição do gráfico em relação à grelha: Acima


    • Gráfico tem expressão própria: Sim


    • Código:

    • select * from(  select top 10  RANK() 
      OVER(ORDER BY sum(case when year(ft.fdata)=year(getdate())
      then ft.ettiliq-ft.efinv else 0 end) DESC) as posicao,
      case when cl.estab>0 then ltrim(rtrim(cl.nome))+' - '+
      convert(varchar(10),cl.no)+' - '+convert(varchar(10),cl.estab)
      else cl.nome+ ' - ' +convert(varchar(10),cl.no) end as Nome,
      sum(case when year(ft.fdata)=year(getdate()) then
      ft.ettiliq-ft.efinv else 0 end) as vendasesteano
      from ft (nolock)
      inner join cl (nolock) on cl.no=ft.no and cl.estab=ft.estab
      inner join td on td.ndoc=ft.ndoc and td.[excluianalises]=0
      where (ft.tiposaft='FT' or ft.tiposaft='NC' or ft.tiposaft='FR'
      or ft.tiposaft='FS') and ft.[fno]>0 and ft.anulada=0
      group by cl.nome,cl.clstamp, cl.no, cl.estab, cl.no) t

    • Colunas: posicao;Nome;vendasesteano


    • Tipos para as colunas: posicao;Nome;vendasesteano


    • Títulos para as colunas: posicao;Nome;vendasesteano


    • Coluna para série 1: posicao;Nome;vendasesteano


    • Coluna para série 2: posicao;Nome;vendasesteano


    • Coluna para dados: 3


    • Coluna(s) para legenda: 2


  8. No separador Acessos é onde se estabelecem os acessos que a análise terá, podendo a mesma ser disponibilizada em função de um acesso por perfil ou acesso por área. Os acessos estão diretamente relacionadas com os Perfis associados aos Utilizadores da aplicação.
    No exemplo selecione a área das Vendas.
  9. Nota

    Se não for definido um acesso por perfil ou se não for indicada uma área de acesso, presume-se que todos os utilizadores podem consultar a análise. Ao definir um dos acessos, determina-se que apenas os utilizadores com acesso a essa área ou a esse perfil poderão consultá-la.

  10. Pressione o botão Grave.

Execução da análise com gráfico tree map


2. Execução da análise com gráfico tree map



  1. Aceda ao menu localizado no lado esquerdo da página, e navegue até Clientes ( Menu > Clientes );

  2. Pressionar o tabulador Análises e Listagens;

  3. Pressionar o separador Clientes e vendas;

  4. Pressionar sobre a análise Ranking de clientes em vendas.

O gráfico da análise terá o seguinte formato:


Videos relacionados: