cancel
Showing results for 
Search instead for 
Did you mean: 

Transaction Notification no valida Stock en Fact de Reserva

Former Member
0 Kudos

Hola buen día a todos,

Tengo el siguiente transacion que me valida el Stock actual al crear mi factura de reserva, pero pasa que si hay varias lineas no esta funcionando correctamente, si la factura solamente tiene un articulo funciona bien ... a ver si me pueden ayudar, gracias de antemano!

if @object_type = '13' and @transaction_type in ('A')

begin

          Declare @Articulofact int

          Declare @Stock int

          Set @Articulofact = (Select t0.quantity from inv1 t0 where T0.DocEntry = @list_of_cols_val_tab_del)

          Set @Stock = (Select  T2.[OnHand] from INV1 T0  INNER JOIN OITM T1 ON T0.ItemCode = T1.ItemCode INNER JOIN OITW T2 ON T1.ItemCode = T2.ItemCode where t0.Docentry = @list_of_cols_val_tab_del and T2.[WhsCode] = T0.[WhsCode])

if @Articulofact > @Stock

begin

set @error = 451587

set @error_message = 'Articulo  Sin Stock'

end

end

Accepted Solutions (1)

Accepted Solutions (1)

former_member203638
Active Contributor
0 Kudos

Hola Victor, Intenta así:

If @object_type = '13' AND @transaction_type in ('A')

BEGIN

If exists

(Select b.ItemCode

From OINV a

inner join INV1 b on a.DocEntry=b.DocEntry

inner join OITM c  On b.ItemCode=c.ItemCode

INNER JOIN OITW d ON c.ItemCode = d.ItemCode

Where a.DocEntry = @list_of_cols_val_tab_del

and b.quantity > d.onhand)

Begin

set @error =1

set @error_message = 'Articulo sin Stock '

End

END

Saludos.

Alessandro.

Former Member
0 Kudos

Agregue solamente la validación de mismo almacén para ItemCode en INV1 y OITW y parece que funciona correctamente.

Muchísimas gracias Alessandro !!!!

Así quedo:

If @object_type = '13' AND @transaction_type in ('A')

BEGIN

If exists

(Select b.ItemCode

From OINV a

inner join INV1 b on a.DocEntry=b.DocEntry

inner join OITM c  On b.ItemCode=c.ItemCode

INNER JOIN OITW d ON c.ItemCode = d.ItemCode

Where a.DocEntry = @list_of_cols_val_tab_del

and b.WhsCode = d.WhsCode

and b.quantity > d.onhand)

Begin

set @error =1

set @error_message = 'Articulo sin Stock '

End

END

Answers (0)