Sage50Reports - Cómo imprimir información de lotes en los documentos de compra

Summary

En este artículo te mostramos cómo puedes añadir una expresión al report de impresión que permita imprimir la información de los lotes, unidades y fecha de caducidad de los artículos añadidos a un documento de compra, con el ejemplo de un albarán de compra.

Resolution

Si trabajas con el Add-on de trazabilidad y tienes artículos que trabajan con lote y fecha de caducidad, a la hora de imprimir cualquier documento de venta tendrás la opción de seleccionar si quieres que se impriman también el conjunto de lotes:

Image


Sin embargo, dicha opción no está disponible en el módulo de compras por lo que para imprimir la información correspondiente a los lotes de los productos adquiridos en dicha compra, deberás editar el report de impresión (Ver [Sage50Reports] FAQ's sobre diseño de impresión en Sage 50) y añadir la expresión correspondiente a ello.

Image


En este ejemplo, te mostramos un albarán de compra, que una vez accedido al diseño, deberás añadir una expresión y editarla:

Image


Dibuja un recuadro con el ratón e indica la información del valor multiregistro a continuación para imprimir toda la información de forma conjunta (Lote, unidades y fecha de caducidad):

Image

 

Con esta expresión, se imprime toda la información en una sola línea de forma conjunta:

ValorSqlMultiReg("LTALBCO",  "PERIODO=" + Cstring(GetVariable("WC_ANY")) + " | EMPRESA='" +ALBACOM.EMPRESA+"' | NUMERO='"+ ALBACOM.numero + "' | LINIA = " + ALBACOM.LINIA, "LOTE, FORMAT(UNIDADES, 'N2'), FORMAT(CADUCIDAD,'d')","   " ,"LOTES")

 

Image


Si necesitas añadir los valores por separado, las expresiones serían las siguientes:


Para el LOTE:

ValorSqlMultiReg("LTALBCO",  "PERIODO=" + Cstring(GetVariable("WC_ANY")) + " | EMPRESA='" +ALBACOM.EMPRESA+"' | NUMERO='"+ ALBACOM.numero + "' | LINIA = " + ALBACOM.LINIA, "LOTE","" ,"LOTES")


Para las unidades por lote:

ValorSqlMultiReg("LTALBCO",  "PERIODO=" + Cstring(GetVariable("WC_ANY")) + " | EMPRESA='" +ALBACOM.EMPRESA+"' | NUMERO='"+ ALBACOM.numero + "' | LINIA = " + ALBACOM.LINIA, "FORMAT(UNIDADES,'N2')","" ,"LOTES")


Para la fecha de caducidad:

ValorSqlMultiReg("LTALBCO",  "PERIODO=" + Cstring(GetVariable("WC_ANY")) + " | EMPRESA='" +ALBACOM.EMPRESA+"' | NUMERO='"+ ALBACOM.numero + "' | LINIA = " + ALBACOM.LINIA, "FORMAT(CADUCIDAD,'d')","" ,"LOTES")

 

 NOTA: Recuerda que estos ejemplos están basados en formatos base duplicados y no son más que eso, ejemplos que puedes utilizar para adaptar tus formatos de impresión pero que pueden necesitar de adaptaciones adicionales y que ante cualquier duda o comportamiento inesperado en la impresión, conviene revisar con el departamento técnico para valorar su desarrollo a medida. 

Solution Properties

Solution ID
250321115440970
Last Modified Date
Thu May 07 14:43:00 UTC 2026
Attributes
Product Details
Integrated Product: Chatbot
Views
0