Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Delphi para la web
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 16-11-2012
Nicolas_2011 Nicolas_2011 is offline
Miembro
NULL
 
Registrado: sep 2011
Posts: 59
Poder: 13
Nicolas_2011 Va por buen camino
Manipular objetos desde otro objeto en otro form

Buen dia foreros mi pregunta es la siguiente(con algunos detalles). tengo forms en cuestion uno de venta otro de compras, otro de caja. En el form de caja tengo un boton que intento funcione como una apertura de caja... dicho boton quiero que. ademas de postear la fecha y el usuario que esta abriendo la caja(creo que lo tengo resuelto.)
Si el boton apertura de caja no se presiono que tanto el form compra como el de ventas. se encuentren inaccesibles o bien todos sus objetos esten desabilitados(en otras palabras q no se puedan realizar ni compras ni ventas), hasta q se presione

Ahora muy similar seria la accion del otro boton 'cierre de caja' ubicado tambien en el form caja. al presionarlo que se desabiliten nuevamente ambos forms hasta q se lo presione..

espero haberme echo entender. Necesito de su ayuda. muchas gracias.
Responder Con Cita
  #2  
Antiguo 16-11-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Nicolas.

No se bién el escenario en que se presenta, es decir, desde donde son abiertos los forms, si los forms compras y ventas dependen de caja, si ambos estarán abiertos, si...

Form Caja:
Código Delphi [-]
...
implementation

uses UnitCpra, // frmCompra
     UnitVta; // frmVenta

procedure FormsOnOff(F1,F2: TForm; Active: Boolean);
begin
  if Assigned(F1) then F1.Enabled:= Active;
  if Assigned(F2) then F2.Enabled:= Active;
end;

procedure TfrmCaja.FormCreate(Sender: TObject);
begin
  FormsOnOff(frmCompra, frmVenta, False);
end;

...

procedure TfrmCaja.btnAperturaCajaClick(Sender: TObject);
begin
   FormsOnOff(frmCompra, frmVenta, True);
end;

procedure TfrmCaja.btnCierreCajaClick(Sender: TObject);
begin
  FormsOnOff(frmCompra, frmVenta, False);
end;

procedure TfrmCaja.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
  if Assigned(frmCompra) and Assigned(frmVenta) then
    CanClose := frmCompra.Enabled and frmVenta.Enabled
  else if Assigned(frmCompra) and not Assigned(frmVenta) then
    CanClose := frmcompra.Enabled
  else if not Assigned(frmCompra) and not Assigned(frmVenta) then
    CanClose := frmVenta.Enabled;
end;
Para lo cuál frmCaja debe incluir las unidades de los forms compra y venta.

El motivo de tanta comprobación es por que desconozco si están creados ambos o puede estar creado solo uno de ellos. La razón del evento OnCloseQuery, es que no sé si podrías volver a llamar a frmCaja para habilitar los anteriores, lo que los dejaría desactivados. Si frmCaja se puede llamar desde otro punto se podría quitar.

Fijate si de este modo te resulta, si no nos comentás con más detalle.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #3  
Antiguo 16-11-2012
Nicolas_2011 Nicolas_2011 is offline
Miembro
NULL
 
Registrado: sep 2011
Posts: 59
Poder: 13
Nicolas_2011 Va por buen camino
Cita:
Empezado por ecfisa Ver Mensaje
Hola Nicolas.

No se bién el escenario en que se presenta, es decir, desde donde son abiertos los forms, si los forms compras y ventas dependen de caja, si ambos estarán abiertos, si...

Form Caja:
Código Delphi [-]
...
implementation

uses UnitCpra, // frmCompra
     UnitVta; // frmVenta

procedure FormsOnOff(F1,F2: TForm; Active: Boolean);
begin
  if Assigned(F1) then F1.Enabled:= Active;
  if Assigned(F2) then F2.Enabled:= Active;
end;

procedure TfrmCaja.FormCreate(Sender: TObject);
begin
  FormsOnOff(frmCompra, frmVenta, False);
end;

...

procedure TfrmCaja.btnAperturaCajaClick(Sender: TObject);
begin
   FormsOnOff(frmCompra, frmVenta, True);
end;

procedure TfrmCaja.btnCierreCajaClick(Sender: TObject);
begin
  FormsOnOff(frmCompra, frmVenta, False);
end;

procedure TfrmCaja.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
  if Assigned(frmCompra) and Assigned(frmVenta) then
    CanClose := frmCompra.Enabled and frmVenta.Enabled
  else if Assigned(frmCompra) and not Assigned(frmVenta) then
    CanClose := frmcompra.Enabled
  else if not Assigned(frmCompra) and not Assigned(frmVenta) then
    CanClose := frmVenta.Enabled;
end;
Para lo cuál frmCaja debe incluir las unidades de los forms compra y venta.

El motivo de tanta comprobación es por que desconozco si están creados ambos o puede estar creado solo uno de ellos. La razón del evento OnCloseQuery, es que no sé si podrías volver a llamar a frmCaja para habilitar los anteriores, lo que los dejaría desactivados. Si frmCaja se puede llamar desde otro punto se podría quitar.

Fijate si de este modo te resulta, si no nos comentás con más detalle.

Saludos.
Hola!, efectivamente tienes razon tendria q haber aclarado eso tambien los 3 formularios se abren desde un form PRINCIPAL y solo puede estar abierto uno a la vez.. funcionara lo q me propusiste de tal forma?
Responder Con Cita
  #4  
Antiguo 16-11-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Empezado por Nicolas_2011 Ver Mensaje
Hola!, efectivamente tienes razon tendria q haber aclarado eso tambien los 3 formularios se abren desde un form PRINCIPAL y solo puede estar abierto uno a la vez.. funcionara lo q me propusiste de tal forma?
Hola.

En ese código no estoy evaluando que sólo esté abierto uno a la vez, eso sería taréa del form principal. Pero de todos modos funcionará bién, ya que desde el form 'caja' se contempla la posibilidad de que este creado compras, ventas o ambos.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #5  
Antiguo 16-11-2012
Nicolas_2011 Nicolas_2011 is offline
Miembro
NULL
 
Registrado: sep 2011
Posts: 59
Poder: 13
Nicolas_2011 Va por buen camino
Cita:
Empezado por ecfisa Ver Mensaje
Hola.

En ese código no estoy evaluando que sólo esté abierto uno a la vez, eso sería taréa del form principal. Pero de todos modos funcionará bién, ya que desde el form 'caja' se contempla la posibilidad de que este creado compras, ventas o ambos.

Saludos.

Amigo me esta dando un error de tipos no es aplicable, exactamente aqui.

Código Delphi [-]
procedure TFcaja.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
if Assigned(Ffacturacompra) and Assigned(Fventas) then
    CanClose := Ffacturacompra and Fventas.Enabled
  {error}else if Assigned(Ffacturacompra) and not Assigned(fventas) then
    CanClose := Ffacturacompra.Enabled
  else if not Assigned(Ffacturacompra) and not Assigned(fVentas) then
    CanClose := Fventas.Enabled;
end;
Responder Con Cita
  #6  
Antiguo 16-11-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Empezado por Nicolas_2011 Ver Mensaje
Amigo me esta dando un error de tipos no es aplicable, exactamente aqui.

Código Delphi [-]
procedure TFcaja.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
if Assigned(Ffacturacompra) and Assigned(Fventas) then
    CanClose := Ffacturacompra and Fventas.Enabled
  {error}else if Assigned(Ffacturacompra) and not Assigned(fventas) then
    CanClose := Ffacturacompra.Enabled
  else if not Assigned(Ffacturacompra) and not Assigned(fVentas) then
    CanClose := Fventas.Enabled;
end;
Hola Nicolas.

Es que no has copiado correctamente el código que te puse, tendría que ser:
Código Delphi [-]
  if Assigned(Ffacturacompra) and Assigned(Fventas) then
    CanClose := Ffacturacompra.Enabled and Fventas.Enabled  
  else if Assigned(Ffacturacompra) and not Assigned(fventas) then
    CanClose := Ffacturacompra.Enabled
  else if not Assigned(Ffacturacompra) and not Assigned(fVentas) then
    CanClose := Fventas.Enabled;

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 16-11-2012 a las 19:06:39.
Responder Con Cita
  #7  
Antiguo 17-11-2012
Nicolas_2011 Nicolas_2011 is offline
Miembro
NULL
 
Registrado: sep 2011
Posts: 59
Poder: 13
Nicolas_2011 Va por buen camino
Cita:
Empezado por ecfisa Ver Mensaje
Hola Nicolas.

Es que no has copiado correctamente el código que te puse, tendría que ser:
Código Delphi [-]
  if Assigned(Ffacturacompra) and Assigned(Fventas) then
    CanClose := Ffacturacompra.Enabled and Fventas.Enabled  
  else if Assigned(Ffacturacompra) and not Assigned(fventas) then
    CanClose := Ffacturacompra.Enabled
  else if not Assigned(Ffacturacompra) and not Assigned(fVentas) then
    CanClose := Fventas.Enabled;

Saludos.
Buenas amigo, ya corregido el problema de falta de codigo. al ejecutar no dio problemas ahora.. apenas ejecuto, lo primero q hago es ir a los forms de compra y venta y todo sigue igual sigue dejando tanto comprar como vender.. otro problema cuando voy al form caja selecciono el usuario y la fecha presiono el boton apertura de caja. cierro el formulario y da error de violacion de acceso al modulo drugestore.exe
Responder Con Cita
  #8  
Antiguo 17-11-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Empezado por Nicolas_2011 Ver Mensaje
Buenas amigo, ya corregido el problema de falta de codigo. al ejecutar no dio problemas ahora.. apenas ejecuto, lo primero q hago es ir a los forms de compra y venta y todo sigue igual sigue dejando tanto comprar como vender.. otro problema cuando voy al form caja selecciono el usuario y la fecha presiono el boton apertura de caja. cierro el formulario y da error de violacion de acceso al modulo drugestore.exe
Hola.

La verdad es que no sé como estás haciendo la creación ni el llamado de los forms, así que te adjunto un ejemplo básico como para que puedas revisarlo y decirme si es lo que estas buscando.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 29-12-2012 a las 07:20:51.
Responder Con Cita
  #9  
Antiguo 17-11-2012
Nicolas_2011 Nicolas_2011 is offline
Miembro
NULL
 
Registrado: sep 2011
Posts: 59
Poder: 13
Nicolas_2011 Va por buen camino
Cita:
Empezado por ecfisa Ver Mensaje
Hola.

La verdad es que no sé como estás haciendo la creación ni el llamado de los forms, así que te adjunto un ejemplo básico como para que puedas revisarlo y decirme si es lo que estas buscando.

Saludos.
Hola! y Muchas gracias x tu tiempo ya me pongo a interpretarlo a tu ejemplo. suerte!
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Acceso a objetos/propiedades de otro Form adrall OOP 6 30-07-2011 11:15:24
llamar al evento click de un boton q se encuentra en un form desde otro form TURBOIGOR OOP 6 02-12-2008 15:50:16
Crear objetos dentro de otro objeto. Nieto OOP 5 29-11-2007 00:09:12
cerrar form desde otro anubis Varios 6 18-04-2007 07:11:57
Imposible hacer visible un form desde otro form SMTZ .NET 13 16-01-2006 22:41:08


La franja horaria es GMT +2. Ahora son las 12:27: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