As análises avançadas têm um papel fundamental na avaliação de performance de uma entidade, num determinado momento, com variáveis objetivas determinadas pelo utilizador (sejam elas reais, previsionais ou comparando ambas). Por serem totalmente personalizáveis, o preceito das mesmas é responder às necessidades dos utilizadores, de acordo com a configuração realizada e proporcionar ao utilizador o tratamento da informação de que necessita avaliar.
Ao consultar uma análise avançada o utilizador deve conseguir efetuar uma leitura clara e objetiva do estado das componentes envolvidas na análise. As análises, quando realizadas com esse objetivo, podem despoletar o estudo do meio envolvente interno e inclusive, levar à tomada de decisão e à elaboração de estratégias vencedoras para a entidade.
Tal como o utilizador poderá introduzir uma Análise Avançada para efetuar um estudo sobre determinado assunto, também em modo de consulta, poderá interagir com um determinado registo de Análise Avançada.
Para melhorar a experiência de utilização nas Análises Avançadas, as opções de ordenação por coluna, apresentação do total de registos, paginação, definição do número de linhas por página e agrupamento pela primeira coluna, são agora processadas do lado do cliente. Deste modo a análise torna-se mais rápida e eficiente.
Para tal, foi criado o parâmetro: “Análises Avançadas - Grelhas processadas no cliente”, que por defeito vem ativo na aplicação.
- Com esta funcionalidade passa a existir:
Download da análise
Copiar os dados da análises;
Exportar para PDF;
Transferir como XML;
Imprimir a análise;
Filtrar de maior/menor e menor/maior
Selecionando um título da grelha as linhas relicionadas a essa coluna ficam ordenadas de menor para maior.
Selecionando icone anterior as linhas relicionadas a essa coluna ficam ordenadas de maior para menor.
Ecrã em modo de introdução/alteração


Expressão da análise
A expressão é construída em Transact Sql. Poderá introduzir também código em HTML neste campo de forma a realçar o texto inserido.
Por exemplo:
select SL.REF as Referência, SL.DESIGN as Designação, ST.UINTR as Ultima_Entrada, sum (case when SL.CM <=49 then QTT else 0 end) as Qtd_ENTRADA, sum (case when SL.CM >=50 then QTT else 0 end) as Qtd_SAIDA, ST.PCULT as Pr_Custo, ST.STOCK as Existências, ST.PCPOND as PCM, ST.PV1 as PVP from SL inner join ST on SL.REF=ST.REF group by SL.REF, SL.DESIGN, ST.UINTR, ST.PCULT,ST.STOCK, ST.PCPOND, ST.PV1, ST.FAMILIA |
O exemplo apresentado permite ao utilizador fazer uma listagem de "Entradas", "Vendas" e "Existências" do seu stock.
A expressão é um programa
Permite construir uma expressão em .Net e deve retornar um objeto do tipo Datatable para que os dados sejam disponibilizados na análise. Se esta opção estiver ativa, o campo passa a ter intellisense, ou seja, quando é colocada uma letra na caixa de texto é aberta uma caixa com todas as sugestões de código disponíveis para completar aquela palavra, à medida que se vai escrevendo as opções mostradas vão sendo filtradas até obter o que se pretende.
Também será disponibilizado o botão:
que permite compilar a expressão para testar se o código está correto.

Com a análise em modo de edição, ao clicar sobre este botão visualizar de imediato o que devolve o código.
Tipo de dados de cada coluna da análise
Permite indicar a respetiva formatação para as colunas, tendo que colocar valores separados por ponto e virgula. Existem as seguintes hipóteses:
NOTA: Ao definir que a coluna é formatada com percentagem "P", a aplicação efetua automaticamente a multiplicação por 100, para obter os resultados esperados.
Títulos das colunas da análise
Os textos colocados neste campo, separados por ponto e vírgula, aparecerão pela mesma ordem, no cabeçalho das respetivas colunas da análise.
Tooltips das colunas da análise
Os textos colocados neste campo, também separados por ponto e vírgula, aparecerão pela mesma ordem, como texto de ajuda, no cabeçalho das respetivas colunas da análise.
Css das colunas
Este campo permite que o utilizador possa personalizar a análise avançada, sendo que deve escolher primeiro o elemento e só depois, programar o css entre chavetas. Assim, a aplicação irá aplicar os respetivos estilos nas colunas.
Para ajudar o utilizador foram criados os seguintes atalhos, disponíveis através do "Editor de Código" do respetivo campo:
Css das linhas
Este campo permite que o utilizador possa personalizar a análise avançada, sendo que deve escolher primeiro o elemento e só depois, programar o css entre chavetas. Assim, a aplicação irá aplicar os respetivos estilos nas colunas.
Para auxiliá-lo, foram criados os seguintes atalhos, disponíveis através do Editor de Código do respetivo campo:
Tem coluna de consulta
Esta opção define se a análise tem uma coluna de link para a consulta de determinado registo. No caso de ativar esta opção terá que definir o Destino, ou seja o caminho para o link.
Se indicar que a análise tem uma coluna de consulta, então terá que existir uma coluna na expressão com o nome "STAMP", contendo o campo xxStamp da respetiva tabela (por exemplo: ststamp as stamp).
Quando se exporta a análise avançada para "Excel" ou para "Open Office Calc" ou se ao imprimir a análise avançada a coluna do stamp do registo não aparece.
Nota: Ao utilizar Open Office, as exportações, importações e impressões e IDUs serão efetuadas consoante a opção selecionada.
Transforma a primeira coluna de dados num link para o destino
Transforma a primeira coluna de dados num link para o destino, mas apenas se na análise estiver identificado como tendo coluna de consulta.
Caminho e página para o destino da consulta
Permite indicar o caminho para o registo da análise que se pretende consultar.
Por exemplo, se quisermos que uma determinada análise navegue para o ecrã de pedidos de assistência técnica, deveremos colocar neste campo o valor: "..\ass\paform.aspx".
Se queremos consultar um ecrã de utilizador a partir de uma análise avançada, devemos configurar este campo de uma forma diferente do habitual. Sempre que se pretende consultar um ecrã de utilizador deve-se colocar "../programs/genform.aspx?codigo=XXX&stamp={0}", onde XXX é a identificação do ecrã de utilizador. Por exemplo, se a análise devolve um stamp de um ecrã de utilizador e esse ecrã designa-se por "EUSER", este campo deverá ter o seguinte valor: "../programs/genform.aspx?codigo=EUSER&stamp={0}".
Texto para quando não há dados
Neste campo é possível redigir um texto para quando não existe um retornor de dados.
Adicionar variável
Esta opção permite adicionar variáveis ao código a executar. Elas permitem criar condições adicionais, ou seja, ver os dados entre datas, apenas ver a análise a partir de determinado valor, etc...
Ao
deve em primeiro lugar indicar o tipo e o nome do campo. Para selecionar o tipo de campo, basta selecionar na combobox um dos seguintes tipos: "Caracter", "Data", "Numérico", "Inteiro", "Lógico", "Memo", "Tabela simples" e "Tabela com SQL". Deve identificar-se de seguida o nome do campo que vai receber a variável.
No código da análise deve por fim colocar-se o número correspondente à variável. Se existirem duas variáveis, a primeira será identificada com #1# e a segunda com #2#.
Nota: Em tabela simples pode colocar nos outros dados, a lista de opções separada por vírgula, se for tabela com SQL deve colocar o comando sql que retorne uma coluna com os dados a apresentar.

- - Nome do ecrã onde estará disponível
Neste campo o utilizador pode colocar o nome do ecrã onde deverá aparecer a análise.
- Ordem para ecrã
Ordem pela qual apareceram as análises no respetivo ecrã.
- Tipo do documento
No caso dos dossiers e documentos de faturação, é possível ao utilizador definir o tipo de documento onde irá aparecer a análise. Caso não defina nenhum, a análise aparecerá em todos. - C campo do tipo caracter;
- D campo do tipo data;
- M representa Moeda Nacional (casas decimais configuradas num parâmetro do Desktop) e ME Moeda Estrangeira (sempre com 2 casas decimais);
- L campo lógico (que mostra um campo lógico);
- N numérico com as decimais do sistema, N0 numérico sem casas decimais ou N1; N2; N3 e N4 de acordo com as casas decimais pretendidas;
- P percentagem sem casas decimais ou P1; P2 dependendo das casas decimais pretendidas.
- f { css } - Coloca o css na primeira coluna da análise;
- l { css } - Aplica o css na última coluna da análise;
- o { css } - Coloca o css apenas nas colunas impares da análise;
- e { css } - Coloca o css apenas nas colunas pares da análise;
- a { css } - Aplica o css em todas as colunas da análise;
- x { css } - Permite colocar o css numa coluna específica da análise, sendo que o "x" deve ser substituido pelo nº da coluna. Ex: 1 { };
- x-y { css } - Vai colocar o css de y em y colunas começando na coluna x da análise. Ex: 4-2 { } - Começa na coluna 4 e depois repete a formatação de 2 e 2 colunas.
- {css} - Vai colocar o css no elemento programado pelo utilizador, útil quando se quer apanhar uma célula especifica no meio da análise. Ex: tr:nth-child(2) td:nth-child(2) { } -> Vai apanhar a célula da segunda linha e da segunda coluna.
- f { css } - Coloca o css na primeira linha da análise (corresponde ao cabeçalho);
- l { css } - Aplica o css na última linha da análise;
- o { css } - Coloca o css apenas nas linhas impares da análise;
- e { css } - Coloca o css apenas nas linhas pares da análise;
- a { css } - Aplica o css em todas as linhas da análise;
- x { css } - Permite colocar o css numa linha específica da análise, sendo que o "x" deve ser substituído pelo nº da linha. Ex: 5 { };
- x-y { css } - Vai colocar o css de y em y linhas começando na linha x da análise. Ex: 4-2 { } - Começa na linha 4 e depois repete a formatação de 2 e 2 linhas.
- {css} - Vai colocar o css no elemento programado pelo utilizador, útil quando se quer apanhar uma célula específica no meio da análise. Ex: tr:nth-child(2) td:nth-child(2) { } -> Vai apanhar a célula da segunda linha e da segunda coluna.
- Assim que o utilizador adiciona uma variável na grelha, aparecem três botões que permitem interagir com o registo dessa variàvel, de forma individualizada:
- Permite apagar a informação do registo da variável introduzida na linha da grelha;
- Permite gravar a informação do registo da variável introduzida na linha da grelha;
- Permite sair do registo da variável introduzida na linha da grelha, quando está em modo de alteração;
Quando o utilizador gravar ou sair do modo de edição da linha da grelha, fica apenas os botões:
Que continua a permitir apagar o registo da linha da grelha;
Permite alterar a informação do registo introduzido na respetiva linha da grelha;
Para acrescentar as variáveis que necessita deverá utilizar o botão:
.

- Quando as variáveis são do tipo Data tem de se colocar pelicas antes e no fim dos cardinais, como por exemplo: ´#1#´.
- Quando as variáveis são do tipo Lógico considera: o valor "Sim" ou "1" como valor lógico verdadeiro. Ao colocar o valor "Não" ou "0" passa a considerar o valor a falso.
Variáveis apresentadas em modo horizontal
Quando esta opção está ativa os campos disponibilizados para a informação ficam ordenados de forma horizontal. Se a opção estiver inativa a ordem será apresentada na vertical.
Ao chamar a análise, esta é logo executada, mesmo antes de pedir os valores das variáveis
Se esta opção estiver inativa, a aplicação primeiro pede a(s) variável(eis) e só depois é que é executa a análise. Se a opção está ativa a aplicação executa o código de imediato.
Texto para botão calcular
Permite ao utilizador personalizar o texto que quer que apareça no botão, que por defeito tem: "calcular".


tem gráfico
Permite definir se na análise é apresentado um gráfico em simultâneo.
Nota: Esta opção apenas se encontra disponível nas gamas Advanced e Entreprise.
Título para o gráfico
Este campo deve ser preenchido com o título do gráfico.
Sub-título para o gráfico
Permite a inserção de uma descrição muito sucinta que enquadre o título.
Tamanho do gráfico
Permite ao utilizador definir o tamanho do gráfico que quer ver na apresentação da análise.
Tipo de gráfico
O utilizador pode escolher o tipo de gráfico consoante a sua necessidade. Tem ao seu dispor as seguintes opções:
Posição do gráfico
O gráfico pode ser apresentado no ecrã, nas seguintes posições:
Expressão do gráfico
A expressão deve ser construída em Transact Sql ou se for um programa retornar um objeto do tipo Datatable. Os nomes das colunas/campos que a expressão retorna devem ser colocados no campo Campo com a legenda e/ou séries, nos campos Nome da série e Campo da série correspondentes.
A expressão é um programa
Permite construir uma expressão em .Net e deve retornar um objeto do tipo Datatable para que os dados seja disponibilizados na análise. Se esta opção está ativa, o campo passa a ter intellisense, ou seja, quando é colocada uma letra na caixa de texto é aberta uma caixa com todas as sugestões de código disponíveis para completar aquela palavra, à medida que se vai escrevendo as opções mostradas vão sendo filtradas até obter o que se pretende. Também será disponibilizado o botão:
que permite compilar a expressão para testar se o código está correto. E posteriormente, com código neste campo, também poderá simular, através do botão:
, visualizando de imediato o que devolve o código.
Campo com a legenda
Nome do campo na expressão que contém a legenda de cada observação.
Nome da série 1
Nome da série para construir o gráfico.
Campo da série 1
Nome do campo ou coluna criado na expressão do gráfico.
Cor 1 da série 1
Primeira cor que se define para o preenchimento do gráfico.
Cor 2 da série 1
Segunda cor que se define para o preenchimento do gráfico.


Esta análise é um snapshot
Esta opção define se a análise é um snapshot. Ou seja, uma fotografia rápida da situação que se analisa.
Em termos práticos, imagine-se o exemplo: Um gestor, que utiliza o módulo Gestão Web, necessita de saber a qualquer momento quantas encomendas entraram hoje, este mês, este ano.
Neste caso em concreto, nada melhor que construir um snapshot.
Nota: Esta opção apenas se encontra disponível nas Gamas Advanced e Entreprise.
Tipo de snapshot
Ao escolher o tipo de Snapshot é altamente recomendável que considere as instruções explanadas neste local do ecrã, para facilitar a compreensão da utilização dos respetivos campos.
Assim sendo, o utilizador pode escolher uma das opções disponibilizadas consoante a sua necessidade, sendo que são disponibilizados os campos mediante essa escolha:
Página do snapshot
Define em que página do Painel de snapshots este aparecerá. Se ficar vazio será na página principal. O posicionamento por coluna é sempre por categoria, assim para determinar em que coluna a categoria será colocada será através deste valor no primeiro snapshot dessa categoria. Caso o utilizador necessite pode adicionar uma nova página, recorrendo ao botão
.
Coluna do Painel em que aparece (1 a 3)
Define em qual das colunas que formam a as páginas do Painel de Snapshots, é que o snapshot vai aparecer (coluna 1, 2 ou 3).
Categoria do Snapshot
É possível definir uma categoria, podendo desta forma organizar as diversas análises por grupos. Poderá selecionar uma categoria já existente, ou através da opção
criar um novo registo.
Título para o snapshot
Define o título do snapshot.
Sub-título para o snapshot
Pequeno texto descritivo que aparece a seguir ao snapshot.
O snapshot contém dados personalizados por utilizador
Se esta opção for ativa significa que a contém dados personalizados mediante cada utilizador.
Guarda os resultados na base de dados
Se um snapshot ocupa muitos recursos do servidor ao ser calculado, o ideal é os dados do seu último cálculo serem guardados na base de dados e só serem atualizados se o utilizador o quiser recalcular.
Com isto, por exemplo para um dashboard com muitos snapshots, a performance de entrada passa a quase instantânea e se os dados estiverem atualizados a experiência de análise passa a ser muito melhor.
Passa a existir uma opção “Guarda os resultados na base de dados”, para os snapshots do tipo:
- "Número Grande"
- "Número Grande + Mini Gráfico Linhas"
- "Número Grande + Mini Gráfico Barras"
- "Número Grande + Mini Gráfico Tarte"
- "Número Grande + Gráfico Linhas"
- "Número Grande + Gráfico Área"
- "Número Grande + Gráfico Barras Vertical"
- "Número Grande + Gráfico Barras Horizontal"
- "Número Grande e Percentagem"
- "Número + Gráfico Anel"
- "Número + Gráfico Tarte"
- "Três números relacionados"
- "Três números + Gráfico Linhas".
Em relação aos snapshots do tipo "Normal", "Dois números comparados", "Dois números independentes" e "Scorecard", esta opção não está disponível .
Quando esta opção está escolhida o software cada vez que calcula o snapshot guarda os seus resultados na base de dados e da próxima vez que o mesmo for chamada, em vez de recalcular, vai buscar os resultados gravados.
Se o utilizador quiser atualizar, basta escolher a opção do dashboard de recalcular os dados.
Scorecard
Neste campo poderá pesquisar pelo indicador de Scorecard configurado no PHC CS Desktop e associá-lo a este snapshot, após indicar que é do tipo Scorecard. Este campo apenas está disponível na gama Enterprise.
Variáveis do Snapshot
Tabela onde pode definir as variáveis a serem utilizadas nas análises do tipo snapshot.
O número da variável é automaticamente atribuído quando cria uma linha na tabela e será este o número que deverá ser utilizado no código para chamar a sua variável.
Se tiver definida apenas uma variável deverá referir essa variável no código como {PhcVars.var1}, em que 1 corresponde à variável criada. Deve utilizar o PhcVars sempre que a expressão é um programa e os cardinais (#1#) sempre que é uma expressão SQL.
As variáveis aqui definidas podem ser utilizadas nas duas expressões do snapshot.
Os tipos de variáveis podem ser: caracter, data, numérico, inteiro, lógico, memo, tabela simples ou tabela com SQL.
As expressões em SQL com variáveis do tipo data é aconselhável colocar o seguinte código:
CONVERT(datetime, #1#, 104) = CONVERT(datetime, ´01.11.2020´, 104)

Nota: As variáveis podem ser utilizadas em todos os tipos de snapshots exceto o tipo scordcard.
Expressão 1 do Snapshot
Expressão para calcular o resultado pretendido. Ou seja, definir se o programa deve retornar o valor em formato decimal para colocar no snapshot ou, se deve ser uma expressão transact SQL que retorne uma linha com uma coluna.
Para testar o snapshot pode utilizar a opção Simular o Snapshot.
A expressão 1 é um programa
Permite construir uma expressão em .Net que deve retornar um objeto do tipo Datatable para que os dados seja disponibilizados na análise. Se esta opção estiver ativa, o campo passa a ter intellisense, ou seja, quando é colocada uma letra na caixa de texto é aberta uma caixa com todas as sugestões de código disponíveis para completar aquela palavra, à medida que se vai escrevendo as opções mostradas vão sendo filtradas até obter o que se pretende. Pode ainda compilar a expressão para testar se o código está correto.
Tipo de resultado da expressão 1
Campo para definir o tipo de resultado da expressão, este pode ser numérico, caracter, data ou lógico.
Máscara para o resultado
Máscara para o resultado, este campo é facultativo. No caso de ser numérico a máscara poderia ser: ###,###,###
Unidade
Unidade utilizada para a análise efetuada.
Expressão 2 do Snapshot
Expressão para calcular o resultado pretendido. No entanto, salvaguarda-se que:
A expressão 2 é um programa
Permite construir uma expressão em .Net que deve retornar um objeto do tipo Datatable para que os dados seja disponibilizados na análise. Se esta opção estiver ativa, o campo passa a ter intellisense, ou seja, quando é colocada uma letra na caixa de texto é aberta uma caixa com todas as sugestões de código disponíveis para completar aquela palavra, à medida que se vai escrevendo as opções mostradas vão sendo filtradas até obter o que se pretende. Pode ainda, através do botão:
que permite compilar a expressão para testar se o código está correto.

Com a análise em modo de edição, ao clicar sobre este botão visualizar de imediato o que devolve o código.
Informação sobre este snapshot. Quando preenchida o utilizador poderá consultar esta informação ao visualizar o snapshot.
Se inserir informação neste campo, esta será apresentada através do botão
aquando da visualização do snapshot. Poderá introduzir código em HTML neste campo de forma a realçar o texto inserido.
Semáforos
É possível construir uma expressão de forma a que apareçam icons e texto com objetivo de dar um melhor contexto aos valores apresentados pelos snapshots facilitando a compreensão do utilizador. O código deve retornar uma lista de valores com duas colunas: a primeira coluna no formato decimal, com o valor máximo e a segunda coluna no formato de string com o símbolo de cada intervalo em que o valor do snapshot pode ficar.
Nota
- É obrigatório a tabela estar ordenada de modo crescente.
Caso o snapshot tenha valores negativos é na mesma possível configurar os semáforos. É sempre conveniente que o último valor configurado no semáforo seja o valor mais alto que alguma vez o snapshot poderá atingir. É ainda possível não existir o símbolo para um determinado número visto que poderá estar fora dos limites estabelecidos para o semáforo.
Exemplo de expressão:
- O Código no campo de Semáforos pode ser em T-SQL ou em VB.NET.
- Exemplo de código em T-SQL:
- 1. select 3 as max, ´ low < span class="badge badgegray" title="Defina aqui uma tooltip">< i class="fa fa-warning" style="font-size:16px;color:yellow">< /i>< /span >´ as simbol
- 2. union all
- 3. select 4 as max, ´ med < span class="badge alert-warning" title="Defina aqui uma tooltip">< i class="fa fa-warning" style="font-size:16px;color:red">< /i>< /span>´ as simbol
- 4. union all
- 5. select 5 as max, ´ high < span class="badge alert-danger" title="Defina aqui uma tooltip">< i class="fa fa-warning" style="font-size:16px;color:blue">< /i>< /span>´ as simbol
- 6. union all
- 7. select 9999 as max, ´ top < span class="badge alert-info" title="Defina aqui uma tooltip">< i class="fa fa-warning" style="font-size:16px;color:black">< /i>< /span >´ as simbol
Com este Código criamos uma tabela com 3,4,5,9999 e se o snapshot cair nesses intervalos terá um texto e um simbolo em HTML.
Informação
- Os semáforos não estão preparados para snapshots do tipo "Scorecard" e "Três números relacionados".
A expressão Semáforos é um programa
Permite construir uma expressão em .Net que deve retornar uma tabela e duas colunas para que os dados seja disponibilizados na análise. A primeira coluna deve corresponder ao valor e a segunda coluna deve corresponder ao símbolo.
Pode ainda, através do botão:
que permite compilar a expressão para testar se o código está correto.

Com a análise em modo de edição, ao clicar sobre este botão visualizar de imediato o que devolve o código.
Ordem em que aparece
Ordem por que aparecem os snapshots.
Link de destino do snapshot
Quando o link de destino do snapshot não é a análise construída deve ser neste local indicado o link de destino.
Subtítulo da expressão 2
Pequeno texto descritivo que aparece a seguir ao snapshot.
Este snapshot aparece na homepage
Se esta opção estiver ativa, fica definido que se trata de uma análise, sobre a qual vai estar presente um snapshot na hompepage.
Este snapshot aparece no painel de snapshots
Esta opção define se o snapshot aparece no Painel de Snapshots.
Nota: Para que a informação seja constantemente atualizada de forma automática, é possível recorrendo à utilização de um timer. Para que aconteça, poderá adicionar na querystring do URL (que chama os snapshots) o texto &timer=10000&disp=1. A unidade do valor do timer é em milissegundos. Neste caso, 10000 correspondem a 10 segundos (com esta opção retira o header da página, deixando apenas os snapshots).
Esta opção torna-se útil para um gestor que pretende ter sempre visível num monitor toda a informação atualizada. Este tipo de apresentação, de snapshots, também é muito útil para apresentar a informação em ecrãs ou projetores em reuniões com a apresentação de vários tipos com gráficos. Esta opção apenas se encontra disponível nas Gamas Advanced e Entreprise.
Monitor
Define o monitor a que este item está ligado. Pode efetuar uma procura através do botão
ou introduzir um ou mais carateres diretamente no campo, assim irá surgir uma lista com todos os resultados da procura iniciados pelo caratere introduzido e conforme é introduzido mais carateres esta procura vai sendo refinada.
Este snapshot é de ecrã
Se esta opção estiver ativada, passa a mostrar o snapshot no ecrã definido no campo Nome do ecrã.
Nome do Ecrã
Neste campo o utilizador pode colocar o nome do ecrã onde deverá aparecer o snapshot.
Tipo de Documento
No caso dos dossiers e documentos de faturação, o utilizador pode definir o tipo de documento onde irá aparecer o snapshot, se não definir nenhum irá aparecer em todos.
Em seguida apresentam-se dois exemplos que pretendem clarificar a potencialidade e a utilização dos Snspshots:

Exemplos de Snapshot


Ecrã em modo de consulta
<%= TopicLink([ ],[Análises / Mapas]) %> | <%= TopicLink([Análises / Mapas],[Análises / Mapas]) %> |
- - Barras verticais;
- Barras horizontais;
- Barras verticais 3d;
- Linha;
- Área;
- Anel;
- Tarte; - - Esquerda;
- Direita;
- Em cima;
- Em baixo; - Se escolher uma destas opções, terá apenas disponível um campo de Expressão para o Snapshot (Expressão 1 do Snapshot):
- Normal: (aparecerão os campos: "Número de colunas que o snapshot retorna"; "Número de decimais" e "Calcula uma Linha com totais");
- Número Grande; - Se escolher uma destas opções, terá disponíveis dois campos de Expressão para o Snapshot (Expressão 1 do Snapshot e Expressão 2 do Snapshot):
- Número Grande + Mini Gráfico Linhas;
- Número Grande + Mini Gráfico Barras;
- Número Grande + Mini Gráfico Tarte;
- Número + Gráfico Linhas;
- Número + Gráfico Área;
- Número + Gráfico Barras Vertical;
- Número + Gráfico Barras Horizontal;
- Dois números comparados;
- Número Grande e Percentagem;
- Dois números independentes;
- Número + Gráfico Anel;
- Número + Gráfico Tarte;
- Scorecard (apenas disponível na gama Enterprise).
- Três números relacionados
- Três números + Gráfico linhas
- - Se for um programa deve retornar um datatable, com uma coluna do tipo numérico com os valores para mostrar;
- Se for uma expressão, então deve ser um select com uma coluna;
- Se porventura for para um gráfico que usa legenda, deverá ter a primeira coluna com legenda e uma segunda coluna com o valor cada observação;
- Se for para tipo "dois números" deve retornar o segundo número;
- Se for para tipo "número e percentagem" deve retornar um número de 0 a 100.
1 - - Este Snapshot que dá ao utilizador uma análise de quais os Pedidos de Assistência que entraram hoje da responsabilidade do centro de assistência do Norte:
2 - Snapshot (em tabela) que dá ao utilizador uma análise de quais os Pedidos de Assistência que ainda não foram atendidos pelos técnicos:
- No campo Expressão da análise, existente no separador Expressão e variáveis deverá conter algo como:
select pdata,fdata,fhora,nome,problema,solucao from pa where pa.cass=´NORTE´ and convert(char(10),pa.pdata,121)=convert(char(10),getdate(),121) order by pdata desc
No campo Expressão 1 do snapshot existente no separador Snapshot deverá conter algo como:
select count(*) from pa (nolock) where pa.cass=´NORTE´ and convert(char(10),pa.pdata,121)=convert(char(10),getdate(),121) - No campo Expressão da análise, existente no separador Expressão e variáveis deverá conter algo como:
select pastamp as stamp,pdata as Data,phora as Hora,nome as Agente,replace(convert(char(8000),problema),char(13),´
´) as Problema from pa where pa.fechado=0 and pa.nosug=0 and CASS=´NORTE´ and ((select count(*) from mh (nolock) where mh.nopat=pa.nopat)=0) order by pdata desc
No campo Expressão 1 do snapshot existente no separador Snapshot deverá colocar, por exemplo: dim msel as string msel="select " msel=msel+"(case when datediff(dd,pdata,getdate())>15 then ´15.+ de 15 dias´ else (case when datediff(dd,pdata,getdate())<=15 and datediff(dd,pdata,getdate())> 7 then " msel=msel+"´08.de 7 a 15 dias´ else ´0´+convert(char(3),datediff(dd,pdata,getdate()))+´ dias´ end ) end ) as Idade," msel=msel+" count(*) as Numero" msel=msel+" from pa (nolock) where pa.fechado=0 and pa.nosug=0 and CASS=´NORTE´ and ((select count(*) from mh (nolock) where mh.nopat=pa.nopat)=0) group by (case when nosug<>0 then ´Sim´ else ´ ´ end)," msel=msel+"(case when datediff(dd,pdata,getdate())>15 then ´15.+ de 15 dias´ else (case when datediff(dd,pdata,getdate())<=15 and datediff(dd,pdata,getdate())>7 then " msel=msel+"´08.de 7 a 15 dias´ else ´0´+convert(char(3),datediff(dd,pdata,getdate()))+´ dias´ end ) end ),pdata " msel=msel+" order by (case when nosug<>0 then ´Sim´ else ´ ´ end)," msel=msel+"(case when datediff(dd,pdata,getdate())>15 then ´15.+ de 15 dias´ else (case when datediff(dd,pdata,getdate())<=15 and datediff(dd,pdata,getdate())>7 then " msel=msel+"´08.de 7 a 15 dias´ else ´0´+convert(char(3),datediff(dd,pdata,getdate()))+´ dias´ end ) end )" dim ds as system.data.datatable=webcontrollib.cdata.getdatatable(msel) return ds |
-
-
-
-
-
-
-
-
- O utilizador pode usufruir da utilização de uma coluna de interatividade em cada linha e/ou ter um botão para a interatividade global sobre a análise.
Tem coluna de interatividade em cada linha
Esta opção define se a análise tem interatividade com o utilizador através de uma coluna em cada linha.
Título da coluna de interatividade
Permite ao utilizador definir qual o título que quer dar à coluna de interatividade.
Tooltip da opção de interatividade
O utilizador pode atribuir o texto que entender à tooltip da opção de interatividade.
Expressão que corre ao selecionar (parâmetro mstamp para indicar qual a linha)
É onde podem ser criadas análises, mas deve conter um campo MSTAMP dentro da análise avançada. Este campo tem intellisense, ou seja, quando é colocada uma letra na caixa de texto é aberta uma caixa com todas as sugestões de código disponíveis para completar aquela palavra, à medida que se vai escrevendo as opções mostradas começadas pelas letras introduzidas vão reduzindo e aproximando do que se pretende. Também se pode pressionar as teclas ctrl + espaço ou ctrl + seta baixo para aparecer essa mesma caixa mas com todas as opções de código disponíveis, sendo que ao escrever texto as opções na caixa vão sendo filtradas.
Por exemplo:
- Verificação com um botão linha a linha a indicar "Verificado";
- Análises para marcar Clientes, com um botão a dizer Marcada;
- Análises que permitem alterar a Zona do clientes;…
Entre outras utilidades, tudo depende do objetivo da interatividade da análise.
Para tal, a análise criada tem que conter um campo com o nome MSTAMP que deverá ser o stamp da linha a ter interatividade. A interatividade irá permitir atuar sobre cada linha ou seja, correr um código de utilizador para alterar algo relacionado com a linha.

Exemplo de Interatividade
Nota

O botão permite compilar a expressão para testar se o código está correto.
Tem um botão para interatividade global sobre a análise
Permite o uso de um botão para a interatividade pretendida.
Texto do botão
Esta opção define se a análise tem interatividade com o utilizador através de um botão.
Tooltip do botão
O utilizador pode atribuir o texto que entender à tooltip do botão de interatividade.
Expressão que corre ao pressionar o botão
Código para correr ao pressionar o botão. Este campo tem intellisense, ou seja, quando é colocada uma letra na caixa de texto é aberta uma caixa com todas as sugestões de código disponíveis para completar aquela palavra, à medida que se vai escrevendo as opções mostradas começadas pelas letras introduzidas vão reduzindo e aproximando do que se pretende. Também se pode pressionar as teclas ctrl + espaço ou ctrl + seta baixo para aparecer essa mesma caixa mas com todas as opções de código disponíveis, sendo que ao escrever texto as opções na caixa vão sendo filtradas.

O botão permite compilar a expressão para testar se o código está correto.
Após efetuar a configuração das Análises avançadas e snapshots pretendidos poderá visualizá-los em cada aplicação no menu de <%= TopicLink([Análises],[Painelglobaldeanálisesdeweb]) %>. Os snapshot só irão aparecer no painel de snapshot caso tenha a devida opção ativa.
Nota: Os stamps na plataforma PHC CS Web, quando passam por query no url vão sempre encriptados.
Neste caso, se o utilizador pretende fazer uma análise com interatividade com o stamp de um registo, tem de ativar a coluna "Tem coluna de consulta", pois de outra forma o software não consegue trabalhar com os stamps encriptados.


Packages e módulos de acesso
As Análises Avançadas só podem ser executadas nas <%= TopicLink([Aplicações Internas],[Menu da Aplicação]) %>
O utilizador poderá ainda definir a disponibilidade da Análise mediante os módulos internos, utilizados na aplicação PHC CS Web.
Apenas a quem tem acesso ao módulo:
- Gestão Web
- Colaborador Web
- Contabilidade
- Suporte
- Crm Web
- Equipa Web
- Vencimentos Web
- Recrutamento Web
- Careers Web
- Happiness Web


Tipo de Acesso
Neste local deve ser selecionado o tipo de <%= TopicLink([acesso],[Acessos]) %> que se pretende que o utilizador possua para poder consultar a análise. Poderá selecionar um dos seguintes:
- Sem controlo de acessos
- Acesso privado a um utilizador
- Acesso X à tabela Y
- Utilizadores de um perfil
-
Estes campos que se indicam em seguida, deverão ser preenchidos de acordo com a escolha do Tipo de acesso:
Utilizador
No caso de se ter selecionado o segundo tipo de acesso, neste local deve designar-se o utilizador que terá acesso à análise.
Nº. de utilizador
Este campo é preenchido com o respetivo número de utilizador.
Tabela
No caso de ter selecionado o tipo Acesso X á tabela Y, deve colocar neste campo, o nome da tabela a que o utilizador deve ter acesso. Em frente a este campo existe outro que permite definir o tipo de <%= TopicLink([acesso necessário],[acessos]) %>.
Perfil
No caso de ter selecionado o último tipo de acesso, neste local deve selecionar-se o Perfil, a que o utilizador ou utilizadores devem pertencer para ter acesso à análise. - A Tabela do acesso, o Acesso propriamente dito, e/ou o Perfil aos quais pretende definir um tipo específico de acesso.