Application Development and Automation 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: 
Read only

ALV GRID print problem

Former Member
0 Likes
910

Hi guys,

When I execute my report I can see all fields ok, but when I decide to print it the columns and fields are been displaced. I tried to fix with the fielcatalog but it isn't possible. Can anybody help me?

Thanks a lot

Best regards.

Ana

Hi guys,

When I execute my report I can see all fields ok, but when I decide to print it the columns and fields are been displaced. I tried to fix with the fielcatalog but it isn't possible. Can anybody help me?

Thanks a lot

Best regards.

Ana

7 REPLIES 7
Read only

Former Member
0 Likes
876

Hi ana.

How you call the alv??

Best regards

Marco

Read only

0 Likes
876

Hi Menegazzo Marco ,

I call the alv :

***fieldcatalog***

LS_FCAT-COL_POS = '1'.

LS_FCAT-FIELDNAME = 'BUKRS' .

LS_FCAT-TABNAME = 'BKPF'.

LS_FCAT-INTTYPE = 'C' .

LS_FCAT-OUTPUTLEN = '4' .

LS_FCAT-COLTEXT = 'Sociedad ' .

LS_FCAT-SELTEXT = 'Sociedad ' .

  • LS_FCAT-JUST = 'X'.

LS_FCAT-COL_OPT = ' '.

APPEND LS_FCAT TO PGT_FIELDCAT .

CLEAR LS_FCAT.

LS_FCAT-COL_POS = '2'.

LS_FCAT-FIELDNAME = 'BELNR' .

LS_FCAT-TABNAME = 'BKPF'.

LS_FCAT-INTTYPE = 'C' .

LS_FCAT-OUTPUTLEN = '10' .

LS_FCAT-DD_OUTLEN = '10'.

LS_FCAT-COLTEXT = 'Nº doc. Contable' .

LS_FCAT-SELTEXT = 'Nº doc. Contable' .

LS_FCAT-JUST = 'X'.

LS_FCAT-COL_OPT = ''.

APPEND LS_FCAT TO PGT_FIELDCAT .

CLEAR LS_FCAT.

LS_FCAT-COL_POS = '3'.

LS_FCAT-FIELDNAME = 'GJAHR' .

LS_FCAT-TABNAME = 'BKPF'.

LS_FCAT-INTTYPE = 'N' .

LS_FCAT-OUTPUTLEN = '4' .

LS_FCAT-COLTEXT = 'Ejercicio' .

LS_FCAT-SELTEXT = 'Ejercicio' .

LS_FCAT-JUST = 'X'.

LS_FCAT-COL_OPT = ' '.

APPEND LS_FCAT TO PGT_FIELDCAT .

CLEAR LS_FCAT.

**end fieldcatalog**

*layout**

PGS_LAYOUT-CWIDTH_OPT = 'X'.

PGS_LAYOUT-COL_OPT = 'X'.

*end layout**

*print*

GS_PRINT-NO_COLWOPT = 'X'.

*end print*

CALL METHOD GR_ALVGRID->SET_TABLE_FOR_FIRST_DISPLAY

EXPORTING

I_STRUCTURE_NAME = 'S_ALV'

IS_LAYOUT = GS_LAYOUT

IS_PRINT = GS_PRINT

CHANGING

IT_OUTTAB = LT_ALV[]

IT_FIELDCATALOG = GT_FIELDCAT

EXCEPTIONS

INVALID_PARAMETER_COMBINATION = 1

PROGRAM_ERROR = 2

TOO_MANY_LINES = 3

OTHERS = 4.

IF SY-SUBRC <> 0.

*--Exception handling

ENDIF.

Thanks a lot.

Read only

0 Likes
876

hi ana...

For display the alv try to use the FM REUSE_ALV_GRID_DISPLAY.


CALL FUNCTION  REUSE_ALV_GRID_DISPLAY.
  EXPORTING
     it_fieldcat                   = GT_FIELDCAT
     i_structure_name    = 'S_ALV' 
 TABLES
     t_outtab                      = LT_ALV
ENDFORM.

Regards

Marco

Read only

0 Likes
876

Sorry, but it doesn't work.

Thanks

Read only

0 Likes
876

try to launch the FM without fieldcat and structure reference, then only with the output tab

Read only

0 Likes
876

Hi ana..

The problem is how you create the fielcatalog...create it as follow ad call the alv grid with call method.


 LS_FCAT-tabname   = 'LT_ALV'.
 LS_FCAT-fieldname = 'FIELDNAME'.
 LS_FCAT-ref_field = 'FIELDNAME'. -> FIELD NAME OF REFERENCE
 LS_FCAT-ref_table = 'TABLE'.-> TABLE NAME OF REFERENCE
  APPEND LS_FCAT TO PGT_FIELDCAT.

you must write all in upper-case.

Marco

Read only

0 Likes
876

Solution: Change the fieldcatalog

***fieldcatalog***

LS_FCAT-COL_POS = '1'.

LS_FCAT-FIELDNAME = 'BUKRS' .

LS_FCAT-TABNAME = 'BKPF'. <--change it

LS_FCAT-INTTYPE = 'C' .

LS_FCAT-OUTPUTLEN = '4' .

LS_FCAT-COLTEXT = 'Sociedad ' .

LS_FCAT-SELTEXT = 'Sociedad ' .

  • LS_FCAT-JUST = 'X'.

LS_FCAT-COL_OPT = ' '.

APPEND LS_FCAT TO PGT_FIELDCAT .

CLEAR LS_FCAT.

LS_FCAT-COL_POS = '2'.

LS_FCAT-FIELDNAME = 'BELNR' .

LS_FCAT-TABNAME = 'BKPF'.

LS_FCAT-INTTYPE = 'C' .

LS_FCAT-OUTPUTLEN = '10' .

LS_FCAT-DD_OUTLEN = '10'.

LS_FCAT-COLTEXT = 'Nº doc. Contable' .

LS_FCAT-SELTEXT = 'Nº doc. Contable' .

LS_FCAT-JUST = 'X'.

LS_FCAT-COL_OPT = ''.

APPEND LS_FCAT TO PGT_FIELDCAT .

CLEAR LS_FCAT.

LS_FCAT-COL_POS = '3'.

LS_FCAT-FIELDNAME = 'GJAHR' .

LS_FCAT-TABNAME = 'BKPF'.

LS_FCAT-INTTYPE = 'N' .

LS_FCAT-OUTPUTLEN = '4' .

LS_FCAT-COLTEXT = 'Ejercicio' .

LS_FCAT-SELTEXT = 'Ejercicio' .

LS_FCAT-JUST = 'X'.

LS_FCAT-COL_OPT = ' '.

APPEND LS_FCAT TO PGT_FIELDCAT .

CLEAR LS_FCAT.

**end fieldcatalog

Thanks for all .