on 06-11-2017 2:11 PM
*&---------------------------------------------------------------------*
*& Report ZCS_REG
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT zcs_reg.
TABLES : kna1, knb1, bkpf.
TYPES: BEGIN OF ty_knb1,
bukrs TYPE knb1-bukrs,
kunnr TYPE knb1-kunnr,
akont TYPE knb1-akont,
END OF ty_knb1.
TYPES: BEGIN OF ty_kna1,
kunnr TYPE kna1-kunnr,
name1 TYPE kna1-name1,
land1 TYPE kna1-land1,
pstlz TYPE kna1-pstlz,
END OF ty_kna1.
TYPES: BEGIN OF ty_bkpf,
bukrs TYPE bkpf-bukrs,
gjahr TYPE bkpf-gjahr,
END OF ty_bkpf.
TYPES: BEGIN OF ty_final,
bukrs TYPE knb1-bukrs,
kunnr TYPE knb1-kunnr,
akont TYPE knb1-akont,
name1 TYPE kna1-name1,
land1 TYPE kna1-land1,
pstlz TYPE kna1-pstlz,
gjahr TYPE bkpf-gjahr,
END OF ty_final.
DATA: it_kna1 TYPE TABLE OF ty_kna1,
wa_kna1 TYPE ty_kna1.
DATA: it_knb1 TYPE TABLE OF ty_knb1,
wa_knb1 TYPE ty_knb1.
DATA: it_bkpf TYPE TABLE OF ty_bkpf,
wa_bkpf TYPE ty_bkpf.
DATA: it_final TYPE TABLE OF ty_final,
wa_final TYPE ty_final.
SELECTION-SCREEN: BEGIN OF BLOCK a WITH FRAME TITLE text-001.
SELECT-OPTIONS : p_bukrs FOR bkpf-bukrs,
p_kunnr FOR knb1-kunnr,
p_gjahr FOR bkpf-gjahr.
* PARAMETERS: P_BUKRS TYPE BKPF-BUKRS,
* P_KUNNR TYPE KNB1-KUNNR,
* P_GJAHR TYPE BKPF-GJAHR.
SELECTION-SCREEN END OF BLOCK a.
*START-OF-SELECTION.
SELECT bukrs
gjahr FROM bkpf INTO TABLE it_bkpf WHERE bukrs IN p_bukrs AND gjahr IN p_gjahr.
SELECT name1 land1 pstlz kunnr
FROM kna1 INTO TABLE it_kna1
WHERE kunnr = kna1-kunnr.
*
*SELECT KUNNR
* AKONT
* BUKRS
* FROM KNB1 INTO TABLE IT_KNB1
* FOR ALL ENTRIES IN IT_KNB1
* WHERE KUNNR = IT_KNB1-KUNNR.
*
*SELECT BUKRS
* GJAHR
* FROM BKPF INTO TABLE IT_BKPF
* FOR ALL ENTRIES IN IT_BKPF
* WHERE BUKRS = IT_BKPF-BUKRS.
* SELECT kunnr vtweg kunn2 defpa FROM knvp INTO TABLE it_knvp FOR ALL ENTRIES IN it_knvv
* WHERE vtweg = it_knvv-vtweg.
*END-OF-SELECTION.
LOOP AT it_kna1 INTO wa_kna1.
wa_final-name1 = wa_kna1-name1.
wa_final-land1 = wa_kna1-land1.
wa_final-pstlz = wa_kna1-pstlz.
READ TABLE it_knb1 INTO wa_knb1 WITH KEY kunnr = wa_kna1-kunnr.
wa_final-kunnr = wa_knb1-kunnr.
wa_final-akont = wa_knb1-akont.
ENDLOOP.
WRITE: /
sy-vline,
10 'CUSTOMER NAME',
sy-vline,
20 'COUNTRY',
sy-vline,
40 'POSTAL CODE',
sy-vline,
60 'Customer Account No.',
sy-vline,
80 'Recon Account No.'.
LOOP AT it_final INTO wa_final.
WRITE: /
sy-vline,
10 wa_final-name1,
sy-vline,
20 wa_final-land1,
sy-vline,
40 wa_final-pstlz,
sy-vline,
60 wa_final-kunnr,
sy-vline,
80 wa_final-akont,
sy-vline.
ENDLOOP.
First of all, don't use obsolete syntax as TABLES and short forms in Open SQL ...
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Why do you need to create an ABAP program for this requirement?
It can be fulfilled using SE16H and a join. If you don't have se16H, then SQVI should be a quick and easy way to display data between 3 tables.
Kind regards, Rob Dielemans
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
88 | |
23 | |
11 | |
9 | |
8 | |
5 | |
5 | |
5 | |
5 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.