Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

ALV's HEAD

Former Member
0 Kudos

................DATE...................


..DAY..

....MONTH...

..YEAR..


....02...

.......12........

...2003...

....23...

.......03........

...2000...

Can do it with alv grid (2 heads)?

Thanks

4 REPLIES 4

Former Member
0 Kudos

check the following program :

REPORT ERGP2140 LINE-SIZE 90 NO STANDARD PAGE HEADING.
*----------------------------------------------------------------------*
* Report ERGP2140: Einzeilige Liste mit hierarchischen Überschriften   *
* Entspricht: ERGO2140, 2145                                           *
*                  mit/ohne Streifenmuster (Standard),                 *
*----------------------------------------------------------------------*
* Programmversion; angelegt: 1.2.1995, Gerd Waloszek                   *
*----------------------------------------------------------------------*
* Letzte Änderung: 25.2.98, Gerd Waloszek                              *
*----------------------------------------------------------------------*

************************************************************************
************************* Global data **********************************
************************************************************************
DATA: LENGTH TYPE I VALUE 8.           " Length of list

data: tp like textpool occurs 0 with header line.

DATA: TXT_REPORT LIKE DOKHL-OBJECT.   "Reportname für Erläuterungsaufruf

DATA: BEGIN OF MYLIST OCCURS 10,       " Internal table for preparing
        E3AA(12) TYPE P DECIMALS 2,    " the list
        E3AB(12) TYPE P DECIMALS 2,
        E3BA(12) TYPE P DECIMALS 2,
        E3BB(12) TYPE P DECIMALS 2,
      END OF MYLIST.

DATA: STRIPES TYPE C VALUE ' '.        " Stripes Y/N

DATA: SEED1 TYPE I,                    " Rand number seed 1
      SEED2 TYPE I,                    " Rand number seed 2
      SEED3 TYPE I,                    " Rand number seed 3
      WIDTH TYPE I.                    " Width of list

************************************************************************
*************************** Main Program *******************************
************************************************************************

START-OF-SELECTION.
  SET PF-STATUS 'LIBS1'.
  READ TEXTPOOL SY-REPID INTO TP LANGUAGE SY-LANGU.
  LOOP AT TP WHERE ID = 'R'.
    SET TITLEBAR '001' WITH TP-entry.
    EXIT.
  ENDLOOP.

* Start seed for random number generator
  SEED1 = 123.  SEED2 = 2345. SEED3 = 23.

  PERFORM FILL_ITAB.            " Fill internal table with pseudo-data

* List output
  WIDTH = 69.                          " Width of list
  PERFORM MAIN.

************************************************************************
*************************** Form Routines ******************************
************************************************************************

*---------------------------------------------------------------------*
*       FORM MAIN                                                     *
*---------------------------------------------------------------------*
*       List output                                                   *
*---------------------------------------------------------------------*
FORM MAIN.
  PERFORM HEADING.                     " Heading
  PERFORM BODY.                        " First body
  PERFORM FINISH(ERGPHELP) USING WIDTH.
  PERFORM LEGEND(ERGPHELP)
                 USING 'X' STRIPES ' ' ' ' ' ' ' ' ' ' ' '.
ENDFORM.

*---------------------------------------------------------------------*
*       FORM FILL_ITAB                                                *
*---------------------------------------------------------------------*
*       Fills the internal table for the list output                  *
*---------------------------------------------------------------------*
FORM FILL_ITAB.
  DATA: RAN TYPE F,
        RANI TYPE I,
        RANP TYPE P DECIMALS 2.

  DO LENGTH TIMES.
    PERFORM RANDOM(ERGPHELP) USING SEED1 SEED2 SEED3 RAN.
    RANI = 1000000 * RAN.  RANP = RANI.
    MOVE RANP TO MYLIST-E3AA.

    PERFORM RANDOM(ERGPHELP) USING SEED1 SEED2 SEED3 RAN.
    RANI = 1000000 * RAN.  RANP = RANI.
    MOVE RANP TO MYLIST-E3AB.

    PERFORM RANDOM(ERGPHELP) USING SEED1 SEED2 SEED3 RAN.
    RANI = 1000000 * RAN.  RANP = RANI.
    MOVE RANP TO MYLIST-E3BA.

    PERFORM RANDOM(ERGPHELP) USING SEED1 SEED2 SEED3 RAN.
    RANI = 1000000 * RAN.  RANP = RANI.
    MOVE RANP TO MYLIST-E3BB.
    APPEND MYLIST.
  ENDDO.
ENDFORM.

*---------------------------------------------------------------------*
*       FORM HEADING                                                  *
*---------------------------------------------------------------------*
*       Writes the heading of the list                                *
*       This list has hierarchical headings                           *
*                                                                     *
*---------------------------------------------------------------------*
FORM HEADING.
DATA: WIDTH2 TYPE I.

  WIDTH2 = WIDTH - 2.                  " Width without borders

  FORMAT INTENSIFIED OFF.              " Remove any INTENSIFIED
  ULINE AT (WIDTH).                    " Upper frame border
  FORMAT COLOR COL_HEADING INTENSIFIED." Title color

  WRITE: / SY-VLINE NO-GAP.            " Left border
  WRITE: AT (WIDTH2) TEXT-U10 CENTERED NO-GAP.
  WRITE: AT WIDTH SY-VLINE.            " Right border

  ULINE AT (WIDTH).
  FORMAT COLOR COL_HEADING INTENSIFIED OFF. " Secondary title color

  WRITE: / SY-VLINE NO-GAP.            " Left border
  WRITE: (33) TEXT-V10 CENTERED NO-GAP.
  WRITE: SY-VLINE NO-GAP  .            " Middle border
  WRITE: (33) TEXT-V20 CENTERED NO-GAP.
  WRITE: AT WIDTH SY-VLINE.            " Right border
  ULINE AT (WIDTH).                    " Line below titles

  FORMAT COLOR COL_HEADING INTENSIFIED OFF. " Third title color

  WRITE: / SY-VLINE NO-GAP.            " Left border
  WRITE: (15) TEXT-W10 RIGHT-JUSTIFIED.
  WRITE: SY-VLINE NO-GAP  .            " Middle border
  WRITE: (15) TEXT-W20 RIGHT-JUSTIFIED.
  WRITE: SY-VLINE NO-GAP  .            " Middle border
  WRITE: (15) TEXT-W30 RIGHT-JUSTIFIED.
  WRITE: SY-VLINE NO-GAP  .            " Middle border
  WRITE: (15) TEXT-W40 RIGHT-JUSTIFIED.
  WRITE: AT WIDTH SY-VLINE.            " Right border
  ULINE AT (WIDTH).                    " Line below titles
ENDFORM.

*---------------------------------------------------------------------*
*       FORM BODY                                                     *
*---------------------------------------------------------------------*
*       Writes the body of the list                                   *
*---------------------------------------------------------------------*
* Important:                                                          *
* Use SY-VLINE or '|' for vertival lines                              *
* Use NO-GAP for avoiding free space behind fields                    *
* Use FORMAT COLOR COL_NORMAL INTENSIFIED OFF for light list body     *
* Use COLOR behind fields for individualized coloring                 *
*                                                                     *
* Caution: the actual field values are pure dummies!                  *
*                                                                     *
* Stripes in the list body                                            *
* If You want a striped list body, You have to set up a counter.      *
* If the counter starts with zero You have to set the body color to:  *
* even counter values: COL_NORMAL INTENSIFIED
* odd counter values: COL_NORMAL INTENSIFIED OFF
*---------------------------------------------------------------------*
FORM BODY.
  DATA: COUNT TYPE I VALUE 0,          " Loop counter for list body
        EVEN TYPE I VALUE 0.           " Checker even/odd
*       max type i value 8,            " Number of rows in list
*       helpn type p.

  LOOP AT MYLIST.
* Stripe handling
    IF STRIPES EQ ' '.                 " No Stripes
      FORMAT COLOR COL_NORMAL INTENSIFIED OFF.
    ELSE.                              " Stripes
      EVEN = COUNT MOD 2.              " Check for even/odd
      IF EVEN = '0'.
        FORMAT COLOR COL_NORMAL INTENSIFIED.
      ELSE.
        FORMAT COLOR COL_NORMAL INTENSIFIED OFF.
      ENDIF.
    ENDIF.
* List row
    WRITE: / SY-VLINE NO-GAP.
    WRITE: (16) MYLIST-E3AA NO-GAP, SY-VLINE NO-GAP.
    WRITE: (16) MYLIST-E3AB NO-GAP, SY-VLINE NO-GAP.
    WRITE: (16) MYLIST-E3BA NO-GAP, SY-VLINE NO-GAP.
    WRITE: (16) MYLIST-E3BB NO-GAP.
    WRITE: AT WIDTH SY-VLINE.
    ADD 1 TO COUNT.
  ENDLOOP.
ENDFORM.

************************************************************************
*************************** Events *************************************
************************************************************************

AT USER-COMMAND.
  CASE SY-UCOMM.
    WHEN 'ERLE'.
      TXT_REPORT = 'ERGP2140'.
      CALL FUNCTION 'ERGO_TEXT_SHOW'
           EXPORTING
                TEXTNAME       = TXT_REPORT
                ID             = 'RE'
                LANGU          = SY-LANGU
           EXCEPTIONS
                TEXT_NOT_FOUND = 01.

    WHEN 'STRI'.
      SY-LSIND = 0.
      IF STRIPES EQ 'X'.
        STRIPES = ' '.
      ELSE.
        STRIPES = 'X'.
      ENDIF.
      PERFORM MAIN.

  ENDCASE.

0 Kudos

Thanks, but is not alv...

Former Member
0 Kudos

Hi,

in TOP_OF_PAGE event display your main header using WRITE statement


................DATE...................


for 2nd part pass your fieldcatalog for column descriptions.

Regards,

Raghavendra

0 Kudos

Thanks, but it wouldn't have better aspect. The aspect of the 2 header rows must be the same.