Close Menu
    Facebook X (Twitter) Instagram
    Sunday, October 12
    X (Twitter) LinkedIn Reddit RSS
    All about Endpoint Management
    • Home
    All about Endpoint Management
    Home»CM2012»SCCM Configmgr 2012 SSRS Report Package compliance status for all Distribution Points

    SCCM Configmgr 2012 SSRS Report Package compliance status for all Distribution Points

    Eswar KonetiBy Eswar KonetiSeptember 16, 7:43 am2 Mins Read CM2012 1,963 Views
    Share
    Facebook Twitter LinkedIn Reddit

    Simple and useful report for troubleshooting package issues:

    Package compliance Status report to know what is the success rate of the Applications/Packages/Driver/SUP on the Distribution Points:

    select UPPER(SUBSTRING(PSD.ServerNALPath,13,CHARINDEX('.', PSd.ServerNALPath) -13)) AS [DP Name],count(*) [Targeted] ,
    count(CASE when PSD.State='0' then '*' END) AS 'Installed',
    count(CASE when PSD.State not in ('0') then '*' END) AS 'Not Installed',
    round((CAST(SUM (CASE WHEN PSD.State='0' THEN 1 ELSE 0 END) as float)/COUNT(psd.PackageID ) )*100,2) as 'Success%',
    psd.SiteCode [Reporting Site]
    From v_PackageStatusDistPointsSumm psd,SMSPackages P
    where p.PackageType!=4 
    and (p.PkgID=psd.PackageID)
    group by PSd.ServerNALPath,psd.SiteCode
    order by 5

     

    SSRS report looks like:

    Status

    To know list of failed packages on the specific Server,create report using below SQL Query and link it to column 'Not Installed' above report for ease of troubleshooting.

    SELECT psd.PackageID,p.Name,
    SUBSTRING(PSD.ServerNALPath, 13, CHARINDEX('.', PSD.ServerNALPath) -13 ) AS [Server Name] ,
    PSd.LastCopied,PSd.SiteCode [Reporting Site],PSD.SourceVersion,
    SP.SourceSize / 1000 AS [Size (MB)],
    Case P.PackageType When 0 Then 'Package' When 8 Then 'Application' When 3 Then 'Driver' When 4 Then 'Task Sequence' When 5 Then 'software Update'
    When 7 Then 'Virtual' When 257 Then 'OSImage' When 258 Then 'BootImage' When 259 Then 'OS' else ' ' END AS 'Type',
    PSd.SummaryDate,PSD.InstallStatus
    from v_PackageStatusDistPointsSumm PSD
    inner join v_Package P ON P.PackageID=psd.PackageID
    inner join SMSPackages SP ON SP.PkgID=P.PackageID
    inner join v_PackageStatusRootSummarizer PSR ON PSR.PackageID=psd.PackageID
    WHERE (PSd.State <> 0) and (SUBSTRING(PSD.ServerNALPath, 13, CHARINDEX('.', PSD.ServerNALPath) -13 ))=@server
    and p.PackageType!=4
    order by 7

     

    all packages configmgr distribution Content distribution point package stauts Failed Installed Package Compliance Status packages compliance status pakcages targetted SCCM SQL code SSRS Report Status of Distribution Points
    Share. Twitter LinkedIn Email Facebook Reddit

    Related Posts

    SCCM SQL Report – Compare Installed Apps on TWO Different Computers

    July 13, 10:35 am

    Optimize Your Intune Workflow with a Powerful Browser Extension

    March 22, 10:39 am

    Migrate Microsoft 365 Updates from SCCM/MECM to Intune for Co-Managed Devices

    February 11, 9:50 pm

    8 Comments

    1. Rikard Ronnkvist on October 8, 2013 1:18 PM

      Now the query is a bit better. Using JOIN to add info on State and PackageType

      Reply
    2. Rikard Ronnkvist on October 8, 2013 9:49 AM

      Hrm... I Guess Jörgen Nilsson's info was from CM07.

      Will look in to it and update the post.

      Thanks for the heads up.

      Reply
      • Eswar Koneti on October 8, 2013 11:27 AM

        oh yes.CM12 has content library thus changes 🙂

        Reply
    3. Bharat on October 7, 2013 10:59 PM

      Gud one

      Reply
    4. Rikard Ronnkvist on October 7, 2013 12:25 PM

      Did a little bit more work around this...

      http://www.snowland.se/2013/10/07/configmgr-package-status-reports/

      Reply
      • Eswar Koneti on October 8, 2013 8:07 AM

        yes but the values for the state value you have used are incorrect. for Ex: state 3 means it is failed.
        check the stage messages and their meanings. i just checked for failed package,it has value 3 but your report says installed.
        v_ContentDistribution state has only 0,1,2,3,4 values init.

        Reply
    5. Pingback: ConfigMgr Package Status Reports »

    6. Rikard Ronnkvist on October 7, 2013 11:10 AM

      Nice idea for a report!

      I would use a JOIN instead in the SQL... like this:

      SELECT DISTINCT
      UPPER(SUBSTRING(CDR.DPNALPath,13,CHARINDEX('.', CDR.DPNALPath) -13)) AS ServerName,
      CDR.PkgCount AS Targeted,
      CDR.NumberInstalled AS Installed,
      CDR.PkgCount-CDR.NumberInstalled AS NotInstalled,
      PSd.SiteCode AS ReportingSite,
      ROUND((100 * CDR.NumberInstalled/CDR.pkgcount), 2) AS Compliance

      FROM
      v_ContentDistributionReport_DP CDR LEFT JOIN v_PackageStatusDistPointsSumm PSd
      ON CDR.DPNALPath=PSD.ServerNALPath

      ORDER BY
      6 ASC

      Reply

    Leave a ReplyCancel reply

    This site uses Akismet to reduce spam. Learn how your comment data is processed.

    Sign Up

    Get email notifications for new posts.

    Author

    I’m Eswar Koneti ,a tech enthusiast, security advocate, and your guide to Microsoft Intune and Modern Device Management. My goal? To turn complex tech into actionable insights for a streamlined management experience. Let’s navigate this journey together!

    Support

    Awards

    Archives

    © Copyright 2009-2025 Eswar Koneti, All rights reserved.

    Type above and press Enter to search. Press Esc to cancel.

     

    Loading Comments...