How to scan a folder and report contents of files to email
Posted: Wed Jul 29, 2020 8:28 am
My project has an error that I suspect is due to a variable being used incorrectly. I am trying to get output of files recursively in c:\temp. There are subfolders in there. Just want *.pdf. I want to put a list of the files in an email. Are there templates for this? My code below gives error "[8099 - Set Variable] An unexpected error occurred. Variable 'C:\TEMP\Chicken.pdf' is not a RowSet or an Array. Original expression: CurrFile[1]."
My code:
<project name="George" mainModule="Main" version="2.0" logLevel="verbose">
<module name="Main">
<createWorkspace version="1.0" />
<createFileList fileListVariable="data" version="1.0">
<fileset dir="C:\TEMP">
<wildcardFilter>
<include pattern="*.*" />
</wildcardFilter>
</fileset>
</createFileList>
<forEachLoop itemsVariable="${data}" currentItemVariable="CurrFile" disabled="false">
<setVariable name="myFile" value="${CurrFile[1]}" version="2.0" />
<print file="test.txt" append="true" version="1.0">
<![CDATA[${myFile}
]]>
</print>
</forEachLoop>
<sendEmail resourceId="fhcp" toList="[email protected]" keyLocation="KeyVault" version="2.0">
<from address="[email protected]" keyLocation="KeyVault" />
<subject>
<![CDATA[test]]>
</subject>
<message>
<![CDATA[${data}]]>
</message>
</sendEmail>
<deleteWorkspace version="1.0" />
</module>
</project>
My code:
<project name="George" mainModule="Main" version="2.0" logLevel="verbose">
<module name="Main">
<createWorkspace version="1.0" />
<createFileList fileListVariable="data" version="1.0">
<fileset dir="C:\TEMP">
<wildcardFilter>
<include pattern="*.*" />
</wildcardFilter>
</fileset>
</createFileList>
<forEachLoop itemsVariable="${data}" currentItemVariable="CurrFile" disabled="false">
<setVariable name="myFile" value="${CurrFile[1]}" version="2.0" />
<print file="test.txt" append="true" version="1.0">
<![CDATA[${myFile}
]]>
</print>
</forEachLoop>
<sendEmail resourceId="fhcp" toList="[email protected]" keyLocation="KeyVault" version="2.0">
<from address="[email protected]" keyLocation="KeyVault" />
<subject>
<![CDATA[test]]>
</subject>
<message>
<![CDATA[${data}]]>
</message>
</sendEmail>
<deleteWorkspace version="1.0" />
</module>
</project>