<?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 Unwanted ABAP Code Block Triggering - IF condition not working in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499383#M1851968</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Friends,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am facing weird issue in my production system i.e. one of the code block which was bounded in IF condition is getting triggered. However, as per the data that I have in my system this IF condition should skip that code block.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Let me give you code and execution flow here:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have Program A in which I am submitting Program B in background mode to selected server. This Program A will be executed by end user in Background mode.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
&lt;P&gt;&lt;SPAN class="L0S52"&gt;call &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;function &lt;/SPAN&gt;&lt;SPAN class="L0S33"&gt;'JOB_OPEN'&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;exporting&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jobname&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;job_name&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;importing&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jobcount&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;job_number&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;exceptions&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cant_create_job&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;&lt;SPAN class="L0S32"&gt;01&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; invalid_job_data &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;&lt;SPAN class="L0S32"&gt;02&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jobname_missing&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;&lt;SPAN class="L0S32"&gt;03&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN class="L0S55"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN class="L0S52"&gt;if &lt;/SPAN&gt;sy&lt;SPAN class="L0S70"&gt;-&lt;/SPAN&gt;subrc &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;&lt;SPAN class="L0S32"&gt;0&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;submit program B&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; via job job_name &lt;SPAN class="L0S52"&gt;number &lt;/SPAN&gt;job_number&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;with &lt;/SPAN&gt;p_sched&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;sched&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;with &lt;/SPAN&gt;period_p &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;period&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;with &lt;/SPAN&gt;fyear_p&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;fyear&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="font-size: 9pt; line-height: 12pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="L0S52" style="font-size: 9pt; line-height: 12pt;"&gt;with &lt;/SPAN&gt;&lt;SPAN style="font-size: 9pt; line-height: 12pt;"&gt;username &lt;/SPAN&gt;&lt;SPAN class="L0S55" style="font-size: 9pt; line-height: 12pt;"&gt;= &lt;/SPAN&gt;&lt;SPAN style="font-size: 9pt; line-height: 12pt;"&gt;ruser&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN class="L0S52"&gt;and &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;return&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN class="L0S52"&gt;call &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;function &lt;/SPAN&gt;&lt;SPAN class="L0S33"&gt;'JOB_CLOSE'&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;exporting&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jobcount&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;job_number&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jobname&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;job_name&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sdlstrtdt&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;start_date&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sdlstrttm&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;start_time&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; targetserver&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;l_targetserver&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S31"&gt;"V05++&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;exceptions&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cant_start_immediate &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;&lt;SPAN class="L0S32"&gt;01&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; invalid_startdate&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;&lt;SPAN class="L0S32"&gt;02&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jobname_missing&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;&lt;SPAN class="L0S32"&gt;03&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; job_close_failed&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;&lt;SPAN class="L0S32"&gt;04&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; job_nosteps&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;&lt;SPAN class="L0S32"&gt;05&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; job_notex&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;&lt;SPAN class="L0S32"&gt;06&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lock_failed&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;&lt;SPAN class="L0S32"&gt;07&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN class="L0S55"&gt;endif.&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As you can see in code, I am passing job to run on l_targetserver. This program also releases some other jobs on other programs.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In Program B, I have code like this:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
&lt;P&gt;Top Include.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;start-of-selection.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;perform routine1 using p_fyear. "THIS HAS SOME SELECT QUERIES&amp;nbsp; AND&amp;nbsp; OTHER CODE and THERE IS NO ISSUE WITH IT. THIS ROUTINE IS&lt;/P&gt;
&lt;P&gt;ALSO HAVING ONE AND ONLY 'CLEAR' statement on DELTA_FLAG.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;perrform routine2.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;form routine2.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;loop itab into wa.&amp;nbsp; " This itab was populated in routine1&lt;/P&gt;
&lt;P&gt;&amp;nbsp; perform get_flag." WE ARE PASSING VALUE TO DELTA_FLAG VARIABLE HERE. YOU CAN CHECK CODE BELOW.&lt;/P&gt;
&lt;P&gt;perform process_data. "CHECK THIS ROUTINE&lt;/P&gt;
&lt;P&gt;peform update_records.&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;endform.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;Form Get_FLag.&lt;/P&gt;
&lt;P&gt;select * from dbtable into localtable where &amp;lt;condition&amp;gt;. " THIS QUERY RETURNS SOME DATA AND MY FLAG WILL BE SET AS 'X'.&lt;/P&gt;
&lt;P&gt;if sy-subrc = 0.&lt;/P&gt;
&lt;P&gt;delta_flag = 'X'. "THis one declared in top include.&lt;/P&gt;
&lt;P&gt;endif.&lt;/P&gt;
&lt;P&gt;EndForm.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;Form Process_Data.&lt;/P&gt;
&lt;P&gt;Perform get_dataset1.&lt;/P&gt;
&lt;P&gt;while counter &amp;lt;&amp;gt; 0. " Variable Counter declared in top include and default value is 20. Value will be decreased in side this loop. No issues with it.&lt;/P&gt;
&lt;P&gt;if wa-fld1 = '1'. "Check value of one of the field.&lt;/P&gt;
&lt;P&gt;&amp;nbsp; continue.&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;perform get_delta_data. " We have Unwanted ABAP code (for my scenario) here.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;endwhile.&lt;/P&gt;
&lt;P&gt;Endform.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;form update_records.&lt;/P&gt;
&lt;P&gt;call function 'FUNCTION' in update task exporting par1 = itab.&lt;/P&gt;
&lt;P&gt;commitwork&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;endform.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;form get_delta_data.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;if delta_flag is initial.&lt;/P&gt;
&lt;P&gt;select data from BSEG into i_bseg where &amp;lt;condition&amp;gt;. " This query is getting triggered in my system.&lt;/P&gt;
&lt;P&gt;endif.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;endform.&lt;/P&gt;

&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;All my data objects were declared in Top include of the program. Subroutines with their parameters were same as above code. I am not using any sub-routine second time or out-side of this program. As shown, this program updates records to one of the table with UPDATE function module IN UPDATE TASK and there is COMMITWORK after that. This task is part of&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As you could understand, DELTA_FLAG is having 'X' but query on BSEG is getting triggered. We are not clearing this variable after populating 'X' to it. I can see this query from Program B captured in ST12 trace results. (Verified it multiple times)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I did this analysis:&lt;/P&gt;&lt;P&gt;1. Ran this process in foreground with debugging, then there is no issue.&lt;/P&gt;&lt;P&gt;2. Debugged 'Finished' job of my production system, but I dont see this code triggered in Debug mode.&lt;/P&gt;&lt;P&gt;3. Replicated same execution process in our non-production environments, but there is no issue.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Let me know if you need any other details.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks for your time.&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Naveen&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 21 Aug 2014 10:55:13 GMT</pubDate>
    <dc:creator>naveen_inuganti2</dc:creator>
    <dc:date>2014-08-21T10:55:13Z</dc:date>
    <item>
      <title>Unwanted ABAP Code Block Triggering - IF condition not working</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499383#M1851968</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Friends,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am facing weird issue in my production system i.e. one of the code block which was bounded in IF condition is getting triggered. However, as per the data that I have in my system this IF condition should skip that code block.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Let me give you code and execution flow here:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have Program A in which I am submitting Program B in background mode to selected server. This Program A will be executed by end user in Background mode.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
&lt;P&gt;&lt;SPAN class="L0S52"&gt;call &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;function &lt;/SPAN&gt;&lt;SPAN class="L0S33"&gt;'JOB_OPEN'&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;exporting&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jobname&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;job_name&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;importing&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jobcount&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;job_number&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;exceptions&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cant_create_job&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;&lt;SPAN class="L0S32"&gt;01&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; invalid_job_data &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;&lt;SPAN class="L0S32"&gt;02&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jobname_missing&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;&lt;SPAN class="L0S32"&gt;03&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN class="L0S55"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN class="L0S52"&gt;if &lt;/SPAN&gt;sy&lt;SPAN class="L0S70"&gt;-&lt;/SPAN&gt;subrc &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;&lt;SPAN class="L0S32"&gt;0&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;submit program B&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; via job job_name &lt;SPAN class="L0S52"&gt;number &lt;/SPAN&gt;job_number&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;with &lt;/SPAN&gt;p_sched&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;sched&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;with &lt;/SPAN&gt;period_p &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;period&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;with &lt;/SPAN&gt;fyear_p&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;fyear&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="font-size: 9pt; line-height: 12pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="L0S52" style="font-size: 9pt; line-height: 12pt;"&gt;with &lt;/SPAN&gt;&lt;SPAN style="font-size: 9pt; line-height: 12pt;"&gt;username &lt;/SPAN&gt;&lt;SPAN class="L0S55" style="font-size: 9pt; line-height: 12pt;"&gt;= &lt;/SPAN&gt;&lt;SPAN style="font-size: 9pt; line-height: 12pt;"&gt;ruser&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN class="L0S52"&gt;and &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;return&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN class="L0S52"&gt;call &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;function &lt;/SPAN&gt;&lt;SPAN class="L0S33"&gt;'JOB_CLOSE'&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;exporting&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jobcount&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;job_number&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jobname&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;job_name&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sdlstrtdt&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;start_date&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sdlstrttm&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;start_time&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; targetserver&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;l_targetserver&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S31"&gt;"V05++&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;exceptions&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cant_start_immediate &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;&lt;SPAN class="L0S32"&gt;01&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; invalid_startdate&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;&lt;SPAN class="L0S32"&gt;02&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; jobname_missing&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;&lt;SPAN class="L0S32"&gt;03&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; job_close_failed&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;&lt;SPAN class="L0S32"&gt;04&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; job_nosteps&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;&lt;SPAN class="L0S32"&gt;05&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; job_notex&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;&lt;SPAN class="L0S32"&gt;06&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lock_failed&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;&lt;SPAN class="L0S32"&gt;07&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN class="L0S55"&gt;endif.&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As you can see in code, I am passing job to run on l_targetserver. This program also releases some other jobs on other programs.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In Program B, I have code like this:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
&lt;P&gt;Top Include.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;start-of-selection.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;perform routine1 using p_fyear. "THIS HAS SOME SELECT QUERIES&amp;nbsp; AND&amp;nbsp; OTHER CODE and THERE IS NO ISSUE WITH IT. THIS ROUTINE IS&lt;/P&gt;
&lt;P&gt;ALSO HAVING ONE AND ONLY 'CLEAR' statement on DELTA_FLAG.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;perrform routine2.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;form routine2.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;loop itab into wa.&amp;nbsp; " This itab was populated in routine1&lt;/P&gt;
&lt;P&gt;&amp;nbsp; perform get_flag." WE ARE PASSING VALUE TO DELTA_FLAG VARIABLE HERE. YOU CAN CHECK CODE BELOW.&lt;/P&gt;
&lt;P&gt;perform process_data. "CHECK THIS ROUTINE&lt;/P&gt;
&lt;P&gt;peform update_records.&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;endform.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;Form Get_FLag.&lt;/P&gt;
&lt;P&gt;select * from dbtable into localtable where &amp;lt;condition&amp;gt;. " THIS QUERY RETURNS SOME DATA AND MY FLAG WILL BE SET AS 'X'.&lt;/P&gt;
&lt;P&gt;if sy-subrc = 0.&lt;/P&gt;
&lt;P&gt;delta_flag = 'X'. "THis one declared in top include.&lt;/P&gt;
&lt;P&gt;endif.&lt;/P&gt;
&lt;P&gt;EndForm.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;Form Process_Data.&lt;/P&gt;
&lt;P&gt;Perform get_dataset1.&lt;/P&gt;
&lt;P&gt;while counter &amp;lt;&amp;gt; 0. " Variable Counter declared in top include and default value is 20. Value will be decreased in side this loop. No issues with it.&lt;/P&gt;
&lt;P&gt;if wa-fld1 = '1'. "Check value of one of the field.&lt;/P&gt;
&lt;P&gt;&amp;nbsp; continue.&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;perform get_delta_data. " We have Unwanted ABAP code (for my scenario) here.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;endwhile.&lt;/P&gt;
&lt;P&gt;Endform.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;form update_records.&lt;/P&gt;
&lt;P&gt;call function 'FUNCTION' in update task exporting par1 = itab.&lt;/P&gt;
&lt;P&gt;commitwork&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;endform.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;form get_delta_data.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;if delta_flag is initial.&lt;/P&gt;
&lt;P&gt;select data from BSEG into i_bseg where &amp;lt;condition&amp;gt;. " This query is getting triggered in my system.&lt;/P&gt;
&lt;P&gt;endif.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;endform.&lt;/P&gt;

&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;All my data objects were declared in Top include of the program. Subroutines with their parameters were same as above code. I am not using any sub-routine second time or out-side of this program. As shown, this program updates records to one of the table with UPDATE function module IN UPDATE TASK and there is COMMITWORK after that. This task is part of&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As you could understand, DELTA_FLAG is having 'X' but query on BSEG is getting triggered. We are not clearing this variable after populating 'X' to it. I can see this query from Program B captured in ST12 trace results. (Verified it multiple times)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I did this analysis:&lt;/P&gt;&lt;P&gt;1. Ran this process in foreground with debugging, then there is no issue.&lt;/P&gt;&lt;P&gt;2. Debugged 'Finished' job of my production system, but I dont see this code triggered in Debug mode.&lt;/P&gt;&lt;P&gt;3. Replicated same execution process in our non-production environments, but there is no issue.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Let me know if you need any other details.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks for your time.&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Naveen&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 21 Aug 2014 10:55:13 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499383#M1851968</guid>
      <dc:creator>naveen_inuganti2</dc:creator>
      <dc:date>2014-08-21T10:55:13Z</dc:date>
    </item>
    <item>
      <title>Re: Unwanted ABAP Code Block Triggering - IF condition not working</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499384#M1851969</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's probably the UPDATE TASK not completing in time.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But there's a much bigger issue here: I see that none of your subroutines (bar one) has parameters.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The subroutines manipulate &lt;EM&gt;global variables&lt;/EM&gt; &lt;SPAN __jive_emoticon_name="cry" __jive_macro_name="emoticon" class="jive_macro_emoticon jive_macro jive_emote" src="https://community.sap.com/994/images/emoticons/cry.gif"&gt;&lt;/SPAN&gt;, so it is hard to see (without diving into the code) exactly &lt;EM&gt;what&lt;/EM&gt; is being changed &lt;EM&gt;where&lt;/EM&gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Let's not even start on the commenting and indentation.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It might be a matter of personal taste, but I find the above code almost impossible to follow.&lt;/P&gt;&lt;P&gt;Give it a complete rewrite and I bet your problem will disappear.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;good luck&lt;/P&gt;&lt;P&gt;Paul&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 21 Aug 2014 11:18:30 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499384#M1851969</guid>
      <dc:creator>paul_bakker2</dc:creator>
      <dc:date>2014-08-21T11:18:30Z</dc:date>
    </item>
    <item>
      <title>Re: Unwanted ABAP Code Block Triggering - IF condition not working</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499385#M1851970</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;the only reason I can think of is that below statement does not return any data in the background sessions.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;select * from dbtable into localtable where. " THIS QUERY RETURNS SOME DATA AND MY FLAG WILL BE SET AS 'X'. &lt;/P&gt;&lt;P&gt;if sy-subrc = 0. &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; delta_flag = 'X'. "THis one declared in top include. &lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Offcourse we cannot see what you are trying to select and what the condition is. Are these the updated records you have updated in a previous loop pass ?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 21 Aug 2014 11:33:33 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499385#M1851970</guid>
      <dc:creator>PeterJonker</dc:creator>
      <dc:date>2014-08-21T11:33:33Z</dc:date>
    </item>
    <item>
      <title>Re: Unwanted ABAP Code Block Triggering - IF condition not working</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499386#M1851971</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks Paul.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks for your input. I was thinking about moving code related DELTA_FLAG into one routine (clear and data passing) and then using parameters to move that value to other routine where I am using. I am not suspecting UPDATE FM because, I am just submitting it as separate task and nothing to do with flag here. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here's I tried same code with better format.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
&lt;P&gt;&lt;SPAN class="L0S52"&gt;include &lt;/SPAN&gt;zglr6000_top&lt;SPAN class="L0S55"&gt;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="L0S31"&gt;" DELTA_FLAG declared in it&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN class="L0S52"&gt;start-of-selection&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &lt;SPAN class="L0S52"&gt;perform &lt;/SPAN&gt;routine1 &lt;SPAN class="L0S52"&gt;using &lt;/SPAN&gt;p_fyear&lt;SPAN class="L0S55"&gt;.&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="L0S31"&gt;" Clear Statement for DELTA_FLAG Variable&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &lt;SPAN class="L0S52"&gt;perform &lt;/SPAN&gt;routine2&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &lt;SPAN class="L0S52"&gt;form &lt;/SPAN&gt;routine2&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;loop &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;at &lt;/SPAN&gt;itab &lt;SPAN class="L0S52"&gt;into &lt;/SPAN&gt;wa&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;perform &lt;/SPAN&gt;get_flag&lt;SPAN class="L0S55"&gt;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="L0S31"&gt;" WE ARE PASSING VALUE TO DELTA_FLAG VARIABLE HERE&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;perform &lt;/SPAN&gt;process_data&lt;SPAN class="L0S55"&gt;.&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="L0S31"&gt;" USING DELTA_FLAG HERE&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;perform &lt;/SPAN&gt;update_records&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;endloop&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &lt;SPAN class="L0S52"&gt;endform&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &lt;SPAN class="L0S52"&gt;form &lt;/SPAN&gt;get_flag&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;select &lt;/SPAN&gt;* &lt;SPAN class="L0S52"&gt;from &lt;/SPAN&gt;dbtable &lt;SPAN class="L0S52"&gt;into &lt;/SPAN&gt;localtable &lt;SPAN class="L0S52"&gt;where &lt;/SPAN&gt;&amp;lt;condition&amp;gt;&lt;SPAN class="L0S55"&gt;. &lt;/SPAN&gt;&lt;SPAN class="L0S31"&gt;" THIS QUERY RETURNS SOME DATA AND MY FLAG WILL BE SET AS 'X'.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;if &lt;/SPAN&gt;sy&lt;SPAN class="L0S70"&gt;-&lt;/SPAN&gt;subrc &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;&lt;SPAN class="L0S32"&gt;0&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; delta_flag &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;&lt;SPAN class="L0S33"&gt;'X'&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;endif&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &lt;SPAN class="L0S52"&gt;endform&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN class="L0S52"&gt;form &lt;/SPAN&gt;process_data&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &lt;SPAN class="L0S52"&gt;while &lt;/SPAN&gt;counter &amp;lt;&amp;gt; &lt;SPAN class="L0S32"&gt;0&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="L0S31"&gt;" Variable Counter declared in top include and default value is 20. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;if &lt;/SPAN&gt;wa&lt;SPAN class="L0S70"&gt;-&lt;/SPAN&gt;fld1 &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;&lt;SPAN class="L0S33"&gt;'1'&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;continue&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;endif&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; counter &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;counter &lt;SPAN class="L0S70"&gt;- &lt;/SPAN&gt;&lt;SPAN class="L0S32"&gt;1&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;perform &lt;/SPAN&gt;get_delta_data&lt;SPAN class="L0S55"&gt;. &lt;/SPAN&gt;&lt;SPAN class="L0S31"&gt;" We have Unwanted ABAP code (for my scenario) here.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &lt;SPAN class="L0S52"&gt;endwhile&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN class="L0S52"&gt;endform&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN class="L0S52"&gt;form &lt;/SPAN&gt;update_records&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &lt;SPAN class="L0S52"&gt;call &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;function &lt;/SPAN&gt;&lt;SPAN class="L0S33"&gt;'FUNCTION' &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;in &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;update &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;task &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;exporting &lt;/SPAN&gt;par1 &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;itab&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &lt;SPAN class="L0S52"&gt;commit &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;work&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN class="L0S52"&gt;endform&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN class="L0S52"&gt;form &lt;/SPAN&gt;get_delta_data&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &lt;SPAN class="L0S52"&gt;if &lt;/SPAN&gt;delta_flag &lt;SPAN class="L0S52"&gt;is &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;initial&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;select &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;data &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;from &lt;/SPAN&gt;bseg &lt;SPAN class="L0S52"&gt;into &lt;/SPAN&gt;i_bseg &lt;SPAN class="L0S52"&gt;where &lt;/SPAN&gt;&amp;lt;condition&amp;gt;&lt;SPAN class="L0S55"&gt;. &lt;/SPAN&gt;&lt;SPAN class="L0S31"&gt;" This query is getting triggered in my system.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &lt;SPAN class="L0S52"&gt;endif&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN class="L0S52"&gt;endform&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;

&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Naveen&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 21 Aug 2014 11:34:12 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499386#M1851971</guid>
      <dc:creator>naveen_inuganti2</dc:creator>
      <dc:date>2014-08-21T11:34:12Z</dc:date>
    </item>
    <item>
      <title>Re: Unwanted ABAP Code Block Triggering - IF condition not working</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499387#M1851972</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;No, I don't believe it's a matter of personal taste. I'd mercilessly reject this code if any external "consultant" tried to deliver it, without so much as asking what it does and looking at any acceptance test results; he/she would be fixing it on own time, and I would try to make sure the person is NEVER hired to do anything again. Sorry, Naveen, this is IMO blatantly shoddy work; utterly unacceptable.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;cheers&lt;/P&gt;&lt;P&gt;Janis&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 21 Aug 2014 11:39:58 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499387#M1851972</guid>
      <dc:creator>Private_Member_7726</dc:creator>
      <dc:date>2014-08-21T11:39:58Z</dc:date>
    </item>
    <item>
      <title>Re: Unwanted ABAP Code Block Triggering - IF condition not working</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499388#M1851973</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Peter Jonker,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Selection is not based on the previous loop. We are just checking from previous run. &lt;IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/attachments/storage/7/jiveimages/524805" width="450" /&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Fig: Actual Query from program. We are using tabname variable in update query as well. &lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Couple of notes on this: &lt;/P&gt;&lt;P&gt; &amp;gt; There is no clear statement on DELTA_LOAD within loop&lt;/P&gt;&lt;P&gt; &amp;gt; in debug mode I can see value 'X' in this DELTA_LOAD for first iteration. (Unfortunately, I cannot hit UPDATE query in production. No &lt;EM&gt;go &lt;/EM&gt;to statement access). &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You said, "&lt;SPAN style="color: #333333; font-size: 12px;"&gt;Offcourse we cannot see what you are trying to select and what the condition is&lt;/SPAN&gt;".&lt;/P&gt;&lt;P&gt;Yes, I agree. This is very strange issue which I cannot replicate in other systems also. I did many trace reviews, now thinking about passing DELTA_FLAG with parameters of GET_DELTA_DATA routine. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks for your thoughts. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Naveen&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 21 Aug 2014 11:50:20 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499388#M1851973</guid>
      <dc:creator>naveen_inuganti2</dc:creator>
      <dc:date>2014-08-21T11:50:20Z</dc:date>
    </item>
    <item>
      <title>Re: Unwanted ABAP Code Block Triggering - IF condition not working</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499389#M1851974</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Ok, well starnge indeed, then I have no more suggestions on this. That could be the only reason to my opinion.&lt;/P&gt;&lt;P&gt;Furthermore a question I have about your code: why do you have perform get_flag in the loop if it only needs to be executed once ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I also see that you use delta_load variable in the screenprint and in other source code extracts it is called delta_flag. Could that be the reason ?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 21 Aug 2014 12:01:37 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499389#M1851974</guid>
      <dc:creator>PeterJonker</dc:creator>
      <dc:date>2014-08-21T12:01:37Z</dc:date>
    </item>
    <item>
      <title>Re: Unwanted ABAP Code Block Triggering - IF condition not working</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499390#M1851975</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Janis,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I composed simplified version of 2050 lines main program and top include of 300 lines. I cannot avoid those subroutines as I am thinking issue is around sub-routines.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Unfortunately, there is no way that I can share my program with you. On that note, please believe in me that there are valid reasons for this code structure. Details about that is irrelevant to this issue. I will find some time after this issue and happy to share it with you!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;May be I can do better formatting in my post and I tried that in one of my reply. Still, I don't see blanks lines (for better readability) once I convert my code as SQL code lines in 'advanced editor'. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Naveen&amp;nbsp; &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 21 Aug 2014 12:03:20 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499390#M1851975</guid>
      <dc:creator>naveen_inuganti2</dc:creator>
      <dc:date>2014-08-21T12:03:20Z</dc:date>
    </item>
    <item>
      <title>Re: Unwanted ABAP Code Block Triggering - IF condition not working</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499391#M1851976</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;What is the definition of DELTA_FLAG in include? Also does it set the DELTA_FLAG to X for the first time when it goes to form get_flag&lt;/P&gt;&lt;P&gt; &lt;SPAN class="keyword"&gt;select * &lt;SPAN class="keyword"&gt;from&lt;/SPAN&gt; dbtable &lt;SPAN class="keyword"&gt;into&lt;/SPAN&gt; localtable &lt;SPAN class="keyword"&gt;where&lt;/SPAN&gt; &amp;lt;condition&amp;gt;. " THIS QUERY &lt;SPAN class="keyword"&gt;RETURNS&lt;/SPAN&gt; &lt;SPAN class="op"&gt;SOME&lt;/SPAN&gt; DATA &lt;SPAN class="op"&gt;AND&lt;/SPAN&gt; MY FLAG WILL BE &lt;SPAN class="keyword"&gt;SET&lt;/SPAN&gt; &lt;SPAN class="keyword"&gt;AS&lt;/SPAN&gt; &lt;SPAN class="string"&gt;'X'&lt;/SPAN&gt;.&amp;nbsp; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if sy-subrc = 0.&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; delta_flag = &lt;SPAN class="string"&gt;'X'.&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; endif.&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Also is there a possibility that your Select on the table &lt;SPAN class="keyword"&gt;dbtable (which is this table?) &lt;/SPAN&gt;is failing because of which the flag is not setting at all..And there is nothing to set this flag after this is called once.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;OL class="dp-sql" start="1"&gt;&lt;LI&gt;Form Get_FLag.&amp;nbsp; &lt;/LI&gt;&lt;LI&gt;&lt;SPAN class="keyword"&gt;select * &lt;SPAN class="keyword"&gt;from&lt;/SPAN&gt; dbtable &lt;SPAN class="keyword"&gt;into&lt;/SPAN&gt; localtable &lt;SPAN class="keyword"&gt;where&lt;/SPAN&gt; &amp;lt;condition&amp;gt;. " THIS QUERY &lt;SPAN class="keyword"&gt;RETURNS&lt;/SPAN&gt; &lt;SPAN class="op"&gt;SOME&lt;/SPAN&gt; DATA &lt;SPAN class="op"&gt;AND&lt;/SPAN&gt; MY FLAG WILL BE &lt;SPAN class="keyword"&gt;SET&lt;/SPAN&gt; &lt;SPAN class="keyword"&gt;AS&lt;/SPAN&gt; &lt;SPAN class="string"&gt;'X'&lt;/SPAN&gt;.&amp;nbsp; &lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;if sy-subrc = 0.&amp;nbsp; &lt;/LI&gt;&lt;LI&gt;delta_flag = &lt;SPAN class="string"&gt;'X'. "THis one declared &lt;SPAN class="op"&gt;in&lt;/SPAN&gt; &lt;SPAN class="keyword"&gt;top&lt;/SPAN&gt; include.&amp;nbsp; &lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;endif.&amp;nbsp; &lt;/LI&gt;&lt;/OL&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 21 Aug 2014 12:03:44 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499391#M1851976</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2014-08-21T12:03:44Z</dc:date>
    </item>
    <item>
      <title>Re: Unwanted ABAP Code Block Triggering - IF condition not working</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499392#M1851977</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Jonker,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Screen shot is from original program and I just referred delta_load as delta_flag in my post.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;And, you are right we should move this query out side the loop (one of our change request &lt;SPAN __jive_emoticon_name="happy" __jive_macro_name="emoticon" class="jive_macro jive_emote" src="https://community.sap.com/994/images/emoticons/happy.gif"&gt;&lt;/SPAN&gt; )&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Naveen &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 21 Aug 2014 12:12:25 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499392#M1851977</guid>
      <dc:creator>naveen_inuganti2</dc:creator>
      <dc:date>2014-08-21T12:12:25Z</dc:date>
    </item>
    <item>
      <title>Re: Unwanted ABAP Code Block Triggering - IF condition not working</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499393#M1851978</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;PRE&gt;&lt;CODE&gt;
&lt;P&gt;.... " Clear Statement &lt;SPAN class="keyword"&gt;for&lt;/SPAN&gt; DELTA_FLAG Variable&lt;/P&gt;



&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;Why, is it being set somewhere before START-OF-SELECTION..?&amp;nbsp; &lt;SPAN __jive_emoticon_name="plain" __jive_macro_name="emoticon" class="jive_macro jive_emote" src="https://community.sap.com/994/images/emoticons/plain.gif"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
&lt;P&gt;&lt;SPAN class="keyword"&gt;select&lt;/SPAN&gt; * &lt;SPAN class="keyword"&gt;from&lt;/SPAN&gt; dbtable &lt;SPAN class="keyword"&gt;into&lt;/SPAN&gt; localtable &lt;SPAN class="keyword"&gt;where&lt;/SPAN&gt; &amp;lt;condition&amp;gt;. " ....&lt;/P&gt;



&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="text-decoration: line-through;"&gt;Is it INTO or INTO TABLE? If the latter, wher's the ENDSELECT located?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
&lt;P&gt;&lt;SPAN style="text-decoration: line-through;"&gt;... " THIS QUERY &lt;SPAN class="keyword"&gt;RETURNS &lt;/SPAN&gt;&lt;SPAN class="op"&gt;SOME&lt;/SPAN&gt; DATA &lt;SPAN class="op"&gt;AND&lt;/SPAN&gt; MY FLAG WILL BE &lt;SPAN class="keyword"&gt;SET &lt;/SPAN&gt;&lt;SPAN class="keyword"&gt;AS &lt;/SPAN&gt;&lt;SPAN class="string"&gt;'X'&lt;/SPAN&gt;.&lt;/SPAN&gt;&lt;/P&gt;



&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="text-decoration: line-through;"&gt;Bold claim, but if it always returns some data, why do you need a flag in the first place...?&lt;/SPAN&gt; Edit in: Ok, the screenshot explains, but adds mystery and complexity - where and how does the tabname get the value...?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;fyear_p in SUBMIT and p_fyear in code... is that intended..?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I do realise now that some of this is pseudo-code and &lt;SPAN style="text-decoration: line-through;"&gt;maybe&lt;/SPAN&gt; I was too harsh in my previous post, but believe me, the ABAP IF statement conditions do work...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;cheers&lt;/P&gt;&lt;P&gt;Janis&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Message was edited by: Jānis B&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 21 Aug 2014 12:12:30 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499393#M1851978</guid>
      <dc:creator>Private_Member_7726</dc:creator>
      <dc:date>2014-08-21T12:12:30Z</dc:date>
    </item>
    <item>
      <title>Re: Unwanted ABAP Code Block Triggering - IF condition not working</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499394#M1851979</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;CHAR1 is type of delta_flag. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;And, as I replied to Peter Jonker, I have data in (tabname) and sy-subrc is ZERO and flag is 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;There is no issue in foreground or the finished job debug!!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Naveen&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 21 Aug 2014 12:17:06 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499394#M1851979</guid>
      <dc:creator>naveen_inuganti2</dc:creator>
      <dc:date>2014-08-21T12:17:06Z</dc:date>
    </item>
    <item>
      <title>Re: Unwanted ABAP Code Block Triggering - IF condition not working</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499395#M1851980</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Clear statement is in first subroutine which is right after the start-of-selection. yes, I can move it into get_flag. Do you see any issue with it?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In actual program, we are selecting data into variable (I posted one screen shot of that query). This source table is having data and where condition input are not having any formatting/conversion issues.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-size: 12px;"&gt;"fyear_p in SUBMIT and p_fyear in screen shot.. is it intended..?"&amp;nbsp; - yes (using secondary variables from selection screen inputs)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-size: 12px;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;yes, I think issue might be 'not having' parameters for subroutine to carry delta_flag. I am going to check that (unfortunately, I am not able to prove it to rely on this deployment) but no other data objects are having this issue.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Naveen&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 21 Aug 2014 12:31:24 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499395#M1851980</guid>
      <dc:creator>naveen_inuganti2</dc:creator>
      <dc:date>2014-08-21T12:31:24Z</dc:date>
    </item>
    <item>
      <title>Re: Unwanted ABAP Code Block Triggering - IF condition not working</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499396#M1851981</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I shouldn't have been so harsh and quick to condemn - for that I'm sorry. &lt;SPAN __jive_emoticon_name="happy" __jive_macro_name="emoticon" class="jive_macro jive_emote" src="https://community.sap.com/994/images/emoticons/happy.gif"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If I would inherit this work, I'd do the same as I do with every procedural "report" programm having global data definitions and little to no form interfaces I have to touch - start by investing as much time as necessary to eliminate as much of globals as possible - preferrably all of them, and defining all interfaces. Commenting globals out one at the time, recompiling to find all uses, building up the form routine interfaces, introducing formroutine MAIN to define the data truly global to the whole process. Every parameter and every select option would be passed down the call chain to the place it is used... No formal and actual parameter would have the same name, everything would get proper typing and naming... This kind of programms tend to accumulate lots of dead code and unnecessary data definitions over time - they'd be eleminated in the process.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;This is no golden bullet and can (and therefore will) introduce an occasional new error and for that reason a complete rewamp would not be supported be every developer/team lead... In my experience (60-80% of it is maintenace work on a more than 10 years old custom procedural code base; much of it of poor to shockingly poor quality) it ends up saving time.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It also tends to produce wide and, without restructuring, sometimes "illogical" looking interfaces... But it gives at the end that sweet feeling:- now &lt;EM&gt;I&lt;/EM&gt; am in control of this stuff... &lt;SPAN __jive_emoticon_name="cool" __jive_macro_name="emoticon" class="jive_macro jive_emote" src="https://community.sap.com/994/images/emoticons/cool.gif"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Good luck&lt;/P&gt;&lt;P&gt;Janis&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Message was edited by: Jānis B&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 21 Aug 2014 12:54:47 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499396#M1851981</guid>
      <dc:creator>Private_Member_7726</dc:creator>
      <dc:date>2014-08-21T12:54:47Z</dc:date>
    </item>
    <item>
      <title>Re: Unwanted ABAP Code Block Triggering - IF condition not working</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499397#M1851982</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hey - It's ok, no worries. &lt;SPAN __jive_emoticon_name="happy" __jive_macro_name="emoticon" class="jive_macro jive_emote" src="https://community.sap.com/994/images/emoticons/happy.gif"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks for your thoughts on this problem. I will update this thread with my findings/progress in system.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Naveen&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 21 Aug 2014 13:15:49 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499397#M1851982</guid>
      <dc:creator>naveen_inuganti2</dc:creator>
      <dc:date>2014-08-21T13:15:49Z</dc:date>
    </item>
    <item>
      <title>Re: Unwanted ABAP Code Block Triggering - IF condition not working</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499398#M1851983</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; If it was me, I would recode the whole thing. I'm certain the problem would disappear, and you'd end up with nice maintainable code to hand down to future generations.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; I realize it's not always possible though !&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;cheers&lt;/P&gt;&lt;P&gt;Paul&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 22 Aug 2014 00:57:43 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499398#M1851983</guid>
      <dc:creator>paul_bakker2</dc:creator>
      <dc:date>2014-08-22T00:57:43Z</dc:date>
    </item>
    <item>
      <title>Re: Unwanted ABAP Code Block Triggering - IF condition not working</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499399#M1851984</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="color: #000000;"&gt;I forgot the one bit, which might actually have been useful: I'd be moving the&lt;/SPAN&gt; &lt;SPAN style="color: black; font-size: 9pt; font-style: inherit; font-family: 'courier new', courier;"&gt;if delta_flag &lt;/SPAN&gt;&lt;SPAN class="keyword" style="font-family: 'courier new', courier; font-style: inherit; color: #006699; font-size: 9pt !important; background-position: initial;"&gt;is&lt;/SPAN&gt;&lt;SPAN style="color: black; font-family: helvetica, arial; font-style: inherit; font-weight: inherit; font-size: 9pt !important; background-position: initial;"&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt; initial.&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt;"&gt; out of&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;SPAN style="font-weight: inherit; font-style: inherit; font-size: 9pt !important; font-family: helvetica, arial; color: black; background-color: inherit; background-position: initial;"&gt;&lt;SPAN style="color: #000000; font-style: inherit; font-size: 9pt !important; font-family: 'courier new', courier; font-weight: inherit;"&gt;form get_delta_data, &lt;SPAN style="font-size: 10pt; font-family: arial, helvetica, sans-serif;"&gt;before&lt;/SPAN&gt; perform get_delta_data.&lt;/SPAN&gt;&lt;SPAN style="color: #000000; font-family: helvetica;"&gt;&lt;SPAN style="font-size: 9pt !important; font-style: inherit; font-weight: inherit;"&gt;Since you are calling in nested loops there, &lt;/SPAN&gt;&lt;SPAN style="font-size: 12px;"&gt;every&lt;/SPAN&gt;&lt;SPAN style="font-size: 9pt !important; font-style: inherit; font-weight: inherit;"&gt; little bit of &lt;/SPAN&gt;&lt;SPAN style="font-size: 12px;"&gt;run-time&lt;/SPAN&gt;&lt;SPAN style="font-size: 9pt !important; font-style: inherit; font-weight: inherit;"&gt; counts, and "&lt;/SPAN&gt;&lt;SPAN style="font-size: 12px;"&gt;philosophically&lt;/SPAN&gt;&lt;SPAN style="font-size: 9pt !important; font-style: inherit; font-weight: inherit;"&gt;" I feel - procedure &lt;/SPAN&gt;&lt;SPAN style="font-size: 12px;"&gt;should&lt;/SPAN&gt;&lt;SPAN style="font-size: 9pt !important; font-style: inherit; font-weight: inherit;"&gt; do what its name promises it will, and not check whether it's "appropriate time" to do it &lt;SPAN __jive_emoticon_name="happy" __jive_macro_name="emoticon" class="jive_emote jive_macro" src="https://community.sap.com/994/images/emoticons/happy.gif"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000; font-style: inherit; font-size: 9pt !important; background-color: inherit; font-family: helvetica; font-weight: inherit; background-position: initial;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000; font-style: inherit; font-size: 9pt !important; background-color: inherit; font-family: helvetica; font-weight: inherit; background-position: initial;"&gt;cheers and good luck&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000; font-style: inherit; font-size: 9pt !important; background-color: inherit; font-family: helvetica; font-weight: inherit; background-position: initial;"&gt;Jānis&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 22 Aug 2014 06:48:02 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499399#M1851984</guid>
      <dc:creator>Private_Member_7726</dc:creator>
      <dc:date>2014-08-22T06:48:02Z</dc:date>
    </item>
    <item>
      <title>Re: Unwanted ABAP Code Block Triggering - IF condition not working</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499400#M1851985</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Fixed those minor bugs that we discussed above (IF condition outside to routine, Select-Loop) and applied changes across the program to use 'Using, Changing, Tables' parameters to switch to logic in sub-routines. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Yet to be deployed to see results as I am not facing this issue in other systems. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I will update this discussion with results! &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks to all,&lt;/P&gt;&lt;P&gt;Naveen Inuganti&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 03 Sep 2014 08:37:14 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/unwanted-abap-code-block-triggering-if-condition-not-working/m-p/10499400#M1851985</guid>
      <dc:creator>naveen_inuganti2</dc:creator>
      <dc:date>2014-09-03T08:37:14Z</dc:date>
    </item>
  </channel>
</rss>

