<?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: On Error continue not loading additional rows in App Development</title>
    <link>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2536462#M108677</link>
    <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/240126"&gt;@Jebrezov&lt;/a&gt;,&lt;/P&gt;&lt;P&gt;From my tests, when that happens, my code just moves to the next file without any problem. So, the code just ignores the problematic file. Everything else should work regularly.&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Mark Costa&lt;/STRONG&gt;&lt;/P&gt;</description>
    <pubDate>Tue, 18 Nov 2025 13:47:33 GMT</pubDate>
    <dc:creator>marksouzacosta</dc:creator>
    <dc:date>2025-11-18T13:47:33Z</dc:date>
    <item>
      <title>On Error continue not loading additional rows</title>
      <link>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2536300#M108649</link>
      <description>&lt;P&gt;I have a script that loops through a network folder and all subfolders. if the target is an xlsm file, it should open, grab data, append it to the existing dataset, and continue on to the next file. this is mostly working.&lt;/P&gt;&lt;P&gt;I've turned off the error mode so if there is an error loading data from a file due to someone having the file open already (error "... it is being used by another process. (DirectAccess-5016))"), it continues to the next.&lt;/P&gt;&lt;P&gt;My issue is the load statements that are executed after this error no longer load data into the dataset. no additional error is thrown for these future load statements, but the script is functioning as if they had an error even though they wouldnt if the first error did not occur. I've added a check just after the load to check the scripterror variable by saving it to a variable and checking if it = 0 or not but the value never changes from &amp;lt;NULL&amp;gt; in the debug or if i trace the value it just prints the time. so I can't see what the script error value is even though my check of "If scripterror = 0" always results in false.&lt;/P&gt;&lt;P&gt;Anyone ever run into an issue like this?&lt;/P&gt;&lt;P&gt;code is something of this structure...&lt;/P&gt;&lt;DIV&gt;-------------------------------------------------------------------------------------------------&lt;/DIV&gt;&lt;DIV&gt;sub ScanFolder(Root)&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; for each Ext in '.xlsm'&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; for each vFile in filelist(Root &amp;amp; '/*' &amp;amp; Ext)&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;//if there was an error in the last script statement, scripterror will have a nonzero value&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; IF ScriptError&amp;lt;&amp;gt;0 THEN&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; exit for&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; END IF&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;trace $(vFile);&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;let vfiletime =&amp;nbsp; filetime(vFile);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;if vfiletime &amp;lt; vReloadDate then&lt;/DIV&gt;&lt;DIV&gt;trace 5;&lt;/DIV&gt;&lt;DIV&gt;exit for&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;end if&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;IF left(vFileName,1)='~' then&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;trace 6;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;exit for&lt;/DIV&gt;&lt;DIV&gt;END IF&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;Call GetProduction (vFile);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; next vFile&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; next Ext&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; for each SubDirectory in dirlist(Root &amp;amp; '/')&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; call ScanFolder(SubDirectory)&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; next SubDirectory&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;end Sub&lt;/DIV&gt;&lt;P&gt;--------------------------------------------------------------------------------&lt;/P&gt;&lt;P&gt;sub GetProduction(vFile)&lt;/P&gt;&lt;P&gt;trace 10;&lt;/P&gt;&lt;P&gt;//This load into table temp is just to check to see if data can be grabbed from the file or if the file is locked by some other process and results in an error&lt;/P&gt;&lt;P&gt;temp:&lt;BR /&gt;First 1&lt;BR /&gt;Load&lt;BR /&gt;a, b&lt;/P&gt;&lt;P&gt;FROM [$(vFile)]&lt;BR /&gt;(ooxml, embedded labels, header is 1 lines, table is [Table]);&lt;BR /&gt;&lt;BR /&gt;let vError = ScriptError;&amp;nbsp; // This is the variable that never reads anything other than NULL&lt;/P&gt;&lt;P&gt;IF vError = 0 THEN&amp;nbsp; &amp;nbsp;// But this evaluates as not zero every situation after the first error occurs even if no additional errors occur&lt;/P&gt;&lt;DIV&gt;&lt;SPAN&gt;IF NoOfRows('Data') &amp;gt; 0 THEN&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;//concatenates to existing table after verifying it exists with more than zero rows&lt;/DIV&gt;&lt;DIV&gt;concatenate(data)&lt;/DIV&gt;&lt;DIV&gt;Load a,b,c from [$(vFile)]&lt;BR /&gt;(ooxml, embedded labels, header is 1 lines, table is [Table])&lt;/DIV&gt;&lt;DIV&gt;&lt;BR /&gt;ELSE&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;//Else if table doesnt already exist with rows, it creates it&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;data:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV&gt;Load a,b,c from [$(vFile)]&lt;BR /&gt;(ooxml, embedded labels, header is 1 lines, table is [Table])&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;//If the table gets created but no data is loaded into it, remove the table&lt;/DIV&gt;&lt;DIV&gt;if NoOfRows('data') = 0 then&lt;BR /&gt;drop table data;&lt;BR /&gt;end if&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;//removes the temp table so we can check the next file during the next loop&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;drop table temp;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;else&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; trace $(vError); //which should hold the value of scripterror after it fails to load data into temp table&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; trace 30;&lt;/DIV&gt;&lt;DIV&gt;end if;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;end sub;&lt;/DIV&gt;&lt;/DIV&gt;&lt;P&gt;-------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;P&gt;LIB CONNECT TO 'DataConnection';&lt;/P&gt;&lt;P&gt;SET ErrorMode = 0;&lt;/P&gt;&lt;P&gt;Let vRoot1 = 'parentfolder';&lt;/P&gt;&lt;P&gt;let vReloadDate = monthstart(today());&lt;/P&gt;&lt;P&gt;Call ScanFolder('$(vRoot1)');&lt;/P&gt;&lt;P&gt;SET ErrorMode = 1;&lt;/P&gt;&lt;P&gt;---------------------------------------------------------------------------------&lt;/P&gt;&lt;P&gt;Hopefully this provides a bit more helpful info.&lt;/P&gt;&lt;P&gt;sorry for the formatting of code, its not letting me indent and make it easier to read...&lt;/P&gt;</description>
      <pubDate>Sun, 16 Nov 2025 15:41:25 GMT</pubDate>
      <guid>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2536300#M108649</guid>
      <dc:creator>Jebrezov</dc:creator>
      <dc:date>2025-11-16T15:41:25Z</dc:date>
    </item>
    <item>
      <title>Re: On Error continue not loading additional rows</title>
      <link>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2536303#M108650</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/240126"&gt;@Jebrezov&lt;/a&gt;&amp;nbsp;,&lt;/P&gt;&lt;P&gt;Could you please share your Load Script?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Mark Costa&lt;/STRONG&gt;&lt;/P&gt;</description>
      <pubDate>Sun, 16 Nov 2025 05:51:55 GMT</pubDate>
      <guid>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2536303#M108650</guid>
      <dc:creator>marksouzacosta</dc:creator>
      <dc:date>2025-11-16T05:51:55Z</dc:date>
    </item>
    <item>
      <title>Re: On Error continue not loading additional rows</title>
      <link>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2536389#M108664</link>
      <description>&lt;P&gt;i edited my post to include more details.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 17 Nov 2025 22:10:40 GMT</pubDate>
      <guid>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2536389#M108664</guid>
      <dc:creator>Jebrezov</dc:creator>
      <dc:date>2025-11-17T22:10:40Z</dc:date>
    </item>
    <item>
      <title>Re: On Error continue not loading additional rows</title>
      <link>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2536398#M108667</link>
      <description>&lt;P&gt;Thank you&amp;nbsp;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/240126"&gt;@Jebrezov&lt;/a&gt;.&lt;/P&gt;&lt;P&gt;So, I would take a slightly different approach. My goal here is to isolate subjects per method to make the code more flexible and easier to manage. I also have removed some redundancies - like checking Number of Records, Concatenate statement, etc.&lt;BR /&gt;&lt;BR /&gt;I hope it helps!&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;// List all candidate files
// ******************************************************************
SET vFolderToScan = 'C:\MyDataSourceFolder';
SET vSearchPattern = '*.qvd';

Sub ListFiles(RootFolder)

	TRACE Scanning folder: $(vFolder) ...;
	
	For Each vFile in FileList('$(vFolder)\$(vSearchPattern)')

		// Add any field here to support filtering the files
		[TempFilesFound]:
		LOAD
			'$(vFile)' AS Filename,
			FileTime('$(vFile)') AS FileCreateTime,
			FileSize('$(vFile)') AS FileSize
			AutoGenerate(1)
		;

	Next vFile
	
	For Each vFolder in DirList('$(RootFolder)\*')
	
		Call ListFiles('$(vFolder)');
	
	Next vFolder
	
End Sub


Call ListFiles('$(vFolderToScan)');



// Filter only the target files
// ******************************************************************
LET vReloadDate = MonthStart(Today()); // Add any date expression here

[TempFilesToLoad]:
LOAD
	Filename AS FilesToLoad
RESIDENT
	[TempFilesFound]
WHERE
	FileCreateTime &amp;gt; $(#vReloadDate) // Add any logic needed here to filter the files
;

DROP TABLE [TempFilesFound];



// Load the filtered files data
// ******************************************************************
SET vMyTableName = 'Data';
SET ErrorMode = 0; // Disable error
	
For Each vFileToLoad in FieldValueList('FilesToLoad')

	TRACE Loading file $(vFileToLoad) ...;
	
	[$(vMyTableName)]:
	LOAD
		'$(vFileToLoad)' AS FileLoaded, // Optional
		*
	FROM
		[$(vFileToLoad)](qvd) // Change to any file format and load statement
	;

Next vFileToLoad

SET ErrorMode = 1; // Enable error



// Clean remaining tables
// ******************************************************************
DROP TABLE [TempFilesToLoad];&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Mark Costa&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 18 Nov 2025 01:36:32 GMT</pubDate>
      <guid>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2536398#M108667</guid>
      <dc:creator>marksouzacosta</dc:creator>
      <dc:date>2025-11-18T01:36:32Z</dc:date>
    </item>
    <item>
      <title>Re: On Error continue not loading additional rows</title>
      <link>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2536403#M108669</link>
      <description>&lt;P&gt;Thank you for looking&amp;nbsp;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/22035"&gt;@marksouzacosta&lt;/a&gt;, but as you mention, your response ultimately performs the same actions and does not address the issue.&lt;/P&gt;&lt;P&gt;If the excel file located on our local network is opened by a user, it will be locked for editing and result in a load error. By using error mode=0, I can force the script to continue, but future load statements do not execute.&lt;/P&gt;&lt;P&gt;any ideas relating to why all load statements after the first error result in an error? If the file causing the error is closed and the script is run, everything loads as expected.&lt;/P&gt;&lt;P&gt;Since this seems like a bug in qlik, my new goal is to try to identify what files are open and try to skip them so there simply are no errors, but I have not found a good way to do this.&lt;/P&gt;</description>
      <pubDate>Tue, 18 Nov 2025 03:01:52 GMT</pubDate>
      <guid>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2536403#M108669</guid>
      <dc:creator>Jebrezov</dc:creator>
      <dc:date>2025-11-18T03:01:52Z</dc:date>
    </item>
    <item>
      <title>Re: On Error continue not loading additional rows</title>
      <link>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2536462#M108677</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/240126"&gt;@Jebrezov&lt;/a&gt;,&lt;/P&gt;&lt;P&gt;From my tests, when that happens, my code just moves to the next file without any problem. So, the code just ignores the problematic file. Everything else should work regularly.&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Mark Costa&lt;/STRONG&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 18 Nov 2025 13:47:33 GMT</pubDate>
      <guid>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2536462#M108677</guid>
      <dc:creator>marksouzacosta</dc:creator>
      <dc:date>2025-11-18T13:47:33Z</dc:date>
    </item>
    <item>
      <title>Re: On Error continue not loading additional rows</title>
      <link>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2536469#M108678</link>
      <description>&lt;P&gt;are you connecting through a 'file via direct access gateway' connector to the location where the files are? also have you tried with xlsm files instead of qvd? these are the requirements i have to work with. ive gotten this process to work using qvds inside the tennant, but not for xlsm files through direct access gateway.&amp;nbsp;&lt;/P&gt;&lt;P&gt;another comment, the specific error that causes future loads to not work is when the file exists and is open for editing. other errors occur (such as there not being any xlsm files within a specified folder), but the script just continues along and processes the next folder/files correctly after this type of error.&lt;/P&gt;</description>
      <pubDate>Tue, 18 Nov 2025 14:48:26 GMT</pubDate>
      <guid>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2536469#M108678</guid>
      <dc:creator>Jebrezov</dc:creator>
      <dc:date>2025-11-18T14:48:26Z</dc:date>
    </item>
    <item>
      <title>Re: On Error continue not loading additional rows</title>
      <link>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2536631#M108706</link>
      <description>&lt;P&gt;IMO there is no bug within the ErrorMode but maybe some limitations and there are also various syntax and/or logic issues possible. Limited is for example the fetched types of errors - only those one which are explicitly defined are covered and everything else will further break the execution or leading to an unexpected behaviour.&lt;/P&gt;&lt;P&gt;Further I doubt that ScriptError could be assigned to a variable with a LET statement - an direct access like shown in the help-example will be working (and a SET statement should be also possible). The ScriptError exists only direct after the error - each further statement will reset the value.&lt;/P&gt;&lt;P&gt;Another cause may be the validity of the ErrorMode and other variables. Using routines and/or loops means to create script-areas which don't be running within the global validity. It's like in other programming languages which require an explicit transfer of variables from one part to another. Therefore the order and/or the kind of nesting of the statements could have an impact and necessary variables might be added to the call-statement.&lt;/P&gt;</description>
      <pubDate>Wed, 19 Nov 2025 14:18:06 GMT</pubDate>
      <guid>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2536631#M108706</guid>
      <dc:creator>marcus_sommer</dc:creator>
      <dc:date>2025-11-19T14:18:06Z</dc:date>
    </item>
    <item>
      <title>Re: On Error continue not loading additional rows</title>
      <link>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2536660#M108710</link>
      <description>&lt;P&gt;I've done a bunch of tests and it appears all errors related to the direct access gateway results in a NULL value since it does not fit into any of the existing 0-16 that are defined.&amp;nbsp;&lt;/P&gt;&lt;P&gt;when i use LET to store the scripterror value, it is correctly passing 0 or null according to the results of the following if statement "IF isnull(vErr) THEN" (even though the values always shows empty in the debug window). If i try SET, it does not work. Either way, i've removed this step and am directly checking the scripterror value in the if statement so this would not be causing any issues.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Not all errors across the data gateway cause further execution to break. an example is if a file is not found in a folder, it throws error "&lt;SPAN&gt;Connector error: Cannot find the path 'filepath/*.xlsm'", but then it continues to the next folder and successfully loads future files. However, the error &lt;/SPAN&gt;&lt;SPAN&gt;"Cannot open file: 'FilePathName' (Connector error: A precondition failed. The process cannot access the file 'FilePathName' because it is being used by another process. (DirectAccess-5016)) The engine error code: EDC_ERROR:11020". Both the errors result in a NULL value and scripterror resets to 0 on next line of code execution but it seems if the script errors out during a load statement (as in the current example) all future load statements will evaluate with a scripterror of NULL even though they themselves do not throw an error. If handling this type of error isn't a bug, then it simply isn't supported yet which would be good to document.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;I did find where there was a plan to allow loading from an opened excel file in direct access gateway 1.7.6 found in the below post, but I am on 1.7.8 and it is still not working. Maybe it got delayed to a future version?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&lt;A href="https://community.qlik.com/t5/Data-Movement-Streaming/Can-t-load-data-from-open-file-on-Direct-Access-Gateway/td-p/2519761" target="_blank"&gt;https://community.qlik.com/t5/Data-Movement-Streaming/Can-t-load-data-from-open-file-on-Direct-Access-Gateway/td-p/2519761&lt;/A&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 19 Nov 2025 17:16:48 GMT</pubDate>
      <guid>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2536660#M108710</guid>
      <dc:creator>Jebrezov</dc:creator>
      <dc:date>2025-11-19T17:16:48Z</dc:date>
    </item>
    <item>
      <title>Re: On Error continue not loading additional rows</title>
      <link>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2536663#M108711</link>
      <description>&lt;P&gt;I can reproduce this scenario, but I'll need some time to do so. Have you tried my code in your environment?&lt;/P&gt;&lt;P&gt;One note, I usually avoid manipulating Qlik error variables - unless is extremely required - because these variables are very restricted in terms of manipulation and is easy to miss how and where to use them.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Mark Costa&lt;/STRONG&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 19 Nov 2025 17:48:18 GMT</pubDate>
      <guid>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2536663#M108711</guid>
      <dc:creator>marksouzacosta</dc:creator>
      <dc:date>2025-11-19T17:48:18Z</dc:date>
    </item>
    <item>
      <title>Re: On Error continue not loading additional rows</title>
      <link>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2536669#M108712</link>
      <description>&lt;P&gt;i had to make a couple tweaks to where you used some variables (RootFolder, vFile,etc), but yes, i used your code and received the normal error when a file is opened as well as the subsequent loads failing to execute without throwing additional errors. it runs fine if no files are open for editing.&amp;nbsp;&lt;/P&gt;&lt;P&gt;For additional information, i have reorganized my script to create a list of files on the network and loop through this list to load data. it runs slower, but it gives me the ability to see the temporary files windows creates when a file is open (files starting with ~$). I can then look through the list and see if there is a version of a file that contains the ~$ and skip it in the loading process in an effort to avoid these errors.&amp;nbsp;&lt;/P&gt;&lt;P&gt;This however is not a 100% solution since the list of files i'm looping through is vast and takes time. a file that was not open at the time of check may now be open at time of load. I've shortened the time between check and load by including another loop around everything to list files, check if they should be loaded,&amp;nbsp; loading, joining with stored qvd, and store on each folder within the root level.&amp;nbsp;&lt;/P&gt;&lt;P&gt;I think this will be my solution for now, but feel the errormode = 0 should be made to handle this situation and load subsequent load statements.&lt;/P&gt;</description>
      <pubDate>Wed, 19 Nov 2025 19:30:38 GMT</pubDate>
      <guid>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2536669#M108712</guid>
      <dc:creator>Jebrezov</dc:creator>
      <dc:date>2025-11-19T19:30:38Z</dc:date>
    </item>
    <item>
      <title>Re: On Error continue not loading additional rows</title>
      <link>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2536696#M108715</link>
      <description>&lt;P&gt;Your origin code of:&lt;/P&gt;&lt;DIV&gt;&lt;SPAN&gt;IF left(vFileName,1)='~' then&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;trace 6;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;exit for&lt;/DIV&gt;&lt;DIV&gt;END IF&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;should already preventing the load of an open file. Therefore I could imagine that the untouchable error isn't cause from the load-statement else from any other one, for example the file-access in beforehand through the file-function:&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;let vfiletime =&amp;nbsp; filetime(vFile);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;If so a change of the check-order may prevent the issue.&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;Another consideration may go to a rather fundamental change in the load-approach by transferring at first all files from the source to the target per copy &amp;amp; paste and then loading them from a local storage. It may sound stupid and outdated but it may a pragmatic way to bypass the limitations of the current technologies ... It was in the previous days a quite common workaround to load from ftp-server which didn't support any file-functions or wildcards to save a lot of efforts to get rid of such restrictions ...&amp;nbsp;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;</description>
      <pubDate>Thu, 20 Nov 2025 06:00:49 GMT</pubDate>
      <guid>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2536696#M108715</guid>
      <dc:creator>marcus_sommer</dc:creator>
      <dc:date>2025-11-20T06:00:49Z</dc:date>
    </item>
    <item>
      <title>Re: On Error continue not loading additional rows</title>
      <link>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2536707#M108719</link>
      <description>&lt;P&gt;Checking for the ~ is skipping just the temporary file that is created, not the actual file. So for a file opened, there are actually 2 version that exist, one with (the main file) and one without the ~ (the temporary file windows creates when it is open). Both would cause the load to experience the same error, so both need to be skipped.&lt;/P&gt;&lt;P&gt;the copy paste method is definitely an option of all else fails. I think my current method will be sufficient for now, but it would be nice if the error mode could handle this error at some point.&lt;/P&gt;</description>
      <pubDate>Thu, 20 Nov 2025 06:57:01 GMT</pubDate>
      <guid>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2536707#M108719</guid>
      <dc:creator>Jebrezov</dc:creator>
      <dc:date>2025-11-20T06:57:01Z</dc:date>
    </item>
    <item>
      <title>Re: On Error continue not loading additional rows</title>
      <link>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2536713#M108720</link>
      <description>&lt;P&gt;The check-logic might be extended to something like:&lt;/P&gt;&lt;DIV&gt;&lt;SPAN&gt;IF left(vFileName,1)='~' then&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;let vLockedFile = mid('$(vFilename)', 2);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;trace 6;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;exit for&lt;/DIV&gt;&lt;DIV&gt;END IF&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;if&amp;nbsp;&lt;SPAN&gt;'$(vFilename)' =&amp;nbsp;'$(vLockedFile )' then&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;...&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;Further thinkable would be to update the file-list within each iteration - in a second nested loop. In a local storage is filelist() usually quite fast - I would assume hundreds per second - and therefore this extra overhead may not significantly increase the overall run-time.&lt;/SPAN&gt;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Beside the above you may consider to replace and/or to extend the trace-approach with a logging-load, like:&lt;/P&gt;&lt;P&gt;if x = y then&lt;BR /&gt;trace X;&lt;BR /&gt;t: load now() as RunTime, 'X' as Status, '$(vFileName') as File, ... autogenerate 1;&lt;BR /&gt;...&lt;/P&gt;&lt;P&gt;and then storing the table as qvd and/or combined with the historical runs which would also be useful to implement an incremental logic and to track the stuff over the time.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 20 Nov 2025 07:24:51 GMT</pubDate>
      <guid>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2536713#M108720</guid>
      <dc:creator>marcus_sommer</dc:creator>
      <dc:date>2025-11-20T07:24:51Z</dc:date>
    </item>
    <item>
      <title>Re: On Error continue not loading additional rows</title>
      <link>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2536987#M108746</link>
      <description>&lt;P&gt;Sorry for the delay&amp;nbsp;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/240126"&gt;@Jebrezov&lt;/a&gt;.&lt;/P&gt;&lt;P&gt;I believe you’ve discovered a bug in the &lt;STRONG&gt;File (via Direct Access Gateway) Data Connector&lt;/STRONG&gt;.&lt;BR /&gt;In short, during a Load Script execution, if an error occurs at any point, the File connector enters a state where it can no longer load anything - showing the message &lt;EM&gt;“MakeBusy cannot be called when state is Busy.”&lt;/EM&gt; I tried several approaches to avoid this, but none were successful. It also appears that no solution to this issue is currently available.&lt;/P&gt;&lt;P&gt;However, I did find a way to reduce the likelihood of triggering this error. Below is my modified Load Script. I hope it helps:&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;// List all candidate files
// ******************************************************************

SET vFolderToScan = 'lib://IPC DevOps:Sample';
SET vSearchPattern = '*.xlsm';

Sub ListFiles(RootFolder)

	TRACE Scanning folder: $(RootFolder) ...;
	
	For Each vFile in FileList('$(RootFolder)/$(vSearchPattern)')

		// Add any field here to support filtering the files
		[TempFilesFound]:
		LOAD
			'$(vFile)' AS Filename,
            SubField('$(vFile)','/',-1) AS FileBaseName,
			FileTime('$(vFile)') AS FileCreateTime,
			FileSize('$(vFile)') AS FileSize
			AutoGenerate(1)
		;

	Next vFile
	
	For Each vFolder in DirList('$(RootFolder)/')
	
    	TRACE Subfolder found $(vFolder);
        
		Call ListFiles('$(vFolder)');
	
	Next vFolder
	
End Sub


Call ListFiles('$(vFolderToScan)');


// Filter only the target files
// ******************************************************************
LET vReloadDate = MonthStart(Today()); // Add any date expression here

// Load non-opened files
[TempFilesToLoad]:
LOAD
	FilesToLoad,
 	FileBasePath &amp;amp; '~$' &amp;amp; FileBaseName AS OpenedFilename
;
LOAD
	Filename AS FilesToLoad,
    FileBaseName,
    Replace(Filename, FileBaseName,'') AS FileBasePath
RESIDENT
	[TempFilesFound]
WHERE
	1=1
	AND FileCreateTime &amp;gt; $(#vReloadDate) // Add any logic needed here to filter the files
    AND SubStringCount(Filename,'~$') = 0
;

DROP TABLE [TempFilesFound];


// Load the filtered files data
// ******************************************************************
SET vMyTableName = 'Data';

For vFileIndex = 0 To NoOfRows('TempFilesToLoad')-1

    LET vFileToLoad = Peek('FilesToLoad',$(vFileIndex),'TempFilesToLoad');
    LET vOpenedFilename = Peek('OpenedFilename',$(vFileIndex),'TempFilesToLoad');

    TRACE Loading file $(vFileToLoad) ...;

	// Last second opened file check
	If IsNull(FileTime('$(vOpenedFilename)')) Then

        [$(vMyTableName)]:
        LOAD
            '$(vFileToLoad)' AS FileLoaded, // Optional
            Plan,
            AgeGroupMin,
            AgeGroupMax,
            NewValue,
            Adjustment
        FROM
            [$(vFileToLoad)]
            (ooxml, embedded labels, table is Sheet1)
        ;
        
    Else
    
    	TRACE [$(vFileToLoad)] file is opened and cannot be load;

    End If
    
Next vFileIndex

// Clean remaining tables
// ******************************************************************
DROP TABLE [TempFilesToLoad];&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The main difference in this approach is that we check every single found file, right before loading it, if the file is opened or not.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Tested on &lt;STRONG&gt;Direct Access&amp;nbsp;1.7.8&lt;/STRONG&gt;.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Mark Costa&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 24 Nov 2025 05:59:24 GMT</pubDate>
      <guid>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2536987#M108746</guid>
      <dc:creator>marksouzacosta</dc:creator>
      <dc:date>2025-11-24T05:59:24Z</dc:date>
    </item>
    <item>
      <title>Re: On Error continue not loading additional rows</title>
      <link>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2537071#M108753</link>
      <description>&lt;P&gt;Thank you&amp;nbsp;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/22035"&gt;@marksouzacosta&lt;/a&gt; for replicating the error and proving its existence. You're solution is similar to what I had to putting together for my situation to minimize the chance of errors occurring.&amp;nbsp; For now, i think this is the needed solution, but i hope this will be resolved in the future.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 24 Nov 2025 13:46:37 GMT</pubDate>
      <guid>https://community.qlik.com/t5/App-Development/On-Error-continue-not-loading-additional-rows/m-p/2537071#M108753</guid>
      <dc:creator>Jebrezov</dc:creator>
      <dc:date>2025-11-24T13:46:37Z</dc:date>
    </item>
  </channel>
</rss>

