<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: program on duplicate entries in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/program-on-duplicate-entries/m-p/3112703#M739019</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi satish,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;go home and sleep about it.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Maybe tomorrow you can explain your question.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Clemens&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 05 Dec 2007 19:44:41 GMT</pubDate>
    <dc:creator>Clemenss</dc:creator>
    <dc:date>2007-12-05T19:44:41Z</dc:date>
    <item>
      <title>program on duplicate entries</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/program-on-duplicate-entries/m-p/3112702#M739018</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi everybody,&lt;/P&gt;&lt;P&gt;                  I hv done with a program to delete duplicate entries.... an the code is as below.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES : BEGIN OF TY_LFA1,&lt;/P&gt;&lt;P&gt;          LIFNR TYPE LFA1-LIFNR,&lt;/P&gt;&lt;P&gt;          LAND1 TYPE LFA1-LAND1,&lt;/P&gt;&lt;P&gt;          NAME1 TYPE LFA1-NAME1,&lt;/P&gt;&lt;P&gt;          PSTLZ TYPE LFA1-PSTLZ,&lt;/P&gt;&lt;P&gt;        END OF TY_LFA1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : IT_FIRST  TYPE STANDARD TABLE OF TY_LFA1 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;       IT_SECOND TYPE STANDARD TABLE OF TY_LFA1 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;       V_FILE TYPE STRING,&lt;/P&gt;&lt;P&gt;       V_COUNT TYPE I,&lt;/P&gt;&lt;P&gt;       V_COUNTER TYPE I.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME.&lt;/P&gt;&lt;P&gt;      PARAMETERS : P_FILE LIKE RLGRAP-FILENAME.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK B1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILE.&lt;/P&gt;&lt;P&gt;PERFORM GET_FILE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;IF P_FILE IS NOT INITIAL.&lt;/P&gt;&lt;P&gt;V_FILE = P_FILE.&lt;/P&gt;&lt;P&gt;PERFORM GUI_UPLOAD.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt; IF IT_FIRST[] = IT_SECOND[].&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;MESSAGE E001(ZHEMANTH).&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SORT IT_FIRST BY LIFNR.&lt;/P&gt;&lt;P&gt;SORT IT_SECOND BY LIFNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DELETE ADJACENT DUPLICATES FROM IT_FIRST.&lt;/P&gt;&lt;P&gt;LOOP AT IT_FIRST.&lt;/P&gt;&lt;P&gt;LOOP AT IT_SECOND WHERE LIFNR = IT_FIRST-LIFNR.&lt;/P&gt;&lt;P&gt;V_COUNT = V_COUNT + 1.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;V_COUNTER = V_COUNT + 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WRITE : /10 IT_FIRST-LIFNR,&lt;/P&gt;&lt;P&gt;         15 IT_FIRST-LAND1,&lt;/P&gt;&lt;P&gt;         50 IT_FIRST-NAME1,&lt;/P&gt;&lt;P&gt;         60 IT_FIRST-PSTLZ,&lt;/P&gt;&lt;P&gt;         70 V_COUNT,&lt;/P&gt;&lt;P&gt;         80 V_COUNTER.&lt;/P&gt;&lt;P&gt;  CLEAR V_COUNT.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  GET_FILE&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM GET_FILE .&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'F4_FILENAME'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  PROGRAM_NAME        = SYST-CPROG&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  DYNPRO_NUMBER       = SYST-DYNNR&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  FIELD_NAME          = ' '&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; IMPORTING&lt;/P&gt;&lt;P&gt;   FILE_NAME           = P_FILE.&lt;/P&gt;&lt;P&gt;          .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " GET_FILE&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  GUI_UPLOAD&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM GUI_UPLOAD .&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'GUI_UPLOAD'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;    FILENAME                      = V_FILE&lt;/P&gt;&lt;P&gt;   FILETYPE                      = 'ASC'&lt;/P&gt;&lt;P&gt;   HAS_FIELD_SEPARATOR           = 'X'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  HEADER_LENGTH                 = 0&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  READ_BY_LINE                  = 'X'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  DAT_MODE                      = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  FILELENGTH                    =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  HEADER                        =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  TABLES&lt;/P&gt;&lt;P&gt;    DATA_TAB                      = IT_FIRST&lt;/P&gt;&lt;P&gt; EXCEPTIONS&lt;/P&gt;&lt;P&gt;   FILE_OPEN_ERROR               = 1&lt;/P&gt;&lt;P&gt;   FILE_READ_ERROR               = 2&lt;/P&gt;&lt;P&gt;   NO_BATCH                      = 3&lt;/P&gt;&lt;P&gt;   GUI_REFUSE_FILETRANSFER       = 4&lt;/P&gt;&lt;P&gt;   INVALID_TYPE                  = 5&lt;/P&gt;&lt;P&gt;   NO_AUTHORITY                  = 6&lt;/P&gt;&lt;P&gt;   UNKNOWN_ERROR                 = 7&lt;/P&gt;&lt;P&gt;   BAD_DATA_FORMAT               = 8&lt;/P&gt;&lt;P&gt;   HEADER_NOT_ALLOWED            = 9&lt;/P&gt;&lt;P&gt;   SEPARATOR_NOT_ALLOWED         = 10&lt;/P&gt;&lt;P&gt;   HEADER_TOO_LONG               = 11&lt;/P&gt;&lt;P&gt;   UNKNOWN_DP_ERROR              = 12&lt;/P&gt;&lt;P&gt;   ACCESS_DENIED                 = 13&lt;/P&gt;&lt;P&gt;   DP_OUT_OF_MEMORY              = 14&lt;/P&gt;&lt;P&gt;   DISK_FULL                     = 15&lt;/P&gt;&lt;P&gt;   DP_TIMEOUT                    = 16&lt;/P&gt;&lt;P&gt;   OTHERS                        = 17&lt;/P&gt;&lt;P&gt;          .&lt;/P&gt;&lt;P&gt;IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt; MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;P&gt;         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " GUI_UPLOAD&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;when iam excuting the program iam getting a error mesage as i mentiod in prog(ie no data found)&lt;/P&gt;&lt;P&gt;so any one tell hw to gv flatfile for this program.... an hw can i over cm the probs.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 05 Dec 2007 19:30:09 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/program-on-duplicate-entries/m-p/3112702#M739018</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-12-05T19:30:09Z</dc:date>
    </item>
    <item>
      <title>Re: program on duplicate entries</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/program-on-duplicate-entries/m-p/3112703#M739019</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi satish,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;go home and sleep about it.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Maybe tomorrow you can explain your question.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Clemens&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 05 Dec 2007 19:44:41 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/program-on-duplicate-entries/m-p/3112703#M739019</guid>
      <dc:creator>Clemenss</dc:creator>
      <dc:date>2007-12-05T19:44:41Z</dc:date>
    </item>
    <item>
      <title>Re: program on duplicate entries</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/program-on-duplicate-entries/m-p/3112704#M739020</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I don't see IT_SECOND being populated.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You probably want something like:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;REPORT ztest MESSAGE-ID 00.

TYPES : BEGIN OF ty_lfa1,
          lifnr TYPE lfa1-lifnr,
          land1 TYPE lfa1-land1,
          name1 TYPE lfa1-name1,
          pstlz TYPE lfa1-pstlz,
        END OF ty_lfa1.

DATA: it_first TYPE STANDARD TABLE OF ty_lfa1 WITH HEADER LINE,
      it_second TYPE STANDARD TABLE OF ty_lfa1 WITH HEADER LINE,
      v_file TYPE string,
      v_count TYPE i,
      v_counter TYPE i.

SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME.
PARAMETERS : p_file LIKE rlgrap-filename.
SELECTION-SCREEN END OF BLOCK b1.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
  PERFORM get_file.

START-OF-SELECTION.
  PERFORM get_db_data.           "&amp;lt;====
  IF p_file IS NOT INITIAL.
    v_file = p_file.
    PERFORM gui_upload.
  ENDIF.
  IF it_first[] = it_second[].
  ELSE.
    MESSAGE e001(zhemanth).
  ENDIF.

  SORT it_first BY lifnr.
  SORT it_second BY lifnr.

  DELETE ADJACENT DUPLICATES FROM it_first.
  LOOP AT it_first.
    LOOP AT it_second WHERE lifnr = it_first-lifnr.
      v_count = v_count + 1.
    ENDLOOP.
    v_counter = v_count + 1.

    WRITE : /10 it_first-lifnr,
    15 it_first-land1,
    50 it_first-name1,
    60 it_first-pstlz,
    70 v_count,
    80 v_counter.
    CLEAR v_count.
  ENDLOOP.
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp; Form GET_FILE
*&amp;amp;---------------------------------------------------------------------*
FORM get_file .
  CALL FUNCTION 'F4_FILENAME'
    IMPORTING
      file_name = p_file.

ENDFORM. " GET_FILE
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp; Form GUI_UPLOAD
*&amp;amp;---------------------------------------------------------------------*
FORM gui_upload .
  CALL FUNCTION 'GUI_UPLOAD'
    EXPORTING
      filename                = v_file
      filetype                = 'ASC'
      has_field_separator     = 'X'
    TABLES
      data_tab                = it_first
    EXCEPTIONS
      file_open_error         = 1
      file_read_error         = 2
      no_batch                = 3
      gui_refuse_filetransfer = 4
      invalid_type            = 5
      no_authority            = 6
      unknown_error           = 7
      bad_data_format         = 8
      header_not_allowed      = 9
      separator_not_allowed   = 10
      header_too_long         = 11
      unknown_dp_error        = 12
      access_denied           = 13
      dp_out_of_memory        = 14
      disk_full               = 15
      dp_timeout              = 16
      OTHERS                  = 17.
  IF sy-subrc &amp;lt;&amp;gt; 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
    WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.


ENDFORM. " GUI_UPLOAD

*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Form  get_db_data
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM get_db_data .               "&amp;lt;====

  TYPES : BEGIN OF ty_lfa1,
  lifnr TYPE lfa1-lifnr,
  land1 TYPE lfa1-land1,
  name1 TYPE lfa1-name1,
  pstlz TYPE lfa1-pstlz,
  END OF ty_lfa1.

  SELECT  lifnr land1 name1 pstlz
    FROM  lfa1
    INTO TABLE it_second.

ENDFORM.                    " get_db_data
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Rob&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Message was edited by: &lt;/P&gt;&lt;P&gt;        Rob Burbank&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 05 Dec 2007 19:49:34 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/program-on-duplicate-entries/m-p/3112704#M739020</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-12-05T19:49:34Z</dc:date>
    </item>
    <item>
      <title>Re: program on duplicate entries</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/program-on-duplicate-entries/m-p/3112705#M739021</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;IF IT_FIRST[] = IT_SECOND[].&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;MESSAGE E001(ZHEMANTH).&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;assign values to it_second then compare it. In the above statement, always you get message in case you dont copy values to it_second.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Well, if you want to delete duplicate records, i dont think you need to assign.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;instead write code like this&lt;/P&gt;&lt;P&gt;if it_first is initial.&lt;/P&gt;&lt;P&gt;  message.&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt; delete adjusent duplicates from it_first comparing field1 fields2(if you want).&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;that statement deletes the duplicate records if there are entries in it_First.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 05 Dec 2007 20:13:57 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/program-on-duplicate-entries/m-p/3112705#M739021</guid>
      <dc:creator>former_member191735</dc:creator>
      <dc:date>2007-12-05T20:13:57Z</dc:date>
    </item>
  </channel>
</rss>

