zejercicio_proyecto_alv02
DESCRIPTION
ALVTRANSCRIPT
-
REPORT ZEJERCICIO_PROYECTO_ALV01 NO STANDARD PAGE HEADING.
START-OF-SELECTION.
WRITE:/ ,65 'VER GNEROS. ' COLOR 5 CENTERED HOTSPOT. "??? Como cambiar el formato del texto (color,tamao..etc) WRITE:/ ,65 'VER PELCULAS.' COLOR 7 CENTERED HOTSPOT.
AT LINE-SELECTION.
CASE sy-lilli. WHEN 2. "hay un problema: Al meterse en este tipo de ALV, y querer volver al start-of-selection, no te lo permite..ALGUNA SOLUCION??* WRITE:/ 'Tabla Gneros..pulsaste la fila:', sy-lsind. DATA: tabIn_generos TYPE STANDARD TABLE OF ZTAB_GENEROS01, var_ref_tabgeneros TYPE REF TO CL_GUI_ALV_GRID, wa_columna_estilo TYPE LVC_S_LAYO, tabIn_fcat TYPE LVC_T_FCAT.
FIELD-SYMBOLS: LIKE LINE OF TABIN_FCAT.
SELECT * INTO TABLE TABIN_GENEROS FROM ZTAB_GENEROS01.
CREATE OBJECT VAR_REF_TABGENEROS exporting I_PARENT = CL_GUI_CUSTOM_CONTAINER=>SCREEN0 " Parent Container exceptions ERROR_CNTL_CREATE = 1 ERROR_CNTL_INIT = 2 ERROR_CNTL_LINK = 3 ERROR_DP_CREATE = 4 OTHERS = 5 . if sy-subrc 0.* message id sy-msgid type sy-msgty number sy-msgno* with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4. endif.
CALL FUNCTION 'LVC_FIELDCATALOG_MERGE' EXPORTING I_STRUCTURE_NAME = 'ZTAB_GENEROS01' CHANGING CT_FIELDCAT = TABIN_FCAT . IF SY-SUBRC 0.* Implement suitable error handling here ENDIF.
WA_COLUMNA_ESTILO-ZEBRA = ABAP_true.
LOOP AT TABIN_FCAT ASSIGNING . if -FIELDNAME = 'GENERO'. -COLTEXT = 'Nombre del gnero'. elseif -FIELDNAME = 'ID_GENERO'. -COLTEXT = 'Cdigo de gnero'. -OUTPUTLEN = 15. -COL_POS = 3. "???COMO CENTRAR LA INFO DE LA COLUMNA endif. ENDLOOP.
VAR_REF_TABGENEROS->SET_TABLE_FOR_FIRST_DISPLAY( exporting* I_STRUCTURE_NAME = 'ZTAB_GENEROS01' " Internal Output Table Structure Name IS_LAYOUT = WA_COLUMNA_ESTILO
-
changing IT_OUTTAB = TABIN_GENEROS " Output Table IT_FIELDCATALOG = TABIN_FCAT* exceptions* INVALID_PARAMETER_COMBINATION = 1* PROGRAM_ERROR = 2* TOO_MANY_LINES = 3* OTHERS = 4 ). if sy-subrc 0.* message id sy-msgid type sy-msgty number sy-msgno* with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4. endif.
WRITE:/ ''.
WHEN 4.* WRITE:/ 'Tabla Pelculas...pulsaste la fila:',sy-lilli. DATA: tabIn_peliculas TYPE STANDARD TABLE OF ZTAB_PELICULAS01, var_ref_tabpelicula TYPE REF TO CL_SALV_TABLE, var_ref_colpeli TYPE SALV_DE_ALIGNMENT.* wa_columna_estilo TYPE LVC_S_LAYO.* tabIn_fcat TYPE LVC_T_FCAT.
FIELD-SYMBOLS: LIKE LINE OF TABIN_PELICULAS.
SELECT * INTO TABLE TABIN_PELICULAS FROM ZTAB_PELICULAS01.
CL_SALV_TABLE=>FACTORY(* exporting* LIST_DISPLAY = IF_SALV_C_BOOL_SAP=>FALSE " ALV Displayed in List Mode* R_CONTAINER = " Abstract Container for GUI Controls* CONTAINER_NAME = importing R_SALV_TABLE = VAR_REF_TABPELICULA " Basis Class Simple ALV Tables changing T_TABLE = TABIN_PELICULAS ).* catch CX_SALV_MSG. " ALV: General Error Class with Message
* VAR_REF_COLPELI = 'CENTERED'. WA_COLUMNA_ESTILO-VAL_DATA = 3. VAR_REF_TABPELICULA->GET_COLUMNS( )->GET_COLUMN( 'ID_PELICULA' )->SET_MEDIUM_TEXT( 'Cdigo de pelcula' ). VAR_REF_TABPELICULA->GET_COLUMNS( )->GET_COLUMN( 'ID_PELICULA' )->SET_LONG_TEXT( 'Cdigo de pelcula' ). VAR_REF_TABPELICULA->GET_COLUMNS( )->GET_COLUMN( 'ID_PELICULA' )->SET_OUTPUT_LENGTH( 15 ). VAR_REF_TABPELICULA->GET_COLUMNS( )->GET_COLUMN( 'ID_PELICULA' )->SET_ALIGNMENT( 3 ). "iNTENTANDO PONER EL CONTENIDO DE LA COLUMNA EN EL CENTRO.
VAR_REF_TABPELICULA->GET_COLUMNS( )->GET_COLUMN( 'TITULO' )->SET_SHORT_TEXT( 'Ttulo' ). VAR_REF_TABPELICULA->GET_COLUMNS( )->GET_COLUMN( 'TITULO' )->SET_MEDIUM_TEXT( 'Ttulo' ). VAR_REF_TABPELICULA->GET_COLUMNS( )->GET_COLUMN( 'TITULO' )->SET_LONG_TEXT( 'Ttulo' ).
VAR_REF_TABPELICULA->GET_COLUMNS( )->GET_COLUMN( 'ANIO' )->SET_SHORT_TEXT( 'Ao' ). VAR_REF_TABPELICULA->GET_COLUMNS( )->GET_COLUMN( 'ANIO' )->SET_MEDIUM_TEXT( 'Ao' ). VAR_REF_TABPELICULA->GET_COLUMNS( )->GET_COLUMN( 'ANIO' )->SET_LONG_TEXT( 'Ao' ).
* VAR_REF_TABPELICULA->GET_COLUMNS( )->GET_COLUMN( 'IDFK_GENERO' )->SET_SHORT_TEXT( 'Cdigo Gnero' ). VAR_REF_TABPELICULA->GET_COLUMNS( )->GET_COLUMN( 'IDFK_GENERO' )->SET_MEDIUM_TEXT( 'Cdigo Gnero' ). VAR_REF_TABPELICULA->GET_COLUMNS( )->GET_COLUMN( 'IDFK_GENERO' )->SET_LONG_TEXT( 'Cdigo Gnero' ). VAR_REF_TABPELICULA->GET_COLUMNS( )->GET_COLUMN( 'IDFK_GENERO' )->SET_OUTPUT_LENGTH( 15 ). VAR_REF_TABPELICULA->GET_COLUMNS( )->GET_COLUMN( 'IDFK_GENERO' )->SET_ALIGNMENT( 3 )."1=LEFT, 2=RIGHT, 3=CENTERED.
-
VAR_REF_TABPELICULA->GET_COLUMNS( )->GET_COLUMN( 'IDFK_DIRECTOR' )->SET_VISIBLE( abap_false ). VAR_REF_TABPELICULA->GET_COLUMNS( )->GET_COLUMN( 'MANDANTE' )->SET_VISIBLE( abap_false ).
VAR_REF_TABPELICULA->GET_DISPLAY_SETTINGS( )->SET_STRIPED_PATTERN( ABAP_ON ). VAR_REF_TABPELICULA->DISPLAY( ).
ENDCASE.