✒️ABAP La creación de una clase global
ABAP La creación de una clase global
Lección 6 Video: Creación de una clase Global
Se utiliza la transacción SE24
Luego damos el nombre a la clase
Luego seleccionamos class
En la siguiente ventana damos la descripción y se presionamos el botón a la derecha podemos definir una relación de herencia especificando el nombre de la superclase y en instanciación seccionamos (pública, privada o protegida)
Vamos a definir los atributos de la clase
Speed: atributo de instancia y visibilidad como pública, tipo de atributo es i, e introducimos una descripción para el mismo.
Maxspeed:
Stop
Write:
Luego vamos a la solapa Eventos
INCREASE_SPEED: atributo de instancia y visibilidad como pública
CALCULATE_STPO: atributo de instancia y visibilidad como pública
DISPLY_WRITE: atributo de instancia y visibilidad como pública
Para este método definimos parámetros
P_PARAMETRO: tipo p y descripción parámetro
P_RESULTADO: tipo p y descripción Ressultado
Ahora creamos una excepción
En el método DISPLY_WRITE
CAMBIO_ESTADO_VEHICULO
También creamos el evento cambio estado vehículo, como de instancia con visibilidad publica y una descripción acorde a su propósito
MARCA_VEHICULO
Por ultimo podemos crear tipos para utilizar en la clase global y finalmente grabamos y activamos la clase.
Audio tips:
Cuando se define una clase de forma global con la transacción SE24, esta genera un programa Abap el cual se denomina POOL de clases y es de tipo k.
Pool class tiene parte de definiciones y otra de implementaciones de la clase, este programa es muy diferente a otro programa Abap normal.
Las diferencias:
Los programas Abap, reportes, module pool o los módulos de funciones normalmente tiene un lugar donde se declaran y definen los datos globales y son visibles en todo el bloque de procesamiento del programa, tienen una parte de definición donde se pueden definir datos y tipos de objetos pero no se pueden definir objetos de datos ni field simbols, los tipos que se definen en el pool de clases son solo visibles en la parte de implementación de la clase global, por otro lado los únicos bloques de procesamiento que se pueden utilizar en un pool de clases es la parte de implementación de una clase global, la parte de implementación solo se puede implementar los métodos declarados en la clase global, no se puede utilizar cualquiera de los otros bloques de procesamiento Abap, tales como los módulos de dialogo, los bloques de eventos, las subrutinas y los módulos de solución
Los módulos de procesamiento del spool de clases no son controlados por el entorno de ejecución Abap no ocurren evento y no puede llamar a los módulos o procedimientos de dialogo, los pool de clases sirven específicamente para la programación de las clases, solo puede acceder a las funciones de una clase utilizando su interface,
Por otro lado los eventos y módulos de dialogo no están permitidos en las clases entonces no se pueden procesar las pantallas en las clases, no se pueden crear listados y pantallas de selección de las clases ya que estas no pueden reaccionar a los eventos adecuados, si el objetivo es hacer q las pantallas estén disponibles en las clases en lugar de módulos de dialogo podemos llamar a los métodos de la clase de la lógica de proceso de la pantalla.
 
 
 
Sobre el autor
Publicación académica de Jhon Deibys Cano Pineda, en su ámbito de estudios para la Carrera Consultor ABAP.
Jhon Deibys Cano Pineda
Profesión: Ingeniero de Sistemas - Colombia - Legajo: WZ11E
✒️Autor de: 118 Publicaciones Académicas
🎓Egresado de los módulos:
Certificación Académica de Jhon Cano Pineda