Array
(
)

Problema com dois DropdownList.

Jeferson.rosario
   - 24 mai 2008

Pessoal, mais uma vez eu estou precisando da ajuda de vc´s. Segue abaixo minha duvida.

Bom, vamos lah. Eu tou fazendo uma tela de cadastrado de hardware e estou precisando de fazer as seguintes tarefas:

Meu formulário começa da seguinte maneira:

Area: (Campo Dropdownlist1) com as minhas áreas cadastradas no banco. Esta parte tah o.k;

Sub area: (Campo Dropdownlist2) com as minhas sub areas cadastradas no banco. Obs.: Ai que tá o problema: Eu quero que soh apareça as sub areas pertencente a area selecionada do Dropdownlist1.

Quando o usuario selecionar a area eu quero que seja executada uma SQL para selecionar as minhas sub areas que pertence a minha area:

A Instrução SQL seria esta ai:

SELECT sub_area FROM tb_sub_area WHERE id_area = @id_area;

O @id_area eu já tenho ele. A minha duvida é como fazer meu dropdownlist ficar habilitado com as sub_areas desejadas.

Segue abaixo alguns dados para melhor entendimento:

Eu tenho uma tabela do banco de dados chamada tb_sub_areas e um outra com o nome de tb_areas. Na minha tabela tb_sub_areas eu cadastros as sub areas e nela tem um campo id_areas que corresponde ao id (fica na tabela tb_areas) da área na qual minha sub area pertence.
Exemplo:
na minha tb_area eu tenho cadastrado a seguinte area:
id |area |
01|Casa |

na minha tb_sub_area eu tenho cadastrado a seguinte sub area:
id |id_area |sub_area |
01|01 |Quarto |

ou seja, eu tenho uma sub area chamada quarto que pertence a area casa.

Deste jah agradeço!

Hal9000
   - 26 mai 2008

Se entendi bem, vc quer carregar a sub-area depois de ter escolhido uma area então o jeito é carregar o combo sub-area no evento:
´SelectedIndexChanged´ do combo area. Assim toda a vez que vc escolher um valor no combo area, a sub-area será carregada.

Só não esquece de definir a propriedade ´AutoPostBack´ do Combo como true e não não funciona.

Jeferson.rosario
   - 26 mai 2008

Sim .. Entendi.

Mais como eu carrego meu DorpDown List 2 com minha instrução select?

Jeferson.rosario
   - 26 mai 2008

Deixa eu explicar melhor o que eu quero fazer:

Eu tenho um formulário aonde eu faço um cadastro de hardware no meu sistema. Eu tenho banco de dados duas tabelas na qual existe um relacionamento de tabelas. A minha tabela area tem dois campos: ID e Nome_area e na minha tabela sub_area eu tenho tres campos: id, id_area (faz relacionamento com a tabela area) e nome_sub_area. Basicamente é isso:

O que eu quero fazer é o seguinte: Quando o usuario selecionar a minha area no meu primeiro dropdownlist (quando ele faz isso executa uma pesquisa e salva o id da area selecionada na variavel id_area. Obs.: Esta pesquisa está funcionando, eu tenho o id da area selecionada armazenada na variavel) ele carrega o segundo dropdownlist com as sub areas pertencentes a area selecionada (Obs.: Refenciando o id da area na pesquisa sql (SELECT nome_sub_area FROM tb_sub_area where id_area= variavel com o id da area)) . Como que eu faço isso e como eu carrego esta instrução sql no evento ´SelectedIndexChanged´??

Deste jah agradeço

Hal9000
   - 27 mai 2008

Opa Desculpa a demora.... rs
Eu faço assim:

Dim Sql as string
Sql = ´SELECT ID_SUBAREA,NOME FROM SUBAREA WHERE ID_AREA = 1´

Try
Banco = o.ConectaBanco()
Dim Consulta As New OdbcCommand(Sql, Banco)
´------------------------------------------------------------
Combo.DataSource = Consulta.ExecuteReader()
Combo.DataTextField = ´NOME´
Combo.DataValueField = ´ID_SUBAREA´
´------------------------------------------------------------
Combo.DataBind()
Combo.Items.Insert(0, New ListItem(´Selecione um item...´, ´0´))
Catch ex As Exception

Na parte do ´o.ConectaBanco´ eu to usando um objeto meu, mas ai vc troca pelo tipo de conexão que vc usa. assim como o ODBC é que eu to usando nesse projeto especificamente.

Qualquer coisa Posta ai.... [/tagcod]