RmsFiltro
...
...
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 RMSFiltro monta uma lista de parâmetros, permitindo ao usuário informar seus valores. Cada parâmetro pode ter sua própria rotina de validação, que é efetuada assim que o usuário termina de informar o valor.
Existem parâmetros que são comuns em várias partes do sistema, como por exemplo código de filial, código de seção, código de fornecedor, etc., para diminuir o trabalho de cadastro e aumentar a reutilização das validações, foram criados os conceitos de "Classes de Parâmetros" e "Grupos de Parâmetros".
Uma classe controla todo o comportamento do parâmetro, ou seja, o tipo de dado, a visualização, a validação, etc., enquanto o agrupamento, controla a utilização do parâmetro dentro do contexto de uma consulta específica. Explicando melhor, o agrupamento determina dados como: nome físico, se permite múltiplos valores, se permite seleção geral, entre outros.
Cada parâmetro pode, também, ser apresentado na forma de uma lista de valores (combobox) para seleção do usuário. O conteúdo desta lista pode ser fixado no cadastro do parâmetro, ou obtido através de uma classe de controle.
Ao final da digitação dos parâmetros, o programa chamador recebe uma lista com os valores informados ou, opcionalmente, uma string contendo critérios de seleção no formato SQL.
Âncora |
---|
| _Toc388623758 |
---|
| _Toc388623758 |
---|
|
Âncora |
---|
| _Toc388624435 |
---|
| _Toc388624435 |
---|
|
Âncora |
---|
| _Toc388624441 |
---|
| _Toc388624441 |
---|
|
Âncora |
---|
| _Toc400007098 |
---|
| _Toc400007098 |
---|
|
Conceito
O RMSHelp foi desenvolvido para dar ao usuário uma interface única de digitação de parâmetros, sejam eles para relatórios ou processos.
Âncora |
---|
| _Toc388623759 |
---|
| _Toc388623759 |
---|
|
Âncora |
---|
| _Toc388624436 |
---|
| _Toc388624436 |
---|
|
Âncora |
---|
| _Toc388624442 |
---|
| _Toc388624442 |
---|
|
Âncora |
---|
| _Toc400007099 |
---|
| _Toc400007099 |
---|
|
Parametrização
Âncora |
---|
| _Toc400007100 |
---|
| _Toc400007100 |
---|
|
Cadastro dos Parâmetros
...
Vale ressaltar, que a classe de parâmetro existe para promover o re-aproveitamento de seu comportamento. Neste caso, antes de cadastrar uma nova classe, deve-se verificar se já existe alguma que possa ser re-utilizada.
Âncora |
---|
| _Toc400007101 |
---|
| _Toc400007101 |
---|
|
Chamar o Filtro
Dim objFiltroAs IObjetoFiltro
Dim varRetorno As Variant
Set objFiltro = CreateObject("RMSFiltro.cFiltro")
varRetorno = objFiltro.MostrarFiltro(Me, 1)
Set objFiltro = NothingApós ter sido cadastrado, o filtro pode ser invocado via código como abaixo, lembrando de adicionar referência ao componente "IFILTRO".
Leia o próximo tópico para obter mais informações técnicas sobre o funcionamento do componente.
Âncora |
---|
| _Toc388623760 |
---|
| _Toc388623760 |
---|
|
Âncora |
---|
| _Toc388624437 |
---|
| _Toc388624437 |
---|
|
Âncora |
---|
| _Toc388624443 |
---|
| _Toc388624443 |
---|
|
Âncora |
---|
| _Toc400007102 |
---|
| _Toc400007102 |
---|
|
Descrição do processo
Âncora |
---|
| _Toc400007103 |
---|
| _Toc400007103 |
---|
|
Informações Técnicas
Este componente foi desenvolvido em conjunto com três interfaces :
IObjetoFiltro- Implementada pelo componente, é utilizada para a inicialização do filtro.
IChamadorFiltro- Permite ao programa chamador interferir na validação e formatação dos valores digitados
IControleFiltro- Permite a criação de componentes responsáveis por controlar o comportamento das classes de parâmetros
A interface IObjetoFiltro deve ser utilizada conforme mostrado no tópico "Chamar o Filtro".
Para utilizar a interface IChamadorFiltro, adicione o comando "Implements IChamadorFiltro" no início do código da sua janela e veja a referência dos métodos disponíveis neste manual. Os métodos serão chamados pelo RMSFiltro quando forem necessários.
Para utilizar a interface IControleFiltro, crie uma nova classe e e adicione o comando "Implements IControleFiltro" no início do código e veja a referência dos métodos disponíveis neste manual. Informe corretamente o nome da classe criada no campo "nm_dll_ctrl" na tabela "cls_param". Os métodos serão chamados pelo RMSFiltro quando forem necessários.
Âncora |
---|
| _Toc400007104 |
---|
| _Toc400007104 |
---|
|
Referência I ObjetoFiltro
...
CriterioSelecao
Retorna string com lista de critérios no formato SQL
Sintaxe:strDados = objFiltro.CriterioSelecao()
(Retorno):(String) Lista de critérios no formato SQL
Conteudo
Retorna o valor atual de qualquer parâmetro dentro do filtro. Geralmente utilizado dentro dos componentes de controle
Sintaxe:varDados = objFiltro.Conteudo(Rotulo)
Rotulo:(String) Rótulo do parâmetro desejado. É considerado o rótulo que está cadastrado no banco, uma vez que a janela pode estar traduzida em outro idioma.
(Retorno):(Variant) Valor atual do parâmetro.
Âncora |
---|
| _Toc400007106 |
---|
| _Toc400007106 |
---|
|
Referência I ChamadorFiltro
Métodos
ValidarParametro
Permite ao programa chamador interferir no processo de validação de um parâmetro. Este método é chamado, como um evento, após a validação pelo componente de controle. Seu funcionamento é semelhante ao evento "Validate"
Sintaxe:ValidarParametro(Rotulo, Valor, Cancelar, Mostrar)
Rotulo:(String) Rótulo do parâmetro desejado. É considerado o rótulo que está cadastrado no banco, uma vez que a janela pode estar traduzida em outro idioma.
Valor :(Variant) Valor informado pelo usuário
Cancelar:(Boolean) Diz ao RMSFiltro para cancelar a edição do parâmetro
Mostrar:(Variant) O valor que será mostrado na tela, caso o parâmetro tenha sido validado.
FormatarParametro
Permite ao programa chamador formatar o conteúdo do parâmetro na tela.
Sintaxe:FormatarParametro(Rotulo, Valor, Mostrar)
Rotulo:(String) Rótulo do parâmetro desejado. É considerado o rótulo que está cadastrado no banco, uma vez que a janela pode estar traduzida em outro idioma.
Valor :(Variant) Valor informado pelo usuário
Mostrar:(Variant) O valor que será mostrado na tela.
Âncora |
---|
| _Toc400007107 |
---|
| _Toc400007107 |
---|
|
Referência I ControleFiltro
...