none
CARGAR DATAGRIDVIEW SEGUN COMBOBOX SELECCIONADO RRS feed

  • Pregunta

  • HOLA.

    Quisiera que me ayudan tengo un datagridview donde se carga información de tipos de documentos, hasta aquí todo bien pero lo que quiero hacer es que cuando seleccione un item en un combobox  me filtre la información, les dejo mi código a ver si pueden ayudarme y también una imagen de la ventana;

    '============================
        '     CARGA DATAGRIDVIEW
        '============================
        Private Sub CargaCompra()
            'saltarselectedindex = False
            dgvCompra.BackgroundColor = Color.White
    
            dgvCompra.Rows.Clear()
            'ComboTipoCampo.Tag = ComboTipoCampo.SelectedIndex
            'ComboConcepto.Tag = ComboConcepto.SelectedIndex
            gridok = False
            LblInfo.Text = "Cargando..."
            Bar1.Refresh()
            Dim sql As String = ""
            Dim conn As SqlConnection
            Dim sqlDA As SqlDataAdapter
            conn = New SqlConnection(StrCon)
            conn.Open()
            Dim dtconceptos, dtvalores, dtfichas As System.Data.DataTable
            dtconceptos = New System.Data.DataTable
            dtvalores = New System.Data.DataTable
            dtfichas = New System.Data.DataTable
            sqlDA = New SqlDataAdapter(sql, conn)
    
            sql = " SELECT RTRIM(En.rut) +' - '+ RTRIM(Cta.digcte) AS RutDV, En.tipo_documento, En.num_documento AS Folio"
            sql += ", Case ttc WHEN 0 THEN 'TODOS' WHEN 1 THEN 'DEL GIRO' WHEN 2 THEN 'SUPERMERCADOS O COMERCIOS SIMILARES'WHEN 3 THEN 'ADQUISICIÓN DE BIENES RAÍCES' WHEN 4 THEN 'ACTIVO FIJO'"
            sql += " WHEN 5 THEN 'IVA USO COMUN'WHEN 6 THEN 'SIN DERECHO A CRÉDITO' WHEN 7 THEN 'NO CORRESPONDE INCLUIR' END AS Tipo_Tran_Compra, En.imp_especifico"
            sql += " FROM cyvEncabezado AS En INNER JOIN conCtacte AS Cta ON En.rut = Cta.rutcte "
    
    
            'If ComboMes.SelectedIndex > 1 AndAlso IsNumeric(ComboMes.SelectedValue) Then ' MESES
            '    sql += " SELECT CASE  mes WHEN 1 THEN 'ENERO' WHEN 2 THEN 'FEBRERO' WHEN 3 THEN 'MARZO' WHEN 4 THEN 'ABRIL' WHEN 5 THEN 'MAYO'"
            '    sql += "WHEN 6 THEN 'JUNIO' WHEN 7 THEN 'JULIO'WHEN 8 THEN 'AGOSTO'WHEN 9 THEN 'SEPTIEMBRE'WHEN 10 THEN 'OCTUBRE'WHEN 11 THEN 'NOVIEMBRE'"
            '    sql += "WHEN 12 THEN 'DICIEMBRE'"
            '    sql += "END AS mes"
            '    sql += " FROM Meses"
            '    'sql = "  SELECT   ficha, idConcepto, valor"
            '    'sql += " FROM       remMovimientosHD"
            '    'sql += " WHERE periodo=" & parametros.periodo
            '    'sql += " AND mes=" & parametros.mes
            '    'sql += " AND tipoConcepto = 'H'"
            '    'sql += " AND idconcepto = " & ComboConcepto.SelectedValue
            '    'sql += " AND ficha BETWEEN " & TextBoxDesde.Value & " AND " & TextBoxHasta.Value
            '    'sql += " AND valor <> 0"
            'End If
    
            If ComboTTC.SelectedValue > 0 Then
                sql += "WHERE ttc =" & ComboTTC.SelectedValue
            End If
         
            sqlDA.SelectCommand.CommandText = sql
            sqlDA.Fill(dtfichas)
     
            If sql = "" Then
    
            Else
                sqlDA.SelectCommand.CommandText = sql
                sqlDA.Fill(dtvalores)
            End If
    
            Dim expression As String
            For Each filaficha As DataRow In dtfichas.Rows
                Dim nrow As DataGridViewRow
                nrow = dgvCompra.Rows(dgvCompra.Rows.Add)
                nrow.Cells(ColumnRut.Index).Value = filaficha("RutDV")
                nrow.Cells(ColumnCodTipoDoc.Index).Value = filaficha("tipo_documento")
                nrow.Cells(ColumnFolioDoc.Index).Value = filaficha("Folio")
                nrow.Cells(ColumnTipoTranCompra.Index).Value = filaficha("Tipo_Tran_Compra")
                nrow.Cells(ColumnCodIVAeImp.Index).Value = filaficha("imp_especifico")
            Next
            conn.Close()
            Try
                gridok = True
                'cambios = False
            Catch ex As Exception
                MessageBox.Show(ex.Message)
            Finally
                LblInfo.Text = ""
            End Try
            'montototal()
            'montovariacion()
            'montoreajuste()
        End Sub

    IMAGEN 

    Gracias..

    miércoles, 20 de diciembre de 2017 14:35

Respuestas