ORA-01779
Publicado por orlando (4 intervenciones) el 13/10/2009 23:46:13
hola amigos tengo un gran problem
no se puede modificar una columna que se corresponde con una tabla no reservada por clave
esto me sale cuando quiero hacer lo siguiente
update (select * from TINV e,
(SELECT producto,periodoini,periodofin,
(CASE Accion WHEN 'M' THEN unidxempaque ELSE 1/unidxempaque END) mult FROM ProductoUnidades) f
where e.producto = f.producto
AND e.periodo between f.periodoini and f.periodofin
)
set
cant_inv_inicial = cant_inv_inicial * NVL(mult,1),
cant_rec_cp = cant_rec_cp * NVL(mult,1),
cant_gratis_cp = cant_gratis_cp * NVL(mult,1),
cant_dev_cli = cant_dev_cli * NVL(mult,1),
cant_ajust = cant_ajust * NVL(mult,1),
cant_asig_vta = cant_asig_vta * NVL(mult,1),
cant_inv_final = cant_inv_final * NVL(mult,1);
pleaseeeeeeeeee alguien que me ayudee
no se puede modificar una columna que se corresponde con una tabla no reservada por clave
esto me sale cuando quiero hacer lo siguiente
update (select * from TINV e,
(SELECT producto,periodoini,periodofin,
(CASE Accion WHEN 'M' THEN unidxempaque ELSE 1/unidxempaque END) mult FROM ProductoUnidades) f
where e.producto = f.producto
AND e.periodo between f.periodoini and f.periodofin
)
set
cant_inv_inicial = cant_inv_inicial * NVL(mult,1),
cant_rec_cp = cant_rec_cp * NVL(mult,1),
cant_gratis_cp = cant_gratis_cp * NVL(mult,1),
cant_dev_cli = cant_dev_cli * NVL(mult,1),
cant_ajust = cant_ajust * NVL(mult,1),
cant_asig_vta = cant_asig_vta * NVL(mult,1),
cant_inv_final = cant_inv_final * NVL(mult,1);
pleaseeeeeeeeee alguien que me ayudee
Valora esta pregunta


0