<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en" xmlns="http://www.w3.org/2005/Atom"><title>Recent posts to How can I read from one directory all the file names?</title><link href="https://forge.codesys.com/forge/talk/Visualization/thread/b6fc564465/" rel="alternate"/><link href="https://forge.codesys.com/forge/talk/Visualization/thread/b6fc564465/feed.atom" rel="self"/><id>https://forge.codesys.com/forge/talk/Visualization/thread/b6fc564465/</id><updated>2020-02-27T18:12:51.736000Z</updated><subtitle>Recent posts to How can I read from one directory all the file names?</subtitle><entry><title>How can I read from one directory all the file names?</title><link href="https://forge.codesys.com/forge/talk/Visualization/thread/b6fc564465/?limit=25#9331" rel="alternate"/><published>2020-02-27T18:12:51.736000Z</published><updated>2020-02-27T18:12:51.736000Z</updated><author><name>Comingback4u</name><uri>https://forge.codesys.com/u/comingback4u/</uri></author><id>https://forge.codesys.comd882b418a999fa80c97eb68f35c3f4a4398c8c8c</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;I notice that your udiDirHandle is empty so something is not setup correctly there. I haven't played around much with the way you are doing it but here is a working example. This example will count the number of files and directories in a specific location defined by "sDirectory". In the below example I was not getting the directory '.' to show up but it would count '..' as the first directory. If you have more time and care you can probably look into it. There are a lot of optimizations you can do do speed the search up but this will get you running.&lt;/p&gt;
&lt;p&gt;&lt;img alt="IMG: Vars.PNG" rel="nofollow" src="https://forum.codesys.com//download/file.php?id=3329"/&gt;&lt;/p&gt;
&lt;p&gt;&lt;img alt="IMG: Program.PNG" rel="nofollow" src="https://forum.codesys.com//download/file.php?id=3330"/&gt;&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>How can I read from one directory all the file names?</title><link href="https://forge.codesys.com/forge/talk/Visualization/thread/b6fc564465/?limit=25#e495" rel="alternate"/><published>2020-02-27T18:12:50.481000Z</published><updated>2020-02-27T18:12:50.481000Z</updated><author><name>papakosk</name><uri>https://forge.codesys.com/u/papakosk/</uri></author><id>https://forge.codesys.come94c57e8042a84be1dc81bcdb8f3807cdc43a141</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Thanks for your reply ..!&lt;br/&gt;
Your example is not work for me.. May be my syntax is not correct.. the program stack here  &amp;lt;&amp;lt;sdirectorylist.xdone&amp;gt;&amp;gt;&amp;lt;/sdirectorylist.xdone&amp;gt;&lt;/p&gt;
&lt;p&gt;&lt;img alt="IMG: Untitled.jpg" rel="nofollow" src="https://forum.codesys.com//download/file.php?id=3323"/&gt;&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>How can I read from one directory all the file names?</title><link href="https://forge.codesys.com/forge/talk/Visualization/thread/b6fc564465/?limit=25#d79e" rel="alternate"/><published>2020-02-27T18:12:47.379000Z</published><updated>2020-02-27T18:12:47.379000Z</updated><author><name>Comingback4u</name><uri>https://forge.codesys.com/u/comingback4u/</uri></author><id>https://forge.codesys.com5431f8e9d2eb9fb72ef5c1ab9829d9b7e04532ee</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;In the past I have added something like the following to a loop, usually in a case statement. This is back in SP 4 Patch 2 so there might be an easier way to do it now.&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="nv"&gt;VAR&lt;/span&gt;
     &lt;span class="nv"&gt;sDirectoryList&lt;/span&gt; : &lt;span class="nv"&gt;FILE&lt;/span&gt;.&lt;span class="nv"&gt;DirList&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
     &lt;span class="nv"&gt;sFileEntry&lt;/span&gt; : &lt;span class="nv"&gt;FILE&lt;/span&gt;.&lt;span class="nv"&gt;FILE_DIR_ENTRY&lt;/span&gt;&lt;span class="c1"&gt;; //Properties of entry in directory&lt;/span&gt;
     &lt;span class="nv"&gt;sDirHandle&lt;/span&gt; : &lt;span class="nv"&gt;CAA&lt;/span&gt;.&lt;span class="nv"&gt;HANDLE&lt;/span&gt;&lt;span class="c1"&gt;; //Open directory handle&lt;/span&gt;
     &lt;span class="nv"&gt;RunState&lt;/span&gt; : &lt;span class="nv"&gt;USINT&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;END_VAR&lt;/span&gt;
&lt;span class="nv"&gt;CASE&lt;/span&gt; &lt;span class="nv"&gt;RunState&lt;/span&gt; &lt;span class="nv"&gt;OF&lt;/span&gt;
&lt;span class="mi"&gt;1&lt;/span&gt;:  &lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="nv"&gt;Find&lt;/span&gt; &lt;span class="nv"&gt;and&lt;/span&gt; &lt;span class="nv"&gt;store&lt;/span&gt; &lt;span class="nv"&gt;all&lt;/span&gt; &lt;span class="nv"&gt;files&lt;/span&gt; &lt;span class="nv"&gt;that&lt;/span&gt; &lt;span class="nv"&gt;can&lt;/span&gt; &lt;span class="nv"&gt;be&lt;/span&gt; &lt;span class="nv"&gt;loaded&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;
     &lt;span class="nv"&gt;sDirectoryList&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;xExecute&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nv"&gt;TRUE&lt;/span&gt;,&lt;span class="nv"&gt;hDir&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nv"&gt;sDirHandle&lt;/span&gt;,&lt;span class="nv"&gt;deDirEntry&lt;/span&gt;&lt;span class="o"&gt;=&amp;gt;&lt;/span&gt;&lt;span class="nv"&gt;sFileEntry&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
     &lt;span class="k"&gt;IF&lt;/span&gt; &lt;span class="nv"&gt;sDirectoryList&lt;/span&gt;.&lt;span class="nv"&gt;xDone&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
          &lt;span class="k"&gt;IF&lt;/span&gt; &lt;span class="nv"&gt;NOT&lt;/span&gt; &lt;span class="nv"&gt;sFileEntry&lt;/span&gt;.&lt;span class="nv"&gt;xDirectory&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
               &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nv"&gt;What&lt;/span&gt; &lt;span class="nv"&gt;to&lt;/span&gt; &lt;span class="k"&gt;do&lt;/span&gt; &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="nv"&gt;the&lt;/span&gt; &lt;span class="nv"&gt;entry&lt;/span&gt; &lt;span class="nv"&gt;is&lt;/span&gt; &lt;span class="nv"&gt;not&lt;/span&gt; &lt;span class="nv"&gt;a&lt;/span&gt; &lt;span class="nv"&gt;directory&lt;/span&gt;
          &lt;span class="k"&gt;ELSE&lt;/span&gt;
               &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nv"&gt;What&lt;/span&gt; &lt;span class="nv"&gt;to&lt;/span&gt; &lt;span class="k"&gt;do&lt;/span&gt; &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="nv"&gt;the&lt;/span&gt; &lt;span class="nv"&gt;entry&lt;/span&gt; &lt;span class="nv"&gt;is&lt;/span&gt; &lt;span class="nv"&gt;a&lt;/span&gt; &lt;span class="nv"&gt;directory&lt;/span&gt;
          &lt;span class="nv"&gt;END_IF&lt;/span&gt;
          &lt;span class="nv"&gt;sDirectoryList&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;xExecute&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nv"&gt;FALSE&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;&lt;span class="c1"&gt;; //Set directory list to false so that on next cycle it will look for the next entry in the directory.&lt;/span&gt;
      &lt;span class="nv"&gt;ELSIF&lt;/span&gt; &lt;span class="nv"&gt;sDirectoryList&lt;/span&gt;.&lt;span class="nv"&gt;eError&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;FILE&lt;/span&gt;.&lt;span class="nv"&gt;ERROR&lt;/span&gt;.&lt;span class="nv"&gt;NO_MORE_ENTRIES&lt;/span&gt; &lt;span class="nv"&gt;OR&lt;/span&gt; &lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;sDirectoryList&lt;/span&gt;.&lt;span class="nv"&gt;xError&lt;/span&gt; &lt;span class="nv"&gt;AND&lt;/span&gt; &lt;span class="nv"&gt;sDirectoryList&lt;/span&gt;.&lt;span class="nv"&gt;eError&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&amp;gt;&lt;/span&gt; &lt;span class="nv"&gt;FILE&lt;/span&gt;.&lt;span class="nv"&gt;ERROR&lt;/span&gt;.&lt;span class="nv"&gt;NO_MORE_ENTRIES&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
          &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nv"&gt;Change&lt;/span&gt; &lt;span class="nv"&gt;state&lt;/span&gt; &lt;span class="nv"&gt;or&lt;/span&gt; &lt;span class="k"&gt;end&lt;/span&gt; &lt;span class="k"&gt;loop&lt;/span&gt;
          &lt;span class="nv"&gt;RunState&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;100&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
      &lt;span class="nv"&gt;END_IF&lt;/span&gt;
&lt;span class="k"&gt;ELSE&lt;/span&gt;
     &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="k"&gt;End&lt;/span&gt; &lt;span class="nv"&gt;of&lt;/span&gt; &lt;span class="nv"&gt;check&lt;/span&gt;
&lt;span class="nv"&gt;END_CASE&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;

&lt;/div&gt;</summary></entry><entry><title>How can I read from one directory all the file names?</title><link href="https://forge.codesys.com/forge/talk/Visualization/thread/b6fc564465/?limit=25#af65" rel="alternate"/><published>2020-02-27T18:12:46.123000Z</published><updated>2020-02-27T18:12:46.123000Z</updated><author><name>papakosk</name><uri>https://forge.codesys.com/u/papakosk/</uri></author><id>https://forge.codesys.comc652cee3ac943be3d0e3a03014046217da3dbede</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;In my program I can create directory, create delete and rename csv files.&lt;br/&gt;
I don't know how can I read all the csv file names and insert it in a list?&lt;/p&gt;
&lt;p&gt;Here is my program &lt;/p&gt;
&lt;p&gt;VAR&lt;br/&gt;
    sDirName        : STRING ;&lt;br/&gt;
    sDirName_tmp    : STRING := 'StirrupDB';&lt;br/&gt;
    sFirstFileName  : STRING;&lt;br/&gt;
    sRenameFileName : STRING;&lt;br/&gt;
    newFileName : STRING;&lt;br/&gt;
    Name : STRING :='config.csv';&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="nv"&gt;sDirEntry&lt;/span&gt;       : &lt;span class="nv"&gt;STRING&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1024&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;stDirInfo&lt;/span&gt;       : &lt;span class="nv"&gt;DirInfo&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;udiResult&lt;/span&gt;       : &lt;span class="nv"&gt;__XWORD&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;udiDirHandle&lt;/span&gt;    : &lt;span class="nv"&gt;RTS_IEC_HANDLE&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;udiFileHandle&lt;/span&gt;   : &lt;span class="nv"&gt;RTS_IEC_HANDLE&lt;/span&gt;&lt;span class="c1"&gt;;   &lt;/span&gt;
&lt;span class="nv"&gt;udiReadResult&lt;/span&gt;   : &lt;span class="nv"&gt;UDINT&lt;/span&gt;&lt;span class="c1"&gt;;    &lt;/span&gt;
&lt;span class="nv"&gt;xStartCreate&lt;/span&gt;        : &lt;span class="nv"&gt;BOOL&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;FALSE&lt;/span&gt;&lt;span class="c1"&gt;; (* true, if a button is pressed *)&lt;/span&gt;
&lt;span class="nv"&gt;xCreateDone&lt;/span&gt;     : &lt;span class="nv"&gt;BOOL&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;FALSE&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;xError&lt;/span&gt;          : &lt;span class="nv"&gt;BOOL&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;ErrorCode&lt;/span&gt; : &lt;span class="nv"&gt;RTS_IEC_RESULT&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;udiCreateError&lt;/span&gt;: &lt;span class="nv"&gt;UDINT&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;udiReadError&lt;/span&gt;: &lt;span class="nv"&gt;UDINT&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;udiCloseError&lt;/span&gt;: &lt;span class="nv"&gt;UDINT&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;udiRenameError&lt;/span&gt;: &lt;span class="nv"&gt;UDINT&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;udiDeleteError1&lt;/span&gt;: &lt;span class="nv"&gt;UDINT&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;udiDeleteError2&lt;/span&gt;: &lt;span class="nv"&gt;UDINT&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;udiDirDeleteError&lt;/span&gt;: &lt;span class="nv"&gt;UDINT&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;

&lt;span class="nv"&gt;xStartCreate_trig_r&lt;/span&gt;: &lt;span class="nv"&gt;R_trig&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;xStartRename_trig_r&lt;/span&gt;: &lt;span class="nv"&gt;R_trig&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;xStartDelete_trig_r&lt;/span&gt;: &lt;span class="nv"&gt;R_trig&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;ready_to_create&lt;/span&gt;: &lt;span class="nv"&gt;BOOL&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;

&lt;span class="nv"&gt;DataString&lt;/span&gt;      :&lt;span class="nv"&gt;STRING&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;80&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;handle&lt;/span&gt;          :&lt;span class="nv"&gt;DWORD&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;sStatus&lt;/span&gt;         :&lt;span class="nv"&gt;STRING&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;iError&lt;/span&gt;          :&lt;span class="nv"&gt;INT&lt;/span&gt;&lt;span class="c1"&gt;;   (* 00 : Normal Operation    *)&lt;/span&gt;
                        &lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="mi"&gt;90&lt;/span&gt; : &lt;span class="nv"&gt;Can&lt;/span&gt;&lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt;t Open File     *)&lt;/span&gt;
                        &lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="mi"&gt;91&lt;/span&gt; : &lt;span class="nv"&gt;Can&lt;/span&gt;&lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt;t Close File    *)&lt;/span&gt;
                        &lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="mi"&gt;92&lt;/span&gt; : &lt;span class="nv"&gt;Can&lt;/span&gt;&lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt;t Write to File     *)&lt;/span&gt;
&lt;span class="nv"&gt;pResult&lt;/span&gt; : &lt;span class="nv"&gt;POINTER&lt;/span&gt; &lt;span class="nv"&gt;TO&lt;/span&gt; &lt;span class="nv"&gt;SysFile&lt;/span&gt;.&lt;span class="nv"&gt;RTS_IEC_RESULT&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;

&lt;span class="nv"&gt;r_trig_1&lt;/span&gt;: &lt;span class="nv"&gt;R_trig&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;init_1&lt;/span&gt;: &lt;span class="nv"&gt;BOOL&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;i&lt;/span&gt;: &lt;span class="nv"&gt;INT&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;arr_point&lt;/span&gt;: &lt;span class="nv"&gt;INT&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;r_trig_0&lt;/span&gt; :&lt;span class="nv"&gt;r_trig&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;init&lt;/span&gt;: &lt;span class="nv"&gt;BOOL&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;j&lt;/span&gt;: &lt;span class="nv"&gt;INT&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;TONInst&lt;/span&gt; :&lt;span class="nv"&gt;TON&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;

&lt;span class="nv"&gt;xDeleteDone&lt;/span&gt;: &lt;span class="nv"&gt;BOOL&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;xRenameDone&lt;/span&gt;: &lt;span class="nv"&gt;BOOL&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;PreviousName&lt;/span&gt;: &lt;span class="nv"&gt;STRING&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;SelectName&lt;/span&gt;: &lt;span class="nv"&gt;STRING&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;

&lt;span class="nv"&gt;udcFileTime&lt;/span&gt;         : &lt;span class="nv"&gt;SYS_FILETIME&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;tCreation&lt;/span&gt;           : &lt;span class="nv"&gt;DT&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;tLastAccess&lt;/span&gt;     : &lt;span class="nv"&gt;DT&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;tLastModification&lt;/span&gt;   : &lt;span class="nv"&gt;DT&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;END_VAR&lt;/p&gt;
&lt;p&gt;xStartCreate_trig_r(CLK:= xStart_new_file);&lt;br/&gt;
xStartRename_trig_r(CLK:=xStart_rename_file);&lt;br/&gt;
xStartDelete_trig_r(CLK:=xStart_delete_file);&lt;/p&gt;
&lt;p&gt;IF xStartCreate_trig_r.Q THEN&lt;br/&gt;
    init := FALSE;&lt;br/&gt;
    name_exist := FALSE;&lt;br/&gt;
    xError := FALSE;&lt;br/&gt;
    xCreateDone := FALSE;&lt;br/&gt;
    ready_to_create := TRUE;&lt;br/&gt;
    SelectName := Name;&lt;br/&gt;
END_IF&lt;/p&gt;
&lt;p&gt;IF xStartDelete_trig_r.Q THEN&lt;br/&gt;
    xDeleteDone := FALSE;&lt;br/&gt;
    SelectName := Name;&lt;br/&gt;
END_IF&lt;/p&gt;
&lt;p&gt;IF xStartRename_trig_r.Q THEN&lt;br/&gt;
    init := FALSE;&lt;br/&gt;
    name_exist := FALSE;&lt;br/&gt;
    xError := FALSE;&lt;br/&gt;
    xDeleteDone := FALSE;&lt;br/&gt;
    xCreateDone := FALSE;&lt;br/&gt;
    ready_to_create := TRUE;&lt;br/&gt;
    newFileName := Name;&lt;br/&gt;
END_IF&lt;/p&gt;
&lt;p&gt;IF ready_to_create AND NOT xCreateDone THEN&lt;br/&gt;
    (&lt;em&gt; create the complete file pathes&lt;/em&gt;) &lt;br/&gt;
    (&lt;em&gt; The file names can be adapted &lt;/em&gt;)&lt;br/&gt;
    sFirstFileName  := CONCAT('/', SelectName);//'/firstTest.csv';&lt;br/&gt;
    sRenameFileName := CONCAT('/', newFileName);//'/rename existing .csv';&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="nv"&gt;sDirName&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt;  &lt;span class="nv"&gt;CONCAT&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;g_sMainDirectory&lt;/span&gt;, &lt;span class="nv"&gt;sDirName_tmp&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;sFirstFileName&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;CONCAT&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;sDirName&lt;/span&gt;, &lt;span class="nv"&gt;sFirstFileName&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;sRenameFileName&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;CONCAT&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;sDirName&lt;/span&gt;, &lt;span class="nv"&gt;sRenameFileName&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;

&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt;  &lt;span class="nv"&gt;files&lt;/span&gt; &lt;span class="nv"&gt;are&lt;/span&gt; &lt;span class="nv"&gt;created&lt;/span&gt; &lt;span class="nv"&gt;and&lt;/span&gt; &lt;span class="nv"&gt;stored&lt;/span&gt; &lt;span class="nv"&gt;into&lt;/span&gt; &lt;span class="nv"&gt;the&lt;/span&gt; &lt;span class="nv"&gt;directory&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;
&lt;span class="nv"&gt;udiFileHandle&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;SysFileOpen&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;szFile&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nv"&gt;sFirstFileName&lt;/span&gt;, &lt;span class="nv"&gt;am&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nv"&gt;SysFile&lt;/span&gt;.&lt;span class="nv"&gt;AM_WRITE_PLUS&lt;/span&gt;, &lt;span class="nv"&gt;pResult&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nv"&gt;ADR&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;ErrorCode&lt;/span&gt;&lt;span class="ss"&gt;))&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;IF&lt;/span&gt; &lt;span class="nv"&gt;udiFileHandle&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&amp;gt;&lt;/span&gt; &lt;span class="nv"&gt;RTS_INVALID_HANDLE&lt;/span&gt;  &lt;span class="k"&gt;THEN&lt;/span&gt;
    &lt;span class="nv"&gt;SysFileClose&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;hFile&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nv"&gt;udiFileHandle&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;END_IF&lt;/span&gt;


&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="nv"&gt;open&lt;/span&gt; &lt;span class="nv"&gt;the&lt;/span&gt; &lt;span class="nv"&gt;directory&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;
    &lt;span class="nv"&gt;the&lt;/span&gt; &lt;span class="nv"&gt;handle&lt;/span&gt; &lt;span class="nv"&gt;is&lt;/span&gt; &lt;span class="nv"&gt;returned&lt;/span&gt; &lt;span class="nv"&gt;and&lt;/span&gt; &lt;span class="nv"&gt;the&lt;/span&gt; &lt;span class="nv"&gt;first&lt;/span&gt; &lt;span class="nv"&gt;directory&lt;/span&gt; &lt;span class="nv"&gt;entry&lt;/span&gt;. &lt;span class="nv"&gt;Normally&lt;/span&gt; &lt;span class="nv"&gt;the&lt;/span&gt; &lt;span class="nv"&gt;first&lt;/span&gt; &lt;span class="nv"&gt;entry&lt;/span&gt; &lt;span class="nv"&gt;is&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;.&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt; &lt;span class="nv"&gt;and&lt;/span&gt; &lt;span class="nv"&gt;the&lt;/span&gt; &lt;span class="nv"&gt;second&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;..&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;
&lt;span class="nv"&gt;udiDirHandle&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;SysDirOpen&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;szDir&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;sDirName&lt;/span&gt;, &lt;span class="nv"&gt;szDirEntry&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;sDirEntry&lt;/span&gt;, &lt;span class="nv"&gt;diMaxDirEntry&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;SIZEOF&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;sDirEntry&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;, 
            &lt;span class="nv"&gt;pDirInfo&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;ADR&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;stDirInfo&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;, &lt;span class="nv"&gt;pResult&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;udiResult&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;

&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="nv"&gt;Rename&lt;/span&gt; &lt;span class="nv"&gt;a&lt;/span&gt; &lt;span class="nv"&gt;file&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;
&lt;span class="k"&gt;IF&lt;/span&gt; &lt;span class="nv"&gt;xStart_rename_file&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
    &lt;span class="nv"&gt;udiRenameError&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nv"&gt;SysFileRename&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;szOldFileName&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;sFirstFileName&lt;/span&gt;, &lt;span class="nv"&gt;szNewFileName&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;sRenameFileName&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
    &lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="nv"&gt;the&lt;/span&gt; &lt;span class="nv"&gt;test&lt;/span&gt; &lt;span class="nv"&gt;is&lt;/span&gt; &lt;span class="nv"&gt;set&lt;/span&gt; &lt;span class="nv"&gt;to&lt;/span&gt; &lt;span class="nv"&gt;done&lt;/span&gt;, &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="nv"&gt;no&lt;/span&gt; &lt;span class="nv"&gt;error&lt;/span&gt; &lt;span class="nv"&gt;occured&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;
    &lt;span class="k"&gt;IF&lt;/span&gt; &lt;span class="nv"&gt;udiRenameError&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
        &lt;span class="nv"&gt;xRenameDone&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;TRUE&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
    &lt;span class="k"&gt;ELSE&lt;/span&gt;
        &lt;span class="nv"&gt;xRenameDone&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;TRUE&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
    &lt;span class="nv"&gt;END_IF&lt;/span&gt;  
    &lt;span class="nv"&gt;init_1&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;TRUE&lt;/span&gt;&lt;span class="c1"&gt;; &lt;/span&gt;
&lt;span class="nv"&gt;END_IF&lt;/span&gt;

&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="nv"&gt;Close&lt;/span&gt; &lt;span class="nv"&gt;the&lt;/span&gt; &lt;span class="nv"&gt;directory&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;
&lt;span class="nv"&gt;udiCloseError&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;SysDirClose&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;hDir&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;udiDirHandle&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;

&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="nv"&gt;Some&lt;/span&gt; &lt;span class="nv"&gt;file&lt;/span&gt; &lt;span class="nv"&gt;information&lt;/span&gt;
&lt;span class="nv"&gt;SysFileGetTime&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;szFileName&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nv"&gt;sFirstFileName&lt;/span&gt;, &lt;span class="nv"&gt;ptFileTime&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nv"&gt;ADR&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;udcFileTime&lt;/span&gt;&lt;span class="ss"&gt;))&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nv"&gt;creation&lt;/span&gt; &lt;span class="nv"&gt;time&lt;/span&gt; &lt;span class="nv"&gt;of&lt;/span&gt; &lt;span class="nv"&gt;the&lt;/span&gt; &lt;span class="nv"&gt;file&lt;/span&gt; &lt;span class="nv"&gt;in&lt;/span&gt; &lt;span class="nv"&gt;local&lt;/span&gt; &lt;span class="nv"&gt;time&lt;/span&gt;
&lt;span class="nv"&gt;tCreation&lt;/span&gt;    :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;UDINT_TO_DT&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;udcFileTime&lt;/span&gt;.&lt;span class="nv"&gt;tCreation&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="nv"&gt;last&lt;/span&gt; &lt;span class="nv"&gt;access&lt;/span&gt; &lt;span class="nv"&gt;of&lt;/span&gt; &lt;span class="nv"&gt;the&lt;/span&gt; &lt;span class="nv"&gt;file&lt;/span&gt;
&lt;span class="nv"&gt;tLastAccess&lt;/span&gt;  :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;UDINT_TO_DT&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;udcFileTime&lt;/span&gt;.&lt;span class="nv"&gt;tLastAccess&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="nv"&gt;last&lt;/span&gt; &lt;span class="nv"&gt;modification&lt;/span&gt; &lt;span class="nv"&gt;of&lt;/span&gt; &lt;span class="nv"&gt;the&lt;/span&gt; &lt;span class="nv"&gt;file&lt;/span&gt;
&lt;span class="nv"&gt;tLastModification&lt;/span&gt;    :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;UDINT_TO_DT&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;udcFileTime&lt;/span&gt;.&lt;span class="nv"&gt;tLastModification&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;

&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="nv"&gt;set&lt;/span&gt; &lt;span class="nv"&gt;to&lt;/span&gt; &lt;span class="nv"&gt;done&lt;/span&gt;, &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="nv"&gt;no&lt;/span&gt; &lt;span class="nv"&gt;error&lt;/span&gt; &lt;span class="nv"&gt;occured&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;
&lt;span class="k"&gt;IF&lt;/span&gt; &lt;span class="nv"&gt;udiCreateError&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt; &lt;span class="nv"&gt;AND&lt;/span&gt; &lt;span class="nv"&gt;udiCloseError&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt; &lt;span class="nv"&gt;AND&lt;/span&gt; &lt;span class="nv"&gt;xError&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;FALSE&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
    &lt;span class="nv"&gt;xCreateDone&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;TRUE&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;ELSE&lt;/span&gt;
    &lt;span class="nv"&gt;xError&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;TRUE&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;END_IF&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;END_IF&lt;/p&gt;
&lt;p&gt;(&lt;em&gt; Delete existing  files &lt;/em&gt;)&lt;br/&gt;
IF xStart_delete_file THEN&lt;br/&gt;
    (&lt;em&gt; create the complete file pathes&lt;/em&gt;) &lt;br/&gt;
    (&lt;em&gt; The file names can be adapted &lt;/em&gt;)&lt;br/&gt;
    sFirstFileName  := CONCAT('/', SelectName);//'/firstTest.csv';&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="nv"&gt;sDirName&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt;  &lt;span class="nv"&gt;CONCAT&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;g_sMainDirectory&lt;/span&gt;, &lt;span class="nv"&gt;sDirName_tmp&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;sFirstFileName&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;CONCAT&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;sDirName&lt;/span&gt;, &lt;span class="nv"&gt;sFirstFileName&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;udiDeleteError1&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nv"&gt;SysFileDelete&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;szFileName&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nv"&gt;sFirstFileName&lt;/span&gt; &lt;span class="ss"&gt;)&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;

&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="nv"&gt;Close&lt;/span&gt; &lt;span class="nv"&gt;the&lt;/span&gt; &lt;span class="nv"&gt;directory&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;
&lt;span class="nv"&gt;udiCloseError&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;SysDirClose&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;hDir&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;udiDirHandle&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;

&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="nv"&gt;open&lt;/span&gt; &lt;span class="nv"&gt;the&lt;/span&gt; &lt;span class="nv"&gt;directory&lt;/span&gt; 
    &lt;span class="nv"&gt;the&lt;/span&gt; &lt;span class="nv"&gt;handle&lt;/span&gt; &lt;span class="nv"&gt;is&lt;/span&gt; &lt;span class="nv"&gt;returned&lt;/span&gt; &lt;span class="nv"&gt;and&lt;/span&gt; &lt;span class="nv"&gt;the&lt;/span&gt; &lt;span class="nv"&gt;first&lt;/span&gt; &lt;span class="nv"&gt;directory&lt;/span&gt; &lt;span class="nv"&gt;entry&lt;/span&gt;. &lt;span class="nv"&gt;Normally&lt;/span&gt; &lt;span class="nv"&gt;the&lt;/span&gt; &lt;span class="nv"&gt;first&lt;/span&gt; &lt;span class="nv"&gt;entry&lt;/span&gt; &lt;span class="nv"&gt;is&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;.&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt; &lt;span class="nv"&gt;and&lt;/span&gt; &lt;span class="nv"&gt;the&lt;/span&gt; &lt;span class="nv"&gt;second&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;..&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;
&lt;span class="nv"&gt;udiDirHandle&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;SysDirOpen&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;szDir&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;sDirName&lt;/span&gt;, &lt;span class="nv"&gt;szDirEntry&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;sDirEntry&lt;/span&gt;, &lt;span class="nv"&gt;diMaxDirEntry&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;SIZEOF&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;sDirEntry&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;, 
            &lt;span class="nv"&gt;pDirInfo&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;ADR&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;stDirInfo&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;, &lt;span class="nv"&gt;pResult&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;udiResult&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;

&lt;span class="nv"&gt;udiDeleteError1&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nv"&gt;SysFileDelete&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;szFileName&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nv"&gt;sFirstFileName&lt;/span&gt; &lt;span class="ss"&gt;)&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="nv"&gt;the&lt;/span&gt; &lt;span class="nv"&gt;test&lt;/span&gt; &lt;span class="nv"&gt;is&lt;/span&gt; &lt;span class="nv"&gt;set&lt;/span&gt; &lt;span class="nv"&gt;to&lt;/span&gt; &lt;span class="nv"&gt;done&lt;/span&gt;, &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="nv"&gt;no&lt;/span&gt; &lt;span class="nv"&gt;error&lt;/span&gt; &lt;span class="nv"&gt;occured&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;
&lt;span class="k"&gt;IF&lt;/span&gt; &lt;span class="nv"&gt;udiDeleteError1&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
    &lt;span class="nv"&gt;xDeleteDone&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;TRUE&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;ELSE&lt;/span&gt;
    &lt;span class="nv"&gt;xDeleteDone&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;TRUE&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;END_IF&lt;/span&gt;
&lt;span class="nv"&gt;xStart_delete_file&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;FALSE&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;END_IF&lt;/p&gt;&lt;/div&gt;</summary></entry></feed>