1 / 22

SAP ABAP

SAP ABAP. A short introduction. SAP ABAP. Selectie: IF …… ENDIF. IF …. ELSE … ENDIF. IF …. ELSEIF …. ELSEIF …. ELSE …. ENDIF. IF condition _1. IF condition _2 . statement_ block _1 ENDIF. ENDIF. SAP ABAP. Loops: SELECT * FROM ZMEMBER WHERE Zzcoursetitle = ‘SAP01’.

rosina
Download Presentation

SAP ABAP

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SAP ABAP A short introduction

  2. SAP ABAP • Selectie: • IF …… ENDIF. • IF …. ELSE … ENDIF. • IF …. ELSEIF …. ELSEIF …. ELSE …. ENDIF. • IF condition_1. IF condition_2. statement_block_1 ENDIF. ENDIF.

  3. SAP ABAP • Loops: • SELECT * FROM ZMEMBER WHERE Zzcoursetitle = ‘SAP01’. counter_SAP_01 = counter_SAP_01 +1. ENDSELECT. • DO. Statement block. ENDDO. • WHILE condition. ENDWHILE.

  4. SAP ABAP Vb. DO 24 TIMES. minute = 0. DO 60 TIMES. second = 0. DO 60 TIMES. WRITE: / HOUR, MINUTE, SECOND. SECOND = SECOND +1. ENDDO. MINUTE = MINUTE +1. ENDDO. HOUR = HOUR + 1. ENDDO.

  5. SAP ABAP • Loops: Bv. WHILE second > 0. WRITE: / second. second = second -1. ENDWHILE.

  6. SAP ABAP • CONTINUE Statement SELECT * FROM ZMEMBER02. IF ZMEMBER02 LT ‘19850101’. CONTINU . ENDIF. STATEMENT_BLOCK_1. ENDSELECT. Programma gaat statementblock _1 niet uitvoeren als aan de voorwaarde van de IF is voldaan. De loop zal wel verder uitgewerkt worden. • CHECK SELECT * FROM ZMEMBER02. CHECK ZMEMBER02 – mgender = ‘W’. STATEMENT_BLOCK_1. ENDSELECT Indien aan de check voldaan is dan wordt het statementbloc wel uitgevoerd

  7. SAP ABAP • Logische operatoren • EQ = • NE <> • LT < • LE <= • GT > • GE >= Je mag beide gebruiken in de code

  8. SAP ABAP • DATA Type • DATA number01 TYPE i. (integer) TYPE P DECIMALS 2. (double met 2 dec) • DATA number01 TYPE P decimals 2. DATA number02 LIKE number1. • Als je geen type geeft automatisch type c DATA last-name (20) TYPE C. (+/- String met 20 chars) • DATA areacode (4) TYPE N. (numeric field van 4 cijfers)

  9. SAP ABAP • MATH EXPRESSIONS • ADD + • SUBTRACT - • MULTIPLY * • DIVIDE / • MOD rest • DIV resultaat van een integraldivision Je kan beide gebruiken

  10. SAP ABAP • Nog enkele ABAP <-> Java verschillen • Afsluiten met een . • , bij opvolging • WRITE / -> nieuwe regel • WRITE -> gewoon erachter • this . In java me -> in ABAP • Package -> Class -> Programs • Parameters op voorhand ingeven in

  11. SAP ABAP

  12. SAP ABAP

  13. SAP ABAP

  14. SAP ABAP compileren activeren Let op: als je wenst te veranderen of toevoegen ->

  15. Voorbeeld programma class • *&---------------------------------------------------------------------**& Report  Z_JA_KHLCATERING*&*&---------------------------------------------------------------------**&*&*&---------------------------------------------------------------------*REPORT  z_ja_khlcatering.*DATA gt_resto TYPE REF TO z_ja_koekenkraam.include Z_JA_KHLCATERING_I.CREATE OBJECT gt_resto EXPORTING   name = 'GT_RESTO'.DATA koek1 TYPE REF TO z_ja_koffiekoek.DATA koek2 TYPE REF TO z_ja_koffiekoek.DATA koek3 TYPE REF TO z_ja_koffiekoek.DATA prijs1 TYPE p VALUE '0.85'.CREATE OBJECT koek1 EXPORTING   name = 'Puddinghoorntje'price = prijs1.DATA prijs2 TYPE p  VALUE '1.65'.CREATE OBJECT koek2EXPORTINGname = 'Frangipanne'price = prijs2.DATA prijs3 TYPE p  VALUE '2.05'.CREATE OBJECT koek3EXPORTINGname = 'Berliner bol'price = prijs3.

  16. CALL METHOD gt_resto->opstellentoog  EXPORTING    cake1 = koek1    cake2 = koek2    cake3 = koek3.DATA temp TYPE string.WRITE / 'Maak uw keuze:'.WRITE / '1'.CALL METHOD koek1->tostring  IMPORTING    output = temp.WRITE temp.WRITE / '2'.CALL METHOD koek2->tostring  IMPORTING    output = temp.WRITE temp.WRITE / '3'.CALL METHOD koek3->tostring  IMPORTING    output = temp.WRITE temp.CALL METHOD gt_resto->verkopen  EXPORTING    keuze = 1.CALL METHOD gt_resto->verkopen  EXPORTING    keuze = 2.CALL METHOD gt_resto->verkopen  EXPORTING    keuze = 3.CALL METHOD gt_resto->verkopen  EXPORTING    keuze = 5.CALL METHOD gt_resto->verkopen  EXPORTING    keuze = 0.CALL METHOD gt_resto->kassa.

  17. Vb. class programma met ‘switch’ • method VERKOPEN.  DATA: TOTAAL TYPE P DECIMALS 2,        SUBTOT TYPE P DECIMALS 2.  CASE keuze.    WHEN 0.      WRITE / 'Het TOTAAL van deze aankoop = '.      WRITE TOTAAL.    WHEN 1.      CALL METHOD KOEK1->VERKOOP.      CALL METHOD KOEK1->GET_PRIJS Wat staat hier? Doe een call naar de methode VERKOOP via object    IMPORTING  E_PRIJS = SUBTOT. KOEK1 . In Java: KOEK1.verkoop ( );        TOTAAL = TOTAAL + SUBTOT.     WHEN 2. een call naar de methode GET_PRIJS. Je ontvangt E_PRIJS (zo heb je       CALL METHOD KOEK2->VERKOOP. De parameter genoemd bij het definiëren van de ‘EXPORT’ value bij de      CALL METHOD  KOEK2->GET_PRIJS methode GET_PRIJS). Je stelt E_PRIJS gelijk aan SUBTOT.         IMPORTING  E_PRIJS = SUBTOT.        TOTAAL = TOTAAL + SUBTOT.    WHEN 3.      CALL METHOD KOEK3->VERKOOP.      CALL METHOD  KOEK3->GET_PRIJS        IMPORTING  E_PRIJS = SUBTOT.        TOTAAL = TOTAAL + SUBTOT.    WHEN OTHERS.      WRITE / 'U keuze is momenteel niet in de aanbieding'. ENDCASE.endmethod.

  18. Voorbeeld methode uit class method KASSA.  DATA KAS TYPE p DECIMALS 2.  DATA KASTOT TYPE p DECIMALS 2.  CALL METHOD KOEK1->BEREKENOMZET       IMPORTING  OMZET = KAS.  KASTOT = KASTOT + KAS.  CALL METHOD KOEK2->BEREKENOMZET       IMPORTING  OMZET = KAS.  KASTOT = KASTOT + KAS.CALL METHOD KOEK3->BEREKENOMZET       IMPORTING OMZET = KAS.  KASTOT = KASTOT + KAS.  WRITE / 'De omzet van vandaag is:'.  WRITE KASTOT.endmethod.

  19. SE 80 Package aanmaken: Z_JA_ loginnr. Normaal gaat SAP je een developerkey vragen. Check Docent Maak een programma (of class) aan. Transport nodig? Maak de oefening van de thermostaat. Maak de nodige methodes en bijhorende parameters imports/ exports Goodluck.

  20. Oefening : • Maak een thermostaat voor een airco. • (instantie)variabelen: • temperatuur • increment (de eenheid waarmee je verhoogd of verlaagd) • (class)variabelen: • minimum • maximum • Constructor krijgt de temperatuur en het increment mee als parameter • Maak de nodige setters/getters • Maak een methode verhoog (als je deze methode selecteert dan verhoog hij met incr. tot een maximum) • Methode toString: Schrijf een ‘String’ notatie van de huidige temperatuur bv.

More Related