necesito llenar un combobox a partir de otro. Tengo un combobox de documentos el cual lleno desde una tabla, necesito q al seleccionar un documento otro combobox se llene con las cuentas asociadas al documento q estan en otra tabla.
las tablas tienen relacion mediante los codigos.
asi lleno el primer combo (el de documentos)
Private Sub llecmbDocOrdPag()
'' Llena el combo de Tipo de Comprobante
Dim cDocOrdPag As clsfin_t_ord_pag_par
Dim ds As DataSet
Dim cnxDB As clsConexion
Try
cnxDB = New clsConexion
cnxDB.Login = Me.loginProp
cnxDB.Password = Me.passwordProp
cnxDB.Servidor = Me.servidorProp
cnxDB.BaseDatos = Me.baseDatosProp
cnxDB.ConectarDB()
cDocOrdPag = New clsfin_t_ord_pag_par
cDocOrdPag.conexion = cnxDB
cDocOrdPag.ordenaProp = "coddocordpag"
ds = cDocOrdPag.consultar
Me.cmbDocOrdPag.DataSource = ds.Tables(0)
Me.cmbDocOrdPag.DisplayMember = "nomdocordpag"
Me.cmbDocOrdPag.ValueMember = "coddocordpag" 'llave primaria de ambas tablas(fin_t_ord_pag_par y fin_t_ord_pag_par_det)
ds = Nothing
cDocOrdPag = Nothing
cnxDB.DesconectarDB()
Catch ex As System.Exception
Dim basErrores As New basErroresv100
basErrores.txtModulo.Text = Me.Name
basErrores.txtError.Text = "Error Cargando Combo de Documentos"
basErrores.txtDetalle.Text = ex.Message
basErrores.ShowDialog()
Me.Close()
End Try
End Sub
ahora para llenar el otro hago esto en el evento
Private Sub cmbdocordpag_selectedindexchanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles cmbDocOrdPag.SelectedIndexChanged
'if xentmensaje = true then
Dim ds As DataSet
Dim cradordpag As clsfin_t_ord_pag_par_det
Dim cnxdb As clsConexion
'' set de la conexion
Try
cnxdb = New clsConexion
cnxdb.login = Me.loginprop
cnxdb.password = Me.passwordprop
cnxdb.servidor = Me.servidorprop
cnxdb.basedatos = Me.basedatosprop
''crea la conexion
cnxdb.conectardb()
cradordpag = New clsfin_t_ord_pag_par_det
cradordpag.conexion = cnxdb
'llenar el combo de cuentas
If Me.cmbdocordpag.selectedindex <> -1 Then
cradordpag.coddocordpagprop = (Me.cmbdocordpag.selectedvalue)
End If
ds = cradordpag.consultarllave
'me.txtmensaje.text = cstr(dsmensajes.tables(0).rows(0)("mensaje"))
Me.cmbctacontable.datasource = ds.tables(0)
Me.cmbctacontable.displaymember = "codnivel"
Me.cmbctacontable.valuemember = "codnivel"
ds = Nothing
cnxdb.desconectardb()
Catch ex As System.Exception
Dim baserrores As New basErroresv100
baserrores.txtmodulo.text = Me.name
baserrores.txterror.text = "error llenando el combo cuenta contable."
baserrores.txtdetalle.text = ex.message
baserrores.showdialog()
Me.close()
End Try
'end if
End Sub
End Class
llamo a la rutina llecmbDocOrdPag() en el load del form. Al correr ni muestra la ventana y me sale este error: "la conversion del tipo datarowview al tipo integer no es valida". Me ayudan porfa!
