ejemplos_sap_poo

Upload: bernardo-freitas

Post on 07-Jul-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/18/2019 Ejemplos_sap_poo

    1/7

    Clases locales en SAP imprimir cadenas ejemplo de Importing yexporting

    En SAP las clases locales se crean desde la transacción SE38 y solo puede ser accedida por elprograma que la invoca, cuando sap llama a una clase primero la busca localmente y después labusca en el class-pool = libreria de clases publicas de SAP En este e!emplo veremos la utili"aciónde importing y de e#porting estas dos $unciones se utili"an de $orma di$erente,usamos importing cuando queremos %acer set es decir enviar a las variables locales un valor por

    par&metro, en el caso de e#porting es lo contrario cuando queremos acceder a una variableprivada de la clase y pasarla a la variable del método como podemos ver a continuación en elsiguiente e!emplo

  • 8/18/2019 Ejemplos_sap_poo

    2/7

    Programación Orientado a Objetos en ABAP/4. Ejemplo

    La programación orientado a objetos POO es un paradigma de programación que usa clases y objetos

    describiendo de forma más real las aplicaciones. En este ejemplo veremos como hacer POO en ABAP!.

    "rearemos una clase llamada "#$%"LA&E que contiene un m'todo p(blico llamado %$P)%$%).

    )EP*)+ ,P**-.* Defnimos la clase

    "LA&& "#$%"LA&E E/%0%+%*0.

    P1BL%" &E"+%*0.

    $E+2*&3 %$P)%$%).

    P)%4A+E &E"+%*0.

    A+A3 "*0+A*) +5PE % 4AL1E 6-7.

    E0"LA&&.

    *Hacemos la implementación

    "LA&& "#$%"LA&E %$PLE$E0+A+%*0.

    $E+2* %$P)%$%).

    "*0+A*) 8 "*0+A*) 9 6.:)%+E 3 "*0+A*).

    E0$E+2*.

    E0"LA&&.

    * Instanciamos la clase

    *Bloque que se ejecutará tras pantalla de selección

    &+A)+;*/;&ELE"+%*0.

    A+A3 $5"LA&E +5PE )E/ +* "#$%"LA&E.

    ")EA+E *B

  • 8/18/2019 Ejemplos_sap_poo

    3/7

  • 8/18/2019 Ejemplos_sap_poo

    4/7

    !ipos de constr"ctores en ABAP/4

    En este articulo veremos un ejemplo de los tipos de constructores para clases que e>isten en ABAP? tenemos dos

    casos3

    6; "onstructor estático "class_constructor": Este constructor es t@pico de la clase y no de las instancias ? por lo

    que solo se ejecutará la primera ve que se instancia una clase.

    -; "onstructor de instancia "constructor": &e llama cada ve que se instancia una clase.

  • 8/18/2019 Ejemplos_sap_poo

    5/7

  • 8/18/2019 Ejemplos_sap_poo

    6/7

    SAP Class B"ilder. #e$nición de clases con ABAP Orientado aObjetos %OO&

    'omo ya sabéis A(AP permite programar siguiendo el paradigma de la orientación a ob!etos)amos a poder de*nir clases que nos permitan construir aplicaciones mas robustas y comple!as+uien a traba!ado con SAP sabe que muc%as transacciones siguen el paradigma deprogramación estructurada, pero bien es cierto que A(AP nos da la posibilidad de desarrollarnuestras aplicaciones a medida utili"ando la orientación a ob!etos

    SAP nos proporciona la transacción SE ./enerador de clases0 para poder de*nir y tratarnuestras propias clases .1 las est&ndar que por supuesto también las %ay0 Si e!ecutamos yvisuali"amos una clase cualquiera veremos algo similar a lo que se muestra en la siguienteimagen

    2o que vemos es un pantalla donde tenemos di$erentes pestaas que contienen toda$uncionalidad de la clase .4étodos, Atributos, Eventos, etc0 En el e!emplo que estamos viendovemos que contamos con tres métodos Para navegas al código $uente de alguno de ellos solotenemos que %acer doble clic sobre el E2 resultado lo vemos en la siguiente imagen

    Aqu5 podremos escribir nuestro propio código que después utili"aremos en nuestros programasSi en algun momento quisieramos utili"ar esta clase en uno de nuestros progrmas tendriamosque %acierlo de la siguiente $orma6

    7 Primero de*nimos un ob!eto que %aga re$erencia a nuestra clase

    DATA: p_objeto TYPE REF TO ZCL_TEST.

  • 8/18/2019 Ejemplos_sap_poo

    7/7

    2lamamos a uno de los métodos que tenemos de*nidos en la clase para que e!ecute sulógica

     p_objeto->METHOD2.

    Es un e!emplo b&sico y muy sencillo, la cosa se puede ir complicando mas Seguiremos %ablandode este tema en pró#imos post