4. Preencha uma
Descrição completa para a análise. Por exemplo, pode preencher um resumo sucinto do que é possível de extrair na análise e dar informação adicional sobre a 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.
Informação
O campo Número é apenas de consulta e identifica o número interno da análise. As análises internas (construídas pela PHC) apresentam uma numeração simples, com início no n.º 1. As análises construídas por parceiros PHC GO apresentam uma numeração um pouco diferente, para sua distinção: têm como prefixo o número interno da instalação de kitparceiro seguido de numeração sequencial, começando no n.º 1. Por exemplo XXXX1 (onde "XXXX" é o n.º interno da instalação de kitparceiro).
5. Caso pretenda que a análise esteja agregada a qualquer registo contido num ecrã (por exemplo: Clientes), deve ativar o campo
É uma análise de registo e mais à direita selecionar o
Ecrã respetivo (a análise ficará disponível ao consultar um registo no ecrã que indicou, dentro do tabulador de "Análises").
Se o campo
É uma análises de registo estiver desmarcado, a análise uma vez finalizada na sua configuração será considerada uma
análise global e ficará localizada no
Menu > Pesquise por
Análises e Listagens onde se exibem as análises deste tipo.
Se estivermos perante uma análise de registo (a respetiva
check_box
checkbox estiver ativa), o utilizador pode configurar condições de visibilidade nas suas análises. Para isso, existe o campo
Código de disponibilidade da análise.
O objetivo deste campo é permitir que o utilizador indique uma condição para a análise de registo ficar disponível ou não (este campo apenas fica disponível se a análise estiver marcada
check_box
como
É uma análise de registo.
Deve ser criada uma função que executa o código indicado pelo utilizador. Se o retorno for "false", a análise não pode ser apresentada no respetivo registo.
A função deve receber o currentRecord (genericVO) ou o currentSerie (genericVO) caso seja uma análise de um registo que utiliza série.
Exemplo:
1 | return currentRecord.no=2
|
Com este código de disponibidade, a respetiva análise ou snapshot, apenas fica disponível quando estivermos posicionados sobre um registo do cliente nº2.
Caso se trate de um
snapshot, deve marcar a checkbox
check_box
É um snapshot exclusivo de registo que se apresenta no separador horizontal
Snapshots para que o código executado funcione.
6. Se tencionar que a análise esteja disponível a partir de um ecrã específico, deverá ativar o campo
É uma análise de ecrã e indicar no campo
Ecrã onde a mesma será disponibilizada. Optando por esta configuração, a análise ficará disponível no ecrã que indicou, dentro do tabulador de "Análises e Listagens").
Nota
Não é permitida a análise estar configurada para ser de registo e de ecrã em simultâneo.
7. Preencha o
Plano Mínimo que irá disponibilizar a análise. Ao preencher um determinado plano na análise está a definir que ela estará disponível apenas a partir desse plano e em planos superiores.
8. Pode alterar o
tamanho da fonte para impressão em PDF (o valor mínimo admitido para o campo é 6).
Esta seção do ecrã deve ser
usada exclusivamente em situações que pretenda que a análise peça ao utilizador dados iniciais para
filtrar a saída de dados antes de ser executada. Se não for esse o caso, prossiga a configuração da análise na seção
Extrato.
9. Para incluir dados iniciais clique no botão
Adicione variáveis e configure tantos dados iniciais consoante as suas necessidades.
A grelha é composta pelos seguintes campos (colunas):
Número: Trata-se do nº interno atribuído ao dado inicial e que representa a ordem pela qual vem exibido ao aceder à análise.
O valor deste campo é incrementado automaticamente em uma unidade com base no valor do último registo de dado inicial criado na grelha, muito embora, possa posteriormente alterar a ordem dos dados iniciais conforme pretenda.
Nome: Campo para preencher o nome que terá o dado inicial.
Tipo: Campo para determinar o tipo de dado inicial.
Tem disponível para seleção um dos seguintes tipos: Caracter, Mês, Numérico, Lógico, Data, Ano e Tabela.
Opções: Se tipo "Tabela": lista de opções, separada por vírgulas. Se tipo "Ano": ano inicial com 4 dígitos: Este campo pode albergar dados de diversas formas, em função do tipo de dado selecionado no campo anterior.
Dicas
a) Para dados de tipo
Tabela pode preencher neste campo entre outras coisas:
» Um dado inicial que permita selecionar um item a partir de uma lista de itens fixos (separados por vírgula). Por exemplo, um campo dropdown para selecionar o estado para visualizar encomendas:
Todas,Abertas,Fechadas
» Um dado inicial que permita selecionar um item a partir de uma lista que pode variar em função de uma query SQL (implica ativar a coluna
Lista é uma query)
Exemplo 1 - query que retorna o nome de cada um dos clientes presentes na tabela de Clientes (CL) sendo que o 1º item representa "Todos os Clientes"
select uval from (select 'Todos os Clientes' as uval from cl (nolock)
union select distinct nome as uval from cl (nolock)) a
ORDER BY CASE uval WHEN 'Todos os Clientes' THEN 1 ELSE 2 END, uval
Exemplo 2 - query que retorna o nome das séries de documentos de faturação (tabela TD), que sejam do tipo ´FT´, ´FR´, ´FS´ ou ´NC´, e que o 1º item representa "Todos os Tipos de Documentos"
select uval from (select 'Todos os Tipos de Documentos' as uval from td (nolock) union
select distinct nmdoc as uval from td (nolock) where
td.tiposaft='FT' or
td.tiposaft='NC' or
td.tiposaft='FR' or
td.tiposaft='FS') a
ORDER BY CASE uval WHEN 'Todos os Tipos de Documentos' THEN 1 ELSE 2 END, uval
b) Para dados de tipo
Ano poderá criar um dado de 4 dígitos que servirá de base para o cálculo da análise. Exemplo: 2021
c) Para dados de tipo
Mês poderá criar um dado que sirva para o cálculo da análise. Exemplo: 12.
Lista é uma query: A lista deve ser uma expressão de SQL que retorna uma lista com um campo designado por "uval" (ver exemplos anteriores).
Obrigatório: Indica que este dado inicial é de preenchimento obrigatório.
Nº de carateres: Número máximo de carateres que este dado inicial pode receber. Se deixar o campo a zero não terá limite de nº de caracteres. O preenchimento desta coluna da grelha apenas se aplica a dados iniciais do tipo numérico e caracter.
Decimais: Número de decimais caso o campo seja "numérico".
v.d texto: Valor por defeito para este dado inicial caso seja do tipo "caracter".
v.d. número: Valor por defeito para este dado inicial caso seja do tipo "numérico".
v.d. lógico: Valor por defeito para este dado inicial caso seja do tipo "lógico".
v.d. data: Valor por defeito para este dado inicial caso seja do tipo "data". Neste caso, este campo representa o nº de dias de diferença para a data atual. Por exemplo, -365 neste campo, colocará no dado inicial a data de há 365 dias atrás.
Rejeita cache: Caso ative este campo, o valor preenchido pelo utilizador da análise para a variável do dado inicial não será guardada na base de dados com o último valor introduzido (ou seja, sempre que a análise for inicializada, o valor da variável de dado inicial será automaticamente preenchido pela aplicação, tendo por base o valor preenchido nos campos v.d. texto, v.d. número, v.d. lógico ou v.d. data (conforme o tipo de dado definido, se texto, numérico, lógico, data,..).
tips_and_updatesDicas
Por exemplo, para os campos de tipo
Ano, a framework vai olhar primeiramente se guarda cache
(rejeita cache desativado) e em caso afirmativo recorre ao último valor guardado em tabela.
Caso não guarde cache
(rejeita cache ativado), então a framework irá olhar para o valor definido no campo
v.d.data, e caso não esteja preenchido, olha para o valor do campo
v.d.texto.
Se os campos anteriores não contemplarem qualquer valor, então o campo virá vazio de conteúdo.
Exemplos:
(I) se rejeita a cache e tem vd.data = -2 <-- toma sempre como base o ano corrente (ex: 2023) e diminui 2 anos
Então, na prática o campo "Ano" = 2021
----------------------------------------------------------
(II) se rejeita a cache e tem vd.data = vazio e v.d.texto= 2017
Então, na prática o campo "Ano" = 2017
----------------------------------------------------------
(III) se rejeita a cache e tem vd.data = vazio e v.d.texto= vazio
Então, na prática o campo "Ano" = vazio
----------------------------------------------------------
(IV) se rejeita a cache e tem vd.data = 2
Então, na prática o campo "Ano" = vazio (porque estamos no ano corrente + 2 anos) seria um ano superior ao ano corrente, logo nesses casos o valor vem vazio.
Premissa: Os dados iniciais de tipo Ano só suportam anos até ao ano corrente.
Tooltip: Informação a explicar o âmbito do dado inicial.
10. O campo
Texto para o botão de execução é aplicável para o caso de querer personalizar o nome do botão de execução da análise, com o nome que pretender. Também pode criar a respetiva tooltip, para isso, preencha o campo
Texto para a tooltip do botão de execução com a descrição para o botão.
11. Se ativar o campo
Pede sempre dados iniciais antes de executar determina que a análise ao ser acedida não será executada automaticamente pela aplicação. Assim, quando aceder à análise pela segunda vez, a execução não irá ser realizada automaticamente com os filtros, que foram colocados da primeira vez que se correu a análise.
22. Esta seção permite configurar e incluir na análise um
snaphot, isto é, um valor calculado sob a forma de um indicador.
É um snapshot: Ative este campo caso pretenda incluir na análise um snapshot.
Informação
Se quiser eliminar um snapshot/análise ou desmarcar a opção "É um snapshot" na sua configuração, certifique-se de que não está associado a um Dashboard.
É um snapshot exclusivo de registo: Ative este campo caso pretenda que o snapshot apenas seja executado (visível) no contexto da consulta de um registo sobre o ecrã para o qual está configurado (definido mais acima na seção
Detalhes no campo
Ecrã).
É apenas um snapshot e não contém análise: Se ativo irá determinar que esta configuração apenas irá contemplar um snapshot e não irá contém qualquer análise.
Mostra snapshot e seu gráfico no ecrã de análise total: Ativando este campo será exibido o snapshot e o eventual gráfico ligado a este no ecrã das Análises Globais (
Menu > Pesquise por Análises e Listagens) .
Tipo de snapshot: Este campo permite definir se pretende construir apenas um snapshot e nesse caso deverá selecionar o item
Normal. Caso pretenda construir um
2º snapshot que retorne outros valores deverá optar pelo item
2 valores independentes.
sticky_note_2Nota
No campo Tipo de snapshot se optar pelo item 2 valores independentes passam a ser exibidos no ecrã diversos campos para poder configurar o 2º snapshot, designadamente: Tooltip 2, Tipo de dados 2, Unidade 2, Número de casas decimais 2, É um programa VB.NET 2 e Expressão SQL do snapshot 2. O âmbito de cada um destes campos é idêntico ao explicado abaixo para os campos homólogos de configuração do 1º snapshot.
Título do snapshot: Defina um título resumo que identifique o snapshot (este título é aplicável tanto para o 1º snapshot, como para o 2º snapshot que possa vir a configurar).
Tooltip: Preencha um texto que detalhe claramente o que é obtido no snapshot e o que é tido em conta nos cálculos do mesmo.
Tipo de dados: Selecione na lista o tipo de dados que será retornado pelo snapshot. Tem disponíveis um dos seguintes tipos:
Texto,
Inteiro,
Decimal,
Moeda base,
Data e
Percentagem.
Unidade: À direita do valor retornado pelo snapshot, pode incluir um texto (unidade) a que se refere esse valor.
Número de casas decimais: Para este campo defina o número de casas decimais que serão refletidas no valor obtido no snaphot.
É um programa VB.NET: Este campo uma vez selecionado permite que a expressão do snapshot se traduza num programa em VB.NET.
Expressão SQL do snapshot: Neste campo permite escrever a expressão do snapshot, podendo tirar partido do
intelisense para o auxiliar na construção dessa mesma expressão. Por exemplo, se pretender saber qual o número de encomendas de clientes introduzidas ao dia corrente, poderia utilizar a seguinte expressão:
select count(*) from bo (nolock)
where bo.dataobra = cast(getdate() as date) and bo.ndos=1
Em função do tipo de dado retornado pelo Snapshot, pode
estabelecer limites para o valor obtido e
associar-lhe uma determinada cor.
Limite vermelho: o resultado que o snapshot retornar irá apresentar uma cor vermelha, caso seja "0" e até ao valor preenchido neste campo.
Limite amarelo: o resultado que o snapshot retornar irá apresentar uma cor amarela, caso seja superior ao valor indicado no limite vermelho e até ao valor preenchido neste campo.
Limite verde: o resultado que o snapshot retornar irá apresentar uma cor verde, caso seja superior ao valor indicado no limite amarelo e até ao valor preenchido neste campo.
Caso pretenda que os valores dos snapshots não tenham cor, basta deixar os 3 campos anteriores com valor zero.
Tem gráfico: Caso pretenda associar ao snapshot um gráfico deve ativar este campo.
Tipo de gráfico: Selecione na lista o tipo de gráfico a associar ao snapshot.
Tem disponíveis os seguintes tipos:
Linhas,
Barras,
Tarte,
Área,
Tree map,
Cartões e
Tabela.
Expressão do gráfico: Área reservada para construir a expressão associada ao gráfico do snapshot. Poderá tirar partido do
intelisense para o auxiliar na construção dessa mesma expressão.
É um programa: Se a expressão feita no campo anterior constituir num código em VB.NET deverá atiivar esta opção. Caso contrário, a expressão assumirá que se trata de uma instrução em Transact-SQL.
Colunas: Neste campo deve indicar o nome das colunas que a expressão SQL do Snapshot retorna, separados por ponto e vírgula. É sensível a Maiúsculas e minúsculas.
Exemplo:
no;nome;esaldo.
Tipos para as colunas: Em função das colunas indicadas anteriormente, deve indicar aqui o tipo das colunas que a expressão SQL retorna, isto é:
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 separador por ponto e vírgula. Exemplo: n;c;mb
Para o tipo
qtt a aplicação irá ter em consideração as casas decimais nas quantidades estabelecidas no ecrã de
Parâmetros.
Para os tipos
n,
mb,
me e
pct pode configurar o nº de casas decimais devendo para tal à frente de cada tipo indicar o nº de casas decimais pretendido (
Exemplo:
n1,
mb2,
me2,
pct1). Caso não especifique o nº de casas decimais, a aplicação irá ter em consideração as casas decimais estabelecidas no ecrã de
Parâmetros.
Ainda para os tipos
n,
mb,
me e
pct pode-se optar pela exibição do valor zero quando o mesmo retorna 0, devendo para isso colocar à frente de cada tipo o símbolo
# (
Exemplo:
n1#,
mb2#,
pct2#).
Títulos para as colunas: Este campo destina-se ao preenchimento dos títulos das colunas que a expressão de SQL do gráfico do snapshot retorna, separados por ponto e vírgula.
Exemplo:
Nº Cliente;Nome;Saldo em Aberto. Tratam-se dos títulos que virão exibidos nas colunas da análise quando esta for executada na prática.
Coluna para série 1: Neste campo é necessário colocar o nº da coluna da qual pretende obter os dados para o resultado do gráfico para um barra.
Coluna para série 2: Neste campo é necessário colocar o nº da coluna da qual pretende obter os dados para o resultado do gráfico de uma segunda barra. Caso este campo seja deixado a zero ("0"), só irá aparecer a progressão da linha colocada no campo "Coluna para série 1".
Coluna para dados: Indique neste campo o número da coluna do resultado que tem os dados para o gráfico.
Coluna para legenda: Neste campo é necessário colocar o nº da coluna da análise da qual se pretende obter os dados para a legenda do gráfico.