Conflicto de actualización de vistas.

05/08/2003 - 16:55 por José Luis | Informe spam
Hola a todos,

tengo un problema un poco extraño que espero que alguien me lo pueda
explicar y sobre todo ayudar a solucionar el problema es el siguiente:

Yo tengo dos tabla "tickets" y "linea_tickets". He creado un formulario en
donde se pueden dar de alta tickets y luego sus lineas de ticket. Para
realizar este formulario utilizo una vista de la tabla tickets y una vista
paramétrizada de la tabla linea_tickets para ver sólo las lineas de ticket
que corresponde al ticket seleccionado.

También hay que mencionar que cada vez que grabo una linea de ticket
recalculo el total del ticket y lo actualizo. Pero es aquí donde viene el
problema ya que al crear un ticket, cuando introduzco una linea de ticket al
ir a modificar el total del ticket me salta el siguiente mensaje: "Changes
have NOT saved 1585, Conflicto de actualización". Pero lo curioso del caso
es que si salgo del formulario y lo ejecuto otra vez al crear una linea de
ticket sobre un ticket ya creado no me salta ningún error. Alguien me podría
explicar a que se debe esto?

Gracias por anticipado,

Un saludo,
José Luis.

Preguntas similare

Leer las respuestas

#1 Carlos Garcia Hermida
05/08/2003 - 18:12 | Informe spam
No sé si lo he comprendido pero por lo que cuentas tiene que existir algun
momento en el que al realizar el calculo del total del ticket, se esten
realizando varios cambios a la vez. Mira si la instruccion tableupdate que
tienes tenga los dos primeros parametros a .t. de manera que sobreescriba
los cambios realizados paralelamente.

Espero haberte ayudado.
Respuesta Responder a este mensaje
#2 José Luis
05/08/2003 - 19:02 | Informe spam
Hola Carlos,

he estado probando lo que me has indicado y efectivamente si hago :

tableupdate(.t.,.t.,'v_fua_tickets')

después de realizar las modificaciones me las guarda sin darme error. Pero
corrigeme si me equivoco con esto en parte estoy solucionando el error y en
parte estoy omitiéndolo no? es decir el error sigue lo único que hago es que
guardo todos los cambios que pudieran haber, esto no podría ser peligroso?



"Carlos Garcia Hermida" escribió en el mensaje
news:
No sé si lo he comprendido pero por lo que cuentas tiene que existir algun
momento en el que al realizar el calculo del total del ticket, se esten
realizando varios cambios a la vez. Mira si la instruccion tableupdate que
tienes tenga los dos primeros parametros a .t. de manera que sobreescriba
los cambios realizados paralelamente.

Espero haberte ayudado.


Respuesta Responder a este mensaje
#3 Esparta Palma
05/08/2003 - 19:23 | Informe spam
Efectivamente puede ser peligroso, los conflictos de actualización son
para tomarlos en cuenta, no para ignorarlos.
Tu problema reside en la forma en que definiste tus campos llaves, cual
es la definición de tus vistas, campos llave?


Apoya a Visual FoxPro usándolo legalmente
ž,ø€º°`°º€ø,žž,ø€º°`°º€ø,žž,ø€º°`°º€ø,žž,ø€º°`°º
Espartaco Palma Martínez
SysOp PortalFox ( http://www.PortalFox.com )
email:
Acapulco, Guerrero. México


José Luis wrote:

Hola Carlos,

he estado probando lo que me has indicado y efectivamente si hago :

tableupdate(.t.,.t.,'v_fua_tickets')

después de realizar las modificaciones me las guarda sin darme error. Pero
corrigeme si me equivoco con esto en parte estoy solucionando el error y en
parte estoy omitiéndolo no? es decir el error sigue lo único que hago es que
guardo todos los cambios que pudieran haber, esto no podría ser peligroso?



"Carlos Garcia Hermida" escribió en el mensaje
news:

No sé si lo he comprendido pero por lo que cuentas tiene que existir algun
momento en el que al realizar el calculo del total del ticket, se esten
realizando varios cambios a la vez. Mira si la instruccion tableupdate que
tienes tenga los dos primeros parametros a .t. de manera que sobreescriba
los cambios realizados paralelamente.

Espero haberte ayudado.







Respuesta Responder a este mensaje
#4 José Luis
06/08/2003 - 08:27 | Informe spam
Hola Esparta,

de nuevo gracias por responderme a otra pregunta, espero que llegue el día
en que te pueda responder yo a una :)

Referente a lo que me dices la vista de tickets viene del siguiente select

CREATE SQL VIEW "v_fua_tickets";
as select
fua_ticket.id_ticket,fua_ticket.num_ticket,fua_ticket.fecha,fua_ticket.fk_tr
ayecto,;

fua_ticket.invitacion,fua_ticket.total_ml,fua_ticket.fk_iata_origen,fua_iata
.nombre_iata nombre_origen,;
fua_ticket.fk_iata_destino,fua_iata1.nombre_iata
nombre_destino,fua_ticket.numero_billete,;

fua_ticket.n_vuelo_1,fua_ticket.n_vuelo_2,fua_ticket.nombre_pasajero,cargado
,fua_ticket.fk_ml from fua_ticket;
left join fua_iata on fua_ticket.fk_iata_origen=fua_iata.id_iata;
left join fua_iata fua_iata1 on
fua_ticket.fk_iata_destino=fua_iata1.id_iata;
where fua_ticket.cargado=.f.;
order by fua_ticket.fk_trayecto,fua_ticket.fecha

y los campos llave son el
id_ticket(principal),fk_iata_origen,fk_iata_destino

la vista de lineas_x_ticket es la siguiente




CREATE SQL VIEW "v_fua_lineas_x_ticket";
as select
fua_linea_ticket.id_linea,fua_linea_ticket.fk_ticket,fua_linea_ticket.fk_art
iculo,fua_articulo.nom_boton,;

fua_articulo.nombre_articulo,fua_articulo.fk_familia,fua_familia.nom_boton_f
amilia,fua_familia.nombre_familia,;

fua_linea_ticket.cantidad,fua_linea_ticket.punitario_ml,fua_linea_ticket.tot
al_linea_ml,;
fua_linea_ticket.fk_oferta,fua_linea_ticket.fk_ml from
fua_linea_ticket;
left join fua_articulo on
fua_linea_ticket.fk_articulo=fua_articulo.id_articulo;
left join fua_familia on fua_articulo.fk_familia=fua_familia.id_familia;
where fua_linea_ticket.fk_ticket=?wf_ticket;
order by
fua_linea_ticket.fk_ticket,fua_linea_ticket.fk_articulo,fua_articulo.fk_fami
lia


y los campos llave son el
id_linea(principal),fk_ticket,,fk_articulo,fk_oferta.

Yo no le veo el problema pero espero que tu me puedas decir, si necesitas
las vistas más detalladas dimelo y te las mandaré.

Gracias por anticipado,

Un saludo,
José Luis.


"Esparta Palma" escribió en el
mensaje news:
Efectivamente puede ser peligroso, los conflictos de actualización son
para tomarlos en cuenta, no para ignorarlos.
Tu problema reside en la forma en que definiste tus campos llaves, cual
es la definición de tus vistas, campos llave?


Apoya a Visual FoxPro usándolo legalmente
¸,ø¤º°`°º¤ø,¸¸,ø¤º°`°º¤ø,¸¸,ø¤º°`°º¤ø,¸¸,ø¤º°`°º
Espartaco Palma Martínez
SysOp PortalFox ( http://www.PortalFox.com )
email:
Acapulco, Guerrero. México


José Luis wrote:

> Hola Carlos,
>
> he estado probando lo que me has indicado y efectivamente si hago :
>
> tableupdate(.t.,.t.,'v_fua_tickets')
>
> después de realizar las modificaciones me las guarda sin darme error.


Pero
> corrigeme si me equivoco con esto en parte estoy solucionando el error y


en
> parte estoy omitiéndolo no? es decir el error sigue lo único que hago es


que
> guardo todos los cambios que pudieran haber, esto no podría ser


peligroso?
>
>
>
> "Carlos Garcia Hermida" escribió en el


mensaje
> news:
>
>>No sé si lo he comprendido pero por lo que cuentas tiene que existir


algun
>>momento en el que al realizar el calculo del total del ticket, se esten
>>realizando varios cambios a la vez. Mira si la instruccion tableupdate


que
>>tienes tenga los dos primeros parametros a .t. de manera que


sobreescriba
>>los cambios realizados paralelamente.
>>
>>Espero haberte ayudado.
>>
>>
>
>
>


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida