2008 Feb 02 8:52 AM
I am getting my partner type repeated ly.....for every line inthe out put....i dont want that i want in everyline i will get distinct partner type....
I am getting my partner type repeated ly.....for every line inthe out put....i dont want that i want in everyline i will get distinct partner type....
2008 Feb 02 8:52 AM
i will send my code....any body has the SAP system....can help me !!!!
2008 Feb 02 8:55 AM
2008 Feb 02 9:05 AM
thanks friends
REPORT ZTESTBAPIJOY line-size 1023.
*TABLE DECLARATION
********************
TABLES:vbak, "Sales Document: Header Data
vbkd, "Sales Document: Business Data
vbpa, "Sales Document: Partner
vbap, "Sales Document: Item Data
adrc, "Addresses (central address admin.)
t178t, "Conditions: Groups for Materials
t188t, "Pricing groups for customers
tvm1,
tvm1t, "Material pricing group 1:Description
tvm2,
tvm2t, "Material Pricing Group 2:Description
tvm3,
tvm3t, "Material Pricing Group 3:Description
tvm4,
tvm4t, "Material Pricing Group 4:Description
tvm5,
tvm5t, "Material Pricing Group 5:Description
sza1_d0100,
tvlv , "Check table for release orders:Usage ID
tvlvt,
tvkgg, "Customer Condition Groups(Customer Master)
tvkggt,
tpar, "Business Partner: Functions
tpart,
tvaut. "Sales Documents: Order Reasons:Texts
*SELECT OPTIONS
****************
SELECT-OPTIONS s_vbeln FOR vbak-vbeln.
*CREATING INTERNAL TABLES
TYPES:BEGIN OF ty_tab,
vbeln LIKE vbak-vbeln,
vkorg LIKE vbak-vkorg,
erdat LIKE vbak-erdat,
augru LIKE vbak-augru,
bezei LIKE tvaut-bezei,
bstdk LIKE vbkd-bstdk,
bstdk_e LIKE vbkd-bstdk_e,
bstkd LIKE vbkd-bstkd,
kdkg1 LIKE vbkd-kdkg1,
konda LIKE vbkd-konda,
matnr LIKE vbap-matnr,
spart LIKE vbap-spart,
kondm LIKE vbap-kondm,
waerk LIKE vbap-waerk,
netwr LIKE vbap-netwr,
kwmeng LIKE vbap-kwmeng,
vkaus LIKE vbap-vkaus,
mvgr1 LIKE vbap-mvgr1,
mvgr2 LIKE vbap-mvgr2,
mvgr3 LIKE vbap-mvgr3,
mvgr4 LIKE vbap-mvgr4,
mvgr5 LIKE vbap-mvgr5,
kunnr LIKE vbpa-kunnr,
parvw like vbpa-parvw,
post_code1 LIKE adrc-post_code1,
po_box LIKE adrc-po_box,
name1 LIKE adrc-name1,
name2 LIKE adrc-name2,
city1 LIKE adrc-city1,
city2 LIKE adrc-city2,
country LIKE adrc-country,
street LIKE adrc-street,
str_suppl1 LIKE adrc-str_suppl1,
str_suppl2 LIKE adrc-str_suppl2,
str_suppl3 LIKE adrc-str_suppl3,
smtp_addr LIKE adr6-smtp_addr,
beze_i LIKE tvlvt-bezei,
vtext LIKE v_t178-vtext,
v_text LIKE v_t188-vtext,
bezei1 LIKE tvm1t-bezei,
bezei2 LIKE tvm2t-bezei,
bezei3 LIKE tvm3t-bezei,
bezei4 LIKE tvm4t-bezei,
bezei5 LIKE tvm5t-bezei,
vtext2 LIKE tvkggt-vtext,
END OF ty_tab.
DATA: itab TYPE STANDARD TABLE OF ty_tab WITH HEADER LINE.
DATA: BEGIN OF t_vbak OCCURS 0,
vbeln TYPE vbak-vbeln,
erdat TYPE vbak-erdat,
vkorg type vbak-vkorg,
augru TYPE vbak-augru,
kunnr TYPE vbak-kunnr,
posnr TYPE vbap-posnr,
matnr TYPE vbap-matnr,
vkaus TYPE vbap-vkaus,
spart TYPE vbap-spart,
netwr TYPE vbap-netwr,
waerk TYPE vbap-waerk,
kwmeng TYPE vbap-kwmeng,
kondm TYPE vbap-kondm,
mvgr1 TYPE vbap-mvgr1,
mvgr2 TYPE vbap-mvgr2,
mvgr3 TYPE vbap-mvgr3,
mvgr4 TYPE vbap-mvgr4,
mvgr5 TYPE vbap-mvgr5,
END OF t_vbak.
DATA:
BEGIN OF t_vbkd OCCURS 0,
vbeln TYPE vbkd-vbeln,
posnr TYPE vbkd-posnr,
konda TYPE vbkd-konda,
bstkd TYPE vbkd-bstkd,
bstdk TYPE vbkd-bstdk,
bstkd_e TYPE vbkd-bstkd_e,
bstdk_e TYPE vbkd-bstdk_e,
kdkg1 TYPE vbkd-kdkg1,
END OF t_vbkd.
DATA:
BEGIN OF t_vbpa OCCURS 0,
vbeln type vbpa-vbeln,
posnr type vbpa-posnr,
kunnr type vbpa-kunnr,
adrnr type vbpa-adrnr,
parvw type vbpa-parvw,
END OF t_vbpa.
DATA: t_adrc TYPE TABLE OF adrc WITH HEADER LINE.
DATA:
BEGIN OF t_tvm1t OCCURS 0,
mvgr1 TYPE tvm1t-mvgr1,
bezei TYPE tvm1t-bezei,
END OF t_tvm1t.
DATA:
BEGIN OF t_tvaut OCCURS 0,
augru TYPE vbak-augru,
bezei TYPE tvaut-bezei,
END OF t_tvaut.
DATA:
BEGIN OF t_tvm2t OCCURS 0,
mvgr2 TYPE tvm2t-mvgr2,
bezei TYPE tvm2t-bezei,
END OF t_tvm2t.
DATA:
BEGIN OF t_tvm3t OCCURS 0,
mvgr3 TYPE tvm3t-mvgr3,
bezei TYPE tvm3t-bezei,
END OF t_tvm3t.
DATA:
BEGIN OF t_tvm4t OCCURS 0,
mvgr4 TYPE tvm4t-mvgr4,
bezei TYPE tvm4t-bezei,
END OF t_tvm4t.
DATA:
BEGIN OF t_tvm5t OCCURS 0,
mvgr5 TYPE tvm5t-mvgr5,
bezei TYPE tvm5t-bezei,
END OF t_tvm5t.
DATA:
BEGIN OF T_ADR6 OCCURS 0,
SMTP_ADDR TYPE ADR6-SMTP_ADDR,
ADDRNUMBER TYPE ADR6-ADDRNUMBER,
END OF T_ADR6.
data:
begin of t_tvkggt occurs 0,
vtext type tvkggt-vtext,
kdkgr type tvkggt-kdkgr,
spras type tvkggt-spras,
end of t_tvkggt.
data:
begin of t_tpart occurs 0,
parvw type tpart-parvw,
vtext1 type tpart-VTEXT,
spras type tpart-spras,
end of t_tpart.
DATA:
BEGIN OF T_T178T OCCURS 0,
SPRAS TYPE T178T-SPRAS,
KONDM TYPE T178T-KONDM,
VTEXT TYPE T178T-VTEXT,
END OF T_T178T.
DATA:
BEGIN OF T_T188T OCCURS 0,
SPRAS TYPE T188T-SPRAS,
KONDA TYPE T188T-KONDA,
VTEXT TYPE T188T-VTEXT,
END OF T_T188T.
data:
begin of t_tvlvt occurs 0,
spras type tvlvt-spras,
abrvw type tvlvt-abrvw,
bezei type tvlvt-bezei,
end of t_tvlvt.
*WRITING THE QUERY
Sales Order details...
*break-point.
SELECT vbak~vbeln
vbak~erdat
vbak~vkorg
ABRVW
augru
kunnr
posnr
matnr
vbap~vkaus
vbap~spart
vbap~netwr
vbap~waerk
kwmeng
kondm
mvgr1
mvgr2
mvgr3
mvgr4
mvgr5
FROM vbak AS vbak INNER JOIN vbap AS vbap
ON vbak~vbeln EQ vbap~vbeln
INTO corresponding fields of TABLE t_vbak
WHERE vbak~vbeln IN s_vbeln.
Sales data from VBKD.
SELECT vbeln
posnr
konda
bstkd
bstdk
bstkd_e
bstdk_e
kdkg1
FROM vbkd
INTO TABLE t_vbkd
WHERE vbeln IN s_vbeln.
SELECT vbeln
posnr
kunnr
adrnr
parvw
FROM vbpa
INTO CORRESPONDING FIELDS OF TABLE t_vbpa
where vbpa~vbeln IN s_vbeln.
IF t_vbak[] IS INITIAL.
WRITE : / 'No data found'.
else.
SORT t_vbak BY vbeln.
SELECT augru bezei
FROM tvaut
INTO TABLE t_tvaut
FOR ALL ENTRIES IN t_vbak
WHERE spras EQ sy-langu
AND augru EQ t_vbak-augru.
SORT t_tvaut BY augru.
SELECT vbeln posnr kunnr adrnr parvw
FROM vbpa
INTO CORRESPONDING FIELDS OF TABLE t_vbpa
FOR ALL ENTRIES IN t_vbak
WHERE vbeln EQ t_vbak-vbeln
and posnr EQ t_vbpa-posnr.
IF sy-subrc EQ 0.
SORT t_vbpa BY vbeln posnr parvw.
SELECT *
FROM adrc
INTO TABLE t_adrc
FOR ALL ENTRIES IN t_vbpa
WHERE addrnumber EQ t_vbpa-adrnr.
SORT t_adrc BY addrnumber.
ENDIF.
select smtp_addr
from adr6
into table t_adr6
for all entries in t_vbpa
WHERE ADDRNUMBER = t_vbpa-ADRNR.
SORT T_ADR6 BY ADDRNUMBER.
SELECT mvgr1 bezei
FROM tvm1t
INTO TABLE t_tvm1t
FOR ALL ENTRIES IN t_vbak
WHERE spras EQ sy-langu
AND mvgr1 EQ t_vbak-mvgr1.
SORT t_tvm1t BY mvgr1.
SELECT mvgr2 bezei
FROM tvm2t
INTO TABLE t_tvm2t
FOR ALL ENTRIES IN t_vbak
WHERE spras EQ sy-langu
AND mvgr2 EQ t_vbak-mvgr2.
SORT t_tvm2t BY mvgr2.
SELECT mvgr3 bezei
FROM tvm3t
INTO TABLE t_tvm3t
FOR ALL ENTRIES IN t_vbak
WHERE spras EQ sy-langu
AND mvgr3 EQ t_vbak-mvgr3.
SORT t_tvm3t BY mvgr3.
SELECT mvgr4 bezei
FROM tvm4t
INTO TABLE t_tvm4t
FOR ALL ENTRIES IN t_vbak
WHERE spras EQ sy-langu
AND mvgr4 EQ t_vbak-mvgr4.
SORT t_tvm4t BY mvgr4.
SELECT mvgr5 bezei
FROM tvm5t
INTO TABLE t_tvm5t
FOR ALL ENTRIES IN t_vbak
WHERE spras EQ sy-langu
AND mvgr5 EQ t_vbak-mvgr5.
SORT t_tvm5t BY mvgr5.
SELECT SPRAS KONDM VTEXT
FROM T178T
INTO TABLE T_T178T
FOR ALL ENTRIES IN T_VBAK
WHERE SPRAS EQ SY-LANGU
AND KONDM EQ T_VBAK-KONDM.
SORT T_T178T BY KONDM.
SELECT SPRAS KONDA VTEXT
FROM T188T
INTO TABLE T_T188T
FOR ALL ENTRIES IN T_VBKD
WHERE SPRAS EQ SY-LANGU
AND KONDA EQ T_VBKD-KONDA.
SORT T_T188T BY KONDA.
LOOP AT t_vbak.
MOVE-CORRESPONDING t_vbak TO itab.
SORT t_vbkd BY vbeln posnr.
loop at t_vbkd.
READ TABLE t_vbkd WITH KEY
vbeln = t_vbak-vbeln
posnr = t_vbak-posnr
BINARY SEARCH.
endloop.
IF sy-subrc EQ 0.
MOVE-CORRESPONDING t_vbkd TO itab.
ENDIF.
READ TABLE t_tvaut WITH KEY augru = t_vbak-augru BINARY SEARCH.
itab-bezei = t_tvaut-bezei.
READ TABLE t_tvm1t WITH KEY mvgr1 = t_vbaK-mvgr1 BINARY SEARCH.
itab-bezei1 = t_tvm1t-bezei.
READ TABLE t_tvm2t WITH KEY mvgr2 = t_vbak-mvgr2 BINARY SEARCH.
itab-bezei2 = t_tvm2t-bezei.
READ TABLE t_tvm3t WITH KEY mvgr3 = t_vbak-mvgr3 BINARY SEARCH.
itab-bezei3 = t_tvm3t-bezei.
READ TABLE t_tvm4t WITH KEY mvgr4 = t_vbak-mvgr4 BINARY SEARCH.
itab-bezei4 = t_tvm4t-bezei.
READ TABLE t_tvm5t WITH KEY mvgr5 = t_vbak-mvgr5 BINARY SEARCH.
itab-bezei5 = t_tvm5t-bezei.
READ TABLE t_tpar WITH KEY PARVW = t_vbpa-PARVW BINARY SEARCH.
ITAB-NRART = T_TPAR-NRART.
itab-parvw = t_tpar-parvw.
READ TABLE T_T178T WITH KEY KONDM = T_VBAk-KONDM BINARY SEARCH.
ITAB-KONDM = T_T178T-KONDM.
ITAB-VTEXT = T_T178T-VTEXT.
READ TABLE T_T188T WITH KEY KONDA = T_VBKD-KONDA BINARY SEARCH.
ITAB-KONDA = T_T188T-KONDA.
ITAB-V_TEXT = T_T188T-VTEXT.
READ TABLE t_adr6 with key addrnumber = t_vbpa-adrnr binary search.
itab-smtp_addr = t_adr6-smtp_addr.
loop at t_vbpa.
READ TABLE t_vbpa WITH KEY kunnr = t_vbak-kunnr
BINARY SEARCH.
itab-kunnr = t_vbpa-kunnr.
itab-parvw = t_vbpa-parvw.
SELECT bezei FROM TVLVT
INTO CORRESPONDING FIELDS OF TABLE T_TVLVT
WHERE ABRVW = ITAB-VKAUS.
read table t_tvlvt with key abrvw = t_tvlvt-abrvw binary search.
itab-beze_i = t_tvlvt-bezei.
SELECT vtext FROM TVKGGT
INTO CORRESPONDING FIELDS OF TABLE t_tvkggt
WHERE KDKGR = itab-kdkg1.
clear t_tvkggt.
read table t_tvkggt with key kdkgr = t_tvkggt-kdkgr binary search.
itab-vtext2 = t_tvkggt-vtext.
READ TABLE t_adrc WITH KEY addrnumber = t_vbpa-adrnr BINARY SEARCH.
if sy-subrc EQ 0.
MOVE-CORRESPONDING t_adrc TO itab.
ENDIF.
endloop.
APPEND itab.
*endloop.
CLEAR :itab, t_tvm1t,t_tvm2t,t_tvm3t,t_tvm4t,t_tvm5t,t_adrc,t_tvaut,
t_adr6,t_t188t,t_t178t,t_tvlvt,t_vbak, t_vbpa,t_vbkd.
endloop.
*endloop.
ENDIF.
*PRINTING THE OUTPUT
FORMAT COLOR COL_HEADING
.
WRITE:/
'Order-No',' ',
'Sales-Org',' ',
'Order-Date',' ',
'Purchase-Order',' ',
'Purchase-Order-Date',' ',
'Order-Reason-code',' ',
'Order-Reason description',' ',
'Partner-Type',' ',
'Partner-Type description',' ',
'Partner-no',' ',
'Partner-Name1',' ',
'Partner-Name2',' ',
'Partner-Address 1',' ',
'Partner-Address 2',' ',
'Partner-Address 3',' ',
'Partner-Address 4',' ',
'City',' ',
'DISTRICT',' ',
'Country',' ',
'Post Code',' ',
'PO BOX',' ',
'Partner-email',' ',
'Material-no',' ',
'Material-Division',' ',
'Product-Line and Edition code',' ',
'Product-Line and Edition Desc',' ',
'Product-Name code',' ',
'ProductName Desc',' ',
'Product-Version Code',' ',
'Product-Version Desc',' ',
'Product-Platform Code',' ',
'Product-platform Desc',' ',
'Product-App Server Code',' ',
'Product-App Server Desc',' ',
'Compiler-Code',' ',
'Compiler-Desc',' ',
'LanguageCode', ' ',
'LanguageDesc',' ',
'Runtime-Band Code',' ',
'Runtime-Band description',' ',
'Support-Start Date',' ',
'Support-End Date',' ',
'Support-Level Code',' ',
'Support-Level Desc',' ',
'Currency',' ',
'NetPrice',' ',
'Order-Quantity',' ',
sy-uline.
FORMAT COLOR COL_NORMAL.
LOOP AT itab.
WRITE:/
itab-vbeln UNDER 'Order-No',
itab-vkorg UNDER 'Sales-Org',' ',
itab-erdat UNDER 'Order-Date',
itab-bstkd UNDER 'Purchase-Order',
itab-bstdk UNDER 'Purchase-Order-Date',
itab-augru UNDER 'Order-Reason-code',
itab-bezei UNDER 'Order-Reason description',
itab-parvw UNDER 'Partner-Type',
itab-vtext UNDER 'Partner-Type description',
itab-kunnr UNDER 'Partner-no',
itab-name1 UNDER 'Partner-Name1',
itab-name2 UNDER 'Partner-Name2',
itab-street UNDER 'Partner-Address 1',
itab-str_suppl1 UNDER 'Partner-Address 2',
itab-str_suppl2 UNDER 'Partner-Address 3',
itab-str_suppl3 UNDER 'Partner-Address 4',
itab-city1 UNDER 'City',
itab-city2 UNDER 'DISTRICT',
itab-country UNDER 'Country',
itab-post_code1 UNDER 'Post Code',
itab-po_box UNDER 'PO BOX',
itab-smtp_addr UNDER 'Partner-email',
itab-matnr UNDER 'Material-no',
itab-spart UNDER 'Material-Division',
itab-mvgr1 UNDER 'Product-Line and Edition code',
itab-bezei1 UNDER 'Product-Line and Edition Desc',
itab-mvgr2 UNDER 'Product-Name code',
itab-bezei2 UNDER 'ProductName Desc',
itab-mvgr3 UNDER 'Product-Version Code',
itab-bezei3 UNDER 'Product-Version Desc',
itab-mvgr4 UNDER 'Product-Platform Code',
itab-bezei4 UNDER 'Product-platform Desc',
itab-mvgr5 UNDER 'Product-App Server Code',
itab-bezei5 UNDER 'Product-App Server Desc',
itab-kondm UNDER 'Compiler-Code',
itab-vtext UNDER 'Compiler-Desc',
itab-konda UNDER 'LanguageCode',
itab-v_text UNDER 'LanguageDesc',
itab-vkaus UNDER 'Runtime-Band Code',
itab-beze_i UNDER 'Runtime-Band description',
itab-bstdk UNDER 'Support-Start Date',
itab-bstdk_e UNDER 'Support-End Date',
itab-kdkg1 UNDER 'Support-Level Code',
itab-vtext2 UNDER 'Support-Level Desc',
itab-kwmeng UNDER 'Order-Quantity',
itab-netwr UNDER 'NetPrice',
itab-waerk UNDER 'Currency'.
ULINE.
ENDLOOP.
2008 Feb 02 9:21 AM
2008 Feb 02 9:33 AM
Am really sorry. got some problem in server. i cant access sap development server .
you just debug and check.
sorry
Regards
Prajwal K.
2008 Feb 02 9:40 AM
hay do one thing u just clear your itab in loop.
LOOP AT itab.
WRITE:/
itab-vbeln UNDER 'Order-No',
itab-vkorg UNDER 'Sales-Org',' ',
itab-erdat UNDER 'Order-Date',
itab-bstkd UNDER 'Purchase-Order',
itab-bstdk UNDER 'Purchase-Order-Date',
itab-augru UNDER 'Order-Reason-code',
itab-bezei UNDER 'Order-Reason description',
itab-parvw UNDER 'Partner-Type',
itab-vtext UNDER 'Partner-Type description',
itab-kunnr UNDER 'Partner-no',
itab-name1 UNDER 'Partner-Name1',
itab-name2 UNDER 'Partner-Name2',
itab-street UNDER 'Partner-Address 1',
itab-str_suppl1 UNDER 'Partner-Address 2',
itab-str_suppl2 UNDER 'Partner-Address 3',
itab-str_suppl3 UNDER 'Partner-Address 4',
itab-city1 UNDER 'City',
itab-city2 UNDER 'DISTRICT',
itab-country UNDER 'Country',
itab-post_code1 UNDER 'Post Code',
itab-po_box UNDER 'PO BOX',
itab-smtp_addr UNDER 'Partner-email',
itab-matnr UNDER 'Material-no',
itab-spart UNDER 'Material-Division',
itab-mvgr1 UNDER 'Product-Line and Edition code',
itab-bezei1 UNDER 'Product-Line and Edition Desc',
itab-mvgr2 UNDER 'Product-Name code',
itab-bezei2 UNDER 'ProductName Desc',
itab-mvgr3 UNDER 'Product-Version Code',
itab-bezei3 UNDER 'Product-Version Desc',
itab-mvgr4 UNDER 'Product-Platform Code',
itab-bezei4 UNDER 'Product-platform Desc',
itab-mvgr5 UNDER 'Product-App Server Code',
itab-bezei5 UNDER 'Product-App Server Desc',
itab-kondm UNDER 'Compiler-Code',
itab-vtext UNDER 'Compiler-Desc',
itab-konda UNDER 'LanguageCode',
itab-v_text UNDER 'LanguageDesc',
itab-vkaus UNDER 'Runtime-Band Code',
itab-beze_i UNDER 'Runtime-Band description',
itab-bstdk UNDER 'Support-Start Date',
itab-bstdk_e UNDER 'Support-End Date',
itab-kdkg1 UNDER 'Support-Level Code',
itab-vtext2 UNDER 'Support-Level Desc',
itab-kwmeng UNDER 'Order-Quantity',
itab-netwr UNDER 'NetPrice',
itab-waerk UNDER 'Currency'.
ULINE.
clear itab.
ENDLOOP.
try this, it may solve your problem.
Regards
Prajwal.K
2008 Feb 02 10:06 AM
2008 Feb 02 10:16 AM
2008 Feb 02 8:55 AM
If you are selectin from databsae table then try,
select distinct(partner)....
If it is a internal table the try,
Sort itab by <partner>.
delecte adjecent duplicates compairing <partner>.
2008 Feb 02 12:41 PM
Dear,
the problem lies in one of your READ statments.go through them and u will get it.
| User | Count |
|---|---|
| 4 | |
| 2 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |