<?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: What does this runtime error mean? in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110146#M105944</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I think you'd be better off eliminating the WHERE MATNR = MATPO-MATNR because you are already looping at the matpo table and you will update the same materials multiple times needlessly. Instead, since you are already looping at the table matpo just move sy-tabix into a variable V_VARIABLE that is defined LIKE SY-TABIX.  Do this immediately after the loop at so you get the right sy-tabix value as it will change with other table reads.  Then when you do your modify statement replace the WHERE MATNR = MATPO-MATNR with INDEX V_VARIABLE.  That should work.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 20 Dec 2005 03:50:50 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2005-12-20T03:50:50Z</dc:date>
    <item>
      <title>What does this runtime error mean?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110143#M105941</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi all, i was asked to complete another ABAPer's unfinished program. When i did a syntax check and activated it, there was no problem. However, when i ran it, i got a runtime error, called ITAB_DUPLICATE_KEY. The code is as follows:&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;    FORM SEL_REC                                                     *
*&amp;amp;---------------------------------------------------------------------*
FORM SEL_REC.

  SELECT A~MATNR A~MATKL B~MAKTX *error was marked at this line
    INTO TABLE MATPO
    FROM MARA AS A
      INNER JOIN MAKT AS B
        ON A~MATNR = B~MATNR AND
           B~SPRAS = 'EN'
      INNER JOIN MARD AS C
        ON A~MATNR = C~MATNR
    WHERE A~MATNR IN I_MATNR AND
          A~MATKL IN I_MATKL AND
          A~EXTWG IN I_EXTWG AND
          C~WERKS = I_WERKS.

 LOOP AT MATPO.

   SELECT single MAX( A~EBELN ) MAX( A~EBELP ) B~BEDAT B~LIFNR A~MENGE
A~NETPR
   INTO (MATPO-EBELN, MATPO-EBELP, MATPO-BEDAT, MATPO-LIFNR,
   MATPO-MENGE, MATPO-NETPR)
   FROM EKPO AS A
     INNER JOIN EKKO AS B
       ON B~EBELN = A~EBELN
   WHERE A~BSTYP = 'F' AND
         A~MATNR = MATPO-MATNR AND
         A~WERKS = I_WERKS AND
         B~BUKRS = I_BUKRS AND
         A~LOEKZ = ' '
   GROUP BY B~BEDAT B~LIFNR A~MENGE A~NETPR .

   MOVE MATPO-MATNR TO TXT_KEY.

   PERFORM READ_TXT USING 'BEST' TXT_KEY 'MATERIAL'.

   CONCATENATE MATPO-EBELN MATPO-EBELP INTO TXT_KEY.

   PERFORM READ_TXT USING 'F01' TXT_KEY 'EKPO'.

   MODIFY MATPO
     TRANSPORTING EBELN EBELP BEDAT LIFNR MENGE NETPR
     WHERE MATNR = MATPO-MATNR.

 ENDLOOP.

ENDFORM.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;Can anyone tell me what is the cause behind the error?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 20 Dec 2005 03:15:06 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110143#M105941</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2005-12-20T03:15:06Z</dc:date>
    </item>
    <item>
      <title>Re: What does this runtime error mean?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110144#M105942</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;How did you define your itab MATPO? You must have defined it with unique key, where as your select can potentially pick up multiple duplicate records because you are going to MARD without full key.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 20 Dec 2005 03:18:15 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110144#M105942</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2005-12-20T03:18:15Z</dc:date>
    </item>
    <item>
      <title>Re: What does this runtime error mean?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110145#M105943</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Well, this was how it was originally defined, i'm still looking through the original coding...here goes:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
TYPES: BEGIN OF TYP_MATPO,
         MATNR LIKE MARA-MATNR,  "Material Number
         MATKL LIKE MARA-MATKL,  "Material Group
         MAKTX LIKE MAKT-MAKTX,  "Material Description
         MENGE LIKE EKPO-MENGE,  "Purchase order quantity
         NETPR LIKE EKPO-NETPR,  "Net price in purchasing document
         BEDAT LIKE EKKO-BEDAT,  "Purchasing Document Date
         LIFNR LIKE EKKO-LIFNR,  "Account Number of the Vendor
         EBELN LIKE EKKO-EBELN,  "Purchasing Document Number
         EBELP LIKE EKPO-EBELP,  "Item Number of Purchasing Document
       END OF TYP_MATPO.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 20 Dec 2005 03:32:58 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110145#M105943</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2005-12-20T03:32:58Z</dc:date>
    </item>
    <item>
      <title>Re: What does this runtime error mean?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110146#M105944</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I think you'd be better off eliminating the WHERE MATNR = MATPO-MATNR because you are already looping at the matpo table and you will update the same materials multiple times needlessly. Instead, since you are already looping at the table matpo just move sy-tabix into a variable V_VARIABLE that is defined LIKE SY-TABIX.  Do this immediately after the loop at so you get the right sy-tabix value as it will change with other table reads.  Then when you do your modify statement replace the WHERE MATNR = MATPO-MATNR with INDEX V_VARIABLE.  That should work.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 20 Dec 2005 03:50:50 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110146#M105944</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2005-12-20T03:50:50Z</dc:date>
    </item>
    <item>
      <title>Re: What does this runtime error mean?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110147#M105945</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Bernard,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What you have given is only the TYPE declaration not the internal table. There should be a DATA statement where the internal table will be defined.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am sure it will be defined with a unique key.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Look for the MATPO internal table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Ravi&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 20 Dec 2005 03:51:20 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110147#M105945</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2005-12-20T03:51:20Z</dc:date>
    </item>
    <item>
      <title>Re: What does this runtime error mean?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110148#M105946</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;This is defining your internal table type, but somewhere you must have defined MATPO itself. I want to look at that one.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Srinivas&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 20 Dec 2005 03:53:13 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110148#M105946</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2005-12-20T03:53:13Z</dc:date>
    </item>
    <item>
      <title>Re: What does this runtime error mean?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110149#M105947</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;It pasted astructure. Copy and paste the declaration of 'MATPO'. ( It will like : MATPO ..TYP_MATPO ...WITH HEADER LINE )&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 20 Dec 2005 03:53:17 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110149#M105947</guid>
      <dc:creator>govind_seenivasan</dc:creator>
      <dc:date>2005-12-20T03:53:17Z</dc:date>
    </item>
    <item>
      <title>Re: What does this runtime error mean?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110150#M105948</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Oh, so that what it does, i was looking at it and i didn't know what it meant &lt;span class="lia-unicode-emoji" title=":face_with_tongue:"&gt;😛&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Newbie here, many apologies &lt;SPAN __jive_emoticon_name="happy"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
DATA: MATPO TYPE HASHED TABLE OF TYP_MATPO
        WITH UNIQUE KEY MATNR
        WITH HEADER LINE.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;Could anyone explain the use of TYPES, why can't i we use TABLES straight away?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 20 Dec 2005 03:57:57 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110150#M105948</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2005-12-20T03:57:57Z</dc:date>
    </item>
    <item>
      <title>Re: What does this runtime error mean?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110151#M105949</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;PRE&gt;&lt;CODE&gt;DATA: MATPO TYPE HASHED TABLE OF TYP_MATPO
       &amp;lt;b&amp;gt; WITH UNIQUE KEY MATNR&amp;lt;/b&amp;gt;
        WITH HEADER LINE.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Yes the highlighted one is what is causing it.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Types are more needed in ABAP objects context. TABLES statement is used only in conjunction with &amp;lt;b&amp;gt;database structures and tables&amp;lt;/b&amp;gt;&amp;lt;i&amp;gt; not internal tables&amp;lt;/i&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Srinivas&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 20 Dec 2005 04:01:19 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110151#M105949</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2005-12-20T04:01:19Z</dc:date>
    </item>
    <item>
      <title>Re: What does this runtime error mean?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110152#M105950</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;So am i suppose to remove it?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 20 Dec 2005 04:04:29 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110152#M105950</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2005-12-20T04:04:29Z</dc:date>
    </item>
    <item>
      <title>Re: What does this runtime error mean?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110153#M105951</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Bernard,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you are expecting to process the duplicate entries as well, yes you need to remove the same. &lt;/P&gt;&lt;P&gt;However, I am sure there must be a reason why it's been declared that way. Probably there is something wrong with the data selection because of which it is giving duplicate entries.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Quick solution is to remove it and check the output.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Ravi&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 20 Dec 2005 04:10:48 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110153#M105951</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2005-12-20T04:10:48Z</dc:date>
    </item>
    <item>
      <title>Re: What does this runtime error mean?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110154#M105952</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;No don't remove it if it is there and you are adding your code on top of it. Remove the MARD select out of your current select and push it into the loop. Since, in your code, you are not looking to do anything with MARD, I suggest you take it out completely. I think what you wanted to do is to see if the material is in a certain plant or not. If that is the case, replace MARD with MARC and it should work.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 20 Dec 2005 04:26:51 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110154#M105952</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2005-12-20T04:26:51Z</dc:date>
    </item>
    <item>
      <title>Re: What does this runtime error mean?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110155#M105953</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi again, i did as u suggested...i removed it and ran the program. It took a very long while and i got a TIME_OUT runtime error...it also marked a particular line, as follows:&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;    FORM READ_TXT                                                    *
*&amp;amp;---------------------------------------------------------------------*
FORM READ_TXT USING ID XNAME OBJ.

DATA: CTR TYPE I,
      PO_CTR TYPE I.

CLEAR: TXT.  "this line was marked

  SELECT SINGLE * FROM STXH CLIENT SPECIFIED
  INTO WA_STXH
  WHERE MANDT = SY-MANDT AND
        TDOBJECT = OBJ AND
        TDNAME = XNAME AND
        TDID = ID AND
        TDSPRAS  = SY-LANGU.

  IF SY-SUBRC = 0.
    REFRESH txt.
    CTR = 1.
    CALL FUNCTION 'READ_TEXT'
         EXPORTING
              CLIENT   = SY-MANDT
              ID       = ID
              NAME     = XNAME
              OBJECT   = OBJ
              LANGUAGE = SY-LANGU
         TABLES
              LINES    = TXT.

    LOOP AT TXT.
      IF ID = 'BEST'.
        MOVE XNAME TO MATTXT-MATNR.
        MOVE CTR TO MATTXT-CTRT.
        MOVE TXT-TDLINE TO MATTXT-MAT_TXT.
        APPEND MATTXT.
      ELSEIF ID = 'F01'.
        READ TABLE MATTXT WITH KEY MATNR = MATPO-MATNR CTRT = CTR.
        IF SY-SUBRC = 0.
          MOVE TXT-TDLINE TO MATTXT-PO_TXT.
          MODIFY MATTXT TRANSPORTING PO_TXT
          WHERE MATNR = MATPO-MATNR.
        ELSE.
          MOVE MATPO-MATNR TO MATTXT-MATNR.
          MOVE CTR TO MATTXT-CTRT.
          MOVE TXT-TDLINE TO MATTXT-PO_TXT.
          APPEND MATTXT.
        ENDIF.
      ENDIF.
      CTR = CTR + 1.
    ENDLOOP.
  ENDIF.

  SELECT DISTINCT LIFNR NAME1
  FROM LFA1
  INTO TABLE I_LFA1
  FOR ALL ENTRIES IN MATPO
  WHERE SPRAS = 'EN' AND
        LIFNR = MATPO-LIFNR.

ENDFORM.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 20 Dec 2005 04:28:22 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110155#M105953</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2005-12-20T04:28:22Z</dc:date>
    </item>
    <item>
      <title>Re: What does this runtime error mean?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110156#M105954</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Srinivas, i did as you suggested but i'm still using MARD instead of MARC. When i tried running it, it took too long a time, abt 10 minutes has passed, so i had to stop the transaction. Do you want to have a look at the original coding given to me? I still haven't touch it yet by adding any of my own codes...i'm still trying to understand the flow&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 20 Dec 2005 04:45:10 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110156#M105954</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2005-12-20T04:45:10Z</dc:date>
    </item>
    <item>
      <title>Re: What does this runtime error mean?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110157#M105955</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The code you published tells me that you are selecting records from MARA, MAKT and MARD. While every material selected from MARA has only one corresponding description for a give language in MAKT, the same is not true with MARD. A material can be extended to any number of locations within a particular plant. Since your internal table does not allow multiple entries for the same material, you cannot use it. Using MARC instead of MARD will ensure that for each material you selected from MARA, there is only one or none for the plant I_WERKS in MARC.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It may be timing out for some other reason. What were you asked to change in this program? Is it related to performance or the runtime error you originally got or entirely different reason?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Srinivas&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 20 Dec 2005 05:28:51 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110157#M105955</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2005-12-20T05:28:51Z</dc:date>
    </item>
    <item>
      <title>Re: What does this runtime error mean?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110158#M105956</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Your timeout error may actually be coming after the selection from MARA, MAKT and MARD. When you are looping at MATPO, you are doing a select from EKPO and EKKO and doing group operation MAX on the columns directly. This will consume lot of time. Also, your join uses lot of fields in the WHERE clause that may be resulting in a sequential search instead of indexed search. Remove your B~BUKRS condition from the where clause and put it after the select statement as follows.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CHECK EKKO-BUKRS = I_BUKRS. If this does not improve the performance significantly, remove the BSTYP from the where clause and do a similar check as BUKRS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Srinivas&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 20 Dec 2005 05:35:09 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110158#M105956</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2005-12-20T05:35:09Z</dc:date>
    </item>
    <item>
      <title>Re: What does this runtime error mean?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110159#M105957</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Sorry for the late reply, i had to participate in a key user training session so i couldn't get back on this until now.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here's what was originally written in the program and i'm suppose to fill up the blanks:&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
REPORT  ZLPUPO03 NO STANDARD PAGE HEADING LINE-SIZE 275 LINE-COUNT 65
MESSAGE-ID Z00.

TABLES: EKKO,  "Purchasing Document Header
        EKPO,  "Purchasing Document Item
        MAKT,  "Material Descriptions
        MARA,  "General Material Data
        MARD.  "Storage Location Data for Material
*        LFA1,  "Vendor Master (General Section)
*        STXH.  "STXD SAPscript text file header

TYPES: BEGIN OF TYP_MATPO,
         MATNR LIKE MARA-MATNR,  "Material Number
         MATKL LIKE MARA-MATKL,  "Material Group
         MAKTX LIKE MAKT-MAKTX,  "Material Description
         MENGE LIKE EKPO-MENGE,  "Purchase order quantity
         NETPR LIKE EKPO-NETPR,  "Net price in purchasing document
         BEDAT LIKE EKKO-BEDAT,  "Purchasing Document Date
         LIFNR LIKE EKKO-LIFNR,  "Account Number of the Vendor
         EBELN LIKE EKKO-EBELN,  "Purchasing Document Number
         EBELP LIKE EKPO-EBELP,  "Item Number of Purchasing Document
       END OF TYP_MATPO.

DATA: MATPO TYPE HASHED TABLE OF TYP_MATPO
        WITH UNIQUE KEY MATNR
        WITH HEADER LINE.

TYPES: BEGIN OF TYP_POIN,
         EBELN LIKE EKKO-EBELN,  "Purchasing Document Number
         EBELP LIKE EKPO-EBELP,  "Item Number of Purchasing Document
         BEDAT LIKE EKKO-BEDAT,  "Purchasing Document Date
         LIFNR LIKE EKKO-LIFNR,  "Account Number of the Vendor
         MENGE LIKE EKPO-MENGE,  "Purchase order quantity
         PEINH LIKE EKPO-PEINH,  "Price unit
       END OF TYP_POIN.

DATA: POIN TYPE HASHED TABLE OF TYP_POIN
        WITH UNIQUE KEY EBELN EBELP
        WITH HEADER LINE.

TYPES: BEGIN OF TYP_MATTXT,
         MATNR LIKE MARA-MATNR,  "Material Number
         CTRT TYPE I,
         MAT_TXT(80) TYPE C,
         PO_TXT(80) TYPE C,
       END OF TYP_MATTXT.

DATA: MATTXT TYPE TYP_MATTXT OCCURS 0 WITH HEADER LINE.

TYPES: BEGIN OF TYP_LFA1,
         LIFNR LIKE LFA1-LIFNR,  "Account Number of Vendor or Creditor
         NAME1 LIKE LFA1-NAME1,  "Name 1
       END OF TYP_LFA1.

DATA: I_LFA1 TYPE HASHED TABLE OF TYP_LFA1
       WITH UNIQUE KEY LIFNR
       WITH HEADER LINE.

DATA: WA_STXH TYPE STXH,
      TXT LIKE TLINE OCCURS 0 WITH HEADER LINE,
      TXT_KEY LIKE STXH-TDNAME,  "Name
      L_PAGE_COUNT(5) TYPE C.

*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;    SELECTION-SCREEN                                                 *
*&amp;amp;---------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF BLOCK 1 WITH FRAME TITLE TEXT-001.
PARAMETERS: I_BUKRS LIKE EKKO-BUKRS DEFAULT 'GSPC' OBLIGATORY,
            I_WERKS LIKE MARD-WERKS DEFAULT '6000' OBLIGATORY.
SELECT-OPTIONS: I_MATNR FOR MARA-MATNR,
                I_MTART FOR MARA-MTART,
                I_MATKL FOR MARA-MATKL,
                I_EXTWG FOR MARA-EXTWG.
SELECTION-SCREEN END OF BLOCK 1.

*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;    START-OF-SELECTION                                               *
*&amp;amp;---------------------------------------------------------------------*
START-OF-SELECTION.

  PERFORM INITIALIZE.
  PERFORM SEL_REC.
  PERFORM WRT_REP.
  PERFORM PAGE_COUNT.

*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;    FORM INITIALIZE                                                  *
*&amp;amp;---------------------------------------------------------------------*
FORM INITIALIZE.

  CLEAR: POIN, MATPO.
  REFRESH: POIN, MATPO.
  
ENDFORM.

*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;    FORM SEL_REC                                                     *
*&amp;amp;---------------------------------------------------------------------*
FORM SEL_REC.

  SELECT A~MATNR A~MATKL B~MAKTX
    INTO TABLE MATPO
    FROM MARA AS A
      INNER JOIN MAKT AS B
        ON A~MATNR = B~MATNR AND
           B~SPRAS = 'EN'
      INNER JOIN MARD AS C
        ON A~MATNR = C~MATNR
    WHERE A~MATNR IN I_MATNR AND
          A~MATKL IN I_MATKL AND
          A~EXTWG IN I_EXTWG AND
          C~WERKS = I_WERKS.

 LOOP AT MATPO.

   SELECT single MAX( A~EBELN ) MAX( A~EBELP ) B~BEDAT B~LIFNR A~MENGE
A~NETPR
   INTO (MATPO-EBELN, MATPO-EBELP, MATPO-BEDAT, MATPO-LIFNR,
   MATPO-MENGE, MATPO-NETPR)
   FROM EKPO AS A
     INNER JOIN EKKO AS B
       ON B~EBELN = A~EBELN
     INNER JOIN MARD AS C
       ON A~MATNR = C~MATNR AND
          A~WERKS = C~WERKS
   WHERE A~BSTYP = 'F' AND
         A~MATNR = MATPO-MATNR AND
         A~WERKS = I_WERKS AND
         B~BUKRS = I_BUKRS AND
         A~LOEKZ = ' '
   GROUP BY B~BEDAT B~LIFNR A~MENGE A~NETPR .

   MOVE MATPO-MATNR TO TXT_KEY.

   PERFORM READ_TXT USING 'BEST' TXT_KEY 'MATERIAL'.

   CONCATENATE MATPO-EBELN MATPO-EBELP INTO TXT_KEY.

   PERFORM READ_TXT USING 'F01' TXT_KEY 'EKPO'.

   MODIFY MATPO
     TRANSPORTING EBELN EBELP BEDAT LIFNR MENGE NETPR
     WHERE MATNR = MATPO-MATNR.

 ENDLOOP.

ENDFORM.

*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;    FORM READ_TXT                                                    *
*&amp;amp;---------------------------------------------------------------------*
FORM READ_TXT USING ID XNAME OBJ.

DATA: CTR TYPE I,
      PO_CTR TYPE I.

CLEAR: TXT.

  SELECT SINGLE * FROM STXH CLIENT SPECIFIED
  INTO WA_STXH
  WHERE MANDT = SY-MANDT AND
        TDOBJECT = OBJ AND
        TDNAME = XNAME AND
        TDID = ID AND
        TDSPRAS  = SY-LANGU.

  IF SY-SUBRC = 0.
    REFRESH txt.
    CTR = 1.
    CALL FUNCTION 'READ_TEXT'
         EXPORTING
              CLIENT   = SY-MANDT
              ID       = ID
              NAME     = XNAME
              OBJECT   = OBJ
              LANGUAGE = SY-LANGU
         TABLES
              LINES    = TXT.

    LOOP AT TXT.
      IF ID = 'BEST'.
        MOVE XNAME TO MATTXT-MATNR.
        MOVE CTR TO MATTXT-CTRT.
        MOVE TXT-TDLINE TO MATTXT-MAT_TXT.
        APPEND MATTXT.
      ELSEIF ID = 'F01'.
        READ TABLE MATTXT WITH KEY MATNR = MATPO-MATNR CTRT = CTR.
        IF SY-SUBRC = 0.
          MOVE TXT-TDLINE TO MATTXT-PO_TXT.
          MODIFY MATTXT TRANSPORTING PO_TXT
          WHERE MATNR = MATPO-MATNR.
        ELSE.
          MOVE MATPO-MATNR TO MATTXT-MATNR.
          MOVE CTR TO MATTXT-CTRT.
          MOVE TXT-TDLINE TO MATTXT-PO_TXT.
          APPEND MATTXT.
        ENDIF.
      ENDIF.
      CTR = CTR + 1.
    ENDLOOP.
  ENDIF.

  SELECT DISTINCT LIFNR NAME1
  FROM LFA1
  INTO TABLE I_LFA1
  FOR ALL ENTRIES IN MATPO
  WHERE SPRAS = 'EN' AND
        LIFNR = MATPO-LIFNR.

ENDFORM.

*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;    FORM WRT_REP                                                     *
*&amp;amp;---------------------------------------------------------------------*
FORM WRT_REP.

  SORT MATTXT BY MATNR CTRT.
  LOOP AT MATPO.
    WRITE:/2 MATPO-MATNR(10),
          12 MATPO-MATKL,
          21 MATPO-MAKTX(30).
*          51 MATPO-.
    LOOP AT MATTXT
      WHERE MATNR = MATPO-MATNR.
*      IF TYP_MATTXT-CTRT = 1.
        WRITE: 51 MATTXT-MAT_TXT, MATTXT-PO_TXT.
*      ELSE.
*        WRITE:/ 51 MATTXT-MAT_TXT, MATTXT-PO_TXT.
*      ENDIF.
    ENDLOOP.
  ENDLOOP.

ENDFORM.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;I'm still trying to understand the flow and its logic. What i don't get is why TYPES was used? Was it really necessary to do it in such a way to begin with? No spec doc was provided for this program, so i'm pretty much given instructions verbally. From what i could understand, i am to enable the program to output the following in the report based on certain selection criteria input by the user:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Material Code (MARA-MATNR)&lt;/P&gt;&lt;P&gt;Material Group (MARA-MATKL)&lt;/P&gt;&lt;P&gt;Material Description (MAKT-MAKTX)&lt;/P&gt;&lt;P&gt;Material PO Text (Can't find it)&lt;/P&gt;&lt;P&gt;Item Text/Specification (Can't find it)&lt;/P&gt;&lt;P&gt;Last Purchase Quantity (EKPO-MENGE)&lt;/P&gt;&lt;P&gt;Last Purchase Price (EKPO-PEINH)&lt;/P&gt;&lt;P&gt;Last Purchase Date (EKKO-BEDAT)&lt;/P&gt;&lt;P&gt;Last Purchase Vendor (LFA1-NAME1)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Srinivas, you mentioned something abt doing away with MARD or replacing it with MARC, but won't touch it yet as i'm still looking into it as to why MARD was used by the pervious ABAPer&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 Dec 2005 01:56:17 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110159#M105957</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2005-12-21T01:56:17Z</dc:date>
    </item>
    <item>
      <title>Re: What does this runtime error mean?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110160#M105958</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;TYPES are used to replace the older coding style.  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Old Code Style.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;Data: begin of itab occurs 0,
      fld1 type c,
      fld2 type c,
      end of itab.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;New Code Style.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
Types: begin of ttab,
       fld1 type c,
       fld2 type c,
       end of ttab.
data: itab type table of ttab.
data: wa type ttab.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This is because with ABAP Objects, the OCCURS 0 is not allowed as are header lines.  So you must have a work area.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Rich Heilman&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 Dec 2005 02:02:49 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110160#M105958</guid>
      <dc:creator>RichHeilman</dc:creator>
      <dc:date>2005-12-21T02:02:49Z</dc:date>
    </item>
    <item>
      <title>Re: What does this runtime error mean?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110161#M105959</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Heh, thanks Rich, i didn't know that &lt;SPAN __jive_emoticon_name="happy"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But i don't quite get last time of your example:&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
data: wa type ttab.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;What is it suppose to represent?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 Dec 2005 02:12:29 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110161#M105959</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2005-12-21T02:12:29Z</dc:date>
    </item>
    <item>
      <title>Re: What does this runtime error mean?</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110162#M105960</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I meant the last line&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 Dec 2005 02:13:15 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/what-does-this-runtime-error-mean/m-p/1110162#M105960</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2005-12-21T02:13:15Z</dc:date>
    </item>
  </channel>
</rss>

