<?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: How to call a &amp;quot;.sas&amp;quot; script file in Java client? in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183331#M303367</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thank you very much Ahmed. &lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;I selected java first because My strength is Java and I though I could use the command line command &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;sas -sysparm 'file_path_and_name' sas_script.sas&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;to run the SAS scripts.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;The above links are all about the job scheduling. I read first one and the 3rd one before, and I will read the rest of them.&amp;nbsp; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;Is it easy to use SAS scripts to do the file system scan to find new files, to compare the time stamps of the file, to create a bunch of sub folders and to copy files?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;Thanks!&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;David&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 30 Dec 2013 13:33:04 GMT</pubDate>
    <dc:creator>DavidHu</dc:creator>
    <dc:date>2013-12-30T13:33:04Z</dc:date>
    <item>
      <title>How to call a ".sas" script file in Java client?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183322#M303358</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi There,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am new to SAS. I am assigned a task to automate some manuel SAS job. I am planning to do it in java. In the processes, I need to call different ".sas" script files based on the different conditions and dynamic parameters need to be passed to the ".sas" script.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Is there any ways can do it?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks a lot in advance!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;David&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 27 Dec 2013 19:48:34 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183322#M303358</guid>
      <dc:creator>DavidHu</dc:creator>
      <dc:date>2013-12-27T19:48:34Z</dc:date>
    </item>
    <item>
      <title>Re: How to call a ".sas" script file in Java client?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183323#M303359</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;David,&lt;/P&gt;&lt;P&gt;In order to get a suitable answer, you'll need to specify&lt;/P&gt;&lt;P&gt; - Where does your Java Client App run? Windows or Unix?&lt;/P&gt;&lt;P&gt;- Do you want to run SAS locally on the same client machine or on a remote machine?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ahmed&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 27 Dec 2013 20:02:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183323#M303359</guid>
      <dc:creator>AhmedAl_Attar</dc:creator>
      <dc:date>2013-12-27T20:02:04Z</dc:date>
    </item>
    <item>
      <title>Re: How to call a ".sas" script file in Java client?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183324#M303360</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks a lot Ahmed!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;At first I planed to installed the Java App on the SAS Server which is running on a Windows 2003 server. But after I talked with the SAS Server Admin, I was told I can only run the java App on a remote client workstation which is a Windows OS too.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The .sas scripts and files used by the scripts are in the server too but are all mapped to the client workstation as a network driver. Currently, a user will find the new file and select a script based on the new file name, manually change the path and file name to reflect the real path and file name to be parsed, save the script, and then run the script by EG 4.5. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What I need to do is call different sas scripts based on different files need to be parsed by the .sas scripts. For example, if the file name is abc.txt, I will call abc_script.sas to do the parse. In abc_script.sas, I need to change the file path and name in the "abc_script.sas"&amp;nbsp; to ..\..\abc.txt so that the script to parse the correct file, and then create a report called "abc,xls". So file name and path must be passed to the script correctly.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;How Can I do that?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks a lot!&lt;/P&gt;&lt;P&gt;David&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 27 Dec 2013 20:12:48 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183324#M303360</guid>
      <dc:creator>DavidHu</dc:creator>
      <dc:date>2013-12-27T20:12:48Z</dc:date>
    </item>
    <item>
      <title>Re: How to call a ".sas" script file in Java client?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183325#M303361</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;OK, on Windows you can use the following command to start a batch SAS job&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A name="a000498643"&gt;&lt;/A&gt;c:\program files\SAS\SASFoundation\9.2\sas.exe&lt;/P&gt;&lt;P&gt;&amp;nbsp; -sysin c:\mysas\programs\prog1.sas &lt;/P&gt;&lt;P&gt;&amp;nbsp; -config c:\program files\SAS\SASFoundation\9.2\sasv9.cfg&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You may need to change 'c:\program files\SAS\SASFoundation\9.2' to match your SAS Server settings.&lt;/P&gt;&lt;P&gt;You should replace 'c:\mysas\programs\prog1.sas' with your own SAS scripts location.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ahmed&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 27 Dec 2013 20:25:28 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183325#M303361</guid>
      <dc:creator>AhmedAl_Attar</dc:creator>
      <dc:date>2013-12-27T20:25:28Z</dc:date>
    </item>
    <item>
      <title>Re: How to call a ".sas" script file in Java client?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183326#M303362</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;David,&lt;/P&gt;&lt;P&gt;Can you tell me what SAS software Bundle and version you guys have at your site?&lt;/P&gt;&lt;P&gt;Most SAS installations come with SAS Enterprise Guide for the Window Client Machines, and it has all the hooks to Remote SAS Server(s). and in turn, you wouldn't need to re-invent the wheel so to speak.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ahmed&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 27 Dec 2013 20:35:08 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183326#M303362</guid>
      <dc:creator>AhmedAl_Attar</dc:creator>
      <dc:date>2013-12-27T20:35:08Z</dc:date>
    </item>
    <item>
      <title>Re: How to call a ".sas" script file in Java client?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183327#M303363</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Ahmed,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I cannot use sas.exe because I was told we do not have this in our client.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;At first I think the app will be very simple because I just need to do a native calls like you said&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;sas -sysparm 'file_path_and_name' sas_script.sas&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;But I am told I cannot use above call because we do not have the above command available.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;How can I have the above command available in the SAS client? I searched the web, EG, SAS Connect, and so no do not have this command available.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;Is the SASFoundation a client I need to install to make the sas.exe available? where and how I can get it if the answer is 'yes"?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;Thanks a lot Ahmed.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;David&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 27 Dec 2013 20:36:57 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183327#M303363</guid>
      <dc:creator>DavidHu</dc:creator>
      <dc:date>2013-12-27T20:36:57Z</dc:date>
    </item>
    <item>
      <title>Re: How to call a ".sas" script file in Java client?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183328#M303364</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;If you have SAS Enterprise Guide (EG) then you can use the %include program.sas from within EG.&lt;/P&gt;&lt;P&gt;The way EG works, it runs locally on your client machine, but it submits the SAS statement(s) on the SAS Server it connected to.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 27 Dec 2013 20:49:15 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183328#M303364</guid>
      <dc:creator>AhmedAl_Attar</dc:creator>
      <dc:date>2013-12-27T20:49:15Z</dc:date>
    </item>
    <item>
      <title>Re: How to call a ".sas" script file in Java client?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183329#M303365</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Ahmed,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Yes we are using EG 4.5 as client.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The current processes is like that: there are file copied from a remote file server to SAS server continuously. Periodically (half hour, 1 hour) a user is coming to check if there are any new files copied by using EG. If there is a new one, the user is going to find correct sas script based on the file name. Then he/she will open the selected sas scripts, modify the file name and path to the real path, file name, submission fiscal year. Then he/she will saved the script, and run the script in EG.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This is tiresome because there are so many files. So I was assigned to automate this processes.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I will have a Java application always running to check if there is a new file. If there is a new file, the app will select the right scripts based on the file name. Instead of harcoded file path, name and fiscal year, I will change these 3 into a dynamic parameter in the script. Then I will call the script by using a native command call in Java:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;sas -sysparm 'file_path_and_name' sas_script.sas&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;This is my plan. But EG does not have sas.exe available for the Java app to call.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;I want to know what else I can do?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;Thanks a lot!&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;David&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 27 Dec 2013 20:51:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183329#M303365</guid>
      <dc:creator>DavidHu</dc:creator>
      <dc:date>2013-12-27T20:51:04Z</dc:date>
    </item>
    <item>
      <title>Re: How to call a ".sas" script file in Java client?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183330#M303366</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;OK, now things are a bit clear.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You don't need to complicate your life by using Java!!!&lt;/P&gt;&lt;P&gt;All you need is a SAS program that can read the arrival of these new file(s) and apply the required changes. Once you have developed that SAS program, all you need is scheduling to run on a periodic interval using the AT scheduler on your Windows Server.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here are few relative White papers to look at for inspiration &lt;img id="smileywink" class="emoticon emoticon-smileywink" src="https://communities.sas.com/i/smilies/16x16_smiley-wink.png" alt="Smiley Wink" title="Smiley Wink" /&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;A href="http://analytics.ncsu.edu/sesug/2006/CC04_06.PDF"&gt;While You Were Sleeping - Scheduling SAS® Jobs to Run Automatically&lt;/A&gt;&lt;/LI&gt;&lt;LI&gt;&lt;A href="http://support.sas.com/resources/papers/proceedings11/005-2011.pdf"&gt;While You Were Sleeping, SAS® Was Hard At Work&lt;/A&gt;&lt;/LI&gt;&lt;LI&gt;&lt;A href="http://support.sas.com/resources/papers/proceedings12/298-2012.pdf"&gt;Not Just for Scheduling: Doing More with SAS® Enterprise Guide® Automation&lt;/A&gt;&lt;/LI&gt;&lt;LI&gt;&lt;A href="http://www.nesug.org/Proceedings/nesug11/ap/ap06.pdf"&gt;Let the system do the work! Automate your SAS code execution on UNIX and Windows platforms&lt;/A&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ahmed&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 27 Dec 2013 21:15:23 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183330#M303366</guid>
      <dc:creator>AhmedAl_Attar</dc:creator>
      <dc:date>2013-12-27T21:15:23Z</dc:date>
    </item>
    <item>
      <title>Re: How to call a ".sas" script file in Java client?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183331#M303367</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thank you very much Ahmed. &lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;I selected java first because My strength is Java and I though I could use the command line command &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;sas -sysparm 'file_path_and_name' sas_script.sas&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;to run the SAS scripts.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;The above links are all about the job scheduling. I read first one and the 3rd one before, and I will read the rest of them.&amp;nbsp; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;Is it easy to use SAS scripts to do the file system scan to find new files, to compare the time stamps of the file, to create a bunch of sub folders and to copy files?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;Thanks!&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; font-family: Arial, sans-serif; background-color: #f6f7f7;"&gt;David&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 30 Dec 2013 13:33:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183331#M303367</guid>
      <dc:creator>DavidHu</dc:creator>
      <dc:date>2013-12-30T13:33:04Z</dc:date>
    </item>
    <item>
      <title>Re: How to call a ".sas" script file in Java client?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183332#M303368</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi David,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Yes, it's easy to use SAS for external file system processing.&lt;/P&gt;&lt;P&gt;Check the following SAS 9.2 On-line help documentation for &lt;A href="http://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a000245860.htm"&gt;Functions and Call Routines&lt;/A&gt;, You'll need to scroll down to the "&lt;STRONG&gt;External Files&lt;/STRONG&gt;" Category. Most of the functions documentation would have usage examples, that you can utilize to get what you are looking for.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here are few additional links to illustrate more usage examples&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;A href="http://support.sas.com/resources/papers/proceedings12/058-2012.pdf"&gt;Inventory Your Files Using SAS®&lt;/A&gt;&lt;/LI&gt;&lt;LI&gt;&lt;A href="http://www.wuss.org/proceedings12/55.pdf"&gt;Obtaining A List of Files In A Directory Using SAS® Functions&lt;/A&gt;&lt;/LI&gt;&lt;LI&gt;&lt;A href="http://www.sascommunity.org/wiki/SAS_Filesystem_Toolbox"&gt;SAS Filesystem Toolbox&lt;/A&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 31 Dec 2013 13:27:58 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183332#M303368</guid>
      <dc:creator>AhmedAl_Attar</dc:creator>
      <dc:date>2013-12-31T13:27:58Z</dc:date>
    </item>
    <item>
      <title>Re: How to call a ".sas" script file in Java client?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183333#M303369</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;They are very useful and helpful to me! Thank you very much Ahmed!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;David&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 31 Dec 2013 14:34:57 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183333#M303369</guid>
      <dc:creator>DavidHu</dc:creator>
      <dc:date>2013-12-31T14:34:57Z</dc:date>
    </item>
    <item>
      <title>Re: How to call a ".sas" script file in Java client?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183334#M303370</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P id="yui_3_13_0_ym1_1_1389204255627_2535" style="color: #000000; font-family: HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 16px;"&gt;&lt;SPAN id="yui_3_13_0_ym1_1_1389204255627_2544"&gt;Thank you very much Ahmed!&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_13_0_ym1_1_1389204255627_2534" style="color: #000000; font-family: HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 16px;"&gt;&lt;/P&gt;&lt;P id="yui_3_13_0_ym1_1_1389204255627_2532" style="color: #000000; font-family: HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 16px;"&gt;&lt;SPAN id="yui_3_13_0_ym1_1_1389204255627_2533"&gt;I spent some time on SAS and write a integration sas script. Can you help me to take a look? I think I may have errors in the folder recursive searching for the subfolders and files. &lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_13_0_ym1_1_1389204255627_2530" style="color: #000000; font-family: HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 16px;"&gt;&lt;/P&gt;&lt;P id="yui_3_13_0_ym1_1_1389204255627_2529" style="color: #000000; font-family: HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 16px;"&gt;&lt;SPAN id="yui_3_13_0_ym1_1_1389204255627_2571"&gt;Thank you very much for your help!&lt;/SPAN&gt;&lt;/P&gt;&lt;P id="yui_3_13_0_ym1_1_1389204255627_2528" style="color: #000000; font-family: HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 16px;"&gt;&lt;SPAN id="yui_3_13_0_ym1_1_1389204255627_2575"&gt;Davy&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;&lt;/P&gt;&lt;P&gt;intervalForFileValidation = 1; /*** in hours ***/&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;currentDate = Today();&lt;/P&gt;&lt;P&gt;currentYear = Year(currentDate);&lt;/P&gt;&lt;P&gt;currentYearIn2Digits = substr(currentYear,3,2);&lt;/P&gt;&lt;P&gt;endyearIn2Digits = currentYearIn2Digits + 1;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;currentSubmissionPeriod = "" + currentYearIn2Digits + "" + endyearIn2Digits;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/** root for project: c:\SAS\data\users\DDM\OCCI\OCCI_AuditYYYY ****/&lt;/P&gt;&lt;P&gt;constantPath = "c:\SAS\data\users\DDM\OCCI\OCCI_Audit";&lt;/P&gt;&lt;P&gt;%Let mypath = cats(of constantPath currentSubmissionPeriod);&lt;/P&gt;&lt;P&gt;rawDataFilePath = &amp;amp;mypath.\Data\Rawdata&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data rawDataDir;&lt;/P&gt;&lt;P&gt;&amp;nbsp; length filename dir fullpath $256;&lt;/P&gt;&lt;P&gt;&amp;nbsp; dir = "&amp;amp;dataFilePath";&lt;/P&gt;&lt;P&gt;&amp;nbsp; rc = filename("readdir","&amp;amp;rawDataFilePath");&lt;/P&gt;&lt;P&gt;&amp;nbsp; did = dopen("readdir");&lt;/P&gt;&lt;P&gt;&amp;nbsp; memcount = dnum(did);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; /***** 1. Scan the given file system of rawDataFilePath folder, subfolder and files **************************************************/&lt;/P&gt;&lt;P&gt;&amp;nbsp; do i = 1 to memcount;&lt;/P&gt;&lt;P&gt;&amp;nbsp; filename = dread(did,i);&lt;/P&gt;&lt;P&gt;&amp;nbsp; fullpath = trim(dir) !! "\" !! filename;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; fid=fopen("readdir"); &lt;/P&gt;&lt;P&gt;&amp;nbsp; fileCreateDate=finfo(fid,"Create Time"); &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; close=fclose(fid);&lt;/P&gt;&lt;P&gt;&amp;nbsp; timePassed = (Today() - fileCreateDate)/InHours();&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; /***** 2. If the file is a TXT one and if it has not been validated before (file create date &amp;lt; 1 hour), populate it *********/&lt;/P&gt;&lt;P&gt;&amp;nbsp; do while(timePassed &amp;gt; intervalForFileValidation and index(filename,"TXT") &amp;gt; 1); &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if(index(filename,"AIP") &amp;gt; 1) then &lt;/P&gt;&lt;P&gt;&amp;nbsp; %Let mvType&amp;nbsp;&amp;nbsp; = AIP;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if(index(filename,"AMB") &amp;gt; 1) then&lt;/P&gt;&lt;P&gt;&amp;nbsp; %Let mvType&amp;nbsp;&amp;nbsp; = AMB;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if(index(filename,"AMH") &amp;gt; 1) then&lt;/P&gt;&lt;P&gt;&amp;nbsp; %Let mvType&amp;nbsp;&amp;nbsp; = AMH;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if(index(filename,"CCC") &amp;gt; 1) then&lt;/P&gt;&lt;P&gt;&amp;nbsp; %Let mvType&amp;nbsp;&amp;nbsp; = CCC;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if(index(filename,"RHB") &amp;gt; 1) then&lt;/P&gt;&lt;P&gt;&amp;nbsp; %Let mvType&amp;nbsp;&amp;nbsp; = RHB;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if(index(filename,"CAC") &amp;gt; 1) then&lt;/P&gt;&lt;P&gt;&amp;nbsp; %Let mvType&amp;nbsp;&amp;nbsp; = CAC;&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;&amp;nbsp; %Let mvMileStone= YE;&lt;/P&gt;&lt;P&gt;&amp;nbsp; %LET OCDM = Yes;&lt;/P&gt;&lt;P&gt;&amp;nbsp; %Let filename = &amp;amp;fullpath;&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;&lt;/P&gt;&lt;P&gt;&amp;nbsp; %Let root = &amp;amp;mypath;&lt;/P&gt;&lt;P&gt;&amp;nbsp; %INCLUDE "&amp;amp;root.\Program\Shared\Initiate.sas";&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; ODS path RESET;&lt;/P&gt;&lt;P&gt;&amp;nbsp; %INCLUDE "&amp;amp;publicpath\Import.sas";&lt;/P&gt;&lt;P&gt;&amp;nbsp; %INCLUDE "&amp;amp;publicpath\Match.sas";&lt;/P&gt;&lt;P&gt;&amp;nbsp; %INCLUDE "&amp;amp;publicpath\Audit.sas";&lt;/P&gt;&lt;P&gt;&amp;nbsp; %INCLUDE "&amp;amp;publicpath\Export.sas";&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; OPTIONS MPrint NoSymbolGen NoXWait NoxSync;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; %GetSettings(0);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; %GoAuditing();&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; ODS path RESET;&lt;/P&gt;&lt;P&gt;&amp;nbsp; LibName metdata Clear;&lt;/P&gt;&lt;P&gt;&amp;nbsp; LibName appdata&amp;nbsp; Clear;&lt;/P&gt;&lt;P&gt;&amp;nbsp; LibName result Clear;&lt;/P&gt;&lt;P&gt;&amp;nbsp; LibName keydata&amp;nbsp; Clear;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;run;&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;rc=dclose(did);&lt;/P&gt;&lt;P&gt;drop rc fid did memcount i;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 08 Jan 2014 18:05:30 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183334#M303370</guid>
      <dc:creator>DavidHu</dc:creator>
      <dc:date>2014-01-08T18:05:30Z</dc:date>
    </item>
    <item>
      <title>Re: How to call a ".sas" script file in Java client?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183335#M303371</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Davy,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The code below will generate a data set containing the fully qualified (full path) file names that meets your search criteria (Created &amp;lt; 1 hour AND of Type txt). It's parameter driven, so you can use it with different condition values.&lt;/P&gt;&lt;P&gt;Once you have the list of files data set, you can read it and perform your desired processing.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this helps,&lt;/P&gt;&lt;P&gt;Ahmed&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/* Input parameters : rootpath and maximal size of members (can be increased) */&lt;/P&gt;&lt;P&gt;%GLOBAL&amp;nbsp;&amp;nbsp;&amp;nbsp; g_constantPath&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; g_currYearIn2Digit&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; g_currentSubmissionPeriod&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; g_rawDataFilePath&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; g_array_size&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; g_searchFileType&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; g_intervalForFileValidation&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%let g_constantPath&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; = c:\SAS\data\users\DDM\OCCI\OCCI_Audit;&lt;/P&gt;&lt;P&gt;%let g_currYearIn2Digit&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = %sysfunc(putn(%sysfunc(date()),year2.));&lt;/P&gt;&lt;P&gt;%let g_currentSubmissionPeriod&amp;nbsp;&amp;nbsp; = &amp;amp;g_currYearIn2Digit.%eval(&amp;amp;g_currYearIn2Digit+1);&lt;/P&gt;&lt;P&gt;%let g_rawDataFilePath&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = &amp;amp;g_constantPath.&amp;amp;g_currentSubmissionPeriod.\Data\Rawdata;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%LET g_array_size&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;&amp;nbsp;&amp;nbsp; = 9999; /* maximal size of members (can be increased) */&lt;/P&gt;&lt;P&gt;%LET g_searchFileType&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = txt;&amp;nbsp; /* Type of file to search for */&lt;/P&gt;&lt;P&gt;%LET g_intervalForFileValidation = 1;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* in hours */&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/* ----------------------------------------------------- */ &lt;/P&gt;&lt;P&gt;/* Naming convention : functions and routines compiled&amp;nbsp;&amp;nbsp; */&lt;/P&gt;&lt;P&gt;/* by proc FCMP are prefixed with 'x' to single them out */&lt;/P&gt;&lt;P&gt;/* ----------------------------------------------------- */ &lt;/P&gt;&lt;P&gt;PROC FCMP OUTLIB=work.funcs.dir;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* -------------------------------------- */ &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* New ancillary function : open an entry */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* -------------------------------------- */ &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; FUNCTION xdiropen(dir $);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LENGTH dir $ 256 fref $ 8; *maximal size for filepath is set tup to 256, can be increased;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* a fileref is assigned to the incoming path */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rc = FILENAME(fref, dir);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* path can be accessed ...*/&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IF rc = 0 THEN&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DO;&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; /* .. then create a pointer with DOPEN */&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; did = DOPEN(fref);&lt;/P&gt;&lt;P&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; /* and free up fileref */&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; rc = FILENAME(fref);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; END;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /*... else catch exception for inaccessibility */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ELSE&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DO;&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; msg = SYSMSG();&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; PUT msg '(XDIROPEN(' dir= ')';&lt;/P&gt;&lt;P&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; /* return code gets a missing value */&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; DID = .;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; END;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; RETURN(did);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ENDSUB;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* ------------------------------------- */ &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Routine XDIRCLOSE : closing the entry */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* ------------------------------------- */ &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SUBROUTINE xdirclose(did);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OUTARGS did;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rc = DCLOSE(did);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; did = .;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ENDSUB;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* --------------------------------------------- */ &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Main Routine XDIR_ENTRIES : recursive listing */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* input : rootpath (char string)&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;&amp;nbsp;&amp;nbsp; */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* output : members found below (array character)*/&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* + number of members found + binary Flag&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* --------------------------------------------- */ &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SUBROUTINE xdir_entries(dir $, files&lt;LI&gt; $, n, trunc);&lt;/LI&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OUTARGS files, n, trunc;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LENGTH dir entry $ 256 infoname $60 infoval $256;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* if flag ("trunc") equals 1 then stop - used for array resizing (might be unnecessary with 9.3+) */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IF trunc THEN&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; RETURN;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Entry opened */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; did = XDIROPEN(dir);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* if issue accessing the foldern then exit with error */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IF did &amp;lt;= 0 THEN&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; RETURN;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Browsing through every entry found */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dnum = DNUM(did);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DO i = 1 TO dnum;&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; /* Test : is this entry a mere file ? */&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; entry = DREAD(did, i);&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; fid = MOPEN(did, entry);&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; entry = TRIM(dir) || '\' || entry;&lt;/P&gt;&lt;P&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; /* A - Yes, entry is a file */&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; IF fid &amp;gt; 0 THEN&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;&amp;nbsp;&amp;nbsp; DO;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Extract File's Create Time Information */&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; infoval=finfo(fid,'Create Time');&lt;/P&gt;&lt;P&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Calculate the age of the file in hours */&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; timePassed=intck('HOUR',input(infoval,datetime18.),datetime());&lt;/P&gt;&lt;P&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; put 'entry=' entry 'Create Time=' infoval 'timePassed in hours=' timePassed;&lt;/P&gt;&lt;P&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rc = FCLOSE(fid);&lt;/P&gt;&lt;P&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* if array dimension is sufficient then we store the pathname */&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IF n &amp;lt; DIM(files) THEN&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DO;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; trunc = 0;&lt;/P&gt;&lt;P&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Only keep entries of the specified file type */&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* and has not been validated before&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IF ((index(entry,"&amp;amp;g_searchFileType") &amp;gt; 0) AND &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;&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;&amp;nbsp; (timePassed &amp;lt; &amp;amp;g_intervalForFileValidation))THEN&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DO;&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;&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;&amp;nbsp; n = n + 1;&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;&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;&amp;nbsp; files&lt;N&gt; = entry;&lt;/N&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; END;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; END;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* ... else we increment Flag */&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ELSE&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DO;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; trunc = 1;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CALL xdirclose(did);&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; RETURN;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; END;&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;&amp;nbsp;&amp;nbsp; END;&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; ELSE&amp;nbsp; /* B - Entry is not a file but a folder : iterate upon this new root folder */&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; CALL xdir_entries(entry, files, n, trunc);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; END;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CALL xdirclose(did);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; RETURN;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ENDSUB;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;QUIT;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;OPTIONS CMPLIB=work.funcs;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/* The table will store the members listed */&lt;/P&gt;&lt;P&gt;DATA File_List(KEEP=file);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* aFiles array assignment ('a' for 'array')*/&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ARRAY afiles[&amp;amp;array_size] $ 256 _TEMPORARY_;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; dnum = 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; trunc = 0;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* recursive browsing through the rootpath and store members found into "afiles" */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CALL xdir_entries("&amp;amp;g_rawDataFilePath", afiles, dnum, trunc);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; IF trunc THEN&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PUT 'ERROR: Not enough result array entries. Increase array size.';&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* once array is returned, we write an observation for each value */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; DO i = 1 TO dnum;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; file=afiles&lt;I&gt;;&lt;/I&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OUTPUT;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; END;&lt;/P&gt;&lt;P&gt;RUN;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 08 Jan 2014 21:03:05 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183335#M303371</guid>
      <dc:creator>AhmedAl_Attar</dc:creator>
      <dc:date>2014-01-08T21:03:05Z</dc:date>
    </item>
    <item>
      <title>Re: How to call a ".sas" script file in Java client?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183336#M303372</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thank you so much Ahmed!&lt;/P&gt;&lt;P&gt;I'm going to try modify my code use your code right now!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 09 Jan 2014 18:52:06 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183336#M303372</guid>
      <dc:creator>DavidHu</dc:creator>
      <dc:date>2014-01-09T18:52:06Z</dc:date>
    </item>
    <item>
      <title>Re: How to call a ".sas" script file in Java client?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183337#M303373</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I just have my SAS client setup and combined the above code with my brief business logic. It works perfectly!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you soooooo much Ahmed!!!!!!!!!!!!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Jan 2014 14:18:11 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-call-a-quot-sas-quot-script-file-in-Java-client/m-p/183337#M303373</guid>
      <dc:creator>DavidHu</dc:creator>
      <dc:date>2014-01-10T14:18:11Z</dc:date>
    </item>
  </channel>
</rss>

