jbuilder 0 Denunciar post Postado Setembro 2, 2005 beleza???Minha ideia e oq tem q ser feito é a seguinte.Tenho que cadastra "N" Equipamentos para cada usuário, entaum no cadastro o administrador do sistema irá cadastrar o User e os "N" Equipamentos...Cada equipamento pode ser do tipo "Fax, Zap, Radio, Digital ou Analogico", de acordo com cada um desses tipos devo gravar no banco de dados somente o tipo dos "N" equipamento que ele escolheu.O codigo segue-se a baixo... Private Sub teste1() Dim arrIDs As Array = Split(Session("Eqt"), "-") Dim Campo As TextBox Dim i As Integer Dim dbAbrirBD As New AbrirBD Dim strQuery As String strQuery = "INSERT INTO tEqtUsuario(IDUsuario, IDEquipamento, FaxUsu, CelUsu, ZapUsu, RadUsu, RamUsu)" strQuery += " VALUES(@pIDUsuario, @pIDEquipamento, @pFaxUsu, @pCelUsu, @pZapUsu, @pRadUsu, @pRamUsu)" Dim DB As New SqlConnection(dbAbrirBD.Abrir) For i = 0 To (UBound(arrIDs) - 1) Dim RecSet As New SqlCommand(strQuery, DB) Dim prIDUsuario As New SqlParameter("@pIDUsuario", SqlDbType.Int) prIDUsuario.Value = LerCodigo() RecSet.Parameters.Add(prIDUsuario) Dim prIDEquipamento As New SqlParameter("@pIDEquipamento", SqlDbType.Int) prIDEquipamento.Value = arrIDs(i) RecSet.Parameters.Add(prIDEquipamento) Dim prFaxUsu As New SqlParameter("@pFaxUsu", SqlDbType.VarChar, 13) Dim prCelUsu As New SqlParameter("@pCelUsu", SqlDbType.VarChar, 13) Dim prZapUsu As New SqlParameter("@pZapUsu", SqlDbType.VarChar, 13) Dim prRadUsu As New SqlParameter("@pRadUsu", SqlDbType.VarChar, 4) Dim prRamUsu As New SqlParameter("@pRamUsu", SqlDbType.VarChar, 4) Campo = FindControl("Valor" & arrIDs(i)) If TipoEqt(arrIDs(i)) = "Fax" Then prFaxUsu.Value = Campo.Text ElseIf TipoEqt(arrIDs(i)) = "Celular" Then prCelUsu.Value = Campo.Text ElseIf TipoEqt(arrIDs(i)) = "Zap" Then prZapUsu.Value = Campo.Text ElseIf TipoEqt(arrIDs(i)) = "Radio" Then prRadUsu.Value = Campo.Text Else prRamUsu.Value = Campo.Text End If RecSet.Parameters.Add(prFaxUsu) RecSet.Parameters.Add(prCelUsu) RecSet.Parameters.Add(prZapUsu) RecSet.Parameters.Add(prRadUsu) RecSet.Parameters.Add(prRamUsu) DB.Open() RecSet.ExecuteNonQuery() DB.Close() Next End Subdeu para enteder minha ideia?OBS: Esse código está gerando o seguinte erro:Ele diz que eu devo declarar a variavel @pFaxUsu. Pq?Fico no aguardo.GratoAbraços Compartilhar este post Link para o post Compartilhar em outros sites
N3G4T1V3 0 Denunciar post Postado Setembro 2, 2005 Tenta isso:If TipoEqt(arrIDs(i)) = "Fax" Then prFaxUsu.Value = Campo.Text prCelUsu.Value = "" prZapUsu.Value = "" prRadUsu.Value = "" prRamUsu.Value = "" ElseIf TipoEqt(arrIDs(i)) = "Celular" Then prFaxUsu.Value = "" prCelUsu.Value = Campo.Text prZapUsu.Value = "" prRadUsu.Value = "" prRamUsu.Value = "" ElseIf TipoEqt(arrIDs(i)) = "Zap" Then prFaxUsu.Value = "" prCelUsu.Value = "" prZapUsu.Value = Campo.Text prRadUsu.Value = "" prRamUsu.Value = "" ElseIf TipoEqt(arrIDs(i)) = "Radio" Then prFaxUsu.Value = "" prCelUsu.Value = "" prZapUsu.Value = "" prRadUsu.Value = Campo.Text prRamUsu.Value = "" Else prFaxUsu.Value = "" prCelUsu.Value = "" prZapUsu.Value = "" prRadUsu.Value = "" prRamUsu.Value = Campo.Text End Ifmas sei la a sua lógica é meio estranha....eu faria de outro jeito teria a tabela TipoEquipamento e nela teria os campos ID e Nomee na outra tabela teria um campo Equipamento, onde seria gravado o id do equipamento que a pessoa escolheu e não vários campos.. Compartilhar este post Link para o post Compartilhar em outros sites