cancel
Showing results for 
Search instead for 
Did you mean: 

Printing a report

Former Member
0 Kudos

While printing a classical report the printer skips the pages.

It prints one page & then prints a blank page and then again prints a page & so on.

How can I rectify this problem.

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi Ashish

Can you check if this behaviour is happening only for this report or all reports for the printer...

If not, may be post your code so it can help to see if there is any problem with the code...

Regards

Eswar

Former Member
0 Kudos

here is the code for tht report :

REPORT ZNBS_LEDGER_DR1 NO STANDARD PAGE HEADING LINE-COUNT 58

LINE-SIZE 160 MESSAGE-ID zmsg.

TABLES : BSID, " Accounting : Secondary Index for Customer (Open)

BSAD, " Accounting : Secondary Index for Customer (Cleared)

KNA1, " Customer Master Table

T001. " Company Codes

DATA : BEGIN OF ITAB OCCURS 0,

KUNNR LIKE BSID-KUNNR, " Customer Code

AUGBL LIKE BSID-AUGBL, " Clearing Document

BELNR LIKE BSID-BELNR, " Document No.

BLART LIKE BSID-BLART, " Document Type

BUDAT LIKE BSID-BUDAT, " Posting Date

XBLNR LIKE BSID-XBLNR, " Reference Document Number

SGTXT LIKE BSID-SGTXT, " Item Text

SHKZG LIKE BSID-SHKZG, " Debit/Credit Indicator

WRBTR LIKE BSID-WRBTR, " Amount in document currency

DRAMT LIKE BSID-WRBTR, " Debit Amount

CRAMT LIKE BSID-WRBTR, " Credit Amount

RUBAL LIKE BSID-WRBTR, " Running Balance

VBELN LIKE VBRP-VBELN, " Billing Document

END OF ITAB.

DATA : BTAB LIKE ITAB OCCURS 0 WITH HEADER LINE.

DATA : BEGIN OF I_KNA1 OCCURS 0,

KUNNR LIKE KNA1-KUNNR, " Customer Code

NAME1 LIKE KNA1-NAME1, " Customer Name

LAND1 LIKE KNA1-LAND1, " Country Key

ORT01 LIKE KNA1-ORT01, " City

PSTLZ LIKE KNA1-PSTLZ, " Postal Code

REGIO LIKE KNA1-REGIO, " Region (State, Province, County)

STRAS LIKE KNA1-STRAS, " House number and street

TELF1 LIKE KNA1-TELF1, " First telephone number

TELFX LIKE KNA1-TELFX, " Fax Number

END OF I_KNA1.

DATA : BEGIN OF I_VBRP OCCURS 0,

VSTEL LIKE VBRP-VSTEL, " Shipping Point/Receiving Point

NAME1 LIKE T001W-NAME1, " Name

STRAS LIKE T001W-STRAS, " House number and street

ORT01 LIKE T001W-ORT01, " City

PSTLZ LIKE T001W-PSTLZ, " Postal Code

END OF I_VBRP.

DATA : DAT1 LIKE SY-DATUM,

DAT2 LIKE SY-DATUM.

DATA : OPBAL LIKE BSEG-WRBTR, " Opening Balance

CLBAL LIKE BSEG-WRBTR, " Closing Balance

O_DRAMT LIKE BSEG-WRBTR, " Dr. Amount Total for Opening

O_CRAMT LIKE BSEG-WRBTR, " Cr. Amount Total for Opening

C_DRAMT LIKE BSEG-WRBTR, " Dr. Amount Total for Closing

C_CRAMT LIKE BSEG-WRBTR, " Cr. Amount Total for Closing

ADDRESS(98) TYPE C, " Shipping Plant Address

TEXT1 TYPE STRING,

TEXT2 TYPE STRING,

TEXT3 TYPE STRING,

RUBAL LIKE BSID-WRBTR,

IDX TYPE I.

DATA : AKDAT LIKE P0008-BEGDA,

YEAR_DATE LIKE SY-DATUM.

          • SELECTION SCREEN *****

SELECTION-SCREEN : BEGIN OF BLOCK BLK WITH FRAME TITLE AK.

PARAMETER : ACNO LIKE BSID-KUNNR DEFAULT 'C01W9'. "'C05W10'

PARAMETER : CODE LIKE BSID-BUKRS OBLIGATORY DEFAULT '2000'.

SELECT-OPTIONS : OPDT FOR BSID-BUDAT.

SELECTION-SCREEN : END OF BLOCK BLK.

*LOAD-OF-PROGRAM.

  • IF SY-TCODE NE TEXT-001.

  • MESSAGE E000(ZSD1).

  • ENDIF.

----


*-- At selection screen *

----


*-- Customer Code VALIDATION

AT SELECTION-SCREEN ON ACNO.

SELECT SINGLE *

FROM KNA1

WHERE KUNNR EQ ACNO.

IF NOT SY-SUBRC IS INITIAL.

MESSAGE E000 WITH TEXT-C01. "Invalid Customer Code !

ENDIF.

*-- Company Code VALIDATION

AT SELECTION-SCREEN ON CODE.

SELECT SINGLE *

FROM T001

WHERE BUKRS EQ CODE.

IF NOT SY-SUBRC IS INITIAL.

MESSAGE E000 WITH TEXT-C02. "Invalid Company Code !

ENDIF.

*-- Data VALIDATION

AT SELECTION-SCREEN.

SELECT SINGLE * FROM BSID

WHERE BUKRS EQ CODE

AND KUNNR EQ ACNO

AND BUDAT IN OPDT

AND AUGBL EQ SPACE.

IF SY-SUBRC NE 0.

SELECT SINGLE * FROM BSAD

WHERE BUKRS EQ CODE

AND KUNNR EQ ACNO

AND BUDAT IN OPDT

AND AUGBL NE SPACE.

IF SY-SUBRC NE 0.

MESSAGE E000 WITH TEXT-C03.

ENDIF.

ENDIF.

          • INITIALIZATION *****

INITIALIZATION.

AK = 'Customer selection'.

OPDT-LOW = '20060331'.

OPDT-HIGH = '20061231'.

APPEND : OPDT.

          • START OF SELECTION *****

START-OF-SELECTION.

OPBAL = 0.

CLBAL = 0.

O_DRAMT = 0.

O_CRAMT = 0.

C_DRAMT = 0.

C_CRAMT = 0.

        • Opening Balance for Open Items ****

SELECT SUM( WRBTR ) FROM BSID INTO O_DRAMT

WHERE BUKRS EQ CODE

AND KUNNR EQ ACNO

AND SHKZG EQ 'S'

AND BUDAT LT OPDT-LOW.

SELECT SUM( WRBTR ) FROM BSID INTO O_CRAMT

WHERE BUKRS = CODE

AND KUNNR EQ ACNO

AND SHKZG = 'H'

AND BUDAT LT OPDT-LOW.

OPBAL = O_DRAMT - O_CRAMT.

O_DRAMT = 0.

O_CRAMT = 0.

        • Opening Balance for Cleared Items ****

SELECT SUM( WRBTR ) FROM BSAD INTO O_DRAMT

WHERE BUKRS EQ CODE

AND KUNNR EQ ACNO

AND SHKZG EQ 'S'

AND BUDAT LT OPDT-LOW.

SELECT SUM( WRBTR ) FROM BSAD INTO O_CRAMT

WHERE BUKRS = CODE

AND KUNNR EQ ACNO

AND SHKZG = 'H'

AND BUDAT LT OPDT-LOW.

OPBAL = OPBAL + ( O_DRAMT - O_CRAMT ).

        • Open Items ****

SELECT AUGBL BELNR BLART BUDAT XBLNR

SGTXT SHKZG WRBTR KUNNR VBELN

FROM BSID INTO CORRESPONDING FIELDS OF ITAB

WHERE BUKRS EQ CODE

AND KUNNR EQ ACNO

AND BUDAT IN OPDT

AND AUGBL EQ SPACE.

IF ITAB-SHKZG = 'H'.

ITAB-CRAMT = ITAB-WRBTR.

ITAB-DRAMT = ''.

ELSEIF ITAB-SHKZG = 'S'.

ITAB-DRAMT = ITAB-WRBTR.

ITAB-CRAMT = ''.

ENDIF.

APPEND ITAB.

ENDSELECT.

        • Cleared Items ****

SELECT AUGBL BELNR BLART BUDAT XBLNR

SGTXT SHKZG WRBTR KUNNR VBELN

FROM BSAD INTO CORRESPONDING FIELDS OF ITAB

WHERE BUKRS EQ CODE

AND KUNNR EQ ACNO

AND BUDAT IN OPDT

AND AUGBL NE SPACE.

IF ITAB-SHKZG = 'H'.

ITAB-CRAMT = ITAB-WRBTR.

ITAB-DRAMT = ''.

ELSEIF ITAB-SHKZG = 'S'.

ITAB-DRAMT = ITAB-WRBTR.

ITAB-CRAMT = ''.

ENDIF.

APPEND ITAB.

ENDSELECT.

SORT ITAB BY KUNNR BELNR.

READ TABLE ITAB INDEX 1.

IF ITAB-SHKZG = 'S'.

BTAB-RUBAL = OPBAL + ITAB-WRBTR.

ELSEIF ITAB-SHKZG = 'H'.

BTAB-RUBAL = OPBAL - ITAB-WRBTR.

ENDIF.

MOVE ITAB-KUNNR TO BTAB-KUNNR.

MOVE ITAB-BELNR TO BTAB-BELNR.

MOVE ITAB-AUGBL TO BTAB-AUGBL.

MOVE ITAB-BLART TO BTAB-BLART.

MOVE ITAB-BUDAT TO BTAB-BUDAT.

MOVE ITAB-XBLNR TO BTAB-XBLNR.

MOVE ITAB-SGTXT TO BTAB-SGTXT.

MOVE ITAB-SHKZG TO BTAB-SHKZG.

MOVE ITAB-WRBTR TO BTAB-WRBTR.

MOVE ITAB-DRAMT TO BTAB-DRAMT.

MOVE ITAB-CRAMT TO BTAB-CRAMT.

MOVE ITAB-VBELN TO BTAB-VBELN.

APPEND BTAB.

DELETE ITAB INDEX 1.

IDX = 1.

LOOP AT ITAB.

READ TABLE BTAB INDEX IDX.

IF ITAB-SHKZG = 'S'.

RUBAL = BTAB-RUBAL + ITAB-WRBTR.

ELSEIF ITAB-SHKZG = 'H'.

RUBAL = BTAB-RUBAL - ITAB-WRBTR.

ENDIF.

MOVE RUBAL TO BTAB-RUBAL.

MOVE ITAB-KUNNR TO BTAB-KUNNR.

MOVE ITAB-BELNR TO BTAB-BELNR.

MOVE ITAB-AUGBL TO BTAB-AUGBL.

MOVE ITAB-BLART TO BTAB-BLART.

MOVE ITAB-BUDAT TO BTAB-BUDAT.

MOVE ITAB-XBLNR TO BTAB-XBLNR.

MOVE ITAB-SGTXT TO BTAB-SGTXT.

MOVE ITAB-SHKZG TO BTAB-SHKZG.

MOVE ITAB-WRBTR TO BTAB-WRBTR.

MOVE ITAB-DRAMT TO BTAB-DRAMT.

MOVE ITAB-CRAMT TO BTAB-CRAMT.

MOVE ITAB-VBELN TO BTAB-VBELN.

APPEND BTAB.

IDX = IDX + 1.

ENDLOOP.

SELECT SINGLE KUNNR NAME1 LAND1 ORT01

PSTLZ REGIO STRAS TELF1 TELFX

FROM KNA1

INTO CORRESPONDING FIELDS OF I_KNA1

WHERE KUNNR EQ KNA1-KUNNR.

CONCATENATE I_KNA1-ORT01 '-' I_KNA1-PSTLZ INTO TEXT1.

CONCATENATE 'Tel :' I_KNA1-TELF1 INTO TEXT2 SEPARATED BY SPACE.

CONCATENATE 'Tel/Fax :' I_KNA1-TELFX INTO TEXT3 SEPARATED BY SPACE.

READ TABLE BTAB INDEX 1.

SELECT SINGLE J1VSTEL J2NAME1

J2STRAS J2ORT01 J2~PSTLZ

FROM VBRP AS J1

INNER JOIN T001W AS J2

ON J2WERKS EQ J1VSTEL

INTO CORRESPONDING FIELDS OF I_VBRP

WHERE VBELN EQ BTAB-VBELN.

CONCATENATE I_VBRP-NAME1 I_VBRP-STRAS I_VBRP-ORT01 I_VBRP-PSTLZ

INTO ADDRESS SEPARATED BY SPACE.

LOOP AT BTAB.

WRITE :/2 SY-VLINE, 3 BTAB-BELNR,

13 SY-VLINE, 14 BTAB-XBLNR,

26 SY-VLINE, 29 BTAB-BLART,

35 SY-VLINE, 36 BTAB-BUDAT,

46 SY-VLINE, 47 BTAB-DRAMT,

62 SY-VLINE, 63 BTAB-CRAMT,

78 SY-VLINE, 79 BTAB-RUBAL,

94 SY-VLINE, 95 BTAB-AUGBL,

105 SY-VLINE,106 BTAB-SGTXT,

156 SY-VLINE.

ULINE /2(155).

AT LAST.

  • ULINE /2(155).

SUM.

WRITE :/2 SY-VLINE, 3 'TOTAL',

13 SY-VLINE,

26 SY-VLINE,

35 SY-VLINE,

46 SY-VLINE, 47 BTAB-DRAMT,

62 SY-VLINE, 63 BTAB-CRAMT,

78 SY-VLINE,

94 SY-VLINE,

105 SY-VLINE,

156 SY-VLINE.

C_DRAMT = BTAB-DRAMT.

C_CRAMT = BTAB-CRAMT.

ENDAT.

ENDLOOP.

ULINE /2(155).

SKIP 1.

CLBAL = ( OPBAL + C_DRAMT ) - C_CRAMT.

WRITE :/2 'Closing Bal as on',DAT2, ':', CLBAL.

SKIP 2.

WRITE :/2 'Kind Regards,'.

SKIP 1.

WRITE :/2 'GKB Hi-Tech Lenses Pvt. Ltd.'.

SKIP 1.

ULINE /2(99).

WRITE :/2 SY-VLINE, 3 'Corp Add.:',

14 'GKB Hi-Tech Lenses Pvt. Ltd.',

43 '50, Tivim Industrial Estate,',

72 'Tivim Bardez, Goa - 403526.',

100 SY-VLINE.

ULINE /2(99).

*********************

TOP-OF-PAGE.

ULINE /2(99).

WRITE :/2 SY-VLINE, 3 ADDRESS CENTERED COLOR 4,

100 SY-VLINE.

ULINE /2(99).

SKIP 1.

WRITE :/2 'Customer :',22 I_KNA1-KUNNR.

WRITE :/22 I_KNA1-NAME1.

WRITE :/22 I_KNA1-STRAS.

WRITE :/22 TEXT1.

IF I_KNA1-TELF1 NE SPACE.

WRITE :/22 TEXT2.

ENDIF.

IF I_KNA1-TELFX NE SPACE.

WRITE :/22 TEXT3.

ENDIF.

DAT1 = OPDT-LOW.

DAT2 = OPDT-HIGH.

WRITE :/2 'Statement Date :', DAT1, 'to', DAT2.

SKIP 1.

WRITE :/2 'Opening Bal as on',DAT1, ':', OPBAL.

SKIP 1.

ULINE /2(155).

WRITE :/2 SY-VLINE, 3 'Doc No.',

13 SY-VLINE, 18 'Ref',

26 SY-VLINE, 27 'Doc Type',

35 SY-VLINE, 38 'Date',

46 SY-VLINE, 50 'Dr. Amt',

62 SY-VLINE, 66 'Cr. Amt',

78 SY-VLINE, 79 'Running Bal.',

94 SY-VLINE, 95 'Clear Doc.',

105 SY-VLINE,106 'Text',

156 SY-VLINE.

please get me a solution to it.

Former Member
0 Kudos

Strange, there was no problem for me when i have executed the same code on my system.

The output was continous...

Can you check by executing another report with the same printer settings???

Regards

Eswar

Former Member
0 Kudos

well the problem is i don't hav a printer here. the report is giving problem at the client place which is located in goa & i'm sitting in mumbai. so i'm unable to check any problem from the printer side. but anyways i will check it out with my user. & thank u very much.

regards.

Answers (0)