2007 Jul 17 12:49 PM
Hi,
in this program i want customer details should be present at the top of page and after the customer details(customer number name country city) i want one more page header like sales doc, date, doc date, netwr.
These 2 headers should appear in2 diffeent colours.
Also every new customer details should start in the new page.
Plz tell me the modifications in this programf or the above requirements.
REPORT ZAC_TAB18.
T Y P E S
TYPES:
BEGIN OF TYVBAK,
VBELN TYPE VBAK-VBELN,
AUART TYPE VBAK-AUART,
AUDAT TYPE VBAK-AUDAT,
KUNNR TYPE VBAK-KUNNR,
NETWR TYPE VBAK-NETWR,
END OF TYVBAK.
D A T A D E C L A R A T I O N S
DATA:
STVBAK TYPE TYVBAK,
ITVBAK TYPE TABLE OF TYVBAK.
S E L E C T I O N S C R E E N
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
SELECT-OPTIONS:
SKUNNR FOR STVBAK-KUNNR.
SELECTION-SCREEN END OF BLOCK B1.
I N I T I A L I Z A T I O N
INITIALIZATION.
FILLING SELECT OPTIONS WITH DEFAULTS
SKUNNR-SIGN = 'I'.
SKUNNR-OPTION = 'BT'.
SKUNNR-LOW = '1'.
SKUNNR-HIGH = '4000000'.
APPEND SKUNNR.
T O P O F P A G E
TOP-OF-PAGE.
WRITE:/1'SALES DOC',12 'DOC TYPE',20 'SALES DATE',32 'NETWORTH',60 'CUSTOMER'.
E N D O F P A G E
END-OF-PAGE.
WRITE:/1 SY-DATUM,30 SY-PAGNO, 55 SY-UNAME.
S T A R T O F S E L E C T I O N
START-OF-SELECTION.
PERFORM GETDATA.
&----
*& Form GETDATA
&----
text
----
FORM GETDATA.
SELECT VBELN "SALES DOCUMENT NUMBER
AUART "DOCUMENT TYPE
AUDAT "SALES DOCUMENT DATE
KUNNR "SOLD TO PARTY
NETWR "NETWORTH
FROM VBAK
INTO TABLE ITVBAK
WHERE KUNNR IN SKUNNR.
IF SY-SUBRC EQ 0.
SORT ITVBAK BY KUNNR VBELN.
PERFORM DISPLAY.
ENDIF.
ENDFORM. "GETDATA
&----
*& Form display
&----
text
----
FORM DISPLAY.
LOOP AT ITVBAK INTO STVBAK.
WRITE:/1 STVBAK-VBELN,12 STVBAK-AUART,20 STVBAK-AUDAT,35 STVBAK-NETWR,60 STVBAK-KUNNR.
ENDLOOP.
ENDFORM. "display
2007 Jul 17 1:37 PM
Hi rams,
Just check the code
T Y P E S
TYPES:
BEGIN OF tyvbak,
vbeln TYPE vbak-vbeln,
auart TYPE vbak-auart,
audat TYPE vbak-audat,
kunnr TYPE vbak-kunnr,
netwr TYPE vbak-netwr,
END OF tyvbak.
TYPES:BEGIN OF t_kna1 ,
kunnr TYPE kna1-kunnr,
name1 TYPE kna1-name1,
ort01 TYPE kna1-ort01,
END OF t_kna1.
D A T A D E C L A R A T I O N S
DATA:wa_vbak TYPE tyvbak,
it_vbak TYPE TABLE OF tyvbak.
DATA:it_kna1 TYPE TABLE OF t_kna1,
wa_kna1 TYPE t_kna1.
S E L E C T I O N S C R E E N
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
SELECT-OPTIONS:
skunnr FOR wa_vbak-kunnr.
SELECTION-SCREEN END OF BLOCK b1.
I N I T I A L I Z A T I O N
INITIALIZATION.
FILLING SELECT OPTIONS WITH DEFAULTS
skunnr-sign = 'I'.
skunnr-option = 'BT'.
skunnr-low = '1'.
skunnr-high = '4000000'.
APPEND skunnr.
T O P O F P A G E
TOP-OF-PAGE.
E N D O F P A G E
END-OF-PAGE.
S T A R T O F S E L E C T I O N
START-OF-SELECTION.
PERFORM getdata.
&----
*& Form GETDATA
&----
text
----
FORM getdata.
SELECT kunnr name1 ort01
FROM kna1 INTO TABLE it_kna1 WHERE kunnr IN skunnr.
IF it_kna1 IS NOT INITIAL.
SELECT vbeln auart audat kunnr netwr INTO TABLE it_vbak
FROM vbak FOR ALL ENTRIES IN it_kna1
WHERE kunnr = it_kna1-kunnr.
ENDIF.
SORT it_vbak BY kunnr vbeln.
PERFORM display.
ENDFORM. "GETDATA
&----
*& Form display
&----
text
----
FORM display.
LOOP AT it_kna1 INTO wa_kna1.
WRITE:/1'Customer' COLOR 1,15 'Name' COLOR 1,30 'City' COLOR 1.
WRITE:/1 wa_kna1-kunnr COLOR 1,15 wa_kna1-name1 COLOR 1,30 wa_kna1-ort01 COLOR 1.
SKIP.
SKIP.
WRITE:/1'SALES DOC' COLOR 7,12 'DOC TYPE' COLOR 7,20 'SALES DATE' COLOR 7,32 'NETWORTH' COLOR 7 ,60 'CUSTOMER' COLOR 7.
LOOP AT it_vbak INTO wa_vbak WHERE kunnr = wa_kna1-kunnr.
WRITE:/1 wa_vbak-vbeln COLOR 7,12 wa_vbak-auart COLOR 7,20 wa_vbak-audat COLOR 7,35 wa_vbak-netwr COLOR 7,60 wa_vbak-kunnr COLOR 7.
ENDLOOP.
WRITE:/1 sy-datum,30 sy-pagno, 55 sy-uname.
SKIP.
SKIP.
AT NEW kunnr.
NEW-PAGE.
ENDAT.
ENDLOOP.
reward points
Regards
Antony Thomas
Hi,
in this program i want customer details should be present at the top of page and after the customer details(customer number name country city) i want one more page header like sales doc, date, doc date, netwr.
These 2 headers should appear in2 diffeent colours.
Also every new customer details should start in the new page.
Plz tell me the modifications in this programf or the above requirements.
REPORT ZAC_TAB18.
T Y P E S
TYPES:
BEGIN OF TYVBAK,
VBELN TYPE VBAK-VBELN,
AUART TYPE VBAK-AUART,
AUDAT TYPE VBAK-AUDAT,
KUNNR TYPE VBAK-KUNNR,
NETWR TYPE VBAK-NETWR,
END OF TYVBAK.
D A T A D E C L A R A T I O N S
DATA:
STVBAK TYPE TYVBAK,
ITVBAK TYPE TABLE OF TYVBAK.
S E L E C T I O N S C R E E N
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
SELECT-OPTIONS:
SKUNNR FOR STVBAK-KUNNR.
SELECTION-SCREEN END OF BLOCK B1.
I N I T I A L I Z A T I O N
INITIALIZATION.
FILLING SELECT OPTIONS WITH DEFAULTS
SKUNNR-SIGN = 'I'.
SKUNNR-OPTION = 'BT'.
SKUNNR-LOW = '1'.
SKUNNR-HIGH = '4000000'.
APPEND SKUNNR.
T O P O F P A G E
TOP-OF-PAGE.
WRITE:/1'SALES DOC',12 'DOC TYPE',20 'SALES DATE',32 'NETWORTH',60 'CUSTOMER'.
E N D O F P A G E
END-OF-PAGE.
WRITE:/1 SY-DATUM,30 SY-PAGNO, 55 SY-UNAME.
S T A R T O F S E L E C T I O N
START-OF-SELECTION.
PERFORM GETDATA.
&----
*& Form GETDATA
&----
text
----
FORM GETDATA.
SELECT VBELN "SALES DOCUMENT NUMBER
AUART "DOCUMENT TYPE
AUDAT "SALES DOCUMENT DATE
KUNNR "SOLD TO PARTY
NETWR "NETWORTH
FROM VBAK
INTO TABLE ITVBAK
WHERE KUNNR IN SKUNNR.
IF SY-SUBRC EQ 0.
SORT ITVBAK BY KUNNR VBELN.
PERFORM DISPLAY.
ENDIF.
ENDFORM. "GETDATA
&----
*& Form display
&----
text
----
FORM DISPLAY.
LOOP AT ITVBAK INTO STVBAK.
WRITE:/1 STVBAK-VBELN,12 STVBAK-AUART,20 STVBAK-AUDAT,35 STVBAK-NETWR,60 STVBAK-KUNNR.
ENDLOOP.
ENDFORM. "display
2007 Jul 17 12:59 PM
REPORT ZAC_TAB18.
T Y P E S
TYPES:
BEGIN OF TYVBAK,
VBELN TYPE VBAK-VBELN,
AUART TYPE VBAK-AUART,
AUDAT TYPE VBAK-AUDAT,
KUNNR TYPE VBAK-KUNNR,
NETWR TYPE VBAK-NETWR,
END OF TYVBAK.
D A T A D E C L A R A T I O N S
DATA:
STVBAK TYPE TYVBAK,
ITVBAK TYPE TABLE OF TYVBAK.
S E L E C T I O N S C R E E N
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
SELECT-OPTIONS:
SKUNNR FOR STVBAK-KUNNR.
SELECTION-SCREEN END OF BLOCK B1.
I N I T I A L I Z A T I O N
INITIALIZATION.
FILLING SELECT OPTIONS WITH DEFAULTS
SKUNNR-SIGN = 'I'.
SKUNNR-OPTION = 'BT'.
SKUNNR-LOW = '1'.
SKUNNR-HIGH = '4000000'.
APPEND SKUNNR.
T O P O F P A G E
TOP-OF-PAGE.
WRITE:/1 'Customer number',
12 'Name',
30 'Country',
35 'City'.
E N D O F P A G E
END-OF-PAGE.
WRITE:/1 SY-DATUM,30 SY-PAGNO, 55 SY-UNAME.
S T A R T O F S E L E C T I O N
START-OF-SELECTION.
PERFORM GETDATA.
&----
*& Form GETDATA
&----
text
----
FORM GETDATA.
SELECT VBELN "SALES DOCUMENT NUMBER
AUART "DOCUMENT TYPE
AUDAT "SALES DOCUMENT DATE
KUNNR "SOLD TO PARTY
NETWR "NETWORTH
FROM VBAK
INTO TABLE ITVBAK
WHERE KUNNR IN SKUNNR.
IF SY-SUBRC EQ 0.
SORT ITVBAK BY KUNNR VBELN.
PERFORM DISPLAY.
ENDIF.
ENDFORM. "GETDATA
&----
*& Form display
&----
text
----
FORM DISPLAY.
LOOP AT ITVBAK INTO STVBAK.
at new kunnr.
WRITE:/1'SALES DOC',12 'DOC TYPE',20 'SALES DATE',32 'NETWORTH',60 'CUSTOMER'.
endat.
WRITE:/1 STVBAK-VBELN,12 STVBAK-AUART,20 STVBAK-AUDAT,35 STVBAK-NETWR,60 STVBAK-KUNNR.
at end of kunnr.
new-page.
endat.
ENDLOOP.
ENDFORM. "display
2007 Jul 17 1:13 PM
LOOP AT ITVBAK INTO STVBAK.
at new kunnr.
<b>format color 1.</b><---
WRITE:/1'SALES DOC',12 'DOC TYPE',20 'SALES DATE',32 'NETWORTH',60 'CUSTOMER'.
<b>format reset.</b>
endat.
<b>format color 2.</b>
WRITE:/1 STVBAK-VBELN,12 STVBAK-AUART,20 STVBAK-AUDAT,35 STVBAK-NETWR,60 STVBAK-KUNNR.
<b>format reset.</b><---
at end of kunnr.
new-page.
endat.
ENDLOOP.
2007 Jul 17 1:37 PM
Hi rams,
Just check the code
T Y P E S
TYPES:
BEGIN OF tyvbak,
vbeln TYPE vbak-vbeln,
auart TYPE vbak-auart,
audat TYPE vbak-audat,
kunnr TYPE vbak-kunnr,
netwr TYPE vbak-netwr,
END OF tyvbak.
TYPES:BEGIN OF t_kna1 ,
kunnr TYPE kna1-kunnr,
name1 TYPE kna1-name1,
ort01 TYPE kna1-ort01,
END OF t_kna1.
D A T A D E C L A R A T I O N S
DATA:wa_vbak TYPE tyvbak,
it_vbak TYPE TABLE OF tyvbak.
DATA:it_kna1 TYPE TABLE OF t_kna1,
wa_kna1 TYPE t_kna1.
S E L E C T I O N S C R E E N
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
SELECT-OPTIONS:
skunnr FOR wa_vbak-kunnr.
SELECTION-SCREEN END OF BLOCK b1.
I N I T I A L I Z A T I O N
INITIALIZATION.
FILLING SELECT OPTIONS WITH DEFAULTS
skunnr-sign = 'I'.
skunnr-option = 'BT'.
skunnr-low = '1'.
skunnr-high = '4000000'.
APPEND skunnr.
T O P O F P A G E
TOP-OF-PAGE.
E N D O F P A G E
END-OF-PAGE.
S T A R T O F S E L E C T I O N
START-OF-SELECTION.
PERFORM getdata.
&----
*& Form GETDATA
&----
text
----
FORM getdata.
SELECT kunnr name1 ort01
FROM kna1 INTO TABLE it_kna1 WHERE kunnr IN skunnr.
IF it_kna1 IS NOT INITIAL.
SELECT vbeln auart audat kunnr netwr INTO TABLE it_vbak
FROM vbak FOR ALL ENTRIES IN it_kna1
WHERE kunnr = it_kna1-kunnr.
ENDIF.
SORT it_vbak BY kunnr vbeln.
PERFORM display.
ENDFORM. "GETDATA
&----
*& Form display
&----
text
----
FORM display.
LOOP AT it_kna1 INTO wa_kna1.
WRITE:/1'Customer' COLOR 1,15 'Name' COLOR 1,30 'City' COLOR 1.
WRITE:/1 wa_kna1-kunnr COLOR 1,15 wa_kna1-name1 COLOR 1,30 wa_kna1-ort01 COLOR 1.
SKIP.
SKIP.
WRITE:/1'SALES DOC' COLOR 7,12 'DOC TYPE' COLOR 7,20 'SALES DATE' COLOR 7,32 'NETWORTH' COLOR 7 ,60 'CUSTOMER' COLOR 7.
LOOP AT it_vbak INTO wa_vbak WHERE kunnr = wa_kna1-kunnr.
WRITE:/1 wa_vbak-vbeln COLOR 7,12 wa_vbak-auart COLOR 7,20 wa_vbak-audat COLOR 7,35 wa_vbak-netwr COLOR 7,60 wa_vbak-kunnr COLOR 7.
ENDLOOP.
WRITE:/1 sy-datum,30 sy-pagno, 55 sy-uname.
SKIP.
SKIP.
AT NEW kunnr.
NEW-PAGE.
ENDAT.
ENDLOOP.
reward points
Regards
Antony Thomas
2007 Jul 18 7:22 AM
Dear Mr Rams,
This question is not yet answered or what? If yes please update the status, and do rewards.
Regards,
Antony Thomas