on 10-18-2006 5:09 PM
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 <AP-VLBER& EQ '001'
/: IF &PAGE& NE 1
/: IF &W_VLTYP& NE <AP-VLTYP&
/: NEW-PAGE
/: DEFINE &W_VLTYP& := <AP-VLTYP&
/: ENDIF
/: ENDIF
/: ELSE
/: IF &PAGE& NE 1
/: IF &W_VLTYP& NE <AP-VLBER&
/: NEW-PAGE
/: DEFINE &W_VLTYP& := <AP-VLBER&
/: ENDIF
/: ENDIF
/: ENDIF
I tried removing the NEW-PAGE and activated and excuted. But still it takes page break.
Urgent
This looks like a Report program. Are you sure that its calling a form? What output type do you think it is used for?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
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
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.
*--
*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.
*--
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.
HI Ramesh,
Seems the /: NEW-PAGE is being triggered from some other routine also. Please check.
Regards,
Manish
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
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
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.
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
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
User | Count |
---|---|
85 | |
10 | |
10 | |
9 | |
7 | |
6 | |
5 | |
5 | |
4 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.