Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Firebird e Interbase (https://www.clubdelphi.com/foros/forumdisplay.php?f=19)
-   -   No me acepta los cambios en una tabla como detalle en IBx.... (https://www.clubdelphi.com/foros/showthread.php?t=28017)

uper 07-12-2005 00:19:54

No me acepta los cambios en una tabla como detalle en IBx....
 
saludos

Agradeceria que explicacion me puedieran decir ya que el problema que se me presenta es que tengo una relacion maestro-y 2 detalles, y uso los Ibx.

No se por que no me guarda los cambios en los detalles, tengo los componentenes Ibdataset, bueno hice una aplicacion a parte del proyecto que estoy realizando, es decir un nuevo proyecto con lo mismo maestro-y 2 detalles.
Y bien ya puede agregar registros y me acepta los cambios y que paso... volvi a regresar al programa que estoy llevando y sigue en lo mismo no me acepta los cambios en los detalles.
Que pasa por que si realizo otro proyecto si me actualiza los cambios ?
Son los componentes !. Incluso como es la misma base de datos copie las mismas sentencias sql y en los eventos para actualizar los datos...

Es desesperante que todo vaya bien y solo hasta este momento no me quiera guardar los datos en los detalles.
Gracias club.

Alguien les ha pasado algo semejante,

Casimiro Noteví 07-12-2005 13:59:16

Creo que no explicas bien el problema, cuéntanos exactamente cómo lo haces, sentencias, enlaces, componentes, etc. porque así es complicadillo darte una solución, se me ocurren muchas cosas, pero si no especificas... :confused:

uper 07-12-2005 15:50:17

saludos

Para hacer la relacion maestro detalle lo que hago es por medio de los ibdataset, en el maestro coloco las sentencias sql de insert, refresh, update, delete, y en los detalles en la prop. datasource del ibdataset esta relacionada el Componente Tdatasource=dsPedidos ---> del componentes Ibpedidos
Y coloco las sentencias sql en el detalle
Código:

en select =select * from Where ID_detalle=:ID_pedido -->campo del Id pedido.
en refresh=select * from Where ID_detalle=:ID_detalle and Id_renglon=:Id_renglon
Update detalle set ID_detalle=:ID_detalle, Id_renglon=:Id_renglon, Precio=:Precio, cantidad=:cantidad, Material_Id=Material_Id where ID_detalle=:OLD_ID_detalle and Id_renglon=:OLD_Id_renglon
y insert detalle(campos) values(:ID_detalle,:Id_renglon)
Delete...

Y el codigo que uso es para hacer el calculo del importe de precio*cantidad en onCalcFields, y en afterPost y afterDelete lo que hago es un coclo con while not detalle do para hacer la sumatoria de los registros de importe para obtener el sutotal.

Y actualizo en este evento
Código PHP:

If Detalle.state[dsInsertdseditthen begin
detalle
.transacction.commitRetaing;
detalle.refresh;
end

No me guarda los cambios en el detalle, los hace temporalmente pero al actualizar o bien moverme de registro del detalle desaparecen vuleven a sus valores que tenia originalmente,
Como dije ya hice una aplicacion aparte, nada mas de esto que me ha pasado (maestro-detalle) y ahi si me acepta los cambio y he agregado regsitros y cambios y ahora por que en mi aplicacion que estoy llevando no quiere hacer estos cambio pareciera que no le agregado senetencias sql en le updatesql.

Gracias


La franja horaria es GMT +2. Ahora son las 18:26:44.

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