🚀PROMO #PLANCARRERA2024 - 🔥Bonificaciones, Precios Congelados y Cuotas

 X 

✒️ABAP La definición de Clases, Atributos, Métodos y Eventos

ABAP La definición de Clases, Atributos, Métodos y Eventos

ABAP La definición de Clases, Atributos, Métodos y Eventos

Lección 2

Definición de clases, Atributos, Métodos y Eventos.

1 Clases locales y globales

Las clases en ABAP se pueden definir locales y globales

Las clases Globales: de definen en el generador de clases a través de la transacción SE24 en el ABAP Workbench

Transacción SE24: Generador de Clases para la administración de las clases e interfaces definidas en el sistema SAP.

Estas clases son almacenadas en el Class pools en la librería de clases de repositorio R/3. Todos los programas ABAP en un sistema R/3 pueden acceder a las clases globales

Sabías que: las clases globales se definen en un programa ABAP y solo pueden ser invocados desde el programa en el que se han definido.

Cuando se usa una clase en un programa ABAP el sistema busca primero una clase local con el nombre especifico. Si encuentra ninguna entonces busca una clase global. A partir de la cuestión de la visibilidad, no hay diferencia entre usar una clase global o una clase local. Lo que si cambia sensiblemente es la manera en la que una clase local y una clase global son creadas.

Si se define una clase que se va a usar en un único programa, normalmente es suficiente con definir los componentes visibles de manera que la clase se ajusta a nuestro programa. Por otro lado, las clases globales deben estar preparadas para ser usada en cualquier parte.


2 Definición de clases locales:

Las clases locales son el conjunto de sentencias que están entre las sentencias CLASS….ENDCLASS

Una definición completa de una clase constará de una parte declarativa, lo que se conoce definición de clase, en la que se define los componentes, y una parte de implementación, lo que se conoce como implementación de la clase, en la que se implementan estos componentes.

La parte declarativa o definición de una clase está comprendida entre las sentencias.

La parte declarativa contiene la declaración de todos los componentes de la clase (Atributos, métodos y eventos), cuando se define clases locales, la parte declarativa pertenece a los datos globales del programa por tanto se habrá de situar al principio del programa.

Si se declara métodos en la parte declarativa de una clase, se deberá escribir también su parte de implementación. Esta es la que va incluir entre las siguientes sentencias.

CLASS <CLASS>IMPLEMENTATION.

…..

ENDCLASS.

La parte de implementación contiene la implementación de todos los métodos de la clase. Esta parte actúa como bloque, esto quiere decir que cualquier sección de código que no forma parte del bloque no será accesible.

3 Estructura y componentes de una clase

La estructura de una clase se define principalmente basándose en:

ü Una clase contiene componentes

ü Cada componente se asigna a una sección de visibilidad (publico, protegido o privado).

ü Las clases implementan métodos.

Los componentes de una clase representan sus contenidos. Todos los componentes son declarados en el parte declarativa de la clase, los componentes definen los atributos de los objetos en una clase.

Cuando se define una clase, cada componente es asignado a una de las tres distintas secciones de visibilidad que define la interface externa de la clase. Todos los componentes de una clase son visibles dentro de la clase. Además todos comparten el mismo espacio por la que sus nombres deben ser únicos dentro de la clase.

Hay dos tips de componentes en una clase, aquellos que existen separadamente para cada objeto de una clase, y aquellos que existen solo una vez para la clase entera, independientemente el número de instancias. Estos componentes son conocidos como dependiente de instancia o independientes de instancias (o estáticos) respectivamente

En los objetos ABAP, las clases pueden definir los siguientes componentes

· Atributo

· Método

· Evento

Atributo: Son los campos internos de una clase y pueden tener cualquier tipo de dato ABAP.

El estado de un objeto viene determinado por el contenido de sus atributos. Un tipo de atributos son las variables referenciadas. Esta variable permite crear y acceder a los objetos, de manera que si se define en una clase permite acceder a otros objetos desde dentro de la clase.

Existen dos tipos de atributos:

Ø Dependientes de Instancias: donde el contenido de los atributos es específico de cada objeto. Se declaran usando la sentencia DATA.

Ø Independientes de instancia o estático: donde el contenido de los atributos define el estado de la clase y es validado para todas las instancias de la clase.

Los atributos estáticos existen solo una vez para la clase. Se declaran usando la sentencia CLASS-DATA. Son accesibles desde todo el entorno de ejecución de la clase. Todos los objetos de una clase pueden acceder a sus atributos estáticos. Se camina un atributo estático en un objeto, el cambio es visible en tos los demás objetos de la clase.

5 Métodos:

Son procedimientos internos de una clase que define el comportamiento de un objeto.

Los métodos pueden acceder todos los atributos de una clase. Esto les permite cambiar los contenidos de los atributos de un objeto.

Los métodos poseen también una interface con parámetros que les permite recibir valores cuando son invocados y devolver valores después de la llamada. Los atributos privados de una clase solo pueden ser cambiados por métodos de la misma clase.

La definición y la interface de una método son similares a las de los módulos de funciones. Un método se define en la parte declarativa de la clase y se implementa en la parte de implementación usando las sentencias:

METHOD <meth>.

….

ENDMETHOD.

Se pueden declarar tipos de datos locales y objetos en los métodos de la misma manera que en cualquier otro procedimiento ABAP. Los métodos se llaman mediante la sentencia CALL METHOD.

Existen tres tipos de métodos:

Ø Dependiente de instancia: estos métodos se declaran usando la sentencia METHODS. Pueden acceder a todos los atributos de una clase y pueden desencadenar todos los eventos de una clase.

Ø Independientes de instancias o estáticos: estos métodos se declaran usando la sentencia CLASS-METHODS. Solo pueden acceder a los atributos estáticos y desencadenar eventos estáticos.

Ø 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)

6 Eventos

Son acontecimientos o sucesos que utilizan los objetos l las clases para desencadenar la ejecución de un método en otro objeto o clase.

Estos métodos se llaman métodos que manejan eventos (event handler methods).

Es una llamada normal a un método, el método puede ser llamado por cualquier número de usuarios. Cuando un evento es desencadenado, cualquier número de estos métodos pueden ser llamados.

La unión entre el disparador del evento “trigger” y el manejador del evento “handler” no es establecida de antemano, si no en el entorno de ejecución. En las llamadas normales a métodos, e programa que llama determina los métodos a los que quieren llamar. Estos métodos tienen que existir.

El manejador de eventos determina los eventos a los cuales tiene que reaccionar, no tienen porque existir un método manejador de eventos registrado para cada evento 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 de diferente clase, se declara como método manejador de eventos utilizando la adición FOR EVENT OF.

Los eventos tienen una interface de parámetros similares a la de los métodos, pero solo tiene parámetros de la salida. Los parámetros son pasados por el disparador (sentencia RAISE EVENT) Al método manejador de los eventos el cual los recibe como parámetros de entrada.

En vínculo de unión entre el disparador y el manejador (trigger y handler) es establecido dinámicamente en el programa usando la sentencia SET HANDLER. le disparador y el manejador pueden ser objetos o clases, dependiendo de si tenemos eventos dependientes de instancia o eventos estadios y métodos manejadores de eventos. Cuando un evento es disparado, el correspondiente método manejador de eventos es ejecutado en las clases registradas para ese manejador.

Existen dos tipos de eventos:

Ø Dependiente de instancia: se declaran con la sentencia EVENTS. Solo pueden ser desencadenados en un método dependiente de instancia.

Ø Independientes de instancias o estáticos: se declaran con la sentencia CLASS-EVENTS. Todos los métodos pueden desencadenar eventos estáticos, los eventos estáticos. Los eventos estáticos son el único tipo de eventos que puede ser desencadenado por un método estático.

7 Tipos y Constantes:

Se pueden definir tipos de datos ABAP dentro de una clase con la sentencia TYPES. Los tipos de datos no son específicos de cada instancia y existen una sola vez para todos los objetos de la clase.

Las constantes son un tipo especial de atributos estáticos. Su valor se fija cuando son declaradas y no pueden ser cambiados. Se declaran usando la sentencia CONSTANTS. Las constantes existen solo una vez para todos los objetos de la clase.

Audio Tips: cuando definimos tipos de datos dentro de la definición de una clase podemos utilizar la adición RIONLI luego de escribir el tipo de la variable que acabamos de declarar, esto significara que el atributo público que fue declarado con la sentencia DATA puede ser leído por fuera de la clase, pero solo puede ser modificado por métodos de la misma clase, vale la pena aclarar que solo se podrá utilizar la adición RIONLI dentro de la parte publica de la declaración de una clase.

8 Visibilidad de una Clase.

La parte declarativa o definición de una clase se dividen en tres áreas de distinta visibilidad.

Estas tres áreas de distinta visibilidad externa de los componentes de la clase, esto es la interface entre la clase y el usuario.

Cada componente de una clase a ser asignado a una de estas tres secciones.

Ø PUBLIC SECTION: (Parte Pública): todos los componentes declarados en la sección pública son accesibles para todos los usuarios de la clase y para todos los métodos de la clase y de cualquier clase que hereden de ella. Los componentes protegidos públicos conforman la interface entre 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 la clase que heredan en ella. Los componentes protegidos conforman la interface entre una clase y todas sus subclases.

Ø PRIVATE SECTION (Parte Privada): los componentes declarados en la sección privada son solo visibles en los métodos de la misma clase. Los componentes privados no forman parte de la interface externa de la clase.

Audio Tips: los atributos de una clase donde un usuario externo puede acceder directamente, son los atributos públicos, los componentes públicos de una clase comúnmente de conocen como la interface de la clase, a la sección de visibilidad de entrada se conoce como la ocultación de la información o encapsulación

En parte esto es para proteger al usuario de una clase ya que se supone que los componentes privados de una clase se modificaran en algún momento pero su interface será siempre la misma, todos los usuarios externos pueden acceder a sus componentes atreves de la interfaces de la clase por lo que se continuara trabajando con la clase como de costumbre después de hacer el cambio y el usuario no se dará cuenta del cambio ya que solo la implementación interna fue modificada, por el contrario si los componentes públicos de una clase son modificados de manera incompatible cada usuario externo tendría que tener en cuenta estos cambios. En conclusión debemos utilizar los atributos públicos de una clase con mucha moderación o bien modificar los componentes públicos de nuestras clases.


 

 

 


Sobre el autor

Publicación académica de Jhon Deibys Cano Pineda, en su ámbito de estudios para la Carrera Consultor ABAP.

SAP Master

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

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "La definición de Clases, Atributos, Métodos y Eventos" de la mano de nuestros alumnos.

SAP Expert


Definición de clases, atributos, métodos y eventos Clases locales y objetos Las clases locales se definen en un programa ABAP y solo pueden ser invocadas desde el programa en el que se han definido, en cambio las clases gloabales pueden ser invocadas desde cuqluier proigrama ABAP. Las clases globales se definen en la tx SE24. Definición de clases locales Son un conjunto de sentencias que están dentro de las sentencias CLASS... ENDCLASS. Estructura y componentes de una clase: Una clase contiene componentes Cada componente se asigna a una sección de visibilidad (público, protegido o privado). Las clases implementan métodos. En los objetos ABAP, las clases pueden definir los siguientes...

Acceder a esta publicación

Creado y Compartido por: José Luis Zevallos Mamani

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Clases locales y globales. Las clases en ABAP pueden ser locales o globales. Las globales se definen en el generador de clases a través de la transacción SE24. Las clases locales se definen en un programa ABAP y solo pueden ser invocadas desde el programa en el que se han definido. - Las clases locales son el conjunto de sentencias que están entre las sentencias CLASS.. ENDCLASS. - Una clase consta de una parte declarativa lo que se conoce como definición de la clase y una parte de implementación de la clase. - La estructura de una clase se define en base a: Una clase tiene componentes. Cada componente se asigna una sección de visibilidad (Público, protegido o privado). Las clases...

Acceder a esta publicación

Creado y Compartido por: Erick Omar Mármol Ascencio / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Definición clases, atributos, métodos y eventos. Las clases en ABAP se pueden declarar globalmente o localmente, las clases globales se definen en el generador de clases, mediante la transacción SE24 (SE24 se encarga de administrar las clases e interfaces en el sistema SAP). Estas clases son almacenadas en el class pool en la librería de clase del repositorioR/3, todos los programas ABAP en un sistema R/3 pueden acceder a las clases globales. Las clases locales se definen en un programa ABAP y solo se puede acceder desde el programa en el que ha sido definida. Cuando se usa una clase en un programa ABAP el sistema busca primero una clase local con el nombre especificad, si no la encuentra entonces busca una clase...

Acceder a esta publicación

Creado y Compartido por: Jesus Enrique Ramos Bello / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Definición de Clases, Atributos, Métodos y Eventos 1. Clases locales y globales * Clases globales (SE24 "Generador de clases") * Clases locales: Se definen en un programa ABAP y sólo pueden ser invocadas desde el programa dn el que se han definido. 2. Definición de clases locales CLASS...ENDCLASS. Partes: * Declarativa: Definición de la clase, en la que se definen componentes CLASS <class> DEFINITION. ... ENDCLASS. * Implementación: Donde se implementan los componentes definidos. Contiene todos los métodos de la clase. CLASS <class> IMPLEMENTATION. ... ENDCLASS. 3. Estructura y componentes de una clase ...

Acceder a esta publicación

Creado y Compartido por: Helen Silva Ruiz

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Definición de Clases, Atributos, Métodos y Eventos. 1. Clases Locales y globales. Se hacen por la Tx SE24, estas clases son almacenadas en la librerias de clases Class Pool Definición Clases Locales. Classs End class, se definen los componentes y luego su implementación. La parte de implementación contiene la implementación de todos los métodos de la clase. 3. Estructura y componentes de una clase La estructura de una clase se define basándose en: Una clase contiene componentes ; son sus contenidos y se declaran en la parte declarativa de la clase. Los componentes definen los atributos. Existen dos tipos de componentes: Estáticos que son independientes solo una vez para...

Acceder a esta publicación

Creado y Compartido por: Morela Silva

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert


Clases locales y globales. Las clases globales se definen en el generador de clases a través de la transacción SE24 en el ABAP workbench. Estas clases son almacenadas en el class pools en la librería de clases en el repositorio R/3. Las clases locales se definen en un programa ABAP y solo pueden ser invocadas desde el programa en el que se han definido. Definición de las clases locales. Las clases locales se encuentran dentro de las sentencias CLASS---ENDCLASS La definición de una clase constara de una parte declarativa, en la que se definen los componentes y una parte de implementación es lo que se conoce como implementación de la clase. Estructura y componentes de una clase. La estructura se...

Acceder a esta publicación

Creado y Compartido por: David De Jesùs Restrepo Cañas

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

CLASE Pueden declararse de forma global desde SE24 o local en el programa abap. Este buscará primero la definición local, si no la encuentra buscará global. Estan divididas en la parte declarativa y de implementación de sus métodos. En la definición tendremos los atributos, métodos y eventos, dependientes de instancia o estáticos, en alguna de las secciones publica, protegida o privada. ATRIBUTOS Son los campos de datos internos de la clase que pueden ser de cualquier tipo abap y se declaran con DATA o CLASS-DATA (estáticos) MÉTODOS Son procedimientos internos de la clase, poseen parámetros de I/O, se declaran con METHODS o CLASS-METHODS (estáticos), se implementan...

Acceder a esta publicación

Creado y Compartido por: Jonatan Richioni

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Lección 2: Definición de Clases, Atributos, Métodos y Eventos. 1.- Clases locales y globales. Las clases globales se definen en el generador de clases, a través de la transacción SE24 en el ABAP Workbench. 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. Las clases locales se definen en un programa ABAP y sólo pueden ser invocadas desde el programa en el que se han definido. Cuando se usa una clase en un programa ABAP el sistema busca primero una clase local con el nombre especificado, si no encuentra ninguna entonces busca una clase global. 2.- Definicion de clases...

Acceder a esta publicación

Creado y Compartido por: Calixto Gutiérrez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Trx SE24 para generar clases globales. Las clases globales son almacenadas en Class Pools Todos los programas ABAP pueden acceder a las clases globales. Las clases locales se crean en un programa ABAP Las clases locales solo pueden ser invocadas desde el programa donde se han creado Definición de clase: CLASS <name class> DEFINITION. ENDCLASS. Implementación de clase: CLASS <name class> IMPLEMENTATION. ENDCLASS. Clase --> Componente --> Visibilidad (público, protegido, privado). Clases implementan métodos. Hay 2 tipos de componentes (atributos, meéodos y eventos) que pueden ser: * Dependientes de Instancia,...

Acceder a esta publicación

Creado y Compartido por: Hazel Maribel Flores Martin

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Clases Dos tipos de clases, globales (Tx SE24) y locales Clases locales Definición: CLASS <class_name> DEFINITION ............. ENDCLASS. Implementación: CLASS <class_name> IMPLEMENTATION ............. ENDCLASS. Puede contar de: Atributos Métodos Eventos Tiene tres tipos de visibilidad (de más restrictiva a menos): Privada Protegida Pública Atributos Son los campos de datos internos de una clase y pueden ser de cualquier tipo de datos ABAP. Tipos de atributos Dependientes de instancia a) el contenido es único para cada objeto (instancia) de la misma clase b) se declaran usando sentencias...

Acceder a esta publicación

Creado y Compartido por: Xavier Martinez Garsaball

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 79.000 publicaciones académicas abiertas, libres y gratuitas compartidas con la comunidad, para acceder a ellas le dejamos el enlace a CVOPEN ACADEMY.

Buscador de Publicaciones:

 


 

No sea Juan... Solo podrá llegar alto si realiza su formación con los mejores!