Child pages
  • Consultas SQL - Visões de Dados

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Índice


Table of Contents

Consulta SQL



Embora seja destinada somente às consultas, esta importante ferramenta é mais um grande recurso disponível com exclusividade nos aplicativos RM, que permitirá a você cadastrar e executar sentenças de Consulta SQL, acessando diretamente o Banco de Dados de seu aplicativo.

 O que é uma sentença de consulta SQL?

Uma Consulta SQL é uma sentença (montada ou escrita) em linguagem própria para a realização de uma pesquisa (consulta) diretamente no banco de dados, buscando informações (dados) que estejam devidamente gravados (populados) nas diversas tabelas (cadastros) relativos ao sistema.

*Exemplo*

 Deseja-se consultar as coligadas e seus respectivos dados existentes no banco de dados de determinado aplicativo. Considere-se o nome da tabela com os dados desejados como sendo COLIGADAS. Para realizarmos essa consulta, bastam alguns comandos bastante simples utilizados nos bancos de dados padrão SQL. Neste caso, seria suficiente digitarmos:


SELECT  FROM GCOLIGADAS


O comando select determina ao sistema que se faça uma seleção ou a consulta em si;

O * (asterisco) neste caso foi utilizado como variável, permitindo que fossem selecionados todos os dados existentes;

O comando FROM, determina a tabela na qual serão selecionados os dados, neste caso, a tabela de Coligadas (GCOLIGADAS).

Entre as facilidades dessa opção, podemos citar as seguintes:

Possibilidade de você realizar suas próprias consultas de dados cadastrados em quaisquer tabelas do aplicativo, efetuando a seleção mesmo de dados não disponíveis nas tabelas.

Disponibilidade de utilização do cadastro de fórmulas, que, ao serem associadas ao cadastro de Consultas SQL, transformam-se em uma poderosa ferramenta com acesso direto e irrestrito à sua Base de Dados.


Atenção

 O módulo de consultas SQL não obedece as permissões de acesso a coligadas e também não obedece as permissões de acessos a campos, ou seja, ao dar permissão a consulta SQL para um usuário o sistema não segue as restrições de perfil e nem de usuário liberando assim acesso completo.

Campos


Código

Digite um código alfanumérico para identificação da sentença. Este código tem finalidade exclusiva de identificação da sentença, não produzindo qualquer alteração no resultado desejado.

Título

Informe uma descrição, um nome, ou um título que identifique mais facilmente a operação que deverá ser executada.

Visível a todas Coligadas

Marque esta opção para que a consulta SQL fique disponível para todas as coligadas. Essas consultas serão representadas com um globo em seu ícone.

Aplicação

Define em qual módulo a Consulta SQL pertencerá.

Executar

Executa a sua consulta SQL.

Formatar

Formata sua consulta SQL colocando em uma estrutura mais apresentável.

Dicionário

Selecione uma tabela em sua consulta e clique em Dicionário para visualizar as propriedades daquela tabela.

Disponível para RM Portal

Disponibiliza o resultado da Consulta SQL no RM Portal.

Disponível para Execuções em Visões

Marque este campo caso queira que a sentença seja executada em visões.

Disponível para Filtros

Marque este campo caso queira que a sentença seja executada nos filtros.

Disponível para Relatórios

Marque este campo caso queira que a sentença seja executada nos relatórios.

Banco de Dados Externo

Escolha uma conexão caso deseje fazer uma consulta SQL para um banco de dados externo.

Data da Última Alteração

Exibe a data e a hora da última alteração realizada na consulta.

Usuário Responsável

Exibe o último usuário que realizou alterações na consulta SQL que está sendo editada.

Configurar

Essa opção permite que seja destacada cada célula da coluna e que se possa executar uma Action a partir da grid de execução da sentença SQL.


Dica 1

As consultas SQL podem executar de qualquer query do sistema utilizando constantes de valores do contexto. Este campo pode ser por exemplo o Código da Coligada atual, Filial, Chapa, Projeto, Nível de Ensino, etc.
A sintaxe da consulta SQL deverá ficar assim:

SELECT CAMPO_DA_BASE  FROM TABELA_DA_BASE WHERE CAMPO_DA_BASE = :$CONSTANTE_DO_CONTEXTO


Dica 2

O uso do "NOLOCK" nas consultas SQL melhora o desempenho e seu uso é incentivado principalmente nas consultas de tabelas muito grandes. Este recurso é exclusivo para bases SQL Server.
Veja como usar o "NOLOCK" em uma consulta:


SELECT * FROM NOME_TABELA (NOLOCK)


Dica 3

É possível fazer log das sentenças SQL que estão sem NOLOCK, com "SELECT *" e/ou demorando demais para rodar. Para habilitar o recurso, é necessário que o arquivo de configuração do host (RM.Host.Service.exe.config) seja alterado e tenha incluído a chave "BadSyntaxLogEnabled" com o valor verdadeiro.
Caso desejar alterar o tempo de execução da consulta que deve ser feito log, é necessário também incluir a chave "QueryWaitTimeToLog" com o valor em segundos que a consulta deve demorar para executar. Caso este parâmetro não for informado, apenas sentenças SQL que demorarem 30 segundos ou mais terão seu log registrado.


Cores nas células

Para processar a operação, selecione um campo na grid de campos e acesse a grid de configurações, no campo OP. selecione a operação que deseja fazer com o resultado obtido no campo.Essas operações podem ser >,<,<>,>=,<= ou =.

No campo valor deverá ser inserido um valor para fazer a comparação. Caso a comparação seja verdadeira, a célula será preenchida com as cores que devem ser escolhidas nos campos Fundo e Fonte dessa mesma Grid.  *Actions*

Para que uma Action seja executada , deve ser feita uma comparação entre o(s) campo(s) chave(s) da tabela com o(s) campo(s) resultantes da consulta SQL.na grid de Action deve ser inserida a Action que se deseja abrir, na grid Campos da Chave Primária, onde são exibido os campos chaves da Action escolhida, na coluna chamada de "Coluna", deverá ser escolhido o campo resultante da consulta SQL que será comparado com o da tabela.


Editor

O editor permite a edição/alteração de uma consulta SQL.

Warning
titleImportante

O "SET LANGUAGE" não deve ser utilizado em consultas SQL pois o mesmo influencia no contexto da aplicação que está compartilhando daquela conexão.


Para isto selecione os dados necessários nas pastas desta janela:

• Tabelas / Campos - Sentença
Nesta pasta serão informadas (selecionadas) as tabelas das quais os dados serão apurados para a consulta. Das tabelas selecionadas serão definidos os campos que se deseja consultar no banco de dados. Corresponde ao comando SELECT de uma sentença SQL. Deverão ser selecionadas as tabelas desejadas para a montagem e edição da sentença a ser executada.

-Tabelas Disponíveis
Selecione a tabela entre as tabelas disponíveis, observando seu nome e sua respectiva descrição no banco de dados. Clique sobre o botão Adiciona.
Após pressionar este botão, a tabela selecionada será transferida automaticamente para o espaço abaixo Tabelas Selecionadas, para a montagem da sentença SQL. Ou, dê um duplo clique no nome da tabela desejada.

-Tabelas Selecionadas
Informa as tabelas que serão utilizadas na consulta SQL.

-Campos Disponíveis
Uma vez selecionada(s) a(s) tabela(s), estarão também disponíveis os campos a serem pesquisados.
Selecione o campo entre os campos disponíveis, observando seu nome e sua respectiva descrição no banco de dados. Clique sobre o botão Adiciona.
Após pressionar este botão, o campo selecionado será transferido automaticamente para o espaço abaixo Campos Selecionados, para a montagem da sentença SQL. Ou, dê um duplo clique no nome do campo desejado.
Observação: Para selecionar mais de um campo, mantenha a tecla CTRL pressionada ao selecionar os campos.

-Campos Selecionados
Este espaço apresentará todos os campos já selecionados para a sentença. Da mesma forma como ocorre com o espaço de Tabelas Selecionadas, poderá ser utilizado para que você digite cada campo desejado para a sentença.
Observação: Para a inclusão de campos na área de Campos Selecionados, você poderá ou digitar cada campo desejado, ou utilizar os mesmos passos informados para a seleção e transferência de tabelas.

•Filtros / Condições - Sentença
Nesta pasta serão informados os critérios de seleção dos dados a consultar. Os filtros poderão classificar previamente, datas, códigos, descrições ou outros dados que você desejar, conforme critérios definidos nos filtros.
Corresponde aos comandos WHERE \[CAMPO\] =...; WHERE \[CAMPO\] >= ...; WHERE \[CAMPO\] > ..., etc, de uma sentença SQL.
Opção para inclusão de campos-filtro para a seleção de dados da tabela.

- Campos
Verifique neste espaço todos os campos da tabela disponíveis para serem utilizados como filtros de dados. Selecione o campo entre os campos disponíveis, observando seu nome e sua respectiva função no banco de dados.
Selecione cada campo desejado, clicando duas vezes sobre ele. O campo selecionado será transferido automaticamente para o espaço à direita denominado Condições, para a montagem da sentença SQL. Os campos deverão ser selecionados e transferidos já na seqüência correta de montagem da sentença.

- Condições
Este espaço receberá os campos selecionados na coluna à esquerda para a montagem do filtro. Entretanto, você poderá, se desejar, digitar o filtro independentemente de se ter selecionado previamente os campos desejados.
Para utilizar o valor de uma fórmula no filtro, utilize FRM_Nome da fórmula na construção da sentença SQL.

Exemplo:
SELECT * FROM PFCOMPL WHERE CODPESSOA = :FRM_CODPESS

• Agrupar / Ordenar - Sentença
Nesta seção, poderão ser definidas as formas de agrupamento de dados como, por exemplo, agrupar por data, por código, etc.
Além do agrupamento, da mesma forma, os dados resultantes do processamento da sentença poderão ser ordenados por data, código, ordem alfabética ou por outro critério que você definir.
Corresponde aos comandos ORDER BY ou GROUP BY de uma sentença SQL.Recurso para o agrupamento e ordenação dos dados resultantes da execução da sentença.  

- Campos
Selecione os campos disponíveis nesta coluna para serem agrupados/ordenados. Para selecionar e transferir um ou mais campos, proceda da seguinte forma:
Selecione o campo entre os campos disponíveis, observando seu nome e sua respectiva função no banco de dados. 
Clique sobre o ícone que representa uma seta única para a direita.

Após pressionar este ícone, o campo selecionado será transferido automaticamente para o espaço abaixo Agrupar por ou no espaço abaixo Ordenar por , dependendo de qual seta for pressionada.
Observação: Para selecionar mais de um campo, mantenha a tecla CTRL pressionada ao selecionar os campos. 

- Agrupar por
Espaço que apresenta os campos selecionados para agrupamento dos dados da sentença. Poderá ser também utilizado para que você digite cada campo ao invés de selecionar e transferir através das setas de transferência.
O agrupamento consiste na junção de dados para serem apresentados em grupos, em bloco.  

- Ordenar por
Apresentam os campos de ordenação selecionados. Poderá ser utilizado também para a digitação dos campos de agrupamento desejados, ao invés de se proceder a seleção e transferência através das setas de transferência.

Variáveis Dinâmicas


A consulta SQL permite o uso de variáveis dinâmicas que podem ser usadas como parâmetros. Essa variáveis trazem dados de datas atuais ou dados sobre o contexto do sistema. Confira quais são elas:


Variáveis de Data

$Hoje: Compara com a data de Hoje.

$NaSemana: Compara se a data está entre o início e fim desta semana.

$NoMes: Compara se a data  está entre o início e fim deste mês.

$NoAno: Compara se a data está entre o início e fim deste ano.


Variáveis de Contexto

$CHAPAFUNCIONARIO: chapa do funcionário logado.

$CODCOLIGADA: código da coligada do contexto.

$CODFILIAL: código da filial do contexto.

$CODIGOEXTERNO: código externo da filial do contexto.

$CODLOCPRT: código da localidade do portal do contexto.

$CODSISTEMA: código do sistema que o usuário está logado.

$CODTIPOCURSO: código do tipo de curso do contexto.

$CODUSUARIO: código do usuário logado.

$CODUNIDADEBIB: código da unidade bibliotecária do contexto.

$CODUSUARIOSERVICO: código do usuário rodando o serviço RM.Host.Service.exe

$EDUTIPOUSR: código do tipo de usuário do Educacional.

$EXERCICIOFISCAL: código do exercício fiscal do contexto.

$IDPRJ: ID do projeto do contexto.

$RHTIPOUSR: tipo de usuário de RH do contexto.

Info
iconfalse
Info
iconfalse

Produto: Framework

Info
iconfalse

Versão: 12.011.XX

Info
iconfalse

Processo: Consultas SQL - Visões de Dados

Info
iconfalse
Info
iconfalse

Status: Finalizado

Info
iconfalse

Data: 21/11/2018

Info
iconfalse

Autores:

Carlos Philippe De Farias

Carlos Roberto Pereira

Diogo Damiani Ferreira

Fábio Augusto Amaral

IGOR MACEDO

Karina Dos Santos Costa

Stella Gleyse Macedo

TIAGO ANDRADE GOMES