Quantcast
Channel: SCN : Document List - ABAP Development
Viewing all articles
Browse latest Browse all 935

Information's in HTML View with Interactive and Sorting

$
0
0

Input Screen: -

Enter any existing SAP Table as input and give number of records for the output of the entered table.

 

 

Output Screen: -

Based on the input it will display the all fields information’s of the SAP Table.

 

 

Column Selection: -

Columns get highlighted based on the selection and sorting con do by the help of Ascending or Descending tool button from the toolbar.

 

 

 

Interactive Information: -

Selected cell value get display as a pop-up message, mean it’s full interactive.

 

 

Coding: -

 

Main Program              : - ZPRV_HTML_ALV

Include Program           : - ZPRV_HTML_CLASS

Screen:                        : - 9000.

 

ZPRV_HTML_ALV

 

REPORT  ZPRV_HTML_ALV.
TABLES: DD02L, ABAP.
**********GET THE COLOR CODE FROM THE "http://html-color-codes.info/" WEBSITE

TYPESC_HTML(150TYPE C,
         BEGIN OF      S_HEAD,
           HEAD        TYPE CHAR50,
           WIDTH       TYPE I,
           EVEN        TYPE C,
           COLR        TYPE STRING,
           TECL        TYPE FIELDNAME,
         END OF        S_HEAD,
         TYP_HEAD      TYPE STANDARD TABLE OF S_HEAD,

         BEGIN OF      S_DD02L,
           TABNAME     TYPE TABNAME,
           DDTEXT      TYPE AS4TEXT,
         END OF        S_DD02L,
         TYP_TAB       TYPE STANDARD TABLE OF S_DD02L,

         TYP_DFIES     TYPE STANDARD TABLE OF DFIES.

DATAGIT_HTML      TYPE STANDARD TABLE OF C_HTML,
         GIT_INFO      TYPE STANDARD TABLE OF C_HTML,
         GFL_HTML      LIKE LINE OF GIT_HTML,

         GIT_HEAD      TYPE STANDARD TABLE OF S_HEAD,
         GFL_HEAD      TYPE S_HEAD,

         GIT_EVENT     TYPE CNTL_SIMPLE_EVENTS,
         GFL_EVENT     TYPE CNTL_SIMPLE_EVENT,

         GFL_DD02L     TYPE S_DD02L,

         G_RECS        TYPE I,
         G_HTML        TYPE C_HTML,
         G_URL(255)    TYPE C,

         G_UCOMM       TYPE SY-UCOMM,
         G_SELCOL      TYPE STRING,

         G_FLD         TYPE FIELDNAME,
         G_WIDTH       TYPE I,

         GIT_FLD       TYPE ABAP_COMPDESCR_TAB,
         GIT_FLD1      TYPE STANDARD TABLE OF DFIES,
         GFL_FLD1      TYPE DFIES.

TYPESTYP_HTML      TYPE STANDARD TABLE OF C_HTML.
DATACL_HVIEW      TYPE REF TO CL_GUI_HTML_VIEWER.

FIELD-SYMBOLS: <GIT>  TYPE STANDARD TABLE,
                <GFL>  TYPE ANY,
                <VAL>  TYPE ANY.

INCLUDE ZPRV_HTML_CLASS.
DATACL_HTML       TYPE REF TO CL_HTML.

RANGES: R_TABCL       FOR DD02L-TABCLASS.

DATAG_TAB         TYPE TABNAME,
         D_TAB         TYPE REF TO DATA.



INITIALIZATION.
   REFRESH: R_TABCL.
   R_TABCL-LOW = 'TRANSP'. R_TABCL-SIGN = 'I'.R_TABCL-OPTION = 'EQ'.APPEND R_TABCL.
   R_TABCL-LOW = 'POOL'R_TABCL-SIGN = 'I'.R_TABCL-OPTION = 'EQ'.APPEND R_TABCL.
   R_TABCL-LOW = 'CLUSTER'.R_TABCL-SIGN = 'I'.R_TABCL-OPTION = 'EQ'.APPEND R_TABCL.

SELECTION-SCREENBEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.

   PARAMETER:        P_TAB   TYPE TABNAME16 OBLIGATORY,
                     P_REC   TYPE I OBLIGATORY.

SELECTION-SCREENEND OF BLOCK B1.

START-OF-SELECTION.
SELECT SINGLE T~TABNAME X~DDTEXT  FROM DD02L AS T
                                   INNER JOIN DD02T AS X ON T~TABNAME EQ X~TABNAME
                                   INTO GFL_DD02L WHERE T~TABNAME EQ P_TAB
                                   AND T~TABCLASS IN R_TABCL
                                   AND X~DDLANGUAGE EQ SY-LANGU.
IF SY-SUBRC NE 0.
   MESSAGE 'Not a valid Table' TYPE 'I'.
   EXIT.
ENDIF.
IF D_TAB IS NOT INITIAL.
   FREE D_TAB.
ENDIF.
IF <GIT> IS ASSIGNED.
   UNASSIGN <GIT>.
ENDIF.

CREATE DATA D_TAB TYPE STANDARD TABLE OF (P_TAB).
ASSIGN D_TAB->* TO <GIT>.
CREATE DATA D_TAB LIKE LINE OF <GIT>.
ASSIGN D_TAB->* TO <GFL>.
IF CL_HTML IS INITIAL.
   CREATE OBJECT CL_HTML.
ENDIF.

CALL METHOD CL_HTML->M_GET_TAB_FLDS1 EXPORTING C_TAB     = P_TAB
                                      IMPORTING CIT_FLD   = GIT_FLD1.

G_HTML = ''.
CALL METHOD CL_HTML->M_HTML_HEAD      EXPORTING C_HEAD      = G_HTML
                                       CHANGING  CIT_HTML    = GIT_HTML.

REFRESH: GIT_INFO.
GFL_HTML = GFL_DD02L-DDTEXT.
APPEND GFL_HTML TO GIT_INFO.
CALL METHOD CL_HTML->M_GET_WIDTH      EXPORTING CIT_FLD     = GIT_FLD1
                                       IMPORTING C_WIDTH     = G_WIDTH.

CALL METHOD CL_HTML->M_HEADING_BOX    EXPORTING CIT_INFO    = GIT_INFO
                                                 C_HEIGHT    = 50
                                                 C_WIDTH     = G_WIDTH
                                                 C_BORDER    = 2
                                                 C_COLOR     = '#67F152'
                                       CHANGING  CIT_HTML    = GIT_HTML.


SELECT * FROM (P_TAB) INTO TABLE <GIT> UP TO P_REC ROWS.
DESCRIBE TABLE <GIT> LINES G_RECS.
IF G_RECS EQ 0.
   EXIT.
ENDIF.
CALL METHOD CL_HTML->M_CREATE_HEADING EXPORTING CIT_FLD     = GIT_FLD1.
CALL METHOD CL_HTML->M_CREATE_HEADS   EXPORTING CIT_FLD     = GIT_HEAD
                                                 C_COLOR     = '#F8E0F7'
                                       CHANGING  CIT_HTML    = GIT_HTML.


CALL METHOD CL_HTML->M_UPLOAD_INFO    EXPORTING CIT_TAB     = <GIT>
                                                 C_SELCOL    = G_SELCOL
                                                 CIT_FLD     = GIT_FLD1
                                       CHANGING  CIT_HTML    = GIT_HTML.

CALL SCREEN 9000.
*&---------------------------------------------------------------------*
*&      Module  STATUS_9000  OUTPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
module STATUS_9000 output.
   SET PF-STATUS 'HTML9000'.
   SET TITLEBAR 'HTML9000'.

   IF CL_HVIEW IS INITIAL.
     CREATE OBJECT CL_HVIEW EXPORTING PARENT = CL_GUI_CONTAINER=>DEFAULT_SCREEN.
   ENDIF.

   DESCRIBE TABLE GIT_EVENT LINES G_RECS.
   IF G_RECS EQ 0.
     CLEAR: GFL_EVENT.
     GFL_EVENT-EVENTID     = CL_HVIEW->M_ID_SAPEVENT.
     GFL_EVENT-APPL_EVENT  = 'X'.
     APPEND GFL_EVENT TO GIT_EVENT.
   ENDIF.

   CALL METHOD CL_HVIEW->SET_REGISTERED_EVENTS EXPORTING EVENTS  = GIT_EVENT.
   SET HANDLER CL_HTML->M_SAPEVENT FOR CL_HVIEW.

   CALL METHOD CL_HVIEW->LOAD_DATA
        EXPORTING  TYPE            = 'TEXT'
                   SUBTYPE         = 'HTML'
                   LANGUAGE        = SY-LANGU
        IMPORTING  ASSIGNED_URL    = G_URL
        CHANGING  DATA_TABLE      = GIT_HTML.

   CALL METHOD CL_HVIEW->SHOW_DATA EXPORTING URL  = G_URL.
endmodule.                " STATUS_9000  OUTPUT
*&---------------------------------------------------------------------*
*&      Module  USER_COMMAND_9000  INPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
module USER_COMMAND_9000 input.

   CASE G_UCOMM.
     WHEN 'BACK'.
       LEAVE TO SCREEN 0.
     WHEN 'EXIT'.
       LEAVE PROGRAM.
     WHEN 'DOWN'.
     WHEN 'ASEC'.
       IF G_SELCOL EQ SPACE.
         MESSAGE 'Select a Column for Acsending' TYPE 'I'.
         EXIT.
       ENDIF.
       G_FLD = G_SELCOL.
       SORT <GIT> BY (G_FLD) ASCENDING.
       CALL METHOD CL_HTML->M_RELOAD_WITH_CLR EXPORTING C_SELCOL = SPACE
                                                        C_COLOR  = SPACE.
       CLEAR: G_SELCOL.
     WHEN 'DESC'.
       IF G_SELCOL EQ SPACE.
         MESSAGE 'Select a Column for Decsending' TYPE 'I'.
         EXIT.
       ENDIF.
       G_FLD = G_SELCOL.
       SORT <GIT> BY (G_FLD) DESCENDING.
       CALL METHOD CL_HTML->M_RELOAD_WITH_CLR EXPORTING C_SELCOL = SPACE
                                                        C_COLOR  = SPACE.
       CLEAR: G_SELCOL.
   ENDCASE.


endmodule.                " USER_COMMAND_9000  INPUT

 


ZPRV_HTML_CLASS

 

*&---------------------------------------------------------------------*
*&  Include           ZPRV_HTML_CLASS
*&---------------------------------------------------------------------*

CLASS CL_HTML DEFINITION.

   PUBLIC SECTION.

   METHODS:    M_HTML_HEAD         IMPORTING  C_HEAD    TYPE C_HTML
                                   CHANGING    CIT_HTML  TYPE TYP_HTML.

   DATA:      P_HEIGHT            TYPE STRING,
               P_WIDTH             TYPE STRING,
               C_WIDTH             TYPE I,
               P_BORDER            TYPE STRING,
               P_COLOR             TYPE STRING,
               P_VALUE             TYPE STRING,
               P_FRAME             TYPE STRING,
               P_FRM               TYPE CNHT_URL_PREFIX,
               P_MATNR             TYPE MATNR,
               CFL_DD              TYPE DD04V,
               C_STR               TYPE CHAR2,
               C_SELCOL            TYPE STRING,
               C_SELCLR            TYPE STRING VALUE '#F4FA58',
               P_DOMAIN            TYPE DDOBJNAME,
               P_LEN               TYPE I,
               P_FLDS              TYPE STRING.

   METHODS:    M_HEADING_BOX       IMPORTING  CIT_INFO  TYPE TYP_HTML
                                               C_HEIGHT  TYPE I
                                               C_WIDTH   TYPE I
                                               C_BORDER  TYPE I
                                               C_COLOR   TYPE STRING
                                   CHANGING    CIT_HTML  TYPE TYP_HTML.

   METHODS:    M_UPLOAD_FLD        IMPORTING  VALUE    TYPE STRING
                                               C_WIDTH   TYPE I
                                               C_EVEN    TYPE C
                                               C_COLOR   TYPE STRING
                                               C_TECL    TYPE FIELDNAME
                                               C_FLDS    TYPE STRING
                                   CHANGING    CIT_FLD   TYPE TYP_HEAD.

   METHODS:    M_CREATE_HEADING    IMPORTING  CIT_FLD   TYPE TYP_DFIES.

   METHODS:    M_UPLOAD_INFO       IMPORTING  CIT_TAB   TYPE STANDARD TABLE
                                               C_SELCOL  TYPE STRING
                                               CIT_FLD   TYPE TYP_DFIES
                                   CHANGING    CIT_HTML  TYPE TYP_HTML.


   METHODS:    M_CREATE_TABLE      IMPORTING  CIT_FLD   TYPE TYP_HEAD
                                               C_COLOR   TYPE STRING
                                               C_BORDER  TYPE I
                                               C_FRAME   TYPE STRING
                                               C_EVEN    TYPE C
                                               C_ATAB    TYPE C
                                   CHANGING    CIT_HTML  TYPE TYP_HTML.

   DATA:      C_RECS              TYPE I,
               C_REM               TYPE I.
   METHODS:    M_CREATE_HEADS      IMPORTING  CIT_FLD   TYPE TYP_HEAD
                                               C_COLOR   TYPE STRING
                                   CHANGING    CIT_HTML  TYPE TYP_HTML.

   METHODS:    M_TABLE_CELL        IMPORTING  C_VALUE   TYPE STRING
                                               C_COLOR   TYPE STRING
                                               C_WIDTH   TYPE I
                                               C_EVEN    TYPE C
                                               C_ATAB    TYPE C
                                   CHANGING    CIT_HTML  TYPE TYP_HTML.

   METHODSM_CLOSE_HTML         CHANGING    CIT_HTML  TYPE TYP_HTML.

   METHODSM_SAPEVENT           FOR EVENT  SAPEVENT OF CL_GUI_HTML_VIEWER
                                   IMPORTING  ACTION FRAME GETDATA POSTDATA QUERY_TABLE.

   METHODSM_RELOAD_WITH_CLR    IMPORTING  C_COLOR   TYPE STRING
                                               C_SELCOL  TYPE STRING.

   DATA:      CL_FLD               TYPE REF TO CL_ABAP_STRUCTDESCR.
   METHODSM_GET_TAB_FLDS       IMPORTING  C_TAB     TYPE TABNAME16
                                   EXPORTING  CIT_FLD   TYPE ABAP_COMPDESCR_TAB.

   METHODS:    M_GET_TAB_FLDS1     IMPORTING  C_TAB     TYPE TABNAME16
                                   EXPORTING  CIT_FLD   TYPE TYP_DFIES.

   METHODS:    M_GET_WIDTH         IMPORTING  CIT_FLD   TYPE TYP_DFIES
                                   EXPORTING  C_WIDTH   TYPE I.

   PROTECTED SECTION.

   PRIVATE SECTION.

ENDCLASS.

CLASS CL_HTML IMPLEMENTATION.

   METHOD:    M_HTML_HEAD.
     APPEND C_HEAD TO CIT_HTML.
     CLEAR: GFL_HTML.
     GFL_HTML = '<HTML>'.
     APPEND GFL_HTML TO CIT_HTML.
     CLEAR: GFL_HTML.
     GFL_HTML = '<BODY>'.
     APPEND GFL_HTML TO CIT_HTML.
   ENDMETHOD.

   METHODM_HEADING_BOX.
     P_HEIGHT  = C_HEIGHT.
     P_BORDER  = C_BORDER.
     P_WIDTH   = C_WIDTH.
     P_COLOR   = C_COLOR.
     CONDENSE: P_HEIGHT NO-GAPS, P_BORDER NO-GAPS, P_WIDTH NO-GAPS.
     CLEAR: GFL_HTML.
     CONCATENATE '<div style="height:' P_HEIGHT  'px;width:' P_WIDTH 'px;border:' P_BORDER
     'px solid #ccc;font:26px/26px Georgia, Garamond, Serif;overflow:auto;background-color:' P_COLOR ';">' INTO GFL_HTML.
     APPEND GFL_HTML TO CIT_HTML.

     LOOP AT CIT_INFO INTO GFL_HTML.
       APPEND GFL_HTML TO CIT_HTML.
     ENDLOOP.

     GFL_HTML = '</DIV>'.
     APPEND GFL_HTML TO CIT_HTML.

   ENDMETHOD.

   METHODM_UPLOAD_FLD.
     P_LEN           = STRLEN( C_FLDS ).
     IF P_LEN EQ 5.
       P_LEN = P_LEN + 3.
     ENDIF.
     IF P_LEN GT C_WIDTH.
       GFL_HEAD-WIDTH  = P_LEN * 10.
     ELSE.
       GFL_HEAD-WIDTH  = C_WIDTH * 10.
     ENDIF.
     GFL_HEAD-EVEN   = C_EVEN.
     GFL_HEAD-HEAD   = VALUE.
     GFL_HEAD-COLR   = C_COLOR.
     GFL_HEAD-TECL   = C_TECL.
     APPEND GFL_HEAD  TO CIT_FLD.

   ENDMETHOD.

   METHODM_CREATE_HEADING.
     REFRESH: GIT_HEAD.
     DESCRIBE TABLE CIT_FLD LINES C_RECS.
     IF C_RECS EQ 0.
       EXIT.
     ENDIF.
     LOOP AT CIT_FLD INTO GFL_FLD1 WHERE FIELDNAME NE 'MANDT'.
       P_VALUE     = GFL_FLD1-SCRTEXT_L.
       P_DOMAIN    = GFL_FLD1-DOMNAME.
       C_WIDTH     = GFL_FLD1-HEADLEN.
       IF C_WIDTH EQ 2.
         C_WIDTH = 5.
       ENDIF.
       P_FLDS = GFL_FLD1-SCRTEXT_L.
       CALL METHOD M_UPLOAD_FLD  EXPORTING VALUE    = P_VALUE
                                           C_WIDTH   = C_WIDTH
                                           C_EVEN    = SPACE
                                           C_COLOR   = SPACE
                                           C_TECL    = GFL_FLD1-FIELDNAME
                                           C_FLDS    = P_FLDS
                                 CHANGING  CIT_FLD   = GIT_HEAD.
     ENDLOOP.
   ENDMETHOD.

   METHODM_UPLOAD_INFO.
     DESCRIBE TABLE CIT_TAB LINES G_RECS.
     IF G_RECS EQ 0.
       EXIT.
     ENDIF.
     LOOP AT CIT_TAB ASSIGNING <GFL>.
       REFRESH: GIT_HEAD.
       LOOP AT CIT_FLD INTO GFL_FLD1 WHERE FIELDNAME NE 'MANDT'.
         ASSIGN COMPONENT GFL_FLD1-FIELDNAME OF STRUCTURE <GFL> TO <VAL>.
         P_VALUE = <VAL>.
         P_FRAME = P_VALUE.
         IF C_SELCOL EQ GFL_FLD1-FIELDNAME.
           P_COLOR = C_SELCLR.
         ELSE.
           P_COLOR = '#F8E0F7'.
         ENDIF.
         C_WIDTH = GFL_FLD1-HEADLEN.
         IF C_WIDTH EQ 2.
           C_WIDTH = 5.
         ENDIF.
         P_FLDS = GFL_FLD1-SCRTEXT_L.
         CALL METHOD M_UPLOAD_FLD      EXPORTING VALUE    = P_VALUE
                                                 C_WIDTH   = C_WIDTH
                                                 C_EVEN    = 'X'
                                                 C_COLOR   = P_COLOR
                                                 C_TECL    = GFL_FLD1-FIELDNAME
                                                 C_FLDS    = P_FLDS
                                       CHANGING  CIT_FLD   = GIT_HEAD.
       ENDLOOP.
       CALL METHOD M_CREATE_TABLE    EXPORTING CIT_FLD   = GIT_HEAD
                                               C_COLOR   = '#F6E3CE'
                                               C_BORDER  = 2
                                               C_FRAME   = P_FRAME
                                               C_EVEN    = 'X'
                                               C_ATAB    = SPACE
                                     CHANGING  CIT_HTML  = GIT_HTML.
     ENDLOOP.

   ENDMETHOD.

   METHODM_CREATE_TABLE.
     DESCRIBE TABLE CIT_FLD LINES G_RECS.
     IF G_RECS EQ 0.
       EXIT.
     ENDIF.
     CLEAR: GFL_HTML.
     P_BORDER  = C_BORDER.
     P_FRAME   = C_FRAME.
     P_COLOR   = C_COLOR.
     CONDENSE: P_BORDER NO-GAPS, P_FRAME NO-GAPS, P_COLOR NO-GAPS.
     CONCATENATE '<TABLE BORDER ="' P_BORDER '" FRAME="' P_FRAME '">' INTO GFL_HTML.
     APPEND GFL_HTML TO CIT_HTML.
     READ TABLE CIT_FLD INTO GFL_HEAD INDEX 1.
     IF SY-SUBRC EQ 0.
       IF GFL_HEAD-EVEN = 'X'.
         CONCATENATE '<FORM method=post action=SAPEVENT:PRESS_ME?' GFL_HEAD-HEAD '>' INTO GFL_HTML.
         APPEND GFL_HTML TO CIT_HTML.
       ENDIF.
     ENDIF.
     GFL_HTML = '<TR>'.
     APPEND GFL_HTML TO CIT_HTML.

     LOOP AT CIT_FLD INTO GFL_HEAD.
       P_VALUE = GFL_HEAD-HEAD.
       G_RECS  = GFL_HEAD-WIDTH.
       IF P_VALUE EQ SPACE.
         P_VALUE = '.'.
       ENDIF.
       CALL METHOD M_TABLE_CELL EXPORTING  C_VALUE   = P_VALUE
                                           C_COLOR   = C_COLOR
                                           C_WIDTH   = G_RECS
                                           C_EVEN    = GFL_HEAD-EVEN
                                           C_ATAB    = C_ATAB
                                CHANGING  CIT_HTML  = CIT_HTML.
     ENDLOOP.

     GFL_HTML = '</TR>'.
     APPEND GFL_HTML TO CIT_HTML.
     READ TABLE CIT_FLD INTO GFL_HEAD INDEX 1.
     IF SY-SUBRC EQ 0.
       IF GFL_HEAD-EVEN = 'X'.
         GFL_HTML = '</FORM>'.
         APPEND GFL_HTML TO CIT_HTML.
       ENDIF.
     ENDIF.
     GFL_HTML = '</TABLE>'.
     APPEND GFL_HTML TO CIT_HTML.

   ENDMETHOD.

   METHODM_TABLE_CELL.
         CLEAR: GFL_HTML.
         P_COLOR   = C_COLOR.
         IF GFL_HEAD-COLR NE SPACE.
           P_COLOR = GFL_HEAD-COLR.
         ENDIF.
         P_WIDTH   = C_WIDTH.
         CONDENSE P_COLOR NO-GAPS.
         IF C_EVEN EQ 'X'.
*          CONCATENATE '<TD STYLE="width:' P_WIDTH 'px;"><FORM METHOD=GET ACTION="SAPEVENT:CLICK_ON_ME?' C_VALUE '"><INPUT TYPE=SUBMIT VALUE="'  "SUBMIT_FORM_AS_GET_METHOD
*          C_VALUE '"></TD>' INTO GFL_HTML.
           CONCATENATE '<TD STYLE="background-color:' P_COLOR ';width:' P_WIDTH 'px;"><A HREF=SAPEVENT:CLICK_ON_ME?' C_VALUE '>' C_VALUE '</A></TD>' INTO GFL_HTML.
         ELSE.
           CONCATENATE '<TD STYLE="background-color:' P_COLOR ';width:' P_WIDTH 'px;">' C_VALUE '</TD>' INTO GFL_HTML.
         ENDIF.
         APPEND GFL_HTML TO CIT_HTML.
   ENDMETHOD.


   METHODM_CLOSE_HTML.
     CLEAR: GFL_HTML.
     GFL_HTML = '</BODY>'.
     APPEND GFL_HTML TO CIT_HTML.
     CLEAR: GFL_HTML.
     GFL_HTML = '</HTML>'.
     APPEND GFL_HTML TO CIT_HTML.
   ENDMETHOD.

   METHODM_SAPEVENT.
     C_STR GETDATA.
     IF C_STR EQ 'H_'.
       C_RECS = STRLEN( GETDATA ).
       C_RECS = C_RECS - 2.
       C_SELCOL = GETDATA+2(C_RECS).
       G_SELCOL = C_SELCOL.
       TRANSLATE C_SELCOL TO  UPPER CASE.
       CALL METHOD M_RELOAD_WITH_CLR EXPORTING C_SELCOL = C_SELCOL
                                               C_COLOR  = C_SELCLR.
     ELSE.
       CLEAR: GFL_HTML.
       CONCATENATE 'Selected Value is: ' GETDATA INTO GFL_HTML SEPARATED BY SPACE.
       MESSAGE GFL_HTML TYPE 'I'.
     ENDIF.
   ENDMETHOD.

   METHODM_CREATE_HEADS.

     DESCRIBE TABLE CIT_FLD LINES G_RECS.
     IF G_RECS EQ 0.
       EXIT.
     ENDIF.
     CLEAR: C_RECS.
     LOOP AT CIT_FLD INTO GFL_HEAD.
       C_RECS = C_RECS + GFL_HEAD-WIDTH.
     ENDLOOP.
     P_WIDTH = C_RECS.
     P_COLOR = C_COLOR.
     CONDENSE: P_WIDTH NO-GAPS, P_COLOR NO-GAPS.
     CONCATENATE '<TABLE BORDER="1" WIDTH="' P_WIDTH '">' INTO GFL_HTML.
     APPEND GFL_HTML TO CIT_HTML.
     GFL_HTML = '<TR>'.
     APPEND GFL_HTML TO CIT_HTML.

     LOOP AT CIT_FLD INTO GFL_HEAD.
       P_WIDTH = GFL_HEAD-WIDTH.
       CONDENSE P_WIDTH NO-GAPS.
       CONCATENATE '<TD STYLE="background-color:' P_COLOR '"WIDTH=' P_WIDTH '>' INTO GFL_HTML.
       APPEND GFL_HTML TO CIT_HTML.
       CONCATENATE '<TABLE BORDER="0" WIDTH="' P_WIDTH '">' INTO GFL_HTML.
       APPEND GFL_HTML TO CIT_HTML.
       CONCATENATE '<FORM method=post action=SAPEVENT:PRESS_ME?H_' GFL_HEAD-TECL '>' INTO GFL_HTML.
       APPEND GFL_HTML TO CIT_HTML.
       GFL_HTML = '<TR>'.
       APPEND GFL_HTML TO CIT_HTML.
       CONCATENATE '<TD><INPUT TYPE=SUBMIT ALIGN = "CENTER" VALUE="' GFL_HEAD-HEAD '"STYLE="BACKGROUND-COLOR:' P_COLOR '; COLOR:' P_COLOR ',"WIDTH = "' P_WIDTH '">' INTO GFL_HTML.
       APPEND GFL_HTML TO CIT_HTML.
       GFL_HTML = '</TD>'.
       APPEND GFL_HTML TO CIT_HTML.
       GFL_HTML = '</TR>'.
       APPEND GFL_HTML TO CIT_HTML.
       GFL_HTML = '</FORM>'.
       APPEND GFL_HTML TO CIT_HTML.
       GFL_HTML = '</TABLE>'.
       APPEND GFL_HTML TO CIT_HTML.
       GFL_HTML = '</TD>'.
       APPEND GFL_HTML TO CIT_HTML.
     ENDLOOP.

     GFL_HTML = '</TR>'.
     APPEND GFL_HTML TO CIT_HTML.
     GFL_HTML = '</TABLE>'.
     APPEND GFL_HTML TO CIT_HTML.
   ENDMETHOD.

   METHODM_RELOAD_WITH_CLR.
     REFRESH: GIT_HTML.
     G_HTML = ''.
     CALL METHOD M_HTML_HEAD      EXPORTING C_HEAD      = G_HTML
                                  CHANGING  CIT_HTML    = GIT_HTML.

     REFRESH: GIT_INFO.
     GFL_HTML = 'Material Desciption information'.
     APPEND GFL_HTML TO GIT_INFO.

     CALL METHOD M_HEADING_BOX    EXPORTING CIT_INFO    = GIT_INFO
                                            C_HEIGHT    = 50
                                            C_WIDTH     = 1300
                                            C_BORDER    = 2
                                            C_COLOR     = '#67F152'
                                  CHANGING  CIT_HTML    = GIT_HTML.
     CALL METHOD M_CREATE_HEADING EXPORTING CIT_FLD     GIT_FLD1.
     CALL METHOD M_CREATE_HEADS   EXPORTING CIT_FLD     = GIT_HEAD
                                            C_COLOR     = '#F8E0F7'
                                  CHANGING  CIT_HTML    = GIT_HTML.

     CALL METHOD M_UPLOAD_INFO    EXPORTING CIT_TAB     = <GIT>
                                            C_SELCOL    = C_SELCOL
                                            CIT_FLD     = GIT_FLD1
                                  CHANGING  CIT_HTML    = GIT_HTML.
   ENDMETHOD.

   METHODM_GET_TAB_FLDS.
     CL_FLD ?= CL_ABAP_TYPEDESCR=>DESCRIBE_BY_NAME( C_TAB ).
     CIT_FLD = CL_FLD->COMPONENTS[].
   ENDMETHOD.

   METHODM_GET_TAB_FLDS1.
     DATA: TABNAME TYPE DDOBJNAME.
     TABNAME = C_TAB.
     CALL FUNCTION 'DDIF_FIELDINFO_GET'
       EXPORTING
         tabname              = TABNAME
         LANGU                = SY-LANGU
      TABLES
        DFIES_TAB            = CIT_FLD
      EXCEPTIONS
        NOT_FOUND            = 1
        INTERNAL_ERROR       = 2
        OTHERS              = 3.
     IF sy-subrc <> 0.

     ENDIF.

   ENDMETHOD.

   METHODM_GET_WIDTH.
     LOOP AT CIT_FLD INTO GFL_FLD1.
       C_WIDTH = C_WIDTH + ( GFL_FLD1-OUTPUTLEN * 10 ).
     ENDLOOP.

   ENDMETHOD.

ENDCLASS.

 

Screen 9000: -


 

Gui Status: -

 

 

 

 

Thanks & Regards

Praveer Kumar Sen.

 



Viewing all articles
Browse latest Browse all 935

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>