Vous êtes sur la page 1sur 40

WORLD BUSSINES PARTNER S.A.

C CURSO: SAP PROGRAMACION ABAP


SENTENCIAS BASICAS
. WRITE / (<offset>)(<long>) <datos a visualiza>!"
Con la Baa / indicaremo i !"eremo al#ar "na
l$nea o no an#e de im%rimir &o%cional'.
Con el #ffset indicaremo la col"mna donde em%e(ar) la
im%rei*n &o%cional'.
Con $ong indicaremo la lon+i#"d de lo ,alore a
,i"ali(ar &o%cional'.
Podemo im%rimir "na l$nea de S"-ra.ado con la
en#encia %$INE. Tendr) la mima %ro%iedade !"e el
WRITE.
%$INE /(<offset>)(<Iong>)"
Para al#ar "na o ,aria l$nea "#ili(aremo S&I'.
S&I' <n>"
Por de/ec#o el al#o er) de "na 0nica l$nea.
Para al#ar "na %)+ina "#ili(aremo NEW('A)E.
Para in#rod"cir %ar)me#ro en la e1ec"ci*n del re%or#
e2i#en ,aria o%cione. La /*rm"la m) encilla e la
en#encia 'ARA*ETERS.
'ARA*ETERS+ <va> T,'E <ti-o>
$I&E <ti-o>
.E/A%$T <valo> I+"al !"e el 3ALUE.
#B$I)AT#R," O-li+a a in#rod"cir
al+0n 3alor.
$#WER CASE" Permi#e in#rod"cir
min0c"la.
El nom-re del %ar)me#ro no %"ede er "%erior a 4
carac#ere.
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
E0E*'$#S
E0E*'$# 1
report ZPROBLEMA_04.
SKIP TO LINE 3.
ULINE AT 2(1).
WRITE 4 !.
WRITE " !!.
WRITE # !!!.
ULINE AT 12(4).
SKIP TO LINE 1.
POSITION 1$.
WRITE %.
SKIP TO LINE 3.
&O 4 TIMES.
NEW!LINE.
POSITION 1$.
WRITE %.
EN&&O.
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
E0E*'$# 2
report ZPROBLEMA_04.
WRITE !!!.
WRITE '2 % %.
ULINE AT '(($).
SKIP TO LINE 4.
&O 3 TIMES.
WRITE %.
NEW!LINE.
EN&&O.
SKIP TO LINE (.
WRITE !!!!!!!!!.
SKIP TO LINE 4.
ULINE AT "(10).
WRITE 1( % .
E0E*'$# 3
report ZPROBLEMA_04.
WRITE %.
WRITE '!!!!!!!.
WRITE ' %.
SKIP TO LINE 1.
&O 3 TIMES.
WRITE 12 )*!+,-.e.
NEW!LINE.
EN&&O.
SKIP TO LINE 2.
ULINE AT 12(1).
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
.ete4ina los n54eos divisi6les -o 3 7 -o 8 ente un
ango de valoes 9ue son entados -o el usuaio"
REPORT Z/APITULO_12_02 .
START!O0!SELE/TION.
PARAMETERS1 INI/IO T2PE I &E0AULT 03
0INAL T2PE I &E0AULT 0.
&ATA1 RES1 T2PE I3
RES2 T2PE I3
I T2PE I 4ALUE (3
5 T2PE I 4ALUE (.
W6ILE INI/IO 78 0INAL.
RES1 8 INI/IO MO& 9.
RES2 8 INI/IO MO& 3.
I0 RES1 8 0.
I 8 I : 1.
SKIP TO LINE I.
WRITE INI/IO.
EN&I0.
I0 RES2 8 0.
5 8 5 : 1.
SKIP TO LINE 5.
WRITE AT 40 INI/IO.
EN&I0.
INI/IO 8 INI/IO : 1.
EN&W6ILE.
TOP!O0!PA;E.
SKIP TO LINE 3.
WRITE &I4ISIBLES POR 9 /OLOR /OL_6EA&IN;.
POSITION 40.
WRITE &I4ISIBLES POR 3 /OLOR /OL_6EA&IN;.
ULINE.
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
La alida en %an#alla er):
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
%n su-e4e:ado ealiza una t;46ola :on todos los :lientes<
si son =o46es tienen 9ue sa:a de una :anasta una 6olita
la :ual tiene un n54eo ga6ado 7 si son 4u>ees lo 4is4o
-eo de ota :anasta< los -e4ios se dan 6a>o la siguiente
ta6la+
5OMBRES MU6ERES
7 -oli#a Premio 7 -oli#a Premio
8 Deodoran#e 8 Loci*n
9 Si2Pac: de cer,e(a 9 Bi:ini
; Bo2er ; Crema %< la cara
= Ra"radora = Planc>a
? S"dadera ? Barni( de "@a
REPORT ZWORK_01 .
PARAMETERS1 )e<o T2PE =3
>o,-t? T2PE -.
WRITE PREMIO /OLOR /OL_6EA&IN;.
/ASE )e<o.
W6EN @ OR 6.
/ASE >o,-t?.
W6EN 1.
WRITE &e)oAor?.te.
W6EN 2.
WRITE S-<p?=B Ae =er+eC?.
W6EN 3.
WRITE Bo<er.
W6EN 4.
WRITE R?)Dr?Aor?.
W6EN (.
WRITE SDA?Aer?.
W6EN OT6ERS.
WRITE I.Ere)e A?to) =orre=to)FFF PD,)e 03.
EN&/ASE.
W6EN G OR M.
/ASE >o,-t?.
W6EN 1.
WRITE Lo=-o..
W6EN 2.
WRITE B-B-.-.
W6EN 3.
WRITE /reG? p?r? ,? =?r?.
W6EN 4.
WRITE P,?.=@?.
W6EN (.
WRITE B?r.-C Ae DH?).
W6EN OT6ERS.
WRITE I.Ere)e A?to) =orre=to)FFF PD,)e 03.
EN&/ASE.
W6EN OT6ERS.
WRITE I.Ere)e A?to) =orre=to)FFF PD,)e 03.
EN&/ASE.
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
La alida en %an#alla e:
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
report Ct<1003.
I oper?tor1 =o
Jr-te ' AABB =o AB.
-K AABB =o AB. Jr-te TrDe.
e,)e. Jr-te 0?,)e.
e.A-K.
Jr-te ' AB/& =o AB/.
-K AB/& =o AB/.
Jr-te TrDe.
e,)e.
Jr-te 0?,)e. e.A-K.
I oper?tor1 =.
Jr-te ' AABB =. AB.
-K AABB =. AB.
Jr-te TrDe.
e,)e.
Jr-te 0?,)e.
e.A-K.
Jr-te ' AB/& =. AB/.
-K AB/& =. AB/. Jr-te TrDe. e,)e. Jr-te 0?,)e. e.A-K.
I oper?tor1 =?
Jr-te ' AL/Z =? AB.
-K AL/Z =? AB. Jr-te TrDe. e,)e. Jr-te 0?,)e. e.A-K.
Jr-te ' AB/& =? L2Z.
-K AB/& =? L2Z. Jr-te TrDe. e,)e. Jr-te 0?,)e. e.A-K.
I oper?tor1 .?
Jr-te ' AL/Z .? AB/.
-K AL/Z .? AB/. Jr-te TrDe. e,)e. Jr-te 0?,)e. e.A-K.
Jr-te ' AB/& .? L2Z.
-K AB/& .? L2Z. Jr-te TrDe. e,)e. Jr-te 0?,)e. e.A-K.
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
re%or# (#28AA=.
B o%era#or: co
Cri#e < DDDAABBDD co DDABDDD.
i/ DAABBD co DABD. Cri#e DTr"eD. ele. Cri#e DEaleD. endi/.
Cri#e: D.F/d%oGDH .F/d%o.
Cri#e < DDDABCDDD co DDABCDDD.
i/ DABCDD co DABCD. Cri#e DTr"eD. ele. Cri#e DEaleD. endi/.
Cri#e: D.F/d%oGDH .F/d%o.
B o%era#or: cn
Cri#e < DDDAABBDD cn DDABDDD.
i/ DAABBD cn DABD. Cri#e DTr"eD. ele. Cri#e DEaleD. endi/.
Cri#e: D.F/d%oGDH .F/d%o.
Cri#e < DDDABCDDD cn DDABCDDD.
i/ DABCDD cn DABCD. Cri#e DTr"eD. ele. Cri#e DEaleD. endi/.
B o%era#or: ca
Cri#e < DDDAICJDD ca DDABDDD.
i/ DAICJD ca DABD. Cri#e DTr"eD. ele. Cri#e DEaleD. endi/.
Cri#e: D.F/d%oGDH .F/d%o.
Cri#e < DDDABCDDD ca DDIKJDDD.
i/ DABCDD ca DIKJD. Cri#e DTr"eD. ele. Cri#e DEaleD. endi/.
Cri#e: D.F/d%oGDH .F/d%o.
B o%era#or: na
Cri#e < DDDAICJDD na DDABCDDD.
i/ DAICJD na DABCD. Cri#e DTr"eD. ele. Cri#e DEaleD. endi/.
Cri#e: D.F/d%oGDH .F/d%o.
Cri#e < DDDABCDDD na DDIKJDDD.
i/ DABCDD na DIKJD. Cri#e DTr"eD. ele. Cri#e DEaleD. endi/.
Cri#e: D.F/d%oGDH .F/d%o.
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
re%or# JE6EMPLO.
%arame#er /8 #.%e i de/a"l# 9.
cae /8.
C>en 8. Cri#e < D/8 G 8D.
C>en 9. Cri#e < D/8 G 9D.
C>en ;. Cri#e < D/8 G ;D.
C>en o#>er. Cri#e < D/8 NO ES 8H 9H or ;D.
endcae.
'R#)RA*A E?%I@A$ENTE A$ ANTERI#R
re%or# JE6EMPLO.
i/ /8 G 8. Cri#e < D/8 G 8D.
elei/ /8 G 9. Cri#e < D/8 G 9D.
elei/ /8 G ;. Cri#e < D/8 G ;D.
ele. Cri#e < D/8 NO ES 8H 9H or ;D.
endi/.
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
re%or# (#28AA8.
da#a: -e+in o/ 8H
2 ,al"e DIDH
. ,al"e DKDH
( ,al"e DJDH
end o/ 8H
-e+in o/ 9H
2 ,al"e DIDH
( ,al"e DJDH
end o/ 9.
i/ 8F2 G 9F2.
Cri#e: < 8F2H DGDH 9F2.
ele.
Cri#e: < 8F2H DLMDH 9F2.
endi/.
i/ 8F2 -e#Ceen 9F2 and 9F(.
Cri#e: < 8FIH DESTA ENTREDH 9F2H DandDH 9F(.
ele.
Cri#e: < 8FIH DNO ESTA ENTREDH 9F2H DandDH 9F(.
endi/.
i/ 8 G 9. NCOMPARANDO CAMPOS CADENA BKTE POR BKTE
Cri#e: < D8 G 9D.
ele.
Cri#e: < D8 LM 9D.
endi/.
i/ A G D D.
Cri#e: < DA G DD DDD.
ele.
Cri#e: < DA LM DD DDD.
endi/.
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
re%or# (#28AAO.
da#a: /8H
-e+in o/ H
c8 ,al"e DADH
c9 ,al"e DBDH
c; ,al"e DCDH
c= ,al"e DDDH
c? ,al"e DEDH
cP ,al"e DEDH
end o/ .
Cri#e < DD.
do P #ime ,ar.in+ /8 /rom Fc8 ne2# Fc9.
Cri#e /8.
enddo.
Cri#e < DD.
do ; #ime ,ar.in+ /8 /rom Fc8 ne2# Fc;.
Cri#e /8.
enddo.
re%or# (#28AAP.
Cri#e: < D5OLAD.
e2i#.
Cri#e: < DAQUID.
SE$ECTI#N(SCREEN
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
En la %an#alla de elecci*n lo %ar)me#ro . cri#erio de elecci*n a%arecen
"no de#r) de o#ro en /ila di#in#a. Si e#e /orma#o de %an#alla no e
"/icien#e %ara n"e#ra neceidade e %"ede "#ili(ar la en#encia:
SELECTIONFSCREEN %ara /orma#ear la %an#alla de elecci*n.
SintaAis+
SELECTIONFSCREEN BEGIN OE LINE...
....
SELECTIONFSCREEN END OE LINE.
SELECTIONFSCREEN SRIP S LnM T.
SELECTIONFSCREEN ULINE S S < T L%oici*nM & Llon+i#"dM' T S < T
SELECTIONFSCREEN POSITION L%oici*nM.
SELECTIONFSCREEN COMMENT S < T L%oici*nM &Llon+i#"dM' Lcam%oM
S EOR EIELD Lcam%o9M T S MODIE ID Lcla,eM T .
SELECTIONFSCREEN BEGIN OE BLOCR L-lo!"eM S WIT5 ERAME S TITLE L#$#"loM T T
S NO INTER3ALS T
...
SELECTIONFSCREEN END OE BLOCR L-lo!"eM.
SELECTIONFSCREEN EUNCTION REK LiM.
SELECTIONFSCREEN BEGIN OE 3ERSION L,eri*nM TEITF222.
SELECTIONFSCREEN END OE 3ERSION L,eri*nM.
SELECTIONFSCREEN EICLUDE
SELECTIONFSCREEN DKNAMIC SELECTIONS EOR TABLE L#a-laM.
SELECTIONFSCREEN EIELD SELECTION EOR TABLE L#a-laM.
El i+ni/icado de la cl)""la e el i+"ien#e:
SRIP FM Pro,oca l$nea en -lanco en la %an#alla de elecci*n. LnM e o%cional
e "#ili(a %ara al#ar m) de "na l$nea.
ULINE FM S"-ra.a "na l$nea o %ar#e de ella en la %an#alla de elecci*n. Si no
"#ili(amo la o%ci*n L%oici*nM &Llon+i#"dM' "na n"e,a l$na e crea. Si
"#ili(amo la o%ci*n L%oici*nM&Llon+i#"dM' la n"e,a l$nea comien(a en la
%oici*n L%oici*nM con "na lon+i#"d de Llon+i#"dM carac#ere. Con ,ario
elemen#o o-re "na l$nea e %"ede e%eci/icar Llon+i#"dM in e%eci/icar
L%oici*nM.
MODIE ID FM Tiene el mimo i+ni/icado !"e en la en#encia PARAMETERS.
COMMENT FM Se "#ili(a %ara ecri-ir #e2#o o-re la %an#alla de elecci*n. Con
la -arra & < ' al#amo de l$nea . con L%oici*nM . Llon+i#"dM de/inimo la
%oici*n . la lon+i#"d del #e2#o en la %an#alla. Lcam%o8M %"ede er "n
elemen#o de #e2#o o "n cam%o con "na lon+i#"d m)2ima de 4 carac#ere. Para
ai+nar "n #e2#o a "n %ar)me#ro o a "n cri#erio de elecci*n e "#ili(a la
o%ci*n EOR EIELDH Lcam%o9M iden#i/ica el nom-re del %ar)me#ro o cri#erio de
elecci*n. La o%ci*n MODIE ID #iene el mimo i+ni/icado !"e en la cl)""la
PARAMETERS.
BEGIN OE LINE ... END OE LINE FM Se "#ili(a %ara i#"ar en "na mima l$nea
,ario %ar)me#ro .<o comen#ario en la %an#alla de elecci*n. C"ando
"#ili(amo e#a cl)""la el %oi-le elemen#o de #e2#o >a-r) !"e "#ili(ar la
cl)""la COMMENT de la en#encia SELECTIONFSCREEN. Lo cri#erio de elecci*n
no e %"eden incl"ir. La o%ci*n -arra & < ' no e %"ede e%eci/icarH . la
o%ci*n L%oici*nM e %"ede omi#ir.
POSITION FM Si#0a "n %ar)me#ro o "n comen#ario en "na %oici*n de#erminada.
Para L%oici*nM e %"ede e%eci/icar "n n0meroH POSULOW . POSU5IG5. POSULOW .
POSU5IG5 on la %oicione del cam%o dede . cam%o >a#a de "n cri#erio de
elecci*n o-re la %an#alla. E#a cl)""la *lo %"ede er "#ili(ada en "n
-lo!"e BEGIN OE LINE ... END OE LINE.
BEGIN OE BLOCR ... END OE BLOCR FM Crea "n -lo!"e l*+ico o-re la %an#alla de
elecci*n. Con la o%ci*n WIT5 ERAME el -lo!"e e en+lo-a con "n c"adreo. Con
la o%ci*n TITLE a%arecer) el #$#"lo L#$#"loM en la %rimera l$nea del c"adro.
L#$#"loM %"ede er "n elemen#o de #e2#o o "n li#eral. Con la o%ci*n NO
INTER3ALS #oda la en#encia SELECTFOPTIONS e %rocean como i #",ieran la
en#encia NO INTER3ALS. Con e#a o%ci*nH i "#ili(amo adem) WIT5 ERAMEH el
c"adro er) meno anc>o.
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP

Se %"ede crear >a#a cinco -o#one en la -arra de -o#one o-re la %an#alla de
elecci*n. E#o -o#one e conec#an a"#om)#icamen#e a #ecla de /"nci*n.LiM
de-e e#ar com%rendido en#re 8 . ?. El #e2#o !"e a%arece o-re el -o#*n e
e%eci/ica en #iem%o de e1ec"ci*n mo,iendo "n ,alor o-re el cam%o SSCREIELDSF
EUNCTITUALiM. La e#r"c#"ra SSCREIELDS de-e e#ar declarada con la en#encia
TABLES. C"ando el ""ario ac#i,a "n -o#*nH el ,alor ECALiM e in#rod"cido
o-re el cam%o SSCREIELDSFUCOMMH el c"al %"ede er c>e!"eado en el e,en#o AT
SELECTIONFSCREEN.
E2i#e #am-iVn la %oi-ilidad de i#"ar -o#one o-re la %an#alla de elecci*n
con la o%ci*n PUS5BUTTON. La o%cione -arra &<'H %oici*nMH Llon+i#"dM .
MODIE ID Lcla,eM on la mima !"e la e2%licada en la cl)""la COMMENT.
Lcam%oM e el #e2#o !"e a%arece o-re el -o#*n. Para LcmdM e de-e e%eci/icar
"n c*di+o de >a#a c"a#ro carac#ere. C"ando el ""ario %reiona el -o#*nH
LcmdM e in#rod"cido en el cam%o SSCREIELDSFUCOMM. Como "ced$a en la cl)""la
an#eriorH SCCREIELDS de-e declarare con la en#encia TABLES. El cam%o
SSCREIELDSFUCOMM %"ede er "#ili(ado en el e,en#o AT SELECTIONFSCREEN.
El re#o de cl)""la e "#ili(an e2cl"i,amen#e en lo %ro+rama de
de/inici*n de -ae de da#o.
E>e4-lo 1+
SELECTIONFSCREEN BEGIN OE LINE.
SELECTIONFSCREEN COMMENT 8&8A' TEITFAA8.
PARAMETERS: P8&;'H P9&?'H P;&8'.
SELECTIONFSCREEN END OE LINE.
E>e4-lo 2+
SELECTFOPTIONS DATE EOR SKFDATUM DEEAULT SKFDATUM.
E>e4-lo 3+
SELECTIONFSCREEN BEGIN OE LINE.
SELECTIONFSCREEN COMMENT 8A&9A' TEITFAA8
EOR EIELD PARM.
SELECTIONFSCREEN POSITION POSULOW.
PARAMETERS PARM LIRE SAPLANEFPLANETKPE.
SELECTIONFSCREEN END OE LINE.
E>e4-lo B+
TABLES SSCREIELDS.
...
SELECTIONFSCREEN PUS5BUTTON <8A&9A' C5ARLK USERFCOMMAND ABCD.
...
INITIALIJATION.
MO3E DM. #e2#D TO C5ARLK.
...
AT SELECTIONFSCREEN.
IE SSCREIELDSFUCOMM G DABCDD.
...
ENDIE.
E>e4-lo C+
TABLES SAPLANE.
SELECTIONFSCREEN BEGIN OE BLOCR C5ARLK
WIT5 ERAME TITLE TEITFAA8.
PARAMETERS PARM&?'.
SELECTFOPTIONS SEL EOR SAPLANEFPLANETKPE.
SELECTIONFSCREEN END OE BLOCR C5ARLK.
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
Cea una -antalla de sele::i;n donde a-aez:an dos 6otones
-aa ealiza -ue6as de divisi6ilidad -o 3 7 -o B de
a:uedo a un -aD4eto de entada de ti-o enteo"
REPORT Z/APITULO_13_0$.
TABLES1 SS/R0IEL&S.
&ATA1 0LA;3
RES T2PE I.
PARAMETERS TEST(3).
SELE/TION!S/REEN SKIP 1.
SELE/TION!S/REEN PUS6BUTTON '20(10) BOT1 USER!/OMMAN& B1.
SELE/TION!S/REEN SKIP 1.
SELE/TION!S/REEN PUS6BUTTON '20(10) BOT2 USER!/OMMAN& B2.
INITIALIZATION.
BOT1 8 Boto. 1.
BOT2 8 Boto. 2.
AT SELE/TION!S/REEN.
I0 SS/R0IEL&S!U/OMM 8 B1.
0LA; 8 1.
ELSEI0 SS/R0IEL&S!U/OMM 8 B2.
0LA; 8 2.
EN&I0.
START!O0!SELE/TION.
I0 0LA; 8 1.
WRITE 6? )-Ao pD,)?Ao e, >otM. 1.
RES 8 TEST MO& 3.
I0 RES 8 0.
WRITE1 ' TEST3 e) A-+-)->,e por 3.
ELSE.
WRITE1 ' TEST3 .o e) A-+-)->,e por 3.
EN&I0.
ELSEI0 0LA; 8 2.
WRITE 6? )-Ao pD,)?Ao e, >otM. 2.
RES 8 TEST MO& 4.
I0 RES 8 0.
WRITE1 ' TEST3 e) A-+-)->,e por 4.
ELSE.
WRITE1 ' TEST3 .o e) A-+-)->,e por 4.
EN&I0.
ELSE.
WRITE No )e @? pD,)?Ao .-.EN. >otM..
EN&I0.
Si %reionamo el WBo#*n 8XH la %an#alla de alida e:
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
Si %reionamo el WBo#*n 9XH la %an#alla de alida e:
Si no %reionamo nin+0n -o#*n . l"e+o e1ec"#amoH la %an#alla de alida e:
Cea una -antalla de sele::i;n donde a-aez:an tes
6otones (al lado del 6ot;n de e>e:u:i;n) -aa ealiza
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
-ue6as de divisi6ilidad -o 3< -o B 7 -o C de a:uedo a
un -aD4eto de entada de ti-o enteo"
REPORT ZE5EMPLO.
TABLES1 SS/R0IEL&S.
&ATA1 0LA;3
RES T2PE I.
PARAMETERS TEST T2PE I.
SELE/TION!S/REEN 0UN/TION KE2 1.
SELE/TION!S/REEN 0UN/TION KE2 2.
SELE/TION!S/REEN 0UN/TION KE2 3.
INITIALIZATION.
SS/R0IEL&S!0UN/TLT_01 8 &I4ISIBLE POR 3.
SS/R0IEL&S!0UN/TLT_02 8 &I4ISIBLE POR 4.
SS/R0IEL&S!0UN/TLT_03 8 &I4ISIBLE POR (.
AT SELE/TION!S/REEN.
I0 SS/R0IEL&S!U/OMM 8 0/01.
0LA; 8 1.
ELSEI0 SS/R0IEL&S!U/OMM 8 0/02.
0LA; 8 2.
ELSEI0 SS/R0IEL&S!U/OMM 8 0/03.
0LA; 8 3.
EN&I0.
START!O0!SELE/TION.
I0 0LA; 8 1.
WRITE 6? )-Ao pD,)?Ao e, >otM. 1.
RES 8 TEST MO& 3.
I0 RES 8 0.
WRITE1 ' TEST3 e) A-+-)->,e por 3.
ELSE.
WRITE1 ' TEST3 .o e) A-+-)->,e por 3.
EN&I0.
ELSEI0 0LA; 8 2.
WRITE 6? )-Ao pD,)?Ao e, >otM. 2.
RES 8 TEST MO& 4.
I0 RES 8 0.
WRITE1 ' TEST3 e) A-+-)->,e por 4.
ELSE.
WRITE1 ' TEST3 .o e) A-+-)->,e por 4.
EN&I0..
ELSEI0 0LA; 8 3.
WRITE 6? )-Ao pD,)?Ao e, >otM. 3.
RES 8 TEST MO& (.
I0 RES 8 0.
WRITE1 ' TEST3 e) A-+-)->,e por (.
ELSE.
WRITE1 ' TEST3 .o e) A-+-)->,e por (.
EN&I0.
ELSE.
WRITE No )e @? pD,)?Ao .-.EN. >otM..
EN&I0.
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
Si %reionamo el WBo#*n 8XH la %an#alla de alida e:
Si %reionamo el WBo#*n 9XH la %an#alla de alida e:
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
Si %reionamo el WBo#*n ;XH la %an#alla de alida e:
Si no %reionamo nin+0n -o#*n . l"e+o e1ec"#amoH la %an#alla de alida e:
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
TAB$AS INTERNAS
Si deeamo +"ardar "na :ole::i;n de egistos de datos de
la 4is4a estu:tua en memoria in neceidad de acceder a
la -ae de da#o . %oder reali(ar o%eracione di,era con
e#e con1"n#o de in/ormaci*nH "#ili(aremo la ta6las
intenas"
C;4o de:laa ta6las intenas
.ATA+ BE)IN #/ <ta6la> #CC%RS <n><
<.ef"Ca4-o><
E
EN. #/ <ta6la>"
De/iniremo "na #a-la in#erna con nFl$nea en memoriaH
m) "na l$nea de ca-ecera o )rea de #ra-a1o.
La can#idad de l$nea !"e e%eci/i!"emo en el OCCURS
no limi#a el #ama@o de la #a-laH ino la can#idad de
re+i#ro !"e e +"ardan en memoria im"l#)neamen#e. E#o
>ace neceario "n e%ecial c"idado al %ro%oner el n0mero de
l$neaH .a !"e "n OCCURS m". +rande "%one "n +ran +a#o de
rec"ro del i#ema . "n OCCURS %e!"e@o "n acceo m".
len#oH .a !"e necei#a de "n %roceo de %a+inaci*n.
Una manera ma e/icien#e de #ra-a1ar e "#ili(ando
#.%e. Como e m"e#ra en el i+"ien#e e1em%lo.
TYPES: BEGIN OF LINE,
COLUMN1 TYPE I,
COLUMN2 TYPE I,
COLUMN3 TYPE I,
END OF LINE.
DATA: TABLITA TABLE OE LINE WIT5 5EADER LINE.
$lenado de una ta6la intena"
A''EN. : A@ade "n re+i#ro a "na #a-la in#erna con
lo ,alore !"e #en+amo en el )rea de #ra-a1o.
A''EN. <inta6>"
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
C#$$ECT : A@ade o "ma la l$nea de ca-ecera.
S"mar) lo cam%o de #i%o PHEHIH i e2i#e "na l$nea
en la #a-la con cam%o idVn#ico &#i%o C' a lo del
)rea de #ra-a1o.
El %ro-lema de e#a in#r"cci*n e !"e e -a#an#e
len#a. Se %"ede "#i#"ir %or la in#r"ccione READ
e INSERT o MODIEK.
Podemo llenar "na #a-la in#erna con el con#enido de
"na #a-la de -ae de da#o. Siem%re !"e la #a-la
in#erna #en+a la mima e#r"c#"ra !"e la #a-la de
-ae de da#o.
SE$ECT F /R#* <ta6> INT# TAB$E <ta6int>"
#dena una ta6la intena"
Para clai/icar "na #a-la in#erna "#ili(amo S#RT.
S#RT <inta6>"
E#a in#r"cci*n reali(a "na ordenaci*n %or la
e#r"c#"ra de la #a-la in #ener en c"en#a lo cam%o
PHIHE.
Para ordenar %or el cam%o&' !"e necei#emo &ea del
#i%o !"e ea':
S#RT <inta6> B, <:a4-o1> """" <:a4-o n>"
Si no e indica lo con#rarioH la ordenaci*n %or
de/ec#o e acenden#e.
S#RT ... ASCEN.IN)" o .ESCEN.IN)"
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
'o:esa4iento de una ta6la intena"
Podemo recorrer "na #a-la in#erna con la in#r"cci*n
$##' """ EN.$##'F
$##' AT <intal> ( WGERE <:ond>)"
EN.$##'"
En cada i#eraci*n coloca la l$nea de la #a-la !"e e
e#) %roceando en la l$nea de ca-ecera.
Podemo re#rin+ir el %roceo de "na #a-la con "na
condici*n W5ERE.
Si no e2i#e nin+0n re+i#ro de la #a-la !"e c"m%la la
condici*n e%eci/icada en la cl)""la W5EREH la ,aria-le
del i#ema S,(S%BRC er) di#in#a !"e A.
Den#ro del LOOPH la ,aria-le S,(TABIH con#iene el
$ndice de la en#rada !"e e#) %roceando en ee momen#o.
Tam-iVn e %oi-le >acer "n:
$##' AT<inta6> /R#* <ini:io> T# <fin>"
E
EN.$##'"
Donde LinicioM . L/inM on $ndice de la #a-la
in#erna.
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
Tata4iento de niveles de u-tua"
En el #ra#amien#o de "n LOOP %odemo "#ili(ar
en#encia de con#rol de r"%#"ra+
AT /IRST"
E
EN.AT" Reali(a la in#r"ccione !"e >a.
a con#in"aci*n
del AT EIRST %ara la %rimera
en#rada de la #a-la.
AT $AST"
E
EN.AT" Reali(a la in#r"ccione !"e >a.
a con#in"aci*n
del AT LAST %ara la 0l#ima en#rada
de la #a-la.
AT NEW <:a4-o>"
E
EN.AT" Reali(a la in#r"ccione !"e >a.
a con#in"aci*n
del AT NEW %ara cada inicio de
ni,el de r"%#"ra.
AT EN. #/ <:a4-o>"
E
EN.AT" Reali(a la in#r"ccione !"e >a.
a con#in"aci*n
del AT END %ara cada /inal de
ni,el de r"%#"ra.
Si "#ili(amo la in#r"cci*n S%* den#ro de "n AT ...
ENDATH reali(ar) la "ma de #odo lo cam%o PHIHE de ee
ni,el de r"%#"ra & %ara el c)lc"lo de "-#o#ale '.
El re"l#ado lo encon#raremo en el )rea de #ra-a1o de la
#a-la.
Ser) neceario !"e la #a-la in#erna e#V ordenada en
el mimo orden !"e la "#ili(aci*n de lo ni,ele de
r"%#"ra.
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
A$ la "#ili(aci*n con1"n#a de #oda e#a
in#r"ccione er):
S#RT <inta6> B, <:1> <:2>"
$##' AT <inta6>"
AT /IRST """ (S%*) """ EN.AT"
AT NEW <:l>"
""" (S%*) E
EN.AT"
AT NEW <:2>"
""" (S%*) E
EN.AT"
"""""""""" I'o:eso No4al de la ta6la
AT EN. #/ <:2>"
""" (S%*) """
EN.AT"
AT EN. #/ <:1>"
""" (S%*) """
EN.AT"
AT $AST E (S%*) E EN.AT"
EN.$##'"
$e:tua de entadas de una ta6la"
Podemo -"car "n re+i#ro concre#o en "na #a-la
in neceidad de recorrerla.
REA. TAB$E <inta6>"
Para elloH en %rimer l"+ar rellenaremo la l$nea de
ca-ecera con la cla,e de -0!"eda . l"e+o >aremo el READ.
El re"l#ado de la -0!"eda lo #endremo en S,(
S%BRC"
Si: SKFSUBRC G A H la -0!"eda >a ido
%oi#i,a.
Si: SKFSUBRC LM A H no >a encon#rado el
re+i#ro olici#ado.
E2i#en o#ra e2#enione a la in#r"cci*n READ
!"e necei#ar)n !"e la #a-la e#V ordenada.
Podemo -"car %or cla,e con:
REA. TAB$E <inta6> WGIT &E, <:lave>"
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
No necei#a llenar la l$nea de ca-ecera. B"car)
dede el inicio de la #a-la !"V car)c#er a car)c#er
coincida con la cla,e.
E %oi-le "na -0!"eda a0n m) r)%ida con "na
-0!"eda -inaria.
REA. TAB$E <inta6> WITG &E, <:lave> BINAR,
SEARCG"
Una lec#"ra direc#a de "n re+i#ro de la #a-la la
%odemo reali(ar con:
REA. TAB$E <inta6> IN.EH <nu4>"
E0ERCICI# 'R#'%EST#
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
Crear un reporte de viajes de una empresa de transportes interprovinciales donde se muestre
su nmero de ruta, tarifa; ciudad, fecha y hora de partida como de llegada. Luego ordenar el
reporte segn fecha de partida.
PASOS:
1.- Crear las estructuras siguientes:
CAMPO TIPO LONGITUD
CODIGO DE RUTA C
CODIGO DE TARI!A I
CIUDAD DE PARTIDA C 1"
#ORA DE PARTIDA T
!EC#A DEPARTIDA D
CIUDAD DE LLEGADA C 1"
#ORA DE LLEGADA T
!EC#A DE LLEGADA D
$.- A%a&ir ' llenar (e&iante )r*gra(a l*s registr*s +ue a)arecen en la ,igura.
-.- I()ri(ir en )antalla:
Titul*: #ORARIOS DE .IA/ES centra&*.
Enca0e1a&* &e ta0la
C*nteni&* &e l*s registr*.
N*ta el titul* ' el enca0e1a&* &e ta0la se (uestra en ,*n&* c*l*r a(arill* ' a1ul
res)ecti2a(ente.
AMARILLO
AJUL
AJUL
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
4ueste la divisi;n de dos n54eos enteos en un n54eo eal :on 3 de:i4ales+
a) ?ue la ulti4a -osi:i;n del de:i4al sea la -osi:i;n 13"
6) ?ue el -i4e luga enteo a-aez:a en la -osi:i;n J"
REPORT Z/APITULO_14_0( .
&ATA1 A T2PE I3
B T2PE I3
N T2PE P &E/IMALS 3.
A 8 2.
B 8 13.
N 8 A ' B.
I P?rte ?.
WRITE 01234("9$#01234("9$#.
WRITE '(14) N.
I P?rte >.
WRITE '$ N LE0T!5USTI0IE&.
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
S#$%CI#N E0ERCICI# 'R#'%EST#
REPORT ZB/_0RE&&21 LINE!SIZE 100
LINE!/OUNT "(
NO STAN&AR& PA;E 6EA&IN;
MESSA;E!I& CG.
&ATA1 BE;IN O0 TABLA O//URS 103
/O&I;O_RUTA(4) T2PE /3
TARI0A T2PE I3
PARTI&A(1() T2PE /3 O/IU&A& &E PARTI&A
6ORA_PARTI&A T2PE T3
0E/6A_PARTI&A T2PE &3
LLE;A&A(1() T2PE /3
6ORA_LLE;A&A T2PE T3
0E/6A_LLE;A&A T2PE &3
EN& O0 TABLA.
TABLA!/O&I;O_RUTA 8 RNTA.
TABLA!TARI0A 8 1(.
TABLA!PARTI&A 8 LIMA.
TABLA!6ORA_PARTI&A 8 1(0"03.
TABLA!0E/6A_PARTI&A 8 200(0#19.
TABLA!LLE;A&A 8 IPUITOS.
TABLA!6ORA_LLE;A&A 8 1020((.
TABLA!0E/6A_LLE;A&A 8 200(0#1$.
APPEN& TABLA.
TABLA!/O&I;O_RUTA 8 RNT2.
TABLA!TARI0A 8 3(.
TABLA!PARTI&A 8 AREPUIPA.
TABLA!6ORA_PARTI&A 8 0"((49.
TABLA!0E/6A_PARTI&A 8 200(0"1(.
TABLA!LLE;A&A 8 TUMBES.
TABLA!6ORA_LLE;A&A 8 12301(.
TABLA!0E/6A_LLE;A&A 8 200((0"19.
APPEN& TABLA.
TABLA!/O&I;O_RUTA 8 ATNR.
TABLA!TARI0A 8 32.
TABLA!PARTI&A 8 I/A.
TABLA!6ORA_PARTI&A 8 140201.
TABLA!0E/6A_PARTI&A 8 200(0214.
TABLA!LLE;A&A 8 /UZ/O.
TABLA!6ORA_LLE;A&A 8 0$("30.
TABLA!0E/6A_LLE;A&A 8 200(021".
APPEN& TABLA.
TABLA!/O&I;O_RUTA 8 RNTA.
TABLA!TARI0A 8 40.
TABLA!PARTI&A 8 LIMA.
TABLA!6ORA_PARTI&A 8 0"1(23.
TABLA!0E/6A_PARTI&A 8 200(0301.
TABLA!LLE;A&A 8 6UAN/A2O.
TABLA!6ORA_LLE;A&A 8 1(0122.
TABLA!0E/6A_LLE;A&A 8 200(0301.
APPEN& TABLA.
0ORMAT INTENSI0IE& /OLOR 8 3.
0ORMAT 6OTSPOT.
ULINE.
WRITE1 '000 S2!4LINE3
(#$) 6ORARIOS &E 4IA5ES /ENTERE&3
100 S2!4LINE.
ULINE.
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
0ORMAT 6OTSPOT O00.
0ORMAT INTENSI0IE& O00.
0ORMAT /OLOR /OL_KE2 INTENSI0IE& ON.
ULINE.
WRITE1 '000 S2!4LINE3 RUTA3
00$ S2!4LINE3 010 TARI0A3
019 S2!4LINE3 033 PARTI&A3
0(9 S2!4LINE3 09( LLE;A&A3
100 S2!4LINE.
ULINE.
WRITE1 '000 S2!4LINE3
00$ S2!4LINE3
019 S2!4LINE3 /IU&A&3
033 S2!4LINE3 6ORA3
044 S2!4LINE3 0E/6A3
0(9 S2!4LINE3 /IU&A&3
093 S2!4LINE3 6ORA3
0$4 S2!4LINE3 0E/6A3
100 S2!4LINE.
ULINE.
SKIP.
0ORMAT /OLOR O00.
SORT TABLA AS/EN&IN; B2 0E/6A_PARTI&A.
LOOP AT TABLA.
WRITE1 '2 TABLA!/O&I;O_RUTA3 TABLA!TARI0A3 TABLA!PARTI&A3
(10) TABLA!6ORA_PARTI&A USIN; E&IT MASK __1__1__3
(12) TABLA!0E/6A_PARTI&A USIN; E&IT MASK __'__'__3
TABLA!LLE;A&A3
(10) TABLA!6ORA_LLE;A&A USIN; E&IT MASK __1__1__3
(10) TABLA!0E/6A_LLE;A&A USIN; E&IT MASK __'__'__.
EN&LOOP.
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
IE5EMPLO &E USO &E SORTI ''INI/IO IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
ISORT TABLA AS/EN&IN; B2 0E/6A_PARTI&A /O&I;O_RUTA &ES/EN&IN;.
ISORT TABLA AS/EN&IN; B2 0E/6A_PARTI&A /O&I;O_RUTA PARTI&A.
ISORT TABLA AS/EN&IN; B2 0E/6A_PARTI&A /O&I;O_RUTA PARTI&A &ES/EN&IN;.
ISORT TABLA AS/EN&IN; B2 0E/6A_PARTI&A /O&I;O_RUTA &ES/EN&IN; PARTI&A
I&ES/EN&IN;.
SORT TABLA &ES/EN&IN; B2 0E/6A_PARTI&A /O&I;O_RUTA &ES/EN&IN; PARTI&A
&ES/EN&IN;.
ISORT TABLA AS/EN&IN; B2 0E/6A_PARTI&A.
ISORT TABLA.
IE5EMPLO &E USO &E SORTI ''0IN IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
T2PES1 BE;IN O0 W_TABLA3
/O&I;O_RUTA(4) T2PE /3
TARI0A T2PE I3
PARTI&A(1() T2PE /3 O/IU&A& &E PARTI&A
6ORA_PARTI&A T2PE T3
0E/6A_PARTI&A T2PE &3
LLE;A&A(1() T2PE /3
6ORA_LLE;A&A T2PE T3
0E/6A_LLE;A&A T2PE &3
EN& O0 W_TABLA.

I0UN/IONA &E/LARA/ION &E TABLAS (INI/IO) IIIIIIIIIIIIIIIII
&ATA1 TABLA T2PE TABLE O0 W_TABLA WIT6 6EA&ER LINE.
I&ATA1 TABLA T2PE STAN&AR& TABLE O0 W_TABLA WIT6 6EA&ER LINE.
I0UN/IONA &E/LARA/ION &E TABLAS (0INAL) IIIIIIIIIIIIIIIII
T2PES1 BE;IN O0 W_TABLA3
/O&I;O_RUTA(4) T2PE /3
TARI0A T2PE I3
PARTI&A(1() T2PE /3 O/IU&A& &E PARTI&A
6ORA_PARTI&A T2PE T3
0E/6A_PARTI&A T2PE &3
LLE;A&A(1() T2PE /3
6ORA_LLE;A&A T2PE T3
0E/6A_LLE;A&A T2PE &3
EN& O0 W_TABLA.

T2PES1 T_TABLA T2PE TABLE O0 W_TABLA.
&ATA1 TABLA T2PE T_TABLA WIT6 6EA&ER LINE.
&ATA1 BE;IN O0 TABLA O//URS 103
/O&I;O_RUTA(4) T2PE /3
TARI0A T2PE I3
PARTI&A(1() T2PE /3 O/IU&A& &E PARTI&A
6ORA_PARTI&A T2PE T3
0E/6A_PARTI&A T2PE &3
LLE;A&A(1() T2PE /3
6ORA_LLE;A&A T2PE T3
0E/6A_LLE;A&A T2PE &3
EN& O0 TABLA.
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
.ESCRIBE
&ATA1 NUMLINEAS T2PE I3 NUMORI;INAL T2PE I3 TIPOTABLA T2PE /.
&ES/RIBE TABLE TABLA LINES NUMLINEAS O//URS NUMORI;INAL KIN& INUMTIPOTABLA.
WRITE1 ' NUMLINEAS3 NUMORI;INAL3 TIPOTABLA.
DE3UEL3E TIPOTABLA: STANDARD.
NUMORIGINAL G AH SI SE DECLARO COMP TKPTH SI SE TRABA6A CON OCCURS EL NUMERO
DE OCUURS ESTABLECIDO.
INSERT EN TAB$AS
REPORT ZB/_0RE&&21 LINE!SIZE 100
LINE!/OUNT "(
NO STAN&AR& PA;E 6EA&IN;
MESSA;E!I& CG.
T2PES1 BE;IN O0 W_TABLA3
/O&I;O_RUTA(4) T2PE /3
TARI0A T2PE I3
PARTI&A(1() T2PE /3 O/IU&A& &E PARTI&A
6ORA_PARTI&A T2PE T3
0E/6A_PARTI&A T2PE &3
LLE;A&A(1() T2PE /3
6ORA_LLE;A&A T2PE T3
0E/6A_LLE;A&A T2PE &3
EN& O0 W_TABLA.
&ATA1 TABLA T2PE TABLE O0 W_TABLA WIT6 6EA&ER LINE.
&ATA1 ENTRALINEA T2PE W_TABLA.
ENTRALINEA!/O&I;O_RUTA 8 RNTA.
ENTRALINEA!TARI0A 8 1(.
ENTRALINEA!PARTI&A 8 LIMA.
ENTRALINEA!6ORA_PARTI&A 8 1(0"03.
ENTRALINEA!0E/6A_PARTI&A 8 200(0#19.
ENTRALINEA!LLE;A&A 8 IPUITOS.
ENTRALINEA!6ORA_LLE;A&A 8 1020((.
ENTRALINEA!0E/6A_LLE;A&A 8 200(0#1$.
INSERT ENTRALINEA INTO TABLE TABLA.
ENTRALINEA!/O&I;O_RUTA 8 RNT2.
ENTRALINEA!TARI0A 8 3(.
ENTRALINEA!PARTI&A 8 AREPUIPA.
ENTRALINEA!6ORA_PARTI&A 8 0"((49.
ENTRALINEA!0E/6A_PARTI&A 8 200(0"1(.
ENTRALINEA!LLE;A&A 8 TUMBES.
ENTRALINEA!6ORA_LLE;A&A 8 12301(.
ENTRALINEA!0E/6A_LLE;A&A 8 200((0"19.
INSERT ENTRALINEA INTO TABLE TABLA.
ENTRALINEA!/O&I;O_RUTA 8 ATNR.
ENTRALINEA!TARI0A 8 32.
ENTRALINEA!PARTI&A 8 I/A.
ENTRALINEA!6ORA_PARTI&A 8 140201.
ENTRALINEA!0E/6A_PARTI&A 8 200(0214.
ENTRALINEA!LLE;A&A 8 /UZ/O.
ENTRALINEA!6ORA_LLE;A&A 8 0$("30.
ENTRALINEA!0E/6A_LLE;A&A 8 200(021".
INSERT ENTRALINEA INTO TABLE TABLA.
ENTRALINEA!/O&I;O_RUTA 8 RNTA.
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
ENTRALINEA!TARI0A 8 40.
ENTRALINEA!PARTI&A 8 LIMA.
ENTRALINEA!6ORA_PARTI&A 8 0"1(23.
ENTRALINEA!0E/6A_PARTI&A 8 200(0301.
ENTRALINEA!LLE;A&A 8 6UAN/A2O.
ENTRALINEA!6ORA_LLE;A&A 8 1(0122.
ENTRALINEA!0E/6A_LLE;A&A 8 200(0301.
INSERT ENTRALINEA INTO TABLE TABLA.
ISORT TABLA AS/EN&IN; B2 0E/6A_PARTI&A.
LOOP AT TABLA.
WRITE1 '2 TABLA!/O&I;O_RUTA3 TABLA!TARI0A3 TABLA!PARTI&A3
(10) TABLA!6ORA_PARTI&A USIN; E&IT MASK __1__1__3
(12) TABLA!0E/6A_PARTI&A USIN; E&IT MASK __'__'__3
TABLA!LLE;A&A3
(10) TABLA!6ORA_LLE;A&A USIN; E&IT MASK __1__1__3
(10) TABLA!0E/6A_LLE;A&A USIN; E&IT MASK __'__'__.
ENTRALINEA!/O&I;O_RUTA 8 RRRR.
ENTRALINEA!TARI0A 8 40.
ENTRALINEA!PARTI&A 8 EN3.
ENTRALINEA!6ORA_PARTI&A 8 0"1(23.
ENTRALINEA!0E/6A_PARTI&A 8 200(0301.
ENTRALINEA!LLE;A&A 8 6UARR2O.
ENTRALINEA!6ORA_LLE;A&A 8 1(0122.
ENTRALINEA!0E/6A_LLE;A&A 8 200(0301.
MO&I02 TABLA 0ROM ENTRALINEA IN&EL 3.
* MODIFY TABLA INDEX 3.
C#$#R
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
REPORT ZB/_5UAN004.
&ATA - T2PE - 4ALUE 0.
&ATA =o,(1() T2PE =.
W6ILE - 7 $.
/ASE -.
W6EN 0. =o, 8 /OL_BA/K;ROUN& .
W6EN 1. =o, 8 /OL_6EA&IN; .
W6EN 2. =o, 8 /OL_NORMAL .
W6EN 3. =o, 8 /OL_TOTAL .
W6EN 4. =o, 8 /OL_KE2 .
W6EN (. =o, 8 /OL_POSITI4E .
W6EN ". =o, 8 /OL_NE;ATI4E .
W6EN 9. =o, 8 /OL_;ROUP .
EN&/ASE.
0ORMAT INTENSI0IE& /OLOR 8 -.
WRITE1 '(4) -3 AT 9 )*!+,-.e3
=o,3 )*!+,-.e3
=o, INTENSI0IE& O003 )*!+,-.e3
=o, IN4ERSE.
- 8 - : 1.
EN&W6ILE.
TE#RIA C#$#RES
Colors in Lists
The options COLOR, INTENSIFIED, and INVERSE of the FORMAT statement influence the
colos of the output list!
To set colos in the po"am, use#
Syntax
/#R*AT C#$#R <n> K#NL INTENSI/IE. K#NM#//L IN@ERSE K#NM#//L"
To set colos at untime, use#
Syntax
/#R*AT C#$#R N <:> INTENSI/IE. N <int> IN@ERSE N <inv>"
These fomattin" options do not appl$ to hoi%ontal lines ceated &$ 'LINE! The$ ha(e the
follo)in" functions#
COLOR sets the colo of the line &ac*"ound! If, in addition, INVERSE ON is set, the
s$stem chan"es the foe"ound colo instead of the &ac*"ound colo!
Fo +n, $ou can set eithe a colo num&e o a colo specification! Instead of colo
num&e -, ho)e(e, $ou must use OFF! If $ou set the colo num&es at untime, all
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
(alues of +c, that ae less than %eo o "eate than se(en, lead to undefined esults!
The follo)in" ta&le summai%es the diffeent possi&ilities#

<n> <c> Color Intended for
OFF o COL./AC01RO'ND - depends on 1'I &ac*"ound
2 o COL.3EADIN1 2 "a$4&lue heades
5 o COL.NORMAL 5 li"ht "a$ list &odies
6 o COL.TOTAL 6 $ello) totals
7 o COL.0E8 7 &lue4"een *e$ columns
9 o COL.:OSITIVE 9 "een positi(e theshold (alue
; o COL.NE1ATIVE ; ed ne"ati(e theshold (alue
< o COL.1RO': < (iolet Contol le(els
The default settin" is COLOR OFF!
INTENSIFIED detemines the colo palette fo the line &ac*"ound!
=ith one e>ception ?COLOR OFF@, the colo palette fo the line &ac*"ound specified
a&o(e can &e intensified o nomal! The default settin" is INTENSIFIED ON! Fo
COLOR OFF, the s$stem chan"es the foe"ound colo instead of the &ac*"ound colo!
If, in addition, INVERSE ON is set, then INTENSIFIED OFF has no effect ?a"ain )ith
the e>ception of COLOR OFF@!
INVERSE affects the foe"ound colo!
=ith one e>ception ?COLOF OFF@, the s$stem ta*es the COLOR specified fom an
in(ese colo palette and uses it as foe"ound colo! The &ac*"ound colo emains
unchan"ed! Fo COLOR OFF, INVERSE has no effect, since this )ould set the
foe"ound and the &ac*"ound to the same colo!
The follo)in" statements ha(e the same effect#
/#R*AT INTENSI/IE. #N" and S%**AR,"
FORMAT INTENSIFIED OFF and .ETAI$"
3o)e(e, SA: ecommends that $ou al)a$s use the FORMAT statement, since
it ma*es po"ams easie to ead!
The follo)in" e>amples sho) the colos possi&le in lists and ho) to use them!
Fo anothe demonstation of colos in lists, call the e>ecuta&le po"am S3O=COLO in an$
s$stem!
Demonstrating the Colors Available in Lists
The follo)in" e>ample sho)s the diffeent com&inations of the colo fomattin" options#
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
RE'#RT de4oOlistOfo4atO:oloO1"
.ATA i T,'E i @A$%E P"
.ATA :ol(1C) T,'E :"
WGI$E i < J"
CASE i"
WGEN P" :ol N QC#$OBAC&)R#%N. Q"
WGEN 1" :ol N QC#$OGEA.IN) Q"
WGEN 2" :ol N QC#$ON#R*A$ Q"
WGEN 3" :ol N QC#$OT#TA$ Q"
WGEN B" :ol N QC#$O&E, Q"
WGEN C" :ol N QC#$O'#SITI@E Q"
WGEN R" :ol N QC#$ONE)ATI@E Q"
WGEN 8" :ol N QC#$O)R#%' Q"
EN.CASE"
/#R*AT INTENSI/IE. C#$#R N i"
WRITE+ /(B) i< AT 8 s7(vline<
:ol< s7(vline<
:ol INTENSI/IE. #//< s7(vline<
:ol IN@ERSE"
i N i S 1"
EN.WGI$E"
In the FORMAT statement, the COLOR option fo the su&seAuent =RITE
statements is set at untime! The othe options ae set indi(iduall$ fo each
=RITE statement in the po"am!
The output appeas as sho)n in the follo)in" ta&le#
The standad pa"e heade )as ceated as a te>t element! In the online help, due to technical
easons, the colos of this list diffe sli"htl$ fom the colos of the RB6 s$stem!
Example of Using Colors in Lists
This e>ample sho)s ho) to use colos in lists to hi"hli"ht output!
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
The follo)in" e>ecuta&le po"am ?epot@ is connected to the lo"ical data&ase
F2S!
RE'#RT de4oOlistOfo4atO:oloO2 N# STAN.AR. 'A)E GEA.IN)
$INE(SITE 8P"
TAB$ES+ s-fli< sflig=t"
.ATA su4 T,'E i"
T#'(#/('A)E"
WRITE Q$ist of /lig=tsQ C#$#R C#$OGEA.IN)"
%$INE"
)ET s-fli"
/#R*AT C#$#R C#$OGEA.IN)"
WRITE+ QCARRI.Q< 1P QC#NNI.Q< 2P Q/R#*Q< BP QT#Q"
/#R*AT C#$#R C#$O&E,"
WRITE+ / s-fli(:aid %N.ER QCARRI.Q<
s-fli(:onnid %N.ER QC#NNI.Q<
s-fli(:it7fo4 %N.ER Q/R#*Q<
s-fli(:it7to %N.ER QT#Q"
%$INE"
/#R*AT C#$#R C#$OGEA.IN)"
WRITE+ Q.ateQ< 2P QSeats #::u-iedQ< CP QSeats
Availa6leQ"
%$INE"
su4 N P"
)ET sflig=t"
I/ sflig=t(seatso:: $E 1P"
/#R*AT C#$#R C#$ONE)ATI@E"
E$SE"
/#R*AT C#$#R C#$ON#R*A$"
EN.I/"
WRITE+ sflig=t(fldate %N.ER Q.ateQ<
sflig=t(seatso:: %N.ER QSeats #::u-iedQ<
sflig=t(seats4aA %N.ER QSeats Availa6leQ"
su4 N su4 S sflig=t(seatso::"
)ET s-fli $ATE"
%$INE"
WRITE+ QTotal BooUings+ Q INTENSI/IE. #//<
su4 C#$#R C#$OT#TA$"
%$INE"
S&I'"
The epot ceates the follo)in" output list#
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
All heades appea usin" the &ac*"ound colo COL.3EADIN1! The *e$ fields
fom ta&le S:FLI use COL.0E8 as &ac*"ound colo! The list &od$ at the e(ent
1ET SFLI13T has a diffeent line &ac*"ound colo ?COL.NORMAL@ than the
list &ac*"ound ?COL./AC01RO'ND@! In addition, fli"hts )hee the num&e of
&oo*in"s falls &elo) a cetain minimum num&e, ha(e a ed &ac*"ound! The
total num&e of &oo*in"s fo each fli"ht has a $ello) &ac*"ound!
Note that the s$stem esets the fomattin" options fo each ne) e(ent to the
default settin"s ?COLOR OFF, INTENSIFIED ON@! Fo this eason, in the a&o(e
po"am the line &ac*"ound of the output CTotal /oo*in"s#C is
COL./AC01RO'ND a"ain in the 1ET LATE e(ent! INTENSIFIED is set to
OFF to "et the same foe"ound colo as fo the othe output!
In the online help, the colos of this list diffe sli"htl$ fom the colos of the RB6
s$stem ?fo technical easons@!

WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP



WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
DE ACUERDO A UN 3ALOR POR PARAMETROH GENERAR UNA B.D. CON 3ALORES DE CADENA
CONCDENADOS:
CODIGOA8
CODIGOA9.
ETC.
5ORASH EORMATO MASCARA.
5ORAS MENOS UN DIAH ULTIMO DIA DE MES. ETC.
WORLD BUSSINES PARTNER S.A.C CURSO: SAP PROGRAMACION ABAP
ENTRALINEA!/O&I;O_RUTA 8 RNT2.
ENTRALINEA!TARI0A 8 3(.
ENTRALINEA!PARTI&A 8 AREPUIPA.
ENTRALINEA!6ORA_PARTI&A 8 0"((49.
ENTRALINEA!0E/6A_PARTI&A 8 200(0"1(.
ENTRALINEA!LLE;A&A 8 TUMBES.
ENTRALINEA!6ORA_LLE;A&A 8 12301(.
ENTRALINEA!0E/6A_LLE;A&A 8 200((0"19.
APPEN& ENTRALINEA.
ENTRALINEA!/O&I;O_RUTA 8 ATNR.
ENTRALINEA!TARI0A 8 32.
ENTRALINEA!PARTI&A 8 I/A.
ENTRALINEA!6ORA_PARTI&A 8 140201.
ENTRALINEA!0E/6A_PARTI&A 8 200(0214.
ENTRALINEA!LLE;A&A 8 /UZ/O.
ENTRALINEA!6ORA_LLE;A&A 8 0$("30.
ENTRALINEA!0E/6A_LLE;A&A 8 200(021".
APPEN& ENTRALINEA.
ENTRALINEA!/O&I;O_RUTA 8 RNTA.
ENTRALINEA!TARI0A 8 40.
ENTRALINEA!PARTI&A 8 LIMA.
ENTRALINEA!6ORA_PARTI&A 8 0"1(23.
ENTRALINEA!0E/6A_PARTI&A 8 200(0301.
ENTRALINEA!LLE;A&A 8 6UAN/A2O.
ENTRALINEA!6ORA_LLE;A&A 8 1(0122.
ENTRALINEA!0E/6A_LLE;A&A 8 200(0301.
APPEN& ENTRALINEA.
TCRI'T#

Vous aimerez peut-être aussi