<?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 getting dump in my Z program in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/getting-dump-in-my-z-program/m-p/6095391#M1359392</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;i am  getting dump in my below code in the delete statement line.actually previously it worked fine but now suddenly we r getting dump  in the second delete statement below.can some body tell me the reason.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;error analysis&lt;/STRONG&gt;: You attempted to change, delete or create a line in the&lt;/P&gt;&lt;P&gt;internal table "\PROG=YBDISEMAT\DATA=INT_MARC", but no valid cursor exists&lt;/P&gt;&lt;P&gt;for the table.&lt;/P&gt;&lt;P&gt;Possible reasons:&lt;/P&gt;&lt;P&gt;1. The relevant ABAP/4 statement does not include the addition&lt;/P&gt;&lt;P&gt;   "...INDEX...", although the statement is not&lt;/P&gt;&lt;P&gt;   inside a "LOOP...ENDLOOP" loop processing this table.&lt;/P&gt;&lt;P&gt;2. The relevant ABAP/4 statement was called from within a&lt;/P&gt;&lt;P&gt;   "LOOP...ENDLOOP" loop after a DELETE "\PROG=YBDISEMAT\DATA=INT_MARC".&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT int_marc INTO wa_marc.&lt;/P&gt;&lt;P&gt;        IF wa_marc-werks IN ra_source.&lt;/P&gt;&lt;P&gt;          READ TABLE int_disgr WITH KEY zdisgr = wa_marc-disgr&lt;/P&gt;&lt;P&gt;                                        zwerks = wa_marc-werks.&lt;/P&gt;&lt;P&gt;          IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;            DELETE int_marc.&lt;/P&gt;&lt;P&gt;          ENDIF.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;        IF wa_marc-werks IN ra_zmdc.&lt;/P&gt;&lt;P&gt;          READ TABLE int_disgr WITH KEY zdisgr = wa_marc-disgr&lt;/P&gt;&lt;P&gt;                                        zwerks = wa_marc-werks.&lt;/P&gt;&lt;P&gt;          IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;            DELETE int_marc. _______________________________________________ getting dump here&lt;/P&gt;&lt;P&gt;          ENDIF.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;        CLEAR wa_marc.&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 11 Sep 2009 09:44:23 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2009-09-11T09:44:23Z</dc:date>
    <item>
      <title>getting dump in my Z program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/getting-dump-in-my-z-program/m-p/6095391#M1359392</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;i am  getting dump in my below code in the delete statement line.actually previously it worked fine but now suddenly we r getting dump  in the second delete statement below.can some body tell me the reason.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;error analysis&lt;/STRONG&gt;: You attempted to change, delete or create a line in the&lt;/P&gt;&lt;P&gt;internal table "\PROG=YBDISEMAT\DATA=INT_MARC", but no valid cursor exists&lt;/P&gt;&lt;P&gt;for the table.&lt;/P&gt;&lt;P&gt;Possible reasons:&lt;/P&gt;&lt;P&gt;1. The relevant ABAP/4 statement does not include the addition&lt;/P&gt;&lt;P&gt;   "...INDEX...", although the statement is not&lt;/P&gt;&lt;P&gt;   inside a "LOOP...ENDLOOP" loop processing this table.&lt;/P&gt;&lt;P&gt;2. The relevant ABAP/4 statement was called from within a&lt;/P&gt;&lt;P&gt;   "LOOP...ENDLOOP" loop after a DELETE "\PROG=YBDISEMAT\DATA=INT_MARC".&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT int_marc INTO wa_marc.&lt;/P&gt;&lt;P&gt;        IF wa_marc-werks IN ra_source.&lt;/P&gt;&lt;P&gt;          READ TABLE int_disgr WITH KEY zdisgr = wa_marc-disgr&lt;/P&gt;&lt;P&gt;                                        zwerks = wa_marc-werks.&lt;/P&gt;&lt;P&gt;          IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;            DELETE int_marc.&lt;/P&gt;&lt;P&gt;          ENDIF.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;        IF wa_marc-werks IN ra_zmdc.&lt;/P&gt;&lt;P&gt;          READ TABLE int_disgr WITH KEY zdisgr = wa_marc-disgr&lt;/P&gt;&lt;P&gt;                                        zwerks = wa_marc-werks.&lt;/P&gt;&lt;P&gt;          IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;            DELETE int_marc. _______________________________________________ getting dump here&lt;/P&gt;&lt;P&gt;          ENDIF.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;        CLEAR wa_marc.&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 11 Sep 2009 09:44:23 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/getting-dump-in-my-z-program/m-p/6095391#M1359392</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-09-11T09:44:23Z</dc:date>
    </item>
    <item>
      <title>Re: getting dump in my Z program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/getting-dump-in-my-z-program/m-p/6095392#M1359393</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;Use the index specification with delete statement.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DELETE &amp;lt;itab&amp;gt; INDEX &amp;lt;idx&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;hence write the below code:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DELETE int_marc index sy-tabix.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this helps&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Shiva&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Edited by: Shiva Kumar Tirumalasetty on Sep 11, 2009 3:17 PM&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 11 Sep 2009 09:47:15 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/getting-dump-in-my-z-program/m-p/6095392#M1359393</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-09-11T09:47:15Z</dc:date>
    </item>
    <item>
      <title>Re: getting dump in my Z program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/getting-dump-in-my-z-program/m-p/6095393#M1359394</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;The error analysis gives you the answer.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;"You attempted to change, delete or create a line in the&lt;/P&gt;&lt;P&gt;internal table "\PROG=YBDISEMAT\DATA=INT_MARC", but no valid cursor exists&lt;/P&gt;&lt;P&gt;for the table."&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It means that the program cannot determine which entry should be deleted from the table INT_MARC.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Have a look at the F1 help of the statement DELETE for correcting your program.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BR,&lt;/P&gt;&lt;P&gt;Advait&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 11 Sep 2009 09:48:12 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/getting-dump-in-my-z-program/m-p/6095393#M1359394</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-09-11T09:48:12Z</dc:date>
    </item>
    <item>
      <title>Re: getting dump in my Z program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/getting-dump-in-my-z-program/m-p/6095394#M1359395</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;First of all deleting an internal table inside the loop is not a good practise ..You are deleting the same internal table that you are looping..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Instead of that you can make a small modification to your code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT int_marc INTO wa_marc.&lt;/P&gt;&lt;P&gt;IF wa_marc-werks IN ra_source.&lt;/P&gt;&lt;P&gt;READ TABLE int_disgr WITH KEY zdisgr = wa_marc-disgr&lt;/P&gt;&lt;P&gt;zwerks = wa_marc-werks.&lt;/P&gt;&lt;P&gt;IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;move 'X' to any field in the internal table.&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;or you can have an additinal field in the end of the internal table like flag type char01.&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;and move 'X' to wa_marc-flag.&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Now outside the loop you can delete&lt;/P&gt;&lt;P&gt;delete int_marc where flag = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Ansari&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 11 Sep 2009 09:50:03 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/getting-dump-in-my-z-program/m-p/6095394#M1359395</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-09-11T09:50:03Z</dc:date>
    </item>
    <item>
      <title>Re: getting dump in my Z program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/getting-dump-in-my-z-program/m-p/6095395#M1359396</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;  Try like below:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
LOOP AT int_marc INTO wa_marc.
IF wa_marc-werks IN ra_source.
READ TABLE int_disgr WITH KEY zdisgr = wa_marc-disgr
zwerks = wa_marc-werks.
IF sy-subrc NE 0.
DELETE int_marc.
continue. &amp;lt;add
ENDIF.
ENDIF.
IF wa_marc-werks IN ra_zmdc.
READ TABLE int_disgr WITH KEY zdisgr = wa_marc-disgr
zwerks = wa_marc-werks.
IF sy-subrc NE 0.
DELETE int_marc. 
continue.  &amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;Add
ENDIF.
ENDIF.
CLEAR wa_marc.
ENDLOOP.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;Dump is coming because the program is trying to delete an entrry that has already been deleted.&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Himanshu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 11 Sep 2009 09:51:06 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/getting-dump-in-my-z-program/m-p/6095395#M1359396</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-09-11T09:51:06Z</dc:date>
    </item>
    <item>
      <title>Re: getting dump in my Z program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/getting-dump-in-my-z-program/m-p/6095396#M1359397</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;you are trying to delete a record from the internal table INT_MARC using the statement "DELETE INT_MARC".&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For using this statement you should have the record to be deleted in the header line of ITN_MARC,But had looped the Internal table to the workarea WA_MARC ,so you dont have that record in the Header Line of INT_MARC ,insted you have it in "WA_MARC".&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;so you have to delete the record from internal table INT_MARC which is there in WA_MARC when your if  condition is getting satisfied.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 11 Sep 2009 10:08:49 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/getting-dump-in-my-z-program/m-p/6095396#M1359397</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-09-11T10:08:49Z</dc:date>
    </item>
  </channel>
</rss>

