buenas tardes, me cree este Sp para intentar evitar o restringir que cuando el empleado de ventas o vendedor cuyo SlpCode = '4' y utiliza la norma de reparto diferente a 007 osea el OINV.OcrCode<> '007' que le envie un mensaje indicando que este empleado de ventas no puede utilizar esta noram de reparto. dejo el query para que me ayuden a analizarlo debido que no m esta funcionando.
if @object_type in ('13') and @transaction_type in ('A', 'U') -----------------factura de venta
begin
if (SELECT COUNT (*) FROM OUSR INNER JOIN (SELECT OINV.DocEntry,OINV.UserSign2,INV1.OcrCode,OINV.SlpCode,U_SingS_NormaR
FROM OINV INNER JOIN INV1 ON OINV.DocEntry = INV1.DocEntry
INNER JOIN OSLP T1 ON OINV.SlpCode = T1.SlpCode
INNER JOIN OUSR T2 ON INV1.OcrCode = T2.U_SingS_NormaR
GROUP BY OINV.DocEntry,OINV.UserSign2,OcrCode,OINV.SlpCode,U_SingS_NormaR) S ON OUSR.USERID = S.UserSign2 AND SlpCode = '4'
AND OUSR.U_SingS_NormaR <> S.OcrCode AND @list_of_cols_val_tab_del = S.DocEntry)>0
begin
set @error = 10
set @error_message = '*****SP: Norma de Reparto No Permitida Para Este Vendedor*****'
end
end
------------------------------------------------------------------------ yo cree un campo de usuario en la tabla OUSR llamado U_SingS_NormaR para poder validar que el valor 007 sea igual al que el vendedor con el SlpCode = '4' pueda solo vender oa hacer una factura si utiliza la norma de reparto OINV.OcrCode = '007'
no se si me hice entender. adjunto imagenes para mejor entendimiento.
gracias.
atento a sus ayudas.