cancel
Showing results for 
Search instead for 
Did you mean: 

SAPScript Page break

Former Member
0 Kudos

Hi All,

I am working on the TO Collective Form.

In the form there is a page break based on the storage type.

I want to delete the page break.

Here is the code.

/: IF &LTAP-VLBER& EQ '001'

/: IF &PAGE& NE 1

/: IF &W_VLTYP& NE &LTAP-VLTYP&

/: NEW-PAGE

/: DEFINE &W_VLTYP& := &LTAP-VLTYP&

/: ENDIF

/: ENDIF

/: ELSE

/: IF &PAGE& NE 1

/: IF &W_VLTYP& NE &LTAP-VLBER&

/: NEW-PAGE

/: DEFINE &W_VLTYP& := &LTAP-VLBER&

/: ENDIF

/: ENDIF

/: ENDIF

I tried removing the NEW-PAGE and activated and excuted. But still it takes page break.

Urgent

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

This looks like a Report program. Are you sure that its calling a form? What output type do you think it is used for?

venkata_ramisetti
Active Contributor
0 Kudos

Hi,

Yes, It exists in the report program only.

Please double click on the below exit in the program RLKOMM40.

table IRLDRC contains form name.

CALL CUSTOMER-FUNCTION '001'

TABLES XRLDRC = IRLDRC

XVBLKK = IVBLKK

XVBLKP = IVBLKP

XSERNR = ISERNR

XRLDRH = IRLDRH

XRLDRI = IRLDRI

XRLDRP = IRLDRP

XRLDRU = IRLDRU

XT329P = IT329P

XRESB = IRESB

XRLVEK = IRLVEK

XREFTAB = REFTAB

CHANGING

C_T312S = T312S

C_LESCH = LESCH

C_LETASCH = LETASCH

C_LEINH = LEINH

C_SINGLE = PRINT_SINGLE

C_PO = PRINT_PO

C_SU = PRINT_SU

C_LABEL = PRINT_LABEL

C_MULTI = PRINT_MULTI

C_MULTI_REF = PRINT_MULTI_REF

C_HUMLA = PRINT_HU

C_PRINT_OK = PRINT_OK_EXIT.

Thanks,

Ramakrishna

Former Member
0 Kudos

It call the correct form name "ZMTOCOLL02". It is copied from the standard SAPscript LAYOUT "LVSTALISTE".

In debugging also I am not able to find where exactly the page break is happening.

Thanks,

venkata_ramisetti
Active Contributor
0 Kudos

Hi,

It is possible to tigger NEW PAGE from the program also using function module CONTROL_FORM.

Can you please check your print program for function module CONTROL_FORM.

If you don't find this, then we can surely say that it is not issue with the NEW-PAGE event.

Thanks,

Ramakrishna

Former Member
0 Kudos

I could not find the CONTROL_FORM in the print program.

For example: I am trying to print TO Collective from from LX21. The Subroutine of the SAPScript is:

PROGRAM zmsperforms_transfer_order .

*Constants

CONSTANTS : locl_space(1) VALUE space,

locl_num TYPE i VALUE 20,

locl_meinh(2) TYPE c VALUE 'CS',

locl_slash(1) TYPE c VALUE '/',

locl_contn(1) TYPE c VALUE '-'.

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

  • F O R M S

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

&----


*& Form F_WORDWRAP_MAKTX

&----


  • This Form is used to Warp Material description

*

----


  • --> INT_INVAL Internal table of type itcsy for Input parameters

*

  • <-- INT_OUTVAL Internal table of type itcsy for Output parameters

----


FORM f_wordwrap_maktx TABLES int_inval STRUCTURE itcsy

int_outval STRUCTURE itcsy.

  • Data Declaration

DATA : maktx_wa LIKE ltap-maktx, " Material description

loc_outline1(21) TYPE c, " Output line 1

loc_outline2(20) TYPE c. " Output line 2

*Clear

CLEAR: maktx_wa,

loc_outline1,

loc_outline1,

int_outval.

  • Read input table for Input parameter

READ TABLE int_inval INDEX 1.

  • If read successful

IF sy-subrc EQ 0.

MOVE int_inval-value TO maktx_wa.

ENDIF.

*Wrap material description into first two variable

loc_outline1 = maktx_wa(20).

loc_outline2 = maktx_wa+20(20).

*If 19th position of first string <> space and first position of

*second string is space concatenate '-' i.e continued sign with first

*string .

IF loc_outline1+19(1) NE ' ' AND loc_outline2(1) EQ ''.

CONCATENATE loc_outline1 locl_contn INTO loc_outline1.

ENDIF.

  • Modify output table

READ TABLE int_outval WITH KEY 'W_OUT_LINE1'. " Index 1

  • If read successful

IF sy-subrc EQ 0.

MOVE loc_outline1 TO int_outval-value.

MODIFY int_outval INDEX sy-tabix.

ENDIF.

READ TABLE int_outval WITH KEY 'W_OUT_LINE2'. " Index 2

  • If read successful

IF sy-subrc EQ 0.

MOVE loc_outline2 TO int_outval-value.

MODIFY int_outval INDEX sy-tabix.

ENDIF.

  • ENDIF.

ENDFORM.

*<< End of Form F_WORDWRAP_MAKTX >>

&----


*& Form F_GET_NDC

&----


  • This Form is used to fetch International article number from Mara

  • table.

----


  • --> INT_INVAL Internal table of type itcsy for Input parameters

*

  • <-- INT_OUTVAL Internal table of type itcsy for Output parameters

----


FORM f_get_ndc TABLES int_inval STRUCTURE itcsy

int_outval STRUCTURE itcsy.

  • Data declaration

DATA : ean11_wa LIKE mara-ean11, " International Article number

matnr_wa LIKE ltap-matnr. " Material Number

  • Clear

CLEAR: ean11_wa,

matnr_wa,

int_outval.

  • Read input table for Input parameter

READ TABLE int_inval INDEX 1.

*If read successful

IF sy-subrc = 0.

  • Convert the material number to input format.

CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'

EXPORTING

input = int_inval-value

IMPORTING

output = matnr_wa.

ENDIF.

  • Fetch International Article number from mara for material number

SELECT SINGLE ean11 INTO (ean11_wa)

FROM mara

WHERE matnr = matnr_wa.

  • if found

IF sy-subrc = 0.

  • read and modify output table

READ TABLE int_outval INDEX 1.

  • If read successful

IF sy-subrc EQ 0.

  • MOVE ean11_wa TO int_outval-value.

WRITE ean11_wa TO int_outval-value.

MODIFY int_outval INDEX sy-tabix.

ENDIF.

ENDIF.

ENDFORM.

&----


*& Form F_GET_CASE_QUANTITY

&----


  • This Form is used for Case Quantity Conversion

----


  • --> INT_INVAL Internal table of type itcsy for Input parameters

*

  • <-- INT_OUTVAL Internal table of type itcsy for Output parameters

----


FORM f_get_case_quantity TABLES int_inval STRUCTURE itcsy

int_outval STRUCTURE itcsy.

  • Data declaration

DATA : loc_qty(12) TYPE c, " Qty

loc_caseqty(24) TYPE c, " Case Quantity

matnr_wa LIKE ltap-matnr, " Material number

umrez_wa LIKE marm-umrez, " Numerator for Conversion

nsolm_wa LIKE ltap-nsolm, " Destination target quantity

loc_div TYPE i, " Div

loc_mod TYPE i, " Mod

loc_var1(10) TYPE c, " temp variable

loc_var2(4) TYPE c, " temp variable

loc_var3(10) TYPE c. " Temp variable

  • Clear

CLEAR: loc_qty,

loc_caseqty,

matnr_wa,

umrez_wa,

nsolm_wa,

int_outval,

loc_div,

loc_mod,

loc_var1,

loc_var2,

loc_var3.

  • Read input table for input parameter Material number

READ TABLE int_inval WITH KEY 'W_MATNR'.

IF sy-subrc = 0.

  • Convert the material number to input format.

CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'

EXPORTING

input = int_inval-value

IMPORTING

output = matnr_wa.

ENDIF.

  • Clear work area

CLEAR int_inval.

  • Read input table for input parameter Dest target Qty

READ TABLE int_inval WITH KEY 'W_NSOLM'.

*If successful

IF sy-subrc EQ 0.

IF int_inval-value NA sy-abcde.

MOVE int_inval-value TO nsolm_wa.

ENDIF.

ENDIF.

*Clear

CLEAR int_inval.

  • Fetch Numerator for Conversion to Base Units of Measure form mara for

  • material number and AuM

SELECT SINGLE umrez INTO (umrez_wa)

FROM marm

WHERE matnr = matnr_wa AND meinh = locl_meinh. "(CASE)

  • If found

IF sy-subrc = 0.

*move work area to respective fields

loc_div = nsolm_wa DIV umrez_wa.

loc_mod = nsolm_wa MOD umrez_wa.

loc_var1 = loc_div.

loc_var2 = loc_mod.

loc_var3 = umrez_wa.

*condense

CONDENSE loc_var1.

CONDENSE loc_var2.

CONDENSE loc_var3.

*Concatenate

CONCATENATE loc_var2 locl_slash loc_var3 INTO loc_qty.

CONCATENATE loc_var1 loc_qty INTO loc_caseqty

SEPARATED BY space.

  • Read and modify output table

READ TABLE int_outval INDEX 1.

  • If read successful

IF sy-subrc EQ 0.

MOVE loc_caseqty TO int_outval-value.

MODIFY int_outval INDEX sy-tabix.

ENDIF.

*--


Added by Rajib Date : 03/19/2003--


*If no records found in MARM pass nothing to output field

*rather than 0 xx/ xx

ELSE.

MOVE space TO int_outval-value.

MODIFY int_outval INDEX sy-tabix.

*--


End of Addition by Rajib--


ENDIF.

ENDFORM.

&----


*& Form F_CUST_ADRC

&----


  • This Form is used to get the Customer Information

*

----


  • --> INT_INVAL Internal table of type itcsy for Input parameters

*

  • <-- INT_OUTVAL Internal table of type itcsy for Output parameters

----


FORM f_cust_adrc TABLES int_inval STRUCTURE itcsy

int_outval STRUCTURE itcsy.

  • Data Declaration

DATA : w_nlpla LIKE ltap-nlpla, " Delivery Doc. No.

w_kunnr(10) TYPE c, " Output line 1

w_name1(35) TYPE c, " Output line 1

w_name2(35) TYPE c, " Output line 1

w_stras(35) TYPE c, " Output line 1

w_ort01(35) TYPE c, " Output line 1

w_regio(3) TYPE c, " Output line 1

w_pstlz(10) TYPE c, " Output line 1

loc_outline2(20) TYPE c. " Output line 2

*Clear

CLEAR: w_nlpla,

w_kunnr,

w_name1,

w_name2,

w_stras,

w_ort01,

w_regio,

w_pstlz.

  • Read input table for Input parameter

READ TABLE int_inval INDEX 1.

  • If read successful

IF sy-subrc EQ 0.

MOVE int_inval-value TO w_nlpla.

ENDIF.

SELECT SINGLE kunnr FROM likp

INTO w_kunnr

WHERE vbeln = w_nlpla.

IF sy-subrc EQ 0.

SELECT SINGLE name1 name2 stras

ort01 regio pstlz

FROM kna1

INTO (w_name1, w_name2, w_stras,

w_ort01, w_regio, w_pstlz)

WHERE kunnr = w_kunnr.

ENDIF.

IF sy-subrc EQ 0.

    • Modify output table

READ TABLE int_outval WITH KEY 'W_NAME1'. " Index 1

    • If read successful

IF sy-subrc EQ 0.

MOVE w_name1 TO int_outval-value.

MODIFY int_outval INDEX sy-tabix.

ENDIF.

READ TABLE int_outval WITH KEY 'W_NAME2'. " Index 2

    • If read successful

IF sy-subrc EQ 0.

MOVE w_name2 TO int_outval-value.

MODIFY int_outval INDEX sy-tabix.

ENDIF.

READ TABLE int_outval WITH KEY 'W_STRAS'. " Index 3

    • If read successful

IF sy-subrc EQ 0.

MOVE w_stras TO int_outval-value.

MODIFY int_outval INDEX sy-tabix.

ENDIF.

READ TABLE int_outval WITH KEY 'W_ORT01'. " Index 4

    • If read successful

IF sy-subrc EQ 0.

MOVE w_ort01 TO int_outval-value.

MODIFY int_outval INDEX sy-tabix.

ENDIF.

READ TABLE int_outval WITH KEY 'W_REGIO'. " Index 5

    • If read successful

IF sy-subrc EQ 0.

MOVE w_regio TO int_outval-value.

MODIFY int_outval INDEX sy-tabix.

ENDIF.

READ TABLE int_outval WITH KEY 'W_PSTLZ'. " Index 6

    • If read successful

IF sy-subrc EQ 0.

MOVE w_pstlz TO int_outval-value.

MODIFY int_outval INDEX sy-tabix.

ENDIF.

READ TABLE int_outval WITH KEY 'W_KUNNR'. " Index 7

    • If read successful

IF sy-subrc EQ 0.

MOVE w_kunnr TO int_outval-value.

MODIFY int_outval INDEX sy-tabix.

ENDIF.

ENDIF.

ENDFORM.

*<< End of Form F_CUST_ADRC >>

&----


*& Form F_PAGE_NO

&----


  • This Form is used to get the Current and Total Page No.information

*

----


  • --> INT_INVAL Internal table of type itcsy for Input parameters

*

  • <-- INT_OUTVAL Internal table of type itcsy for Output parameters

----


FORM f_page_no TABLES int_inval STRUCTURE itcsy

int_outval STRUCTURE itcsy.

  • Data Declaration

DATA : w_refnr LIKE ltak-refnr, " Group No.

w_vbeln LIKE ltak-vbeln, " Sls & Dist Doc No.

w_page_from(10) TYPE c, " Page From.

w_page_total(10) TYPE c, " Page To.

w_page_flag(1) TYPE c, " Page Flag

w_frmpage LIKE zmmtopage-frmpage, " Page From.

w_totpage LIKE zmmtopage-totpage. " Page To.

  • Table Declaration

TABLES:

zmmtopage. "Transfer Order Collective Page Info Holder

*Clear

CLEAR: w_refnr,

w_vbeln,

w_page_from,

w_page_total,

w_page_flag.

  • Read input table for Input parameter

READ TABLE int_inval WITH KEY 'LTAK-REFNR'. " Index 1

    • if read successful

IF sy-subrc EQ 0.

MOVE int_inval-value TO w_refnr.

ENDIF.

  • Read input table for Input parameter

READ TABLE int_inval WITH KEY 'LTAK-VBELN'. " Index 2

    • if read successful

IF sy-subrc EQ 0.

CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'

EXPORTING

input = int_inval-value

IMPORTING

output = w_vbeln.

ENDIF.

SELECT SINGLE frmpage totpage FROM zmmtopage

INTO (w_frmpage, w_totpage)

WHERE refnr = w_refnr

AND vbeln = w_vbeln .

IF sy-subrc = 0.

w_page_from = w_frmpage + 1.

w_page_total = w_totpage.

w_page_flag = 'Y'.

zmmtopage-refnr = w_refnr.

zmmtopage-vbeln = w_vbeln.

zmmtopage-frmpage = w_page_from.

zmmtopage-totpage = w_page_total.

IF zmmtopage-frmpage <> zmmtopage-totpage.

MODIFY zmmtopage.

ELSE.

DELETE zmmtopage.

ENDIF.

ENDIF.

    • Modify output table

READ TABLE int_outval WITH KEY 'W_PAGE_FROM'. " Index 1

    • If read successful

IF sy-subrc EQ 0.

MOVE w_page_from TO int_outval-value.

MODIFY int_outval INDEX sy-tabix.

ENDIF.

READ TABLE int_outval WITH KEY 'W_PAGE_TOTAL'. " Index 2

    • If read successful

IF sy-subrc EQ 0.

MOVE w_page_total TO int_outval-value.

MODIFY int_outval INDEX sy-tabix.

ENDIF.

READ TABLE int_outval WITH KEY 'W_PAGE_FLAG'. " Index 3

    • If read successful

IF sy-subrc EQ 0.

MOVE w_page_flag TO int_outval-value.

MODIFY int_outval INDEX sy-tabix.

ENDIF.

ENDFORM.

*<< End of Form F_Page_No >>

&----


*& Form F_PICK_PROCESS_BC

&----


  • This Form is used to get the BAR CODE FOR PICK PROCESS

*

----


  • --> INT_INVAL Internal table of type itcsy for Input parameters

*

  • <-- INT_OUTVAL Internal table of type itcsy for Output parameters

----


FORM F_PICK_PROCESS_BC TABLES int_inval STRUCTURE itcsy

int_outval STRUCTURE itcsy.

TYPES:

BEGIN OF s_table_layout,

w_vltyp LIKE ltap-vltyp, " Storage type

w_vlber LIKE ltap-vlber, " Storage Sec."2005-0374

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

w_pikres LIKE zctpb-pikres, " Reserve/Pack "CC2006-

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

END OF s_table_layout.

DATA:

int_record TYPE STANDARD TABLE OF s_table_layout WITH HEADER

LINE.

    • Data Declaration

DATA : w_lgnum LIKE ltak-lgnum, " Warehouse No.

w_lgtor LIKE ltak-lgtor, " Door for warehouse

w_vbeln LIKE ltak-vbeln, " Sls & Dist Doc No

w_tanum LIKE ltak-tanum, " Transfer order No.

w_out_line1_bc(20) TYPE c, " Out Put Line

w_store_type(1) TYPE c, " Store Type

w_pack_st LIKE zvpack_assign-packing_station. " Pack Station

**Clear

CLEAR: w_lgtor,

w_vbeln.

    • Read input table for Input parameter

READ TABLE int_inval WITH KEY 'W_LGNUM'. " Index 1

      • if read successful

IF sy-subrc EQ 0.

MOVE int_inval-value TO w_lgnum.

ENDIF.

*

    • Read input table for Input parameter

READ TABLE int_inval WITH KEY 'W_LGTOR'. " Index 2

      • if read successful

IF sy-subrc EQ 0.

MOVE int_inval-value TO w_lgtor.

ENDIF.

*

    • Read input table for Input parameter

READ TABLE int_inval WITH KEY 'W_VBELN'. " Index 3

      • if read successful

IF sy-subrc EQ 0.

CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'

EXPORTING

input = int_inval-value

IMPORTING

output = w_vbeln.

ENDIF.

    • Read input table for Input parameter

READ TABLE int_inval WITH KEY 'W_TANUM'. " Index 4

      • if read successful

IF sy-subrc EQ 0.

CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'

EXPORTING

input = int_inval-value

IMPORTING

output = w_tanum.

ENDIF.

If w_lgtor = 'PAR'.

  • Begin of DELETE "2005-0469

  • Select bVLTYP bVLBER "2005-0374

  • into (int_record-w_vltyp, int_record-w_vlber) "2005-0374

  • from LTAK as a

  • inner join LTAP as b

  • on algnum = blgnum

  • and atanum = btanum

  • where a~lgnum = w_lgnum

  • and a~vbeln = w_vbeln.

  • End of DELETE "2005-0469

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

Select TANUM "2005-0469

into w_tanum "2005-0469

FROM LTAK "2005-0469

WHERE LGNUM = w_lgnum "2005-0469

AND VBELN = w_vbeln. "2005-0469

Select VLTYP VLBER "2005-0469

into (int_record-w_vltyp, int_record-w_vlber) "2005-0469

FROM LTAP "2005-0469

WHERE LGNUM = w_lgnum "2005-0469

AND TANUM = w_tanum. "2005-0469

***********CC2006-**************************************************

  • SELECT

  • PIKRES into (int_record-w_pikres) FROM ZCTPB

  • WHERE lgnum = w_lgnum

  • AND VLTYP = int_record-w_vltyp

  • AND VLBER = int_record-w_vlber.

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

append int_record.

clear int_record.

ENDSELECT. "2005-0469

ENDSELECT.

  • ENDSELECT.

Else.

SELECT VLTYP VLBER "2005-0374

into (int_record-w_vltyp, int_record-w_vlber) "2005-0374

FROM LTAP

WHERE LGNUM = w_lgnum

AND TANUM = w_tanum.

***********CC2006-**************************************************

  • SELECT PIKRES into (int_record-w_pikres) FROM ZCTPB

  • WHERE lgnum = w_lgnum

  • AND vltyp = int_record-w_vltyp

  • AND vlber = int_record-w_vlber.

*

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

append int_record.

clear int_record.

ENDSELECT.

  • ENDSELECT.

Endif.

SORT int_record BY w_vltyp w_vlber ASCENDING. "2005-0374

DELETE ADJACENT DUPLICATES FROM int_record "2005-0374

COMPARING w_vltyp w_vlber. "2005-0374

***

w_out_line1_bc(3) = w_lgtor.

w_out_line1_bc+3(6) = '000000'.

***

LOOP at int_record.

If int_record-w_vlber eq '001'. "2005-0374

w_store_type = int_record-w_vltyp+2(1).

else . "2005-0374

w_store_type = int_record-w_vlber+2(1). "2005-0374

Endif . "2005-0374

Check int_record-w_vltyp+1(1) eq 'P' "2005-0320

Or int_record-w_vltyp+2(1) eq 'P'. "2005-0374

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

  • Check int_record-w_pikres eq 'P'.

If w_store_type = '1'.

w_out_line1_bc+3(1) = w_store_type.

Endif.

If w_store_type = '2'.

w_out_line1_bc+4(1) = w_store_type.

Endif.

If w_store_type = '3'.

w_out_line1_bc+5(1) = w_store_type.

Endif.

If w_store_type = '4'.

w_out_line1_bc+6(1) = w_store_type.

Endif.

If w_store_type = '5'.

w_out_line1_bc+7(1) = w_store_type.

Endif.

If w_store_type = '6'.

w_out_line1_bc+8(1) = w_store_type.

Endif.

ENDLOOP.

If w_lgtor = 'LTL'.

SELECT single PACKING_STATION FROM ZVPACK_ASSIGN

INTO w_pack_st

WHERE VBELN = w_vbeln.

w_out_line1_bc9(3) = w_pack_st1(3).

Else.

w_out_line1_bc+9(3) = '000'.

Endif.

      • Modify output table

READ TABLE int_outval WITH KEY 'W_OUT_LINE1_BC'. " Index 1

      • If read successful

IF sy-subrc EQ 0.

MOVE w_out_line1_bc TO int_outval-value.

MODIFY int_outval INDEX sy-tabix.

ENDIF.

*

ENDFORM.

*

*<< End of Form F_PICK_PROCESS_BC >>

&----


*& Form F_SHIP_INSTRUCTIONS "2005-0374

&----


  • This Form is used to get the Shipping Instructions

*

----


  • --> INT_INVAL Internal table of type itcsy for Input parameters

*

  • <-- INT_OUTVAL Internal table of type itcsy for Output parameters

----


FORM f_ship_instructions TABLES int_inval STRUCTURE itcsy "2005-0374

int_outval STRUCTURE itcsy.

  • Data Declaration

DATA : w_nlpla LIKE ltap-nlpla ," Delivery Doc. No.

w_vsbed(02) TYPE c ," Ship.Conditions

w_vtext(20) TYPE c ," Ship.Cond. Desc.

w_sdabw(04) TYPE c ," Sp.Proc.Indicator

w_bezei(40) TYPE c ," Sp.Proc.Ind. Desc.

w_line1(55) TYPE c ," Output line 1

w_line2(55) TYPE c ," Output line 2

w_line3(55) TYPE c ," Output line 3

w_line4(55) TYPE c ," Output line 4

w_line5(55) TYPE c ," Output line 5

w_print TYPE c ," Flag Print 'X'/' '

w_tname Like THEAD-TDNAME.

Data : Int_Text LIKE TLINE

OCCURS 0

WITH HEADER LINE .

*Clear

CLEAR: w_nlpla,

w_print,

w_vsbed,

w_vtext,

w_sdabw,

w_bezei,

w_line1,

w_line2,

w_line3,

w_line4,

w_line5,

w_tname,

Int_text[].

  • Read input table for Input parameter

READ TABLE int_inval INDEX 1 .

IF sy-subrc Is Initial .

MOVE int_inval-value To w_nlpla .

ENDIF .

SELECT SINGLE vsbed sdabw

FROM likp

INTO (w_vsbed, w_sdabw)

WHERE vbeln Eq w_nlpla .

IF sy-subrc Is Initial .

*

If Not w_vsbed Is Initial .

SELECT

SINGLE vtext

FROM tvsbt

INTO w_vtext

WHERE vsbed Eq w_vsbed

AND spras Eq sy-langu .

Endif .

If Not w_sdabw Is Initial .

SELECT

SINGLE bezei

FROM tvsakt

INTO w_bezei

WHERE sdabw Eq w_sdabw

AND spras Eq sy-langu .

Endif .

Move w_nlpla To w_tname .

CALL FUNCTION 'READ_TEXT'

EXPORTING

ID = '0012'

LANGUAGE = Sy-Langu

NAME = w_tname

OBJECT = 'VBBK'

TABLES

LINES = Int_Text

EXCEPTIONS

OTHERS = 8 .

IF SY-SUBRC Is Initial .

Clear Int_Text .

Read Table Int_Text Index 1 .

MOVE Int_Text-tdline To w_line1 .

Clear Int_Text .

Read Table Int_Text Index 2 .

MOVE Int_Text-tdline To w_line2 .

Clear Int_Text .

Read Table Int_Text Index 3 .

MOVE Int_Text-tdline To w_line3 .

Clear Int_Text .

Read Table Int_Text Index 4 .

MOVE Int_Text-tdline To w_line4 .

Clear Int_Text .

Read Table Int_Text Index 5 .

MOVE Int_Text-tdline To w_line5 .

ENDIF .

IF w_line1 Ne Space Or

w_line2 Ne Space Or

w_line3 Ne Space Or

w_line4 Ne Space Or

w_line5 Ne Space Or

w_vsbed Ne '03' Or

w_sdabw Ne Space .

w_print = 'X' .

ENDIF .

  • Modify output table

READ TABLE int_outval WITH KEY 'W_PRINT' .

IF sy-subrc Is Initial .

MOVE w_print TO int_outval-value .

MODIFY int_outval INDEX sy-tabix .

ENDIF .

READ TABLE int_outval WITH KEY 'W_VSBED' .

IF sy-subrc Is Initial .

MOVE w_vsbed TO int_outval-value .

MODIFY int_outval INDEX sy-tabix .

ENDIF .

READ TABLE int_outval WITH KEY 'W_VTEXT' .

IF sy-subrc Is Initial .

MOVE w_vtext TO int_outval-value .

MODIFY int_outval INDEX sy-tabix .

ENDIF .

READ TABLE int_outval WITH KEY 'W_SDABW' .

IF sy-subrc Is Initial .

MOVE w_sdabw TO int_outval-value .

MODIFY int_outval INDEX sy-tabix .

ENDIF .

READ TABLE int_outval WITH KEY 'W_BEZEI' .

IF sy-subrc Is Initial .

MOVE w_bezei TO int_outval-value .

MODIFY int_outval INDEX sy-tabix .

ENDIF .

READ TABLE int_outval WITH KEY 'W_LINE1' .

IF sy-subrc Is Initial .

MOVE w_line1 TO int_outval-value .

MODIFY int_outval INDEX sy-tabix .

ENDIF .

READ TABLE int_outval WITH KEY 'W_LINE2' .

IF sy-subrc Is Initial .

MOVE w_line2 TO int_outval-value .

MODIFY int_outval INDEX sy-tabix .

ENDIF .

READ TABLE int_outval WITH KEY 'W_LINE3' .

IF sy-subrc Is Initial .

MOVE w_line3 TO int_outval-value .

MODIFY int_outval INDEX sy-tabix .

ENDIF .

READ TABLE int_outval WITH KEY 'W_LINE4' .

IF sy-subrc Is Initial .

MOVE w_line4 TO int_outval-value .

MODIFY int_outval INDEX sy-tabix .

ENDIF .

READ TABLE int_outval WITH KEY 'W_LINE5' .

IF sy-subrc Is Initial .

MOVE w_line5 TO int_outval-value .

MODIFY int_outval INDEX sy-tabix .

ENDIF .

ENDIF .

ENDFORM . "2005-0374

*<< End of Form F_SHIP_INSTRUCTIONS >>

&----


*& Form LAST_3

&----


  • This Form is used to get the Last 3 digits of Delivery Number

*

----


FORM LAST_3 TABLES int_inval STRUCTURE itcsy int_outval STRUCTURE itcsy.

*DATA: last_3(3) type c.

DATA: w_vbeln type ltak-vbeln.

  • Read input table for Input parameter

READ TABLE int_inval with key name = 'LTAK-VBELN' .

check sy-subrc eq 0 .

SHIFT int_inval-value left deleting leading space.

w_vbeln = int_inval-value.

CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'

EXPORTING

INPUT = w_vbeln

IMPORTING

OUTPUT = w_vbeln

.

READ TABLE int_outval index 1.

int_outval-value = w_vbeln+7(3).

modify int_outval index 1.

ENDFORM.

Former Member
0 Kudos

HI Ramesh,

Seems the /: NEW-PAGE is being triggered from some other routine also. Please check.

Regards,

Manish

Former Member
0 Kudos

I was using LX21 Tcode to print the form. The Print Program is RLKOMM40. This calls START_FORM. Probobly I hope this make NEW-PAGE every time.

Is there any user-exit where we can change this for this TCODE.

Please answer ASAP.

Thanks

venkata_ramisetti
Active Contributor
0 Kudos

Hi,

You can use user-exit EXIT_RLKOMM40_001.

Looks like you are not modifying the required form. Check what form is being called in the debugging.

Table parameter XRLDRC contains Form names. Check which form is being called during runtime in the debugging.

Make changes to that form.

Thanks,

Ramakrishna

Message was edited by: Ramakrishna Prasad Ramisetti

Former Member
0 Kudos

It uses the user-exit EXIT_RLKOMM40_001.

In the Include there is a following code.

  • TABLE DECLARATION

TABLES:

zmmtopage. "Transfer Order Collective Page Info Holder

  • VARIABLE DECLARATION

DATA:

wf_totpage TYPE i, "Total Page

wf_quotient TYPE i, "Quotient

wf_reminder TYPE i, "Reminder

wf_paglen TYPE i VALUE 9. "Pege Length

  • INTERNAL TABLE DECLARATION

DATA:

BEGIN OF int_topage OCCURS 0,

refnr LIKE rldri-refnr, " <- order = 1

nlpla LIKE rldri-nlpla, " <- order = 2

vltyp LIKE rldri-vltyp, " <- order = 3

vlber LIKE rldri-vlber, " <- order = 4 "001

count TYPE i, " counter

END OF int_topage.

LOOP AT xrldri.

  • Populate the internal table

int_topage-refnr = xrldri-refnr.

int_topage-nlpla = xrldri-nlpla.

int_topage-vltyp = xrldri-vltyp.

int_topage-vlber = xrldri-vlber. "001

int_topage-count = 1.

APPEND int_topage.

ENDLOOP.

SORT int_topage BY refnr nlpla vltyp vlber. "001

  • Loop at the internal table

LOOP AT int_topage.

  • Break at Storage Type/Storage Section "001

  • AT END OF vltyp. " <---------- Field in order

AT END OF vlber. " <----


Field in order SUM.

CLEAR: wf_quotient,wf_reminder.

wf_quotient = int_topage-count DIV wf_paglen.

wf_reminder = int_topage-count - ( wf_quotient * wf_paglen ).

IF wf_reminder > 0 .

wf_quotient = wf_quotient + 1.

ENDIF.

wf_totpage = wf_totpage + wf_quotient.

ENDAT.

  • Break at Delivery Number

AT END OF nlpla. " <----


Field in order 2

zmmtopage-refnr = int_topage-refnr.

zmmtopage-vbeln = int_topage-nlpla.

zmmtopage-frmpage = 0.

zmmtopage-totpage = wf_totpage.

MODIFY zmmtopage.

CLEAR: wf_totpage.

ENDAT.

ENDLOOP.

In this code there is AT END OF VLBER which is a storage section. But there is no page break.

I appreciate if any one can help me in solving this problem.

venkata_ramisetti
Active Contributor
0 Kudos

Hi ramesh,

Function modules either

L_PRINT_TO_MULTIPLE_REF (Printing of Multiple TOs)or

L_PRINT_TO_SINGLE (Printing of single TO) are being called from the print program RLKOMM40.

Check which functionmodule is being called by puuting break point before both function modules.

If you open the both functionmoduels and chekc the code, you can find that it is calling some CONTROL_FORM function modules with NEW-WINDOW.

Please check the above.

Ramakrishna

Former Member
0 Kudos

Are you sure that you changed the form in the correct language? Did you change for language DE or EN?

venkata_ramisetti
Active Contributor
0 Kudos

Hi Ramesh,

Found some thing intersting. Please check the below table field XRLDRU-GRUIG to X.

The field description RLDRU-GRUIG (Ignore control break (new page) during TO display) clearly saying that we have to set this to X.

Populate the internal table XRLDRU in the user-exit.

Hope this will solve your issue.

Thanks,

Ramakrishna

venkata_ramisetti
Active Contributor
0 Kudos

Hi,

Any updates on this issue? Did you set (XRLDRU-GRUIG to X )the variable and check the program?

Thanks,

Ramakrishna

Former Member
0 Kudos

Hi,

Thanks for your concern.

I did set the field XRLDRU-GRUIG to X. But there is no change.

Thanks,

venkata_ramisetti
Active Contributor
0 Kudos

Hi,

Did you populate TANUM and TAPOS also in the same internal table?

If not, populate those also.

Thanks,

Ramakrishna