Parametrização > Exploração > Impressões > Gestor gráfico queries 

Apresentação geral

O requerente gráfico é uma função permitindo de criar os ecrãs de interrogação fazendo aparecer o resultado de pedidos feitos sobre a base de dados. Funciona por extracção temporária de dados numa tabela, depois consulta desta tabela. A consulta pode em seguida se fazer sobre vários níveis de detalhe, definidos por rupturas sucessivas.

A estrutura desta tabela temporária permite a cada utilizador conservar os resultados do último pedido feito (excepto se é um pedido partilhado). A utilização desta funcionalidade implica três etapas diferentes :

  • definição do pedido por esta função.
  • lançamento do pedido (seja pelo botão, seja por entrada na função de interrogação e pedido de refrescamento dos dados)
  • interrogação do pedido se ele já foi executado.

Um pedido pode ser constituido a partir de campos da tabela ou de expressões.

As junções entre tabelas são determinadas automaticamente a partir do dicionário, mas é possível de os definir explicitamente para deslizar-deslocar de um campo de uma tabela versus uma outra. Uma condição prévia é que o campo destino faça parte de uma chave.

De referir que dois utilitários complementares existem Umrequerente equivalente a este mas em modo quadro e umRequerente SQL passando por ecrãs de interrogação similares mas cujo objectivo é de conceber os pedidos baseados sobre a linguagem SQL

Tomada em conta do interface

A zona de criação de pedidos está constituido de uma palete flutuante, de um espaço de concepção do modelo e de uma zona de depósito dos campos seleccionados.

A palete flutuante

Ela reagrupa os botões :

  • Tabela : Abre uma lista de selecção para acrescentar uma tabela.
  • Expressão : Abre o assistente de fórmula para acrescentar uma expressão.
  • Apagar : Reinicializa o pedido.
  • Códigos : Check box a assinalar permitindo de afixar ou não os códigos dos campos em mais os literais.
O espaço de concepção do modelo
As tabelas

É neste espaço que as tabelas acrescentadas são representadas com as suas junções.

Para acrescentar uma tabela, clicar sobre o botão "Tabela" da palete flutuante.

As acções possíveis sobre uma tabela são :

  • A supressão por clique sobre a cruz ao alto na direita da tabela. Atenção, uma tabela não poderá ser suprimida que após ter suprimido todas as suas ligações e retirar todos seus campos da zona de depósito.
    ../FCT/GESALT_01_01.jpg
  • A redução / expensão por clique direito sobre o botão à esquerda da cruz.
    ../FCT/GESALT_01_01.jpg  ../FCT/GESALT_01_02.jpg
  • O deslocamento na ajuda da barra de título ou a barra inferior.
  • O redimensionamento da tabela em utilizando a "scroll bar" em baixo à direita da tabela.
    ../FCT/GESALT_01_03.jpg
As junções

As junções que não foram criadas em automáticas podem ser criadas por deslizar-deslocar do campo da tabela fonte versus o campo da tabela alvo. Uma junção de tipo externo esquierdo está então criado.

Um clique sobre uma junção aparece um menupermitindo de alterar o seu tipo (externo esquerdo ou interno) ou da suprimir.

Plano trazeiro

Um deslisamento-deslocação num acondicionamento livre do espaço de concepção permite reposicionar este espaço. Um duplo-clique permite de deslocar o espaço de concepção por relação à sua origem.

../FCT/GESALT_01_04.jpg

A zona de depósito

A zona de depósito permite :

  • Visualizar os campos sob forma de vinhetas.
  • Modificar a ordem e as propriedades (ordenação, acumulado, limites, visibilidade) destas.
  • Gerar as expressões.
  • Gerar as rupturas do pedido.
Acescentar um campo

Para acrescentar um campo de tabela, duplo clicar sobre este ou fazer um deslizamento-deslocação do campo versus a zona de depósito.

Acrescentar uma expressão

Para acrescentar uma expressão, clicar sobre o botão "Expressão" da palete flutuante.

Editar uma expressão

Clicar sobre o literal de expressão para fazer aparecer a janela das suas propriedades.

Modificar as propriedades de uma vinheta

Clicar sobre os îcones para modificar o valor das propriedades. Uma afixação encoberta indica uma negação do valor (exemplo: não ordenado).
../FCT/GESALT_02_02.jpg  ../FCT/GESALT_02_03.jpg
Significado dos ícones de esquerda à direita : Visível, ordenado, acumulado, registo dos limites

Suprimir uma vinheta

Clicar sobre a cruz ao alto à direita da vinheta.
../FCT/GESALT_02_01.jpg

Deslocar uma vinheta

Clixar sobre "scroll bar" ao alto da vinheta e deslocar sem largar o botão do rato, depois largar na posição desejada. Os deslocaemntos não podem se fazer que sobre um mesmo nível.
../FCT/GESALT_02_01.jpg

Criar um nível de ruptura (grupo)

Clicar sobre a "scroll bar" da vinheta, um menu aparece com diferentes literais. Seleccionar "Criar um grupo" para levar a vinheta em cabeçalho de um novo grupo.

Deslocar uma vinheta versus um nível de ruptura existente.

Clicar sobre a "scroll bar" da vinheta, um menu aparece com diferentes literais. Seleccionar "Grupo N", onde N é o nível do grupo, para levar a vinheta em fila do nível escolhido.

Pré-requisitos

SEEREFERTTO Consulte a docuemntação de Implementação

Gestão do ecrã

A definição de um pedido se faz sobre vários separadores, cujo limite é o primeiro e obrigatório.

Cabeçalho

Apresentação

Nesta secção, encontramos as informações permitindo de identificar o pedido e quaisquer parâmetros gerais.

Fechar

 

Campos

Os seguintes campos estão presentes neste separador :

Ce code permet d'identifier une requête.

  • Descr. (campo INTIT)

Permet de définir un intitulé associé à chaque fiche.

  • Desc. curta (campo INTITSHO)

Este intitulado permite dar uma designação à ficha.
é utilizado em certos ecrãs ou listas quando não se teve suficiente local para visualizar o intitulado longo.

Fechar

 

Separador Campos

Apresentação

Este separador permite definir e de reagrupar as informações a editar graças a um editor visual.

A partir do conjunto das informações definidas neste editor, o requerente determina um pedido sobre as tabelas ligadas por condições de junção. Assim, neste caso simples, não é necessário de preencher os separadores seguintes.

Fechar

 

Campos

Os seguintes campos estão presentes neste separador :

Bloco número 1

  • Activo (campo ENAFLG)

Sélectionnez cette case à cocher pour activer la fiche courante.

Les enregistrements non sélectionnés conservent leur contenu et paramétrage, mais ne pourront pas être utilisés en rappelant leur code dans :

  • les autres enregistrements, comme les documents et paramètres,
  • les traitements en masse.

Les habilitations sur une fonction donnée peuvent interdire la création d'une fiche active. Dans ce cas, la case est désactivée par défaut. Elle est modifiable uniquement par un utilisateur autorisé, ou via un Workflow de signature.

Bloco número 2

  • campo CLBFL

 

Fechar

 

Separador Avançado

Apresentação

Este separador, cujo registo é opcional, permite indicar :

  • critérios relativos à apresentação dos dados (paginação, lista utilizada...).
  • critérios de seleção complementares
  • condições de junção particulares.

As condições de junção são úteis nos dois casos seguintes :

  • se o algoritmo de junção automática não termina. Este caso é fácil a diagnosticar, porque uma mensagem de erro explicita está afixada na validação do pedido. É suficiente por vezes de reacrescentar uma ligação versus uma das tabelas cujas ligações não estão descritas no dicionário para resolver este caso (ou outros restarão determinados automaticamente).
  • se o algoritmo de junção liga as tabelas de uma maneira não conforme ao que foi esperado. Com efeito, nos casos complexos, várias ligações podem existir entre as tabelas ; ou algoritmo se para à primeira ligação encontrada. Para verificar que a junção está conforme ao que se espera, pode-se utilizar o botão Informações / Ligações, que dá o detalhe das ligações encontradas.

Fechar

 

Campos

Os seguintes campos estão presentes neste separador :

Bloco número 1

  • Nr.de linhas (campo NBRLIG)

Permet de définir un nombre de lignes par page logique dans l'écran de consultation généré par le requêteur. Si ce nombre de lignes excède le nombre de lignes physiques affichables, un ascenseur apparaît à droite du tableau. Des boutons situés en haut de l'écran permettront de naviguer entre pages logiques (visualiser la suivante, précédente, dernière, première).

  • Máximo linhas (campo MAXLIG)

Le nombre de lignes maximum correspond à un paramètre de la requête (maxrows) qui arrête la recherche lorsqu'un nombre de lignes satisfaisant aux conditions a été trouvé dans la base (ces lignes seront ensuite triées, mais la base ne garantit pas que les N lignes trouvées sont les N premières dans l'ordre de tri). Il s'agit d'une optimisation permettant de limiter la charge pour la base de données.

  • Nr.Colunas fixas (campo NBRCOL)

Permet de figer les x premières colonnes d'un tableau en cas de pagination horizontale.

  • Tempos máx. (campo MAXTIM)

Utilisez ce champ pour arrêter la recherche après la période de temps indiquée (en secondes). Ceci permet d'éviter d'attendre trop longtemps dans le cas du paramétrage d'une nouvelle requête par exemple.

Remarque : Contrairement au nombre maximum de lignes, cette information n'est pas transmise à la base de données. Le temps maximum peut donc pas être dépassé si la durée de la requête est trop importante.

Définit le code d'un état qui sera associé à la fonction Fichier / Liste à partir de la consultation des requêtes. S'il n'est pas renseigné, on utilise l'état ALISTE, qui proposera une mise en page par défaut. Il est possible de dupliquer cet état générique (il ne sera en principe nécessaire que de modifier la mise en page) pour créer des états parfaitement adaptés à la requête ainsi définie.

Le code état saisi ici peut être associé à un ensemble de codes impression via la fonction dédiée.

Quadro Selecções

  • Critérios de selecção (campo SEL)

Permet de saisir des critères de sélection, qui sont des expressions logiques portant sur des champs des tables, et pouvant inclure des constantes, des fonctions, des opérateurs. Seuls les lignes des tables satisfaisant à ces conditions seront extraites. L'éditeur de formule permet de simplifier l'écriture de telles expressions.

Quadro Ligações

  • Expressão de ligação (campo LNK)

Utilisez ce champ pour définir les liens qui ne sont pas définis dans le dictionnaire, ou qui doivent être considérés en priorité. La structure du lien doit correspondre à la clé du fichier à lier. Il doit y avoir autant de champs séparés par des points-virgules que de parties de clé. En effet, la syntaxe exacte est :

[F:ABV1]CLE=expression1 ; expression2..., où :

*    [F:ABV1]CLE est la clé de la table liée. Cliquez sur le menu Actions pour accéder à la fonction Choix table, qui propose la liste de toutes les tables présentes dans la première section. La sélection d'une des tables déclenche l'affichage du premier index de la table. Pour utiliser un autre index, vous pouvez utiliser la fonction Choix d'un index, accessible par le menu Actions, qui vous proposera de choisir parmi la liste de tous les index de la table précédemment sélectionnée.

*    expression1, expression2 sont les expressions permettant de donner des valeurs aux différents champs de la clé définie précédemment (si la clé est en une partie, il n'y a qu'une expression, sinon, les expressions sont séparées par un point-virgule). Vous pouvez également utiliser la fonction Choix d'un champ, qui permet de renseigner les différentes valeurs de la clé avec des champs de l'une des tables concernées. Après le choix de la clé, qui fait apparaître le nombre de points-virgules définissant les partie de clé à renseigner, cette fonction vous permet de remplir successivement toutes les parties manquantes. Il est à noter que vous pouvez définir des parties de clés constantes.

Du point de vue de la base de données, cette syntaxe définit des jointures externes gauches. Il est à noter qu'une deuxième syntaxe vous permet de définir des jointures strictes (ce qui peut avoir un intérêt sur le plan des performances). On ajoute alors un tilde (~) à la syntaxe qui devient :

[F:ABV1]CLE=expression1 ; expression2...

Fechar

 

Separador Acesso

Apresentação

Este separador permite definir as condições de acesso ao pedido e aos dados extraídos.

Fechar

 

Campos

Os seguintes campos estão presentes neste separador :

  • Tipo de pedido (campo ALLUSR)

Utilisez ce champ pour gérer l'affichage d'une requête en consultation, avec les comportements suivants :

  • Requête normale : le résultat de la requête est affiché si la requête a déjà été consultée par l'utilisateur. En effet, chaque utilisateur lançant la requête crée un jeu de données qui lui est propre, et qui ne peut pas être vu par d'autres.
  • Requête partagée : le résultat de l'exécution de cette requête par un utilisateur peut être consulté par d'autres utilisateurs. L'intérêt d'avoir des requêtes partagées réside dans le fait qu'une requête lourde, lancée à un moment donné par un seul utilisateur, permet ensuite à un ensemble d'utilisateurs de disposer d'une information commune. Il est recommandé, pour ce genre de requête, que seul un utilisateur puisse exécuter la requête, les autres y ayant accès en consultation. En outre, il est parfaitement loisible de calculer ce type de requête en batch si elle est particulièrement lourde à constituer ; le code de la tâche batch correspondante s'appelle en effet CALALH.
  • Requête recalculée : le résultat de la requête ne s'affiche jamais automatiquement. Il faut appuyer sur le bouton rafraîchir ou saisir les critères. L'intérêt de ce type de requête est d'éviter de recharger des données si on sait qu'elles se périment rapidement.
  • Grupo (campo GRP)

Utilisez ce champ pour créer une classification des critères disponibles pour les requêtes.

Ce code d'accès permet d'interdire l'accès à la fiche courante pour certains utilisateurs.

Si le champ est alimenté, seuls les utilisateurs qui ont des droits de lecture sur ce code d'accès peuvent visualiser l'enregistrement ; et seuls les utilisateurs avec des droits d'écriture peuvent le modifier.

Le droit d'exécution contrôle le fait que l'on puisse exécuter la requête en question (en rafraîchissant la requête ou en modifiant les paramètres et en la ré-exécutant).

Permet de déterminer des filtres d'habilitation appliqués à la constitution de la requête. Ces filtres sont les filtres par site, par rôle, et par code accès.

Les principes du filtrage sont les suivants :

  • Le code objet permet de déterminer quels les champs code accès et code site sur lesquels un filtre doit être fait.
  • Ce filtre est alors réalisé en fonction des sites autorisés et des droits d'accès accordés pour la gestion d'objet à l'utilisateur exécutant la requête.
  • De même, le filtre sur les rôles, définis par le code objet, est aussi appliqué.

Ceci suppose bien entendu que la table sur laquelle sont fait les filtres fasse partie de la requête générée. On entend par là la table où se trouvent les champs code accès, code site, et le cas échéant le champ défini par les rôles accordés à l'utilisateur. Il ne s'agit pas nécessairement de la table principale de la requête : une requête sur des lignes de documents peut être filtrée, par exemple, en fonction des autorisations liées aux champs des tables liées à l'en-tête du document.

Attention : ces filtres sont appliqués uniquement lors du calcul de la requête, et en aucun cas lors de la consultation. Ceci peut être sensible si la requête est partagée, par exemple, ou si les filtres par site d'un utilisateur ont évolué entre le moment où la requête a été calculée et le moment où on la visualise.

Utilisez ce champ pour lier les autorisations d'accès à la requête aux autorisations données sur la fonction.

Le principe en est le suivant : à l'entrée dans la requête, on vérifie que la fonction liée est autorisée à l'utilisateur (pour au moins un site, si l'habilitation sur cette fonction se fait par site). Cette vérification est faite  uniquement dans le cas où cette requête n'est pas partagée.

En effet, si la requête est partagée, on part du principe que les habilitations de la personne ayant calculé la requête s'appliquent et se propagent à tous ceux qui ont le droit de la visualiser. Il est donc nécessaire de définir avec précaution les habilitations aux requêtes partagées, lorsqu'elles concernent des données sensibles. Ceci est possible via le code d'accès situé dans cette section.

Fechar

 

Separador Gráfico

Apresentação

Este separador não pode ser preenchido que se uma apresentação gráfica é possível para o pedido. Define-se então a maneira cujos dados são apresentados sobre o gráfico.

Fechar

 

Campos

Os seguintes campos estão presentes neste separador :

Bloco número 1

  • Representação (campo REPGRA)

Cet indicateur définit comment les données sont représentées à l'écran. Les possibilités sont les suivantes :

  • Caractère : les données sont uniquement représentées sous la forme d'un tableau.
  • Car. ou Graph. : les données sont présentées sous l'un des deux modes. Le mode par défaut est déterminé par le champ Affichage par défaut défini dans les paramètres graphiques de la fiche.
  • Car. et Graph. : les données sont présentées sous les deux modes simultanément. La position du graphique par rapport au tableau est déterminée par le champ Position de la section Graphique.
  • Graphique : les données sont uniquement présentées sous la forme d'un graphique.
  • campo OPTGRA

Utilisez ce champ pour organiser la relation entre le caractère et le graphique, lorsque le mode de représentation des données autorise les deux. Selon le contexte :

  • Si la représentation est Car. ou Graph., la valeur par défaut est appliquée à la représentation.
  • Si la représentation est Car. et Graph., la position du graphique dépend du tableau des données.

Bloco número 3

  • campo IMAG

Image détaillant les informations saisies précédemment.

Gráfico

  • Tipo (campo TYPGRA)

Ce champ est utilisé lorsqu'il existe plus d'une valeur numérique dans le tableau pouvant être représentée sous forme graphique. Ce champ peut afficher deux valeurs :

  • Graphique simple : une seule colonne de valeurs peut être affichée à la fois (un sélecteur est disponible)
  • Multi-graphiques : toutes les colonnes s'affichent, combinées selon la valeur du paramètre Représentation.
  • Representação (campo FSHGRA)

Lorsque plusieurs séries sont représentées dans le graphique (à condition que la présentation de toutes les séries soit identique et non par 'secteur'), vous pouvez indiquer comment les valeurs des séries sont combinées, selon les valeurs suivantes :

  • L'option multiple permet de présenter les valeurs de chaque série côte à côte (une couleur par série)
  • L'option cumulative permet de présenter les valeurs sous forme de total vertical.
  • L'option comparative permet de présenter les valeurs sous forme de comparaison relative (la hauteur du graphique est constante).
  • Gráfico p/defeito (campo DEFGRA)

Ce champ définit la représentation graphique appliquée aux données présentées (Barres, Lignes, Aires, Secteurs). Une image s'affiche, en fonction du choix effectué, illustrant le type de présentation obtenu.

Si une seule série de valeurs est disponible, la représentation graphique est fixée par défaut par ce paramètre.

Si plusieurs séries de valeurs sont disponibles, il est possible de mélanger les modes de présentation (une série en barres, une autre en lignes, par exemple). Dans ce cas, la représentation de chaque série de valeurs dépend du champ Représentation du tableau des champs :

  • Pour les Barres ou Lignes, le mode de représentation est appliqué aux séries de valeurs compatibles avec la représentation graphique par défaut (les secteurs ne peuvent pas être mélangés avec les barres ou les lignes).
  • Pour le mode Par défaut, la représentation graphique par défaut est appliquée aux séries.

Si la représentation des séries est homogène (une seule série existe dans le graphique), un sélecteur est disponible pour le type de graphique, vous permettant de sélectionner un mode de présentation différent.

Bloco número 4

Fechar

 

Botões específicos

Este botão gera um tratamento associado ao pedido, assim que o ecrã de consulta dedicada. Esta validação está encadeada no registo de uma ficha, mas é possível de a lançar independentemente se um pedido por exempo foi transferido por cópia.

Os seguintes campos estão presentes na janela aberta por este botão :

Bloco número 1

  • campo OBJET

 

  • campo CLES

 

Bloco número 2

  • A partir do dossier (campo DOSORG)

Use this field to define the folder from which the record will be copied. The possible syntaxes are described in the Dedicated appendix.

  • Todos dossiers (campo TOUDOS)

Use this option to copy the record to all the folders defined in the dictionary (ADOSSIER table of the current solution).

  • Para o dossier (campo DOSDES)

Use this field to define the folder to which the record will be copied. The possible syntaxes are described in the Dedicated appendix.

Fechar

Este botão permite de recopiar a definição da transação depois ou versus um outro dossier.

Permite o lançamento do pedido corrente. A execução se desencadeia em atualizando uma tabela temporária, e cadeia sobre a função de visualização dos pedidos, que permite visualizar o detalhe dos movimentos, mas igualmente de agregar sucessivamente sobre os diferentes níveis de rutura definidos.

Mensagens de erro

Para além das mensagens genéricas, as seguintes mensagens de erro podem aparecer durante o reg. :

Excesso de critérios de ordenação

Excessos de limites

Excesso de acumulados

Limites são ultrapassados na complxidade do pedido. Limita-se com efeito o número de critérios de ordenação a 8, e o número de limites e de acumulados a 10.

Tabela não definida

Deu-se numa expressão uma fórmula de cálculo incluindo os campos de uma tebela que não está na linha.

XXX : Tabela inexistente

yyy : : Campo inexistente

A tabela ou o campo não existem no dicionário

Índice incorrecto

Um campo foi indiciado com um valor que ultrapassa a dimensão do campo

Ligações impossíveis

As ligações entre as tabelas não puderam ser estabelecidas a partir do dicionário. Seja um erro no pedido, seja falta indicar de maneira detalhada as ligações no separador Avançado.

Este campo já foi seleccionado

Ensaia-se de reacrescentar nos campos seleccionados, mas este campo já existe.

Acção desconhecida

O componente "flash" enviou uma acção não gerida pelo supervisor.

Ligações impossíveis As zonas devem ser do mesmo tipo

Não é possível fazer as ligações entre os campos de tabela de tipo diferente. Exemplo : um campo numérico não pode ser ligado a um campo de chave alfanumérico

Ligação impossível Componente de chave já registado

No caso onde se começou a estabelecer uma ligação com uma chave de tabela, falta fazer as ligações de todas as partes desta chave. Esta mensagem se afixa se se ensais de fazer uma ligação sobre um campo que não faz parte desta chave.

Ligação impossível Chave existente incompleta

A relação não foi definida sobre todos os campos da chave

Ligação impossível Chave inexistente

Ensaia-se de fazer uma ligação sobre um campo que não faz parte de uma chave.

Falta pelo menos um campo de tipo literal e de tipo valor para utilizar o grafismo.

Quando o campo "Representação gráfica" está activo, falta, por entre os campos seleccioandos, de definir um para o intitulado dos gráficos e pelo menos um para o cálculo dos gráficos.

Tipo de dados não gerido

Não é possível utilizar um campo de tipo "clob" ou "blob" nas expressões dos campos seleccionados

Tabelas consideradas

SEEREFERTTO Consulte a docuemntação de Implementação