Jak jsem začínal se SAPem - 3. část

SAP logo

V minulém díle jsem rozebral práci s interními tabulkami v ABAPu a dnes se pustím pro změnu do reportů.

Reporty

Report je ten nejjednodušší program (samozřejmě může být i složitý), který můžete v ABAPu napsat. Obecně lze říci, že report nemá za cíl nic jiného, než vzít data (například je načíst z databáze) a zobrazit je v nějakém srozumitelném formátu. Ukažme si tedy, jak takový naprosto triviální report může vypadat:

REPORT my_first_report.

****************************************
* GLOBAL DECLARATIONS                  *
****************************************
DATA: g_hello TYPE char15 VALUE 'Hello World!'.

****************************************
* START OF SELECTION                   *
****************************************
START-OF-SELECTION.
  WRITE g_hello.

Zde si můžete prohlédnout výstup našeho report programu (který odhaluje skandální skutečnost, že celý SAP vlastně funguje v textovém režimu ):

První program
První program

Jak můžete vidět, k obligátnímu „Hello word!“ programu jsem se dopracoval až ve třetím díle tohoto seriálu. Je to dáno mým netradičním a novátorským přístupem k výkladu (rozuměj: stále nemám žádnou ucelenou koncepci ).

Co můžeme z našeho programu vyčíst? Za prvé, symbol komentáře je hvězdička *, která musí být vždy umístěna jako první symbol na řádku. Pokud chceme něco zakomentovat uprostřed řádku, je potřeba použít symbol uvozovek . Uzavřené komentáře pro zakomentování více řádků (něco jako /* … */) v ABAPu neexistují. Zpočátku se to může zdát omezující, ale dá se bez toho celkem v pohodě žít.

Za druhé, proměnné se deklarují příkazem DATA. Dvojtečka překladači sděluje, že budou následovat další deklarace oddělené čárkou (v tomto případě je tedy zbytečná). To je také zajímavá vlastnost ABAPu, která stojí za zmínku. Říká se ji řetězení příkazů, které je možné realizovat pomocí dvojtečky uvedené za stejnou částí příkazu:

WRITE g_var_a.
WRITE g_var_b.
WRITE g_var_c.
*-> je možné nahradit:
WRITE: g_var_a, g_var_b, g_var_c.

g_sum = g_sum + 1.
g_sum = g_sum + 2.
g_sum = g_sum + 3.
*-> je možné nahradit:
g_sum = g_sum +: 1, 2, 3.

A konečně za třetí, ABAP program se skládá z tzv. bloků zpracování (v ABAP helpu bývají též honosně označované jako události). V našem programu máme pouze jediný blok zpracování, a sice START-OF-SELECTION, ale je jich hned celá řada, k tomu se brzy dostaneme. START-OF-SELECTION by měl být blok zpracování, ve kterém je umístěn hlavní program, tedy obvykle volání dalších podprogramů, metod objektů a funkčních modulů (co jsou FM vysvětlím někdy příště). Říkám měl by, protože stejného efektu dosáhnete i když zvolíte blok zpracování END-OF-SELECTION nebo jej vypustíte úplně. Bloky zpracování podle mě v ABAPu zůstaly pouze z historických důvodů, časem některé (zdůrazňuji některé) z nich ztratily na významu. Já osobně START-OF-SELECTION používám pouze kvůli lepší čitelnosti kódu.

Výběrové obrazovky

Jaké máme další události (bloky zpracování)? Předtím, než Vám to povím, přeskočím na chvíli k výběrovým obrazovkám (SELECTION-SCREEN), protože se jich přímo týká hned několik událostí.

Nyní přepíšeme náš program tak, aby měl svojí výběrovou obrazovku:

REPORT zmy_first_report.

****************************************
* SELECTION SCREEN                     *
****************************************
SELECTION-SCREEN: BEGIN OF BLOCK b1 WITH FRAME.
PARAMETERS: p_hello TYPE char15 DEFAULT 'Hello World!' LOWER CASE.
SELECTION-SCREEN: END OF BLOCK b1.

****************************************
* START OF SELECTION                   *
****************************************
START-OF-SELECTION.
  WRITE p_hello.

A takhle bude vypadat program po spuštění:

Výběrová obrazovka
Výběrová obrazovka

Vidíte, jak málo stačilo, aby se uživatelské rozhraní programu změnilo k nepoznání. Kliknete-li na tlačítko s hodinami na nástrojové liště (snadno ho poznáte, je tam pouze jediné), zobrazí se náš první report program, který už známe z předchozího kroku.

Textové pole samozřejmě není jediný ovládací prvek, které výběrové obrazovky nabízí. Máme tu vše, co běžný uživatel potřebuje - od radio buttonů a checkboxů, až po obrazovky složené ze záložek. To vše lze získat zápisem několika málo řádků kódu.

Tak vidím, že k těm dalším událostem se nakonec nedostanu, necháme si je ale na příště a já utíkám na oběd.

Související



Podělte se o tento článek s ostatními… Sdílet

Komentáře

avatar

[1] mutas

clock  20. 09. 2007, 13:11

EJOY ABAP:=)


avatar

[2] Vladimír Husák

clock  27. 05. 2008, 10:46

Výbornej článek.Brzy nastoupím do práce, kde budu asi dělat se SAPem a vůbec neumim programovat.Myslíš že je vůbec možný aby pochopil SAP normální smrtelník, který neumí programovat?
Jiank se těšim na pokračování.Budu ho asi potřebovat…


Pavel

[3] Pavel

clock  27. 05. 2008, 10:53

Reakce na [2] > No pokud nenastapuješ přímo jako programátor, tak znalost programování v ABAPu k ničemu nepotřebuješ…


avatar

[4] anna masná

clock  10. 07. 2008, 13:30

Bude ještě nějaké pokračování?
Jestli ano, tak předem velký dík


Pavel

[5] Pavel

clock  10. 07. 2008, 13:58

Reakce na [4] > Kdoví, možné je všechno. I když mám v poslední době spíš chvíle, že bych se SAPem nejradsi skončil . Psát by určitě bylo o čem, jenom si na to najít čas…


avatar

[6] Lukáš

clock  05. 08. 2008, 16:24

Luxusní článek – začínám v ABAPU a díky téhle sérii článků jsem se toho spoustu naučil a lépe pochodil, než z celých těch SAP manuálů .

Takže velký díky autorovi !!


Pavel

[7] Pavel

clock  06. 08. 2008, 07:48

Reakce na [6] > Díky, jsem rád, že je to pro někoho užitečné. Hodně štěstí při dalším zkoumání tajů SAPu a ABAPu…


avatar

[8] Michal

clock  13. 12. 2009, 13:59

Opravdu precizni pojeti pro zacatecniky. DEkuji


avatar

[9] Dana

clock  28. 12. 2009, 23:38

Zdravím, měla bych nastoupit do zaměstnání do administrativní sféry, ne tedy jako programátor, a podmínkou je znalost SAPu.. můžete mi dát typ, jak se se Sapem seznámit? Nerada bych skončila 1.den základní znalosti JavaScriptu a PHP mám.. díky za typ.


Pavel

[10] Pavel

clock  29. 12. 2009, 07:14

Reakce na [9] > Trocha horlivosti není nikdy na škodu, ale předpokládám, že už si vás tam zaškolí. Já se SAPem dělám 6. rokem a pořád znám jenom zlomek. Žádná brožura typu SAP snadno a rychle bohužel neexistuje.


avatar

[11] Ondřej

clock  29. 12. 2009, 12:48

Reakce na [9] > Pokud administrativní sféra, tak to asi budeš dělat v ESS, možná v CRM nebo BW reporting. Záleží na problémové doméně a společnosti, ve které budeš pracovat. Pokud budeš mít přihlášení do R/3, tak se můžeš porozhlédnout po obrázcích jak to zhruba vypadá a seznámit se s funkcemi standardního toolbaru ( http://www.sap­designguild.o… ). Však kolegové Tě do toho zaškolí.


avatar

[12] Zdeněk

clock  18. 03. 2010, 15:41

Články jsou psány s láskou. Programuji v ABAPu 4 roky. Žádné školení – stačil základ ve Fortranu a objektovém Pascalu, co jsem kdysi dělal. Pravda, začátek je slabší, ale v SAPu je úžasný systém nápovědy, SAP OSS notes, příklady na Googlu, řád, ustálené konvence, dojemná úspěšná snaha o objekty,… Získal jsem k němu citový vztah Teď začínám s Javou, která mi k ABAPu přijde jako orientální tržnice k německému hypermarketu.


Pavel

[13] Pavel

clock  18. 03. 2010, 16:33

Reakce na [12] > jako orientální tržnice k německému hypermarketu… hezké přirovnání Taky si po šesti letech říkám, že na tom ABAPu něco je…


avatar

[14] standa

clock  10. 03. 2011, 12:25

Škoda, články skončily v okamžiku, kdy to začalo být zajímavé. Ale i tak děkuji za pěkné čtení.

Hezký den Standa


avatar

[15] Milan

clock  24. 06. 2011, 12:24

Reakce na [14] > A opravdu nebude další pokračování .....
Přimlouval bych se.
Zdraví Milan


avatar

[16] Zdena

clock  20. 07. 2011, 19:55

Ahoj,
pekny clanek SAP me zajima a chtela bych se tim smerem orientovat a dosahnout treba na pozici konzultanta SAP. Co by si mi doporucil jak zacit? Nejake typy na materialy pro samostudium? Potom jsem se divala, ze jsou moznosti certifikaci, ale to asi az po par letech praxe..
Diky moc za odpoved.


Pavel

[17] Pavel

clock  21. 07. 2011, 21:16

Reakce na [16] > Ideální je nechat se zaměstnat v nějaké firmě, kde SAP mají a používají (aspoň jako brigádnice). Slyšel jsem, že už i na některých univerzitách mají SAP (pro studijní účely).

Materiálu ke studiu je na internetu spousta, většinou v angličtině nebo němčině. Ať už je to kompletní on-line nápověda (http://help.sap.com/) nebo fórum SAP Community network (http://forums.sdn.sap.com/)


avatar

[18] deawil

clock  22. 04. 2014, 12:15

Ahoj. da s nekde stiahnut SAP? aby som si to mohol vyskusat aj doma?


Pavel

[19] Pavel

clock  22. 04. 2014, 15:40

O ničem podobném bohužel nevím. Zkus spíš prozkoumat, jestli SAP AG nenabízí nějakou demo instalaci v cloudu, na které bys mohl dělat svoje pokusy. To by mohlo být docela užitečné. Mě by tedy spíš zajímala HANA, ke které zatím nemám přístup 


avatar

[20] Igor Pocta

clock  23. 07. 2014, 16:16

Existuje verze SAP ke stazeni, jde o tzv. miniSAP verzi, ktera je zdarma. Na jejich obchodu si ji najdete a vyplnite formular – do tydne vam zaslou odkazy na stazeni. Instalace uz takova sranda neni, nejlepsi je to instalovat na virtualni pc ) a k autorovi clanku – bezva prace


Pavel

[21] Pavel

clock  23. 07. 2014, 17:07

Reakce na [20] > Právě, že je komplikované, jak říkáte. Bázisti to u nás kdysi zkoušeli a dvakrát odvázaní z toho tenkrát nebyli. Díky za pochvalu 


avatar

[22] Igor Počta

clock  23. 07. 2014, 17:31

Reakce na [21] > Tak já jsem nedávno našel na nějakém ztraceném SAP FTP ( ftp://ftp.sap.com/pub/sdn/d… ) starší (7.00) verzi, kde instalace byla velmi snadná. Ta novější verze je dost složitá. Na této starší verzi se učím a prakticky v nich nevidím rozdíl. Jen mám novou verzi klienta.


Pavel

[23] Pavel

clock  23. 07. 2014, 18:20

Reakce na [22] > Super, výborný tip! Díky moc.


avatar

[24] Miroslava

clock  29. 09. 2014, 21:26

Reakce na [5] > Dobrý den Pavle. SAP používám denně v práci a opravdu je to úžasný systém. Ale potřebovala bych pradit. Dokáže SAP kontrolovat? Pracuji jako logistička a při zakládání Lieferplanu na určitého zákazníka, bych potřebovala, aby sap při ukládání vygeneroval hlášku, že je ještě zapotřebí např. zkontrolovat celní dokumentaci. Jen hláška na liště, nebo nějaký text ? Děkuji moc za radu moc by mi to pomohlo.


avatar

[25] Michal Prusak

clock  17. 07. 2016, 09:12

Tady mate pekne step-by-step jak si sap nainstalovat

http://www.codit.eu/blog/20…

PS: Dva dny po vecerech mi to zabralo a samotna instalace trvala tak 6–7hodin na virtual

M.



Přidat komentář

Upozornění: Komentář musí být před publikováním schválen!
: *
: *

: *

:



  • Pole označená hvězdičkou jsou povinná.
  • Můžete použít Texy! syntaxi. HTML tagy nejsou povolené!
    Příklad syntaxe: **tučně**, *kurzíva*.
  • Odkazy začínající http(s)://, ftp:// a mailto: se zformátují automaticky.
  • Na jiné komentáře se můžete odkazovat např. zápisem [1].
  • Gravatar připojený k Vaší e-mailové bude zobrazen u komentáře.
  • Upozorňuji, že komentáře, které se netýkají tématu článku, jsou vulgární nebo urážlivé, mohou být smazány.

Začátek článku Nahoru | Začátek komentářů Nahoru

© Pavel Jaroš [Sektor PJ] · Nahoru Nahoru