Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 19-03-2009
Kenobi Kenobi is offline
Miembro
 
Registrado: mar 2007
Posts: 191
Poder: 18
Kenobi Va por buen camino
Duda con state de tabla

Hola amigos, tiempo sin venir por aca a molestar...
tengo una duda con esto de los states o mejor dicho quiero hacer algo y no se bien como ...procedo a explicar

en mi sistema tengo definido el comportamiento de los botones segun el estado de la tabla,

si esta en dsBrowse puedo modificar, eliminar, no cancelar ni guardar porque para que si estoy en modo de exploracion... .bien tengo un procedure que investiga el state de la tabla para habilitar (y posibilitar) hacer las cosas basicas que se hacen con los registros (editar, agregar,modificar,eliminar,cancelar) ahora bien la duda es la siguientel, en el guardar tengo algo asi

Código Delphi [-]
if tabla.state in [dsEdit,dsInsert] then tabla.post
esto funciona, sin embargo muchas veces a pesar de que activamos el edit en una tabla, la verdad no hicimos cambios en el registro y despreocupadamente le damos guardar y en efecto guarda (lo mismo que teniamos) pues bien me gustaria que el post solo se ejecutara si en efecto
tabla.edit y modifique algo....

digo yo si no modifique nada para que voy a guardar ...lo que estoy buscando un state que me si se modifico algo claro esta que esto se puede hacer por otra via pero la idea es la menor cantidad de codigo (no por flojera mas bien eficiencia del codigo)

Gracias espero que se entienda la pregunta....
Responder Con Cita
  #2  
Antiguo 19-03-2009
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 29
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
¡Hola!

Para ello puedes agregar la propiedad Modified:
Código Delphi [-]
If (Tabla.State In dsEditModes) And Tabla.Modified Then
  Tabla.Post;

Aunque esto no te salvará de los casos donde a un campo se le asigne el mismo valor que ya tenía (naturaleza del TDataSet nativo).

Saludos.

Al González.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
error con state Jheysson13 Varios 7 15-12-2006 20:00:54
Convertir State a tipo String Marcela Varios 8 05-10-2006 20:00:38
Query1.State = dsInactive bbjb Varios 4 26-09-2006 18:26:22
problema con table.state JoseQ Conexión con bases de datos 7 23-07-2004 11:03:16
State dsbrowse en un evento calcfields fcobanda Conexión con bases de datos 3 02-07-2003 22:14:05


La franja horaria es GMT +2. Ahora son las 14:12:58.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi