Hi,
I'm developing a module based on the DotNetNuke reports module. Currently I'm working with the following.DNN file:
<dotnetnuke version="3.0" type="Module">
<folders>
<folder>
<name>MyCompany Reports Module</name>
<friendlyname>MyCompany Reports</friendlyname>
<foldername>MyCompany/XSS/Reports</foldername>
<modulename>MyCompany.Modules.XSS.Reports</modulename>
<description>
This module displays a report based on the results of a SQL Query.
The display is controlled by selecting one of many Visualizers to display the data, ranging from a Grid to an
HTML Template and even more!
</description>
<version>00.01.00</version>
<businesscontrollerclass>MyCompany.Modules.XSS.Reports.ReportsController</businesscontrollerclass>
<resourcefile>resources.zip</resourcefile>
<modules>
<module>
<friendlyname>Reports</friendlyname>
<cachetime>0</cachetime>
<controls>
<control>
<src>DesktopModules/MyCompany/XSS/Reports/ViewReports.ascx</src>
<type>View</type>
<helpurl></helpurl>
</control>
<control>
<key>Settings</key>
<title>Reports Settings</title>
<src>DesktopModules/MyCompany/XSS/Reports/Settings.ascx</src>
<type>Edit</type>
<helpurl></helpurl>
</control>
<control>
<key>ManagePackages</key>
<title>Add/Remove Extensions</title>
<src>DesktopModules/MyCompany/XSS/Reports/Packages.ascx</src>
<type>Edit</type>
<helpurl></helpurl>
</control>
</controls>
</module>
</modules>
<files>
<file>
<name>ViewReports.ascx</name>
</file>
<file>
<path>.\</path>
<name>Settings.ascx</name>
</file>
<file>
<name>Packages.ascx</name>
</file>
<file>
<path>images</path>
<name>ManagePackages.gif</name>
</file>
<file>
<path>images</path>
<name>LegacyPackage.gif</name>
</file>
<file>
<path>App_LocalResources</path>
<name>ViewReports.ascx.resx</name>
</file>
<file>
<path>App_LocalResources</path>
<name>Settings.ascx.resx</name>
</file>
<file>
<path>App_LocalResources</path>
<name>Packages.ascx.resx</name>
</file>
<file>
<path>App_LocalResources</path>
<name>Installer.ascx.resx</name>
</file>
<file>
<path>js</path>
<name>dnn.reports.js</name>
</file>
<file>
<path>bin</path>
<name>MyCompany_Reports.dll</name>
</file>
<file>
<name>00.00.01.SqlDataProvider</name>
</file>
<file>
<name>00.01.00.SqlDataProvider</name>
</file>
<!-- Visualizers-->
<!-- GRID -->
<file>
<path>Visualizers/Grid</path>
<name>manifest.xml</name>
</file>
<file>
<path>Visualizers/Grid</path>
<name>Settings.ascx</name>
</file>
<file>
<path>Visualizers/Grid</path>
<name>Visualizer.ascx</name>
</file>
<file>
<path>Visualizers/Grid/App_LocalResources</path>
<name>Settings.ascx.resx</name>
</file>
<file>
<path>Visualizers/Grid/App_LocalResources</path>
<name>Visualizer.ascx.resx</name>
</file>
<!-- HTML -->
<file>
<path>Visualizers/HTML</path>
<name>manifest.xml</name>
</file>
<file>
<path>Visualizers/HTML</path>
<name>Settings.ascx</name>
</file>
<file>
<path>Visualizers/HTML</path>
<name>Visualizer.ascx</name>
</file>
<file>
<path>Visualizers/HTML/App_LocalResources</path>
<name>Settings.ascx.resx</name>
</file>
<file>
<path>Visualizers/HTML/App_LocalResources</path>
<name>Visualizer.ascx.resx</name>
</file>
<!-- XSLT -->
<file>
<path>Visualizers/XSLT</path>
<name>manifest.xml</name>
</file>
<file>
<path>Visualizers/XSLT</path>
<name>Settings.ascx</name>
</file>
<file>
<path>Visualizers/XSLT</path>
<name>Visualizer.ascx</name>
</file>
<file>
<path>Visualizers/XSLT/App_LocalResources</path>
<name>Settings.ascx.resx</name>
</file>
<file>
<path>Visualizers/XSLT/App_LocalResources</path>
<name>Visualizer.ascx.resx</name>
</file>
</files>
</folder>
</folders>
</dotnetnuke>
As can be seen, there are four different settings.ascx files. Three are to be placed in subfolders, and the first should be in the module's root folder. However, instaling the module results in the following installer output:
Resource Upload Logs
StartJob Starting Installation
StartJob Reading files
Loading MyCompany_Reports.pdb
File MyCompany_Reports.pdb read successfully
Loading MyCompany_Reports.dnn
File MyCompany_Reports.dnn read successfully
Loading MyCompany_Reports.dll
File MyCompany_Reports.dll read successfully
Loading ViewReports.ascx
File ViewReports.ascx read successfully
Loading Settings.ascx
File Settings.ascx read successfully
Loading Packages.ascx
File Packages.ascx read successfully
Loading dnn.reports.js
File dnn.reports.js read successfully
Loading Images/LegacyPackage.gif
File Images\LegacyPackage.gif read successfully
Loading Images/ManagePackages.gif
File Images\ManagePackages.gif read successfully
Loading Dataproviders/00.00.01.SqlDataProvider
File Dataproviders\00.00.01.SqlDataProvider read successfully
Loading Dataproviders/00.01.00.SqlDataProvider
File Dataproviders\00.01.00.SqlDataProvider read successfully
Loading Dataproviders/Uninstall.SqlDataProvider
File Dataproviders\Uninstall.SqlDataProvider read successfully
Loading App_LocalResources/Installer.ascx.resx
File App_LocalResources\Installer.ascx.resx read successfully
Loading App_LocalResources/Settings.ascx.resx
File App_LocalResources\Settings.ascx.resx read successfully
Loading App_LocalResources/ViewReports.ascx.resx
File App_LocalResources\ViewReports.ascx.resx read successfully
Loading MyCompany_Reports.xml
File MyCompany_Reports.xml read successfully
Loading resources.zip
File resources.zip read successfully
Loading Packages.ascx.resx
File Packages.ascx.resx read successfully
Loading Visualizers/GRID/App_LocalResources/Settings.ascx.resx
File Visualizers/GRID/App_LocalResources\Settings.ascx.resx read successfully
Loading Visualizers/GRID/App_LocalResources/Visualizer.ascx.resx
File Visualizers/GRID/App_LocalResources\Visualizer.ascx.resx read successfully
Loading Visualizers/GRID/Manifest.xml
File Visualizers/GRID\Manifest.xml read successfully
Loading Visualizers/GRID/Settings.ascx
File Visualizers/GRID\Settings.ascx read successfully
Loading Visualizers/GRID/Visualizer.ascx
File Visualizers/GRID\Visualizer.ascx read successfully
Loading Visualizers/HTML/App_LocalResources/Settings.ascx.resx
File Visualizers/HTML/App_LocalResources\Settings.ascx.resx read successfully
Loading Visualizers/HTML/App_LocalResources/Visualizer.ascx.resx
File Visualizers/HTML/App_LocalResources\Visualizer.ascx.resx read successfully
Loading Visualizers/HTML/Manifest.xml
File Visualizers/HTML\Manifest.xml read successfully
Loading Visualizers/HTML/Settings.ascx
File Visualizers/HTML\Settings.ascx read successfully
Loading Visualizers/HTML/Visualizer.ascx
File Visualizers/HTML\Visualizer.ascx read successfully
Loading Visualizers/XSLT/App_LocalResources/Settings.ascx.resx
File Visualizers/XSLT/App_LocalResources\Settings.ascx.resx read successfully
Loading Visualizers/XSLT/App_LocalResources/Visualizer.ascx.resx
File Visualizers/XSLT/App_LocalResources\Visualizer.ascx.resx read successfully
Loading Visualizers/XSLT/Manifest.xml
File Visualizers/XSLT\Manifest.xml read successfully
Loading Visualizers/XSLT/Settings.ascx
File Visualizers/XSLT\Settings.ascx read successfully
Loading Visualizers/XSLT/Visualizer.ascx
File Visualizers/XSLT\Visualizer.ascx read successfully
EndJob Reading files done.
StartJob Reading DNN file
DNN file is in valid 3.0 format.
xml loaded.
Loading files info
Found valid path (.\) for Settings.ascx.
Found valid path (images) for ManagePackages.gif.
Found valid path (images) for LegacyPackage.gif.
Found valid path (App_LocalResources) for ViewReports.ascx.resx.
Found valid path (App_LocalResources) for Settings.ascx.resx.
Found valid path (App_LocalResources) for Packages.ascx.resx.
Found valid path (App_LocalResources) for Installer.ascx.resx.
Found valid path (js) for dnn.reports.js.
Found valid path (bin) for MyCompany_Reports.dll.
Found valid path (Visualizers/Grid) for manifest.xml.
Found valid path (Visualizers/Grid) for Settings.ascx.
Found valid path (Visualizers/Grid) for Visualizer.ascx.
Found valid path (Visualizers/Grid/App_LocalResources) for Settings.ascx.resx.
Found valid path (Visualizers/Grid/App_LocalResources) for Visualizer.ascx.resx.
Found valid path (Visualizers/HTML) for manifest.xml.
Found valid path (Visualizers/HTML) for Settings.ascx.
Found valid path (Visualizers/HTML) for Visualizer.ascx.
Found valid path (Visualizers/HTML/App_LocalResources) for Settings.ascx.resx.
Found valid path (Visualizers/HTML/App_LocalResources) for Visualizer.ascx.resx.
Found valid path (Visualizers/XSLT) for manifest.xml.
Found valid path (Visualizers/XSLT) for Settings.ascx.
Found valid path (Visualizers/XSLT) for Visualizer.ascx.
Found valid path (Visualizers/XSLT/App_LocalResources) for Settings.ascx.resx.
Found valid path (Visualizers/XSLT/App_LocalResources) for Visualizer.ascx.resx.
Loading Modules info
Loading Control info for 'Reports' module
EndJob Dnn load finished successfully
StartJob Begin Sql execution
EndJob Finished Sql execution
StartJob Creating files
StartJob Expanding Resource file
EndJob Resource Files created
Created D:\workspace\lesmat\dnn\runtime\DesktopModules\MyCompany/XSS/Reports\ViewReports.ascx
Created D:\workspace\lesmat\dnn\runtime\DesktopModules\MyCompany/XSS/Reports\Visualizers/XSLT\Settings.ascx
Created D:\workspace\lesmat\dnn\runtime\DesktopModules\MyCompany/XSS/Reports\Packages.ascx
Created D:\workspace\lesmat\dnn\runtime\DesktopModules\MyCompany/XSS/Reports\images\ManagePackages.gif
Created D:\workspace\lesmat\dnn\runtime\DesktopModules\MyCompany/XSS/Reports\images\LegacyPackage.gif
Created D:\workspace\lesmat\dnn\runtime\DesktopModules\MyCompany/XSS/Reports\App_LocalResources\ViewReports.ascx.resx
Created D:\workspace\lesmat\dnn\runtime\DesktopModules\MyCompany/XSS/Reports\Visualizers/XSLT/App_LocalResources\Settings.ascx.resx
Created D:\workspace\lesmat\dnn\runtime\DesktopModules\MyCompany/XSS/Reports\App_LocalResources\Packages.ascx.resx
Created D:\workspace\lesmat\dnn\runtime\DesktopModules\MyCompany/XSS/Reports\App_LocalResources\Installer.ascx.resx
Created D:\workspace\lesmat\dnn\runtime\DesktopModules\MyCompany/XSS/Reports\js\dnn.reports.js
Created D:\workspace\lesmat\dnn\runtime\bin\MyCompany_Reports.dll
Created D:\workspace\lesmat\dnn\runtime\DesktopModules\MyCompany/XSS/Reports\Providers\DataProviders\SqlDataProvider\00.00.01.SqlDataProvider
Created D:\workspace\lesmat\dnn\runtime\DesktopModules\MyCompany/XSS/Reports\Providers\DataProviders\SqlDataProvider\00.01.00.SqlDataProvider
Created D:\workspace\lesmat\dnn\runtime\DesktopModules\MyCompany/XSS/Reports\Visualizers/XSLT\Manifest.xml
Created D:\workspace\lesmat\dnn\runtime\DesktopModules\MyCompany/XSS/Reports\Visualizers/XSLT\Settings.ascx
Created D:\workspace\lesmat\dnn\runtime\DesktopModules\MyCompany/XSS/Reports\Visualizers/XSLT\Visualizer.ascx
Created D:\workspace\lesmat\dnn\runtime\DesktopModules\MyCompany/XSS/Reports\Visualizers/XSLT/App_LocalResources\Settings.ascx.resx
Created D:\workspace\lesmat\dnn\runtime\DesktopModules\MyCompany/XSS/Reports\Visualizers/XSLT/App_LocalResources\Visualizer.ascx.resx
Created D:\workspace\lesmat\dnn\runtime\DesktopModules\MyCompany/XSS/Reports\Visualizers/XSLT\Manifest.xml
Created D:\workspace\lesmat\dnn\runtime\DesktopModules\MyCompany/XSS/Reports\Visualizers/XSLT\Settings.ascx
Created D:\workspace\lesmat\dnn\runtime\DesktopModules\MyCompany/XSS/Reports\Visualizers/XSLT\Visualizer.ascx
Created D:\workspace\lesmat\dnn\runtime\DesktopModules\MyCompany/XSS/Reports\Visualizers/XSLT/App_LocalResources\Settings.ascx.resx
Created D:\workspace\lesmat\dnn\runtime\DesktopModules\MyCompany/XSS/Reports\Visualizers/XSLT/App_LocalResources\Visualizer.ascx.resx
Created D:\workspace\lesmat\dnn\runtime\DesktopModules\MyCompany/XSS/Reports\Visualizers/XSLT\Manifest.xml
Created D:\workspace\lesmat\dnn\runtime\DesktopModules\MyCompany/XSS/Reports\Visualizers/XSLT\Settings.ascx
Created D:\workspace\lesmat\dnn\runtime\DesktopModules\MyCompany/XSS/Reports\Visualizers/XSLT\Visualizer.ascx
Created D:\workspace\lesmat\dnn\runtime\DesktopModules\MyCompany/XSS/Reports\Visualizers/XSLT/App_LocalResources\Settings.ascx.resx
Created D:\workspace\lesmat\dnn\runtime\DesktopModules\MyCompany/XSS/Reports\Visualizers/XSLT/App_LocalResources\Visualizer.ascx.resx
Created D:\workspace\lesmat\dnn\runtime\DesktopModules\MyCompany/XSS/Reports\MyCompany_Reports.dnn.config
EndJob Files created
StartJob Registering DesktopModule
Registering Definitions
Registering Controls
EndJob Registering finished
EndJob Installation successful.
Now notice the second line in the "Files Created" section (Second from the bottom). Here it states that Settings.ascx is placed in Visualizers\XSLT\. This is true, there is no settings.ascx in the module's root. Later, when processing the other XSLT vis files, it again copies a settings.ascx to this directory.
Can anyone tell me why the first Settings.ascx is dropped in the wrong subfolder?
Any help would be greatly appreciated.
Regards, William