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

Uso de la función ABAP que genera tiempos de espera

Utilice en ABAP la función que genera tiempos de espera, para encontrar la información en las tablas físicas

En ocasiones es necesario obtener información de las tablas físicas del sistema luego de una creación de datos. Por ejemplo, cuando en una misma transacción, a partir de los datos ingresados para una compañía en particular, se desea replicar la información para el resto de las compañías.

Dependiendo de varios factores, como la cantidad de usuarios accediendo al sistema en ese momento, los tipos de procesos que están corriendo, etc., puede suceder que no se puedan obtener los datos requeridos porque aún no se ha completado la grabación en las tablas.

 

 

El módulo de función 'AM_PING_AND_WAIT' permite crear "tiempos de espera", expresados en segundos, que al combinarlos con sentencias que manejan ciclos (como DO ... ENDDO) posibilitan retardar la búsqueda de los datos.

 

 

En el siguiente ejemplo, se accede a la tabla ANLA que contiene datos maestros de los activos fijos; si la ejecución de la sentencia SELECT es exitosa, se almacenan los datos en la estructura REC y se abandona el ciclo con la sentencia EXIT; en caso contrario, se invoca a la función y luego reinicia el ciclo:

DO.

SELECT SINGLE *  FROM ANLA WHERE BUKRS = C_BUKRS

AND   ANLN1 = C_N1

AND   ANLN2 = C_N2.

IF SY-SUBRC = 0.                                          "Ya se grabó

REC_ASSET-ANLKL  = ANLA-ANLKL.

REC_ASSET-TXT50  = ANLA-TXT50.

REC_ASSET-TXA50  = ANLA-TXA50.

REC_ASSET-ORD41  = ANLA-ORD41.

REC_ASSET-ORD42  = ANLA-ORD42.

REC_ASSET-ORD43  = ANLA-ORD43.

REC_ASSET-ORD44  = ANLA-ORD44.

REC_ASSET-GDLGRP = ANLA-GDLGRP.

REC_ASSET-ANLUE  = ANLA-ANLUE.

REC_ASSET-POSNR  = ANLA-POSNR.

REC_ASSET-LIFNR  = ANLA-LIFNR.

REC_ASSET-LIEFE  = ANLA-LIEFE.

EXIT.

ELSE.                                                         "Todavía no se grabó

CALL FUNCTION 'AM_PING_AND_WAIT'

EXPORTING

I_SECONDS = 1

EXCEPTIONS

OTHERS    = 1.

ENDIF.

ENDDO.

 


 

Copyright 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

 

Business Add-Ins(V4.6) – Asist. de Modificaciones (v4.5)

Conozca algunas herramientas para ampliaciones y modificaciones a código standard (V4.5)

A partir de las versiones 4.5 y 4.6, para satisfacer las necesidades particulares de las diferentes instalaciones, surgen nuevas herramientas que facilitan la tarea de modificar o ampliar las aplicaciones estándares de SAP, así como también de llevar registro de las mismas. Se pueden mencionar, entre otras, las siguientes herramientas: MODIFICATION ASSISTANT V4.5, BUSINESS ADD-INS V4.6 y BTE (BUSINESS TRANSACTION EVENTS V4.0) 

Hasta hoy, los modificaciones al standard y los Customer Exits eran las únicas técnicas desarrolladas para ampliar y modificar el standard.

Customer exits - Exit points pre-definidos por SAP dentro del código fuente permitiendo insertar nuestro propio código y, de este modo, “ampliar” el standard.

 

Modificaciones al Standard - Son aquellas que realmente, extienden o modifican el código fuente, las cuales requieren un avanzado conocimiento de programación y obligan a estudiar y entender el flujo lógico de la aplicación para poder realizar modificaciones. Los objetos modificados de esta forma, no podrán ser automáticamente re-importados después de una actualización, deberán ser comparados y ajustados “a mano”.

Business Add-Ins- Son exit points pre-definidos en el código fuente que le permite a los desarrolladores insertar su propia lógica durante la implementación o simplemente adoptar alguna de las soluciones suplementarias provistas por SAP.  A diferencia de los Customer Exits, están rodeados de multiples capas de desarrollo de software (por SAP, Partners y clientes, como versiones para un país específico o soluciones industriales, etc.). Los Business Add-Ins pueden ser definidos para filtrar valores, esto permite controlar la ampliación y hacerla dependiente de un criterio específico (por ej., el código de país).

Asistente de Modificaciones - Como su nombre lo indica, simplifica la tarea de modificar el standard. Trabaja “fuera de escena” registrando todos los cambios hechos a los objetos standard  en una capa separada del ABAP Workbench.  Además, las herramientas de Workbench fueron rediseñadas para operar en “modo modificación”, previniendo que se sobrescriba código sin darse cuenta o que se borren porciones sin quererlo. Las modificaciones  hechas con el asistente de modificaciones generalmente pueden ser re-importadas durante el upgrade sin intervención manual, en la mayoría de los casos.

Ampliando programas con Business Add-Ins

Una Business Add-In contiene todas las interfases necesarias para la implementación de una tarea específica.

Para realizar la ampliación, primero debe definirse. Los desarrolladores deberán crear la interfase para la ampliación en la transacción SE18 y llamarla en el punto indicado del programa de aplicación.  Los clientes podrán luego seleccionar la ampliación e implementarla acorde a sus necesidades.

Definición de una Business Add-In

  1. Iniciar el Add-In Manager (SE18)
  2. Colocarle un nombre a la ampliación y asociarla con una interfase de objetos ABAP.
  3. Añadir definiciones de métodos a la interfase. El sistema lo llevará automáticamente al Class Builder.
  4. Agregar parámetros a los métodos y documentar la ampliación.
ABAP-Business-AddIn

Para tener en cuenta ...

  • SAP garantiza compatibilidad para todas las interfases de Business Add-Ins. La actualización de versiones no afecta los llamados de las ampliaciones desde el standard. No es necesario registrar los Business Add-Ins en el SSCR.
  • Los Business Add-Ins no reemplazan a los Customer Exits.
  • Las ampliaciones, interfases y las clases generadas permanecerán en el namespace de desarrollo.  Las implementaciones de los Business Add-Ins permanecerán en los respectivos name spaces de las personas que los crearon.
  • Analizar que clase de Business Add-Ins se quiere diseñar ya que cambiar de una clase a la otra trae sus consecuencias.
  • El llamado a un Business Add-In requiere alocar una instancia de la clase de de ese Add-In. Esto puede generar problemas de performance si el el add-in es llamado repetidamente.
  • Si se trabaja con multiple-user Business Add-Ins no deben utilizarse parámetros de importación (IMPORTING), ya que se está trabajando en modo público con múltiples consumidores de eventos.

Copyright 2000 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

 

 

Reportes SAP ABAP utiles

Ejemplos de algunos reportes útiles en SAP Netweaver:

RSTXSCRP:

Este reporte permite realizar un “download” de objetos SAPScripts (Formularios, texto estándar, etc.) a archivos.

 

Tipo dispositivo

Formulario

Estilo

Texto estándar

Objeto

Modo (EXPORT, IMPORT)           EXPORT

 

Sist.fich.:servidor

Sist.fichero:GUI

Fichero                         /tmp/********&&&&

Formato binario de fichero

 

 

Seguir leyendo este artículo >>

 

Verificación de objetos no autorizados

Cuando se realiza una operación, para la cual el Administrador del Sistema ha restringido el acceso, es posible utilizar la transacción SU53. Luego de efectuar la operación en la cual el sistema advierte la falta de autorización, esta transacción permite conocer el nombre de los objetos de seguridad con sus valores específicos para el usuario.

 

El siguiente ejemplo presenta un mensaje de error:

 

Entrar factura acreedor: Datos cabecera

ABAP-verificacion-objetos-no-autorizados-1

Si en la línea de comando se ingresa /nSU53 serán desplegados los siguientes datos:

ABAP-verificacion-objetos-no-autorizados-2

Mantenimiento de Jobs

Mantenimiento de jobs en SAP

RSBTCDEL:

Este programa permite borrar jobs ya programados.

ABAP-Mantenimiento-de-jobs-1

RSSNAPDL:

Borra los errores viejos del tipo dumps.

Máximo entradas a conservar              30.000

Entradas a borrar en bloque                 500

RSPO0041:

Borra órdenes antiguas de Spool.

ABAP-Mantenimiento-de-jobs-2



 

 

 

 

BTE (Business transaction events V4.0)

A partir de la versión 4, para satisfacer las necesidades particulares de las diferentes instalaciones, surgen nuevas herramientas que facilitan la tarea de modificar o ampliar las aplicaciones estándares de SAP. Se pueden mencionar, entre otras, las siguientes herramientas: MODIFICATION ASSISTANT V4.5, BUSINESS ADD-INS V4.6 y BTE (BUSINESS TRANSACTION EVENTS V4.0)

Se detallará el concepto y uso de las BTE. Estas son ampliaciones que fueron desarrolladas para el módulo de Contabilidad Financiera (FI), que permiten agregar componentes adicionales en los programas estándares por medio de funciones (FUNCTION MODULES).

Una característica común de las BTE, es que son independientes de mandante a diferencia de las ampliaciones denominadas “Customer Exits”.

Existen dos tipos de BTE:

  • Publish & Subscribe (también denominados interfaces de información): Estas interfaces informan al software externo que cierto evento, por ejemplo la creación de un regitro maestro, fue procesado y provee al mismo de la información generada por ese evento. El proceso externo puede recibir información, pero de ninguna manera puede afectar al proceso estándar de SAP. Esto se debe a que la implementación del mismo es mediante un FUNCTION MODULE que sólo tiene parámetros de Importing. Un uso de este procedimiento, puede ser por ejemplo, lanzar procesos adicionales que no devuelven ningún resultado.
  • Process Interface: Estos son procesos que reemplazan a un proceso estándar en particular. En contraste con Publish & Subscribe, el intercambio de datos se puede producir en ambas direcciones. Esto se debe a que la implementación del mismo es mediante un FUNCTION MODULE que también tiene parámetros de Exporting.

Una diferencia a destacar es que los “Publish & Subscribe” permiten la existencia de múltiples operaciones adicionales por cada BTE, sin que interfieran entre ellas, utilizando para esto el concepto de “Partner”.

SAP provee ejemplos de FUNCTION MODULE para cada BTE. También determina en qué lugar del programa estándar podrá ser invocado, para lo cual le asigna un “número de evento” y genera una entrada TBE01.

Para lograr que se active el “evento”, el desarrollador deberá generar un “producto” (identificador de activación de evento) en la tabla TBE04 y asignar a dicho “producto” un FUNCTION MODULE.

El FUNCTION MODULE a asignar deberá ser una copia del modelo otorgado por SAP y deberá estar dentro del rango de nombres asignados a clientes (Z_).

En resumen, se enumeran a continuación los pasos involucrados:

  1. Ejecutar la transacción FIBF.
  2. Seleccionar la BTE deseada, para lo cual puede utilizar los reportes suministrados en el Info System, que puede ser accedido desde la opción Entorno en la transacción FIBF.
  3. Activar el producto.
  4. Copiar la FUNCTION MODULE de ejemplo y agregar código fuente.
  5. Asignar la FUNCTION MODULE al producto usando “Settings → P/S Modules” ó  “Settings →Process” en la transacción FIBF.

Copyright 2000 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

 

 

 

Uso de íconos en ABAP

Mediante la transacción ICON es posible visualizar el listado de todos los íconos existentes en R/3 con su identificación y descripción.

Para incorporar estos íconos en un programa report es necesario activar mediante un include la lista de íconos y luego imprimir el ícono invocándolo por su descripción.

Ejemplo:

include <icon>.

write: / icon_print as icon,         "output as icon

'Imprimir'.

 

Efecto:

Resolución del dibujo correspondiente al ícono de impresión y luego la impresión de la palabra Imprimir.

Otra forma de lograr el mismo efecto, sin necesidad de activar el include con la lista de íconos es utilizando la identificación interna del ícono. Notar que la identificación del ícono comienza y finaliza con el símbolo de arroba (@).

Ejemplo:

write: /  '@03@' ,  'Imprimir'.

Conceptos de ampliaciones

SAP proporciona recursos e instrumentos que permiten intromisiones "controladas" al código, a través de distintos recursos y mediante el concepto de ampliaciones o Enhancements. La idea es expandir la funcionalidad dentro del sistema SAP para atender las necesidades adicionales del cliente, sin modificar el código fuente del programa standard.

Algunas herramientas especiales permiten hacer modificaciones sin realizar cambios a los objetos de SAP R/3 estándares.

FIELD EXIT: Luego de ingresar un valor en un campo, éste puede ser chequeado a través de un “field exit”. El sistema permite capturar el valor del campo ingresado para ser validado y eventualmente cambiado por una función ABAP.

USER EXIT: Exit points pre-definidos por SAP dentro del codigo fuente estándar permitiendo insertar nuestro propio código y, de este modo, “ampliar” el estándar. Los campos que estarán disponibles son previamente definidos por SAP.

VALIDACIÓN: Las validaciones permiten ingresar datos considerando ciertas reglas especiales. Acorde a las reglas establecidas, el sistema evalúa una entrada y un mensaje puede aparecer en la terminal del usuario si no se ha cumplido con la validación. Un paso de validación contiene sentencias de prerequisitos y sentencias de chequeo. Ambas son definidas usando lógica Booleana o llamando a una rutina de ABAP.

SUSTITUCION: El contenido de campos puede ser cambiado usando Sustitución. Cuando un dato está siendo ingresado, éste puede ser sustituido por otro valor considerando ciertas reglas previamente definidas. Un paso de sustitución contiene sentencias de prerequisitos, valores de sustitución y exit de sustitución. Todas ellas son definidas con lógica booleana o llamando a rutinas ABAP.

SET: Varios valores o rangos de valores son especificados bajo el nombre de “SET”. Los “Sets” son más fáciles de crear y mantener que las tablas. Aportan más flexibilidad al mantenimiento del sistema.

KEY WORDS: Permiten cambiar la descripción de un campo de acuerdo a su elemento de datos. El “key word” corto usado en la mayoría de las pantallas para identificar el contenido del campo también puede ser modificado.

 


IMPORTANTE

 

Copyright Noviembre 2000 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 ”Conceptos de Ampliaciones"
Tema: Programación ABAP, Enhancements. Descripción: Algunas herramientas especiales permiten hacer modificaciones sin realizar cambios a los objetos de SAP R/3 estándares.

Comandos generales en campos ABAP

Conozca algunos comandos generales más usados en campos de sesiones ABAP

/n:

Al procesar una sesión de batch-input en forma visible, este comando permite ignorar el registro actual y avanzar al próximo. Idem para el caso de estar procesando batch input con visualización sólo errores.

 

/bend:

Al procesar un batch-input en forma visible o visualizando sólo errores, con este comando es posible cancelar el proceso desde el registro actual en adelante, sin cancelar lo que ya fue procesado. En el caso de visualizar sólo errores sólo es posible ejecutar el comando en el momento en el cual el sistema se detiene para mostrar un error.

 

/nend:

Cierra todas las sesiones de R/3 abiertas para salir y desconectarse del sistema. Este comando se puede ejecutar desde cualquier pantalla de SAP.

 

/nxxxx:

Ejecuta cualquier transacción XXXX desde cualquier sesión de SAP.

 

/o:

Muestra un listado de todas las sesiones abiertas.

 

/oxxxx:

Abre una nueva transacción XXXX en una sesión de Sap adicional.

 

/i:

Borra la sesión actual.

 

/h:

Inicia el modo debug en el programa que se esté corriendo.

 

Comandos de usuario

Los comandos mencionados a continuación, permiten ahorrar pasos. Son atajos que evitan navegar por varias opciones de menú.

Estos comandos pueden ser utilizados en reportes que generen listados.

%pri: Imprime el reporte en cuestión, este comando se comporta de idéntica forma al ejecutar la opción de menú Reporte – Imprimir, ó al invocar el icono de impresión.

%pc: Permite realizar un download del reporte, este comando corresponde a la navegación por menú: Lista - Grabar/enviar – Fichero. Es necesario indicar el formato de archivo con el cuál se generará en la PC y su ubicación y nombre.

%sc: Ejecuta la opción de menú EdiciónBuscar.

Los siguientes comandos corresponden a los botones de navegación por página que se encuentran en la parte superior derecha de la pantalla de SAPGUI. Estos botones aparecen si fuera necesario desplazar la pantalla para ver más información.

P+: Próxima página.

p-: Página anterior.

P++: Final del reporte.

p--: Principio del reporte.

 


 

Copyright 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.