Entradas

Mostrando entradas de 2012

Crear etiquetas para ZEBRA con el Software BarOne

Es muy sencillo y funciona, para este post, solo voy a poner el manual y los archivos que piden para descargar. Manual Zebra/bar One Label Printing through Scripts and Adjusting the Coordinates VAI a SAP-Script Archivos S9162.CPA ZLB_ZEB.PRI Adicional, estos son los libros con los comandos ZEBRA ZPL_Vol1.pdf ZPL_Vol2.pdf

Impresión de código de barras en SAP

Imagen
En SAP hay varias formas de imprimir códigos de barras. Esta es 1. Consta de varios pasos, algunos a nivel de sistema operativo, y otros a nivel de SAP. Los pasos a continuación: 1. Primero instalamos el siguiente programa: TBarCode_SAPwin.msi Al instalarlo elegir opción LPD.exe 2. En el SAPScript o el SmartForm se crea un estilo de párrafo y se elige uno de los codigos de barra instalados en SAP. 3. Aplicar el estilo de párrafos en el formulario. Al final obtenemos como resultado, un documento que imprime código de barras. Esta es una manera muy sencilla de hacerlo.        

Funcion MD_CONVERT_MATERIAL_UNIT

La función MD_CONVERT_MATERIAL_UNIT tiene como objetivo convertir de una unidad de medida a otra. Ej.: 1Tonelada = 1000 Kg. Ejemplo de SAP: CALL  FUNCTION   'MD_CONVERT_MATERIAL_UNIT'         EXPORTING             I_MATNR  = I_MATNR             I_IN_ME  = I_MEINH_IN             I_OUT_ME = I_MEINH_OUT             I_MENGE  = LD_MENGE_IN         IMPORTING             E_MENGE  = LD_MENGE_OUT         EXCEPTIONS              OTHERS     =  4 .    IF   SY-SUBRC     IS  INITIAL .       "Do something    ENDIF . Esta es la más correcta, porque si no tiene  conversión  da una  excepción , sin embargo funciones de  conversión  como  MATERIAL_UNIT_CONVERSION, no hacen el trabajo correctamente cuando el material no tiene la conversión explicitamente.

Inhabilitar o Esconder botón de actualizar precios en VA01

Imagen
En la ventana de condiciones de precios del pedido de ventas o la factura(VA01, VF01), encontraremos el botón de actualización de precios: Si no queremos que el usuario tenga acceso, lo podemos deshabilitar o hacerlo invisible. Esto se puede hacer en el siguiente UserExit:  LV69AFZZ . Colocar el código en el  form  userexit_field_modification :    "Botón de cabecera    if   screen-name =  'BT_KONX' .     screen-input =  0 .     screen-invisible =  1 .    endif.      "Botón de las posiciones    if   screen-name =  'BT_KONY' .     screen-input =   0 .     screen-invisible =  1 .    endif. Este sería el resultado: Ojo, esto aplica tanto para la factura, como para el pedido si se quiere solo para una transacción, validar por el SY_TCODE = 'X TRANSACCION', o también se podría validar por objeto de autorización.

Comparación Masiva de objetos ABAP

Transacción  SREPO Utilización Comparación en masa de Repository entre dos sistemas R3 distintos Condiciones previas 1)  Los dos sistemas R3 deben tener el mismo release y nivel de support package. 2)  El paquete SCTS_COMP_SYS se debe instalar en los dos sistemas 3)  Conexión RFC creada (SM59) Volumen de función Entrada   RFC El siguiente alcance de comparación está disponible 1)  Todos los objetos de cliente y objetos SAP modificados 2) Todos los objetos de cliente 3) Todos los objetos SAP modificados 4) Todos los objetos de un paquete 5) Todos los objetos de una orden de transporte Salida: Lista de objetos con información sobre comparación de versiones. Verde ---- Igual Rojo ---  Desigual Amarillo -- Objeto no comparable directamente Actividades Primer paso: Creación de intersección Segundo paso: Comparación de versiones

Transportar datos de una tabla

Imagen
1. Crear orden de workbeach por la SE09. Con la siguiente entrada: 2. Una vez colocada la tabla que queremos transportar, hacer doble click sobre la línea. Y se mostrar la siguiente pantalla:

Calcular número total de paginas en ALV evento TOP_OF_PAGES

Para calcular el total de páginas impresas en un ALV, lo hice en el evento TOP_OF_PAGE. Bien la formula que encontré fue [TOTAL DE LINAS A IMPRIMIR entre EL TOTAL DE LINEAS QUE ME CABEN EN EL PAPEL]. Dudo que este sea el mejor método para hacer esto, pero fue el único que encontré, y vaya que investigue. Pero ya sabemos que los tiempos cuentan en esto. A mi me funciona bien.   data:  vpage  type  sy-pagno,    "Variable donde pondré el total          divit  type  p  decimals  2,          vnlines  type  i.   clear: vpage,vnlines,divit .  "Conseguir el número total de lineas a imprimir    describe  table  xdata  lines  vnlines.    divit = vnlines /  50.   "<-- Este 50, representa la cantidad de lineas que caben en mi impresión.                           "    como ya sabemos la impresión depende del formato de edición                           "    para este reporte tenia una de x_65_230    vpage = ceil( divit ).  "Al utilizar el CEIL me redond