Mostrar ou Ocultar campos na consulta dinâmicamente

Bom Dia Pessoal

Tenho uma consulta de uma tabela que possui 3 tipos de cadastros com campos específicos para cada um deles.

Acontece que na hora de pesquisar, quer mostrar somente os campos pertinentes ao tipo de cadastro selecionado.

Tentei com a macro sc_field_display() no evento onScriptInit que é onde ela funcionaria nas consultas, mas não consegui resultado.

Pensei em filtrar no evento onValidade do filtro, o tipo de consultar, para então mostrar os campos específicos. Dessa forma na verdade teria 3 consultas a mesma tabela, porém com resultados de campos diferentes conforme a filtragem no onValidate.

Alguma dica ?

Obrigado.

Bom Pessoal, achei uma saída conforme a minha segunda opção:

Filtrar o tipo de cadastro no onValidade do filtro da pesquisa.

Como citei, tenho 3 tipos de cadastros na mesma tabela:

Tipo1
Tipo2
Tipo3

Os campos para TIPO1 são A, B e C.
Os campos para TIPO2 são A,B,C e D.
Os campos para o TIPO3 são A,B,C,D e E.

Criei 3 consultas com essa configuração de campos sendo mostradas, ou seja, uma consulta para o TIPO1, uma para o TIPO2 e uma para o TIPO3.
Criei 3 opções de menu.

No evento onValidade do filtro de cada pesquisa eu faço o seguinte:

[code]{tipo}=‘TIPO1’;

$check_sql = “SELECT tipo”
. " FROM tabela"
. " WHERE ID = {ID";

sc_lookup(rs, $check_sql);

if (isset({rs[0][0]}))
{
if({rs[0][0]}!=‘TIPO1’)
{
sc_error_message(‘Veículo não é do TIPO1. Favor usar a consulta do ‘.{rs[0][0]}.’.’);
}else{

}

}[/code]

Altero somente a mensagem e a variável {tipo} entre TIPO1, TIPO2 e TIPO3.

Assim consigo usar a mesma tabela para 3 consultas diferentes com campos diferentes vindos da mesma tabela.

Espero que seja útil para alguém essa minha experiência.

Obrigado.