cancel
Showing results for 
Search instead for 
Did you mean: 

Entrada de Mercancia / Inventario

Former Member
0 Kudos

Estimados

Al generar una entrada de mercancía de inventario deje el costo en '0' y sistema me dejo realizar esta operación, lo que es un error, hay alguna manera de bloquear esto, busque en parámetros pero no he encontrado nada.

¿Alguien ha tenido este caso?

Me cuentan y Gracias

Sldos

Oscar V

Accepted Solutions (1)

Accepted Solutions (1)

marco_ramirez
Active Contributor
0 Kudos

Buenos días

Verifica en las autorizaciones de usuario si la opción Documentos con importes cero la tiene habilitada, esto podría ayudar

sigue la ruta:

Gestión -- Inicialización del sistema -- Autorizaciones -- Autorizaciones generales

Seleccionas el usuario

Buscas Documentos con importes cero y asignas Falta autorización.

Espero sea de ayuda

Saludos

Former Member
0 Kudos

Hola

Marcos, Gracias por tu pronta respuesta, fui a la ruta indicada y el único ítem de Documentos con importes cero que encontré fue el de Ventas > Informes de Venta.

Realice la prueba y no funciono sigue pasando sin costos la entrada de mercancía.

Estoy en la versión 9

habrá alguna otra forma de para la transacción..

Sldos y gracias

Oscar V

marco_ramirez
Active Contributor
0 Kudos

Lo podrías hacer en Transaction Notification, estas familiarizado con esto?

Former Member
0 Kudos

Marco

Quería ver si había algún parámetro que hubiera omitido... Si he realizado TN, pero solo a nivel de campos de cabecera... Tienes algun ejemplo de  TN  a nivel de detalle.

Me cuentas

Gracias

marco_ramirez
Active Contributor
0 Kudos

Prueba este script

--**Entradas de mercancias**--

if @Object_type = '59' and @transaction_type = 'A'

Begin

          Declare @punitario as int

          Declare curPrecioU cursor

                    For Select T1.Price

                              FROM OIGN T0 

                              INNER JOIN IGN1 T1 ON T0.DocEntry = T1.DocEntry

                                        Where T0.DocEntry = @list_of_cols_val_tab_del

           Open curPrecioU

           FETCH NEXT FROM curPrecioU INTO @punitario

            WHILE @@Fetch_Status = 0

 

          Begin

                    If @punitario <= 0

                              Begin

                                        Set @error = 5901

                                        Set @error_message = 'Debe ingresar Precio Unitario'

                              End

          FETCH NEXT FROM curPrecioU INTO @punitario

          End

    CLOSE curPrecioU

    DEALLOCATE curPrecioU

End

Me comentas

felipe_loyolarodriguez
Active Contributor
0 Kudos

Marco

Tu script puede funcionar sin problemas pero colocar cursores del TN puede reducir ampliamente la performance al crear transacciones, sobre todo si tienes un nivel alto de registros al día.

Para bloquear lo que están solicitando es más simple hacer lo siguiente.

if @object_type='59' and @transaction_type='A'

begin

    declare @Line int

    set @Line=(select top 1 T0.LineNum from IGN1 T0 where T0.DocEntry=@list_of_cols_val_tab_del and isnull(T0.Price,0)=0)

   

    if @Line is not null

    begin

        set @error=3456

        set @error_message='La linea ' + convert(nvarchar(20),@Line+1) + ' no puede contener precio 0'

    end   

end

Saludos

FLR

marco_ramirez
Active Contributor
0 Kudos

Interesante el punto que planteas Felipe, lo tomaré en cuenta.

Que provocará eso que mencionas?

Former Member
0 Kudos

Marcos

Muchas Gracias por tu ayuda al igual que Filipe.

Probare ambos TN.

Sldos

Oscar V

felipe_loyolarodriguez
Active Contributor
0 Kudos

El cursor se guarda en memoria mientras que las consultas se guardan en disco.

Además si haces mal el cursor puede convertirse en un cursor infinito y consumir la RAM del server haciendo que se caiga.

Saludos

FLR

marco_ramirez
Active Contributor
0 Kudos

Gracias por la aclaración Felipe

Former Member
0 Kudos

Gracias Felipe por esos datos, no los manejaba!

Sldos

Answers (0)