Ayuda En apertura y Cierre de Caja
Publicado por Belen (33 intervenciones) el 04/11/2016 20:14:47
Hola buenas tardes tengo una pequeña aplicacion desarrollada con delphi 2010 y mysql 5 y componentes query de zeos
y estoy trabajando con apertura y cierre de caja ambos con 2 formularios diferentes mi tabla sql de "Caja"
tiene la siguiente estructura
SQL Tabla Caja
idcaja
monto_inicio
monto_cierre
fecha_cierre
hora_cierre
fecha_apertura
hora_apertura
total
Bien en el primer formulario de "Apertura" al llamarlo del menu principal uso el siguiente codigo
En este esta formado por un TDateTimerPicker que uso para mostrar la fecha y hora actual (esta es sacada de otro query que trabaja con la fecha del sistema
y un tEdit para ingresar el "monto_inicio"
al darle el boton aceptar en este formulario tengo el siguiente codigo
Hasta aqui todo perfecto la apertura me realiza todo bien el tema es ahora en el cierre de la caja
Luego para realizar el cierre de la misma al ingresar desde el menu principal al cierre uso el siguiente codigo similar al primero
Este Formulario Nuevo tambien cuenta con las mismo que el anterior con un Tedit y un TDateTimerPicker
Al darle el boton aceptar en este formulario uso el siguiente codigo
es aqui el problema que cuando realizo esta operacion en vez de editarme el registro que me trajo la consulta al abrir el formulario me crea un nuevo formulario solo con los datos monto_cierre, fecha y hora de cierre y los demas null. Como puedo hacer para que se me edite ese registro especifico que yo busque al principio al abrir el formulario ? alguna ayuda desde ya muchas gracias
y estoy trabajando con apertura y cierre de caja ambos con 2 formularios diferentes mi tabla sql de "Caja"
tiene la siguiente estructura
SQL Tabla Caja
idcaja
monto_inicio
monto_cierre
fecha_cierre
hora_cierre
fecha_apertura
hora_apertura
total
Bien en el primer formulario de "Apertura" al llamarlo del menu principal uso el siguiente codigo
1
2
3
4
5
6
7
8
9
10
11
12
caja.close;
caja.SQL.clear;
caja.SQL.ADD('select * from caja');
caja.SQL.ADD('where fecha_cierre= "2000-01-01"');
caja.Open;
if not Caja.IsEmpty then
begin
showmessage('Ya existe una caja abierta');
end else
begin
fApertura.Showmodal
end;
En este esta formado por un TDateTimerPicker que uso para mostrar la fecha y hora actual (esta es sacada de otro query que trabaja con la fecha del sistema
y un tEdit para ingresar el "monto_inicio"
al darle el boton aceptar en este formulario tengo el siguiente codigo
1
2
3
4
5
6
7
8
9
Caja.Insert;
Caja['fecha_apertura']:= fecha['fecha'];
Caja['hora_apertura']:= fecha['hora'];
Caja['fecha_cierre']:= '2000-01-01';
Caja['hora_cierre']:= '00:00:00';
Caja['monto_inicio']:= Edit1.Text;
Caja['monto_cierre']:='0';
Caja['total']:= Caja['total'] +Edit1.Text;
Caja.Post
Hasta aqui todo perfecto la apertura me realiza todo bien el tema es ahora en el cierre de la caja
Luego para realizar el cierre de la misma al ingresar desde el menu principal al cierre uso el siguiente codigo similar al primero
1
2
3
4
5
6
7
8
9
10
11
12
caja.close;
caja.SQL.clear;
caja.SQL.ADD('select * from caja');
caja.SQL.ADD('where fecha_cierre= "2000-01-01"');
caja.Open;
if not Caja.IsEmpty then
begin
fCierre.Showmodal;
end else
begin
showmessage('No existe una caja abierta');
end;
Este Formulario Nuevo tambien cuenta con las mismo que el anterior con un Tedit y un TDateTimerPicker
Al darle el boton aceptar en este formulario uso el siguiente codigo
1
2
3
4
5
6
7
Begin
Caja.Sql.Add('update into caja(monto_cierre,fecha_cierre,hora_cierre') values (:monto,:fecha,:hora)):
Caja.ParamByName('monto').Value:= Edit1.Text;
Caja.ParamByName('fecha').Value:= fecha['fecha'];
Caja.ParamByName('hora').Value:= fecha['hora'];
Caja.ExecSQL;
end;
es aqui el problema que cuando realizo esta operacion en vez de editarme el registro que me trajo la consulta al abrir el formulario me crea un nuevo formulario solo con los datos monto_cierre, fecha y hora de cierre y los demas null. Como puedo hacer para que se me edite ese registro especifico que yo busque al principio al abrir el formulario ? alguna ayuda desde ya muchas gracias
Valora esta pregunta
0