<?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: Count field in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/count-field/m-p/1039596#M86074</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Try this code. It sorts the itab and compares the first one with the next, and the next, until they don't match and then starts comparing the new one, with its next and so on. This way you can get the count of unique values in your itab without defining another itab and it is quicker.&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
REPORT ztest1 .


DATA: BEGIN OF itab OCCURS 0,
        value  TYPE c,
        id(10) TYPE n.
DATA: END OF itab.

DATA: v_lines TYPE i,
      v_index LIKE sy-tabix,
      v_count TYPE i,
      v_id LIKE itab-id.

START-OF-SELECTION.

  itab-id = 1.
  itab-value = 'A'.
  APPEND itab.
  CLEAR itab.

  itab-id = 2.
  itab-value = 'B'.
  APPEND itab.
  CLEAR itab.

  itab-id = 1.
  itab-value = 'C'.
  APPEND itab.
  CLEAR itab.

  itab-id = 6.
  itab-value = 'D'.
  APPEND itab.
  CLEAR itab.

  itab-id = 3.
  itab-value = 'B'.
  APPEND itab.
  CLEAR itab.

  itab-id = 1.
  itab-value = 'C'.
  APPEND itab.
  CLEAR itab.

  itab-id = 3.
  itab-value = 'B'.
  APPEND itab.
  CLEAR itab.

  itab-id = 4.
  itab-value = 'C'.
  APPEND itab.
  CLEAR itab.

  itab-id = 5.
  itab-value = 'C'.
  APPEND itab.
  CLEAR itab.

  SORT itab BY id.
  DESCRIBE TABLE itab LINES v_lines.

  v_index = 1.
  v_count = 1.
  DO.
    IF v_index = 1.
      READ TABLE itab INDEX v_index.
      v_id = itab-id.
*-- read the next
      v_index = v_index + 1.
    ENDIF.
    IF v_index &amp;gt; v_lines.
      EXIT.
    ENDIF.
    READ TABLE itab INDEX v_index.
    IF itab-id = v_id.
*-- it is same as the previous one, ignore
    ELSE.
*-- it is a different one, add 1 to count
      v_count = v_count + 1.
    ENDIF.
    v_index = v_index + 1.
    v_id = itab-id.
  ENDDO.

  WRITE:/ v_count.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 21 Oct 2005 20:33:16 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2005-10-21T20:33:16Z</dc:date>
    <item>
      <title>Count field</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/count-field/m-p/1039587#M86065</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I have an internal table and is interesting in information in one field. I want to know how many different values there are in one field. How can I do this?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 19 Oct 2005 11:16:03 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/count-field/m-p/1039587#M86065</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2005-10-19T11:16:03Z</dc:date>
    </item>
    <item>
      <title>Re: Count field</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/count-field/m-p/1039588#M86066</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;this will work if field1 is the first field in table....&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data ctr type i. &lt;/P&gt;&lt;P&gt;sort itab by field1.&lt;/P&gt;&lt;P&gt;loop at itab.&lt;/P&gt;&lt;P&gt; at new field1.&lt;/P&gt;&lt;P&gt;  add 1 to ctr.&lt;/P&gt;&lt;P&gt;  ...&amp;lt;other code here&amp;gt;&lt;/P&gt;&lt;P&gt; endat.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ctr will contain different number of values in the field.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if its not the first field...try something like this...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data ctr type i.&lt;/P&gt;&lt;P&gt;data f1 like itab-field1.&lt;/P&gt;&lt;P&gt;sort itab by field1.&lt;/P&gt;&lt;P&gt;loop at itab.&lt;/P&gt;&lt;P&gt;  if f1 ne itab-field1.&lt;/P&gt;&lt;P&gt;    add 1 to ctr.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;  f1 = itab-field1.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;rgds,&lt;/P&gt;&lt;P&gt;PJ&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Message was edited by: Priyank Jain&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 19 Oct 2005 11:21:13 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/count-field/m-p/1039588#M86066</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2005-10-19T11:21:13Z</dc:date>
    </item>
    <item>
      <title>Re: Count field</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/count-field/m-p/1039589#M86067</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;let me take like that&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;itab-info = 1&lt;/P&gt;&lt;P&gt;itab-info = 1&lt;/P&gt;&lt;P&gt;itab-info = 2&lt;/P&gt;&lt;P&gt;itab-info = 3&lt;/P&gt;&lt;P&gt;itab-info = 3&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;you want like &lt;/P&gt;&lt;P&gt;itab-info = 1&lt;/P&gt;&lt;P&gt;itab-info = 2&lt;/P&gt;&lt;P&gt;itab-info = 3&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if the above assumption is correct then&lt;/P&gt;&lt;P&gt;define one more itab say itab1&lt;/P&gt;&lt;P&gt;itab1[] = itab.&lt;/P&gt;&lt;P&gt;sort itab1 by info.&lt;/P&gt;&lt;P&gt;delete adjacent duplicates from itab1 comparing info&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;descripe table itab1 lines n&lt;/P&gt;&lt;P&gt;cheers,&lt;/P&gt;&lt;P&gt;sasi&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 19 Oct 2005 11:22:11 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/count-field/m-p/1039589#M86067</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2005-10-19T11:22:11Z</dc:date>
    </item>
    <item>
      <title>Re: Count field</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/count-field/m-p/1039590#M86068</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;It is not the first field. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I want to do something like this:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;COUNT DISTINCT idnumber IN TABLE itab.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 19 Oct 2005 11:23:01 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/count-field/m-p/1039590#M86068</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2005-10-19T11:23:01Z</dc:date>
    </item>
    <item>
      <title>Re: Count field</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/count-field/m-p/1039591#M86069</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: begin of count occurs 0,&lt;/P&gt;&lt;P&gt;       field type ...,&lt;/P&gt;&lt;P&gt;       munber type i,&lt;/P&gt;&lt;P&gt;      end of count.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;loop at itab.&lt;/P&gt;&lt;P&gt;move-corresponding itab to count.&lt;/P&gt;&lt;P&gt;count-number = count-number + 1.&lt;/P&gt;&lt;P&gt;collect count.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Svetlin&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 19 Oct 2005 11:32:15 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/count-field/m-p/1039591#M86069</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2005-10-19T11:32:15Z</dc:date>
    </item>
    <item>
      <title>Re: Count field</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/count-field/m-p/1039592#M86070</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You can copy it to another itab, sort that itab, do DELETE ADJACENT DUPLICATES FROM itab COMPARING {comp1 comp2 ...} and do a lines( itab )&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Eddy&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 19 Oct 2005 11:32:50 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/count-field/m-p/1039592#M86070</guid>
      <dc:creator>eddy_declercq</dc:creator>
      <dc:date>2005-10-19T11:32:50Z</dc:date>
    </item>
    <item>
      <title>Re: Count field</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/count-field/m-p/1039593#M86071</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi ,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;save diff. values of your field in another int. tab&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;e.g. field is land1 of table itab&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;REPORT zforum60 .

DATA: BEGIN OF itab OCCURS 0,
        bukrs TYPE t001-bukrs,
        butxt TYPE t001-butxt,
        ort01 TYPE t001-ort01,
        land1 TYPE t001-land1,
      END OF itab.
PARAMETERS fieldn(30) DEFAULT 'LAND1'.
SELECT-OPTIONS s_bukrs FOR itab-bukrs.
DATA: BEGIN OF atab OCCURS 0,
      str TYPE string,
      END OF atab.
FIELD-SYMBOLS &amp;lt;f&amp;gt;.
*
SELECT bukrs butxt ort01 land1 FROM  t001 INTO TABLE itab
       WHERE  bukrs  IN s_bukrs.

CONCATENATE 'ITAB-' fieldn INTO fieldn.
ASSIGN (fieldn) TO &amp;lt;f&amp;gt;.
LOOP AT itab.
  MOVE &amp;lt;f&amp;gt; TO atab-str.
  COLLECT atab.
ENDLOOP.

LOOP AT atab.
  WRITE: / atab-str.
ENDLOOP.
ULINE.
DESCRIBE TABLE atab LINES sy-tfill.
WRITE: / 'cnt:', sy-tfill.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Andreas&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 19 Oct 2005 11:36:05 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/count-field/m-p/1039593#M86071</guid>
      <dc:creator>andreas_mann3</dc:creator>
      <dc:date>2005-10-19T11:36:05Z</dc:date>
    </item>
    <item>
      <title>Re: Count field</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/count-field/m-p/1039594#M86072</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;try with my previous soltion&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;itab1[] = itab[]&lt;/P&gt;&lt;P&gt;sort itab1 by idnumber&lt;/P&gt;&lt;P&gt;delete adjucant duplicates&lt;/P&gt;&lt;P&gt;descripe table&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;cheers,&lt;/P&gt;&lt;P&gt;sasi&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 19 Oct 2005 11:45:27 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/count-field/m-p/1039594#M86072</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2005-10-19T11:45:27Z</dc:date>
    </item>
    <item>
      <title>Re: Count field</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/count-field/m-p/1039595#M86073</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Pls don't forget to reward points and close the question if you find the answers useful.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Eddy&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 21 Oct 2005 08:06:37 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/count-field/m-p/1039595#M86073</guid>
      <dc:creator>eddy_declercq</dc:creator>
      <dc:date>2005-10-21T08:06:37Z</dc:date>
    </item>
    <item>
      <title>Re: Count field</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/count-field/m-p/1039596#M86074</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Try this code. It sorts the itab and compares the first one with the next, and the next, until they don't match and then starts comparing the new one, with its next and so on. This way you can get the count of unique values in your itab without defining another itab and it is quicker.&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
REPORT ztest1 .


DATA: BEGIN OF itab OCCURS 0,
        value  TYPE c,
        id(10) TYPE n.
DATA: END OF itab.

DATA: v_lines TYPE i,
      v_index LIKE sy-tabix,
      v_count TYPE i,
      v_id LIKE itab-id.

START-OF-SELECTION.

  itab-id = 1.
  itab-value = 'A'.
  APPEND itab.
  CLEAR itab.

  itab-id = 2.
  itab-value = 'B'.
  APPEND itab.
  CLEAR itab.

  itab-id = 1.
  itab-value = 'C'.
  APPEND itab.
  CLEAR itab.

  itab-id = 6.
  itab-value = 'D'.
  APPEND itab.
  CLEAR itab.

  itab-id = 3.
  itab-value = 'B'.
  APPEND itab.
  CLEAR itab.

  itab-id = 1.
  itab-value = 'C'.
  APPEND itab.
  CLEAR itab.

  itab-id = 3.
  itab-value = 'B'.
  APPEND itab.
  CLEAR itab.

  itab-id = 4.
  itab-value = 'C'.
  APPEND itab.
  CLEAR itab.

  itab-id = 5.
  itab-value = 'C'.
  APPEND itab.
  CLEAR itab.

  SORT itab BY id.
  DESCRIBE TABLE itab LINES v_lines.

  v_index = 1.
  v_count = 1.
  DO.
    IF v_index = 1.
      READ TABLE itab INDEX v_index.
      v_id = itab-id.
*-- read the next
      v_index = v_index + 1.
    ENDIF.
    IF v_index &amp;gt; v_lines.
      EXIT.
    ENDIF.
    READ TABLE itab INDEX v_index.
    IF itab-id = v_id.
*-- it is same as the previous one, ignore
    ELSE.
*-- it is a different one, add 1 to count
      v_count = v_count + 1.
    ENDIF.
    v_index = v_index + 1.
    v_id = itab-id.
  ENDDO.

  WRITE:/ v_count.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 21 Oct 2005 20:33:16 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/count-field/m-p/1039596#M86074</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2005-10-21T20:33:16Z</dc:date>
    </item>
  </channel>
</rss>

