✒️ABAP POO Las Clases
ABAP POO Las Clases
CLASES – LECCION 1-4
CLASES LOCALES Y GLOBALES
Las clases en ABAP se pueden declaran globalmente o localmente. Las clases globales se definen en el generador de clases, a través de la transacción SE24 en el ABAP WORKBENCH
CLASES, son objetos ABAP que se crean mediante la transacción estándar SE24
CLASES GLOBALES, pueden ser declaradas globalmente o localmente
TRANSACCION SE24, es la transacción que corresponde al GENERADOR DE CLASES ABAP, para administración de clases e interfaces definidas en el sistema ABAP
WORKBENCH, es un conjunto de herramientas que se utilizan para el desarrollo, testing y ejecución de los programas ABAP
Las últimas versiones del WorkBench de ABAP incluye los objetos ABAP y la Programación orientada a objetos.
Podemos clasificar a estas herramientas según su función.
De descripción y navegación contamos con:
- Overview del ABAP Workbench
- Object Navigator
- Información del Repositorio de Objectos
De tareas de desarrollo de ABAP:
- Diccionario ABAP
- Editor ABAP
- Class Builder
- Function Builder
- Screen Painter
- Menu Painter
- Package Builder
Del Entorno de programación:
- Mantenimiento de Text Elements
- Mantenimiento de Variants
- Mantenimiento de Messages
- Mantenimiento de Transacciones
- Editor Splitscreen
De Testing de aplicaciones ABAP:
- Herramientas de análisis ABAP
De desarrollo de aplicaciones web:
- Web Application Builder for ITS Services
- Web Application Builder for BSPs
- Editor de Transformaciones
- Web Dynpro ABAP
- Screen Design Time Conversion
De arquitectura orientada a servicio:
- Creación y Configuración de Service Providers y Service Consumers
De realización de modificaciones:
- Asistente de modificaciones
Otras herramientas:
- Sistema de transportes (Transport Organizer)
- Mantenimiento de Áreas de Menu
- Mantenimiento de Shared Objects (Objetos compartidos)
Estas clases son almacenadas en el CLASS POOLS en la librería de clases en el repositorio R/3, todos los programas ABAP en un sistema R/3 pueden acceder a las clases globales
NOTA, las clases locales se definen en un programa ABAP y solo pueden ser invocadas desde el programa en el que se ha definido
DEFINICION DE CLASES LOCALES, son un conjunto de sentencias que están entre las sentencias CLASS-ENDCLASS
La parte declarativa contiene la declaración de todos los componentes de la clase (atributos, métodos y eventos). Cuando se definen clases locales, la parte declarativa pertenece a los datos globales del programa
Si se declaran métodos en la parte declarativa de una clase, se deberá escribir también su parte de implementación.
CLASS <class> IMPLEMENTATION.
……
ENDCLASS
VISIBILIDAD DE UNA CLASE, la parte declarativa o definición de una clase se divide en tres áreas de distinta visibilidad.
Estas tres áreas definen la visibilidad externa de los componentes de la clase, esto es, la interface de la clase y el usuario.
- PROTECTED SECTION (parte protegida) todos los componentes declarados en la sección protegida son accesibles para todos los métodos de la clase y de las clases que heredan de ella
- Una clase contiene componentes
- Las clases implementan métodos
Los componentes de las clases representan sus contenidos. Todos los componentes son declarados en la parte declarativa de la clase, los componentes definen atributos de los objetos en una clase
Los objetos ABAP, las clases pueden definir los siguientes componentes
- METODOS
- Dependientes de instancias, donde el contenido de los atributos es especifico de cada objeto, se declaran usando la sentencia DATA
- Dependientes de instancia, estos métodos se declaran usando la sentencia METHOS, pueden acceder a todos los atributos de una clase y pueden desencadenar todos los eventos de una clase
- Especiales, además de los métodos normales que se pueden llamar con la sentencia CALL METHOD, hay dos métodos especiales llamados CONSTRUCTOR y CLASS_CONSTRUCTOR que son automáticamente llamados cuando se crea un objeto (CONSTRUCTOR) o cuando se accede por primera vez a los componentes de la clase (CLASS_CONSTRUCTOR)
EVENTOS, son acontecimientos o sucesos que utilizan los objetos o las clases para desencadenar la ejecución de un método en otro objeto o clase.
La unión entre el disparador de evento TRIGGER y el manejador de evento HANDLER no es establecida de antemano, sino en el entorno de ejecución.
El vínculo de unión entre el disparador y el manejador (TRIGGER y HANDLER) es establecido dinámicamente en el programa usando la sentencia clase ANDLER, el disparador y el manejador pueden ser objetos o clases.
El manejador de evento determina los eventos a los cuales tiene que reaccionar, los eventos de una clase pueden ser desencadenados en los métodos de la misma clase usando la sentencia RAISE EVENT
Un método de la misma o diferente clase, se declara como un método manejado de eventos utilizando la adición FOR EVENT OF
Existen dos tipos de eventos:
- Independiente de instancia o estático, se declaran con la sentencia CLASS-EVENTS, todos los métodos pueden desencadenar eventos estáticos, los eventos estáticos son el único tipo de eventos que pueden ser desencadenados por un método estático
TIPOS Y CONSTANTES, se pueden definir tipos de datos ABAP dentro de una clase con la sentencia TYPE, los tipos de datos son específicos de cada instancia y existen una sola vez para todos los objetos de clase
Las constantes son tipos especiales de atributos estáticos, su valor se fija cuando son declarados y no pueden ser cambiados, se declaran usando la sentencia CONSTANTS, las constantes existen solo una vez para todos los objetos de la clase
 
 
 
Sobre el autor
Publicación académica de Cristian Darwin Arteaga Diaz, en su ámbito de estudios para el Máster ABAP POO.
Cristian Darwin Arteaga Diaz
Profesión: Abap Developer - Argentina - Legajo: GP81Q
✒️Autor de: 165 Publicaciones Académicas
🎓Cursando Actualmente: Master Funcional para Consultores ABAP
🎓Egresado de los módulos:
- Máster ABAP Orientado a Objetos
- Carrera Consultor ABAP Nivel Avanzado
- Carrera Consultor ABAP Nivel Inicial
Disponibilidad Laboral: FullTime
Presentación:
Me considero una persona responsable, siempre estoy investigando y capacitandome para adquirir nuevos conocimientos, tengo el gusto de iniciarme en el mundo de abap como desarrollador, es genial.
Certificación Académica de Cristian Arteaga