Products

Solutions

Resources

Partners

Community

Blog

About

QA

Ideas Test

New Community Website

Ordinarily, you'd be at the right spot, but we've recently launched a brand new community website... For the community, by the community.

Yay... Take Me to the Community!

Welcome to the DNN Community Forums, your preferred source of online community support for all things related to DNN.
In order to participate you must be a registered DNNizen

HomeHomeGetting StartedGetting StartedInstalling DNN ...Installing DNN ...Optimizing DNN - Installing ModulesOptimizing DNN - Installing Modules
Previous
 
Next
New Post
6/5/2008 2:46 AM
 

Hi,

Will a site be faster if unused modules are not installed?

Thanks,

Charlie

 
New Post
6/5/2008 5:16 AM
 

it will compile quicker (faster page load after app recycle) and use less memory.


Cheers from Germany,
Sebastian Leupold

dnnWerk - The DotNetNuke Experts   German Spoken DotNetNuke User Group

Speed up your DNN Websites with TurboDNN
 
New Post
6/5/2008 11:18 AM
 

That is what I suspected. Is there an easy way to tell which modules are being used? (someone else built the site for me)

Thank you very much!

Charlie

 

 
New Post
6/5/2008 1:37 PM
Accepted Answer 

Crowland:

There is no easy, built-in way to find out what modules are in use (hint to the core team, hint to the core team).

However, if you are not afraid of semi-complex SQL queries, try the ones below from your Host account, or directly to the server if you have that kind of access.  I have to say that I cannot take credit for these queries, I have collected them from different places over time. 

Here they are, have fun.

-- Query to just get the count of the modules used.
select
b.FriendlyName ModuleFriendlyName
,count(d.tabid) Occurs
from modules a
join moduledefinitions b on b.moduledefid = a.moduledefid
join TabModules c on c.ModuleID = a.ModuleID
join Tabs d on d.TabID = c.TabID
join Portals e on e.PortalID = a.PortalID
group by
b.FriendlyName
order by
b.FriendlyName

-- Query to get listing of modules per tab
SELECT m.ModuleID
,t.tabname
,tm.panename
,m.ModuleTitle
,dm.modulename
,dm.friendlyname
,m.PortalID
FROM [Modules] m
join [ModuleDefinitions] md
on (m.moduledefid = md.moduledefid)
join [Desktopmodules] dm
on (md.desktopmoduleid = dm.desktopmoduleid)
join [tabmodules] tm
on (m.moduleid = tm.moduleid)
join [tabs] t
on (t.tabid = tm.tabid)
--ORDER BY t.tabid, md.moduledefid
ORDER BY m.PortalID,tm.panename, t.tabname

--Another query to find modules in use
SELECT DM.ModuleName, DM.FriendlyName,
(SELECT COUNT(*) FROM Modules WHERE ModuleDefId = MD.ModuleDefId)
AS 'TotalInstances', (SELECT COUNT(*) FROM Modules WHERE ModuleDefId = MD.ModuleDefId AND IsDeleted = 1) AS 'RecycleBinInstances' FROM DesktopModules DM
INNER JOIN ModuleDefinitions MD ON DM.DesktopModuleID = MD.DesktopModuleID GROUP BY DM.ModuleName, DM.Friendlyname, MD.ModuleDefId ORDER BY 'TotalInstances'

--This SQL statement returns the pages in all portals which my installed modules are being used on:
SELECT TOP 100 PERCENT dbo.DesktopModules.DesktopModuleID, dbo.DesktopModules.FriendlyName, dbo.ModuleDefinitions.ModuleDefID, dbo.Modules.ModuleID, dbo.Modules.ModuleTitle, dbo.Modules.AllTabs, dbo.Modules.PortalID, dbo.Tabs.ParentId, dbo.Tabs.TabID, dbo.Tabs.TabName, dbo.Tabs.Title
FROM dbo.TabModules INNER JOIN dbo.Modules
ON dbo.TabModules.ModuleID = dbo.Modules.ModuleID
INNER JOIN dbo.Tabs ON dbo.TabModules.TabID = dbo.Tabs.TabID
INNER JOIN dbo.ModuleDefinitions ON dbo.Modules.ModuleDefID = dbo.ModuleDefinitions.ModuleDefID
INNER JOIN dbo.DesktopModules ON dbo.ModuleDefinitions.DesktopModuleID = dbo.DesktopModules.DesktopModuleID
WHERE (dbo.DesktopModules.FriendlyName = 'Reports')
ORDER BY dbo.DesktopModules.DesktopModuleID, dbo.Tabs.TabName

--This SQL statement returns which installed modules are NOT being used:
SELECT TOP 100 PERCENT dbo.DesktopModules.DesktopModuleID, dbo.DesktopModules.FriendlyName, dbo.DesktopModules.Version, dbo.DesktopModules.IsPremium FROM dbo.Modules
INNER JOIN dbo.TabModules ON dbo.Modules.ModuleID = dbo.TabModules.ModuleID
INNER JOIN dbo.ModuleDefinitions ON dbo.Modules.ModuleDefID = dbo.ModuleDefinitions.ModuleDefID
RIGHT OUTER JOIN dbo.DesktopModules ON dbo.ModuleDefinitions.DesktopModuleID = dbo.DesktopModules.DesktopModuleID
WHERE (dbo.DesktopModules.IsAdmin = 0)
GROUP BY dbo.DesktopModules.DesktopModuleID, dbo.DesktopModules.FriendlyName, dbo.DesktopModules.Version, dbo.DesktopModules.IsPremium
HAVING (COUNT(dbo.TabModules.TabID) = 0)
ORDER BY dbo.DesktopModules.FriendlyName

Carlos

 

 
New Post
6/7/2008 6:32 PM
 

Thanks, Carlos. I will try them.

 
Previous
 
Next
HomeHomeGetting StartedGetting StartedInstalling DNN ...Installing DNN ...Optimizing DNN - Installing ModulesOptimizing DNN - Installing Modules


These Forums are dedicated to discussion of DNN Platform and Evoq Solutions.

For the benefit of the community and to protect the integrity of the ecosystem, please observe the following posting guidelines:

  1. No Advertising. This includes promotion of commercial and non-commercial products or services which are not directly related to DNN.
  2. No vendor trolling / poaching. If someone posts about a vendor issue, allow the vendor or other customers to respond. Any post that looks like trolling / poaching will be removed.
  3. Discussion or promotion of DNN Platform product releases under a different brand name are strictly prohibited.
  4. No Flaming or Trolling.
  5. No Profanity, Racism, or Prejudice.
  6. Site Moderators have the final word on approving / removing a thread or post or comment.
  7. English language posting only, please.
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out