on 06-06-2007 5:28 PM
THIS SHOULD BE CHALLENGING FOR SMART-GUYS
IF I GET I AM VERY VERY HAPPY BECAUSE PAST ONE MONTH I AM
STRUGGLING WITH THIS ONE .
Hi
i am Displaying BSEG and SKAT fields in Main Window of Smart-Forms based on Document number (BELNR) . this Document numbet i am giving in Secondary window . but the problem is it is working properly for single Document number and it is not printing for Range of Document numbers .
for example if i give 10100001 to 10100002 Document numbers
in First Page for 10100001 Document number it needs to display BKPF details in one secondary window with document number and In Main Window Based on That Document Number For That page it needs to display BSEG and SKAT details in Main Window
and the process it needs to print for second page for 10100002 also
please give me the procedure how to do this one in smart-forms i am not getting for range of document numbers.
&----
*& Report ZSMARTFORM
*&
&----
*&
*&
&----
REPORT zsmart_fi1.
Tables Declaration
TABLES: lfa1,skat,bkpf,bseg,t001.
DATA: fm_name TYPE rs38l_fnam.
Internal Tables Declaration
DATA: BEGIN OF it_t001 OCCURS 0.
INCLUDE STRUCTURE t001.
DATA:END OF it_t001.
DATA: BEGIN OF it_lfa1 OCCURS 0 .
INCLUDE STRUCTURE lfa1.
DATA: END OF it_lfa1.
DATA: BEGIN OF it_skat OCCURS 0.
INCLUDE STRUCTURE skat.
DATA:END OF it_skat.
DATA: BEGIN OF it_bkpf OCCURS 0.
INCLUDE STRUCTURE bkpf.
DATA: END OF it_bkpf.
DATA: it_bkpf1 LIKE STANDARD TABLE OF bkpf
WITH HEADER LINE.
DATA: it_bseg TYPE TABLE OF bseg WITH HEADER LINE.
Data Retrieving
SELECTION-SCREEN BEGIN OF BLOCK a1 WITH FRAME .
PARAMETER : spras LIKE skat-spras.
SELECT-OPTIONS:bukrs FOR bkpf-bukrs,
belnr FOR bkpf-belnr,
gjahr FOR bkpf-gjahr.
PARAMETER rldnr LIKE bkpf-rldnr.
SELECTION-SCREEN END OF BLOCK a1.
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-100.
SELECT-OPTIONS:blart FOR bkpf-blart,
budat FOR bkpf-budat,
cpudt FOR bkpf-cpudt.
SELECTION-SCREEN END OF BLOCK b1.
belnr-sign = 'I'.
belnr-option = 'BT'.
append belnr.
SELECT bukrs belnr gjahr budat blart xblnr bldat sname
FROM bkpf
INTO CORRESPONDING FIELDS OF TABLE it_bkpf
WHERE bukrs IN bukrs AND belnr IN belnr AND gjahr IN gjahr AND budat IN budat AND GJAHR IN GJAHR .
SELECT saknr txt50
INTO CORRESPONDING FIELDS OF
TABLE it_skat
FROM skat
FOR ALL ENTRIES IN it_bseg
WHERE saknr = it_bseg-hkont.
LOOP AT it_bkpf.
SELECT bukrs belnr lifnr GJAHR zuonr hkont qbshb sgtxt mwskz qsskz dmbtr wrbtr shkzg zfbdt zterm
FROM bseg
INTO CORRESPONDING FIELDS OF it_bseg
WHERE bukrs = IT_BKPF-BUKRS AND belnr = IT_BKPF-belnr AND gjahr = IT_BKPF-gjahr .
SELECT lifnr name1 stras ort01 pstlz
INTO CORRESPONDING FIELDS OF TABLE it_lfa1
FROM lfa1
FOR ALL ENTRIES IN it_bseg
WHERE lifnr = it_bseg-lifnr.
READ TABLE it_skat WITH KEY saknr = it_bseg-hkont.
IF sy-subrc = 0.
APPEND it_bseg.
CLEAR it_bseg.
ENDIF.
ENDSELECT.
ENDLOOP.
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
formname = 'ZSMART_FI1'
VARIANT = ' '
DIRECT_CALL = ' '
IMPORTING
fm_name = fm_name
EXCEPTIONS
NO_FORM = 1
NO_FUNCTION_MODULE = 2
OTHERS = 3
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CALL FUNCTION fm_name
EXPORTING
ARCHIVE_INDEX =
ARCHIVE_INDEX_TAB =
ARCHIVE_PARAMETERS =
CONTROL_PARAMETERS =
MAIL_APPL_OBJ =
MAIL_RECIPIENT =
MAIL_SENDER =
OUTPUT_OPTIONS =
USER_SETTINGS = 'X'
IMPORTING
DOCUMENT_OUTPUT_INFO =
JOB_OUTPUT_INFO =
JOB_OUTPUT_OPTIONS =
TABLES
it_lfa1 = it_lfa1
it_skat = it_skat
it_bkpf = it_bkpf
it_bseg = it_bseg
it_t001 = it_t001
EXCEPTIONS
FORMATTING_ERROR = 1
INTERNAL_ERROR = 2
SEND_ERROR = 3
USER_CANCELED = 4
OTHERS = 5
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
clear: it_bkpf,it_bseg,it_skat,it_lfa1.
refresh: it_bkpf,it_bseg,it_skat,it_lfa1.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
83 | |
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.