cancel
Showing results for 
Search instead for 
Did you mean: 

Bloqueo precio de venta y cambio de vendedor

Former Member
0 Kudos

Estimados

Tengo las siguientes necesidades de bloqueo

1 .- no permitir que cambien el precio de venta, si el mismo es menor al precio de lista ( tengo solo 1 lista de precios )

2.- no permitir que actualicen el vendedor en una OV ya grabada,

Se que por ahi tienen tn de eso, porfavor su ayuda

Gracias

aca mis intentos  fallidos

-IF @object_type = '23' and (@transaction_type='U')

--BEGIN

--               Declare @vendedor1 Int

--               Set @vendedor1 = (Select T0.SlpCode From OQUT T0 Where T0.SlpCode <> -1 and T0.DocEntry = @list_of_cols_val_tab_del)

--          If @vendedor1 <> (Select T0.SlpCode From OQUT T0 )

--          Begin

--                    Set @error = 1000

--                    Set @error_message = 'No es permitido cambiar vendedor'

--          End

IF @object_type='23' and @transaction_type='A'
--BEGIN
--DECLARE @AA TABLE (PrecioActual NUMERIC(19,6), PrecioBruto NUMERIC(19,6), LineNum INT)
--INSERT INTO @AA
--SELECT
--T2.Price,
--CASE
--WHEN T1.Currency = 'BS' THEN (T1.Price / T1.Rate)
--WHEN T1.Currency = 'USD' THEN T1.Price

--END Valor,
--T1.LineNum
--FROM OQUT T0
--INNER JOIN QUT1 T1 ON T1.DocEntry = T0.DocEntry
--INNER JOIN ITM1 T2 ON T2.ItemCode = T1.ItemCode AND T2.PriceList = 1
--WHERE T0.DocEntry = @list_of_cols_val_tab_del
--DECLARE @vat01 AS VARCHAR(500)
--SET @vat01=(SELECT TOP 1 LineNum+1 FROM @AA WHERE PrecioActual > PrecioBruto)
--    IF @vat01 != '' or @vat01 IS NOT NULL
--    BEGIN
--SET @error = 1
--SET @error_message = 'Modifico el Precio de Lista NO es permitido - línea ' + @vat01
--    END
--END

Accepted Solutions (0)

Answers (1)

Answers (1)

felipe_loyolarodriguez
Active Contributor
0 Kudos

Buenas tardes

Ahí tienes un TN para no permitir el cambio de las lineas, esta con el campo "fecha" pero cambialo a tu campo.

TN Pedido Cliente Cambio de Fecha Linea Articulos | SCN

Para el vendedor, es el mismo solo que debes tomar desde la OQUT y la ADOC.


Saludos

0 Kudos

Buen día para todos,

Tengo el mismo requerimiento de Martin, Felipe una consulta cual sería el campo que deberia ir en este caso de acuerdo a este Query? agradezco tu respuesta.

if @object_type='17' and @transaction_type='U' 

     begin 

     declare @Line int 

          set @Line(select top 1 T0.LineNum from RDR1 T0 where T0.LineStatus='O' and T0.DocEntry=@list_of_cols_val_tab_del and T0.ShipDate<cast(getdate()+2 as date) and    T0.ShipDate<>(select top 1 A0.ShipDate from ADO1 A0 where A0.ObjType=@object_type and A0.DocEntry=@list_of_cols_val_tab_del and A0.LineNum=T0.LineNum order by A0.LogInstanc desc)) 

    if @Line is not null 

begin 

set @error=20000 

set @error_message='La Fecha de Entrega en la linea ' + convert(nvarchar(20),@Line+1) + ' es Invalida, debe de ser mayor a 2 días del actual' 

end     

end 

Mil gracias.