Fórum Executar uma função a partir do texto de um campo,tem como ? #169011

11/07/2003

0

Pessoal,

Quero construir um aplicativo usando um dicionário de dados onde quero colocar em uma tabela os campos de cada tabela e a validação de cada um para o evento OnValidate ou OnExit.

Meu problema é que não consigo fazer executar uma função ou Procedure a partir do texto de um campo !

Tem como fazer isso ?


Me Ajudem por favor !


Ebatista

Ebatista

Responder

Posts

11/07/2003

Cdaraujo

Caro amigo,

Gostaria que o amigo explicasse melhor a sua questão, estou querendo te ajudar!

Atenciosamente,

Daniel Araújo


Responder

Gostei + 0

11/07/2003

Ebatista

Prezado Daniel,

Imagine o cadastro de clientes de um aplicativo.
Estou desenvolvendo um projeto onde, em uma tabela DBF por exemplo, tenho as informações de qual tabela, quais campos, qual o tipo de dados, qual o tamanho, o texto que vou colocar no label e assim por diante.
Quando o aplicativo é iniciado e entramos no cadastro de clientes, o formulário baseado no nome da tabela, localiza os campos criando os componentes em RunTime, na ordem em que estiverem no dicionário.
Isso é útil por exemplo, ao invéz de ter que abrir todo o projeto para mudar o formulário afim de alterar a ordem de um campo, basta alterar a ordem no dicionário e desta forma, o campo assumirá a nova ordem no formulário sem que se precise mexer no projeto !
O meu problema consiste em: para os campos, gostaria de atribuir funções de validação que pudessem, de acordo com a necessidade serem trocadas, sem precisar mexer no executável (projeto).
Ou seja, em um campo chamado VALIDACAO eu teria um texto dizendo qual função executar para validar os dados do campo:

Ex.: Cliente,Bairro, String, 20, 0, validabairro(dbedit32.text)
onde:
[Cliente] é o nome da tabela
[bairro] nome do campo
[String] tipo de dados
[20] tamanho da string
[0] tamanho do decimal (quando numérico)
[validabairro(dbedit32.text)] nome da função de validação

o que quero é atribuir ao evento OnExit ou OnValidate do dbEdit32 a função validabairro(dbEdit32.text) passando como parâmetro o conteúdo do campo bairro.

Como faço para o Delphi entender isso ? pois ele acusa erro em tempo de execução que o tipo de dados é incompatível.

Será que fui claro ?


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar