none
Refrescar datagridview sin cerrar aplicación y validar fechas en C# RRS feed

  • Pregunta

  • Buen día, 

    Trabajando con:
    Visual Studio 2015 windows form C# y Sql Server 2008 r2

    1.- Solicito de su ayuda ya que tengo un formulario que contiene un datagridview y en mi código tengo la consulta para mostrar que facturas ya se encuentran en estatus de timbrado para saber ese estatus debe aparecer con una cadena alfanumérica, eso ya me lo muestra pero cada vez que la factura es timbrada quiero que mi programa en ejecución se refresque mi datagridview pero no lo permite ya que tengo este código en el botón:

    private void tsbtnRefresh_Click(object sender, EventArgs e)
            {
                dgvTimbradas.Refresh();
            }

    Que otra puedo usar para actualizar o refrescar mi datagridview en ejecución.

    2.- Requiero hacer un query que cuando no tenga la hora no me lo muestre en la tabla, hasta que hayan ingresado la hora ya se visualice en la tabla, tenía pensado hacerlo de esta forma pero me he atorado y no se como realizarlo.

    IF EXISTS (SELECT TOP 10 U_GP_TimeStamp [Hora] FROM OINV)		   
    BEGIN 
    -- si existe la hora mostrar la tabla
    END
    IF ELSE ()
    BEGIN 
    -- sino existe la hora no mostrar todavia en la tabla
    END

    Espero me haya dado a entender y me puedan ayudar.

    Gracias.

    jueves, 27 de febrero de 2020 19:22

Respuestas

  • Hola Cashmere

    1) Si el DataGridView está enlazado a datos la única forma es ejecutar de nuevo la consulta (previo haber guardado los cambios) y asignar otra vez el DataSource

    2) Lo de la hora sería un SELECT que pida las filas donde la hora no sea NULL

    SELECT * FROM Tabla

    WHERE campoHora IS NOT NULL

    Saludos

    Pablo

    • Marcado como respuesta Cashmere VM jueves, 27 de febrero de 2020 21:27
    jueves, 27 de febrero de 2020 20:50

Todas las respuestas

  • Hola Cashmere

    1) Si el DataGridView está enlazado a datos la única forma es ejecutar de nuevo la consulta (previo haber guardado los cambios) y asignar otra vez el DataSource

    2) Lo de la hora sería un SELECT que pida las filas donde la hora no sea NULL

    SELECT * FROM Tabla

    WHERE campoHora IS NOT NULL

    Saludos

    Pablo

    • Marcado como respuesta Cashmere VM jueves, 27 de febrero de 2020 21:27
    jueves, 27 de febrero de 2020 20:50
  • Hola, 

    Gracias por responder.

    Sobre la 1 como hago, no entendi mucho eso.

    2.- Si me salio parece, gracias

    Saludos..

    jueves, 27 de febrero de 2020 21:30
  • Si tenes el DataGridView al que le asignaste el DataSource, y luego modificas algo en la tabla (cuando haces el timbrado de la factura), primero tendrías que guardar ese cambio con un UPDATE (o lo que sea necesario), y luego haces lo mismo que hiciste antes para obtener el DataTable o el DataSet que le asignaste al DataSource del DataGridView y se lo asignas otra vez.

    dataGridView1.DataSource = dataTable;  // o lo que sea

    Saludos

    jueves, 27 de febrero de 2020 22:21