Jump to content


Photo

DBGrid captar modificación de un determinado campo

sqlite dbgrid boolean

Best Answer Agustin Ortu , 14 October 2016 - 12:35 AM

Revisa en los eventos del dataset o del datasource. Podés usar un OnPost, o un OnChange. O también los eventos del objeto TField

Para que el usuario no pueda cambiar un campo simplemente le pones al field readonly a true Go to the full post


  • Please log in to reply
5 replies to this topic

#1 Gaston

Gaston

    Advanced Member

  • Miembros
  • PipPipPip
  • 109 posts

Posted 14 October 2016 - 12:32 AM

Hola, necesito captar cuando un campo de un DBGrid es modificado y llamar a un procedimiento.

 

La tabla que muestro en la grid tiene 10 columnas, me gustaría saber si es posible hacer que solo 1 columna pueda ser modificada por el usuario.

Concretamente es un tabla de facturas impagas que tiene un campo boolean y mi intención es que cuando le den click a la casilla y se ponga la tilde, llamar a un precedimiento para emitir la orden de pago y luego actualizar un campo de la misma tabla que sería tabla.pagado=tabla.importetotal.

 

Utilizo ZeosConnection, ZQuery y desde luego un DataSource.

 

Si se les ocurre algo, desde ya, gracias.

 

Saludos.


  • 0

#2 Agustin Ortu

Agustin Ortu

    Advanced Member

  • Moderadores
  • PipPipPip
  • 831 posts
  • LocationArgentina

Posted 14 October 2016 - 12:35 AM   Best Answer

Revisa en los eventos del dataset o del datasource. Podés usar un OnPost, o un OnChange. O también los eventos del objeto TField

Para que el usuario no pueda cambiar un campo simplemente le pones al field readonly a true
  • 0

#3 Gaston

Gaston

    Advanced Member

  • Miembros
  • PipPipPip
  • 109 posts

Posted 14 October 2016 - 12:45 AM

Gracias Agustín, con el read only solucioné rápido ese tema y funciona perfecto.

 

El DataSource tiene solo 3 eventos: OnDataChange, OnStateChange y OnUpdateData. Intuyo que debería llamar al procedimiento desde OnDateChange y OnUpdateDate o debería hacerlo desde los 3?


  • 0

#4 Agustin Ortu

Agustin Ortu

    Advanced Member

  • Moderadores
  • PipPipPip
  • 831 posts
  • LocationArgentina

Posted 14 October 2016 - 12:53 AM

Lo más recomendado es leer la documentación:

http://docwiki.embar...ce.OnUpdateData

En ese mismo link en la parte de abajo (see also) están los otros dos eventos
  • 0

#5 Gaston

Gaston

    Advanced Member

  • Miembros
  • PipPipPip
  • 109 posts

Posted 14 October 2016 - 01:20 AM

Lo bueno es que la documentación me sirvió para mejorar otro tema de un dbgrid que se actualiza en base a otro dbgrid, pero para el caso que planteo acá lamentablemente no funcionó con ninguno de los 3 eventos del datasource, en el mejor de los caso me llama dos veces al mismo procedimiento, aclaro que los probé por separado.

Pero ya que estoy orientado, buscaré por los eventos del ZQuery, que son unos cuantos. 

 

Saludos.


  • 1

#6 Gaston

Gaston

    Advanced Member

  • Miembros
  • PipPipPip
  • 109 posts

Posted 14 October 2016 - 06:29 PM

Por si a alguien le sirve, quería comentar que finalmente pude implementarlo con el evento OnEditingDone de la DBGrid.


  • 0





Also tagged with one or more of these keywords: sqlite, dbgrid, boolean

IP.Board spam blocked by CleanTalk.