+ All Categories

ABAP

Date post: 29-Jun-2015
Category:
Upload: jimmy-carrasco-guzman
View: 590 times
Download: 5 times
Share this document with a friend
Popular Tags:
33
ABAP ABAP/4 Paradigma Orientado al objeto , estructurado , imprescindible Aparecido adentro los años 80 Diseñado cerca SAP AG Disciplina que mecanografí a Estático , fuerte , seguro , nominativo Puestas en práctica importantes SAP R/2 ,SAP R/3 Influenciad o cerca Objetivo-c , COBOL OS Cruz-plataforma Web site https://www.sdn.sap.com/ irj/sdn/abap ABAP (Advanced Business Application Pel rogramming, originalmente Allgemeiner Berichts-Aufbereitungs-Pel rozessor = procesador general de la creación del informe) es a lenguaje de programación de alto nivel creado por Alemán software compañía SAP . Se coloca actualmente, junto a la Java más recientemente introducida, como la lengua para programar SAP Servidor del uso del Web , parte de su NetWeaver plataforma para los usos de negocio del edificio. Su sintaxis es algo similar a COBOL . Contenido 1 Historia 2 Puesta en práctica o 2.1 ¿De dónde el programa de ABAP funciona? o 2.2 Base de SAP o 2.3 Sistemas y paisajes de SAP 3 Transacciones o 3.1 Transacción del diálogo
Transcript
Page 1: ABAP

ABAP

ABAP/4

ParadigmaOrientado al objeto, estructurado, imprescindible

Aparecido adentro

los años 80

Diseñado cerca SAP AGDisciplina que mecanografía

Estático, fuerte, seguro, nominativo

Puestas en práctica

importantesSAP R/2,SAP R/3

Influenciado cerca

Objetivo-c, COBOL

OS Cruz-plataformaWeb site https://www.sdn.sap.com/irj/sdn/abap

ABAP (Advanced Business Application Pel rogramming, originalmente Allgemeiner Berichts-Aufbereitungs-Pel rozessor = procesador general de la creación del informe) es a lenguaje de programación de alto nivel creado por Alemán software compañía SAP. Se coloca actualmente, junto a la Java más recientemente introducida, como la lengua para programar SAP Servidor del uso del Web, parte de su NetWeaver plataforma para los usos de negocio del edificio. Su sintaxis es algo similar a COBOL.

Contenido

1 Historia 2 Puesta en práctica

o 2.1 ¿De dónde el programa de ABAP funciona?o 2.2 Base de SAPo 2.3 Sistemas y paisajes de SAP

3 Transacciones o 3.1 Transacción del diálogoo 3.2 Transacción del parámetroo 3.3 Transacción variableo 3.4 Divulgue la transaccióno 3.5 Transacción de OO

4 Tipos de programas de ABAP o 4.1 Programas de informeo 4.2 Programas en líneao 4.3 Piscinas del subprogramao 4.4 Piscinas de la funcióno 4.5 Mecanografíe las piscinaso 4.6 Piscinas de la claseo 4.7 Piscinas del interfaz

5 Banco de trabajo de ABAP 6 El diccionario de ABAP 7 Sintaxis de ABAP

Page 2: ABAP

o 7.1 “Helloworld”o 7.2 Reglas del formato

7.2.1 Significación blanca del espacio 7.2.2 Sensibilidad del caso

o 7.3 Declaraciones encadenadaso 7.4 Comentarios

7.4.1 Ejemplo 8 Nombramiento de la notación 9 DATOS y TIPOS 10 Objetos de ABAP 11 Declaraciones de ABAP - una descripción

o 11.1 Declaraciones declarativaso 11.2 Declaraciones de la modularizacióno 11.3 Órdenes de controlo 11.4 Declaraciones de llamadao 11.5 Declaraciones operacionales

12 Concepto único de la tabla interna en ABAP 13 Tablas internas como tipos de datos

o 13.1 Línea tipoo 13.2 Llaveo 13.3 Tipo de la tablao 13.4 Tablas internas genéricas

14 Tablas internas como objetos dinámicos de los datos 15 Elegir un tipo de la tabla

o 15.1 Tablas de estándaro 15.2 Tablas clasificadaso 15.3 Tablas Hashed:

16 Asuntos avanzados o 16.1 Entrada de hornada: conceptos

17 Ventajas de las idiomas del contemporáneo del excedente de ABAP 18 Ejemplo 19 Informe del ejemplo (tipo - ALV (espectador de la lista de ABAP)) 20 Vea también 21 Acoplamientos externos

Historia

ABAP es una de las muchas idiomas fourth-generation application-specific (4GLs) primero convertido en los años 80. Era originalmente la lengua del informe para SAP R/2, una plataforma que permitió a las corporaciones grandes construir los usos de negocio del chasis para la gerencia de materiales y la contabilidad financiera y de gerencia. ABAP era una abreviatura de Allgemeiner Berichtsaufbereitungsprozessor, el significado alemán “del procesador genérico de la preparación del informe”, pero fue retitulado más adelante a Advanced Business Application Pel rogramming. ABAP era una de las primeras idiomas para incluir el concepto de Bases de datos lógicas (LDBs), que proporciona un de alto nivel de la abstracción del nivel básico de la base de datos.

Page 3: ABAP

El lenguaje de programación de ABAP fue utilizado originalmente por los reveladores para desarrollar SAP R/3 plataforma. También fue pensado para ser utilizado por los clientes de SAP para realzar los usos de SAP - los clientes pueden desarrollar informes de encargo e interfaces con la programación de ABAP. La lengua es bastante fácil de aprender para los programadores pero no es una herramienta para el uso directo de los non-programmers. Las buenas habilidades de programación, incluyendo conocimiento del diseño de base de datos emparentada y preferiblemente también de conceptos orientados al objeto, se requieren para crear programas de ABAP.

ABAP sigue siendo la lengua para crear los programas para el servidor de cliente R/3 sistema, que SAP primero lanzó en 1992. Mientras que el hardware se desarrolló con los años 90, cada vez más de los usos y de los sistemas de SAP fueron escritos en ABAP. Antes de 2001, todos pero las funciones más básicas fueron escritos en ABAP. En 1999, SAP lanzó una extensión orientada al objeto a los objetos llamados ABAP de ABAP, junto con R/3 el lanzamiento 4.6.

Plataforma del desarrollo más reciente de SAP, NetWeaver, ayudas ambos ABAP y Java.

Puesta en práctica

¿De dónde el programa de ABAP funciona?

Todos los programas de ABAP residen dentro de la base de datos de SAP. No se almacenan en archivos externos separados como los programas de Java o de C++. En la base de datos todo el código de ABAP existe en dos formas: código de fuente, que se puede ver y corregir con las herramientas del banco de trabajo de ABAP, y código generado, una representación binaria algo comparable con Java bytecode. Los programas de ABAP se ejecutan bajo control del sistema runtime, que es parte de SAP núcleo. El sistema runtime es responsable de procesar declaraciones de ABAP, de controlar la lógica del flujo de pantallas y de responder a los acontecimientos (tales como un usuario que chasca en un botón de la pantalla). Un componente dominante del sistema runtime de ABAP es el interfaz de base de datos, que da vuelta a las declaraciones de la base de datos-independiente ABAP (“SQL abierto”) en las declaraciones entendidas por el DBMS subyacente (“SQL nativo”). El interfaz de base de datos maneja toda la comunicación con la base de datos emparentada a nombre de programas de ABAP; también contiene características adicionales tales como buffering de datos de acceso frecuente en la memoria local del servidor del uso.

SAP tiene tres diversas capas como capa de presentación (GUI), capa de uso (programas funcionados en esto) y capa donde todos los datos se almacenan y se recuperan de condiciones conducidas del usuario, comandos de la base de datos dados por el programador del usuario final con capa de presentación.

Base de SAP

Page 4: ABAP

El ambiente de la lengua de ABAP, incluyendo la verificación sintáctica, la generación del código y el sistema del tiempo de pasada, es parte del componente de la base de SAP. La base de SAP es la plataforma tecnológica que apoya la gama entera de los usos de SAP, ahora puesta en ejecución típicamente en el marco de SAP Servidor del uso del Web. En ese SAP del sentido la base se puede considerar como el “sistema operativo” en qué funcionamiento de los usos de SAP. Como cualquier sistema operativo, la base de SAP contiene los servicios bajos (las peticiones del Web por ejemplo gerencia de la memoria, de la base de datos de la comunicación o del mantenimiento) y las herramientas de alto nivel para los usuarios finales y los administradores. Estas herramientas pueden ser executables (“núcleo de SAP”) que funcionan directamente en el sistema operativo subyacente, las transacciones desarrolladas en ABAP, o los interfaces Tela-basados.La base de SAP también proporciona una capa de la abstracción entre los usos de negocio y el sistema operativo y la base de datos. Esto se asegura de que los usos no dependan directamente de una plataforma específica del servidor o de la base de datos y se puedan virar hacia el lado de babor fácilmente a partir de una plataforma a otra.

La base de SAP funciona actualmente encendido UNIX (AIX, HP-UX, Solaris, Linux), Microsoft Windows, i5/OS en IBM Sistema i (antes iSeries, AS/400) y z/OS en IBM Sistema z (antes zSeries, S/390). Las bases de datos apoyadas son DB2, Informix, MaxDB, Oracle y Servidor de Microsoft SQL (la ayuda para Informix fue continuada en el lanzamiento 7.00 de la base de SAP).

Sistemas y paisajes de SAP

Todos los datos de SAP existen y todo el software de SAP funciona en el contexto del Sistema de SAP. Un sistema consiste en una base de datos emparentada central y unos o más servidores del uso (“casos”) que tienen acceso a los datos y a los programas en esta base de datos. Un sistema de SAP contiene por lo menos un caso pero puede contener más, sobre todo por razones de el apresto y el funcionamiento. En un sistema con casos múltiples, los mecanismos que balancean de la carga se aseguran de que la carga está separada uniformemente sobre los servidores disponibles del uso.Instalaciones del Servidor del uso del Web (paisajes) consista en típicamente tres sistemas: uno para el desarrollo, uno para probar y la garantía de calidad, y uno para la producción. El paisaje puede contener más sistemas, e.g. los sistemas separados para la prueba y la pre-producción de la unidad que prueban, o él pueden contener menos, e.g. solamente desarrollo y producción, sin el QA separado; sin embargo tres es la configuración más común. Los programas de ABAP se crean y experimentan primero la prueba en el sistema de desarrollo. Se distribuyen luego a los otros sistemas en el paisaje. Estas acciones ocurren bajo control del cambio y transportan el sistema (CTS), que es responsable de control de concurrencia (e.g. evitando que dos reveladores cambien el mismo código al mismo tiempo), gerencia de la versión y despliegue de programas sobre el QA y los sistemas de producción.

Servidor del uso del Web consiste en tres capas: la capa de la base de datos, la capa de uso y la capa de presentación. Estas capas pueden funcionar en el mismo o en diversas máquinas físicas. capa de la base de datos contiene la base de datos emparentada y el software de la base de datos. capa de uso contiene el caso o los casos del sistema. Todos los procesos de uso, incluyendo las transacciones de negocio y el desarrollo de ABAP, funcionamiento en la capa de uso. capa de presentación maneja la interacción con los

Page 5: ABAP

usuarios del sistema. El acceso en línea a los servidores del uso de ABAP puede ir vía un interfaz gráfico propietario, el SAPGUI, o vía un web browser.

Transacciones

La manera normal de ejecutar código de ABAP en el sistema de SAP está introduciendo un código de transacción. Las transacciones se pueden alcanzar vía menús sistema-definidos o usuario-específicos, papel-basados. Pueden también ser comenzados introduciendo su código de transacción (un nombre mnemónico de hasta 20 caracteres) en el campo especial del comando, que está presente en cada pantalla de SAP. Las transacciones se pueden también invocar programmatically por medio de la TRANSACCIÓN y de la LICENCIA de la LLAMADA de las declaraciones de ABAP A LA TRANSACCIÓN. Los códigos de transacción se pueden también ligar para defender elementos o entradas del menú. Seleccionar tal elemento comenzará la transacción. El término “transacción” no se debe entender mal aquí: en el contexto apenas descrito, una transacción significa simplemente llamar y ejecutar un programa de ABAP. En el uso que programa, la “transacción” refiere a menudo a una operación indivisible en los datos, que está confiada en su totalidad o deshecha (rodado detrás) en su totalidad. Este concepto existe en SAP pero allí se llama un LUW (unidad lógica del trabajo). En el curso de una transacción (ejecución de programa), puede haber diverso LUWs.

Tengamos una mirada en la diversa clase de transacciones:

Transacción del diálogo

Éstas son la clase más común de transacciones. El código de transacción de una transacción del diálogo se liga a un Dynpro de un programa de ABAP. Cuando se llama la transacción, se carga el programa respectivo y se llama el Dynpro. Por lo tanto, llamadas de una transacción del diálogo una secuencia de Dynpro más bien que un programa. Solamente durante la ejecución de la lógica del flujo de Dynpro están los módulos del programa de ABAP sí mismo del diálogo se llaman. El flujo de programa puede diferenciar de la ejecución a la ejecución. Usted puede incluso asignar diversos códigos de transacción del diálogo a un programa.

Transacción del parámetro

En la definición de un código de transacción del parámetro, una transacción del diálogo se liga a parámetros. Cuando usted llama una transacción del parámetro, los campos de la entrada de la pantalla inicial de Dynpro de la transacción del diálogo se llenan de parámetros. La exhibición de la pantalla inicial puede ser inhibida especificando todos los campos obligatorios de la entrada como parámetros de la transacción.

Transacción variable

En la definición de un código de transacción variable, una transacción del diálogo se liga a una variante de la transacción. Cuando una transacción variable está alcanzada, la transacción del diálogo se llama y se ejecuta con la variante de la transacción. En

Page 6: ABAP

variantes de la transacción, usted puede asignar los valores prefijados a los campos de la entrada en varias pantallas de Dynpro en una transacción, cambiar las cualidades de los elementos de la pantalla, y ocultar las pantallas enteras. Las variantes de la transacción se mantienen en la transacción SHD0.

Divulgue la transacción

Una transacción del informe es el código de transacción que se envuelve para comenzar el proceso de divulgación. El código de transacción de una transacción del informe se debe ligar a la pantalla de la selección de un programa ejecutable. Cuando usted ejecuta una transacción del informe, el ambiente runtime internamente ejecuta la declaración de ABAP Someter-más para venir en eso.

Transacción de OO

Una nueva clase de transacción en fecha el lanzamiento 6.10. El código de transacción de una transacción de OO se liga a un método de una clase local o global. Cuando se llama la transacción, se carga el programa correspondiente, por ejemplo se generan los métodos un objeto de la clase y se ejecuta el método.

Tipos de programas de ABAP

En ABAP, hay dos diversos tipos de programas:

Programas de informe

Programas de informe siga un modelo de programación relativamente simple por el que un usuario incorpore opcionalmente un sistema de parámetros (e.g. una selección sobre un subconjunto de datos) y del programa entonces utiliza los parámetros de la entrada para producir un informe bajo la forma de lista interactiva. La salida del programa de informe es interactiva porque no es una exhibición pasiva; en lugar permite al usuario, a través de construcciones de la lengua de ABAP, obtener una opinión más detallada sobre expedientes de datos específicos vía perfora-abajo funciones, o invocar la transformación posterior con comandos de menú, por ejemplo de clasificar los datos de una diversa manera o de filtrar los datos según criterios de selección. Este método de informes de la presentación tiene grandes ventajas para los usuarios de quienes debe ocuparse de cantidades grandes de información y debe también tener la capacidad de examinar esta información de maneras altamente flexibles, sin el constreñimiento por el formato rígido o el tamaño unmanageable “listado-como” informes. La facilidad con la cual tales informes interactivos pueden ser desarrollados es una de las características más llamativas de la lengua de ABAP.El término “informe” es algo engañoso en el sentido que es también posible crear programas de informe eso modifiqúese los datos en la base de datos subyacente en vez simplemente de leerla.

Programas en línea

Programas en línea (también llamado piscinas del módulo) no produzca las listas. Estos programas definen patrones más complejos de la interacción del usuario usando una colección de pantallas. El término “pantalla” refiere a la imagen real, física que los

Page 7: ABAP

usuarios ven. Cada pantalla también tiene una “lógica del flujo”; esto refiere al código de ABAP invocado por las pantallas, es decir. la lógica que inicializa las pantallas, responde a las peticiones de un usuario y controla la secuencia entre las pantallas de una piscina del módulo. Cada pantalla tiene su propia lógica del flujo, que se divide en una sección de “PBO” (proceso antes de la salida) y de “PAI” (proceso después de la entrada). En la documentación de SAP el término “dynpro” (programa dinámico) refiere a la combinación de la pantalla y de su lógica del flujo.Los programas en línea no son invocados directamente por su nombre, sino se asocian a un código de transacción. Los usuarios pueden entonces invocarlos con customizable, papel-dependiente, los menús de la transacción.

Aparte de informes y programas en línea, es también posible desarrollar unidades compartibles del código tales como bibliotecas de la clase, bibliotecas de la función y piscinas del subprograma.

Piscinas del subprograma

Las piscinas del subprograma, como el nombre implican, fueron creadas para contener colecciones de los subprogramas que se pueden llamar externamente de otros programas. Antes del lanzamiento 6.10, ésta era la única manera que las piscinas del subprograma podrían ser utilizadas. Pero además de subprogramas, las piscinas del subprograma pueden también contener clases e interfaces locales. En fecha el lanzamiento 6.10, usted puede conectar códigos de transacción con los métodos. Por lo tanto, usted puede ahora también llamar piscinas del subprograma vía códigos de transacción. Éste está el más cercano a un programa de Java que usted puede conseguir en ABAP: ¡una piscina del subprograma con una clase que contenía un método - opinión - cañería conectó con un código de transacción!

Piscinas de la función

Las piscinas de la función, conocidas más comunmente como “función agrupan”, son bibliotecas de las funciones desarrolladas en ABAP. Las funciones diferencian de subprogramas en que son autónomas y no pertenecen a un programa específico. Las funciones de ABAP aceptan como entrada cualquier número de los parámetros de la entrada, vuelven como salida cualquier número de los parámetros de salida, y levantan excepciones si ocurre una condición de error.

Las funciones se invocan en programas de ABAP por medio de la declaración de la FUNCIÓN de la LLAMADA. Una característica muy importante de ABAP es la capacidad de llamar los módulos de la función en otro sistema de SAP o al usar externo del uso RFC Mecanismo (de la llamada de función alejada). Es también posible llamar funciones asynchronously; el programa de ABAP después no espera la función para volver sino que por el contrario continúa inmediatamente, mientras que la función se ejecuta en un contexto separado.

Mecanografíe las piscinas

El tipo piscinas es los precursores al tipo general definiciones en el diccionario de ABAP. Antes del lanzamiento 4.0, solamente los tipos de datos elementales y las estructuras planas se podían definir en el diccionario de ABAP. El resto de los tipos con

Page 8: ABAP

los cuales' ve estado generalmente disponible tuvo que ser definido MECANOGRAFÍAN adentro el tipo piscinas. En fecha el lanzamiento 4.0, el tipo piscinas era solamente necesario para las constantes. En fecha el lanzamiento 6.40, las constantes se pueden declarar en las secciones públicas de clases globales y el tipo piscinas se puede substituir por las clases globales.

Piscinas de la clase

Las piscinas de la clase sirven como envases para exactamente una clase global. Además de la clase global, pueden contener tipos globales y clases/los interfaces locales que se utilizarán en la clase global. Una piscina de la clase es cargada en memoria usando uno de sus componentes. Por ejemplo, un método público se puede llamar de cualquier programa de ABAP o vía un código de transacción conectado con el método. Usted mantiene piscinas de la clase en el constructor de la clase.

Piscinas del interfaz

Las piscinas del interfaz no sirven como envases para exactamente uno global interfaz-nada más y nada menos. Usted utiliza una piscina del interfaz poniendo su interfaz en ejecución en clases y creando variables de la referencia con el tipo de su interfaz. Usted mantiene piscinas del interfaz en el constructor de la clase.

Banco de trabajo de ABAP

El banco de trabajo de ABAP contiene diversas herramientas para corregir objetos del depósito. Estas herramientas proveen de usted una amplia gama de la ayuda que cubre el ciclo de desarrollo entero de software. Las herramientas más importantes para crear y corregir objetos del depósito son:Redactor de ABAP para la escritura y corregir código del programaDiccionario de ABAP para procesar definiciones de tabla de la base de datos y recuperar tipos globalesPintor del menú para diseñar el interfaz utilizador (barra de menú, toolbar estándar, uso toolbar, asignación de la llave de funcionamiento)Pintor de la pantalla para diseñar las pantallas (programas dinámicos) para el usuario dialogaConstructor de la función para los módulos de la función el exhibir y de proceso (rutinas con los interfaces definidos que están disponibles a través del sistema)Constructor de la clase para exhibir y procesar ABAP se opone clases

El diccionario de ABAP

El diccionario de ABAP es una facilidad que controla completamente integrada del ambiente de los datos. Contiene todas las definiciones para los dominios, los elementos de datos, las estructuras, las tablas, las opiniónes, las ayudas de la búsqueda, los objetos de la cerradura, los objetos de Matchcode, el generador del mantenimiento de la tabla, y el generador de la descripción de la tabla.

Con estos objetos en su depósito, el diccionario de ABAP:

Page 9: ABAP

Hace cumplir integridad de datos Maneja definiciones de los datos sin redundancia Se integra firmemente con el resto del banco de trabajo del desarrollo ABAP/4.

Hacer cumplir integridad de datos es el proceso de asegurarse de que los datos incorporados en el sistema son lógicos, termina, y constante. Cuando las reglas de la integridad de datos se definen en el diccionario ABAP/4, el sistema previene automáticamente la entrada de datos inválidos. Definir las reglas de la integridad de datos en el nivel del diccionario significa que tienen que ser definidas solamente una vez, más bien que en cada programa que acceso esos datos.

Los siguientes son ejemplos de los datos que carecen integridad:

Un campo de la fecha con un valor del mes de 13 Una orden asignada a un número del cliente que no existe Una orden no asignada a un cliente

Que manejan los datos definiciones sin redundancia son el proceso de ligar la información similar a la misma definición de los datos. Por ejemplo, una base de datos del cliente es probable contener el número de la identificación de un cliente en varios lugares. El diccionario de ABAP proporciona la capacidad de definir las características de un número de la identificación del cliente en solamente un lugar. Esa definición central entonces se puede utilizar para cada caso de un número de la identificación del cliente.

La integración del diccionario de ABAP con el resto del ambiente del desarrollo permite a programas de ABAP reconocer automáticamente los nombres y las características de los objetos del diccionario.

Además, el sistema proporciona la navegación fácil entre los objetos del desarrollo y las definiciones de diccionario. Por ejemplo, como programador, usted puede doble-tecleo en el nombre de un objeto del diccionario en su código del programa, y el sistema le llevará directamente a la definición de ese objeto en el diccionario ABAP/4.

Cuando se cambia un objeto del diccionario, un programa que se refiere al objeto cambiante se referirá automáticamente a la nueva versión la próxima vez que el programa funciona. Porque se interpreta ABAP, no es necesario a los programas recompile que se refieren a objetos cambiantes del diccionario.

Sintaxis de ABAP

Esta breve descripción del sintaxis de ABAP comienza inevitable con “hola el programa ubicuo del mundo”.

“Helloworld”

PRUEBA DEL PROGRAMA.ESCRIBA “HelloWorld”.

Page 10: ABAP

Este ejemplo contiene dos declaraciones, una en cada línea. Las palabras claves son PROGRAMA y ESCRIBEN. El programa exhibe una lista en la pantalla. En este caso, la lista consiste en la línea “hola mundo”.

Reglas del formato

Significación blanca del espacio

ABAP no tiene ninguna restricción del formato. Usted puede incorporar declaraciones en cualquier formato, así que una declaración puede ser mellada, usted puede escribir varias declaraciones en una línea, o separar una sola declaración sobre varias líneas. El único requisito es que cada declaración termina en un período.

Usted debe separar palabras dentro de una declaración con por lo menos un espacio. El sistema también interpreta el extremo de la línea marcador como espacio.

La dos-línea “hola programa del mundo” de antedicho se podía también escribir como

PRUEBA DEL PROGRAMA. ESCRIBA “hola el mundo”.

o aún como:

PRUEBA DEL PROGRAMA.ESCRIBA “hola el mundo”.

El formato libre es conveniente, pero con código complejo, tal como bloques profundamente jerarquizados de IF/ELSE, puede conseguir difícil. El redactor de ABAP por lo tanto ofrece una función de la “impresora bonita”, que puede tomar cuidado de la muesca apropiada.

Una excepción obvia a la regla del libre-formato es literales del texto. Un literal del texto es una secuencia de caracteres alfanuméricos en el código del programa incluido en apóstrofes. Si un literal del texto en una declaración de ABAP extiende a través de más de una línea, después un `y un' carácter se deben utilizar para combinar una sucesión de los literales del texto en solo. Ejemplo:

USERPROMPT = “por favor doble-tecleo en una línea en la lista de la salida” y “ver los detalles completos de la transacción.”.

Sensibilidad del caso

Las declaraciones de ABAP no son caso-sensibles. El código siguiente es perfectamente permitido:

prueba del programa.Escriba “hola el mundo”.

Page 11: ABAP

Los usuarios pueden configurar la manera que el texto original se presenta (todo el mayúscula, toda la minúscula, las palabras claves de ABAP en nombres mayúsculos y variables en minúsculas, etc.) según su propia preferencia.

Declaraciones encadenadas

El lenguaje de programación de ABAP permite que usted concatene declaraciones consecutivas con una primera parte idéntica en una declaración de cadena.

Para concatenar una secuencia de declaraciones separadas, escriba la parte idéntica solamente una vez y ponga dos puntos (:) después de ellos. Después de los dos puntos, escriba las partes restantes de las declaraciones individuales, separándolas con comas. Asegúrese de que usted ponga un período (.) después de que la parte pasada para informar al sistema donde la cadena termina.

El encadenamiento es muy de uso frecuente adentro ESCRIBE declaraciones. ESCRIBA acepta apenas una discusión, así que si por ejemplo usted deseara exhibir tres campos de una estructura llamada FLIGHTINFO, usted tendría que cifrar:

ESCRIBA FLIGHTINFO-CITYFROM.ESCRIBA FLIGHTINFO-CITYTO.ESCRIBA FLIGHTINFO-AIRPTO.

El encadenamiento de las declaraciones da lugar a una forma más legible y más intuitiva:

ESCRIBA: FLIGHTINFO-CITYFROM, FLIGHTINFO-CITYTO, FLIGHTINFO-AIRPTO.

En la cadena, los dos puntos separan el principio de la declaración de las piezas variables. Después de los dos puntos o de las comas, usted puede insertar cualquier número de espacios.

Usted podría, por ejemplo, escribir la misma declaración como esto:

ESCRIBA: FLIGHTINFO-CITYFROM, FLIGHTINFO-CITYTO, FLIGHTINFO-AIRPTO.

En una declaración de cadena, la primera parte (antes de los dos puntos) no se limita a la palabra clave de las declaraciones. Por ejemplo, el código

SUMA = SUMA + 1.SUMA = SUMA + 2.SUMA = SUMA + 3.SUMA = SUMA + 4.

podía ser escrito en forma encadenada:

SUMA = SUMA +: 1, 2, 3, 4.

Comentarios

Page 12: ABAP

ABAP tiene 2 maneras de definir el texto como a comentario.

asterisco (>>*<<) en la columna extrema izquierda de una línea marcas que alinea un comentario. A comillas dobles (>>“<<) dondequiera en una línea hace el resto de esa línea un comentario.

Ejemplo

Programa del ** del ***************************************: RESERVACIONES Autor del ** del **: Octeto de Joe, 07-Jul-2007 RESERVACIONES DEL INFORME

DEL *************************************** DEL **.

* Lea las reservaciones del vuelo de la base de datos SELECTA * DE FLIGHTINFO DONDE CLASE = “Y” “Y = economía O CLASE = “C”. “C = negocio (...)

Nombramiento de la notación

Esta lista es incompleto; usted puede ayudar cerca ampliarlo.

ABAP tiene una gran cantidad de convenciones de nombramiento para diversos elementos de lengua. Debajo está una lista.

ALV_* Espectador anticipado de la lista AS_* Métodos que realizan el tipo conversiones CHECK_* Compruebe los métodos CH_* Parámetros que cambian CL_* Nombre de la clase CO_* Constantes DR_* Referencia de datos IF_* Interfaz INT_* Tabla interna IS_* Métodos que vuelven un valor boleano L_* Indica que el objeto de los datos es local LC_* Constante local LR_* Gama local LVC_* Control del espectador de la lista ON_* Tratante del acontecimiento PA_* Parámetros PE_*/EX_* Parámetro de la exportación PI_*/IM_* Parámetro de la entrada RA_* Gamas/tipo gama de RE_* Resultado RF_* Variable de la referencia SET_* Métodos de los Accessors SO_* Seleccionar-Opciones

Page 13: ABAP

ST_* Estructura TA_* Tabla de estándar interna TC_* Control de la tabla TH_* Tabla Hashed interna TP_* Otras variables TS_* Tabla clasificada interna TY_* Tipos T_* La variable es una tabla (T_MY_TABLE_VARIABLE) WA_* Área de funcionamiento

DATOS y TIPOS

Es una fuerza especial de ABAP que usted pueda definir una gran variedad de tipos de datos y se oponga ese palmo el espectro de tipos de datos muy elementales a los tipos muy complejos y dinámicos. Por lo tanto, el tema de los declaraciones de ABAP es absolutamente extenso.

ABAP acepta todos los tipos de datos definidos en el diccionario de SAP o en el tipo piscinas. Los tipos se pueden también definir dentro del programa sí mismo. Opóngase numérico (I para el número entero, F para la coma flotante), el decimal comprimido (p), el carácter (C o N, donde el tipo de N se utiliza para las secuencias numéricas que se pueden utilizar en el cómputo) o el hexadecimal (x). Los campos de la fecha (tipo D) y los campos del tiempo (tipo T) tienen “doblarse” naturaleza; en un contexto de la entrada-salida se comportan como secuencias, pero en un contexto de cómputo son números enteros numéricos. Esto hace los cálculos de fecha y de la hora extremadamente fáciles. Por ejemplo:

DATESENT = “20070901”.VALIDTO = DATESENT + 60.ESCRIBA: La “oferta es válida hasta”, VALIDTO DD/MM/YYYY.

En este ejemplo, un literal de cadena que representa el 1 de septiembre de 2007 se asigna a DATESENT. DATESENT entonces se utiliza en un cálculo numérico para producir otra zona de informaciones, VALIDTO. VALIDTO entonces se hace salir como secuencia. El modificante opcional de “DD/MM/YYYY” exhibe la fecha en un nformat predefinido, aquí “31/10/2007”. Sin el modificante la fecha exhibiría como “20071031”.

Datos y tipos

Todas las variables de ABAP deben estar explícitamente declarado para ser utilizado. La convención está para que todos los declaraciones estén en la tapa del programa, o del subprograma. El declaración consiste en el nombre, tipo, longitud (cuando sea aplicable), modificantes adicionales (e.g. el número de los decimales implicados para un campo del decimal comprimido) y opcionalmente un valor inicial:

* Tipos primitivos:DATOS: CONTADOR MECANOGRAFÍE I, VALIDEZ TIPO VALOR DE I 60, TAXRATE (3) MECANOGRAFÍE DECIMALES de P 1, TIPO C. de LASTNAME (a 20).

Page 14: ABAP

* Tipos del diccionario:DATOS: ORIGEN MECANOGRAFÍE EL PAÍS.

* Tabla interna:DATOS: T_FLIGHTS MECANOGRAFÍE LA TABLA DE FLIGHTINFO, T_LOOKUP MECANOGRAFÍE LA TABLA HASHED DE FLT_LOOKUP.

* Objetos:DATOS: RESERVACIÓN MECANOGRAFÍE LA REFERENCIA A CL_FLT_BOOKING.

Note el uso de los dos puntos de encadenar juntas declaraciones consecutivas de los DATOS.

Objetos de ABAP

La orientación del objeto en ABAP es una extensión de la lengua de ABAP que las marcas disponibles las ventajas de orientado al objeto programando, por ejemplo la encapsulación, interfaces, y herencia. Esto ayuda a simplificar usos y a hacerlos más controlables.

Los objetos de ABAP son totalmente compatibles con la lengua existente, así que usted puede utilizar declaraciones y unidades existentes de la modularización en los programas que utilizan objetos de ABAP, y puede también utilizar objetos de ABAP en programas existentes de ABAP. La nota, sin embargo, que la verificación sintáctica es más fuerte en programas objeto de ABAP, y algunas formas sintácticas (las generalmente más viejas) de ciertas declaraciones no se permiten.

Declaraciones de ABAP - una descripción

El primer elemento de una declaración de ABAP es la palabra clave de ABAP. Esto determina la categoría de la declaración. Las diversas categorías de declaración son como sigue:

Declaraciones declarativas

Estas declaraciones definen tipos de datos o declaran los objetos de los datos que son utilizados por las otras declaraciones en un programa o una rutina. Las declaraciones declarativas recogidas en un programa o una rutina componen su partición del declaración.

Ejemplos de palabras claves declarativas:

TIPOS, DATOS, TABLAS

Declaraciones de la modularización

Estas declaraciones definen los bloques de proceso en un programa de ABAP.

Las palabras claves de la modularización se pueden dividir más a fondo en:

Page 15: ABAP

· Palabras claves del acontecimiento

Usted utiliza las declaraciones que contienen estas palabras claves para definir bloques del acontecimiento. No hay declaraciones especiales para concluir el proceso de bloques - terminan cuando se introduce el bloque de proceso siguiente.

Los ejemplos de las palabras claves del acontecimiento son:

EN LA PANTALLA DE LA SELECCIÓN, START-OF-SELECTION, EN USER-COMMAND

· Definir palabras claves

Usted utiliza las declaraciones que contienen estas palabras claves para definir subprogramas, los módulos de la función, los módulos del diálogo y los métodos. Usted concluye estos bloques de proceso usando las declaraciones del EXTREMO.

Ejemplos de palabras claves definitivas:

FORME ..... ENDFORM, FUNCIÓN… ENDFUNCTION, MÓDULO… ENDMODULE.

Órdenes de control

Usted utiliza estas declaraciones para controlar el flujo de un programa de ABAP dentro de un bloque de proceso según ciertas condiciones.

Ejemplos de las palabras claves del control:

SI, MIENTRAS QUE, ENCAJONE

Declaraciones de llamada

Usted utiliza estas declaraciones a los bloques del proceso de llamada que usted ha definido ya usando declaraciones de la modularización. Los bloques que usted llama pueden estar en el mismo programa de ABAP o en un diverso programa.

Ejemplos de las palabras claves de la llamada:

EL MÉTODO DE LA LLAMADA, TRANSACCIÓN DE LA LLAMADA, SOMETE, SE VA A

Declaraciones operacionales

Estas palabras claves procesan los datos que usted ha definido usando declaraciones declarativas.

Ejemplos de palabras claves operacionales:

EL MOVIMIENTO, AGREGA

Page 16: ABAP

Concepto único de la tabla interna en ABAP

Las tablas internas proporcionan medios de tomar datos de una estructura fija y de almacenarlos en memoria de trabajo en ABAP. Los datos son línea almacenada al lado de línea en memoria, y cada línea tiene la misma estructura. En ABAP, las tablas internas satisfacen la función de órdenes. Puesto que son objetos dinámicos de los datos, el programador se ahorra la tarea de la gerencia dinámica de la memoria en sus programas. Las tablas internas deben ser utilizadas siempre que haya una necesidad de procesar un dataset con una estructura fija dentro de un programa. Un uso particularmente importante para las tablas internas está para los datos que almacenan y que ajustan a formato de una tabla de la base de datos dentro de un programa. Son también una buena manera de incluir las estructuras de datos muy complicadas en un programa de ABAP.

Como todos los elementos en el tipo concepto de ABAP, las tablas internas pueden existir pues los tipos de datos y como los datos se oponen tipo de datos de A son la descripción abstracta de una tabla interna, en un programa o centralmente en el diccionario de ABAP, que usted utiliza crear un objeto concreto de los datos. El tipo de datos es también una cualidad de un objeto existente de los datos.

Tablas internas como tipos de datos

Las tablas y las estructuras internas son los dos datos estructurados mecanografían adentro ABAP. El tipo de datos de una tabla interna es especificado completamente por su línea tipo, llave, y tipo de la tabla.

Línea tipo

La línea tipo de una tabla interna puede ser cualquier tipo de datos. El tipo de datos de una tabla interna es normalmente una estructura. Cada componente de la estructura es una columna en la tabla interna. Sin embargo, la línea tipo puede también ser tabla elemental u otra interna.

La línea tipo puede también referir a valor del puntero de la referencia de un objeto de ABAP. Si dos objetos de ABAP no son relacionados, no tienen la misma línea tipo. La línea tipo se almacena en el valor del indicador de la referencia y se puede ver en la depuración. Si un objeto procura tener acceso a los componentes de otro objeto sin relación, usted recibirá un error que especifica que la línea tipos no empareja.

Llave

La llave identifica filas de la tabla. Hay dos clases de llave para las tablas internas - la llave estándar y una llave definida por el usario. Usted puede especificar si la llave es ÚNICA o NON-UNIQUE. Las tablas internas con una llave única no pueden contener entradas duplicadas con la misma llave. La unicidad depende del método de acceso de la tabla.

Si una tabla tiene una línea tipo estructurada, su llave de defecto consiste en todas sus columnas no numéricas que no sean las referencias o ellos mismos las tablas internas. Si

Page 17: ABAP

una tabla tiene una línea tipo elemental, la llave de defecto es la línea entera. Una tabla interna que tiene una línea tipo que sea sí mismo una tabla interna, tiene una llave vacía.

La llave definida por el usario puede contener cualquier columna de la tabla interna que no sea las referencias o ellos mismos las tablas internas. Las tablas internas con una llave definida por el usario se llaman las tablas dominantes. Cuando usted define la llave, la secuencia de los campos dominantes es significativa. Usted debe recordar esto, por ejemplo, si usted se prepone clasificar la tabla según la llave.

Versiones más últimas de ABAP permiten la definición de llaves secundarias.

Tipo de la tabla

El tipo de la tabla se determina cómo ABAP tendrá acceso a entradas individuales de la tabla. Las tablas internas se pueden dividir en tres tipos:

Las tablas de estándar tienen un índice linear interno. (Piense en índice como “número de registro”. No debe ser confundido con un índice de la base de datos, por ejemplo). De un tamaño particular hacia arriba, los índices de tablas internas se administran como árboles. En este caso, los gastos indirectos de administración del índice aumentan de la relación logarítmica y no linear al número de líneas. El sistema puede tener acceso a expedientes usando el índice de la tabla o la llave. El tiempo de reacción para el acceso dominante es proporcional al número de entradas en la tabla. La llave de una tabla de estándar es siempre no-única. Usted no puede especificar una llave única. Esto significa que las tablas de estándar se pueden llenar siempre muy rápidamente, puesto que el sistema no tiene que comprobar si haya ya entradas existentes.

Las tablas clasificadas siempre se ahorran clasificadas por la llave. También tienen un índice interno. El sistema puede tener acceso a expedientes usando el índice de la tabla o la llave. El tiempo de reacción para el acceso dominante es logarítmico proporcional al número de las entradas de la tabla, puesto que el sistema utiliza una búsqueda binaria. La llave de una tabla clasificada puede ser única o no-única. Cuando usted define la tabla, usted debe especificar si la llave es ser única o no. Las tablas de estándar y las tablas clasificadas se conocen genéricamente como tablas del índice.

Las tablas Hashed no tienen ningún índice linear. Usted puede tener acceso solamente a una tabla hashed usando su llave. El tiempo de reacción es independiente del número de las entradas de la tabla, y es constante, desde el acceso del sistema las entradas de la tabla usando un algoritmo del picadillo. La llave de una tabla hashed debe ser única. Cuando usted define la tabla, usted debe especificar la llave como ÚNICA.

Tablas internas genéricas

Desemejante del otro local los datos mecanografían adentro los programas, usted no tienen que especificar el tipo de datos de una tabla interna completamente. En lugar, usted puede especificar una construcción genérica, es decir, la llave o la llave y la línea tipo de un tipo de datos interno de la tabla pueden seguir siendo sin especificar. Usted puede utilizar las tablas internas genéricas para especificar los tipos de símbolos del campo y los parámetros del interfaz de procedimientos. Usted no puede utilizarlos para declarar objetos de los datos.

Page 18: ABAP

Tablas internas como objetos dinámicos de los datos

Los objetos de los datos que se definen con el tipo de datos de una tabla interna, o directamente como tabla interna, siempre se definen completamente por lo que se refiere a su línea tipo, llave y método de acceso. Sin embargo, el número de líneas no es fijo. Así las tablas internas son objetos dinámicos de los datos, puesto que pueden contener cualquier número de líneas de un tipo particular. La única restricción en el número de líneas que una tabla interna puede contener es los límites de su instalación del sistema. La memoria máxima que se puede ocupar por una tabla interna (su administración interna incluyendo) es 2 gigabytes. Una figura más realista es hasta 500 megabytes. Una restricción adicional para las tablas hashed es que pueden no contener más de 2 millones de entradas. La línea tipos de tablas internas puede ser cualquier tabla de los tipos de datos de ABAP - elementales, estructurada, o interna. Las líneas individuales de una tabla interna se llaman las líneas de la tabla o las entradas de la tabla. Cada componente de una línea estructurada se llama una columna en la tabla interna.

Elegir un tipo de la tabla

El tipo de la tabla (y particularmente el método de acceso) ese usted utilizará depende de cómo las operaciones internas típicas de la tabla lo más frecuentemente serán ejecutadas.

Tablas de estándar

Éste es el tipo más apropiado si usted va a tratar las entradas individuales de la tabla usando el índice. El acceso del índice es el acceso posible más rápido. Usted debe llenar una tabla de estándar añadiendo líneas (ABAP AÑADEN la declaración), y lee, modifica y suprime entradas especificando el índice (opción de ÍNDICE con el comando relevante de ABAP). El tiempo de acceso para una tabla de estándar aumenta de una relación linear con el número de las entradas de la tabla. Si usted necesita el acceso dominante, las tablas de estándar son particularmente útiles si usted puede llenar y procesar la tabla en pasos separados. Por ejemplo, usted podría llenar la tabla añadiendo entradas, y después la clasifica. Si usted utiliza la opción de la búsqueda binaria con el acceso dominante, el tiempo de reacción es logarítmico proporcional al número de las entradas de la tabla.

Tablas clasificadas

Éste es el tipo más apropiado si usted necesita una tabla se clasifique que mientras que usted la llena. Usted llena las tablas clasificadas usando la declaración del RELLENO. Las entradas se insertan según la secuencia de clase definida con la llave de la tabla. Se reconoce cualquier entrada ilegal tan pronto como usted intente agregarla a la tabla. El tiempo de reacción para el acceso dominante es logarítmico proporcional al número de las entradas de la tabla, puesto que el sistema utiliza siempre una búsqueda binaria. Las tablas clasificadas son particularmente útiles para el proceso parcialmente secuencial en un LAZO si usted especifica el principio de la llave de la tabla en DONDE condición.

Tablas Hashed:

Page 19: ABAP

Éste es el tipo más apropiado para cualquier tabla donde está acceso la operación principal dominante. Usted no puede tener acceso a una tabla hashed usando su índice. El tiempo de reacción para la constante dominante del restos del acceso, sin importar el número de las entradas de la tabla. Como las tablas de la base de datos, las tablas hashed tienen siempre una llave única. Las tablas Hashed son útiles si usted desea construir y utilizar una tabla interna que se asemeje a una tabla de la base de datos o para procesar cantidades grandes de datos.

Asuntos avanzados

Entrada de hornada: conceptos

Proceso de sesiones

Una sesión de la entrada de hornada es un sistema de unas o más llamadas a las transacciones junto con los datos que se procesarán por las transacciones. El sistema ejecuta normalmente las transacciones en una sesión non-interactively, permitiendo la entrada rápida de datos a granel en un sistema R/3.

Una sesión registra transacciones y datos en un formato especial que se pueda interpretar por el sistema R/3. Cuando el sistema lee una sesión, utiliza los datos en la sesión para simular la entrada en línea de transacciones y de datos. El sistema puede llamar transacciones e incorporar datos usando la mayor parte de las instalaciones que están disponibles para los usuarios interactivos.

Por ejemplo, los datos que una sesión incorpora en las pantallas de la transacción están conforme a la misma consistencia que comprueba que en la operación interactiva normal. Además, las sesiones de la entrada de hornada están conforme a la comprobación usuario-basada de la autorización que es realizada por el sistema.

Hay tres métodos de entrada de hornada:

(1) En Método de entrada directa, los programas son proporcionados por el sistema de SAP. Estos programas están disponibles para los usos estándares. Bajo este método, la base de datos es actualizada con un módulo de la función, que es responsable de ejecutar los cheques de consistencia apropiados.

(2) En Método de la transacción de la llamada, el programa de ABAP lee los datos externos que está presente en el servidor del uso o de la presentación, y utiliza la TRANSACCIÓN de la LLAMADA de la declaración de ABAP USANDO funcionar una declaración de SAP.

(3) En Método de la sesión el programa lee los datos y el sistema de SAP almacena los datos en “una sesión de la entrada de hornada”. La sesión registra las acciones que se requieren para transferir datos en el sistema usando las transacciones normales de SAP.

Ventajas de las idiomas del contemporáneo del excedente de ABAP

Page 20: ABAP

Objetos de ABAP ofrece un número de ventajas, incluso para la programación procesal. Muchas características avanzadas de ABAP utilizan interfaces orientados al objeto.

Compartir datos: Con ABAP los objetos compartidos, usted puede agregar datos en memoria una vez en una localización central. Diversos usuarios y los programas pueden entonces tener acceso a estos datos sin la necesidad del copiar.

Dirección de excepción: El concepto clase-basado de la excepción de ABAP, usted puede definir un flujo especial del control para una situación de error específica y proveer del usuario con la información sobre el error.

Persistencia que se convierte: Para el almacenamiento permanente de datos en ABAP, usted utiliza las tablas de la base de datos emparentada por medio de la base de datos-independiente SQL abierto, que se integra en ABAP. Sin embargo, usted puede también almacenar objetos seleccionados transparente o tener acceso a la base de datos integrada o a otras bases de datos usando el SQL propietario.

Conectividad e interoperabilidad: Los servicios de la infraestructura y del Web del intercambio son los medios por los cuales los reveladores pueden poner una arquitectura en ejecución servicio-orientada. Servicios del Web, usted puede proveer y consumir de servicios independientemente de la puesta en práctica o del protocolo. Además, usted puede hacer tan dentro de NetWeaver y en la comunicación con otros sistemas. Con las características de la infraestructura del intercambio, usted puede permitir, manejar, y adaptar panoramas de la integración entre los sistemas.

Fabricación de realces: Con el marco del realce, usted puede realzar los programas, módulos de la función, y las clases globales sin la modificación así como substituyen código existente. El marco del interruptor le permite activa solamente objetos o realces específicos del desarrollo en un sistema.

Ejemplo

'De SAP NetWeaver: '

*-----------------------------------------------------------------------* fije una cerradura exclusiva en el objeto-tipo y objeto-identificación llanos *-----------------------------------------------------------------------SI NO el lf_bapi_error = verdad.SI (NO el istourhd-doc_type ES INICIAL) Y (NO el istourhd-doc_id ES INICIAL)

FUNCIÓN “ENQUEUE_/DSD/E_HH_RAREF” de la LLAMADA QUE EXPORTA el obj_typ = obj_id del istourhd-doc_type = foreign_lock de las EXCEPCIONES del istourhd-doc_id = 1 system_failure = 2

Page 21: ABAP

OTROS = 3.SI sy-subrc <> 0.* termine el proceso…el lf_bapi_error = verdad. - * … y agregue el mensaje a la tabla de vuelta REALIZAN USAR set_msg_to_bapiret2 lt_return QUE CAMBIA del espacio del gc_enqueue_refdoc del gc_istourhd del sy-msgno sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4 del gc_abort sy-msgid.ENDIF.ENDIF.ENDIF. “error del bapi

Informe del ejemplo (tipo - ALV (espectador de la lista de ABAP))

DIVULGUE Z_ALV_SIMPLE_EXAMPLE_WITH_ITAB.el ejemplo del *Simple del ************************************************************************ para utilizar ALV y para definir los datos de ALV en una definición *table interna del *data del ************************************************************************

tabula:marav. “Tabla MARA y tabla MAKT

*---------------------------------------------------------------------* * Los datos que se exhibirán en ALV * con el sintaxis siguiente, automóvil de la poder de REUSE_ALV_FIELDCATALOG_MERGE * matically determinan el fieldstructure de estos datos del programa fuente:comience de imat ocurre 100, matnr como marav-matnr, “maktx material del número como marav-maktx, “matkl corto material del texto como marav-matkl, del “ntgew material grupo (así que usted puede probar para hacer “sumas intermedias) como marav-ntgew, el “peso neto, gewei numérico del campo (así que usted puede probar “hacen sumas) como marav-gewei, “extremo de la unidad del peso (apenas ser completo) del imat.

*---------------------------------------------------------------------* * Otros datos necesitaron * el campo almacenar el i_repid conocido de los datos del informe como sy-repid.* el campo para comprobar i_lines de los datos

Page 22: ABAP

de la longitud de la tabla tiene gusto del sy-tabix.

*---------------------------------------------------------------------* * Datos para la exhibición TYPE-POOLS de ALV: SLIS.tipo SLIS_T_FIELDCAT_ALV del int_fcat de los datos.

*---------------------------------------------------------------------* seleccionar-opciones:s_matnr para el objeto MAT1 del matchcode del marav-matnr.

*---------------------------------------------------------------------* empezar-de-selección.

* los datos leídos en imat de la tabla seleccionan * de marav en campos correspondientes del imat de la tabla donde matnr en s_matnr.

* Compruebe si el material era i_lines claros encontrados.describa las líneas i_lines del imat de la tabla.si teniente 1 de los i_lines.* El usar hardcoded escribe aquí para el upload fácil escribe: /“Ningunos materiales encontrados.”.salida.endif.

extremo-de-selección.

* Para utilizar ALV, necesitamos una DDIC-estructura o una cosa llamada Fieldcatalogue.* El fieldcatalouge se puede generar por FUNCTION * “REUSE_ALV_FIELDCATALOG_MERGE” de una tabla interna de cualesquiera * divulga fuente, incluyendo este informe.*---------------------------------------------------------------------*

* Almacene el i_repid = el sy-repid conocidos del informe.

* Cree Fieldcatalogue de la FUNCIÓN interna “REUSE_ALV_FIELDCATALOG_MERGE” de la LLAMADA de la tabla QUE EXPORTA I_PROGRAM_NAME = i_repid I_INTERNAL_TABNAME ¡= “IMAT” “mayúsculas!I_INCLNAME = i_repid QUE CAMBIA CT_FIELDCAT = EXCEPCIONES del int_fcat INCONSISTENT_INTERFACE = 1 PROGRAM_ERROR = 2 OTROS = 3.*explanations:* I_PROGRAM_NAME es el programa que llama esta función *

Page 23: ABAP

* I_INTERNAL_TABNAME es el nombre de la tabla interna que usted desea * para exhibir en ALV * * I_INCLNAME es la ABAP-fuente donde se define la tabla interna * (DATOS….) * CT_FIELDCAT contiene el Fieldcatalouge para el cual necesitamos más adelante * Exhibición de ALV

SI SY-SUBRC <> 0.escriba: /“Returncode”, sy-subrc, “de la FUNCIÓN REUSE_ALV_FIELDCATALOG_MERGE”.ENDIF.

los *This eran el fieldcatlogue *---------------------------------------------------------------------* *

* llamada para la FUNCIÓN “REUSE_ALV_LIST_DISPLAY” de la LLAMADA de la exhibición de la lista de ALV QUE EXPORTA I_CALLBACK_PROGRAM = i_repid IT_FIELDCAT = el int_fcat TABULA T_OUTTAB = EXCEPCIONES PROGRAM_ERROR del imat = 1 OTRO = 2.

*explanations:* I_CALLBACK_PROGRAM es el programa que llama esta función * * IT_FIELDCAT (apenas hecho por REUSE_ALV_FIELDCATALOG_MERGE) contiene * ahora la definición de los datos necesitó para la exhibición * * I_SAVE permite que el usuario ahorre sus propias disposiciones * * T_OUTTAB contiene los datos que se exhibirán en ALV

SI SY-SUBRC <> 0.escriba: /“Returncode”, sy-subrc, “de la FUNCIÓN REUSE_ALV_LIST_DISPLAY”.ENDIF.

Vea también

Software de ERP

Page 24: ABAP

asXML

Acoplamientos externos

Portal de la ayuda de SAP ABAP en Red del revelador de SAP Objetos de ABAP ABAP en Abra el proyecto del directorio El proyecto de ABAP Wiki Los foros de la ayuda de SAP ABAP


Recommended