Ejemplos Extensos de ABAP
Transcript of Ejemplos Extensos de ABAP
-
7/25/2019 Ejemplos Extensos de ABAP
1/98
Crear Dynpros para crear, modificar y visualizar datos en
una base de datos.
martes, diciembre 10, 2013No comments
Datos previos:
Base de datos ZBIBLIO_OCIO !"er a#u$%
Ob&etivo:
'na Dynpro ())) con tres botones !Crear, *odificar y "isualizar%.
'na Dynpro ())+ para aadir datos a la base de datos.
'na Dynpro ())- como ventana de dilo/o modal, para introducir el
c0di/o de socio.
'na Dynpro ())1, como ventana de dilo/o modal, para *odificar o
"isualizar un socio de la base de datos.
2s#uema de las cuatro dynpros:
Esquema de los dynpros.
2l primer paso es crear un *odule 3ool en la 214:
http://aprenderabap.blogspot.mx/2013/12/crear-dynpros-para-crear-modificar-y.htmlhttp://aprenderabap.blogspot.mx/2013/12/crear-dynpros-para-crear-modificar-y.htmlhttp://aprenderabap.blogspot.mx/2013/12/crear-dynpros-para-crear-modificar-y.htmlhttp://aprenderabap.blogspot.mx/2013/12/crear-dynpros-para-crear-modificar-y.html#comment-formhttp://aprenderabap.blogspot.com.es/2013/12/crear-tablas-de-bases-de-datos.htmlhttp://aprenderabap.blogspot.mx/2013/12/crear-dynpros-para-crear-modificar-y.htmlhttp://aprenderabap.blogspot.mx/2013/12/crear-dynpros-para-crear-modificar-y.html#comment-formhttp://aprenderabap.blogspot.com.es/2013/12/crear-tablas-de-bases-de-datos.htmlhttp://aprenderabap.blogspot.mx/2013/12/crear-dynpros-para-crear-modificar-y.htmlhttp://aprenderabap.blogspot.mx/2013/12/crear-dynpros-para-crear-modificar-y.html -
7/25/2019 Ejemplos Extensos de ABAP
2/98
Crear un Module Pool en la SE38
5adir una Dynpro !creen% al *odule 3ool creado pulsando el bot0n derec6o:
!adir una "ynpro al Module Pool creado.
#ndicar el n$mero de pantalla %se recomienda a partir de &000'.
Crear el elemento tipo () de la pantalla &000.
-
7/25/2019 Ejemplos Extensos de ABAP
3/98
"escomentar los m*dulos P+( y P#, y crear ambos obetos pinc-ando dos eces en el nombre.
2n nuestro pro/rama principal se nos 6abrn creado los ob&etos 3BO y 35I en el
c0di/o del pro/rama.
(betos P+( y P# en el pro/rama.
Como se puede apreciar, en el 3BO se aade un tatus y un 7$tulo, y en el 35I lasalida del pro/rama cuando el usuario pulsa el bot0n Cancel.
3ara crear el 757' y el t$tulo se pinc6a dos veces en el nombre:
"escripci*n del Status
-
7/25/2019 Ejemplos Extensos de ABAP
4/98
ctiaci*n del bot*n Cancel c*mo mnimo para salir del pro/rama.
"escripci*n del ttulo del pro/rama.
3inc6amos dos veces al Dynpro ())) y vamos al Layout para editar la pantalla. e
introducirn los botones de crear, modificar y visualizar:
#r al ayout para editar la pantalla.
Escribir el c*di/o de unci*n del bot*n.
-
7/25/2019 Ejemplos Extensos de ABAP
5/98
+otones creados en el "ynpro &000.
3ara poder e&ecutar la pantalla creada, es necesario crear una transacci0n. 8ay
dos formas:
+. 2n la 2(1
-. Directamente en el pro/rama
Crear la transacci*n en la SE&3.
-
7/25/2019 Ejemplos Extensos de ABAP
6/98
Crear la transacci*n directamente en el pro/rama.
e indicar la descripci0n, el nombre del *odule 3ool y la pantalla.
"escripci*n de la transacci*n.
-
7/25/2019 Ejemplos Extensos de ABAP
7/98
Module Pool y "ynpro para que la transacci*n lo eecute.
Creamos la Dynpro !creen% ())+ tal y como creamos la ())). Las 9nicas
diferencias son:
+. 5adimos el bot0n B5C para volver al screen ())) en el
757'_())+.
-. 2l campo de entrada;salida se nombra con el nombre de la tabla
ZBIBLIO_OCIO para referenciar sus caracter$sticas.
!adimos el bot*n +ac.
-
7/25/2019 Ejemplos Extensos de ABAP
8/98
Nombras el campo de entrada4salida con el mismo nombre para reerenciar.
"ynpro &001 resultante.
e necesita comprobar #ue el nuevo c0di/o de socio no e
-
7/25/2019 Ejemplos Extensos de ABAP
9/98
!adimos el c*di/o para cuando el usuario pulsa 6 para salir.
2n este caso, dependiendo del bot0n pulsado en la Dynpro ())), el bot0n tendr
como teinalmente creamos la Dynpro ())1 como ventana de dilo/o modal.
"ynpro &003 como entana de di5lo/o modal.
2sta misma Dynpro se va a utilizar para la acci0n de modificar o visualizar. Las
diferencias con respecto a la ())+ son:
+. 2l campo del c0di/o de socio es solo output !2l usuario ya 6a sido
introducido en la Dynpro ())-%.
-
7/25/2019 Ejemplos Extensos de ABAP
10/98
-. 7odos los campos de entrada;salida, salvo el primero, tendrn un
identificador de ?rupo+ llamado ID+.
i se da al bot0n de visualizar, nin/9n campo es editable, por lo
tanto identificamos con ID+ los campos a modificar esa opci0n.
1. 2l bot0n ser un campo de salida, tal y como en el Dynpro ())-.
El campo input del c*di/o de socio es solo output.
#dentiicador de /rupo #"1 en todos los campos de entrada4salida salo en c*di/o de socio.
+ot*n como campo de salida.
-
7/25/2019 Ejemplos Extensos de ABAP
11/98
Los c0di/os son los si/uientes:
Dynpro ()))
PROCESS BEFORE OUTPUT.
MODULESTATUS_9000.*PROCESS AFTER INPUT.MODULEUSER_COMMAND_9000.
Dynpro ())+
PROCESS BEFORE OUTPUT. MODULEstatus_9001.*PROCESS AFTER INPUT. CHAIN.
FIELDzbibi!_s!"i!s#"!$_s!"i!. MODULE%&ist%_s!"i!. ENDCHAIN. MODULEus%'_"!((a)$_9001.
Dynpro ())-
PROCESS BEFORE OUTPUT. MODULEstatus_900. MODULEi)i"ia_900.*PROCESS AFTER INPUT.
CHAIN. FIELDzbibi!_s!"i!s#"!$_s!"i!. MODULE%&ist%_s!"i!. ENDCHAIN.
MODULEus%'_"!((a)$_900.
Dynpro ())1
PROCESS BEFORE OUTPUT. MODULEstatus_900+. MODULEi)i"ia_900+.
*PROCESS AFTER INPUT. MODULEus%'_"!((a)$_900+.
*odule 3ool
*,#####################################################################**, M!$u% P!! -BIBLIO_CREAR_MODIF_ISUAL
-
7/25/2019 Ejemplos Extensos de ABAP
12/98
*,*,#####################################################################**,*,*,#####################################################################*
PRO/RAM zbibi!_"'%a'_(!$i_isua.
TABLES2 zbibi!_s!"i!s.
DATA2 3_st_s!"i!sT4PEzbibi!_s!"i!s.
DATA2 !5_"!$%_9000T4PEs6#u"!((7 !5_"!$%_9001T4PEs6#u"!((7 !5_"!$%_900T4PEs6#u"!((7 !5_"!$%_900+T4PEs6#u"!((.
DATA2 b_900_b!t!)80T4PE"7 :T%&t! $% !s b!t!)%s !ut;ut b_900+_b!t!)80T4PE".
DATA2 3_u%$a %) $6);'! 900 3_
-
7/25/2019 Ejemplos Extensos de ABAP
13/98
*,#####################################################################**, M!$u% STATUS_9001 OUTPUT*,#####################################################################** t%&t*######################################################################*MODULEstatus_9001 OUTPUT.
SET PF#STATUS?STATUS_9001?. SET TITLEBAR?TITLE_9001?.
ENDMODULE. : STATUS_9001 OUTPUT*,#####################################################################**, M!$u% USER_COMMAND_9001 INPUT*,#####################################################################** t%&t*######################################################################*MODULEus%'_"!((a)$_9001 INPUT.
CASE!5_"!$%_9001.
@HEN?BAC?. CALL SCREEN9000. @HEN?CANCEL?. LEAE PRO/RAM. @HEN?CREAR?. INSERTzbibi!_s!"i!s. MESSA/E?Usua'i! "'%a$!?t6;%?I?. ENDCASE.
ENDMODULE. : USER_COMMAND_9001 INPUT*,#####################################################################**, M!$u% STATUS_900 OUTPUT
*,#####################################################################** t%&t*######################################################################*MODULEstatus_900 OUTPUT.
SET PF#STATUS?STATUS_900?. SET TITLEBAR?TITLE_900?.
ENDMODULE. : STATUS_900 OUTPUT*,#####################################################################**, M!$u% MODIFICAR_ISUALI-AR OUTPUT*,#####################################################################** t%&t
*######################################################################*MODULEi)i"ia_900 OUTPUT.
PERFORM_i)i"ia.
ENDMODULE. : MODIFICAR_ISUALI-AR OUTPUT*,#####################################################################**, M!$u% ALIDA_SOCIO INPUT*,#####################################################################*
-
7/25/2019 Ejemplos Extensos de ABAP
14/98
* t%&t*######################################################################*MODULE%&ist%_s!"i! INPUT.
PERFORM_%&ist%_s!"i!.
IF!5_"!$%_9000 ?CREAR?AND 3_
-
7/25/2019 Ejemplos Extensos de ABAP
15/98
ENDMODULE. : USER_COMMAND_900+ INPUT*,#####################################################################**, M!$u% STATUS_900+ OUTPUT*,#####################################################################** t%&t
*######################################################################*MODULEstatus_900+ OUTPUT.
SET PF#STATUS?STATUS_900+?.
IF!5_"!$%_9000 ?MODIFICAR?. SET TITLEBAR?TITLE_900+_1?. ELSEIF!5_"!$%_9000 ?ISUALI-AR?. SET TITLEBAR?TITLE_900+_?. ENDIF.
ENDMODULE. : STATUS_900 OUTPUT*,#####################################################################*
*, M!$u% INICIAL_900+ OUTPUT*,#####################################################################** t%&t*######################################################################*MODULEi)i"ia_900+ OUTPUT.
PERFORM_i)i"ia. IF3_
-
7/25/2019 Ejemplos Extensos de ABAP
16/98
IFs"'%%)#3'!u;1 ?ID1?. s"'%%)#i);ut 0. MODIF4 SCREEN. ENDIF. ENDLOOP. ENDIF.
ENDFORM. : F_INICIAL*,#####################################################################**, F!'( F_EISTE_SOCIO*,#####################################################################** t%&t*######################################################################*FORM_%&ist%_s!"i! .
DATA2 _st_s!"i!sT4PEzbibi!_s!"i!s.
IFzbibi!_s!"i!s#"!$_s!"i! IS NOT INITIAL.
SELECTSIN/LE* FROMzbibi!_s!"i!s INTO_st_s!"i!s @HERE"!$_s!"i! zbibi!_s!"i!s#"!$_s!"i!. IFs6#sub'" 0. 3_
-
7/25/2019 Ejemplos Extensos de ABAP
17/98
FORM_%'_s!"i! .
DATA_st_s!"i!T4PEzbibi!_s!"i!s.
SELECTSIN/LE* FROMzbibi!_s!"i!s INTO_st_s!"i!
@HERE"!$_s!"i! zbibi!_s!"i!s#"!$_s!"i!.
zbibi!_s!"i!s _st_s!"i!.
ENDFORM. : F_ER_SOCIO
-
7/25/2019 Ejemplos Extensos de ABAP
18/98
5adir un bot0n en un 5L" @eport
&ueves, noviembre -+, -)+1 =o comments
2n la transacci0n 24), visualizamos el pro/rama 53LBL.
isuaiza(!s % ;'!3'a(a SAPLBL.
=ave/amos en el rbol 6asta la pestaa ?'I tatusA75=D5@D. 3inc6amos con el bot0n derec6o
y lo copiamos a nuestro pro/rama.
http://aprenderabap.blogspot.mx/2013/11/anadir-un-boton-en-un-alv-report.htmlhttp://aprenderabap.blogspot.mx/2013/11/anadir-un-boton-en-un-alv-report.htmlhttp://aprenderabap.blogspot.mx/2013/11/anadir-un-boton-en-un-alv-report.html#comment-formhttp://aprenderabap.blogspot.mx/2013/11/anadir-un-boton-en-un-alv-report.htmlhttp://aprenderabap.blogspot.mx/2013/11/anadir-un-boton-en-un-alv-report.htmlhttp://aprenderabap.blogspot.mx/2013/11/anadir-un-boton-en-un-alv-report.html#comment-form -
7/25/2019 Ejemplos Extensos de ABAP
19/98
C!;ia(!s STANDARD %) a ;%staa Status /UI.
Aa$i(!s % )!(b'% $% )u%st'! ;'!3'a(a.
"olvemos a nuestro pro/rama principal, y comprobamos #ue tenemos el 75=D5@D en la pestaa
?'I tatus.
-
7/25/2019 Ejemplos Extensos de ABAP
20/98
C!(;'!ba(!s >u% t%)%(!s /UI StatusSta)$a'$ %) )u%st'! ;'!3'a(a.
3inc6amos dos veces en 75=D5@D y veremos los botones disponibles. 2n esta nueva ventana
aadimos un nuevo bot0n, asi/nndole un nombre, un icono y un ata&o del teclado !=o asi/nar el
ata&o >, ya #ue el bot0n no funcionar$a%.
Aa$i(!s u) b!t) "!) % )!(b'% ,BT1.
-
7/25/2019 Ejemplos Extensos de ABAP
21/98
Asi3)a(!s u) i"!)!.
Asi3)a(!s u) ataJ! $% t%"a$!.
a tenemos el ?'I tatus listo para incorporar. e va a mostrar un c0di/o en el #ue se muestranlos cuatro primeros campos de la tabla >LI?87 con un nuevo bot0n en el men9. Cuando se pulsa
el bot0n, saldr un mensa&e de notificaci0n.
2l c0di/o es el si/uiente:
REPORT z_t%st.
* Ca'3a' a taba SFLI/HT $% a bas% $% $at!sTABLES2 sKi3t.
* Ca'3a(!s !s $at!s ti;! sisT4PES2 sis.
* D%)i"i) $% a'iab%sDATA2 3_it_sKi3tT4PETABLE OFsKi3t7 3_st_sKi3tT4PEsKi3t.
DATA2 3_it_%$"atT4PEsis_t_%$"at_a7
-
7/25/2019 Ejemplos Extensos de ABAP
22/98
3_st_%$"atT4PEsis_%$"at_a.
DATA2 3_'%;i$T4PEs6#'%;i$.
* SL ;a'a "!;ia' a taba sKi3t a a taba i)t%')aSELECT* FROMsKi3t INTOTABLE3_it_sKi3t.
* a'iab% "!) % )!(b'% $% ;'!3'a(a3_'%;i$ s6#'%;i$.
* Dat!s $% %$"at ;a'a % AL3_st_%$"at#%$)a(% ?CARRID?.3_st_%$"at#s%t%&t_s ?C!(;.?.APPEND3_st_%$"atTO3_it_%$"at.
3_st_%$"at#%$)a(% ?CONNID?.3_st_%$"at#s%t%&t_s ?u%!?.APPEND3_st_%$"atTO3_it_%$"at.
3_st_%$"at#%$)a(% ?FLDATE?.3_st_%$"at#s%t%&t_s ?F%"a?.APPEND3_st_%$"atTO3_it_%$"at.
3_st_%$"at#%$)a(% ?PRICE?.3_st_%$"at#s%t%&t_s ?Ta'ia?.APPEND3_st_%$"atTO3_it_%$"at.
CALL FUNCTION?REUSE_AL_/RID_DISPLA4? EPORTIN/ i_"aba"5_;'!3'a( 3_'%;i$ i_"aba"5_;_status_s%t ?MI_STANDARD?
i_"aba"5_us%'_"!((a)$ ?MI_USER_COMMAND? it_%$"at 3_it_%$"atTABLES t_!uttab 3_it_sKi3t ECEPTIONS ;'!3'a(_%''!' 1 OTHERS .
*,#####################################################################**, F!'( (i_us%'_"!((a)$*,#####################################################################***######################################################################*
FORM(i_us%'_"!((a)$ USIN/'_u"!(( LIEs6#u"!(( 's_s%%$T4PEsis_s%%$. CASE'_u"!((.
@HEN?,BT1?. :S% a %"! "i"5 %) % b!t) MESSA/E?Has ;usa$! % b!t) "'%a$!?T4PE?I?. ENDCASE.ENDFORM. :(i_us%'_"!((a)$
*,#####################################################################*
-
7/25/2019 Ejemplos Extensos de ABAP
23/98
*, F!'( (i_sta)$a'$*,#####################################################################***######################################################################*FORM(i_sta)$a'$ USIN/'t_%&tabT4PEsis_t_%&tab. SET PF#STATUS?STANDARD?. :N!(b'% $% Status /UI
ENDFORM. :(i_sta)$a'$
Nu%st'! b!t) 6 % (%)saJ% (!)st'a$!.
-
7/25/2019 Ejemplos Extensos de ABAP
24/98
2&emplo de Batc6 Input
martes, diciembre +, -)+1 =o comments
Ob&etivos:
+. Crear un 7abstrip, y en una pestaa mostrar los socios en una tabla de control
-. eleccionar los socios a modificar con un c6ecEbou% s% a"% u) i);ut7 s% a"tuaiza a taba $% "!)t'! LOOP AT 3_it_s!"i!s_au&.
MODULEu;$at%_"t_9001.
ENDLOOP.
@eport
*,#####################################################################*
*, R%;!'t -BIBLIO_MODIF_ARIOS*,*,#####################################################################**,*,*,#####################################################################*
REPORT zbibi!_(!$i_a'i!s.
CONTROLS2 "t_9001_s!"i!sT4PETABLEIE@ USIN/SCREEN 9001.
-
7/25/2019 Ejemplos Extensos de ABAP
30/98
TABLES2 zbibi!_s!"i!s.
* Aa$i(!s u) "a(;! st'i)3 8C%"5b!& a a taba i)t%')a $% s!"i!s.DATA2 BE/IN OF3_it_s!"i!s_au& OCCURS 07 Ka381T4PE".
INCLUDESTRUCTURE zbibi!_s!"i!s.DATA2 END OF3_it_s!"i!s_au&.
* Taba ;a'a % Bat" I);utDATA2 BE/IN OF3_it_b$"$ata OCCURS 0. INCLUDESTRUCTURE b$"$ata.DATA2 END OF3_it_b$"$ata.
DATA2 "b_9001_Ka3T4PE".DATA2 3_
-
7/25/2019 Ejemplos Extensos de ABAP
31/98
3_ts_9000#subs"'%%) ?9001?. @HEN"_ts_9000#tab. 3_ts_9000#subs"'%%) ?900?. @HEN"_ts_9000#tab+. 3_ts_9000#subs"'%%) ?900+?. @HENOTHERS.
*,SP@I-ARD2 DO NOTHIN/ ENDCASE.ENDMODULE. :TS_9000_ACTIE_TAB_SET OUTPUT
*,SP@I-ARD2 INPUT MODULE FOR TS ?TS_9000?. DO NOT CHAN/E THIS LINE*,SP@I-ARD2 /ETS ACTIE TABMODULEts_9000_a"ti%_tab_3%t INPUT. !5_"!$%_9000 s6#u"!((. CASE!5_"!$%_9000. @HEN"_ts_9000#tab1. 3_ts_9000#;'%ss%$_tab "_ts_9000#tab1. @HEN"_ts_9000#tab. 3_ts_9000#;'%ss%$_tab "_ts_9000#tab.
@HEN"_ts_9000#tab+. 3_ts_9000#;'%ss%$_tab "_ts_9000#tab+. @HENOTHERS.*,SP@I-ARD2 DO NOTHIN/ ENDCASE.ENDMODULE. :TS_9000_ACTIE_TAB_/ET INPUT*,#####################################################################**, M!$u% USER_COMMAND_9000 INPUT*,#####################################################################** t%&t*######################################################################*MODULEus%'_"!((a)$_9000 INPUT.
CASE!5_"!$%_9000. @HEN?CANCEL?. LEAE PRO/RAM. @HEN?MODIFICAR?. PERFORM_(!$i"a'_s!"i!s. ENDCASE.ENDMODULE. : USER_COMMAND_9000 INPUT*,#####################################################################**, M!$u% LOAD_SOCIOS OUTPUT*,#####################################################################** t%&t*######################################################################*MODULE!a$_s!"i!s OUTPUT.
IF3_
-
7/25/2019 Ejemplos Extensos de ABAP
32/98
* t%&t*######################################################################*MODULE!a$_"t_9001 OUTPUT.
"b_9001_Ka3 3_it_s!"i!s_auKa3. MOE#CORRESPONDIN/3_it_s!"i!s_au&TOzbibi!_s!"i!s.
ENDMODULE. : LOAD_CT_9001 OUTPUT*,#####################################################################**, M!$u% UPDATE_CT_9001 INPUT*,#####################################################################** t%&t*######################################################################*MODULEu;$at%_"t_9001 INPUT.
3_it_s!"i!s_auKa3 "b_9001_Ka3. MOE#CORRESPONDIN/zbibi!_s!"i!sTO3_it_s!"i!s_au&.
MODIF43_it_s!"i!s_au& INDE"t_9001_s!"i!s#"u''%)t_i)%.
ENDMODULE. : UPDATE_CT_9001 INPUT*,#####################################################################**, F!'( F_MODIFICAR_SOCIOS*,#####################################################################** t%&t*######################################################################** ## ;1 t%&t* ## ; t%&t*######################################################################*FORM_(!$i"a'_s!"i!s .
LOOP AT 3_it_s!"i!s_au&. IF3_it_s!"i!s_auKa3 ??.
* /%)%'a(!s a taba BDCDATA PERFORM_3%)_b$"$ata USIN/3_it_s!"i!s_au&.
* EJ%"uta(!s % ;'!3'a(a "!) a taba BDCDATA. CALL TRANSACTION?-BIBLIO_01?USIN/3_it_b$"$ata. ENDIF. ENDLOOP.
ENDFORM. : F_MODIFICAR_SOCIOS*,#####################################################################*
*, F!'( F_/EN_BDCDATA*,#####################################################################** t%&t*######################################################################** ##P_IT_SOCIOS_AU t%&t*######################################################################*FORM_3%)_b$"$ata USIN/ ;_it_s!"i!s_au& LIE LINE OF3_it_s!"i!s_au&.
FREE 3_it_b$"$ata.
-
7/25/2019 Ejemplos Extensos de ABAP
33/98
* D6);'! 9000 3_it_b$"$ata#;'!3'a( ?-BIBLIO_CREAR_MODIF_ISUAL?. 3_it_b$"$ata#$6);'! 9000. 3_it_b$"$ata#$6)b%3i) ??. APPEND3_it_b$"$ata.
"%a'3_it_b$"$ata. 3_it_b$"$ata#)a( ?BDC_OCODE?. 3_it_b$"$ata#a ?MODIFICAR?. APPEND3_it_b$"$ata.
* D6);'! 900 "%a'3_it_b$"$ata. 3_it_b$"$ata#;'!3'a( ?-BIBLIO_CREAR_MODIF_ISUAL?. 3_it_b$"$ata#$6);'! 900. 3_it_b$"$ata#$6)b%3i) ??. APPEND3_it_b$"$ata.
"%a'3_it_b$"$ata. 3_it_b$"$ata#)a( ?BDC_CURSOR?. 3_it_b$"$ata#a ?-BIBLIO_SOCIOS#COD_SOCIO?. APPEND3_it_b$"$ata.
"%a'3_it_b$"$ata. 3_it_b$"$ata#)a( ?BDC_OCODE?. 3_it_b$"$ata#a ?ACCION?. APPEND3_it_b$"$ata.
"%a'3_it_b$"$ata. 3_it_b$"$ata#)a( ?-BIBLIO_SOCIOS#COD_SOCIO? .
3_it_b$"$ata#a ;_it_s!"i!s_au"!$_s!"i!. APPEND3_it_b$"$ata.
* D6);'! 900+ "%a'3_it_b$"$ata. 3_it_b$"$ata#;'!3'a( ?-BIBLIO_CREAR_MODIF_ISUAL?. 3_it_b$"$ata#$6);'! 900+. 3_it_b$"$ata#$6)b%3i) ??. APPEND3_it_b$"$ata.
"%a'3_it_b$"$ata. 3_it_b$"$ata#)a( ?BDC_CURSOR?. 3_it_b$"$ata#a ?-BIBLIO_SOCIOS#COD_SOCIO?.
APPEND3_it_b$"$ata.
"%a'3_it_b$"$ata. 3_it_b$"$ata#)a( ?BDC_OCODE?. 3_it_b$"$ata#a ?ACCION?. APPEND3_it_b$"$ata.
"%a'3_it_b$"$ata. 3_it_b$"$ata#)a( ?-BIBLIO_SOCIOS#DNI?.
-
7/25/2019 Ejemplos Extensos de ABAP
34/98
3_it_b$"$ata#a ;_it_s!"i!s_au$)i. APPEND3_it_b$"$ata.
"%a'3_it_b$"$ata. 3_it_b$"$ata#)a( ?-BIBLIO_SOCIOS#NOMBRE? . 3_it_b$"$ata#a ;_it_s!"i!s_au)!(b'%.
APPEND3_it_b$"$ata.
"%a'3_it_b$"$ata. 3_it_b$"$ata#)a( ?-BIBLIO_SOCIOS#APELLIDO?. 3_it_b$"$ata#a ;_it_s!"i!s_aua;%i$!. APPEND3_it_b$"$ata.
"%a'3_it_b$"$ata. 3_it_b$"$ata#)a( ?-BIBLIO_SOCIOS#TELEFONO?. 3_it_b$"$ata#a ;_it_s!"i!s_aut%%!)!. APPEND3_it_b$"$ata.
"%a'3_it_b$"$ata.
3_it_b$"$ata#)a( ?-BIBLIO_SOCIOS#DIR1?. 3_it_b$"$ata#a ;_it_s!"i!s_au$i'1. APPEND3_it_b$"$ata.
"%a'3_it_b$"$ata. 3_it_b$"$ata#;'!3'a( ?-BIBLIO_CREAR_MODIF_ISUAL?. 3_it_b$"$ata#$6);'! 900+. 3_it_b$"$ata#$6)b%3i) ??. APPEND3_it_b$"$ata.
3_it_b$"$ata#)a( ?BDC_OCODE?. 3_it_b$"$ata#a ?CANCEL?.
APPEND3_it_b$"$ata.
ENDFORM. : F_/EN_BDCDATA
2nviar por correo electr0nico2scribe un blo/Compartir con 7HitterCompartir con >acebooE
https://www.blogger.com/share-post.g?blogID=8290245453394731585&postID=6846312635609622936&target=emailhttps://www.blogger.com/share-post.g?blogID=8290245453394731585&postID=6846312635609622936&target=bloghttps://www.blogger.com/share-post.g?blogID=8290245453394731585&postID=6846312635609622936&target=twitterhttps://www.blogger.com/share-post.g?blogID=8290245453394731585&postID=6846312635609622936&target=twitterhttps://www.blogger.com/share-post.g?blogID=8290245453394731585&postID=6846312635609622936&target=twitterhttps://www.blogger.com/share-post.g?blogID=8290245453394731585&postID=6846312635609622936&target=facebookhttps://www.blogger.com/share-post.g?blogID=8290245453394731585&postID=6846312635609622936&target=facebookhttps://www.blogger.com/share-post.g?blogID=8290245453394731585&postID=6846312635609622936&target=emailhttps://www.blogger.com/share-post.g?blogID=8290245453394731585&postID=6846312635609622936&target=bloghttps://www.blogger.com/share-post.g?blogID=8290245453394731585&postID=6846312635609622936&target=twitterhttps://www.blogger.com/share-post.g?blogID=8290245453394731585&postID=6846312635609622936&target=facebook -
7/25/2019 Ejemplos Extensos de ABAP
35/98
5L" @eport de una tabla interna
miFrcoles, noviembre -), -)+1 - comments
3ara poder mostrar un 5L" @eport de una tabla interna se necesitar como m$nimo una tabla
interna llamada it_fieldcat. 2n dic6a tabla interna. se indicarn los nombres de los campos de
nuestra tabla interna y una descripci0n del campo para mostrar en el t$tulo de la columna.
2n este e&emplo se van a mostrar los cuatro primeros campos de la tabla >LI?87:
REPORT z_sKi3t.
* Ca'3a' a taba SFLI/HT $% a bas% $% $at!sTABLES2 sKi3t.
* Ca'3a(!s !s $at!s ti;! sisT4PES2 sis.
* D%)i"i) $% a'iab%sDATA2 3_it_sKi3tT4PETABLE OFsKi3t7 3_st_sKi3tT4PEsKi3t.
DATA2 3_it_%$"atT4PEsis_t_%$"at_a7 3_st_%$"atT4PEsis_%$"at_a.
* SL ;a'a "!;ia' a taba sKi3t a a taba i)t%')aSELECT* FROMsKi3t INTOTABLE3_it_sKi3t.
* Dat!s $% %$"at ;a'a % AL3_st_%$"at#%$)a(% ?CARRID?. :N!(b'% $% "a(;! $% a taba3_st_%$"at#s%t%&t_( ?C!(;aQa?. :D%s"'i;"i) (%$ia3_st_%$"at#s%t%&t_s ?C!(;.?. :D%s"'i;"i) "!'taAPPEND3_st_%$"atTO3_it_%$"at.
3_st_%$"at#%$)a(% ?CONNID?.3_st_%$"at#s%t%&t_( ?N u%!?.3_st_%$"at#s%t%&t_s ?u%!?.APPEND3_st_%$"atTO3_it_%$"at.
3_st_%$"at#%$)a(% ?FLDATE?.
3_st_%$"at#s%t%&t_( ?F%"a $% u%!?.3_st_%$"at#s%t%&t_s ?F%"a?.APPEND3_st_%$"atTO3_it_%$"at.
3_st_%$"at#%$)a(% ?PRICE?.3_st_%$"at#s%t%&t_( ?Ta'ia $% u%!?.3_st_%$"at#s%t%&t_s ?Ta'ia?.APPEND3_st_%$"atTO3_it_%$"at.
http://aprenderabap.blogspot.mx/2013/11/alv-report-de-una-tabla-interna.htmlhttp://aprenderabap.blogspot.mx/2013/11/alv-report-de-una-tabla-interna.htmlhttp://aprenderabap.blogspot.mx/2013/11/alv-report-de-una-tabla-interna.html#comment-formhttp://aprenderabap.blogspot.mx/2013/11/alv-report-de-una-tabla-interna.htmlhttp://aprenderabap.blogspot.mx/2013/11/alv-report-de-una-tabla-interna.htmlhttp://aprenderabap.blogspot.mx/2013/11/alv-report-de-una-tabla-interna.html#comment-form -
7/25/2019 Ejemplos Extensos de ABAP
36/98
* Fu)"i) ALCALL FUNCTION?REUSE_AL_/RID_DISPLA4? EPORTIN/ it_%$"at 3_it_%$"atTABLES t_!uttab 3_it_sKi3t
ECEPTIONS ;'!3'a(_%''!' 1 OTHERS .
AL R%;!'t $% !s "uat'! ;'i(%'!s "a(;!s $% a taba SFLI/HT.
2n este e&emplo, se 6a introducido una descripci0n mediana y corta. i se cambia el tamao de la
columna del 5L", tambiFn lo 6ar el nombre de la columna.
-
7/25/2019 Ejemplos Extensos de ABAP
37/98
C0mo crear un martform con una tabla y un c0di/o de
barras
martes, enero -4, -)+ + comment
Ob&etivo:
Imprimir un martform en un @eport.
La variable C5@@ID ser un parmetro de entrada del martform.
e mostrar el c0di/o de barras correspondiente al C5@@ID y toda la informaci0n
relacionada con la tabla >LI?87
Diseo del martform:
"ise!o del Smartorm: e;to, c*di/o de barras y tabla
+. Crear un c0di/o de barras en la transacci0n 21 !ZB5@COD2%.
eleccionar ystem Bar Codes y C6an/e.
Crear el nuevo c0di/o de barras con Code+-4 y rotaci0n normal.
http://aprenderabap.blogspot.mx/2014/01/como-crear-un-smartform-con-una-tabla-y.htmlhttp://aprenderabap.blogspot.mx/2014/01/como-crear-un-smartform-con-una-tabla-y.htmlhttp://aprenderabap.blogspot.mx/2014/01/como-crear-un-smartform-con-una-tabla-y.htmlhttp://aprenderabap.blogspot.mx/2014/01/como-crear-un-smartform-con-una-tabla-y.html#comment-formhttp://aprenderabap.blogspot.mx/2014/01/como-crear-un-smartform-con-una-tabla-y.htmlhttp://aprenderabap.blogspot.mx/2014/01/como-crear-un-smartform-con-una-tabla-y.htmlhttp://aprenderabap.blogspot.mx/2014/01/como-crear-un-smartform-con-una-tabla-y.htmlhttp://aprenderabap.blogspot.mx/2014/01/como-crear-un-smartform-con-una-tabla-y.html#comment-form -
7/25/2019 Ejemplos Extensos de ABAP
38/98
ransacci*n SE
-
7/25/2019 Ejemplos Extensos de ABAP
39/98
Crear un nueo estilo en la transacci*n SM7=(7MS.
!adir un nodo en Para/rap/- =ormat.
#ndicar las propiedades a P0.
-
7/25/2019 Ejemplos Extensos de ABAP
40/98
si/nar el ormato P0 a >eader =ormat.
!adir un nodo a C-aracter =ormat para el c*di/o de barras.
si/nar el c*di/o de barras creado en la SEO@*.
3ulsar >orm 3ainter para ver;ocultar el diseo del formulario.
Indicar el estilo creado anteriormente en la pestaa Output Options.
-
7/25/2019 Ejemplos Extensos de ABAP
41/98
5adir los parmetros necesarios en >orm Interface:
3armetro de entrada Carrid en la pestaa Import.
7abla interna it_sfli/6t en la pestaa 7ables.
5adir una estructura /lobal >LI?87 en ?lobal Definitions !necesario para
6acer un loop a la tabla it_sfli/6t%
Crear las ventanas 7I7'LO y B5@COD2 situndolas con sus tamaos y
posiciones correspondientes.
Introducir un te
-
7/25/2019 Ejemplos Extensos de ABAP
42/98
si/nar el estilo creado.
!adir par5metro import C77#".
!adir la tabla it?sli/-t en la que se almacenar5 la inormaci*n de la aerolnea.
-
7/25/2019 Ejemplos Extensos de ABAP
43/98
"einir una estructura /lobal necesaria para el loop de la tabla.
Crear las entanas necesarias.
7enombrar las entanas y posicionarlas correctamente.
-
7/25/2019 Ejemplos Extensos de ABAP
44/98
!adir te;to a las entanas #@( y +7C("E.
#ntroducir el par5metro C77#" entre A %Escribir AcarridA en la entana, no directamente en el te;to'.
!adir una tabla a la entana Main.
-
7/25/2019 Ejemplos Extensos de ABAP
45/98
!adir dos tipos de linea %>E"E7 y M#N' e indicar la separaci*n de las columnas.
#ndicar la tabla interna it?sli/-t y la estrucutra st?sli/-t en la pesta!a "ata.
Selecci*n del estilo (utput de la tabla.
-
7/25/2019 Ejemplos Extensos de ABAP
46/98
!adir a cada celda su elemento de te;to correspondiente. El nombre de la columna en >E"E7, y el alor de la tabla en M#N.
Eemplo de introducir el alor de connid de la tabla en la lnea M#N.
+. Crear un @eport en la transacci0n 214:
REPORT zs(a't!'(_;'u%ba.
TABLES2 sKi3t.
DATA2 3_it_sKi3tT4PETABLE OFsKi3t7 3_st_sKi3tT4PEsKi3t.
PARAMETERS2 ;_"a''i$T4PEsKi3t#"a''i$.
START#OF#SELECTION.
SELECT* FROMsKi3t INTOTABLE3_it_sKi3t @HERE"a''i$ ;_"a''i$.
PERFORMi(;'i(%_s(a't!'(.
*,#####################################################################**, F!'( IMPRIME_SMARTFORM*,#####################################################################** t%&t*######################################################################** ## ;1 t%&t* ## ; t%&t
-
7/25/2019 Ejemplos Extensos de ABAP
47/98
*######################################################################*FORMi(;'i(%_s(a't!'( . DATA2 (_)a(%T4PE's+_)a(7 _st_"!)t'!_;a'a(%t%'sT4PEss"t'!;7 _st_!ut;ut_!;ti!)sT4PEss"!(;!;.
DATA2 _
-
7/25/2019 Ejemplos Extensos de ABAP
48/98
Bisualiaci*n del Smartorm.
-
7/25/2019 Ejemplos Extensos de ABAP
49/98
"er el listado de c0di/os de iconos
sbado, enero ), -)+ =o comments
3ara ver el listado de iconos 53 con sus c0di/os, ir a la 214 y buscar el pro/rama 5DI72-J.
2&ecutarlo y se mostrar el listado.
Bus"a' % ;'!3'a(a ADITES %) a SE+ 6 $a' % b!t) $% %J%"uta' 8F
Lista$! $% i"!)!s SAP.
http://aprenderabap.blogspot.mx/2014/01/ver-el-listado-de-codigos-de-iconos.htmlhttp://aprenderabap.blogspot.mx/2014/01/ver-el-listado-de-codigos-de-iconos.htmlhttp://aprenderabap.blogspot.mx/2014/01/ver-el-listado-de-codigos-de-iconos.html#comment-formhttp://aprenderabap.blogspot.mx/2014/01/ver-el-listado-de-codigos-de-iconos.htmlhttp://aprenderabap.blogspot.mx/2014/01/ver-el-listado-de-codigos-de-iconos.htmlhttp://aprenderabap.blogspot.mx/2014/01/ver-el-listado-de-codigos-de-iconos.html#comment-form -
7/25/2019 Ejemplos Extensos de ABAP
50/98
Des6abilitar el I=3'7 a un campo de 2L2C7IO=K
O37IO=
martes, noviembre +(, -)+1 =o comments
2n al/unos casos, se eLI?87 !carrid, connid, fldate y price%.
L!s "uat'! SELECTION#OPTIONS ;a'a a taba SFLI/HT.
5 continuaci0n, se recorre un LOO3 57 C@22=y almacenamos los datos en una tabla au.
http://aprenderabap.blogspot.mx/2013/11/deshabilitar-el-input-un-campo-de.htmlhttp://aprenderabap.blogspot.mx/2013/11/deshabilitar-el-input-un-campo-de.htmlhttp://aprenderabap.blogspot.mx/2013/11/deshabilitar-el-input-un-campo-de.htmlhttp://aprenderabap.blogspot.mx/2013/11/deshabilitar-el-input-un-campo-de.html#comment-formhttp://aprenderabap.blogspot.mx/2013/11/deshabilitar-el-input-un-campo-de.htmlhttp://aprenderabap.blogspot.mx/2013/11/deshabilitar-el-input-un-campo-de.htmlhttp://aprenderabap.blogspot.mx/2013/11/deshabilitar-el-input-un-campo-de.htmlhttp://aprenderabap.blogspot.mx/2013/11/deshabilitar-el-input-un-campo-de.html#comment-form -
7/25/2019 Ejemplos Extensos de ABAP
51/98
2l c0di/o es el si/uiente:
REPORT z_sKi3t.
* Ca'3a' a taba SFLI/HT $% a bas% $% $at!sTABLES2 sKi3t.
* D%)i"i) $% a'iab%sDATA2 3_it_sKi3tT4PETABLE OFsKi3t7 3_st_sKi3tT4PEsKi3t.
DATA2 3_it_s"'%%)T4PETABLE OFs"'%%).
* Pa)taa $% s%%""i)SELECTION#SCREEN2 BE/IN OF BLOCb01 @ITH FRAME.
SELECT#OPTIONS2 ;01 FORsKi3t#"a''i$7
;0 FORsKi3t#"!))i$7 ;0+ FORsKi3t#K$at%.
SELECTION#SCREEN SIP1.
SELECT#OPTIONS2 ;0 FORsKi3t#;'i"%.
SELECTION#SCREEN2 END OF BLOCb01.
INITIALI-ATION.* D%sabiita' u) "a(;! LOOP AT SCREEN. IFs"'%%)#)a(% ?P01#LO@?. s"'%%)#i);ut 0. ELSEIFs"'%%)#)a(% ?P01#HI/H?. s"'%%)#i);ut 0. ENDIF.
MODIF4 SCREEN.APPENDs"'%%)TO3_it_s"'%%).
ENDLOOP.
START#OF#SELECTION. BREA#POINT.
e observa #ue a6ora los campos input del primer parmetro se 6an desactivado.
-
7/25/2019 Ejemplos Extensos de ABAP
52/98
Ca(;!s i);ut $% SELECTION#OPTIONS $%sa"tia$!s.
-
7/25/2019 Ejemplos Extensos de ABAP
53/98
3antalla de selecci0n dinmica
martes, noviembre +(, -)+1 =o comments
2n este e&ercicio va a e
-
7/25/2019 Ejemplos Extensos de ABAP
54/98
a!'%s $% a a'iab% i)t%')a SCREEN.
REPORT z_sKi3t.
* Ca'3a' a taba SFLI/HT $% a bas% $% $at!s
TABLES2 sKi3t.
* D%)i"i) $% a'iab%sDATA2 3_it_sKi3tT4PETABLE OFsKi3t7 3_st_sKi3tT4PEsKi3t.
DATA2 3_it_s"'%%)T4PETABLE OFs"'%%).
* Pa)taa $% s%%""i)PARAMETERS2 ;01 RADIOBUTTON /ROUP'b1 USER#COMMAND u" DEFAULT??.
SELECT#OPTIONS2 s!1 FORsKi3t#"a''i$ MODIF IDMD17 s! FORsKi3t#"!))i$ MODIF IDMD17 s!+ FORsKi3t#K$at% MODIF IDMD1.SELECTION#SCREEN SIP1.
PARAMETERS2 ;0 RADIOBUTTON /ROUP'b1.
SELECT#OPTIONS2 s! FORsKi3t#"a''i$ MODIF IDMD7 s!W FORsKi3t#"!))i$ MODIF IDMD7 s! FORsKi3t#K$at% MODIF IDMD.SELECTION#SCREEN SIP1.SELECT#OPTIONS2 s!X FORsKi3t#;'i"% MODIF IDMD7 s! FORsKi3t#"u''%)"6 MODIF IDMD7 s!9 FORsKi3t#;a)%t6;% MODIF IDMD.
AT SELECTION#SCREEN OUTPUT. IF;01 ??. LOOP AT SCREEN. IFs"'%%)#3'!u;1 ?MD?. s"'%%)#a"ti% 0. MODIF4 SCREEN. ENDIF. ENDLOOP.
-
7/25/2019 Ejemplos Extensos de ABAP
55/98
ELSE. LOOP AT SCREEN. IFs"'%%)#3'!u;1 ?MD1?. s"'%%)#a"ti% 0. MODIF4 SCREEN. ENDIF.
ENDLOOP. ENDIF. APPENDs"'%%)TO3_it_s"'%%).
START#OF#SELECTION. BREA#POINT.
MNue diferencias 6ay entre los eventos57 2L2C7IO= C@22= y57 2L2C7IO= C@22=
O'73'7 2n el primero, el evento se e&ecuta cuando se 6a dado al bot0n de e&ecutar, mientras
#ue en el se/undo se e&ecuta cada vez #ue se 6a 6ec6o un cambio en la pantalla de selecci0n.
-
7/25/2019 Ejemplos Extensos de ABAP
56/98
Crear bases de datos
domin/o, diciembre )4, -)+1 + comment
Crear las si/uientes tablas:
1. Tabla: ZBIBLIO_SOCIOS
Campo Tipo
Cdigo de socio NUMC#
DNI CHAR#9
N!(b'% CHAR#+0
A;%i$! CHAR#+0
T%Y!)! CHAR#1W
Di'%""i) 1 CHAR#XW
Di'%""i) CHAR#XW
Di'%""i) + CHAR#XW
Di'%""i) CHAR#XW
2. Tabla: ZBIBLIO_LIBROS
Campo Tipo
Cdigo de libro NUMC#
Aut!' CHAR#XW
TQtu! CHAR#1W
EJ%(;a'%s $is;!)ib%s INT#
http://aprenderabap.blogspot.mx/2013/12/crear-tablas-de-bases-de-datos.htmlhttp://aprenderabap.blogspot.mx/2013/12/crear-tablas-de-bases-de-datos.htmlhttp://aprenderabap.blogspot.mx/2013/12/crear-tablas-de-bases-de-datos.html#comment-formhttp://aprenderabap.blogspot.mx/2013/12/crear-tablas-de-bases-de-datos.htmlhttp://aprenderabap.blogspot.mx/2013/12/crear-tablas-de-bases-de-datos.htmlhttp://aprenderabap.blogspot.mx/2013/12/crear-tablas-de-bases-de-datos.html#comment-form -
7/25/2019 Ejemplos Extensos de ABAP
57/98
EJ%(;a'%s t!ta%s INT#
3. Tabla: ZBIBLIO_PRESTAM
Campo Tipo
Cdigo de prstamo NUMC#1
Cdigo de socio8Ca% %&t%')a "!) taba $%
s!"i!s
Cdigo de libro8Ca% %&t%')a "!) taba $%
s!"i!s
F%"a i)i"i! ;'Ysta(! DAT
F%"a %sti(a$a $%!u"i) DAT
F%"a '%a $%!u"i) DAT
2l primer paso es crear todos los dominios en la 2++. 8abr tantos dominios como tipo de
variables, es decir, un dominio para C85@K(, otro para C85@K+G y as$ sucesivamente con cada
uno de los tipos de las tres tablas.
-
7/25/2019 Ejemplos Extensos de ABAP
58/98
C'%a"i) $% u) $!(i)i!.
Ca'a"t%'Qsti"as $% u) $!(i)i!.
>inalmente se 6abrn creado los si/uientes dominios:
-
7/25/2019 Ejemplos Extensos de ABAP
59/98
Lista $% $!(i)i!s "'%a$!s.
5 continuaci0n, se crean los tipos de datos. 3or tanto, volvemos a la 2++ para crear los tipos de
datos.
C'%a"i) $% ti;! $% $at!s.
2n este e&emplo, tendremos #ue crear todos los tipos de datos de las tres tablas y asi/narle el
dominio correspondiente. 2ste dominio se puede repetir, como es el caso de los campos =ombre y
5pellido en la tabla Z_BIBLIO_OCIO, ya #ue su tipo es un C85@K1). La 9nica diferencia entre
los tipos de datos =ombre y 5pellido es las descripciones.
-
7/25/2019 Ejemplos Extensos de ABAP
60/98
Asi3)a)$! u) $!(i)i! "'%a$! a ti;! $% $at!s.
e aconse&a rellenar las descripciones del campo, ya #ue ayudar a la visualizaci0n cuando se
utilicen 5L"s.
C'%a)$! %ti>u%tas $% $%s"'i;"i) ;a'a (!st'a' %) ALs.
'na vez con todos los tipos de datos creados, pasamos a crear la base de datos en la 2++.
eleccionamos la clase e introducimos los campos de la tabla.
-
7/25/2019 Ejemplos Extensos de ABAP
61/98
C'%a(!s u)a bas% $% $at!s.
Asi3)a(!s a "as% 6 )a%3a"i) $% $at!s.
7odo tabla debe de comenzar por el mandante, con lo #ue asi/namos el elemento *5=D7 al
primer campo.
Aa$i(!s % (a)$a)t% 6 !s "a(;!s 8asi3)a)$! !s ti;!s "'%a$!s ;'%ia(%)t%.
3ulsamos el bot0n de a&ustes tFcnicos de la tabla para asi/nar la clase 533L) y un tamao de
re/istro cate/or$a ) !4) re/istros%.
-
7/25/2019 Ejemplos Extensos de ABAP
62/98
Asi3)a' "as% $% $at!s 6 % )=(%'! $% '%3ist'!s >u% t%)$'V a taba.
5 continuaci0n, seleccionamos la cate/or$a de ampliaci0n de la tabla en Detalles:
Cat%3!'Qa $% a(;ia"i) %) D%ta%s.
S%%""i!)a(!s a(;iab% $% "ua>ui%' (a)%'a.
finalmente, vamos al /enerador de actualizador de tabla en 'tilidades:
-
7/25/2019 Ejemplos Extensos de ABAP
63/98
I' a 3%)%'a$!' $% (a)t%)i(i%)t! $% taba %) utii$a$%s.
eleccionamos el /rupo de autorizaci0n y el /rupo de funciones. e recomienda #ue para cada
tabla ten/a su propio /rupo de funciones. 2n este caso, la llamamos i/ual #ue el nombre de la
tabla. 5dems, asi/namos la ima/en resumen con un ())) !e recomienda #ue se empiece a
contar a partir de ese n9mero%.
S%%""i!)a(!s "at%3!'Qa $% a"tuaiza"i)7 % 3'u;! $% u)"i!)%s 6 a i(a3%) '%su(%).
3inc6amos en crear, /rabamos y activamos la tabla.
e repite cada uno de los pasos con las otras dos tablas.
Las claves e
-
7/25/2019 Ejemplos Extensos de ABAP
64/98
Crear un 7ree dentro de un DocEin/ y mostrar un 5L"
lunes, enero )J, -)+ =o comments
Ob&etivo:
Crear un DocEin/ con un 7ree.
2l 7ree contendr la lista de C5@@ID y 3L5=2732 de la tabla >LI?87.
3ulsar un elemento del 7ree y mostrar un 5L" con los datos de la >LI?87 #ue
conten/an dic6o elemento.
La mayor parte del c0di/o no 6a sido creado directamente, sino #ue copiado y adaptado de los
e&emplos disponibles en el sistema 53.
2n la transacci0n 241 tendremos todos los e&emplos disponibles #ue se 6an usado en este
e&ercicio.
(beto "ocin/ de la SE83.
(beto ree de la SE83.
http://aprenderabap.blogspot.com.es/2014/01/crear-un-arbol-dentro-de-un-docking-y.htmlhttp://aprenderabap.blogspot.com.es/2014/01/crear-un-arbol-dentro-de-un-docking-y.htmlhttp://aprenderabap.blogspot.com.es/2014/01/crear-un-arbol-dentro-de-un-docking-y.html#comment-formhttp://aprenderabap.blogspot.com.es/2014/01/crear-un-arbol-dentro-de-un-docking-y.htmlhttp://aprenderabap.blogspot.com.es/2014/01/crear-un-arbol-dentro-de-un-docking-y.htmlhttp://aprenderabap.blogspot.com.es/2014/01/crear-un-arbol-dentro-de-un-docking-y.html#comment-form -
7/25/2019 Ejemplos Extensos de ABAP
65/98
(beto B de la SE83.
2mpezamos creando los elementos necesarios del creen:
'n input;output #ue solo mostrar el te
-
7/25/2019 Ejemplos Extensos de ABAP
66/98
3_st_sKi3tT4PEsKi3t.
* D!"5i)3 C!)tai)%'DATA3_!b_$!"5i)3T4PE REF TO"_3ui_$!"5i)3_"!)tai)%'.
* Si(;% T'%%
CLASS"_a;;i"ati!) DEFINITIONDEFERRED.T4PES2 3_tt_)!$%_tab%_t6;% LIE STANDARD TABLE OF(t'%%s)!$% @ITHDEFAULTE4.DATA3_
-
7/25/2019 Ejemplos Extensos de ABAP
67/98
*######################################################################***######################################################################*CLASS"_a;;i"ati!) IMPLEMENTATION.
METHOD a)$%_)!$%_$!ub%_"i"5.
: tis (%t!$ a)$%s t% )!$% $!ub% "i"5 %%)t ! t% t'%% : "!)t'! i)sta)"%
i!_9000_"i"5 )!$%_5%6.
FREE 3_it_sKi3t. SELECT* FROMsKi3t INTOTABLE3_it_sKi3t @HERE"a''i$ )!$%_5%6 OR ;a)%t6;% )!$%_5%6.
CALL METHOD3_!b_a#s%t_tab%_!'_'st_$is;a6 EPORTIN/ i_st'u"tu'%_)a(% ?SFLI/HT?
CHAN/IN/ it_!uttab 3_it_sKi3t.
ENDMETHOD. :HANDLE_NODE_DOUBLE_CLIC
METHODa)$%_%&;a)$_)!_"i$'%). : tis (%t!$ a)$%s t% %&;a)$ )! "i$'%) %%)t ! t% t'%% : "!)t'! i)sta)"%
IF)!$%_5%6 3_"_)!$%5%6#"a''i$. 3_
-
7/25/2019 Ejemplos Extensos de ABAP
68/98
SET PF#STATUS?STATUS_9000?. SET TITLEBAR?TITLE_9000?.
IF3_
-
7/25/2019 Ejemplos Extensos de ABAP
69/98
*######################################################################** ## ;1 t%&t* ## ; t%&t*######################################################################*FORM_"'%at%_a)$_i)it_t'%% .
DATA2 _it_)!$%_tab%T4PE3_tt_)!$%_tab%_t6;%7 _it_%%)tsT4PE")t_si(;%_%%)ts7 _st_%%)tT4PE")t_si(;%_%%)t.
* "'%at% a t'%% "!)t'! i) t% $!"5i)3 CREATE OBZECT3_!b_t'%% EPORTIN/ ;a'%)t 3_!b_$!"5i)3 )!$%_s%%"ti!)_(!$% "_3ui_si(;%_t'%%)!$%_s%_(!$%_si)3% ECEPTIONS i%ti(%_%''!' 1 ")t_s6st%(_%''!' "'%at%_%''!' +
ai%$ i%3a_)!$%_s%%"ti!)_(!$% W. IFs6#sub'" 0. MESSA/Ea000. ENDIF.
* $%)% t% %%)ts
-
7/25/2019 Ejemplos Extensos de ABAP
70/98
* )!$%_tab%_st'u"tu'%_)a(% ?MTREESNODE?* A ;'!3'a((%' usi)3 t% t'%% "!)t'! (ust "'%at% a st'u"tu'% i) t%* $i"ti!)a'6. Tis st'u"tu'% (ust i)"u$% t% st'u"tu'% TREE_NODE* a)$ (ust "!)tai) a "a'a"t%' %$
-
7/25/2019 Ejemplos Extensos de ABAP
71/98
_st_)!$%#'%atsi; "_3ui_si(;%_t'%%'%at_ast_"i$.
_st_)!$%#i$$%) ? ?. _st_)!$%#$isab%$ ? ?. _st_)!$%#is!$%' ??. CLEAR_st_)!$%#)_i(a3%.
CLEAR_st_)!$%#%&;_i(a3%. _st_)!$%#%&;a)$%' ??.
_st_)!$%#t%&t ?Ca''i$?8"1. _st_)!$%#st6% "_3ui_si(;%_t'%%st6%_%(;asiz%$_;!siti%. APPEND_st_)!$%TO;_it_)!$%_tab%.
* N!$%
-
7/25/2019 Ejemplos Extensos de ABAP
72/98
LOOP AT _it_sKi3t.* N!$%
-
7/25/2019 Ejemplos Extensos de ABAP
73/98
7esultado inal del eercicio.
-
7/25/2019 Ejemplos Extensos de ABAP
74/98
Clave e7D7D
-
7/25/2019 Ejemplos Extensos de ABAP
75/98
Eemplares totales #ND
3. Tabla: ZBIBLIO_PRESTAM
Campo Tipo
Cdigo de prstamo N@MCD12
Cdigo de socio %Clae e;terna con tabla de socios'
Cdigo de libro %Clae e;terna con tabla de socios'
=ec-a inicio prFstamo "
=ec-a estimada deoluci*n "
=ec-a real deoluci*n "
2n la tabla 1, seleccionamos el campo para indicar como clave e
-
7/25/2019 Ejemplos Extensos de ABAP
76/98
#ntroducir la tabla donde est5 deinido el campo y pinc-ar en el bot*n de /enerar propuesta.
Comprobaci0n de las claves eacebooE
https://www.blogger.com/share-post.g?blogID=8290245453394731585&postID=3824905995058568133&target=emailhttps://www.blogger.com/share-post.g?blogID=8290245453394731585&postID=3824905995058568133&target=bloghttps://www.blogger.com/share-post.g?blogID=8290245453394731585&postID=3824905995058568133&target=twitterhttps://www.blogger.com/share-post.g?blogID=8290245453394731585&postID=3824905995058568133&target=twitterhttps://www.blogger.com/share-post.g?blogID=8290245453394731585&postID=3824905995058568133&target=twitterhttps://www.blogger.com/share-post.g?blogID=8290245453394731585&postID=3824905995058568133&target=facebookhttps://www.blogger.com/share-post.g?blogID=8290245453394731585&postID=3824905995058568133&target=facebookhttps://www.blogger.com/share-post.g?blogID=8290245453394731585&postID=3824905995058568133&target=emailhttps://www.blogger.com/share-post.g?blogID=8290245453394731585&postID=3824905995058568133&target=bloghttps://www.blogger.com/share-post.g?blogID=8290245453394731585&postID=3824905995058568133&target=twitterhttps://www.blogger.com/share-post.g?blogID=8290245453394731585&postID=3824905995058568133&target=facebook -
7/25/2019 Ejemplos Extensos de ABAP
77/98
5L" @eport de una base de datos !I_7@'C7'@2_=5*2%
&ueves, noviembre -4, -)+1 =o comments
Cuando consultamos una base de datos, es posible #ue las descripciones de los campos 6ayan
sido aadidas en los elementos de datos de cada campo, por tanto no ser necesario rellenar el
>I2LDC57 como en el primer e&emplo 5L".0lo 6ay #ue indicar el nombre de la estructura y la
tabla interna.
2n este e&emplo se va a mostrar la >LI?87.
REPORT z_sKi3t.
* Ca'3a' a taba SFLI/HT $% a bas% $% $at!sTABLES2 sKi3t.
* D%)i"i) $% a'iab%sDATA2 3_it_sKi3tT4PETABLE OFsKi3t.
* C!;ia$! $% !s $at!s a a taba "!) !s t'!sSELECT* FROMsKi3t INTOTABLE3_it_sKi3t.
* ALCALL FUNCTION?REUSE_AL_/RID_DISPLA4? EPORTIN/ i_st'u"tu'%_)a(% ?SFLI/HT?TABLES
t_!uttab 3_it_sKi3t.
AL R%;!'t $% u)a bas% $% $at!s
http://aprenderabap.blogspot.com.es/2013/11/alv-report-de-una-base-de-datos.htmlhttp://aprenderabap.blogspot.com.es/2013/11/alv-report-de-una-base-de-datos.htmlhttp://aprenderabap.blogspot.com.es/2013/11/alv-report-de-una-base-de-datos.html#comment-formhttp://aprenderabap.blogspot.com.es/2013/11/alv-report-de-una-tabla-interna.htmlhttp://aprenderabap.blogspot.com.es/2013/11/alv-report-de-una-tabla-interna.htmlhttp://aprenderabap.blogspot.com.es/2013/11/alv-report-de-una-base-de-datos.htmlhttp://aprenderabap.blogspot.com.es/2013/11/alv-report-de-una-base-de-datos.htmlhttp://aprenderabap.blogspot.com.es/2013/11/alv-report-de-una-base-de-datos.html#comment-formhttp://aprenderabap.blogspot.com.es/2013/11/alv-report-de-una-tabla-interna.html -
7/25/2019 Ejemplos Extensos de ABAP
78/98
5adir un bot0n en un 5L" @eport
&ueves, noviembre -+, -)+1 =o comments
2n la transacci0n 24), visualizamos el pro/rama 53LBL.
isuaiza(!s % ;'!3'a(a SAPLBL.
=ave/amos en el rbol 6asta la pestaa ?'I tatusA75=D5@D. 3inc6amos con el bot0n derec6o
y lo copiamos a nuestro pro/rama.
http://aprenderabap.blogspot.com.es/2013/11/anadir-un-boton-en-un-alv-report.htmlhttp://aprenderabap.blogspot.com.es/2013/11/anadir-un-boton-en-un-alv-report.htmlhttp://aprenderabap.blogspot.com.es/2013/11/anadir-un-boton-en-un-alv-report.html#comment-formhttp://aprenderabap.blogspot.com.es/2013/11/anadir-un-boton-en-un-alv-report.htmlhttp://aprenderabap.blogspot.com.es/2013/11/anadir-un-boton-en-un-alv-report.htmlhttp://aprenderabap.blogspot.com.es/2013/11/anadir-un-boton-en-un-alv-report.html#comment-form -
7/25/2019 Ejemplos Extensos de ABAP
79/98
C!;ia(!s STANDARD %) a ;%staa Status /UI.
Aa$i(!s % )!(b'% $% )u%st'! ;'!3'a(a.
"olvemos a nuestro pro/rama principal, y comprobamos #ue tenemos el 75=D5@D en la pestaa
?'I tatus.
-
7/25/2019 Ejemplos Extensos de ABAP
80/98
C!(;'!ba(!s >u% t%)%(!s /UI StatusSta)$a'$ %) )u%st'! ;'!3'a(a.
3inc6amos dos veces en 75=D5@D y veremos los botones disponibles. 2n esta nueva ventana
aadimos un nuevo bot0n, asi/nndole un nombre, un icono y un ata&o del teclado !=o asi/nar el
ata&o >, ya #ue el bot0n no funcionar$a%.
Aa$i(!s u) b!t) "!) % )!(b'% ,BT1.
-
7/25/2019 Ejemplos Extensos de ABAP
81/98
Asi3)a(!s u) i"!)!.
Asi3)a(!s u) ataJ! $% t%"a$!.
a tenemos el ?'I tatus listo para incorporar. e va a mostrar un c0di/o en el #ue se muestranlos cuatro primeros campos de la tabla >LI?87 con un nuevo bot0n en el men9. Cuando se pulsa
el bot0n, saldr un mensa&e de notificaci0n.
2l c0di/o es el si/uiente:
REPORT z_t%st.
* Ca'3a' a taba SFLI/HT $% a bas% $% $at!sTABLES2 sKi3t.
* Ca'3a(!s !s $at!s ti;! sisT4PES2 sis.
* D%)i"i) $% a'iab%sDATA2 3_it_sKi3tT4PETABLE OFsKi3t7 3_st_sKi3tT4PEsKi3t.
DATA2 3_it_%$"atT4PEsis_t_%$"at_a7
-
7/25/2019 Ejemplos Extensos de ABAP
82/98
3_st_%$"atT4PEsis_%$"at_a.
DATA2 3_'%;i$T4PEs6#'%;i$.
* SL ;a'a "!;ia' a taba sKi3t a a taba i)t%')aSELECT* FROMsKi3t INTOTABLE3_it_sKi3t.
* a'iab% "!) % )!(b'% $% ;'!3'a(a3_'%;i$ s6#'%;i$.
* Dat!s $% %$"at ;a'a % AL3_st_%$"at#%$)a(% ?CARRID?.3_st_%$"at#s%t%&t_s ?C!(;.?.APPEND3_st_%$"atTO3_it_%$"at.
3_st_%$"at#%$)a(% ?CONNID?.3_st_%$"at#s%t%&t_s ?u%!?.APPEND3_st_%$"atTO3_it_%$"at.
3_st_%$"at#%$)a(% ?FLDATE?.3_st_%$"at#s%t%&t_s ?F%"a?.APPEND3_st_%$"atTO3_it_%$"at.
3_st_%$"at#%$)a(% ?PRICE?.3_st_%$"at#s%t%&t_s ?Ta'ia?.APPEND3_st_%$"atTO3_it_%$"at.
CALL FUNCTION?REUSE_AL_/RID_DISPLA4? EPORTIN/ i_"aba"5_;'!3'a( 3_'%;i$ i_"aba"5_;_status_s%t ?MI_STANDARD?
i_"aba"5_us%'_"!((a)$ ?MI_USER_COMMAND? it_%$"at 3_it_%$"atTABLES t_!uttab 3_it_sKi3t ECEPTIONS ;'!3'a(_%''!' 1 OTHERS .
*,#####################################################################**, F!'( (i_us%'_"!((a)$*,#####################################################################***######################################################################*
FORM(i_us%'_"!((a)$ USIN/'_u"!(( LIEs6#u"!(( 's_s%%$T4PEsis_s%%$. CASE'_u"!((.
@HEN?,BT1?. :S% a %"! "i"5 %) % b!t) MESSA/E?Has ;usa$! % b!t) "'%a$!?T4PE?I?. ENDCASE.ENDFORM. :(i_us%'_"!((a)$
*,#####################################################################*
-
7/25/2019 Ejemplos Extensos de ABAP
83/98
-
7/25/2019 Ejemplos Extensos de ABAP
84/98
7op of pa/e en un 5L" @eport con ima/en
&ueves, noviembre -+, -)+1 =o comments
3ara crear un encabezado a nuestro 5L" @eport con @2'2_5L"_?@ID_DI3L5, se necesitar
crear un>O@*y nombrarle en i_callbacE_top_of_pa/e. Dentro del >O@*, se incluir la
funci0n @2'2_5L"_CO**2=75@_@I72para mostrar el te
-
7/25/2019 Ejemplos Extensos de ABAP
85/98
3_st_%$"at#%$)a(% ?CONNID?.3_st_%$"at#s%t%&t_s ?u%!?.APPEND3_st_%$"atTO3_it_%$"at.
3_st_%$"at#%$)a(% ?FLDATE?.3_st_%$"at#s%t%&t_s ?F%"a?.
APPEND3_st_%$"atTO3_it_%$"at.
3_st_%$"at#%$)a(% ?PRICE?.3_st_%$"at#s%t%&t_s ?Ta'ia?.APPEND3_st_%$"atTO3_it_%$"at.
CALL FUNCTION?REUSE_AL_/RID_DISPLA4? EPORTIN/ i_"aba"5_;'!3'a( 3_'%;i$ i_"aba"5_t!;_!_;a3% ?MI_TOP_OF_PA/E? it_%$"at 3_it_%$"atTABLES t_!uttab 3_it_sKi3t
ECEPTIONS ;'!3'a(_%''!' 1 OTHERS .
*,#####################################################################**, F!'( (i_t!;_!_;a3%*,#####################################################################***######################################################################*FORM(i_t!;_!_;a3%.*AL H%a$%' $%"a'ati!)s DATA2 _it_%a$%'T4PEsis_t_ist%a$%'7
_st_%a$%'T4PEsis_ist%a$%'7 _it_i)% LIE_st_%a$%'#i)!7 $_i)%sT4PEi7 $_i)%s"810T4PE".
* Ti;! H ;a'a %s"'ibi' "!) a u%)t% 3'a)$% _st_%a$%'#t6; ?H?. _st_%a$%'#i)! ?SFLI/HT DATA?. APPEND_st_%a$%'TO_it_%a$%'. CLEAR_st_%a$%'.
* Ti;! S ;a'a i)$i"a' ;a'V(%t'! "a% 6 su a!' 8%"a _st_%a$%'#t6; ?S?. :S%%"ti!)
_st_%a$%'#5%6 ?Dat%2 ?. CONCATENATE s6#$atu(G8 ?.? s6#$atu(G8 ?.? s6#$atu(8 INTO_st_%a$%'#i)!. :F%"a $% !6 APPEND_st_%a$%'TO_it_%a$%'. CLEAR2 _st_%a$%'.
* Ti;! A ;a'a %s"'ibi' %) "u'sia _st_%a$%'#t6; ?A?. :A"ti!)
-
7/25/2019 Ejemplos Extensos de ABAP
86/98
_st_%a$%'#i)! ?AL R%;!'t?. APPEND_st_%a$%'TO_it_%a$%'. CLEAR2 _st_%a$%'.
CALL FUNCTION?REUSE_AL_COMMENTAR4_@RITE? EPORTIN/
it_ist_"!((%)ta'6 _it_%a$%' i_!3! ?ENZO4SAP_LO/O?.
ENDFORM. :(i_t!;_!_;a3%
op o pa/e con ima/en en un B 7eport.
-
7/25/2019 Ejemplos Extensos de ABAP
87/98
5adir patr0n de rayas y tamao de columna optimizado en
un 5L" @eport !I_L5O'7%
miFrcoles, noviembre -), -)+1 =o comments
i se desea mostrar el patr0n rayado y tener el anc6o de columna optimizado, se tiene #ue recurrir
a la variable I_L5O'7 del 5L". 2n este caso para activar dic6as opciones, s0lo 6ay #ue cambiar
el valor de dos variables con una P.
2n este e&emplo se muestran los cuatro primeros campos de la tabla >LI?87.
REPORT z_sKi3t.
* Ca'3a' a taba SFLI/HT $% a bas% $% $at!sTABLES2 sKi3t.
* Ca'3a(!s !s $at!s ti;! sisT4PES2 sis.
* D%)i"i) $% a'iab%sDATA2 3_it_sKi3tT4PETABLE OFsKi3t7 3_st_sKi3tT4PEsKi3t.
DATA2 3_it_%$"atT4PEsis_t_%$"at_a7 3_st_%$"atT4PEsis_%$"at_a.
Data2 3_st_a6!ut t6;%sis_a6!ut_a.
* SL ;a'a "!;ia' a taba sKi3t a a taba i)t%')aSELECT* FROMsKi3t INTOTABLE3_it_sKi3t.
* Dat!s $% is_a6!ut ;a'a % AL3_st_a6!ut#z%b'a ??.3_st_a6!ut#"!
-
7/25/2019 Ejemplos Extensos de ABAP
88/98
3_st_%$"at#s%t%&t_s ?F%"a?.APPEND3_st_%$"atTO3_it_%$"at.
3_st_%$"at#%$)a(% ?PRICE?.3_st_%$"at#s%t%&t_s ?Ta'ia?.APPEND3_st_%$"atTO3_it_%$"at.
* Fu)"i) ALCALL FUNCTION?REUSE_AL_/RID_DISPLA4? EPORTIN/ is_a6!ut 3_st_a6!ut it_%$"at 3_it_%$"at
TABLES t_!uttab 3_it_sKi3t ECEPTIONS ;'!3'a(_%''!' 1 OTHERS .
Pat') 'a6a$! 6 a)"! $% "!
-
7/25/2019 Ejemplos Extensos de ABAP
89/98
5si/nar valores iniciales al filtrado de 2L2C7KO37IO=
en la pantalla de selecci0n
martes, noviembre +(, -)+1 =o comments
i se desea #ue los campos de 2L2C7KO37IO=ten/an por defecto un valor, ser necesario
modificar los
3or e&emplo, si se desean seleccionar los datos de la tabla >LI?87 con las compa$as 55 y DL,
tendremos #ue recurrir al evento I=I7I5LIZ57IO= para asi/narle los valores de la b9s#ueda. De
este modo, el usuario no tendr #ue dar al bot0n de b9s#ueda avanzada, ya #ue los parmetros ya
6abrn sido introducidos.
REPORT z_sKi3t.
* Ca'3a' a taba SFLI/HT $% a bas% $% $at!sTABLES2 sKi3t.
* D%)i"i) $% a'iab%sDATA2 3_it_sKi3tT4PETABLE OFsKi3t7 3_st_sKi3tT4PEsKi3t.
* Pa)taa $% s%%""i)SELECTION#SCREEN2 BE/IN OF BLOCb01 @ITH FRAME.
SELECT#OPTIONS2 ;01 FORsKi3t#"a''i$7 ;0 FORsKi3t#"!))i$7 ;0+ FORsKi3t#K$at%.
SELECTION#SCREEN SIP1.
SELECT#OPTIONS2 ;0 FORsKi3t#;'i"%.
SELECTION#SCREEN2 END OF BLOCb01.
INITIALI-ATION. ;01#si3) ?I?. :I)"ui' ;01#!;ti!) ?E?. : ;01#!< ?AA?. APPEND;01.
;01#si3) ?I?. ;01#!;ti!) ?E?. ;01#!< ?DL?. APPEND;01.
START#OF#SELECTION.* C!;ia$! $% !s $at!s a a taba "!) !s t'!s SELECT* FROMsKi3t INTOTABLE3_it_sKi3t
http://aprenderabap.blogspot.com.es/2013/11/asignar-valores-iniciales-al-filtrado.htmlhttp://aprenderabap.blogspot.com.es/2013/11/asignar-valores-iniciales-al-filtrado.htmlhttp://aprenderabap.blogspot.com.es/2013/11/asignar-valores-iniciales-al-filtrado.htmlhttp://aprenderabap.blogspot.com.es/2013/11/asignar-valores-iniciales-al-filtrado.html#comment-formhttp://aprenderabap.blogspot.com.es/2013/11/asignar-valores-iniciales-al-filtrado.htmlhttp://aprenderabap.blogspot.com.es/2013/11/asignar-valores-iniciales-al-filtrado.htmlhttp://aprenderabap.blogspot.com.es/2013/11/asignar-valores-iniciales-al-filtrado.htmlhttp://aprenderabap.blogspot.com.es/2013/11/asignar-valores-iniciales-al-filtrado.html#comment-form -
7/25/2019 Ejemplos Extensos de ABAP
90/98
-
7/25/2019 Ejemplos Extensos de ABAP
91/98
>iltrar datos de una base de datos con 2L2C7KO37IO=
y NL
martes, noviembre +(, -)+1 =o comments
MNuieres filtrar los datos de una base de datos 2n esta entrada se e
-
7/25/2019 Ejemplos Extensos de ABAP
92/98
i e&ecutamos, veremos #ue en la pantalla de selecci0n aparecen los nombres de las variables.
3ara poder editarlo tenemos #ue ir a los te
-
7/25/2019 Ejemplos Extensos de ABAP
93/98
Cambiar el formato de la fec6a
martes, noviembre +(, -)+1 =o comments
M=o os /usta el formato de la fec6a por defecto en 5B53 y #uerFis cambiar su formato de una
manera sencilla 5#u$ se e
-
7/25/2019 Ejemplos Extensos de ABAP
94/98
-
7/25/2019 Ejemplos Extensos de ABAP
95/98
3ara ver las diferencias entre ambos mFtodos en un loop, se recomienda ver esta entrada.
http://aprenderabap.blogspot.com.es/2013/11/declaracion-de-tablas-internas-dos.htmlhttp://aprenderabap.blogspot.com.es/2013/11/declaracion-de-tablas-internas-dos.html -
7/25/2019 Ejemplos Extensos de ABAP
96/98
Declaraci0n de tablas internas !dos mFtodos%
&ueves, noviembre +, -)+1 =o comments
'na tabla interna se caracteriza por tener una a/rupaci0n de datos con una misma estructura.
2
-
7/25/2019 Ejemplos Extensos de ABAP
97/98
3_st_%)"ab%za$!#t%%!)! ?00111?.APPEND3_st_%)"ab%za$!TO3_it_(itaba.
* M!st'a' %) ;a)taa a tabaLOOP AT 3_it_(itaba INTO3_st_%)"ab%za$!. @RITE2[ 3_st_%)"ab%za$!#)!(b'%7
AT 3_st_%)"ab%za$!#a;%i$!7 AT 3_st_%)"ab%za$!#t%%!)!.ENDLOOP.
e/unda forma:
REPORT z_taba.
* D%"a'a$! $% a'iab%sDATA2 BE/IN OF3_it_(itaba OCCURS07 )!(b'%80T4PE"7 a;%i$!80T4PE"7
t%%!)!89T4PE)7END OF3_it_(itaba.
* R%%)a$! $% a taba3_it_(itaba#)!(b'% ?Zua)?.3_it_(itaba#a;%i$! ?PY'%z?.3_it_(itaba#t%%!)! ?1+WX?.APPEND3_it_(itaba.
3_it_(itaba#)!(b'% ?Lu"as?.3_it_(itaba#a;%i$! ?/a'"Qa?.3_it_(itaba#t%%!)! ?9XW+?.APPEND3_it_(itaba.
3_it_(itaba#)!(b'% ?Ma'Qa?.3_it_(itaba#a;%i$! ?/utiY''%z?.3_it_(itaba#t%%!)! ?00111?.APPEND3_it_(itaba.
* M!st'a' %) ;a)taa a tabaLOOP AT 3_it_(itaba. @RITE2[ 3_it_(itaba#)!(b'%7 AT 3_it_(itaba#a;%i$!7 AT 3_it_(itaba#t%%!)!.ENDLOOP.
e aprecia #ue en el primer mFtodo se crea primero el encabezado y la tabla con 732, y a
continuaci0n se declaran las variables. in embar/o, en el se/undo mFtodo se crea directamente
la tabla.
=0tese #ue a la 6ora de 6acer un LOO3a la tabla, en el primer mFtodo se indica la tabla y el
-
7/25/2019 Ejemplos Extensos de ABAP
98/98
encabezado, mientras #ue en el se/undo caso s0lo se indica el nombre de la tabla, ya #ue el
nombre del encabezado y tabla interna es el mismo.