Software Metering


Hello Everyone,

I am trying to automate unused license application uninstallation. I have read various blogs of how this can be done by using the information of Assets intelligence and creating a dynamic collection.

In my infra, we have deployed license application by selecting option “An administrative must approve the application for this device”. This give option to write a justification and request the application from Software Center.

My question is, if I automate the uninstall of unused application using metering, after removal will the “Request” button in Software Center re appear for user to re-request? As far as I know, until and unless we deny the request from “Application Request” tab in console, Request button will not re-appear.

Also, I know denying the request will automatically uninstall the application from users machine.

I am trying to combine 2 things here.

  1. Based on my metering, unused application with avg usage less than 5 min should get remove automatically.
  2. User should get option to re-request the application post removal.

Please suggest.

in progress 0
Srishti Sinha 4 months 4 Answers 145 views Beginner 0

Answers ( 4 )

  1. Hi,

    First configure software metering for all license software. then use below sql query to get the usage of license application list.

    Declare @ApplicationName as Varchar(8)
    Declare @RequiredDays as Integer
    Set @ApplicationName = ‘%Reader%’ — Specify Application Name
    Set @RequiredDays = 90 — Specify no of Days

    Declare Uday Sagar float
    Declare @__timezoneoffset int
    Select @__timezoneoffset = DateDiff (ss,GetUTCDate(),Getdate())
    Select Uday Sagar=DATEDIFF(day,IntervalStart,DATEADD(month,1,IntervalStart))from v_SummarizationInterval

    If IsNULL(Uday Sagar,0) > 0
    Distinct VRS.Name0 as ‘Name’,
    Os.Caption0 as ‘OperatingSystem’,
    St.SystemType00 as ‘OSType’,
    Vrs.Full_Domain_Name0 as ‘Domain’,
    Vrs.User_Name0 as ‘UserName’,
    Vrs.AD_Site_Name0 as ‘ADSite’,
    ARP.Publisher0 as ‘Publisher’,
    ARP.ARPDisplayName0 as ‘DisplayName’,
    ARP.ProductID0 as ‘ProductID’,
    ARP.InstallDate0 as ‘InstalledDate’,
    ARP.ProductVersion0 as ‘Version’,
    DATEADD(ss,@__timezoneoffset,MAX(Mus.LastUsage)) as ‘LastUsage’,
    DateDiff(D, DATEADD(ss,@__timezoneoffset,MAX(Mus.LastUsage)), GetDate()) as ‘LastUsageDays’
    from V_R_System Vrs
    LEFT JOIN Computer_System_DATA St on VRS.ResourceID = st.MachineID
    LEFT JOIN v_GS_OPERATING_SYSTEM Os on VRS.ResourceID = Os.ResourceID
    LEFT JOIN v_MonthlyUsageSummary Mus on Vrs.ResourceID=Mus.ResourceID
    LEFT JOIN v_MeteredFiles mf on Mus.FileID=mf.MeteredFileID
    where (DATEDIFF(d,LastUsage, GETDATE()) > @RequiredDays)
    and ARP.ARPDisplayName0 like @ApplicationName
    and VRS.Operating_System_Name_and0 like ‘%Workstation%’
    and Vrs.Obsolete0=0 and Vrs.Client0=1
    Group by Vrs.Name0,Os.Caption0,St.SystemType00,Vrs.Full_Domain_Name0,Vrs.User_Name0,Vrs.AD_Site_Name0,ARP.Publisher0,ARP.InstallDate0,
    having SUM(UsageCount) + SUM(TSUsageCount) > 0
    order by DateDiff(D, DATEADD(ss,@__timezoneoffset,MAX(mus.LastUsage)), GetDate())


  2. Hi,

    Create 3 collections..
    1. machine where “abc” installed
    2. machine where “abc” used in last x days (based on metering)
    3. machine where you want to run un-installation. (include 1 and exclude 2)
    now run un-installation deployment on 3. As you are not removing the users/machine from the abc software deployment collection it will be still available on their software center.

    • Hi Chiranjit,

      Thanks for your answer.
      By doing this, I will be able to successfully uninstall unused application from machine. However, user still have option to install it from Software Center. Based on my infra setting that I mentioned in my question, I would like the user to re -request the application from Software center which will go for a approval.

      So I am looking for combination of both.

Leave an answer

Sorry, you do not have a permission to answer to this question .