Histórico da Página
RmsHelp
...
...
RMS Software S.A. - Uma Empresa TOTVS
Todos os direitos reservados.
...
...
Objetivo
A partir de informações cadastradas em uma base de dados local, o RMSHelp monta a tela de consulta, criando campos para filtragem e configurando uma grade para visualização das informações. Ao pressionar a opção "Filtrar" o banco de dados principal do sistema é acessado, também utilizando as informações locais, para recuperar as informações solicitadas pelo usuário. O usuário pode selecionar um ou vários registros da consulta, retornando para a aplicação que chamou a consulta, todas as linhas selecionadas.
...
Conceito
O RMSHelp foi desenvolvido para facilitar a criação de telas de consulta para o usuário. Sua estrutura foi remodelada para facilitar a implementação pelo programador.
A base de dados também foi remodelada e migrada para arquivos locais, o que facilita a distribuição das alterações.
...
...
Descrição do processo
...
Cadastro das consultas
As tabelas abaixo configuram quais dados serão acessados e como eles serão apresentados aos usuários.
Cadastro de Consultas (cad_cons) – Tabela principal
...
Dim objHelp As IObjetoConsulta
Dim varRetorno As Variant
Set objHelp = CreateObject("RMSCons.cConsulta")
varRetorno = objHelp.MostrarConsulta(1)
Set objHelp = Nothing
...
Chamar a Consulta
Após ter sido cadastrada, a consulta pode ser invocada via código como abaixo, lembrando de adicionar referência ao componente "ICONSULTA".
Leia o próximo tópico para obter mais informações técnicas sobre o funcionamento do componente.
...
Informações Técnicas
Este componente foi desenvolvido em conjunto com duas interfaces :
IObjetoConsulta- Implementada pelo componente, é utilizada para a inicialização da consulta pelo programa chamador
IOrigemConsulta- Utilizada para obter a instrução de seleção de componentes externos.
A interface IObjetoConsulta deve ser utilizada conforme mostrado no tópico "Chamar a Consulta".
Para que um componente externo possa fornecer instruções para o RMSHelp, ele deve implementar a interface IOrigemConsulta. Vamos ver o processo passo a passo:
- Iniciar um novo projeto do tipo "ActiveX DLL";
- Adicionar referência ao componente "ICONSULTA";
- Implements IOrigemConsulta
Private Function IOrigemConsulta_InstrucaoSQL(ByVal Consulta As Long, Optional ByVal arrParam As Variant) As String
Select Case Consulta
Case 1
IOrigemConsulta_InstrucaoSQL = "Select * from A"
Case 2
IOrigemConsulta_InstrucaoSQL = "Select * from B"
End Select
End SubNo módulo classe criado, adicionar as seguintes linhas de código : - Ao cadastrar a consulta no banco local, informe 2 para o campo "tp_org_cons" e o nome da classe que você acabou de criar no campo "org_cons".
...
Referência I ObjetoConsulta
Métodos
MostrarConsulta
Inicia a tela de consulta e retorna o(s) registro(s) selecionado(s) pelo usuário
Sintaxe:arrDados = objHelp.MostrarConsulta(Codigo)
Codigo:(Long)Código de alguma consulta existente no cadastro de consultas.
(Retorno):(Variant) Array de uma dimensão, onde cada elemento guarda uma string com todos os campos do registro, separado por "pipes" ("|").
...
Referência I OrigemConsulta
Métodos
InstrucaoSQL
Permite a um objeto servir como fornecedor de instruções para o RMSHelp
Sintaxe:strSQL = InstrucaoSQL(Consulta, [arrParam])
Consulta:(Long)Código da consulta chamada pela aplicação
arrParam:(Variant) Array de uma dimensão contendo em cada elemento os valores digitados nos campos de filtro
(Retorno):(String) O componente RMSHelp, espera receber uma instrução de seleção válida.