Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 19-04-2012
hondaalberto hondaalberto is offline
Miembro
 
Registrado: sep 2010
Ubicación: República Dominicana
Posts: 67
Poder: 14
hondaalberto Va por buen camino
Manejo del Evento On State Change del Datasource Utilizando un Datamodulo

Buenas Tardes amigos

El Motivo de escribirles es porque quiero manejar el estado en el cual estaran disponibles o no los componentes de un formulario de mantenimiento.

El Inconveniente esta en que no se como hacerlo porque el componente TTable y el Datasource estan en en un Datamodule. Cuando tengo los componentes TTable y el Datasource en el mismo formulario lo hago de la Manera Siguiente:

Código Delphi [-]
DBEDIT1.ENABLE:=TPRODUCTOS.STATE IN [DSINSERT];

LO QUE NECESITO SABER COMO HAGO ESO MISMO PERO UTILIZANDO ESTOS COMPONENTES EN UN DATAMODULO.

MUCHAS GRACIAS DE ANTEMANO.
Responder Con Cita
  #2  
Antiguo 19-04-2012
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Es lo mismo solo que mostrando la direccion al datamodule:
Código Delphi [-]
DBEDIT1.ENABLE:= DATAMODULE1.TPRODUCTOS.STATE IN [DSINSERT];
Logicamente tendras que poner el uses de la unidad del datamodule.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #3  
Antiguo 19-04-2012
hondaalberto hondaalberto is offline
Miembro
 
Registrado: sep 2010
Ubicación: República Dominicana
Posts: 67
Poder: 14
hondaalberto Va por buen camino
Muchas Gracias por la respuesta. Aplique la solución que me dieron y me funcionó correctamente pero tube que poner el datasource en el Formulario para que me funcionara ya que lo tenia en el Datamodulo tambien.

El Datasource debe estar siempre en formulario o hay alguna forma de manejarlo desde el Datamodulo? Cuál es la Forma Correcta?
Responder Con Cita
  #4  
Antiguo 19-04-2012
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Todo puede estar en el datamodule.
Es simplemente llamar al componente colocando delante el nombre del datamodule, como te lo explique antes.
Yo particularmente no uso el datamodule mas que para el componente de conexion, los datasource, tables, querys y demas los pongo en su respectivo form ya que me gusta tenerlos a mano, es cuestion de gustos.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #5  
Antiguo 20-04-2012
Avatar de José Luis Garcí
[José Luis Garcí] José Luis Garcí is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Las Palmas de G.C.
Posts: 1.372
Poder: 23
José Luis Garcí Va camino a la fama
Yo te pongo una solucion alternatiba y una nueva
La alternativa
Código Delphi [-]
if DataSource.dataset.State in [Dsinsert,dsedit] then Dbedit1.enable:=true else Dbedit1.enable:=false;

y la nueva, bajata del Ftp del Club el Componente NewPanelDb, instalalo y pon dentro los componentes diversos, conecta el Panel al datasource, pon la propiedades adecuadas, en este caso Action en xEnable y no en xVisible y el InverseAction en false y listo si el dataSource no esta en Insert, Append o edit, no podras acceder alos datos, tiene más posibilidades, de hecho yo suelo usar 3 de estos paneles en mi formulario
PanelBotonora, para todos los botones principales, pongo action en xEnable y Actioninverse en true, por lo que cuando estoy editando, insertando, no puedo acceder a los botones, evitando errores.
Paneldatos, donde pongo todos los componentes para rellenar de la base de datos pongo action en xEnable y Actioninverse en false, con lo que sólo puedo editar datos cuando esta en insert o edit.
Y por ultimo el PanelConfirmar donde stan los botones para confirmar(grabar) y Cancelar, las propiedades son Action en xVisible y ActionInverse en false, solo muestra el panel cuando esta en Inser o edit, para poder grabar.
__________________
Un saludo desde Canarias, "El abuelo Cebolleta"
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
ayuda con evento on change de un combobox josi Varios 4 09-08-2008 17:50:00
bucle entre edit.change y edit.change alremo81 Varios 2 07-04-2008 15:25:39
error con state Jheysson13 Varios 7 15-12-2006 20:00:54
Datamodulo vtdeleon Conexión con bases de datos 3 20-02-2005 13:25:44
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 16:14:27.


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