Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

how to remove duplicates records from output ?

Former Member
0 Kudos
403

how to remove duplicates records from output ? i used delete adjacent but duplicates records are coming again ..suggest me

4 REPLIES 4

Former Member
0 Kudos
193

Hi,

Sort the internal table first by field . Then use Delete adjacent dupliactes comparing field etc

Regards,

Shruthi R

0 Kudos
193

hi shruthi,

thanks for ur answer ..but duplicates records coming again

here is my code >> plz check it out

&----


*& Report ZCRM_TROUBLE_TICKET

*&

&----


*&

*&

&----


REPORT zcrm_trouble_ticket.

TYPES : BEGIN OF ty_qmih,

qmnum TYPE qmnum,

equnr TYPE equnr,

iloan TYPE iloan,

ausvn TYPE ausvn,

ausbs TYPE ausbs,

auztv TYPE auztv,

auztb TYPE auztb,

iwerk TYPE iwerk,

END OF ty_qmih,

BEGIN OF ty_qmel,

qmnum TYPE qmnum,

qmtxt TYPE qmtxt,

indtx TYPE indltx,

priok TYPE priok,

strmn TYPE strmn,

strur TYPE strur,

ltrmn TYPE ltrmn,

ltrur TYPE ltrur,

objnr TYPE qmobjnr,

arbpl TYPE lgwid,

vkorg TYPE vkorg,

vtweg TYPE vtweg,

spart TYPE spart,

END OF ty_qmel,

BEGIN OF ty_ihpa,

parnr TYPE i_parnr,

parvw TYPE parvw,

objnr TYPE qmobjnr,

END OF ty_ihpa,

BEGIN OF ty_crhd,

arbpl TYPE arbpl,

objid TYPE cr_objid,

END OF ty_crhd,

BEGIN OF ty_crtx,

ktext TYPE cr_ktext,

objid TYPE cr_objid,

END OF ty_crtx,

BEGIN OF ty_qmfe,

fecod TYPE fecod,

fegrp TYPE fegrp,

qmnum TYPE qmnum,

END OF ty_qmfe,

BEGIN OF ty_qmur,

urcod TYPE urcod,

urgrp TYPE urgrp,

urtxt TYPE urstx,

qmnum TYPE qmnum,

END OF ty_qmur,

BEGIN OF ty_iloa,

tplnr TYPE tplnr,

iloan TYPE iloan,

END OF ty_iloa,

BEGIN OF ty_output,

qmnum TYPE qmnum,

equnr TYPE equnr,

  • iloan TYPE iloan,

ausvn TYPE ausvn,

ausbs TYPE ausbs,

auztv TYPE auztv,

auztb TYPE auztb,

iwerk TYPE iwerk,

qmtxt TYPE qmtxt,

indtx TYPE indltx,

priok TYPE priok,

strmn TYPE strmn,

strur TYPE strur,

ltrmn TYPE ltrmn,

ltrur TYPE ltrur,

  • objnr TYPE qmobjnr,

  • arbpl TYPE lgwid,

vkorg TYPE vkorg,

vtweg TYPE vtweg,

spart TYPE spart,

parnr TYPE i_parnr,

parvw TYPE parvw,

arbpl TYPE arbpl,

  • objid TYPE cr_objid,

  • arbpl1 TYPE arbpl,

ktext TYPE cr_ktext,

fecod TYPE fecod,

fegrp TYPE fegrp,

urcod TYPE urcod,

urgrp TYPE urgrp,

urtxt TYPE urstx,

tplnr TYPE tplnr,

END OF ty_output.

DATA : it_qmih TYPE STANDARD TABLE OF ty_qmih,

it_qmel TYPE STANDARD TABLE OF ty_qmel,

it_ihpa TYPE STANDARD TABLE OF ty_ihpa,

it_crhd TYPE STANDARD TABLE OF ty_crhd,

it_crtx TYPE STANDARD TABLE OF ty_crtx,

it_qmfe TYPE STANDARD TABLE OF ty_qmfe,

it_qmur TYPE STANDARD TABLE OF ty_qmur,

it_iloa TYPE STANDARD TABLE OF ty_iloa,

it_output TYPE STANDARD TABLE OF ty_output,

wa_qmih TYPE ty_qmih,

wa_qmel TYPE ty_qmel,

wa_ihpa TYPE ty_ihpa,

wa_crhd TYPE ty_crhd,

wa_crtx TYPE ty_crtx,

wa_qmfe TYPE ty_qmfe,

wa_qmur TYPE ty_qmur,

wa_iloa TYPE ty_iloa,

wa_output TYPE ty_output.

INITIALIZATION.

REFRESH : it_qmih,

it_qmel,

it_ihpa,

it_crhd,

it_crtx,

it_qmfe,

it_qmur,

it_iloa,

it_output.

CLEAR: wa_qmih,

wa_qmel,

wa_ihpa,

wa_crhd,

wa_crtx,

wa_qmfe,

wa_qmur,

wa_iloa,

wa_output.

start-of-selection.

SELECT qmnum

equnr

iloan

ausvn

ausbs

auztv

auztb

iwerk

FROM qmih

INTO TABLE it_qmih.

SORT it_qmih BY qmnum .

DELETE ADJACENT DUPLICATES FROM it_qmih COMPARING qmnum equnr iloan ausvn ausbs auztv auztb iwerk.

SELECT qmnum

qmtxt

indtx

priok

strmn

strur

ltrmn

ltrur

objnr

arbpl

vkorg

vtweg

spart

FROM qmel

INTO TABLE it_qmel

FOR ALL ENTRIES IN it_qmih

WHERE qmnum = it_qmih-qmnum.

SORT it_qmel BY qmnum.

DELETE ADJACENT DUPLICATES FROM it_qmel COMPARING qmnum

qmtxt

indtx

strmn

strur

ltrmn

ltrur

objnr

arbpl

vkorg

vtweg

spart.

*

IF it_qmel IS NOT INITIAL.

SELECT parnr

parvw

objnr

FROM ihpa

INTO TABLE it_ihpa

FOR ALL ENTRIES IN it_qmel

WHERE objnr = it_qmel-objnr.

ENDIF.

DELETE ADJACENT DUPLICATES FROM it_ihpa COMPARING parnr

parvw

objnr.

*

IF it_qmel IS NOT INITIAL.

SELECT arbpl

objid

FROM crhd

INTO TABLE it_crhd

FOR ALL ENTRIES IN it_qmel

WHERE objid = it_qmel-arbpl.

ENDIF.

DELETE ADJACENT DUPLICATES FROM it_crhd COMPARING arbpl

objid.

IF it_qmel IS NOT INITIAL.

SELECT ktext

objid

FROM crtx

INTO TABLE it_crtx

FOR ALL ENTRIES IN it_crhd

WHERE objid = it_crhd-objid.

ENDIF.

DELETE ADJACENT DUPLICATES FROM it_crtx COMPARING ktext

objid.

IF it_qmih IS NOT INITIAL.

SELECT fecod

fegrp

qmnum

FROM qmfe

INTO TABLE it_qmfe

FOR ALL ENTRIES IN it_qmih

WHERE qmnum = it_qmih-qmnum.

ENDIF.

SORT it_qmfe BY qmnum.

DELETE ADJACENT DUPLICATES FROM it_qmfe COMPARING fecod

fegrp.

IF it_qmih IS NOT INITIAL.

SELECT urcod

urgrp

urtxt

qmnum

FROM qmur

INTO TABLE it_qmur

FOR ALL ENTRIES IN it_qmih

WHERE qmnum = it_qmih-qmnum.

ENDIF.

SORT it_qmur BY qmnum.

DELETE ADJACENT DUPLICATES FROM it_qmur COMPARING urcod

urgrp

urtxt.

IF it_qmih IS NOT INITIAL.

SELECT tplnr

iloan

FROM iloa

INTO TABLE it_iloa

FOR ALL ENTRIES IN it_qmih

WHERE iloan = it_qmih-iloan.

ENDIF.

DELETE ADJACENT DUPLICATES FROM it_iloa COMPARING tplnr

iloan.

LOOP AT it_qmih INTO wa_qmih.

wa_output-qmnum = wa_qmih-qmnum.

wa_output-equnr = wa_qmih-equnr.

  • wa_output-iloan = wa_qmih-iloan.

wa_output-ausvn = wa_qmih-ausvn.

wa_output-ausbs = wa_qmih-ausbs.

wa_output-auztv = wa_qmih-auztv.

wa_output-auztb = wa_qmih-auztb.

wa_output-iwerk = wa_qmih-iwerk.

APPEND wa_output TO it_output.

CLEAR wa_output.

READ TABLE it_qmel INTO wa_qmel WITH KEY qmnum = wa_qmih-qmnum.

wa_output-qmtxt = wa_qmel-qmtxt.

wa_output-indtx = wa_qmel-indtx.

wa_output-priok = wa_qmel-priok.

wa_output-strmn = wa_qmel-strmn.

wa_output-strur = wa_qmel-strur.

wa_output-ltrmn = wa_qmel-ltrmn.

wa_output-ltrur = wa_qmel-ltrur.

  • wa_output-objnr = wa_qmel-objnr.

  • wa_output-arbpl = wa_qmel-arbpl.

wa_output-vkorg = wa_qmel-vkorg.

wa_output-vtweg = wa_qmel-vtweg.

wa_output-spart = wa_qmel-spart.

APPEND wa_output TO it_output.

CLEAR wa_output.

READ TABLE it_ihpa INTO wa_ihpa WITH KEY objnr = wa_qmel-objnr.

wa_output-parnr = wa_ihpa-parnr.

wa_output-parvw = wa_ihpa-parvw.

APPEND wa_output TO it_output.

CLEAR wa_output.

READ TABLE it_crhd INTO wa_crhd WITH KEY objid = wa_qmel-arbpl.

wa_output-arbpl = wa_crhd-arbpl.

APPEND wa_output TO it_output.

CLEAR wa_output.

READ TABLE it_crtx INTO wa_crtx WITH KEY objid = wa_crhd-objid.

wa_output-ktext = wa_crtx-ktext.

APPEND wa_output TO it_output.

CLEAR wa_output.

READ TABLE it_qmfe INTO wa_qmfe WITH KEY qmnum = wa_qmih-qmnum.

wa_output-fecod = wa_qmfe-fecod.

wa_output-fegrp = wa_qmfe-fegrp.

APPEND wa_output TO it_output.

CLEAR wa_output.

READ TABLE it_qmur INTO wa_qmur WITH KEY qmnum = wa_qmih-qmnum.

wa_output-urcod = wa_qmur-urcod.

wa_output-urgrp = wa_qmur-urgrp.

wa_output-urtxt = wa_qmur-urtxt.

APPEND wa_output TO it_output.

CLEAR wa_output.

READ TABLE it_iloa INTO wa_iloa WITH KEY iloan = wa_qmih-iloan.

wa_output-tplnr = wa_iloa-tplnr.

APPEND wa_output TO it_output.

CLEAR wa_output.

ENDLOOP.

DELETE ADJACENT DUPLICATES FROM it_output COMPARING qmnum

equnr

ausvn

ausbs

auztv

auztb

iwerk

qmtxt

indtx

priok

strmn

strur

ltrmn

ltrur

vkorg

vtweg

spart

parnr

parvw

arbpl

ktext

fecod

fegrp

urcod

urgrp

urtxt

tplnr.

*CALL FUNCTION 'STATUS_TEXT_EDIT'

  • EXPORTING

    • CLIENT = SY-MANDT

    • FLG_USER_STAT = ' '

  • objnr =

    • ONLY_ACTIVE = 'X'

  • spras = en

    • BYPASS_BUFFER = ' '

    • IMPORTING

    • ANW_STAT_EXISTING =

    • E_STSMA =

    • LINE =

    • USER_LINE =

    • STONR =

    • EXCEPTIONS

    • OBJECT_NOT_FOUND = 1

    • OTHERS = 2

  • .

*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 'READ_TEXT'

  • EXPORTING

    • CLIENT = SY-MANDT

  • id =

  • language =

  • name =

  • object =

    • ARCHIVE_HANDLE = 0

    • LOCAL_CAT = ' '

    • IMPORTING

    • HEADER =

  • tables

  • lines =

    • EXCEPTIONS

    • ID = 1

    • LANGUAGE = 2

    • NAME = 3

    • NOT_FOUND = 4

    • OBJECT = 5

    • REFERENCE_CHECK = 6

    • WRONG_ACCESS_TO_ARCHIVE = 7

    • OTHERS = 8

  • .

*IF sy-subrc <> 0.

    • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

    • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

*ENDIF.

*

*LOOP AT IT_OUTPUT INTO WA_OUTPUT.

*

*WRITE : / WA_OUTPUT-qmnum,

  • WA_OUTPUT-equnr,

  • WA_OUTPUT-iloan,

  • WA_OUTPUT-ausvn,

  • WA_OUTPUT-ausbs,

  • WA_OUTPUT-auztv,

  • WA_OUTPUT-auztb,

  • WA_OUTPUT-qmtxt,

  • WA_OUTPUT-indtx,

  • WA_OUTPUT-strmn,

  • WA_OUTPUT-strur,

  • WA_OUTPUT-ltrmn,

  • WA_OUTPUT-ltrur,

  • WA_OUTPUT-objnr,

  • WA_OUTPUT-arbpl,

  • WA_OUTPUT-parnr,

  • WA_OUTPUT-parvw,

  • WA_OUTPUT-objid,

  • WA_OUTPUT-ktext,

  • WA_OUTPUT-fecod,

  • WA_OUTPUT-fegrp,

  • WA_OUTPUT-urcod,

  • WA_OUTPUT-urgrp,

  • WA_OUTPUT-urtxt,

  • WA_OUTPUT-tplnr.

*ENDLOOP.

CALL FUNCTION 'GUI_DOWNLOAD'

EXPORTING

  • BIN_FILESIZE =

filename = 'E:\CRM1.TXT'

  • FILETYPE = 'ASC'

  • APPEND = ' '

write_field_separator = '|'

  • HEADER = '00'

  • TRUNC_TRAILING_BLANKS = ' '

  • WRITE_LF = 'X'

  • COL_SELECT = ' '

  • COL_SELECT_MASK = ' '

  • DAT_MODE = ' '

  • CONFIRM_OVERWRITE = ' '

  • NO_AUTH_CHECK = ' '

  • CODEPAGE = ' '

  • IGNORE_CERR = ABAP_TRUE

  • REPLACEMENT = '#'

  • WRITE_BOM = ' '

  • TRUNC_TRAILING_BLANKS_EOL = 'X'

  • WK1_N_FORMAT = ' '

  • WK1_N_SIZE = ' '

  • WK1_T_FORMAT = ' '

  • WK1_T_SIZE = ' '

  • WRITE_LF_AFTER_LAST_LINE = ABAP_TRUE

  • IMPORTING

  • FILELENGTH =

TABLES

data_tab = it_output

  • FIELDNAMES =

  • EXCEPTIONS

  • FILE_WRITE_ERROR = 1

  • NO_BATCH = 2

  • GUI_REFUSE_FILETRANSFER = 3

  • INVALID_TYPE = 4

  • NO_AUTHORITY = 5

  • UNKNOWN_ERROR = 6

  • HEADER_NOT_ALLOWED = 7

  • SEPARATOR_NOT_ALLOWED = 8

  • FILESIZE_NOT_ALLOWED = 9

  • HEADER_TOO_LONG = 10

  • DP_ERROR_CREATE = 11

  • DP_ERROR_SEND = 12

  • DP_ERROR_WRITE = 13

  • UNKNOWN_DP_ERROR = 14

  • ACCESS_DENIED = 15

  • DP_OUT_OF_MEMORY = 16

  • DISK_FULL = 17

  • DP_TIMEOUT = 18

  • FILE_NOT_FOUND = 19

  • DATAPROVIDER_EXCEPTION = 20

  • CONTROL_FLUSH_ERROR = 21

  • OTHERS = 22

.

IF sy-subrc <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

Former Member
0 Kudos
193

sort it_otuput by fld1 fld2......

delete adjecent duplicates from table itab comparing fld1 fld2...

Regards,

madan.

0 Kudos
193

thanks for the answer but duplicates records are coming again ..

below is my code >>plz check it out for correct o/p

&----


*& Report ZCRM_TROUBLE_TICKET

*&

&----


*&

*&

&----


REPORT zcrm_trouble_ticket.

TYPES : BEGIN OF ty_qmih,

qmnum TYPE qmnum,

equnr TYPE equnr,

iloan TYPE iloan,

ausvn TYPE ausvn,

ausbs TYPE ausbs,

auztv TYPE auztv,

auztb TYPE auztb,

iwerk TYPE iwerk,

END OF ty_qmih,

BEGIN OF ty_qmel,

qmnum TYPE qmnum,

qmtxt TYPE qmtxt,

indtx TYPE indltx,

priok TYPE priok,

strmn TYPE strmn,

strur TYPE strur,

ltrmn TYPE ltrmn,

ltrur TYPE ltrur,

objnr TYPE qmobjnr,

arbpl TYPE lgwid,

vkorg TYPE vkorg,

vtweg TYPE vtweg,

spart TYPE spart,

END OF ty_qmel,

BEGIN OF ty_ihpa,

parnr TYPE i_parnr,

parvw TYPE parvw,

objnr TYPE qmobjnr,

END OF ty_ihpa,

BEGIN OF ty_crhd,

arbpl TYPE arbpl,

objid TYPE cr_objid,

END OF ty_crhd,

BEGIN OF ty_crtx,

ktext TYPE cr_ktext,

objid TYPE cr_objid,

END OF ty_crtx,

BEGIN OF ty_qmfe,

fecod TYPE fecod,

fegrp TYPE fegrp,

qmnum TYPE qmnum,

END OF ty_qmfe,

BEGIN OF ty_qmur,

urcod TYPE urcod,

urgrp TYPE urgrp,

urtxt TYPE urstx,

qmnum TYPE qmnum,

END OF ty_qmur,

BEGIN OF ty_iloa,

tplnr TYPE tplnr,

iloan TYPE iloan,

END OF ty_iloa,

BEGIN OF ty_output,

qmnum TYPE qmnum,

equnr TYPE equnr,

  • iloan TYPE iloan,

ausvn TYPE ausvn,

ausbs TYPE ausbs,

auztv TYPE auztv,

auztb TYPE auztb,

iwerk TYPE iwerk,

qmtxt TYPE qmtxt,

indtx TYPE indltx,

priok TYPE priok,

strmn TYPE strmn,

strur TYPE strur,

ltrmn TYPE ltrmn,

ltrur TYPE ltrur,

  • objnr TYPE qmobjnr,

  • arbpl TYPE lgwid,

vkorg TYPE vkorg,

vtweg TYPE vtweg,

spart TYPE spart,

parnr TYPE i_parnr,

parvw TYPE parvw,

arbpl TYPE arbpl,

  • objid TYPE cr_objid,

  • arbpl1 TYPE arbpl,

ktext TYPE cr_ktext,

fecod TYPE fecod,

fegrp TYPE fegrp,

urcod TYPE urcod,

urgrp TYPE urgrp,

urtxt TYPE urstx,

tplnr TYPE tplnr,

END OF ty_output.

DATA : it_qmih TYPE STANDARD TABLE OF ty_qmih,

it_qmel TYPE STANDARD TABLE OF ty_qmel,

it_ihpa TYPE STANDARD TABLE OF ty_ihpa,

it_crhd TYPE STANDARD TABLE OF ty_crhd,

it_crtx TYPE STANDARD TABLE OF ty_crtx,

it_qmfe TYPE STANDARD TABLE OF ty_qmfe,

it_qmur TYPE STANDARD TABLE OF ty_qmur,

it_iloa TYPE STANDARD TABLE OF ty_iloa,

it_output TYPE STANDARD TABLE OF ty_output,

wa_qmih TYPE ty_qmih,

wa_qmel TYPE ty_qmel,

wa_ihpa TYPE ty_ihpa,

wa_crhd TYPE ty_crhd,

wa_crtx TYPE ty_crtx,

wa_qmfe TYPE ty_qmfe,

wa_qmur TYPE ty_qmur,

wa_iloa TYPE ty_iloa,

wa_output TYPE ty_output.

INITIALIZATION.

REFRESH : it_qmih,

it_qmel,

it_ihpa,

it_crhd,

it_crtx,

it_qmfe,

it_qmur,

it_iloa,

it_output.

CLEAR: wa_qmih,

wa_qmel,

wa_ihpa,

wa_crhd,

wa_crtx,

wa_qmfe,

wa_qmur,

wa_iloa,

wa_output.

start-of-selection.

SELECT qmnum

equnr

iloan

ausvn

ausbs

auztv

auztb

iwerk

FROM qmih

INTO TABLE it_qmih.

SORT it_qmih BY qmnum .

DELETE ADJACENT DUPLICATES FROM it_qmih COMPARING qmnum equnr iloan ausvn ausbs auztv auztb iwerk.

SELECT qmnum

qmtxt

indtx

priok

strmn

strur

ltrmn

ltrur

objnr

arbpl

vkorg

vtweg

spart

FROM qmel

INTO TABLE it_qmel

FOR ALL ENTRIES IN it_qmih

WHERE qmnum = it_qmih-qmnum.

SORT it_qmel BY qmnum.

DELETE ADJACENT DUPLICATES FROM it_qmel COMPARING qmnum

qmtxt

indtx

strmn

strur

ltrmn

ltrur

objnr

arbpl

vkorg

vtweg

spart.

*

IF it_qmel IS NOT INITIAL.

SELECT parnr

parvw

objnr

FROM ihpa

INTO TABLE it_ihpa

FOR ALL ENTRIES IN it_qmel

WHERE objnr = it_qmel-objnr.

ENDIF.

DELETE ADJACENT DUPLICATES FROM it_ihpa COMPARING parnr

parvw

objnr.

*

IF it_qmel IS NOT INITIAL.

SELECT arbpl

objid

FROM crhd

INTO TABLE it_crhd

FOR ALL ENTRIES IN it_qmel

WHERE objid = it_qmel-arbpl.

ENDIF.

DELETE ADJACENT DUPLICATES FROM it_crhd COMPARING arbpl

objid.

IF it_qmel IS NOT INITIAL.

SELECT ktext

objid

FROM crtx

INTO TABLE it_crtx

FOR ALL ENTRIES IN it_crhd

WHERE objid = it_crhd-objid.

ENDIF.

DELETE ADJACENT DUPLICATES FROM it_crtx COMPARING ktext

objid.

IF it_qmih IS NOT INITIAL.

SELECT fecod

fegrp

qmnum

FROM qmfe

INTO TABLE it_qmfe

FOR ALL ENTRIES IN it_qmih

WHERE qmnum = it_qmih-qmnum.

ENDIF.

SORT it_qmfe BY qmnum.

DELETE ADJACENT DUPLICATES FROM it_qmfe COMPARING fecod

fegrp.

IF it_qmih IS NOT INITIAL.

SELECT urcod

urgrp

urtxt

qmnum

FROM qmur

INTO TABLE it_qmur

FOR ALL ENTRIES IN it_qmih

WHERE qmnum = it_qmih-qmnum.

ENDIF.

SORT it_qmur BY qmnum.

DELETE ADJACENT DUPLICATES FROM it_qmur COMPARING urcod

urgrp

urtxt.

IF it_qmih IS NOT INITIAL.

SELECT tplnr

iloan

FROM iloa

INTO TABLE it_iloa

FOR ALL ENTRIES IN it_qmih

WHERE iloan = it_qmih-iloan.

ENDIF.

DELETE ADJACENT DUPLICATES FROM it_iloa COMPARING tplnr

iloan.

LOOP AT it_qmih INTO wa_qmih.

wa_output-qmnum = wa_qmih-qmnum.

wa_output-equnr = wa_qmih-equnr.

  • wa_output-iloan = wa_qmih-iloan.

wa_output-ausvn = wa_qmih-ausvn.

wa_output-ausbs = wa_qmih-ausbs.

wa_output-auztv = wa_qmih-auztv.

wa_output-auztb = wa_qmih-auztb.

wa_output-iwerk = wa_qmih-iwerk.

APPEND wa_output TO it_output.

CLEAR wa_output.

READ TABLE it_qmel INTO wa_qmel WITH KEY qmnum = wa_qmih-qmnum.

wa_output-qmtxt = wa_qmel-qmtxt.

wa_output-indtx = wa_qmel-indtx.

wa_output-priok = wa_qmel-priok.

wa_output-strmn = wa_qmel-strmn.

wa_output-strur = wa_qmel-strur.

wa_output-ltrmn = wa_qmel-ltrmn.

wa_output-ltrur = wa_qmel-ltrur.

  • wa_output-objnr = wa_qmel-objnr.

  • wa_output-arbpl = wa_qmel-arbpl.

wa_output-vkorg = wa_qmel-vkorg.

wa_output-vtweg = wa_qmel-vtweg.

wa_output-spart = wa_qmel-spart.

APPEND wa_output TO it_output.

CLEAR wa_output.

READ TABLE it_ihpa INTO wa_ihpa WITH KEY objnr = wa_qmel-objnr.

wa_output-parnr = wa_ihpa-parnr.

wa_output-parvw = wa_ihpa-parvw.

APPEND wa_output TO it_output.

CLEAR wa_output.

READ TABLE it_crhd INTO wa_crhd WITH KEY objid = wa_qmel-arbpl.

wa_output-arbpl = wa_crhd-arbpl.

APPEND wa_output TO it_output.

CLEAR wa_output.

READ TABLE it_crtx INTO wa_crtx WITH KEY objid = wa_crhd-objid.

wa_output-ktext = wa_crtx-ktext.

APPEND wa_output TO it_output.

CLEAR wa_output.

READ TABLE it_qmfe INTO wa_qmfe WITH KEY qmnum = wa_qmih-qmnum.

wa_output-fecod = wa_qmfe-fecod.

wa_output-fegrp = wa_qmfe-fegrp.

APPEND wa_output TO it_output.

CLEAR wa_output.

READ TABLE it_qmur INTO wa_qmur WITH KEY qmnum = wa_qmih-qmnum.

wa_output-urcod = wa_qmur-urcod.

wa_output-urgrp = wa_qmur-urgrp.

wa_output-urtxt = wa_qmur-urtxt.

APPEND wa_output TO it_output.

CLEAR wa_output.

READ TABLE it_iloa INTO wa_iloa WITH KEY iloan = wa_qmih-iloan.

wa_output-tplnr = wa_iloa-tplnr.

APPEND wa_output TO it_output.

CLEAR wa_output.

ENDLOOP.

DELETE ADJACENT DUPLICATES FROM it_output COMPARING qmnum

equnr

ausvn

ausbs

auztv

auztb

iwerk

qmtxt

indtx

priok

strmn

strur

ltrmn

ltrur

vkorg

vtweg

spart

parnr

parvw

arbpl

ktext

fecod

fegrp

urcod

urgrp

urtxt

tplnr.

*CALL FUNCTION 'STATUS_TEXT_EDIT'

  • EXPORTING

    • CLIENT = SY-MANDT

    • FLG_USER_STAT = ' '

  • objnr =

    • ONLY_ACTIVE = 'X'

  • spras = en

    • BYPASS_BUFFER = ' '

    • IMPORTING

    • ANW_STAT_EXISTING =

    • E_STSMA =

    • LINE =

    • USER_LINE =

    • STONR =

    • EXCEPTIONS

    • OBJECT_NOT_FOUND = 1

    • OTHERS = 2

  • .

*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 'READ_TEXT'

  • EXPORTING

    • CLIENT = SY-MANDT

  • id =

  • language =

  • name =

  • object =

    • ARCHIVE_HANDLE = 0

    • LOCAL_CAT = ' '

    • IMPORTING

    • HEADER =

  • tables

  • lines =

    • EXCEPTIONS

    • ID = 1

    • LANGUAGE = 2

    • NAME = 3

    • NOT_FOUND = 4

    • OBJECT = 5

    • REFERENCE_CHECK = 6

    • WRONG_ACCESS_TO_ARCHIVE = 7

    • OTHERS = 8

  • .

*IF sy-subrc <> 0.

    • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

    • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

*ENDIF.

*

*LOOP AT IT_OUTPUT INTO WA_OUTPUT.

*

*WRITE : / WA_OUTPUT-qmnum,

  • WA_OUTPUT-equnr,

  • WA_OUTPUT-iloan,

  • WA_OUTPUT-ausvn,

  • WA_OUTPUT-ausbs,

  • WA_OUTPUT-auztv,

  • WA_OUTPUT-auztb,

  • WA_OUTPUT-qmtxt,

  • WA_OUTPUT-indtx,

  • WA_OUTPUT-strmn,

  • WA_OUTPUT-strur,

  • WA_OUTPUT-ltrmn,

  • WA_OUTPUT-ltrur,

  • WA_OUTPUT-objnr,

  • WA_OUTPUT-arbpl,

  • WA_OUTPUT-parnr,

  • WA_OUTPUT-parvw,

  • WA_OUTPUT-objid,

  • WA_OUTPUT-ktext,

  • WA_OUTPUT-fecod,

  • WA_OUTPUT-fegrp,

  • WA_OUTPUT-urcod,

  • WA_OUTPUT-urgrp,

  • WA_OUTPUT-urtxt,

  • WA_OUTPUT-tplnr.

*ENDLOOP.

CALL FUNCTION 'GUI_DOWNLOAD'

EXPORTING

  • BIN_FILESIZE =

filename = 'E:\CRM1.TXT'

  • FILETYPE = 'ASC'

  • APPEND = ' '

write_field_separator = '|'

  • HEADER = '00'

  • TRUNC_TRAILING_BLANKS = ' '

  • WRITE_LF = 'X'

  • COL_SELECT = ' '

  • COL_SELECT_MASK = ' '

  • DAT_MODE = ' '

  • CONFIRM_OVERWRITE = ' '

  • NO_AUTH_CHECK = ' '

  • CODEPAGE = ' '

  • IGNORE_CERR = ABAP_TRUE

  • REPLACEMENT = '#'

  • WRITE_BOM = ' '

  • TRUNC_TRAILING_BLANKS_EOL = 'X'

  • WK1_N_FORMAT = ' '

  • WK1_N_SIZE = ' '

  • WK1_T_FORMAT = ' '

  • WK1_T_SIZE = ' '

  • WRITE_LF_AFTER_LAST_LINE = ABAP_TRUE

  • IMPORTING

  • FILELENGTH =

TABLES

data_tab = it_output

  • FIELDNAMES =

  • EXCEPTIONS

  • FILE_WRITE_ERROR = 1

  • NO_BATCH = 2

  • GUI_REFUSE_FILETRANSFER = 3

  • INVALID_TYPE = 4

  • NO_AUTHORITY = 5

  • UNKNOWN_ERROR = 6

  • HEADER_NOT_ALLOWED = 7

  • SEPARATOR_NOT_ALLOWED = 8

  • FILESIZE_NOT_ALLOWED = 9

  • HEADER_TOO_LONG = 10

  • DP_ERROR_CREATE = 11

  • DP_ERROR_SEND = 12

  • DP_ERROR_WRITE = 13

  • UNKNOWN_DP_ERROR = 14

  • ACCESS_DENIED = 15

  • DP_OUT_OF_MEMORY = 16

  • DISK_FULL = 17

  • DP_TIMEOUT = 18

  • FILE_NOT_FOUND = 19

  • DATAPROVIDER_EXCEPTION = 20

  • CONTROL_FLUSH_ERROR = 21

  • OTHERS = 22

.

IF sy-subrc <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.