Alguien que haya hecho una validación para que alerte cuando se modifique un campo especifico. Yo realice un query pero me trae al modificar cualquier campo y solo quiero uno en especifico, en este caso es el modelo el que quiero que me genere la alerta.
El codigo es el sgte:
select DISTINCT t0."SWW" as Modelo_Modificado, SUBSTRING(T0."ItemCode",4,20) as Clave, t2."FirmName" as "Marca",
t0."U_MT_PROY" as PROYECTO, t4."CardName" as Proveedor
from oitm t0
inner join aitm t1 on t0."ItemCode" = t1."ItemCode"
inner join omrc t2 on t0."FirmCode" = t2."FirmCode"
full outer join ocrd t4 on t4."CardCode" = t0."CardCode"
where (t1."SWW" <> t0."SWW" ) and t0."U_MT_ESTATUS" = 'Aprobado' and t0."U_MT_PROY" <> '' and t0."UpdateDate" = CURRENT_DATE
buenos días,
probé tu query (yo no usé los campos de estatus y proyecto, pero lo demás sí) y obtuve el resultado esperado, es decir, valida cuando se modifica nada más el campo “sww”; no veo error en el código.
select
DISTINCT t0."FirmCode",
t2."FirmName" as Modelo_Modificado,
SUBSTRING(T0."ItemCode", 4, 20) as Clave,
t2."FirmName" as "Marca",
t0."U_MT_PROY" as PROYECTO,
t4."CardName" as Proveedor --, T0."LogInstanc", T1."LogInstanc"--, T1."PrchseItem", T0."PrchseItem" --in (select max (T0."LogInstanc"-1 ),
from
oitm t0
inner join aitm t1 on t0."ItemCode" = t1."ItemCode" --and T1."LogInstanc"=T0."LogInstanc"-1 AND T1."PrchseItem" != T0."PrchseItem"
inner join omrc t2 on t0."FirmCode" = t2."FirmCode" full
outer join ocrd t4 on t4."CardCode" = t0."CardCode"
where
(t1."FirmCode" <> t0."FirmCode")
and t0."U_MT_ESTATUS" = 'Aprobado'
and t0."U_MT_PROY" <> ''
and t0."UpdateDate" = CURRENT_DATE
hola de nuevo, lo probé y si funciona.
(adecuándolo a campos de mi base de datos que si se hayan modificado, pues firmcode no ha sufrido cambios)
Primero no me daba ningún registro, y al quitarle la condición del campo PrchseItem (porque en mis datos no aplicaría), ya salieron los registros de mis datos que cumplían las demás condiciones.
select
DISTINCT t0."firmcode",
t2."firmcode" as Modelo_Modificado,
SUBSTRING(T0."ItemCode", 4, 20) as Clave,
t2."FirmName" as "Marca",
t4."CardName" as Proveedor,
T0."LogInstanc",
T1."LogInstanc",
T1."PrchseItem",
T0."PrchseItem"
from
oitm t0
inner join aitm t1 on t0."ItemCode" = t1."ItemCode"
inner join omrc t2 on t0."FirmCode" = t2."FirmCode" full
outer join ocrd t4 on t4."CardCode" = t0."CardCode"
where
(t1."itemname" <> t0."itemname")
and t0."UpdateDate" = '[%1]'
and T1.loginstanc in (
select
max (t8.loginstanc)-1
from
aitm t8
where
t8."ItemCode" = T0."ItemCode"
)