SAP Netweaver / ABAP                  Notas técnicas / Tips / Tutorials

Tutorial programación ABAP: Buen momento para pulir conocimientos

Tutorial programación ABAP: Buen momento para pulir conocimientos

No importa cuán experimentado sea un especialista o programador ABAP, siempre hay recursos o herramientas pasados por alto, subutilizados o simplemente desconocidos. Buen momento para pasar revista a su "repertorio" rápidamente, y tomar nota / ponerse al día con lo que valga la pena incorporar. 

Recursos para la Gestión de textos en programas ABAP

Cómo asociar en ABAP texto standard a una tarea de una Orden de Transporte

Conozca cómo asociar un texto standard a una tarea de una Orden de Transporte en ABAP, empleando el programa RSTXTRAN

Cómo traducir la documentación de un programa ABAP

Mantenga actualizada la traducción de los textos de documentación de un programa ABAP

Cómo dar formato a un conjunto de textos en ABAP

Utilice la función ABAP "FORMAT_TEXTLINES" para dar formato a un texto largo o a un conjunto de textos.

Cómo buscar un string en un conjunto de programas ABAP

Conozca cómo obtener la lista de programas que contienen una determinada cadena de caracteres en un programa ABAP

 

Recursos para la Gestión de tablas en programas ABAP

Cómo actualizar de una tabla sólo datos específicos mediante una "vista de actualización"

Aprenda a actualizar determinados campos de una tabla  mediante vistas de actualización en ABAP, sin crear programas complejos.

Cómo navegar desde una tabla al customizing

Utilice la transacción SM30 para  navegar desde una tabla standard al arbol de implementacion IMG del customizing SAP

Búsqueda de tablas

Aprenda cómo encontrar las tablas con los datos que se necesitan consultar en un programa ABAP.

Conozca las transacciones en ABAP que ayudan a encontrar tablas que almacenan datos necesarios para la programación.

Recursos para Gestión General en programas ABAP

Cómo obtener el flujo de documentos desde un programa ABAP

Recupere el flujo de documentos de un documento comercial mediante el uso de un módulo de función desde programas ABAP.

Novedades del editor y debugger de ABAP en SAP Netweaver 7.0

Aprenda las características fundamentales del editor y debugger ABAP en SAP Netweaver 7.0 .

Uso de íconos en ABAP

Cómo usar íconos en los programas reportes de SAP Netweaver ABAP.

Verificación de objetos no autorizados

Aprenda cómo conocer la falta de autorización sobre los objetos de ABAP.

Código oculto y/o bloqueado en un programa ABAP

Conozca como ocultar y/o bloquear codigo fuente en ABAP.

Creación de variables en tiempo de ejecución

Aprenda cómo crear variables en un programa SAP ABAP en tiempo de ejecución, aún si no conoce el tipo de dato.

Mantenimiento de jobs

Conozca algunos programas útiles para mantenimiento de Jobs en SAP.


Copyright 2012 - Teknoda S.A.

IMPORTANTE:
“Notas técnicas de SAP ABAP" se envía con frecuencia variable y sin cargo como servicio a nuestros clientes SAP. Contiene notas/tutoriales/artículos técnicos desarrollados en forma totalmente objetiva e independiente. Teknoda es una organización de servicios de tecnología informática y NO comercializa hardware, software ni otros productos.
Si desea suscribir otra dirección de e-mail para que comience a recibir las Notas Técnicas SAP, envíe un mensaje desde esa direcciónsapping@teknoda.com, aclarando nombre, empresa, cargo y país del suscriptor.

SAP, Netweaver, R/3, Fiori,S4/HANA y ABAP son marcas registradas de SAP AG. SAP no es el editor de esta publicación y no es responsable de la misma en ningún aspecto. La información contenida en esta publicación ha sido generada por nuestros especialistas a partir de fuentes consideradas confiables y del ejercicio profesional cotidiano. No obstante, por la posibilidad de error humano, mecánico, cambio de versión u otro, Teknoda no garantiza la exactitud o completud de la misma.
COPYRIGHT TEKNODA S.A. PROHIBIDA SU REPRODUCCION TOTAL O PARCIAL SIN CONSENTIMIENTO DE TEKNODA

 


 

Cómo lanzar un Workflow en SAP desde una transacción Start Form

Aprenda en SAP cómo crear un workflow disparable desde una transacción Start Form, a través de un ejemplo sencillo.

Entre las diversas alternativas para “disparar “ un Workflow, existe una muy interesante que permite al usuario lanzarlo desde una transacción.

Los Start Forms no solo desencadenan la ejecución, también permiten el pasaje de datos al desarrollo.

Esta variante consiste en crear una transacción que muestra una determinada dynpro al usuario que la ejecuta.

La dynpro se carga con una estructura del diccionario ABAP cuyos campos se muestran tanto en modo “ready for input” como “output only” (al menos un “ready for input” debe permitirse).

Básicamente los campos de la pantalla se conectan con un “container” del Workflow permitiendo al desarrollador recibir datos iniciales para su posterior proceso.

El procedimiento que se detalla a continuación muestra, a través de un ejemplo sencillo, cómo crear un Workflow “disparable” desde una transacción a modo de Start Form, que a su vez permita pasaje de datos entre la screen cargada por el usuario y el desarrollo.

1) Pasos para la creación de un Workflow con Start Form

  • Ir a la transacción estándar SWDB. Se mostrará la pantalla principal de creación de Workflows.
  • Una vez en el WF vacío crear un Container en base a una estructura del diccionario ABAP. Debe ser una estructura plana (flat structure) forzosamente.
    • Tener en cuenta que NO se admiten campos tipo STRING, RAW, ni tablas, y los campos no deben exceder los 160 caracteres.
  • En la imagen siguiente se eligió la estructura ZAIRPORT_STRUCT, que contiene tres campos del tipo CHAR de longitud menor a 20.

 

workflow-builder-create-prueba

 

  • Se requiere marcar Import en el Container.

workflow-change-cointainer-element


  • Guardar el Workflow.
  • Posteriormente, ir a Basic Data workflow-sombreritoVersion-IndependantStart Forms.
  • En la sección de Start Forms hacer click en el botón Create.

workflow-version


  • Seguir los pasos del Wizard (Asistente), y cuando se visualice el checkbox de Easy Web Transaction, desmarcarlo. Esto evita que para ejecutar la transacción se exija hacerlo desde un Explorador de Internet.
  • Seleccionar el Container que se creó previamente.

workflow-create-form

 

Se creará un grupo de función para alojar los datos referentes a la dynpro que se autogenera y a funciones que guían el funcionamiento de la transacción.
  • Guardar el grupo de funciones.
  • Una vez finalizados los pasos del Wizard, se podrá ver el código de transacción que se autogeneró.
  • También es posible presionar el botón Change Layout para modificar la screen del FORM, como se muestra en la figura:

workflow-basic-data


  • Desde la misma pantalla de Basic Data, ubicarse en la solapa superior Version-Dependant, y luego en la sub-solapa Agents, y por último asignar un agente para ejecutar el WF. Por ejemplo, INITIATOR.

workflow-builder-change-prueba

  • En la misma pantalla Basic Data, presionar el botón Agent Assignment for task workflow-globo-amarillo

workflow-builder-change-prueba-1

  • Agregar los posibles agentes para ejecutar el WF. En el ejemplo se asignó al usuario BCUSER.

workflow-builder-maintain-Agent_assignment

  • Guardar y activar el Workflow.

Cumplidos los pasos anteriores, ya se podrá ejecutar la transacción generada, aunque el desarrollo no realiza ninguna acción concreta.

2) Cómo utilizar los datos ingresados en los pasos del proceso anterior (1)

En el ejemplo siguiente se utiliza la creación de un paso de User Decision junto con un Mail al mismo INITIATOR para ver si los datos del Start Form efectivamente pasan al container de WF y se muestran en el correo.

  • Agregar una tarea User Decision y completarla de manera similar a la imagen siguiente.

workflow-builder-change-prueba-user-decision

  • Es importante incluir parámetros en el titulo para luego poder visualizarlos al ejecutar el Work Item.
  • Luego, agregar una tarea de Send Mail como la que se muestra a continuación.

workflow-change-prueba-send-mail

    Aquí también es importante incluir parámetros en el título y/o en el cuerpo del mensaje para luego poder visualizar los valores.
    Guardar y activar el Workflow.
  • Al ejecutar la transacción creada se podrá ver algo similar a la siguiente imagen:

workflow-prueba

  • Al presionar el botón Start se "lanzará" el Workflow.

Workflow-decision-step

  • Y finalmente, si se ejecuta el Work Item se enviará un Mail al SAP Business Workplace.

workflow-display-document

 


 

n_Marco_Gatti - Especialista ABAP y Workflow

Copyright 2011 - Teknoda S.A.

IMPORTANTE:
“Notas técnicas de SAP ABAP" se envía con frecuencia variable y sin cargo como servicio a nuestros clientes SAP. Contiene notas/tutoriales/artículos técnicos desarrollados en forma totalmente objetiva e independiente. Teknoda es una organización de servicios de tecnología informática y NO comercializa hardware, software ni otros productos.
Si desea suscribir otra dirección de e-mail para que comience a recibir las Notas Técnicas SAP, envíe un mensaje desde esa direcciónsapping@teknoda.com, aclarando nombre, empresa, cargo y país del suscriptor.

SAP, Netweaver, R/3, Fiori,S4/HANA y ABAP son marcas registradas de SAP AG. SAP no es el editor de esta publicación y no es responsable de la misma en ningún aspecto. La información contenida en esta publicación ha sido generada por nuestros especialistas a partir de fuentes consideradas confiables y del ejercicio profesional cotidiano. No obstante, por la posibilidad de error humano, mecánico, cambio de versión u otro, Teknoda no garantiza la exactitud o completud de la misma.
COPYRIGHT TEKNODA S.A. PROHIBIDA SU REPRODUCCION TOTAL O PARCIAL SIN CONSENTIMIENTO DE TEKNODA

 


FICHA TECNICA: Notas técnicas – Tips de SAP Netweaver ABAP ”Como lanzar un workflow desde una transacción Start Form”

Tema: Workflow. Descripción: Conozca como crear un workflow "disparable" desde una transacción Start Form en SAP.

Entendiendo SAP HANA

Desanudando Conceptos: SAP HANA

…si no “HANA” hoy, “HANA”rá mañana…

No hay “newsletter”, conferencia o evento del ambiente ERP que en los últimos meses haya ahorrado detalles y especulaciones sobre el nuevo paradigma: SAP HANA.

En medio del marketing “hype”, es siempre difícil para los que estamos en el ruedo decodificar lo esencial de las nuevas tecnologías, así que aquí va nuestro aporte para ayudar a una cabal y conceptual comprensión de SAP HANA.

 

SAP HANA: una primera definición.

SAP HANA  es una plataforma integrada (hardware + software) que combina innovadoras tecnologías de base de datos, con la modalidad de procesamiento “in-memory”, para soportar una nueva generación de aplicaciones de altísima performance, entre las que se destacan las herramientas analíticas con la promesa de lograr respuestas en tiempo real..

En realidad, SAP HANA es la respuesta de SAP a la nueva tendencia de “in-memory computing” que describimos más abajo, desarrollado en conjunto con sus clientes y socios comerciales. En principio, por sus características, las aplicaciones de Business Intelligence son el primer target de la tecnología SAP HANA, que promete velocidades de procesamiento miles de veces más eficientes que las actuales.

Para comprender correctamente de verdad SAP HANA hay que mirar un poco más atrás, y un poco más adelante.

 

Nudo 1: El desafío de las aplicaciones analíticas

Las soluciones de Business Intelligence son hoy una componente casi básica en gestión de la información de cualquier tipo de organización. En consecuencia, la explosión masiva en los volúmenes de datos recolectados por las empresas se ha convertido en un verdadero problema, sobre todo en las organizaciones más grandes.

Las herramientas de BW, BI, etc. se basan en la utilización de extractores que replican datos de los sistemas transaccionales, y su posterior modelización en complejas estructuras n-dimensionales, que alimentarán las herramientas de análisis de Business Intelligence.

Dependiendo de la cantidad de datos en los sistemas fuente y la complejidad de los “queries”, la carga de procesamiento y los tiempos de esta metodología convencional pueden ser muy limitantes. Por ejemplo, hay clientes que tienen bases de datos en sus BW de 6 o 7 terabytes, y necesitan procesamiento de horas para construir un “cubo” .

SAP HANA se postula como una solución a este problema.

NOTA de actualización: En Abril de 2012, SAP liberó SAP Netweaver BW powered by SAP HANA, donde el BW tiene a SAP HANA como base de datos primaria.

 

Nudo 2: La tecnología “in-memory”.

Con el avance vertiginoso en las tecnologías de RAM, surge la interesante posibilidad de llevar todos los datos físicamente más cerca de la unidad central de proceso, es decir, alojando las bases de datos en memorias RAM de alta capacidad en lugar de hacerlo en discos. A ésta se le llama “in-memory computing”.

Obviamente la idea de alojar datos en memoria no es nueva, y ya había avances en este sentido. De hecho el Business Warehouse Accelerator de SAP ya utiliza esta tecnología.

Lo que ha hecho que en los últimos años las soluciones “in-memory” sean tan populares, es que los precios y las capacidades la habilitan para una rango mucho más amplio de aplicaciones, pensando ya en memorias RAM capaces de alojar Terabytes de información. Eliminando el acceso a discos, el procesamiento “in-memory” genera tiempos de respuesta hasta 10.000 veces mayores y se puede procesar datos a una velocidad de 100GB por segundo.

El procesamiento “in-memory” involucra indudablemente la utilización de hardware “servidor” especializado, configurado y certificado para el software en cuestión, e incluso con el software pre-instalado. SAP HANA, es un producto que implementa “in-memory computing”.

SAP_HANA_memory

Nudo 3: Nuevas tecnologías en las bases de datos y procesamiento paralelo

El otro ingrediente fundamental en el core de SAP HANA, son las innovadoras tecnologías en el tratamiento de la base de datos.

El almacenamiento de tablas “por columna” ofrece nuevas posibilidades de compresión de los datos. Se habla de llevar a un nivel de compresión del 30% o menos, ésto es, a la tercera parte de su tamaño actual. Por ejemplo, en SAP TechEd 2011 se mostraron bases de datos de casi 3 Terabytes reducidas a 600 Gb de almacenamiento.

Asimismo, participan de SAP HANA algoritmos de procesamiento paralelo (multi-núcleo) que amasijan datos a velocidades hasta ahora impensadas (por ejemplo, consultar 360 millones de registros en apenas 1 segundo).

 

Nudo 4: Tras la promesa del “tiempo real”

Por último, y gracias a todo lo anterior, SAP HANA incluye un eficiente mecanismo de replicación de datos a través de distintas componentes de replicación de datos (SAP LT, SAP Data Services, o l Sybase Replication Server), que “aspiran” los datos del ERP o del CRM casi en tiempo-real, es decir, a medida que van ocurriendo. En lugar de los esquemas retrospectivos del data warehousing más tradicional, utiliza una tecnología “event-driven”.

El escenario de analizar datos en tiempo real era un viejo sueño de todos los usuarios de Business Intelligence, y ahora empezaría a ser posible gracias al “in-memory” computing.

NOTA de Actualización: En Enero de 2013, SAP liberó la suite de negocios de SAP Netweaver (SAP Netweaver Business Suite Powered by SAP HANA) , para utilizar SAP HANA como base de datos primaria, sin necesidad de usar mecanismos replicadores, como los presentados en el tip Dos escenarios de ABAP con SAP HANA.

 

SAP HANA desanudado.

Ahora sí, podemos arriesgar una definición más concreta de SAP HANA.

SAP HANA es una solución integrada (stack) de hardware “SAP-certificado” y software pre-instalado, que conforma una plataforma “in-memory” para aplicaciones de alto rendimiento, como herramientas de análisis y simulación en tiempos “casi” reales.

SAP HANA en un escenario "side-by-side, corre al lado del Business Suite, capturando y replicando datos en tiempo casi real y sin perturbarlo. También desde Enero de 2013, SAP HANA puede ser utilizado como base de datos primaria de la suite de negocios de SAP.

Entre las componentes de software de SAP HANA, la columna vertebral es el motor de cálculo (Calculation Engine)  y la base de datos hbírida "in-memory".  Ofrece almacenamiento columnar o tradicional y hace uso de las tecnologías de optimización de base de datos, procesamiento paralelo, compresión, etc., antes mencionadas.

Otra componente importante, si es necearia la replicación de datos es la componente SAP Landscape Transformation, una herramienta de replicación basada en Triggers, que SAP HANA utiliza para copiar datos del BW, del ERP, del CRM casi en tiempo real.

Los proveedores de hardware hasta ahora ofreciendo esta solución son HP, IBM, Cisco, Fijitsu, y Dell.

La siguiente figura refleja cómo se relaciona el “stack” de capas de SAP HANA con el Business Warehouse Accelerator y otros componentes anteriores. (Fuente: HP)

SAP_HANA_Stacks_and_Engines

Con respecto a SAP HANA y su relación con SAP Netweaver Business Warehouse, hay que considerar que en un futuro cercano, el actual "agilizador de performance" SAP NetWeaver BW Accelerator (indexa la información del SAP BW usando tecnología in-memory), ya no será más necesario: SAP HANA es el sucesor de SAP Netweaver BWA.

En cambio, es importante entender que SAP HANA complementa a SAP NetWeaver Business Warehouse (el Warehouse de SAP) y NO lo reemplaza.

SAP HANA hoy

SAP HANA 1.0 fue oficialmente liberado en Junio de este año (2011), después de varios meses de prueba en ciertos clientes seleccionados, con, aparentemente, excelentes resultados.

SAP HANA, al menos inicialmente, es una solución principalmente orientada a los clientes con altos volúmenes de información, que justifiquen los costos de esta tecnología.

Es importante mencionar que, como en cualquier sistema de BI, el trabajo de modelización sigue siendo un desafío en manos del cliente.

 

Qué hay en el horizonte para SAP HANA

El “in-memory” computing es una tecnología aún en sus comienzos, y es de esperar que SAP HANA progrese en ancho y en alto.

SAP HANA debe entenderse como una PLATAFORMA, más que como una solución puntual. Seguramente SAP HANA se convertirá en el “hogar” de todas las herramientas BI de SAP, como el Smart Meter Analytics, Trade Promotion Management, y el propio Business Warehouse, etc.. Asimismo, será una plataforma para soluciones de BI provistas por terceros.

Aún más, en el tiempo, probablemente SAP llevará el “in-memory” computing no sólo a sus soluciones analíticas sino a sus productos transaccionales. Muchos ojos están puestos para divisar ERP o CRM sobre SAP HANA. Hay quienes dicen que SAP lleva dos años de ventaja a sus competidores en la tecnología “in-memory”.

 

Igual, como decía mi abuelito, quién se lo va a discutir . . .

A.D.

Conozca más de SAP HANA, leyendo en Teknodatips:

SAP HANA en "pastillas" - Parte 1 de 3

SAP HANA en "pastillas" - Parte 2 de 3

SAP HANA en "pastillas" - Parte3

Dos escenarios de ABAP con SAP HANA

  


Copyright 2011 - Teknoda S.A.

IMPORTANTE:
“Notas técnicas de SAP ABAP" se envía con frecuencia variable y sin cargo como servicio a nuestros clientes SAP. Contiene notas/tutoriales/artículos técnicos desarrollados en forma totalmente objetiva e independiente. Teknoda es una organización de servicios de tecnología informática y NO comercializa hardware, software ni otros productos.
Si desea suscribir otra dirección de e-mail para que comience a recibir las Notas Técnicas SAP, envíe un mensaje desde esa direcciónsapping@teknoda.com, aclarando nombre, empresa, cargo y país del suscriptor.

SAP, Netweaver, R/3, Fiori,S4/HANA y ABAP son marcas registradas de SAP AG. SAP no es el editor de esta publicación y no es responsable de la misma en ningún aspecto. La información contenida en esta publicación ha sido generada por nuestros especialistas a partir de fuentes consideradas confiables y del ejercicio profesional cotidiano. No obstante, por la posibilidad de error humano, mecánico, cambio de versión u otro, Teknoda no garantiza la exactitud o completud de la misma.
COPYRIGHT TEKNODA S.A. PROHIBIDA SU REPRODUCCION TOTAL O PARCIAL SIN CONSENTIMIENTO DE TEKNODA

 


 

FICHA TECNICA: Notas técnicas – Tips de SAP Netweaver ABAP ”Entendiendo SAP HANA"

Tema: SAP HANA- SAP BW BI -.ICE Descripción: Entender el paradigma de SAP HANA, y las tecnologías involucradas: "in-memory computing", tiempo real.

Noticias SAP: EhP 5 para ERP 6.0 | Nuevo SAP Technology Innovation Newsletter

Noticias SAP:  Algunas características del nuevo Enhancement Package 5 para SAP ERP 6.0. y el nuevo “SAP Technology Innovation Newsletter”

Nuevo Enhancement Package para SAP ERP 6.0

SAP anunció que se encuentra ya liberado para ser descargado por los clientes el Enhancement Package 5 para el SAP ERP 6.0, (inicialmente programado para 2010 y luego retrasado). 

Los EhP son una forma efectiva, segura, expeditiva y económica de incorporar mejoras sin necesidad de instalar un nuevo release, preservando el Core del producto y modularizando las actualizaciones.

Al igual que los EhP anteriores, es acumulativo, es decir que con sólo instalar el último se incluyen los Enhancement Packages 1- 4.

Los “enhancements” de este paquete incluyen importantes mejoras “cross” en el SAP Business Objects Portfolio, herramientas de Internet, Workflow, y desde ya, en cada módulo del ERP, sobretodo en el de manufactura.

Por ejemplo, con la instalación del EHP5 se habilita además la interfaz SAP NetWeaver Business Client 3.0, y el acceso al ERP desde Safari de Apple.

Para acceder a toda la información sobre SAP Enhancement Packages for SAP ERP en el Service Market Place, acceder a: https://websmp209.sap-ag.de/erp-ehp

ehp-for-sap-erp-1

Para acceder a un “preview” de las mejoras introducidas por este paquete, están detalladas en  http://en.sap.info/erp-upgrade-update-ehp5/36601.

NOTAS:

  • La instalación de los Enhancement Packages requiere un release full de SAP, operando sobre la plataforma tecnológica SAP Netweaver 7.
  • Para descargar los paquetes debe acceder al SAP Service Marketplace, donde, a través del Switch Framework puede elegirse qué funciones se quieren instalar y activar.
  • Los Enhancement Packages actúan sobre las aplicaciones SAP en su versión estándar, no sobre las customizaciones, y las funciones de negocio, una vez activadas, no pueden deshacerse.

Para más información consultar:  http://en.sap.info/ehp5-sap-erp/54738

 

Nuevo newsletter para la comunidad  SAP: "SAP Technology Innovation Newsletter"

La innovación tecnológica es una de las claves de la estrategia de SAP, y una “exigencia” cotidiana para quienes deben mantenerse al día con la tecnología: cloud computing, timeless software, “HANA”, in-memory business data management., son primero sólo titulares en conferencias y artículos, pero luego pasan a materializarse en productos que debemos comprender y evaluar.

SAP ha generado una nueva publicación tipo Newsletter para enterar a los miembros de la comunidad SAP respecto de sus avances con estas nuevas áreas tecnológicas.

La nueva “SAP Technology Innovation Newsletter” incluye ejemplos concretos de implementación, blogs, artículos, wikis, demos y mucho más para facilitar el acercamiento a nuevos conceptos y productos.

Para suscribirse a esta publicación solo debe ser miembro de la SAP Community Network, y realizar estos cuatro pasos.

  1. Abrir su perfil SCN para actualizarlo a través de: http://www.sdn.sap.com/irj/sdn/updateprofile (*)
  2. Acceda a la solapa “Newsletters Communities
  3. Seleccione   "Technology Innovation Newsletter."
  4. Presione “Save Changes”

newsletters-SAp-1

(*) Si aún no es miembro de SCN o SDN  simplemente elija:  "Register" http://www.sdn.sap.com/irj/sdn/register) para crear un ID de usuario del SCD o SDN . Desde esta pantalla podrá realizar un "login" para acceder a una variedad de recursos y newsletters.

Más información en:

http://www.sdn.sap.com/irj/sdn/index?rid=/webcontent/uuid/f01605fc-35e9-2d10-4097-db73ac92a974

 


 

IMPORTANTE:
“Notas técnicas de SAP ABAP" se envía con frecuencia variable y sin cargo como servicio a nuestros clientes SAP. Contiene notas/tutoriales/artículos técnicos desarrollados en forma totalmente objetiva e independiente. Teknoda es una organización de servicios de tecnología informática y NO comercializa hardware, software ni otros productos.
Si desea suscribir otra dirección de e-mail para que comience a recibir las Notas Técnicas SAP, envíe un mensaje desde esa direcciónsapping@teknoda.com, aclarando nombre, empresa, cargo y país del suscriptor.

SAP, Netweaver, R/3, Fiori,S4/HANA y ABAP son marcas registradas de SAP AG. SAP no es el editor de esta publicación y no es responsable de la misma en ningún aspecto. La información contenida en esta publicación ha sido generada por nuestros especialistas a partir de fuentes consideradas confiables y del ejercicio profesional cotidiano. No obstante, por la posibilidad de error humano, mecánico, cambio de versión u otro, Teknoda no garantiza la exactitud o completud de la misma.
COPYRIGHT TEKNODA S.A. PROHIBIDA SU REPRODUCCION TOTAL O PARCIAL SIN CONSENTIMIENTO DE TEKNODA

 

Cómo dar formato a un conjunto de textos en ABAP

Utilice la función ABAP "FORMAT_TEXTLINES" para dar formato a un texto largo o a un conjunto de textos.

Muchas veces sucede que se cuenta con un conjunto de textos sueltos en diferentes variables de un programa y se necesita integrarlos en un único gran texto para mostrarlo en un reporte. A ésto se le suelen sumar restricciones de ancho y alto en la pantalla de salida así como puntos y aparte, saltos de línea y separación entre las diferentes variables que van a conformar en suma el texto saliente.

En otras ocasiones ocurre que si bien el texto ya se encuentra embebido en una única tabla interna, el mismo no responde al ancho de columna solicitado.

En este artículo se dará a conocer y se mostrará el uso de una función que puede ahorrar trabajo al desarrollador a la hora de dar formato a un texto o conjunto de ellos.

La función "FORMAT_TEXTLINES"

Esta función pertenece al Grupo de Funciones STXL y se trata de una función estándar de SAP que se encarga de ajustar un texto ingresado en forma de tabla interna al tamaño de línea especificado. Además ofrece al programador la posibilidad de elegir algunas opciones de formato, las cuales se verán a continuación.

Se ejemplificará su uso Testeando la función:

  • Ejecutar el Function Builder (Transacción SE37) y seleccionar la función ‘FORMAT_TEXTLINES’.
  • Click en Test/Execute boton-execute-ABAP
  • ABAP-crear-funcion

  • Todos los parámetros se dejan con sus valores por defecto excepto FORMATWIDTH y LINEWIDTH que se llenarán con el valor 60 a modo de ejemplo.
  •  

    ABAP-testear-funcion

  • La tabla interna LINES se llena con el texto a formatear.

Cada línea de la tabla es una estructura del tipo TLINE, de modo que responde a algunas funcionalidades de Sapscript.

    El campo TDFORMAT de tamaño 2 se puede completar con una de las siguientes opciones:

  • Vacío: La línea actual se concatenará con el texto anterior dejando un espacio en blanco de por medio.
  • ‘!0’: La línea actual se concatenará con el texto anterior sin dejar ningún espacio en blanco.
  • ‘!1’: La línea actual se insertará en una nueva línea del texto de salida.
  • El campo TDLINE de tamaño 132 se carga con el texto propiamente dicho.

    La figura siguiente lo ejemplifica:

ABAP-cambiar-lineas-entrada


  • Al ejecutar la función, se podrá ver el siguiente texto de salida de tamaño máximo de columna de 60.
  • ABAP-visualizar-lineas-entrada

     

Para tener en cuenta ...

    El Grupo de Funciones STXL contiene muchas utilidades en cuanto al manejo de textos, entre ellas las Funciones CONDENSE_TEXTLINES y SPLIT_TEXTLINE.


    n_Marco_Gatti - Especialista ABAP y Workflow

     

     

     


    Copyright 2011 - Teknoda S.A.

    IMPORTANTE:
    “Notas técnicas de SAP ABAP" se envía con frecuencia variable y sin cargo como servicio a nuestros clientes SAP. Contiene notas/tutoriales/artículos técnicos desarrollados en forma totalmente objetiva e independiente. Teknoda es una organización de servicios de tecnología informática y NO comercializa hardware, software ni otros productos.
    Si desea suscribir otra dirección de e-mail para que comience a recibir las Notas Técnicas SAP, envíe un mensaje desde esa direcciónsapping@teknoda.com, aclarando nombre, empresa, cargo y país del suscriptor.

    SAP, Netweaver, R/3, Fiori,S4/HANA y ABAP son marcas registradas de SAP AG. SAP no es el editor de esta publicación y no es responsable de la misma en ningún aspecto. La información contenida en esta publicación ha sido generada por nuestros especialistas a partir de fuentes consideradas confiables y del ejercicio profesional cotidiano. No obstante, por la posibilidad de error humano, mecánico, cambio de versión u otro, Teknoda no garantiza la exactitud o completud de la misma.
    COPYRIGHT TEKNODA S.A. PROHIBIDA SU REPRODUCCION TOTAL O PARCIAL SIN CONSENTIMIENTO DE TEKNODA

     


    FICHA TECNICA: Notas técnicas – Tips de SAP Netweaver ABAP ”Cómo dar formato a un conjunto de textos en ABAP”

    Tema: Programación ABAP. Descripción: Utilice la función ABAP "FORMAT_TEXTLINES" para dar formato a textos largos o a un conjunto de textos.

Cómo asociar en ABAP texto standard a una tarea de una Orden de Transporte

Conozca cómo asociar un texto standard a una tarea de una Orden de Transporte en ABAP, empleando el programa RSTXTRAN

La transacción SO10 que permite crear o modificar un texto standard, NO vincula directamente el texto estándar creado, con una tarea de una orden de transporte. 

La forma de lograr que los textos standards en SAPscripts o SmartForms se asocien a una tarea de una orden de transporte, es ejecutando el programa standard RSTXTRAN.

 

Uso de la transacción SO10

Al ejecutar la Tx SO10 para crear un texto standard, se cargan los siguientes datos: ZLEC_PO_LEGAL_CONDITIONS_2 (es un texto estándar que se creó como ejemplo), Text ID: ST y Language: ES, por lo tanto, el programa RSTXTRAN deberá tener los mismos datos en los campos que correspondan como se detalla más adelante.

 

Tx-SO10-ABAP-1

Como mencionamos anteriormente, para una correcta ejecución del programa RSTXTRAN es necesario que los datos en los campos marcados en referencia_SO10_ABAP de la transacción SO10 se correspondan con los campos asociados en el programa. (es decir, que tengan los mismos valores).

 

Ejecución del programa RSTXTRAN para asociar la tarea de la OT (orden de transporte) con el texto estándar

Al ejecutar el programa RSTXTRAN (dentro de la Tx SE38) se desplegará la siguiente pantalla:

:

programa-RSTXTRAN-2

 

Donde se debe especificar:

  • en el campo Name of correction: la tarea de la OT (donde se desea incluir este texto standard, la misma debe ser una orden del tipo Customizing)
  • en el campo Text key – Name : el objeto de texto que se creó (o al que se le realizaron modificaciones)
  • en el campo Text key – language: el idioma en el que se creó o modificó ese objeto. (ES en este caso)

Luego, presionar el botón Ejecutarejecutar_RSTXTRAN (F8). Se mostrará la siguiente pantalla:

 

programa-RSTXTRAN-3

Presionar “Enter” y se visualizará la pantalla:

programa-RSTXTRAN-4

 

Luego, presionar el botón boton_RSTXTRAN

 

aceptar-tran-text-5

 

Por último, seleccionar Yes y se mostrará la pantalla siguiente que indica que se incluyó ese texto en la orden especifica.

resultado_programa_RSTXTRAN-6

 

Para tener en cuenta …

  • Si lo que se necesita es copiar textos dentro de un sistema de un mandante a otro mandante, se puede utilizar el programa RSTXTCPY.
  • El programa RSTXTRAN tratado en este tip, permite preparar una tarea de una orden de transporte (para ser posteriormente transportada) entre diferentes sistemas, o copiada entre mandantes de un sistema mediante la transacción SCC1.

 

Copyright Julio 2011 - Teknoda S.A.

IMPORTANTE:
“Notas técnicas de SAP ABAP" se envía con frecuencia variable y sin cargo como servicio a nuestros clientes SAP. Contiene notas/tutoriales/artículos técnicos desarrollados en forma totalmente objetiva e independiente. Teknoda es una organización de servicios de tecnología informática y NO comercializa hardware, software ni otros productos.
Si desea suscribir otra dirección de e-mail para que comience a recibir las Notas Técnicas SAP, envíe un mensaje desde esa direcciónsapping@teknoda.com, aclarando nombre, empresa, cargo y país del suscriptor.

SAP, Netweaver, R/3, Fiori,S4/HANA y ABAP son marcas registradas de SAP AG. SAP no es el editor de esta publicación y no es responsable de la misma en ningún aspecto. La información contenida en esta publicación ha sido generada por nuestros especialistas a partir de fuentes consideradas confiables y del ejercicio profesional cotidiano. No obstante, por la posibilidad de error humano, mecánico, cambio de versión u otro, Teknoda no garantiza la exactitud o completud de la misma.
COPYRIGHT TEKNODA S.A. PROHIBIDA SU REPRODUCCION TOTAL O PARCIAL SIN CONSENTIMIENTO DE TEKNODA

 


FICHA TECNICA: Notas técnicas – Tips de SAP Netweaver ABAP ”Como asociar en ABAP texto standard a una tarea de una Orden de Transporte”

Tema: Programación ABAP., Descripción: Conozca en ABAP como asociar un texto standard a una tarea de una orden de transporte.

Cómo traducir la documentación de un programa ABAP

En ABAP, mantenga actualizada la traducción de los textos de documentación del programa.

Cuando se trabaja en un entorno multilenguaje en ABAP, es preferentemente necesario traducir todos los textos asociados del objeto de desarrollo a todos los lenguajes definidos, de manera que cada usuario visualice títulos de transacciones, parámetros de entrada, cabeceras de columnas, etc, en su idioma.

De todos los textos relacionados con un programa ABAP, en este artículo se detallará cómo traducir específicamente la Documentación.

Visualizar el texto a traducir

Desde el Editor ABAP (Transacción SE38) si se elige la opción "Documentación", se visualiza el texto que se desea traducir, como se muestra en las siguientes pantallas.

 

ABAP-traducir-documentacion-1

 

ABAP-traducir-documentacion-2

 

La traducción de este texto se puede realizar desde el  Editor ABAP o directamente desde la transacción SE63: Entorno de traducción Standard.

En las secciones siguientes se verán las diferencias entre ambas posibilidades.

Traducción desde el Editor ABAP

Desde el Object Navigator (transacción SE80) o directamente desde el Editor ABAP  (transacción SE38), se pueden traducir los textos del programa, realizando los siguientes pasos:

1. Seleccionar desde el  menú: Pasar a → Traducción (o Goto Translation), y elegir el idioma de orígen y el de destino ( al que se desea traducir), como se muestra en las siguientes pantallas:

 

ABAP-traducir-documentacion-3

ABAP-traducir-documentacion-4


Sin embargo, el procedimiento especificado anteriormente (traducir desde el Editor ABAP) no permite acceder a la documentación a traducir.

Debido a estas limitaciones, es conveniente utilizar la transacción de traducción SE63, provista por SAP, para realizar las traducciones.

 

Traducción desde la transacción SE63

1. Acceder a la transacción SE63 (Acceso: Entorno de traducción standard)

2. Navegar por las opciones de menú: Traducción → Objetos ABAP → Textos explicativos (Documentación), como se muestra en la figura siguiente:

ABAP-traducir-documentacion-5

3. Seleccionar tipo de objeto L5 Ayuda F1:

ABAP-traducir-documentacion-6

4. Luego, seleccionar RE (Reportes, grupos de funciones, BD lógicas):

ABAP-traducir-documentacion-7

5. Posteriormente, al hacer "doble click" en la línea seleccionada, se obtiene la pantalla de acceso a la  Documentación ABAP, donde se debe completar:

  • Nombre de objeto: <nombre del reporte abap>
  • Idioma fuente
  • Idioma Objetivo

y  presionar el botón "Tratar", como se muestra en la siguiente figura:

ABAP-traducir-documentacion-8

6. En el próximo paso, se obtendrá una pantalla que aparece dividida en dos partes:

  • en la parte superior, el texto de origen
  • en la sección inferior, el área en blanco para el texto traducido

Si se copia el texto original (para mantener el mismo formato) se visualiza una pantalla como la siguiente:

ABAP-traducir-documentacion-9

7. Finalmente, realizar la traducción, Salvar y Activar ABAP-traducir-documentacion-boton-grabar

ABAP-traducir-documentacion-10

 

Tener en cuenta lo siguiente al intentar realizar el paso de activación:

  • Es probable que no se cuenten con los permisos necesarios para utilizar la transacción SE63. En ese caso, de debe pedir la autorización correspondiente.
  • Si no se obtiene la información del objeto a tratar, es muy factible que la documentación no se encuentre “activada”. Para verificar esta condición, se debe acceder a la documentación del programa desde el editor en modo modificación y activarla, como se muestra en la siguiente pantalla:

ABAP-traducir-documentacion-11

Una vez activada, intentar nuevamente la ejecución de la transacción SE63.


Copyright 2011 - Teknoda S.A.

IMPORTANTE:
“Notas técnicas de SAP ABAP" se envía con frecuencia variable y sin cargo como servicio a nuestros clientes SAP. Contiene notas/tutoriales/artículos técnicos desarrollados en forma totalmente objetiva e independiente. Teknoda es una organización de servicios de tecnología informática y NO comercializa hardware, software ni otros productos.
Si desea suscribir otra dirección de e-mail para que comience a recibir las Notas Técnicas SAP, envíe un mensaje desde esa direcciónsapping@teknoda.com, aclarando nombre, empresa, cargo y país del suscriptor.

SAP, Netweaver, R/3, Fiori,S4/HANA y ABAP son marcas registradas de SAP AG. SAP no es el editor de esta publicación y no es responsable de la misma en ningún aspecto. La información contenida en esta publicación ha sido generada por nuestros especialistas a partir de fuentes consideradas confiables y del ejercicio profesional cotidiano. No obstante, por la posibilidad de error humano, mecánico, cambio de versión u otro, Teknoda no garantiza la exactitud o completud de la misma.
COPYRIGHT TEKNODA S.A. PROHIBIDA SU REPRODUCCION TOTAL O PARCIAL SIN CONSENTIMIENTO DE TEKNODA

 


FICHA TECNICA: Notas técnicas – Tips de SAP Netweaver ABAP ”Cómo traducir la documentación de un  programa ABAP”

Tema: Programación ABAP.  Descripción: Mantenga actualizada la traducción de los textos de documentación de programas ABAP.

 


 

Entendiendo versiones de SAP WAS y novedades Netweaver 7.3

¿Qué hay debajo del ERP en cada versión? Evolución de la plataforma de base SAP y novedades en SAP Netweaver 7.3

El siguiente gráfico y notas aclaratorias lo ayudarán a entender la rápida y compleja evolución de la plataforma de aplicaciones SAP, y cuál es la arquitectura subyacente del Web Application Server, tanto para el motor JAVA como para el motor ABAP.

 

evolucion-versiones-SAP-WAS-ABAP-JAVA

¿R/3, ERP, WAS, Netweaver? Entendiendo los releases ...

 

Si está corriendo 4.6x tenemos:

- Basis 4.6x

- SAP R/3 4.6x

- NO TENGO Web Application Server

 

Si está corriendo 4.7 … tenemos:

- SAP Web Application Server 6.20

- SAP R/3 Enterprise 4.7

- NO estamos en NetWeaver

 

Si está corriendo 5.0 tenemos:

- SAP NetWeaver Application Server 6.40

- SAP ERP 5.0 Son parte del Netweaver ’04 – donde NetWeaver 04 es el nombre del “paquete”

 

Y si está corriendo 6.0 … tenemos:

- SAP NetWeaver Application Server 7.0

- SAP ERP 6.0 Son parte de SAP NetWeaver 7.0 – Anteriormente 2004s – donde NetWeaver 2004s es el nombre del “paquete”.

La estrategia de upgrade de software es vía Enhancement Packages.

 

En el entorno JAVA ... SAP Netweaver Composition Environment CE 7.2 (CE)

- SAP Netweaver Composition Environment CE 7.2 es un conjunto integrado de herramientas y runtime, para desarrollar, ejecutar y manejar aplicaciones compuestas, en un etorno JAVA.

- Combina componentes de infraestructura como:

- Web Application Server JAVA EE 5 de SAP (runtime)

- Interfaces de usuario basadas en Web Dynpros JAVA

- Netweaver Visual Composer para modelar las UI

- Guided procedures para modelar procesos colaborativos

- Y una infraestructura para la definición de negocios y servicios (ES Repository)

- Además, usa un ambiente basado en Eclipse 3.3 para la composición de procesos (SAP Netweaver Developer Studio)

Nuevo: SAP Netweaver 7.3

- SAP Netweaver 7.3 es la última versión (liberada en mayo de 2011) y es un release SAP Netweaver FULL.

- Es el update más completo desde el release 7.0.

- Las mejoras principales corresponden al entorno JAVA.

Consideraciones para tener en cuenta …

- No existe todavía una version de SAP Business Suite que corra sobre el último “main release” SAP NetWeaver 7.3, liberado en Mayo de 2011.

- Existen por supuesto muchas novedades al entorno ABAP, pero implementadas a través de los Enhancement Packages, como es la estrategia de SAP actual.

- Para correr SAP NetWeaver 7.3 con varias partes del SAP Business Suite, se necesitan Add Ons. - Ver: Note 1532805 - Add-On Compatibility of SAP NetWeaver

 


¿Y Usted?

¿Trabaja sobre SAP Netweaver?

¿Tiene implementado Enhancement Packages sobre SAP ERP 6.0?

Coméntenos su experiencia ...

 


 

IMPORTANTE

Copyright 2011 - Teknoda S.A.

IMPORTANTE:
“Notas técnicas de SAP ABAP" se envía con frecuencia variable y sin cargo como servicio a nuestros clientes SAP. Contiene notas/tutoriales/artículos técnicos desarrollados en forma totalmente objetiva e independiente. Teknoda es una organización de servicios de tecnología informática y NO comercializa hardware, software ni otros productos.
Si desea suscribir otra dirección de e-mail para que comience a recibir las Notas Técnicas SAP, envíe un mensaje desde esa direcciónsapping@teknoda.com, aclarando nombre, empresa, cargo y país del suscriptor.

SAP, Netweaver, R/3, Fiori,S4/HANA y ABAP son marcas registradas de SAP AG. SAP no es el editor de esta publicación y no es responsable de la misma en ningún aspecto. La información contenida en esta publicación ha sido generada por nuestros especialistas a partir de fuentes consideradas confiables y del ejercicio profesional cotidiano. No obstante, por la posibilidad de error humano, mecánico, cambio de versión u otro, Teknoda no garantiza la exactitud o completud de la misma.
COPYRIGHT TEKNODA S.A. PROHIBIDA SU REPRODUCCION TOTAL O PARCIAL SIN CONSENTIMIENTO DE TEKNODA

 


 

FICHA TECNICA: Notas técnicas – Tips de SAP Netweaver ABAP ”Entendiendo las versiones de SAP WAS y el nuevo Netweaver 7.3”
Tema: Administracion ABAP, Administracion JAVA Descripción: Conozca qué hay debajo del ERP en cada versión y la evolución de la plataforma de base SAP.

Cómo obtener el flujo de documentos desde un programa ABAP

En ABAP, recupere el flujo de documentos de un documento comercial mediante la función RV_ORDER_FLOW_INFORMATION.

Cuando la información con la que se trabaja está vinculada a la gestión de documentos comerciales, muchas veces no se cuenta específicamente, en forma directa, con el comprobante con el que se necesita tratar. 

Sin embargo, el sistema mantiene los vínculos entre los documentos que le dieron orígen y que se generaron a partir del mismo, es decir, el sistema almacena la información del “flujo de documentos”.

Existe un módulo de función que permite obtener esa información almacenada. Esto implica que a partir de un documento comercial, devuelve su “flujo de documentos”; o sea la lista de documentos relacionados.

El módulo de función se denomina “RV_ORDER_FLOW_INFORMATION” y puede ser invocado desde un programa ABAP.

Cómo utilizar el Módulo de Función RV_ORDER_FLOW_INFORMATION

Parámetros de Entrada:

- COMW: es el único parámetro de exporting obligatorio, toma su definición de la estructura del diccionario ABAP VBCO6 y contiene el número de documento comercial del cual se quiere obtener el historial. También puede indicarse un número de posición del documento comercial y un número de reparto, si existiera.

- AUFBEREITUNG: es un parámetro opcional que permite seleccionar el nivel de dependencia de documentos en el flujo. El valor por omisión provisto por el sistema es ‘2’.

- BELEGTYP: es un parámetro opcional y se puede utilizar para filtrar la información por tipo de documento comercial.

- NACHFOLGER: es un parámetro opcional y se puede utilizar para visualizar o no los documentos sucesores. El valor por omisión propuesto por el sistema es ‘X’, es decir, que muestra todos los documentos sucesores.

- N_STUFEN: es un parámetro opcional y permite elegir el número de nivel de los documentos sucesores. El valor por omisión propuesto por el sistema es ‘50’.

- VORGAENGER: es un parámetro opcional y se puede utilizar para visualizar o no los documentos predecesores. El valor por omisión propuesto por el sistema es ‘X’, es decir, que muestra todos los documentos predecesores.

- V_STUFEN: es un parámetro opcional y permite elegir el número de nivel de los documentos predecesores. El valor por omisión propuesto por el sistema es ‘50’.

Parámetro de Salida:

- BELEGTYP_BACK: es un parámetro de importing opcional y se puede utilizar para obtener el tipo de documento del comprobante a consultar. Los tipos de documentos más comunes son:

C:: Pedido

J:: Entrega

Q: Orden de transporte (Picking)

R: Movimiento de mercadería

M: Factura de SD

Tablas:

- VBFA_TAB es el parámetro de importing obligatorio, toma se definición de la estructura del diccionario VBFA y tiene formato de tabla interna.

En este parámetro la función devuelve la lista de todos los documentos relacionados con el comprobante a consultar, con los números de documentos, los tipos de documentos, etc.

Excepciones:

NO_VBFA: genera esta excepción cuando no encuentra el documento en la tabla VBFA (Flujo de documentos comerciales).

NO_VBUK_FOUND: genera esta excepción cuando no encuentra el documento en la tabla VBUK (Documento comercial: Status cabecera y datos gestión).

Ejemplo de consulta de flujo de documentos a partir de un Pedido de Ventas:

La consulta del flujo de documentos del pedido 4972, posición 10, mediante la transacción VA03 (Visualizar pedido) devuelve el siguiente resultado:

a) Ingreso del número de pedido (Ej. 1472)

ABAP-Flujo-documentos-vis.-pedido-cliente

b) Al presionar Aceptar, se llega a la pantalla de Resumen

ABAP-Flujo-documentos-vis.-pedido-cliente-resumen

c) En esta pantalla Resumen, se elige la opción del menú: Entorno → Visualizar Flujo de Documentos:

ABAP-Visualizar-flujo-documentos

d) Luego, se obtendrá el Flujo de Documentos:

ABAP-flujo-documentos

Los pasos realizados para obtener el flujo de documentos fueron: del pedido se generó la entrega, luego la confirmación de servicio, posteriormente la factura y finalmente su correspondiente contabilización en finanzas, como se resume:

Pedido Std 1472 / 10

→ Entrega 80001237 / 10

→ Confirmación de servicio 1611237000 / 10

→ Factura 90001526 / 10

→  Doc. Contabil. 6010000027

Para utilizar el módulo de función, se debería ingresar en el parámetro COMWA, campo VBELN, el número de pedido, completado con ceros a izquierda para la posterior búsqueda en la base de datos, y en la misma estructura, campo POSNR, si se desea una posición del documento.

Luego de ejecutar la función, el parámetro VBFA_TAB contiene en cada fila de la tabla interna, un documento relacionado con su correspondiente posición, es decir que la tabla interna contendrá tantas filas como relaciones documento-posición existan.

Finalmente, para obtener el flujo de documentos, es necesario recorrer la tabla interna a través de un loop.

Ejemplo de consulta de flujo de documentos a partir de una Entrega:

En el ejemplo siguiente, se parte del documento de entrega y se obtienen los documentos de facturas relacionados:

ABAP-flujo-documentos-entrega

Las variables utilizadas en el código anteriormente especificado, toman su definición de las siguientes estructuras:

La variable “T_VBC06” toma su definición de la estructura “VBC06”:

ABAP-flujo-documentos-visualizar-estructura

Y la tabla interna “T_VBFA”, se define con referencia a la estructura de la tabla “VBFA”:

ABAP-flujo-documentos-tabla-transparente

Finalmente, luego de obtener el número de factura relacionado, el programa continúa su procesamiento.

 


Copyright 2011 - Teknoda S.A.

IMPORTANTE:
“Notas técnicas de SAP ABAP" se envía con frecuencia variable y sin cargo como servicio a nuestros clientes SAP. Contiene notas/tutoriales/artículos técnicos desarrollados en forma totalmente objetiva e independiente. Teknoda es una organización de servicios de tecnología informática y NO comercializa hardware, software ni otros productos.
Si desea suscribir otra dirección de e-mail para que comience a recibir las Notas Técnicas SAP, envíe un mensaje desde esa direcciónsapping@teknoda.com, aclarando nombre, empresa, cargo y país del suscriptor.

SAP, Netweaver, R/3, Fiori,S4/HANA y ABAP son marcas registradas de SAP AG. SAP no es el editor de esta publicación y no es responsable de la misma en ningún aspecto. La información contenida en esta publicación ha sido generada por nuestros especialistas a partir de fuentes consideradas confiables y del ejercicio profesional cotidiano. No obstante, por la posibilidad de error humano, mecánico, cambio de versión u otro, Teknoda no garantiza la exactitud o completud de la misma.
COPYRIGHT TEKNODA S.A. PROHIBIDA SU REPRODUCCION TOTAL O PARCIAL SIN CONSENTIMIENTO DE TEKNODA

 


FICHA TECNICA: Notas técnicas – Tips de SAP Netweaver ABAP ”Cómo obtener el flujo de documentos desde programas ABAP”

Tema: Programación ABAP.  Descripción: Recupere el flujo de documentos de un documento comercial desde programas ABAP.

 

 

 

Ampliaciones (Enhancements) a programas ABAP en ERP 6.0

Enhancement Framework: Nuevo método para realizar ampliaciones al código ABAP en ECC 6.0 (ERP 6.0).

Inicialmente los user-exits en ABAP eran el modo más usual de realizar ampliaciones en SAP. Este método utiliza módulos de función mediante los cuales se puede ingresar código ABAP. El sistema provee las funciones donde los user-exits son llamados y se cuenta con una interfaz definida y un programa Include. Es en éste programa Include donde se agrega el código requerido y se activa a través de un Proyecto de Ampliación vía la transacción CMOD.

El problema principal de esta solución es que sólo es posible una implementación simple. Esto significa que si el enhancement es disponible en un proyecto activo, no puede reutilizarse en otro.

Para resolver esta limitación SAP provee la utilización de BADI’s que soportan múltiples implementaciones. De esta forma se pueden crear varias instancias del mismo objeto bajo el concepto de la orientación a objetos.

SAP brinda un nuevo framework para el desarrollo de ampliaciones conocido como Enhancement Framework. Esta nueva opción esta disponible a partir de la versión ECC 6.0. (SAP ERP 6.0)

El Enhancement Framework es una nueva tecnología que brinda todas las técnicas de ampliación bajo un mismo techo.

Las diferentes técnicas son las siguientes:

  • Ampliaciones de código (plug-ins)
  • Ampliaciones de grupo de función
  • Ampliaciones de clases
  • Ampliaciones Kernel-BADI


En este tip nos focalizaremos en los enhancement ABAP para ampliaciones (Enhancements) de código ABAP.


 

II. Tipos de enhancements para ampliación de código fuente

Las ampliaciones de código fuente ABAP (source code enhancement/source code plug-in) es una de las tecnologías disponibles dentro del Enhancement Framework. Esta técnica se almacena en un programa de tipo include y no es parte del código fuente original.
Las ampliaciones de este tipo permiten ampliar la funcionalidad de transacciones estandar sin modificaciones en el código fuente.


Existen dos tipos de ampliaciones:

1. Ampliaciones de tipo Implícito
2. Ampliaciones de tipo Explícito

1. Las ampliaciones de tipo implícito son ampliaciones predefinidas provistas por SAP en el código fuente. Mediante la opción: Enhancement Operations -> Show implicit Enhancement Options aparecerán resaltadas las líneas de código relacionadas con la ampliación. Las podemos encontrar en los siguientes lugares:
- Principio y final de un Include
- Principio y final de un Método, módulo de Función, Rutina
- Al final de una estructura
- Al final de las sección privada, protegida y publica de clases locales

2. Las ampliaciones de tipo explícito pueden implementarse en cualquier parte del código fuente a excepción de algunas áreas restringidas por SAP. Para este tipo de ampliaciones existen dos formas:

- ENHANCEMENT-POINT: permiten agregar código extra en un programa fuente. Pueden ser estáticos (agregar nuevas declaraciones) o dinámicos (agregar código con alguna funcionalidad extra).
- ENHANCEMENT-SECTION: es posible reemplazar parte del código existente. Puede ser estático (modificar declaraciones) o dinámica (reemplazar la funcionalidad estándar)


Enhacements - ABAP/Fig1

En este tip se verá un ejemplo de una Implementación de Ampliación (Enhancement) de tipo Explícito.




III. Implementación de un Explicit Enhancement

Como ejemplo vamos a utilizar el reporte RFBVBIC_0 que lee un archivo, compara y actualiza los datos bancarios proporcionados. La intención es agregar un nuevo select-option para filtrar la información por el campo Sucursal.
Los siguientes son los pasos para modificar el reporte:


1- Vamos a agregar la Sucursal como parámetro en la pantalla de selección:

· Posicionar el cursor en el lugar donde se quiere agregar la ampliación

Enhacements - ABAP Fig2

 

· Presionar botón derecho: Enhancements > Create

Enhacements - ABAP Fig3

- La ampliación a agregar es de tipo ENHANCEMENT-POINT ya que sólo se agregará un parámetro en la pantalla de selección.

- Se ingresa el nombre del ENHANCEMENT POINT y del ENHANCEMENT SPOT que deberán crearse.

Enhacements - ABAP Fig4


 

- El sistema agrega en el código fuente del programa la sentencia ENHANCEMENT-POINT … SPOTS …

Enhacements - ABAP Fig5

- Cambiar el editor a modo “Enhancement” mediante el botón de la espiral Espiral (Shift + F4)
- Posicionar el cursor sobre la sentencia ENHANCEMENT-POINT y luego ir con el botón derecho del mouse a: Enhancement Implementation -> Change

Enhacements - ABAP Fig6



· En el siguiente cuadro de diálogo creamos la implementación correspondiente.

Enhacements - ABAP Fig7


· Luego de este paso, en el programa aparecerán las sentencias ENHANCEMENT – ENDENHANCEMENT donde se debe agregar el código nuevo.

Enhacements - ABAP Fig8

· Por último, se activa el Enhancement Enhancement

Enhacements - ABAP Fig9

· Al ejecutar el reporte se verá el nuevo parámetro de selección.

Enhacements - ABAP Fig10


 

2- Modificar la verificación de datos y agregar el nuevo filtro.


· Seleccionar el código a reemplazar y luego con el botón derecho del mouse posicionarse en: Enhancements -> Create

Enhacements - ABAP Fig11


· El sistema agrega en el código fuente del programa la sentencia ENHANCEMENT-SECTION … SPOTS …

Enhacements - ABAP Fig12


· Cambiar el editor a modo “Enhancement” mediante el botón de la espiral Espiral (Shift + F4)

· Posicionar el cursor sobre la sentencia ENHANCEMENT-SECTION y luego ir con el botón derecho del mouse a: Enhancement Implementation -> Create
· En el siguiente cuadro de diálogo creamos la implementación correspondiente.

Enhacements - ABAP Fig13


· Luego de este paso, en el programa aparecerán las sentencias ENHANCEMENT – ENDENHANCEMENT donde se debe agregar el código nuevo.

Enhacements - ABAP Fig14

· Por último se activa el Enhancement Enhancement


 

IV. Para tener en cuenta …

· Este escenario está referido a la inclusión de un 'ENHANCEMENT-POINT' y un 'ENHANCEMENT-SECTION' en un programa estándar.
· Lo único que se agrega en el programa estándar son estos Enhancements. La implementación de los mismos es Z, por consiguiente también el código agregado se hace sobre estas implementaciones Z.
· Solo puede haber una implementación activa para un 'ENHANCEMENT-SECTION'.


V. Donde obtener información

http://help.sap.com Portal de Ayuda de SAP
www.sdn.sap.com SAP Community Network


IMPORTANTE

Copyright Junio 2011. Teknoda S.A.

IMPORTANTE:
“Notas técnicas de SAP ABAP" se envía con frecuencia variable y sin cargo como servicio a nuestros clientes SAP. Contiene notas/tutoriales/artículos técnicos desarrollados en forma totalmente objetiva e independiente. Teknoda es una organización de servicios de tecnología informática y NO comercializa hardware, software ni otros productos.
Si desea suscribir otra dirección de e-mail para que comience a recibir las Notas Técnicas SAP, envíe un mensaje desde esa direcciónsapping@teknoda.com, aclarando nombre, empresa, cargo y país del suscriptor.

SAP, Netweaver, R/3, Fiori,S4/HANA y ABAP son marcas registradas de SAP AG. SAP no es el editor de esta publicación y no es responsable de la misma en ningún aspecto. La información contenida en esta publicación ha sido generada por nuestros especialistas a partir de fuentes consideradas confiables y del ejercicio profesional cotidiano. No obstante, por la posibilidad de error humano, mecánico, cambio de versión u otro, Teknoda no garantiza la exactitud o completud de la misma.
COPYRIGHT TEKNODA S.A. PROHIBIDA SU REPRODUCCION TOTAL O PARCIAL SIN CONSENTIMIENTO DE TEKNODA

 

Copyright © 2024 Teknoda Tech Portal & Training. Todos los derechos reservados.
Joomla! es software libre, liberado bajo la GNU General Public License.