Bom dia, precisei suspender o desenvolvimento desta aplicação na época e agora estou voltando e estou com este mesmo problema. Vou tentar especificar melhor o que estou precisando.
Eu tenho uma tabela de veiculos:
[table]
[tr]
[td]Código[/td]
[td]Descrição[/td]
[/tr]
[tr]
[td]A[/td]
[td]FIAT[/td]
[/tr]
[tr]
[td]AA[/td]
[td]Palio[/td]
[/tr]
[tr]
[td]AAA[/td]
[td]Palio 1.4[/td]
[/tr]
[tr]
[td]AAB[/td]
[td]Palio 1.0[/td]
[/tr]
[tr]
[td]AB[/td]
[td]UNO[/td]
[/tr]
[tr]
[td]AC[/td]
[td]IDEA[/td]
[/tr]
[tr]
[td]B[/td]
[td]CHEVROLET[/td]
[/tr]
[tr]
[td]BA[/td]
[td]CORSA[/td]
[/tr]
[tr]
[td]BB[/td]
[td]ASTRA[/td]
[/tr]
[tr]
[td]BC[/td]
[td]VECTRA[/td]
[/tr]
[/table]
Terei nesse aplicativo três campos tipo select nessa tabela onde:
O primeiro campo será:
SELECT codigo, descricao
FROM veiculos
WHERE CHAR_LENGTH(codigo) = 1
ORDER BY clpcod;
O segundo campo será:
SELECT codigo, descricao
FROM veiculos
WHERE CHAR_LENGTH(codigo) = 2 AND codigo ILIKE ‘{campo1}%’ AND codigo != ‘{campo1}’
ORDER BY codigo;
E o terceiro campo será:
SELECT codigo, descricao
FROM veiculos
WHERE CHAR_LENGTH(codigo) = 3 AND codigo ILIKE ‘{campo2}%’ AND codigo != ‘{campo2}’
ORDER BY codigo;
OBS: Em cada um desses campos select utilizo a opção de Usar Título/Negação onde o título em todos é igual a SELECIONE e a verificação para fazer com que apareça os campos escondidos está da seguinte forma:
if (empty({campo1}))
{
sc_field_display({campo2}, off);
sc_field_display({campo3}, off);
}
else
{
sc_field_display({campo2}, on);
sc_field_display({campo3}, off);
}
if (empty({campo2}))
{
sc_field_display({campo3}, off);
}
else
{
sc_field_display({campo3}, on);
}
O problema que ocorre é que ao iniciar a aplicação, eu deixo visível apenas o primeiro campo ({campo1}). Ao selecionar o campo 1, deve aparecer todos os dados referente ao selecionado no campo 1. Por ex: Campo 1 está igual a FIAT. No campo 2, deve aparecer Palio, Uno e IDEA. Ao selecionar o campo 2, deve aparecer os dados referentes ao campo 3. Ex: Campo 2 está igual a Palio. No campo 3 deverá aparecer Palio 1.4 e Palio 1.0. Até aí, funciona perfeitamente. O problema está que se o usuário resolver mudar o campo 1 para CHEVROLET, o campo 2 fica como selecione e o campo 3 com o dado dos carros da FIAT (Palio 1.4 e 1.0).
Obrigado
Thyago