<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
  version="2.0">
  <channel>
    <title>The Config Ninja Blog</title>
    <atom:link
      href="https://docs.microsoft.com/archive/blogs/smartinez/feed.xml"
      rel="self"
      type="application/rss+xml" />
    <link>https://docs.microsoft.com/archive/blogs/smartinez/feed.xml</link>
    <description>Mastering ConfigMgr and Intune everyday.</description>
    <lastBuildDate>Thu, 19 Oct 2017 14:28:52 GMT</lastBuildDate>
    <language>en-US</language>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>1</sy:updateFrequency>
    <item>
      <title>Where did my cache location go?</title>
      <link>https://docs.microsoft.com/archive/blogs/smartinez/where-did-my-cache-location-go</link>
      <pubDate>Wed, 15 Jun 2016 02:44:00 GMT</pubDate>
      <dc:creator><![CDATA[Santos Martinez]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/smartinez/?p=1175</guid>
      <description><![CDATA[&nbsp; Hello All, ConfigNinja here to write about the client cache management a few weeks ago I was...]]></description>
      <content:encoded><![CDATA[<p>&nbsp; <p>Hello All, ConfigNinja here to write about the client cache management a few weeks ago I was working onsite with a customer, and they performed an upgrade to a new version of Configuration Manager. When completed the upgrade, something happened on some of the machines in their environment: their cache size changed from 5120MB to 250MB and the default client cache location changed from c:\Windows\ccmcache to c:\ccm\cache.  <p>To solve this problem, we start thinking of methods to correct this in the environment. We look at several potential options to do this, and we come up with the following solution. The solution ensure the client cache location is the correct one, and the cache size is appropriate for the environment. One of the first things I look at before performing a solution was to check one of the broken clients using System Center Support Center; one of the free utilities we have to troubleshoot ConfigMgr Clients.  <p><a href="https://msdnshared.blob.core.windows.net/media/2016/06/image499.png"><img title="image" style="border-left-width: 0px;border-right-width: 0px;border-bottom-width: 0px;padding-top: 0px;padding-left: 0px;padding-right: 0px;border-top-width: 0px" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/2016/06/image_thumb372.png" width="1077" height="317"></a>  <p>System Center Support Center can be downloaded from the following link: <a href="https://www.microsoft.com/en-us/download/details.aspx?id=42645">https://www.microsoft.com/en-us/download/details.aspx?id=42645</a>  <p>This tool remediates clients but what happened if we have multiple clients that may need this fix.  <p><strong><font size="2">One of the questions I received was, how can I know the impact of this and how many clients have the wrong path?</font></strong>  <p>That’s a very good question right? So to solve this problem, I did the usual research on this and here is what I ended up doing to correct the issue.  <p>First, create a custom hardware inventory class to collect the client cache information.  <p><a href="https://msdnshared.blob.core.windows.net/media/2016/06/image500.png"><img title="image" style="border-left-width: 0px;border-right-width: 0px;border-bottom-width: 0px;padding-top: 0px;padding-left: 0px;padding-right: 0px;border-top-width: 0px" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/2016/06/image_thumb373.png" width="737" height="633"></a>  <p><b></b> <p><b>Hardware Inventory Class, Exhibit 1</b>  <p>As you can see in Exhibit 1, we can import a custom class into Configuration Manager Console and navigating into Administration Workspace&gt; Client Settings &gt; and right-click on the Default Client Settings.  <p>Then, find Hardware Inventory and click Set Classes, there you be on the Exhibit 1, and then select a .MOF file that contains the information about the cache location. To do this, I created the following .mof file based on a commonly used method provided by one of the Microsoft MVPs Sherry Kissinger.  <p>[ SMS_Report (TRUE),  <p>SMS_Group_Name ("Client Cache"),  <p>SMS_Class_ID ("CLIENT_CACHE"),  <p>Namespace ("\\\\\\\\.\\\\root\\\\ccm\\\\softmgmtagent") ]  <p>class CacheConfig : SMS_Class_Template  <p>{  <p>[ SMS_Report (TRUE), key ]  <p>String ConfigKey;  <p>[ SMS_Report (TRUE) ]  <p>Boolean InUse;  <p>[ SMS_Report (TRUE) ]  <p>String Location;  <p>[ SMS_Report (TRUE) ]  <p>UInt32 Size;  <p>};  <p>A copy of the MOF is available on the TechNet gallery link provided on this blog post.  <p>You need to wait until the clients send out their new hardware inventory information back to the server and then run a custom client cache report.  <p><a href="https://msdnshared.blob.core.windows.net/media/2016/06/image501.png"><img title="image" style="border-left-width: 0px;border-right-width: 0px;border-bottom-width: 0px;padding-top: 0px;padding-left: 0px;padding-right: 0px;border-top-width: 0px" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/2016/06/image_thumb374.png" width="822" height="727"></a>  <p>I created this report based on the mof file and the dataset query looks like this:  <p>select coll.collectionid, comb.Name, comb.ClientVersion, comb.LastClientCheckTime, comb.LastHardwareScan, CAC.Location0 'Cache Location', CAC.Size0 'Cache Size' from fn_rbac_GS_CLIENT_CACHE0(@UserSIDs) CAC  <p>join fn_rbac_CombinedDeviceResources (@UserSIDs) comb on cac.ResourceID = comb.MachineID  <p>LEFT OUTER JOIN fn_rbac_FullCollectionMembership(@UserSIDs) coll on cac.ResourceID = coll.ResourceID  <p>where coll.CollectionID = @CollectionID  <p>I have provided a copy of the .rdl file in the TechNet gallery link; however, you can create the report yourself with no problems. the custom report in this blog is just a template I build for testing this solution and is not 100% ready since there are no customization to the look and feel. If you create a better report let me know J.  <p>You can also create a collection from the MOF; however, you may not need it. I leave it up to you. Here is a sample of the code I build for a test collection.  <p>select * from SMS_R_System inner join SMS_G_System_CLIENT_CACHE on SMS_G_System_CLIENT_CACHE.ResourceId = SMS_R_System.ResourceId where SMS_G_System_CLIENT_CACHE.Location != "c:\\windows\\ccmcache"  <p>Now that we have a list of clients and understand the potential impact let's see what is the next question and answer.  <p><font size="2">How can we fix it?</font>  <p>The answer to that is to create a compliance baseline that will monitor and remediate those clients that are not in compliance with your client cache size and client cache location.  <p>I created two Configuration Items and one Baseline to solve this problem.  <p>Create the two Configuration Items are as follows:  <p>Check Client Cache Location and Check Client Cache Size.  <p>The Client Cache Location Configuration Item has two PowerShell scripts: one for the discovery and one for the remediation.  <p>The discovery script is:  <p>$ccmcfg = Get-WmiObject -Namespace root\ccm\SoftMgmtAgent -Class CacheConfig  <p>Write-Host $ccmcfg.Location  <p>The remediation script is:  <p>$ccmcfg = Get-WmiObject -Namespace root\ccm\SoftMgmtAgent -Class CacheConfig  <p>$ccmcfg.Location = "C:\windows\ccmcache"  <p>$ccmcfg.Put()  <p>Get-Service ccmexec | Stop-Service  <p>Start-Sleep 10  <p>Get-Service ccmexec | Start-Service  <p>Write-Host "Current cache location is " $ccmcfg.Location  <p>My compliance rule is configured like this:  <p><a href="https://msdnshared.blob.core.windows.net/media/2016/06/image502.png"><img title="image" style="border-left-width: 0px;border-right-width: 0px;border-bottom-width: 0px;padding-top: 0px;padding-left: 0px;padding-right: 0px;border-top-width: 0px" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/2016/06/image_thumb375.png" width="667" height="687"></a>  <p>I have provided a copy of the baseline on my TechNet gallery link as well.  <p>Once you created the baseline, you deploy it to the collection and wait until the results are in. It is critical to perform the deployment as remediation so those clients with the wrong path can get remediated to the correct one. Otherwise, it is set as monitoring only.  <p><a href="https://msdnshared.blob.core.windows.net/media/2016/06/image503.png"><img title="image" style="border-left-width: 0px;border-right-width: 0px;border-bottom-width: 0px;padding-top: 0px;padding-left: 0px;padding-right: 0px;border-top-width: 0px" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/2016/06/image_thumb376.png" width="680" height="683"></a>  <p>Once the clients process the policy, they are able to review the current state of the client location. If the machine is not in compliance, they are remediated.  <p>In this case, the machine is Non-Compliant, so the remediation script will remediate the machine.  <p><a href="https://msdnshared.blob.core.windows.net/media/2016/06/image504.png"><img title="image" style="border-left-width: 0px;border-right-width: 0px;border-bottom-width: 0px;padding-top: 0px;padding-left: 0px;padding-right: 0px;border-top-width: 0px" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/2016/06/image_thumb377.png" width="678" height="829"></a>  <p>Here is a machine that is compliant, the scripts remediate the machine to the correct client cache path if is found in the incorrect location.  <p><a href="https://msdnshared.blob.core.windows.net/media/2016/06/image505.png"><img title="image" style="border-left-width: 0px;border-right-width: 0px;border-bottom-width: 0px;padding-top: 0px;padding-left: 0px;padding-right: 0px;border-top-width: 0px" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/2016/06/image_thumb378.png" width="694" height="828"></a>  <p>Now one of the other problems they have was the cache size as well. So in the same configuration baseline, you have a Configuration Item to fix the space as well. At a high level, the Configuration Item validates the cache size is a specific size and remediates it to the correct size if its not set to the default size. You can use this to change the cache size for your clients as well.  <p><font size="2">Summary </font> <p>The first part of this blog post identifier the impact of a problem and the second part of the blog post is a potential solution. Always test out the solution provided in a lab environment or a small collection to ensure the configuration items are working as expected.  <p>You can download the examples from the following site:  <p><a href="https://gallery.technet.microsoft.com/Client-Cache-Compliance-95b566d0">https://gallery.technet.microsoft.com/Client-Cache-Compliance-95b566d0</a> <p>NOTE: If you still have problems to remediate your environment please open a Ticket with Microsoft Support, at the time of this blog post there is an open item to investigate the problem and identify better solutions in the future so will be very important to open a support ticket if you are unable to solve it with this small workaround. <p>Santos Martinez – SR PREMIER FIELD ENGINEER – Author and Ninja. <p><strong>Disclaimer:</strong> The information on this site is provided "AS IS" with no warranties, confers no rights, and is not supported by the authors or Microsoft Corporation. Use of any included script samples are subject to the terms specified in the <a href="http://www.microsoft.com/info/cpyright.mspx">Terms of Use</a>]]></content:encoded>
    </item>
    <item>
      <title>Talking Database II</title>
      <link>https://docs.microsoft.com/archive/blogs/smartinez/talking-database-ii</link>
      <pubDate>Tue, 24 Nov 2015 18:35:00 GMT</pubDate>
      <dc:creator><![CDATA[Santos Martinez]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/smartinez/2015/11/24/talking-database-ii/</guid>
      <description><![CDATA[Hello All, this is ConfigNinja here to Talk about Databases. Welcome to the second blog post on...]]></description>
      <content:encoded><![CDATA[<p>Hello All, this is ConfigNinja here to Talk about Databases. Welcome to the second blog post on Talking Database, since the first blog post was good and now that we have delivered the session at MMS <a href="http://www.mmsmoa.com">http://www.mmsmoa.com</a>. Thanks to all of the people that attended this event and the sessions I delivered with my peer, mentor, and friend Brett Bennett. He will be joining us for this blog post as well as a special guest, so keep reading to find out more about who is this special guest that is joining us for this great topic.  <p>Let’s start by outlining what this topic will be about, in my role at Microsoft we deliver a service call Risk Assessment Program. Currently I’m one of the WW Leads for this delivery along with other great engineers around the world, during my deliveries that currently are more than 100+ deliveries of this service I found a common problem with many of my deliveries, so this blog post is intended to assist all the readers in solve those common issues that I have found on many of my assessments. If you want to learn more about this service, please go to <a href="https://aka.ms/RAP">https://aka.ms/RAP</a> and talk to your Technical Account Manager or Microsoft Representative to schedule one on your environment.  <h3>Common Issues and Solutions based on our experience:</h3> <h4>Issue #1</h4> <h5>Configuration Manager Database Indexes are fragmented</h5> <p>The database <b>CM_MMS </b>has a fragmentation of 99.4405254196059%.<br />Detail Information<br />Database name: <b>CM_MMS</b><br />Fragmentation level: 99.4405254196059%<br />Page Count: 32673 <p>What does this mean for your database, this potentially mean that you have a series of indexes that are higher than the recommended percent. On my opinion the indexes should not be higher than 30%, so in this example the overall percentage of your database is on the 99%.  <p>How do we fix this problem? <p>The solution to this issue is to create a maintenance plan in your system that will cover your indexes and statistics. <h6>An example T-SQL Command that you can run is the following:</h6> <p>EXEC sp_MSforeachtable @command1=&quot;print &#39;?&#39; DBCC DBREINDEX (&#39;?&#39;, &#39; &#39;, 80)&quot; <p>GO <p>Do you want to read more on this topic? <p>Check out the following blog post: <p><a href="http://stevethompsonmvp.wordpress.com/2013/04/19/how-to-determine-if-the-configmgr-rebuild-indexes-site-maintenance-task-is-running">http://stevethompsonmvp.wordpress.com/2013/04/19/how-to-determine-if-the-configmgr-rebuild-indexes-site-maintenance-task-is-running</a> <p><a href="http://blogs.technet.com/b/smartinez/archive/2014/03/28/talking-database-in-configmgr.aspx">http://blogs.technet.com/b/smartinez/archive/2014/03/28/talking-database-in-configmgr.aspx</a> <h4>Issue #2</h4> <h5>Fragmented indexes were found</h5> <p>So to follow up on our Issue #1, we have to look at this too. Issue #1 and #2 goes together. For the following reason: <p>The database <b>[CM_MMS] </b>has at least 10 fragmented index(es):<br /><b>Index: </b>[dbo].[Update_ComplianceStatus].[Update_ComplianceStatus_PK]. <b>Page Count:</b> 108584. <b>AvgFragmentationInPercent:</b> 98.43 <p><b>Index:</b> [dbo].[Add_Remove_Programs_HIST].[Add_Remove_Programs_HIST_PK]. <b>Page Count:</b> 65235. <b>AvgFragmentationInPercent:</b> 93.01 <p>Now let&#39;s talk first about Page Count, in our check we look for indexes higher than 15000. The Average fragmentation on this index is very high as you can see here, what is the problem with this index. As you can see on this example, we have an index from Update Compliance Status, depending on how often you check for compliance will be the potential impact on the index. So if you do check for compliance in every 4 hours, there is a chance this index will get fragmented within a day. In the other hand we have an Add Remove Programs Index, this is part of your hardware inventory. By default, this is set to run every seven days, but we all know this setting is the one we always lower. So for example if you do Hardware Inventory every three days then this index is getting fragmented every three days as simple as that, so what do you need to do? Perform better maintenance around the processes you have for the system. <p>What is the solution here? <p>You can run the following query to identify the fragmented indexes:</p> <div id="codeSnippetWrapper" style="font-size:8pt;overflow:auto;cursor:text;border-top:silver 1px solid;height:267px;font-family:&#39;Courier New&#39;, courier, monospace;border-right:silver 1px solid;width:97.5%;border-bottom:silver 1px solid;padding-bottom:4px;direction:ltr;text-align:left;padding-top:4px;padding-left:4px;border-left:silver 1px solid;margin:20px 0px 10px;line-height:12pt;padding-right:4px;background-color:#f4f4f4;"> <div id="codeSnippet" style="border-top-style:none;font-size:8pt;overflow:visible;border-left-style:none;font-family:&#39;Courier New&#39;, courier, monospace;width:100%;border-bottom-style:none;color:black;padding-bottom:0px;direction:ltr;text-align:left;padding-top:0px;border-right-style:none;padding-left:0px;line-height:12pt;padding-right:0px;background-color:#f4f4f4;"><pre style="border-top-style:none;font-size:8pt;overflow:visible;border-left-style:none;font-family:&#39;Courier New&#39;, courier, monospace;width:100%;border-bottom-style:none;color:black;padding-bottom:0px;direction:ltr;text-align:left;padding-top:0px;border-right-style:none;padding-left:0px;margin:0em;line-height:12pt;padding-right:0px;background-color:white;"><span id="lnum1" style="color:#606060;">   1:</span> <span style="color:#0000ff;">SELECT</span> s.name <span style="color:#0000ff;">AS</span> <span style="color:#006080;">&#39;SchemaName&#39;</span>, object_name(frag.object_id) <span style="color:#0000ff;">AS</span> <span style="color:#006080;">&#39;TableName&#39;</span>, si.name <span style="color:#0000ff;">AS</span> <span style="color:#006080;">&#39;IndexName&#39;</span>, frag.alloc_unit_type_desc <span style="color:#0000ff;">AS</span> <span style="color:#006080;">&#39;AllocUnitType&#39;</span>, frag.index_type_desc <span style="color:#0000ff;">AS</span> <span style="color:#006080;">&#39;IndexType&#39;</span>, frag.page_count <span style="color:#0000ff;">AS</span> <span style="color:#006080;">&#39;PageCount&#39;</span>, frag.index_depth <span style="color:#0000ff;">AS</span> <span style="color:#006080;">&#39;IndexDepth&#39;</span>, frag.avg_fragmentation_in_percent <span style="color:#0000ff;">AS</span> <span style="color:#006080;">&#39;AvgFragmentationPercent&#39;</span>, frag.fragment_count <span style="color:#0000ff;">AS</span> <span style="color:#006080;">&#39;FragmentCount&#39;</span>,</pre><!--CRLF--><pre style="border-top-style:none;font-size:8pt;overflow:visible;border-left-style:none;font-family:&#39;Courier New&#39;, courier, monospace;width:100%;border-bottom-style:none;color:black;padding-bottom:0px;direction:ltr;text-align:left;padding-top:0px;border-right-style:none;padding-left:0px;margin:0em;line-height:12pt;padding-right:0px;background-color:#f4f4f4;"><span id="lnum2" style="color:#606060;">   2:</span> frag.avg_fragment_size_in_pages <span style="color:#0000ff;">AS</span> <span style="color:#006080;">&#39;AvgFragmentPageCount&#39;</span>, frag.object_id, frag.index_id, frag.partition_number</pre><!--CRLF--><pre style="border-top-style:none;font-size:8pt;overflow:visible;border-left-style:none;font-family:&#39;Courier New&#39;, courier, monospace;width:100%;border-bottom-style:none;color:black;padding-bottom:0px;direction:ltr;text-align:left;padding-top:0px;border-right-style:none;padding-left:0px;margin:0em;line-height:12pt;padding-right:0px;background-color:white;"><span id="lnum3" style="color:#606060;">   3:</span> <span style="color:#0000ff;">FROM</span> sys.dm_db_index_physical_stats(DB_ID(),<span style="color:#0000ff;">null</span>,<span style="color:#0000ff;">null</span>,<span style="color:#0000ff;">null</span>,<span style="color:#006080;">&#39;LIMITED&#39;</span>) frag </pre><!--CRLF--><pre style="border-top-style:none;font-size:8pt;overflow:visible;border-left-style:none;font-family:&#39;Courier New&#39;, courier, monospace;width:100%;border-bottom-style:none;color:black;padding-bottom:0px;direction:ltr;text-align:left;padding-top:0px;border-right-style:none;padding-left:0px;margin:0em;line-height:12pt;padding-right:0px;background-color:#f4f4f4;"><span id="lnum4" style="color:#606060;">   4:</span> <span style="color:#0000ff;">LEFT</span> <span style="color:#0000ff;">OUTER</span> <span style="color:#0000ff;">JOIN</span> sys.indexes si (NOLOCK) <span style="color:#0000ff;">ON</span> si.object_id = frag.object_id <span style="color:#0000ff;">AND</span> si.index_id = frag.index_id </pre><!--CRLF--><pre style="border-top-style:none;font-size:8pt;overflow:visible;border-left-style:none;font-family:&#39;Courier New&#39;, courier, monospace;width:100%;border-bottom-style:none;color:black;padding-bottom:0px;direction:ltr;text-align:left;padding-top:0px;border-right-style:none;padding-left:0px;margin:0em;line-height:12pt;padding-right:0px;background-color:white;"><span id="lnum5" style="color:#606060;">   5:</span> <span style="color:#0000ff;">JOIN</span> sys.objects o (NOLOCK) <span style="color:#0000ff;">ON</span> frag.object_id = o.object_id</pre><!--CRLF--><pre style="border-top-style:none;font-size:8pt;overflow:visible;border-left-style:none;font-family:&#39;Courier New&#39;, courier, monospace;width:100%;border-bottom-style:none;color:black;padding-bottom:0px;direction:ltr;text-align:left;padding-top:0px;border-right-style:none;padding-left:0px;margin:0em;line-height:12pt;padding-right:0px;background-color:#f4f4f4;"><span id="lnum6" style="color:#606060;">   6:</span> <span style="color:#0000ff;">JOIN</span> sys.schemas <span style="color:#0000ff;">AS</span> s (NOLOCK) <span style="color:#0000ff;">ON</span> s.schema_id = o.schema_id</pre><!--CRLF--><pre style="border-top-style:none;font-size:8pt;overflow:visible;border-left-style:none;font-family:&#39;Courier New&#39;, courier, monospace;width:100%;border-bottom-style:none;color:black;padding-bottom:0px;direction:ltr;text-align:left;padding-top:0px;border-right-style:none;padding-left:0px;margin:0em;line-height:12pt;padding-right:0px;background-color:white;"><span id="lnum7" style="color:#606060;">   7:</span> <span style="color:#0000ff;">WHERE</span> o.is_ms_shipped = 0</pre><!--CRLF--><pre style="border-top-style:none;font-size:8pt;overflow:visible;border-left-style:none;font-family:&#39;Courier New&#39;, courier, monospace;width:100%;border-bottom-style:none;color:black;padding-bottom:0px;direction:ltr;text-align:left;padding-top:0px;border-right-style:none;padding-left:0px;margin:0em;line-height:12pt;padding-right:0px;background-color:#f4f4f4;"><span id="lnum8" style="color:#606060;">   8:</span> <span style="color:#0000ff;">AND</span> o.object_id <span style="color:#0000ff;">not</span> <span style="color:#0000ff;">in</span> (<span style="color:#0000ff;">SELECT</span> major_id <span style="color:#0000ff;">FROM</span> sys.extended_properties (NOLOCK) <span style="color:#0000ff;">WHERE</span> name = N<span style="color:#006080;">&#39;microsoft_database_tools_support&#39;</span>)</pre><!--CRLF--><pre style="border-top-style:none;font-size:8pt;overflow:visible;border-left-style:none;font-family:&#39;Courier New&#39;, courier, monospace;width:100%;border-bottom-style:none;color:black;padding-bottom:0px;direction:ltr;text-align:left;padding-top:0px;border-right-style:none;padding-left:0px;margin:0em;line-height:12pt;padding-right:0px;background-color:white;"><span id="lnum9" style="color:#606060;">   9:</span> <span style="color:#0000ff;">AND</span> frag.index_id &lt;&gt; 0</pre><!--CRLF--><pre style="border-top-style:none;font-size:8pt;overflow:visible;border-left-style:none;font-family:&#39;Courier New&#39;, courier, monospace;width:100%;border-bottom-style:none;color:black;padding-bottom:0px;direction:ltr;text-align:left;padding-top:0px;border-right-style:none;padding-left:0px;margin:0em;line-height:12pt;padding-right:0px;background-color:#f4f4f4;"><span id="lnum10" style="color:#606060;">  10:</span> <span style="color:#0000ff;">AND</span> page_count &gt; 5000</pre><!--CRLF--><pre style="border-top-style:none;font-size:8pt;overflow:visible;border-left-style:none;font-family:&#39;Courier New&#39;, courier, monospace;width:100%;border-bottom-style:none;color:black;padding-bottom:0px;direction:ltr;text-align:left;padding-top:0px;border-right-style:none;padding-left:0px;margin:0em;line-height:12pt;padding-right:0px;background-color:white;"><span id="lnum11" style="color:#606060;">  11:</span> <span style="color:#0000ff;">AND</span> avg_fragmentation_in_percent &gt; 10</pre><!--CRLF--><pre style="border-top-style:none;font-size:8pt;overflow:visible;border-left-style:none;font-family:&#39;Courier New&#39;, courier, monospace;width:100%;border-bottom-style:none;color:black;padding-bottom:0px;direction:ltr;text-align:left;padding-top:0px;border-right-style:none;padding-left:0px;margin:0em;line-height:12pt;padding-right:0px;background-color:#f4f4f4;"><span id="lnum12" style="color:#606060;">  12:</span> <span style="color:#0000ff;">ORDER</span> <span style="color:#0000ff;">BY</span> frag.page_count <span style="color:#0000ff;">DESC</span></pre><!--CRLF--></div></div>
<p>How to prevent this 2 issues, the following will be outlined here as Solution #1.
<h4>Solution #1</h4>
<p>This solution can assist you with Issue 1 and 2, so it will be outlined here as potential options.
<p>Option #1: First you can enable the ConfigMgr Rebuild Indexes at least once a week, the recommendation here is to avoid any overlap in maintenance from the other ones.
<p>So in this example, I will be setting up this task to run on Saturdays around 1:00 AM Start Time and can&#39;t go over 3:00 AM.
<h6>Example of Rebuild Indexes Maintenance</h6>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_0FF896DB.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_0FF896DB.png"><img title="image" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_thumb_11C8ECA2.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_thumb_5F00_11C8ECA2.png" width="501" height="516" /></a></p>
<p>Rebuild Indexes Example from a Site Server.
<p>Option #2, in this example I will outline what I recommend doing in SQL Server, this is a maintenance task. If you want to learn more about this steps, make sure to take a look at our old blog post as was recommended in the Issue #1.
<p>From that blog post, our recommended SQL maintenance plan should include the following.
<ul>
<li>Reorganize Index 
</li><li>Rebuild Index 
</li><li>Update Statistics 
</li><li>Clean Up History </li></ul>
<h5>So why Reorganize and Rebuild Index?</h5>
<p>“The SQL Server Database Engine automatically maintains indexes whenever to insert, update, or delete operations are made to the underlying data. Over time, these modifications can cause the information in the index to become scattered in the database (fragmented). Fragmentation exists when indexes have pages in which the logical ordering, based on the key value, does not match the physical ordering inside the data file. Heavily fragmented indexes can degrade query performance and cause your application to respond slowly.”
<p>Reorganize and Rebuild Indexes - MSDN - Microsoft. (n.d.). Retrieved from <a href="https://msdn.microsoft.com/en-us/library/ms189858.aspx">https://msdn.microsoft.com/en-us/library/ms189858.aspx</a>
<h5>Why had Update Statistics?</h5>
<p>“Statistics for query optimization are objects that contain statistical information about the distribution of values in one or more columns of a table or indexed view. The query optimizer uses these statistics to estimate the <i>cardinality</i>, or a number of rows, in the query result. These <i>cardinality estimates</i> enable the query optimizer to create a high-quality query plan. For example, the query optimizer could use cardinality estimates to choose the index to seek operator instead of the more resource-intensive index scan operator, and in doing so improve query performance.”
<p>Statistics. (n.d.). Retrieved from <a href="https://msdn.microsoft.com/en-us/library/ms190397.aspx">https://msdn.microsoft.com/en-us/library/ms190397.aspx</a>
<p>There are other solutions out there to monitor and help with your indexing problem, this solution I outlined here is a basic solution, but it will do the work. 
<h5>Avoid Overlap:</h5>
<p>In the first Option we enable the Rebuild Index Task once a week on Saturdays from 1 AM to 3 AM, the SQL Maintenance Plan should not be run on the same day. This mean you can run the maintenance plan ever another day except Saturdays. 
<h4>Issue #3</h4>
<h5>Database Auto Growth</h5>
<p>The database Auto Growth is the setting everyone forgets about is critical to change the initial configuration of the databases once they are created. Let’s see the following example:
<p><b>Database Name:</b> CM_MMS<br /><b>Logical File Name:</b> CM_MMS_log<br /><b>Next Growth Type: %</b><br /><b>Next Growth Size in MB: </b>10073.45
<p>In the below example, we can see that the subsequent growth of the database log file type is set to % and the Next Growth will be around 11 GB. We have two recommendations here; the first one is to ensure the Growth Type is set to MB instead of %, this will ensure you can specify the growth amount instead of the system making the calculation. The other recommendation here is around the size of this log file, we recommend a simple recovery model for ConfigMgr database so the log file does not need to growth that much since we only recover from last transaction and not to a point in time as you can do in the Full Recovery Model.
<h6>Example of Auto Growth:</h6>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_61356EE9.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_61356EE9.png"><img title="image" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_thumb_50BCFDEE.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_thumb_5F00_50BCFDEE.png" width="663" height="108" /></a></p>
<p>Auto growth configuration for Data File and Log File.</p>
<h4>Issue #4</h4>
<h5>SQL Server instance has only one tempdb data file while there is more than one scheduler in use.</h5>
<p>This is a very important configuration; we will explain more details about this issue now so we can understand how important is it.
<h5>Why should we care?</h5>
<p>“When the tempdb database is heavily used, SQL Server may experience contention when it tries to allocate pages. Depending on the degree of contention, this may cause queries and requests that involve tempdb to be unresponsive for short periods of time.”
<p>Contention Cause. (n.d.). Retrieved from <a href="https://support.microsoft.com/en-us/kb/2154845">https://support.microsoft.com/en-us/kb/2154845</a>
<p>Here is an example of an SQL Server Configuration and How many Scheduler they have.
<p><b>Scheduler</b><b> Count:</b> 8<br /><b>Tempdb Data files count:</b> 1
<p>What do this mean is that if you have 8 logical processors you will add up to 8 tempdbs, you will start adding tempdb files until the contention if addressed. So my recommendation is to add 7 more tempdb files with the same initial size and the same auto growth to increase the performance of your SQL Server. In this case the tempdb of ConfigMgr is heavily used, so we are recommending implementing this changes to your system based on the logical processors you have. So if you have 4 logical processors just add 3 tempdb files, not 8, and if you have more than 8 logical processors don’t add more as there will be no real value after that.
<p>In the same line of logical processors, there is a configuration that we can also configure and is the max degree of parallelism, here is a little bit more info about what this is and what to do.
<p>“When SQL Server runs on a computer with more than one microprocessor or CPU, it detects the best degree of parallelism, that is, the number of processors employed to run a single statement, for each parallel plan execution. You can use the max degree of parallelism option to limit the number of processors to use in parallel plan execution. To enable the server to determine the maximum degree of parallelism, set this option to 0, the default value. Setting maximum degree of parallelism to 0 allows SQL Server to use all the available processors up to 64 processors. To suppress parallel plan generation, set max degree of parallelism to 1. Set the value to a number greater than 1 to restrict the maximum number of processors used by a single query execution. The maximum value for thedegree of parallelism setting is controlled by the edition of SQL Server, CPU type, and operating system. If a value greater than the number of available processors is specified, the actual number of available processors is used. If the computer has only one processor, the max degree of parallelism value is ignored.”
<p>max degree of parallelism Option. (n.d.). Retrieved from <a href="https://technet.microsoft.com/en-us/library/ms181007(v=sql.105).aspx">https://technet.microsoft.com/en-us/library/ms181007(v=sql.105).aspx</a>
<h6>Example of TempDB Files for each scheduler:</h6>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_197676B3.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_197676B3.png"><img title="image" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_thumb_6B8BB4AB.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_thumb_5F00_6B8BB4AB.png" width="669" height="295" /></a></p>
<p>In this example the Virtual Machine have 4 Virtual Processors, so I added 3 additional tempdb files. Each of the files have the same Initial Size of 2048 and the same auto growth of 1024. <b>(recommend sizing templog the same size as the temp data files, use the same autogrowth)</b>
<p><b>NOTE: For SQL Server instances running Configuration Manager databases, start with 4 tempdb data files and increase to a maximum number of 8 (if needed).</b>
<h4>Issue #5</h4>
<h5>SQL Server service is running under the Local System account</h5>
<p>This is maybe one of the oldest best practice in SQL Server, especially on security of the database.
<p>Let&#39;s take a look at the following example:
<p><b>Server Name(s):</b> NAC-CM01.ninja.ms<br /><b>Service Account(s):</b> LocalSystem
<p>Recommendation:
<p>“When choosing service accounts, consider the principle of least privilege. The service account should have exactly the privileges that it needs to do its job and no more privileges. You also need to consider account isolation; the service accounts should not only be different from one another, they should not be used by any other service on the same server. Do not grant additional permissions to the SQL Server service account or the service groups. Permissions will be granted through group membership or granted directly to a service SID, where a service SID is supported.”
<p>Configure Windows Service Accounts and Permissions (n.d.). Retrieved from <a href="https://msdn.microsoft.com/en-us/library/ms143504.aspx#Use_startup_accounts">https://msdn.microsoft.com/en-us/library/ms143504.aspx#Use_startup_accounts</a>
<p>Also, Review the following documentation. Technical Reference for the Prerequisite Checker in ... (n.d.). Retrieved from <a href="https://technet.microsoft.com/en-us/library/hh368980.aspx">https://technet.microsoft.com/en-us/library/hh368980.aspx</a>
<h6>Example of a Service Account for SQL Service:</h6>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_6086D5B6.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_6086D5B6.png"><img title="image" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_thumb_5FB1007D.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_thumb_5F00_5FB1007D.png" width="371" height="434" /></a></p>
<p>In this example, I only defined the service account for the SQL Server Engine.
<h4>Issue #6</h4>
<h5>The Windows 2008/R2 and later OS power saving setting may affect the CPU performance.</h5>
<p>This configuration is one that can be missed many times, so hope with this explanation we can get the issue corrected in most of the SQL Servers that host ConfigMgr Database.
<h5>Why should we care?</h5>
<p>In Windows Server 2008 and later OS, the default power saving setting is set to Balanced, which means that components such as CPU and storage will be scaled back if the system is not busy. “In Slow Performance on Windows Server 2008 R2 when using the “Balanced” Power Plan some cases this may result in performance degradation for SQL Server.”
<h5>How to fix this?</h5>
<p>You can manually change this value on the server to High Performance. However, if you have many servers to check, I suggest a look at the following script Setting the Power Plan with PowerShell – Wintellect DevCenter. (n.d.). Retrieved from <a href="http://www.wintellect.com/devcenter/jrobbins/setting-the-power-plan-with-powersh">http://www.wintellect.com/devcenter/jrobbins/setting-the-power-plan-with-powersh</a>
<h6>Example of Power Options:</h6>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_0F6EA8FD.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_0F6EA8FD.png"><img title="image" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_thumb_387947F9.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_thumb_5F00_387947F9.png" width="599" height="249" /></a></p>
<p>In this example the power options for the server is set to High Performance, and is how your power options should look like.
<h4>Issue #7</h4>
<h5>TempDB initial database Size may be too small</h5>
<p>In the same line as Auto Growth and Schedulers, the initial size of the tempdb should not be a small size. By default the size of the tempdb will be around 1024 MB, and our recommendation will be that the size of your tempdb is more than that, many times I try to configure the size of all my tempdb very close to the maximum size of my drive to avoid any additional growth. 
<p>Why should we care?
<p>“The size and physical placement of the <a href="https://technet.microsoft.com/en-us/library/ms190768(v=sql.105).aspx">tempdb</a> database can affect the performance of a system. For example, if the size that is defined for tempdb is too small, part of the system-processing load may be taken up with autogrowing tempdb to the size required to support the workload every time you restart the instance of SQL Server. You can avoid this overhead by increasing the sizes of the tempdb data and log file.”
<p>Optimizing tempdb Performance. (n.d.). Retrieved from <a href="https://technet.microsoft.com/en-us/library/ms175527(v=sql.105).aspx">https://technet.microsoft.com/en-us/library/ms175527(v=sql.105).aspx</a>
<p>Managing TempDB in SQL Server:TempDB Basics (cont..) - SQL ... (n.d.). Retrieved from <a href="http://blogs.msdn.com/b/sqlserverstorageengine/archive/2008/12/22/tempdb-basics-cont.aspx">http://blogs.msdn.com/b/sqlserverstorageengine/archive/2008/12/22/tempdb-basics-cont.aspx</a>
<h6>Example of TempDB Size</h6>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_451BBCBC.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_451BBCBC.png"><img title="image" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_thumb_1011BE3D.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_thumb_5F00_1011BE3D.png" width="442" height="183" /></a></p>
<p>&nbsp;</p>


<h4>Issue #8 </h4>
<h5>A Process Working Set Size Is Large</h5>
<p>The working set of a program is a collection of those pages in its virtual address space that have been recently referenced. It includes both shared and private data. The shared data includes pages that contain all instructions your application executes, including those in your DLLs and the system DLLs. As the working set size increases, memory demand increases.
<p>If there are other processes running on a Server with large working set sizes, this can reduce the availability of RAM for the rest of the machine, increase paging on the system and effectively decrease overall performance.
<p>Example:
<p><b>Process:</b> sqlservr.exe <b>Handle Count:</b> 1942 <b>Virtual Size (bytes):</b> 42283147264 
<p><b>Process:</b> w3wp.exe <b>Handle Count:</b> 1517 <b>Virtual Size (bytes):</b> 6367088640 
<p>On the following examples, we can see that SQL Server is using around 4GB of Memory and IIS is using around 6GB of Memory. If this server only has 16GB of RAM, this means that 10Gbs are being used by just this two process and only 6gbs are left for the other process tha the system may need. This creates a huge performance problem in the server since now it won&#39;t be able to handle the additional process in the site server. 
<p>Example of a Process Working Set
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_16B290CA.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_16B290CA.png"><img title="image" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_thumb_7867D9D3.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_thumb_5F00_7867D9D3.png" width="688" height="76" /></a>
<p>In this example, my top memory consumptions are SQL Server, Reporting Services and w3wp (IIS). However, you can see that they are not using all the memory of the server at this moment, since this is just for reference review your current working set and see how much memory your server has.
<h4>Issue #9</h4>
<h5>The SQL Server configuration setting, min server memory.</h5>
<p>Since the beginning of System Center 2012 Configuration Manager one of the main recommendations that was introduced as part of the Pre Requirements Checker, is to validate if you have the correct minimum memory configured on SQL and the Maximum Memory.
<p>Recommendation:
<table cellspacing="3" cellpadding="0" border="0">
<tbody>
<tr>
<td>
<p>SQL Server memory </p></td>
<td>
<p>When you use a database server that is co-located with the site server, limit the memory for SQL Server to 50 to 80 percent of the available addressable system memory.
<p>When you use a dedicated SQL Server, limit the memory for SQL Server to 80 to 90 percent of the available addressable system memory.
<p>Configuration Manager requires SQL Server to reserve a minimum of 8 gigabytes (GB) of memory in the buffer pool used by an instance of SQL Server for the central administration site and primary site and a minimum of 4 gigabytes (GB) for the secondary site. This memory is reserved by using the Minimum server memory setting under Server Memory Options and is configured by using SQL Server Management Studio. For more information about how to set a fixed amount of memory, see <a href="http://go.microsoft.com/fwlink/p/?LinkId=233759">How to: Set a Fixed Amount of Memory (SQL Server Management Studio)</a></p></p></p></td></tr></tbody></table>
<h6>Example of SQL Memory Configuration:</h6>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_040027C4.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_040027C4.png"><img title="image" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_thumb_2108D68C.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_thumb_5F00_2108D68C.png" width="543" height="489" /></a></p>
<p>In this example, the Minimum Configuration for this server is 8GB, and the Maximum is 10GB, this should be a good configuration for a primary site with 16GB Minimum.
<h4>Issue #10</h4>
<h5>Do you have a Maintenance Plan in your SQL?</h5>
<p>Based on my overall experience I have there is one common issue with many of the SQL Servers for ConfigMgr, and that problem is the lack of maintenance.
<h5>Why should we care?</h5>
<p>Maintenance is one of the standard practice, we need a good maintenance over our SQL Server to ensure is performing at optimal conditions. 
<h5>Solution:</h5>
<p>Review the solution #1 on this blog post, review each of the 9 issues outlined in here and validate you do not have any of them. If you still not sure if this is a problem on your environment get with you Technical Account Manager or Microsoft Partner to ask the questions on how to get a healthy environment. 
<p>Example of Maintenance Plans on Primary Site:
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_3B58E5F5.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_3B58E5F5.png"><img title="image" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_thumb_04125EBA.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_thumb_5F00_04125EBA.png" width="242" height="98" /></a>
<p>There are 3 Maintenance Plans on this Site, one is for the indexes, one if for the backups and one is an on-demand job to perform additional maintenance task around the databases.
<p><b>Note: as an alternative to these tasks, Steve Thompson Recommend the Ola Hallengren’s task as well. For more information, <a href="https://stevethompsonmvp.wordpress.com/2013/05/07/optimizing-configmgr-databases/">https://stevethompsonmvp.wordpress.com/2013/05/07/optimizing-configmgr-databases/</a> </b>
<p>Special Thanks to Steve Thompson MVP –Configuration Manager for his contribution to this post.
<p>Santos Martinez – SR PREMIER FIELD ENGINEER – Author 
<p>Brett Bennett – SR PREMIER FIELD ENGINEER – Contributor 
<p><strong>Disclaimer:</strong> The information on this site is provided &quot;AS IS&quot; with no warranties, confers no rights, and is not supported by the authors or Microsoft Corporation. Use of any included script samples are subject to the terms specified in the <a href="http://www.microsoft.com/info/cpyright.mspx">Terms of Use</a></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p>]]></content:encoded>
    </item>
    <item>
      <title>Collection Evaluation - One tool, One Report</title>
      <link>https://docs.microsoft.com/archive/blogs/smartinez/collection-evaluation-one-tool-one-report</link>
      <pubDate>Fri, 31 Jul 2015 00:00:00 GMT</pubDate>
      <dc:creator><![CDATA[Santos Martinez]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/smartinez/2015/07/31/collection-evaluation-one-tool-one-report/</guid>
      <description><![CDATA[Hello, ConfigNinja here writing you about Collection Evaluation and information on how to review the...]]></description>
      <content:encoded><![CDATA[<p>Hello, ConfigNinja here writing you about Collection Evaluation and information on how to review the current collection performance.  <p>Collection performance is often one of those questions I get when working with some of my customers, and recently I got a question about the collection evaluation and the changes made to the collection. I decided to show you guys a few tips and tricks on how to get information about collection evaluation and different ways to understand what is going on with your collections. <p>The first method I use is a very simple method, this is using the System Center 2012 R2 Toolkit, Collection Evaluation Viewer(CEViewer). <p>You can get this tool from the following link: <p><a href="http://www.microsoft.com/en-us/download/details.aspx?id=36213">http://www.microsoft.com/en-us/download/details.aspx?id=36213</a> <hr align="left" /> <a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_00E22033.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_00E22033.png"><img title="image" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_thumb_670DEA03.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_thumb_5F00_670DEA03.png" width="630" height="404" /></a> <p>Once you have downloaded this tool and installed on your desktop, connect to the <a></a><a>Primary Site Server Name</a>. <p>There are going to be several sections <a>on</a> the collection evaluation viewer<a>, t</a>he one we are going to use today is the Full Evaluation, which show us the different refresh rates and the member changes performed on your collections. <hr align="left" /> <a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_04EEFEB6.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_04EEFEB6.png"><img title="image" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_thumb_3F69FE8A.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_thumb_5F00_3F69FE8A.png" width="638" height="411" /></a> <p><a>First will display us the collection name, then it collection ID</a> . This is a critical information so we can do some more <a>reviews </a>of the collection we are looking to evaluate and identify what is going on with this collection in specific.  <p><a>Second</a> is the Runtime<a>, t</a>his will give us the details on how long it took for this collection to evaluate. In our example, this collection took 4.1 seconds to evaluate a 17% more than the other collections.  <p>The third information I look for <a>this</a> tool is the Last Evaluation and the Next Evaluation time, this will let me know how often this collection is being evaluated on the system. <p>The last information I look at the tool is the Member Changes and the Last Member change <a>time</a>, this is a very good information because it <a>can let me know those</a> collections changes in the environment. <p>The tool provides a good level of information about the collections, the challenge I face is to extract this data and <a>saved somewhere</a>. This data will <a>override</a> once the collections get evaluated again, so I have very limited time to save the data to another place so I can keep track of the performance of my collections.  <p>To solve this problem, I have decided to write a report that will give me the same information and allow me to export it into another version so I can keep track of the performance periodically. You <a>have the</a> Start Auto Refresh to get the live version of this information, but since I’m a little old school I like to get this data and share with some of my other peers for them to review it and also provide feedback on it. <p>Here is the sample of the report I <a>Created t</a>hat will provide the almost the same view of Full Evaluation in CE Viewer. <hr align="left" /> <a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_3F6C8F3B.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_3F6C8F3B.png"><img title="image" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_thumb_1CAB577E.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_thumb_5F00_1CAB577E.png" width="618" height="483" /></a> <p>As you can see on the report I have a very similar view to the CE Viewer. Now I can export this report and share it with some of my peers. I also created a second report to know about those machines that were added to the collection. I click on the Member Changes field and this will open the second report that will give me a list of those machines. <hr align="left" /> <a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_72CAE348.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_72CAE348.png"><img title="image" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_thumb_51DA0152.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_thumb_5F00_51DA0152.png" width="658" height="496" /></a> <p><a name="_msocom_1"></a> <p>Now this <a>solve</a>s some of my current need to get a report about the current collection <a>performance</a>, using the Collection Evaluation Viewer and the report. <hr align="left" />      <p>If you can benefit from this report I have made it available on the following gallery: <a title="https://gallery.technet.microsoft.com/Collection-Evaluation-3a30f912" href="https://gallery.technet.microsoft.com/Collection-Evaluation-3a30f912">https://gallery.technet.microsoft.com/Collection-Evaluation-3a30f912</a></p> <p>Santos Martinez – SR PREMIER FIELD ENGINEER – Author <p>Steven Hernandez – PREMIER FIELD ENGINEER – Contributor <p><strong>Disclaimer:</strong> The information on this site is provided &quot;AS IS&quot; with no warranties, confers no rights, and is not supported by the authors or Microsoft Corporation. Use of any included script samples are subject to the terms specified in the <a href="http://www.microsoft.com/info/cpyright.mspx">Terms of Use</a></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p>]]></content:encoded>
    </item>
    <item>
      <title>You implemented a SQL Cluster for SysCtr 2012 R2 ConfigMgr and you forgot what?</title>
      <link>https://docs.microsoft.com/archive/blogs/smartinez/you-implemented-a-sql-cluster-for-sysctr-2012-r2-configmgr-and-you-forgot-what</link>
      <pubDate>Wed, 11 Jun 2014 12:28:00 GMT</pubDate>
      <dc:creator><![CDATA[Santos Martinez]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/smartinez/2014/06/11/you-implemented-a-sql-cluster-for-sysctr-2012-r2-configmgr-and-you-forgot-what/</guid>
      <description><![CDATA[You implemented a SQL Cluster for SysCtr 2012 R2 ConfigMgr and you forgot what? I was configuring a...]]></description>
      <content:encoded><![CDATA[<h2>You implemented a SQL Cluster for SysCtr 2012 R2 ConfigMgr and you forgot what?</h2> <p><font size="3">I was configuring a SQL Cluster this past week and I always try to configure it the best way I can. The cluster was an all-in-one cluster type for multiple System Center Products. One of the key things I always remember to do is to configure each drive the cluster uses. When we are Configuring ConfigMgr and we specify where we are going to store the data there is an important component that often gets missed. This component is the Backup Service and Monitoring for ConfigMgr. </font> <h3>The Problem</h3> <p>The component thread is <b>SMS_SITE_SQL_BACKUP_SERVERNAME.</b><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image002_0CA65EF4.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image002_5F00_0CA65EF4.png"><img title="clip_image002" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="clip_image002" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image002_thumb_27DEB7F5.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image002_5F00_thumb_5F00_27DEB7F5.png" width="564" height="34" /></a> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image004_431710F6.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image004_5F00_431710F6.png"><img title="clip_image004" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="clip_image004" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image004_thumb_495DE784.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image004_5F00_thumb_5F00_495DE784.png" width="569" height="25" /></a> <p><font size="3">More Information about this component </font><a href="http://technet.microsoft.com/en-us/library/cc180537.aspx"><font size="3">http://technet.microsoft.com/en-us/library/cc180537.aspx</font></a> <p><font size="3">The main problem is when the component is trying to install on the cluster it installs on any available drive; therefore, so you need to be careful because of this behavior. The component may install on the cluster drive and this is where problems are going to start.</font> <p><font size="3">The main solution is simple. Before you install the ConfigMgr on the cluster you need to create a <b>no_sms_on_drive.sms</b> file and include it on every clustered drive and the C drive. What I normally recommend is having another local drive with space to install this service. This will be a non-clustered drive of course, in my case I use the P Drive:</font> <p><font size="3">This is how a clustered drive should look:</font> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image005_56C3FA8A.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image005_5F00_56C3FA8A.png"><img title="clip_image005" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="clip_image005" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image005_thumb_06EDD5FF.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image005_5F00_thumb_5F00_06EDD5FF.png" width="645" height="143" /></a></p> <p><font size="3">And this is how a clustered drive should not look:</font></p> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image006_541DCF8A.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image006_5F00_541DCF8A.png"><img title="clip_image006" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="clip_image006" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image006_thumb_642C9E41.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image006_5F00_thumb_5F00_642C9E41.png" width="648" height="133" /></a></p> <p><font size="3">Now we all can make mistakes (that includes me) and that is why I am writing this blog post: so I do not forget again.</font></p> <p><font size="3">You may ask yourself, “What happens if you leave it on the clustered drive?”</font> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image008_7845BACA.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image008_5F00_7845BACA.png"><img title="clip_image008" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="clip_image008" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image008_thumb_1A311D4F.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image008_5F00_thumb_5F00_1A311D4F.png" width="334" height="381" /></a> <p><font size="3">Well, as soon as the cluster failover to the other node you will start receiving several errors that are visible in the SMS_SITE_SQL_BACKUP_SERVERNAME component thread. Here is an example of some of those errors:</font> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image010_38123201.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image010_5F00_38123201.png"><img title="clip_image010" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="clip_image010" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image010_thumb_6C465B47.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image010_5F00_thumb_5F00_6C465B47.png" width="563" height="27" /></a> <p><font size="3">Here you can see the node is in a Critical State. Then, I proceed to validate the service is running.</font> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image012_60446B13.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image012_5F00_60446B13.png"><img title="clip_image012" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="clip_image012" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image012_thumb_5E0A7308.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image012_5F00_thumb_5F00_5E0A7308.png" width="542" height="156" /></a> <p><font size="3">As you can see in here the service is not available&gt; Next, I proceed to look at the status messages. I found the following Message IDs: 1020, 1076 and 1093. Each of these Status Message indicates there is a problem with the path that is in use on the cluster.</font> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image013_0DC81B88.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image013_5F00_0DC81B88.png"><img title="clip_image013" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="clip_image013" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image013_thumb_4D25CF18.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image013_5F00_thumb_5F00_4D25CF18.png" width="461" height="362" /></a> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image014_6B06E3CA.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image014_5F00_6B06E3CA.png"><img title="clip_image014" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="clip_image014" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image014_thumb_714DBA58.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image014_5F00_thumb_5F00_714DBA58.png" width="471" height="366" /></a> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image015_6F13C24D.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image015_5F00_6F13C24D.png"><img title="clip_image015" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="clip_image015" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image015_thumb_29FAF517.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image015_5F00_thumb_5F00_29FAF517.png" width="480" height="371" /></a> <h3>Solution</h3> <p><font size="3">To fix this problem you will need to copy the files from the clustered drive to the local drive:</font> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image017_04FD349E.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image017_5F00_04FD349E.png"><img title="clip_image017" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="clip_image017" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image017_thumb_3BDA1995.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image017_5F00_thumb_5F00_3BDA1995.png" width="484" height="266" /></a> <p><font size="3">Once the files are on the local drive:</font> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image019_16DC591C.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image019_5F00_16DC591C.png"><img title="clip_image019" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="clip_image019" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image019_thumb_11F9A560.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image019_5F00_thumb_5F00_11F9A560.png" width="502" height="178" /></a> <p><font size="3">We then need to perform some registry changes. </font><a><font size="3">Warning: Perform these changes at your own risk.</font></a> <p><font size="3">Open Regedit.exe on the Primary Site Server or CAS that manages the affected clustered site database and go to HKLM\Software\Microsoft\SMS\Components\SMS_SITE_COMPONENT_MANAGER\Multisite Component Servers\&lt;servername&gt;\Installation Directory</font> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image021_1AE9379F.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image021_5F00_1AE9379F.png"><font size="3"><img title="clip_image021" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="clip_image021" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image021_thumb_63A2B063.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image021_5F00_thumb_5F00_63A2B063.png" width="508" height="321" /></font></a> <p><font size="3">You will change the Drive only, on my case from J: to P:</font> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image023_1E89E32D.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image023_5F00_1E89E32D.png"><img title="clip_image023" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="clip_image023" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image023_thumb_2E2C7EEF.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image023_5F00_thumb_5F00_2E2C7EEF.png" width="482" height="303" /></a> <p><font size="3">On the affected SQL Node, you will also perform the following registry change:</font> <p><font size="3">Open Regedit.exe on the SQL Node and go to:</font> <p><font size="3">HKLM\SOFTWARE\Microsoft\SMS\Tracing\SMS_SITE_SQL_BACKUP_SERVERNAME</font> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image025_371C112E.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image025_5F00_371C112E.png"><img title="clip_image025" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="clip_image025" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image025_thumb_3475E62E.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image025_5F00_thumb_5F00_3475E62E.png" width="474" height="268" /></a> <p><font size="3">Once you perform these changes, restart the following services on the site server.</font> <p><font size="3">SMS_Site_Component_Manager and SMS_Executive.</font> <p><font size="3">It may be better to restart the site server, but I will leave that up to you.</font> <h3>Confirmation</h3> <p><font size="3">To confirm your changes have </font><a><font size="3">taken effect</font></a><font size="3">, the best way be to validate it again is in the Monitoring Workspace and check the SMS_SITE_SQL_BACKUP_SERVERNAME component thread.</font> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image027_6B52CB25.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image027_5F00_6B52CB25.png"><img title="clip_image027" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="clip_image027" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image027_thumb_3882C4B1.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image027_5F00_thumb_5F00_3882C4B1.png" width="578" height="28" /></a> <h3>Conclusion</h3> <p><font size="3">When setting up a SQL Cluster that used for ConfigMgr site database, the first step that you need to do is confirm that there is a local drive available for the SMS_Site_SQL_Backup_XXX Service and that a no_sms_on_drive.sms file exists on every clustered drive.</font>  <p>Santos Martinez – Sr. PFE – ConfigMgr and Databases  <p>Steven Hernandez – PFE – ConfigMgr Contributor  <p><strong>Disclaimer:</strong> The information on this site is provided &quot;AS IS&quot; with no warranties, confers no rights, and is not supported by the authors or Microsoft Corporation. Use of any included script samples are subject to the terms specified in the <a href="http://www.microsoft.com/info/cpyright.mspx">Terms of Use</a></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p>]]></content:encoded>
    </item>
    <item>
      <title>SQL Trace Flags and ConfigMgr</title>
      <link>https://docs.microsoft.com/archive/blogs/smartinez/sql-trace-flags-and-configmgr</link>
      <pubDate>Fri, 25 Apr 2014 07:06:52 GMT</pubDate>
      <dc:creator><![CDATA[Santos Martinez]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/smartinez/2014/04/25/sql-trace-flags-and-configmgr/</guid>
      <description><![CDATA[Hello everyone, ConfigNinja here. In one of my old blog posts I wrote a little bit about the usage...]]></description>
      <content:encoded><![CDATA[<p>Hello everyone, ConfigNinja here. In one of my old blog posts I wrote a little bit about the usage of SQL Trace Flags in ConfigMgr.</p> <p>Q. First what is a SQL Trace Flag?</p> <p>A. Trace flags are used to temporarily set specific server characteristics or to switch off a particular behavior.&nbsp; Use them only when advised by a Microsoft support professional. Trace flags are used for a wide variety of purposes in Microsoft® SQL Server. This use ranges from activating certain behavioral fixes to capturing data for analysis during support issues. </p> <h5>Recommended Reading</h5> <p><a href="http://msdn.microsoft.com/en-us/library/ms188396.aspx">Books Online: Trace Flags (Transact-SQL)</a>  <p><a href="http://msdn.microsoft.com/en-us/library/ms190737(v=SQL.100).aspx">Books Online: Using the SQL Server Service Startup Options</a></p> <p>During the installation of ConfigMgr in the ConfigMgrSetup.log you will see the following Message:</p> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/2014-04-02_1350_449C5EAE.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/2014_2D00_04_2D00_02_5F00_1350_5F00_449C5EAE.png"><img title="2014-04-02_1350" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="2014-04-02_1350" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/2014-04-02_1350_thumb_721D7E71.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/2014_2D00_04_2D00_02_5F00_1350_5F00_thumb_5F00_721D7E71.png" width="504" height="69" /></a></p> <p>Meaning of T8295:</p> <p>Creates a secondary index of the identifying columns on the change tracking side table at enable time. This trace flags allow the creation of a secondary index for change tracking tables, which is used for replication between ConfigMgr Sites.</p> <p>Meaning of T4199:</p> <p>Controls multiple query optimizer changes previously made under multiple trace flags. For more information, see this <a href="http://go.microsoft.com/fwlink/?LinkId=203012">Microsoft Support article</a> Scope: global or session.  <p>These are the only two trace flags that should be on the SQL Server instance that supports ConfigMgr site database, If you found other trace flags you can disable them.  <p>How to check current trace flags:  <p>Open SQL Management Studio &gt; New Query  <p>DBCC TRACESTATUS (-1)  <p>go  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/2014-04-02_1403_3423EDB3.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/2014_2D00_04_2D00_02_5F00_1403_5F00_3423EDB3.png"><img title="2014-04-02_1403" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="2014-04-02_1403" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/2014-04-02_1403_thumb_48A93D31.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/2014_2D00_04_2D00_02_5F00_1403_5F00_thumb_5F00_48A93D31.png" width="342" height="93" /></a>  <p>As you can see here it only show the two trace flags that ConfigMgr requires, If it display other trace flags you may disable them by running the following command.  <h5>How to disable a trace flag.</h5> <p>DBCC TRACEOFF (XXXX) <p>go </p> <p>or</p> <p>DBCC TRACEOFF (XXXX,-1)</p> <p>go</p> <p>Perform a Trace Status query again to validate it has been disabled and only ConfigMgr Trace Flags are enable.</p> <p>if you need to enable a trace flag perform the following steps.</p> <h5>How to enable a trace flag</h5> <p>DBCC TRACECON (XXXX) <p>Hope this help out, was a quick blog post, so I hope you find it useful.</p> <p>Santos Martinez – Sr. PFE – ConfigMgr and Databases <p>Steven Hernandez – PFE – ConfigMgr Contributor <p><strong>Disclaimer:</strong> The information on this site is provided &quot;AS IS&quot; with no warranties, confers no rights, and is not supported by the authors or Microsoft Corporation. Use of any included script samples are subject to the terms specified in the <a href="http://www.microsoft.com/info/cpyright.mspx">Terms of Use</a></p></p></p></p></p></p></p></p></p></p></p></p></p></p>]]></content:encoded>
    </item>
    <item>
      <title>Talking Database in ConfigMgr</title>
      <link>https://docs.microsoft.com/archive/blogs/smartinez/talking-database-in-configmgr</link>
      <pubDate>Fri, 28 Mar 2014 10:00:00 GMT</pubDate>
      <dc:creator><![CDATA[Santos Martinez]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/smartinez/2014/03/28/talking-database-in-configmgr/</guid>
      <description><![CDATA[Hello, ConfigNinja here to write to you about optimizing the site database in System Center 2012 R2...]]></description>
      <content:encoded><![CDATA[<p>Hello, ConfigNinja here to write to you about optimizing the site database in System Center 2012 R2 Configuration Manager. One of the areas we cover with our customers is the ConfigMgr site database. For the past few months I have reviewed data about the site database and ways to improve performance, especially since it’s being used constantly. One of the issues that have come up a few times is fragmented indexes. On this blog post, I will explain how to find out if you have fragmented indexes in the ConfigMgr site database and methods to detect this in your own ConfigMgr site database.  <p>&nbsp;<a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/WIN13_Pamela_Asus_01_44AD51B1.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/WIN13_5F00_Pamela_5F00_Asus_5F00_01_5F00_44AD51B1.png"><img title="WIN13_Pamela_Asus_01" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="WIN13_Pamela_Asus_01" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/WIN13_Pamela_Asus_01_thumb_5BFD7784.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/WIN13_5F00_Pamela_5F00_Asus_5F00_01_5F00_thumb_5F00_5BFD7784.png" width="637" height="426" /></a>  <p>Let’s start by finding out if your site database is fragmented or not. We suggest that you rebuild those indexes if the site database is fragmented more than 10%.  <h3>You can follow these steps to determine the fragmentation of your site database. </h3> <p>Open SQL Management Studio &gt; and connect to the ConfigMgr SQL Server.  <p>Select New Query &gt;  <p>Select the CM_XXX (your site database)  <p>Execute the following T-SQL command: <b>DBCC Showcontig</b>  <p>Below is sample of the output this command produces:  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_76CC2E41.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_76CC2E41.png"><img title="image" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_thumb_3D491E4A.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_thumb_5F00_3D491E4A.png" width="620" height="71" /></a>  <p>You can also run the following T-SQL Command Line to identify those tables with more than 10% of Fragmentation:  <h4>This query is what ConfigMgr executes when running the Rebuild Index site maintenance task</h4><pre style="overflow:auto;border-top:#cecece 1px solid;border-right:#cecece 1px solid;width:650px;border-bottom:#cecece 1px solid;padding-bottom:5px;padding-top:5px;padding-left:5px;border-left:#cecece 1px solid;padding-right:5px;background-color:#fbfbfb;"><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#fbfbfb;"><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=select&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">select</a> <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=distinct&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">distinct</a> sch.name + &#39;<span style="color:#8b0000;">.</span>&#39; + OBJECT_NAME(stat.object_id), ind.name, <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=convert&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">convert</a>(<a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=int&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">int</a>,stat.avg_fragmentation_in_percent) 
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#fbfbfb;"><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=from&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">from</a> sys.dm_db_index_physical_stats(DB_ID(),<a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=NULL&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">NULL</a>,<a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=NULL&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">NULL</a>,<a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=NULL&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">NULL</a>,&#39;<span style="color:#8b0000;">LIMITED</span>&#39;) stat 
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#fbfbfb;"><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=join&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">join</a> sys.indexes ind <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=on&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">on</a> stat.object_id=ind.object_id <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=and&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">and</a> stat.index_id=ind.index_id 
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#fbfbfb;"><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=join&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">join</a> sys.objects  obj <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=on&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">on</a> obj.object_id=stat.object_id 
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#fbfbfb;"><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=join&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">join</a> sys.schemas sch <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=on&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">on</a> obj.schema_id=sch.schema_id 
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#fbfbfb;"><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=where&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">where</a> ind.name <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=is&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">is</a> <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=not&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">not</a> <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=null&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">null</a> <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=and&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">and</a> stat.avg_fragmentation_in_percent &gt; 10.0 <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=and&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">and</a> ind.type &gt; 0 
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#fbfbfb;"><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=order&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">order</a> <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=by&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">by</a> <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=convert&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">convert</a>(<a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=int&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">int</a>,stat.avg_fragmentation_in_percent) <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=desc&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">desc</a>
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#fbfbfb;"></pre></pre>
<h5>Below are sample results from that query: </h5>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_4D57ED01.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_4D57ED01.png"><img title="image" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_thumb_0F5E5C43.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_thumb_5F00_0F5E5C43.png" width="623" height="254" /></a> 
<h5>Once we confirm that we have Index fragmentation, we type the following command line to correct the issue: </h5><pre style="overflow:auto;border-top:#cecece 1px solid;border-right:#cecece 1px solid;width:650px;border-bottom:#cecece 1px solid;padding-bottom:5px;padding-top:5px;padding-left:5px;border-left:#cecece 1px solid;padding-right:5px;background-color:#fbfbfb;"><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#fbfbfb;"><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=EXEC&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">EXEC</a> <a style="color:#ffa500;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=sp_MSforeachtable&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">sp_MSforeachtable</a> @command1=&quot;<span style="color:#8b0000;">print &#39;?&#39; DBCC DBREINDEX (&#39;?&#39;, &#39; &#39;, 80)</span>&quot;
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#fbfbfb;"><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=GO&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">GO</a>
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#fbfbfb;"></pre></pre>
<h5><b>Note: This command may take some time, please allow the system to complete.</b> </h5>
<p>You can also schedule key maintenance tasks to occur periodically using a SQL Maintenance Plan to optimize database performance. Follow the steps below to create a maintenance plan. 
<p>In the SQL Management Studio Console, expand Management &gt; Right Click Maintenance Plan and select Maintenance Plan Wizard. 
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_1F00F805.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_1F00F805.png"><img title="image" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_thumb_5A545DC3.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_thumb_5F00_5A545DC3.png" width="425" height="195" /></a> 
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_4E526D8F.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_4E526D8F.png"><img title="image" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_thumb_775D0C8B.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_thumb_5F00_775D0C8B.png" width="438" height="395" /></a> 
<p>Provide a name for your maintenance plan and click Next to choose the tasks we want to include in our maintenance plan. 
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_2471F95A.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_2471F95A.png"><img title="image" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_thumb_6678689B.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_thumb_5F00_6678689B.png" width="442" height="402" /></a> 
<p>In the Select Maintenance Tasks page, select the following tasks: 
<ul>
<li>· Reorganize Index 
</li><li>· Rebuild Index 
</li><li>· Update Statistics 
</li><li>· Clean Up History </li></ul>
<p>Click Next Twice, once you have all the proper tasks selected.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_36511DD8.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_36511DD8.png"><img title="image" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_thumb_6D2E02CF.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_thumb_5F00_6D2E02CF.png" width="453" height="440" /></a> </p>
<p>On the next page you will be asked to define the Reorganize Index Task. Click on Databases and select all databases if this SQL Server is used exclusively for ConfigMgr. 
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_239EB4D2.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_239EB4D2.png"><img title="image" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_thumb_37B7D15B.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_thumb_5F00_37B7D15B.png" width="456" height="399" /></a> 
<p>Click the schedule option to set the date and time this task should run. Ensure the scheduled frequency is different for each task. Avoid overlaps between tasks. 
<p><b>NOTE: Make there is no overlapping with other maintenance plans or site maintenance tasks, this will include backup or ConfigMgr rebuild index task.</b> 
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_27AB9355.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_27AB9355.png"><img title="image" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_thumb_02ADD2DC.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_thumb_5F00_02ADD2DC.png" width="451" height="487" /></a> 
<p>At the Define Rebuild Index Task page, select the same databases as the first screen. It is very important that you match this on every task. 
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_5DB01262.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_5DB01262.png"><img title="image" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_thumb_3D2B6361.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_thumb_5F00_3D2B6361.png" width="455" height="399" /></a> 
<p>Ensure there is a unique schedule for the job. 
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_7F31D2A2.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_7F31D2A2.png"><img title="image" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_thumb_5A341229.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_thumb_5F00_5A341229.png" width="464" height="480" /></a> 
<p>Finish up by configuring the Update Statistics Task and ensure it runs after all other tasks have completed. 
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_6323A468.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_6323A468.png"><img title="image" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_thumb_252A13AA.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_thumb_5F00_252A13AA.png" width="474" height="411" /></a> 
<p>At the Define History Cleanup Task, select Ok and click Next. 
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_5C06F8A1.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_5C06F8A1.png"><img title="image" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_thumb_091BE570.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_thumb_5F00_091BE570.png" width="481" height="437" /></a> 
<p>Click Change to schedule the task and click Next 
<p>Ensure you clean up your task history and click Next to complete the task. 
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_38D98DEF.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_38D98DEF.png"><img title="image" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_thumb_4CF2AA78.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_thumb_5F00_4CF2AA78.png" width="487" height="445" /></a> 
<p>Maintenance Plan Completed, click close and proceed to the next steps. 
<h4>Now that we have completed our SQL Maintenance Plan, let’s go ahead and configure the Rebuild Index site maintenance task in ConfigMgr to avoid any overlap between ConfigMgr and SQL. </h4>
<p>Open ConfigMgr Console &gt; go to the Administration Workspace, Expand Sites, select the site and right click Site Maintenance. 
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_55E23CB7.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_55E23CB7.png"><img title="image" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_thumb_338D37EF.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_thumb_5F00_338D37EF.png" width="493" height="558" /></a> 
<p>Select Rebuild Indexes and click edit. 
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_7C46B0B3.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_7C46B0B3.png"><img title="image" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_thumb_7763FCF7.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_thumb_5F00_7763FCF7.png" width="501" height="520" /></a> 
<p>We disabled the Rebuild Indexes from running on Saturday. The custom maintenance plan will run on that day. 
<p>Review the current schedule to ensure no overlap with your new rebuild index maintenance plan. 
<h5>Final Validation.</h5>
<p>We need to confirm there is no more fragmentation in our index, you can go back to the first T-SQL command line or follow the next step to confirm your database is back to a healthy state.</p>
<p>Run the <b>DBCC Showcontig</b> again to validate the current fragmentation: 
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_6E0AC874.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_6E0AC874.png"><img title="image" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/image_thumb_62750B35.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/image_5F00_thumb_5F00_62750B35.png" width="640" height="62" /></a> 
<p>Notice there is no more fragmentation on the tables after the command line. If we test the ConfigMgr console you will notice it should be performing faster than before. 
<h4>Here are some additional resources: </h4>
<p><font size="1"><strong>For System Center Configuration Manager 2007:</strong> </font>
<p><font size="1">ConfigMgr Predefined Maintenance Tasks Overview - </font><a href="http://technet.microsoft.com/en-us/library/bb632595.aspx"><font size="1">http://technet.microsoft.com/en-us/library/bb632595.aspx</font></a><font size="1"> </font>
<p><font size="1">Rebuild Indexes Task - </font><a href="http://technet.microsoft.com/en-us/library/bb632800.aspx"><font size="1">http://technet.microsoft.com/en-us/library/bb632800.aspx</font></a><font size="1"> </font>
<p><font size="1">Troubleshooting ConfigMgr Performance - </font><a href="http://technet.microsoft.com/en-us/library/bb932206.aspx"><font size="1">http://technet.microsoft.com/en-us/library/bb932206.aspx</font></a><font size="1"> </font></p>
<p><font size="1"><strong>For System Center 2012 Configuration Manager:</strong> </font>
<p><font size="1">Planning for Maintenance Tasks for Configuration Manager - </font><a href="http://technet.microsoft.com/en-us/library/e555d7e3-3681-440a-82d0-319d2b4bdd08#BKMK_PlanMaintenanceTasks"><font size="1">http://technet.microsoft.com/en-us/library/e555d7e3-3681-440a-82d0-319d2b4bdd08#BKMK_PlanMaintenanceTasks</font></a> 
<div style="list-style-type:disc;margin:0in 0in 10pt;"><span lang="EN"><font face="Calibri"><font style="font-size:11pt;" color="#000000"></font></font></span>&nbsp;</div>
<div style="list-style-type:disc;margin:0in 0in 10pt;"><span lang="EN"><font color="#000000" face="Calibri"><strong>Non Product specific:</strong></font></span></div>
<p><a href="http://msdn.microsoft.com/en-us/library/ms188917.aspx"><font size="1">sys.dm_db_index_physical_stats</font></a><font size="1"> </font>
<p><a href="http://msdn.microsoft.com/en-US/library/ms189858(v=SQL.90).aspx"><font size="1">Reorganizing and Rebuilding Indexes</font></a><font size="1"> </font>
<p><a href="http://blogs.msdn.com/b/psssql/archive/2012/09/05/how-it-works-online-index-rebuild-can-cause-increased-fragmentation.aspx"><font size="1">http://blogs.msdn.com/b/psssql/archive/2012/09/05/how-it-works-online-index-rebuild-can-cause-increased-fragmentation.aspx</font></a><font size="1"> </font>
<p><span lang="EN"><font face="Calibri"><font style="font-size:11pt;" color="#000000"></font></font></span>&nbsp; <div style="list-style-type:disc;margin:0in 0in 10pt;"><span lang="EN"><font color="#000000"><strong>Thanks for reading, leave a comment and tell me if your database was fragmented.</strong></font></span></div>
<div style="list-style-type:disc;margin:0in 0in 10pt;"><span lang="EN"><font color="#000000">Special Thanks to Steven Hernandez, my long time friend Todd Feller and the PFE ConfigMgr Community for their contributions to this post.</font></span></div>
<p><font size="1">Santos Martinez – Sr. PFE – ConfigMgr and Databases</font> 
<p><font size="1"><strong>Disclaimer:</strong> The information on this site is provided &quot;AS IS&quot; with no warranties, confers no rights, and is not supported by the authors or Microsoft Corporation. Use of any included script samples are subject to the terms specified in the </font><a href="http://www.microsoft.com/info/cpyright.mspx"><font size="1">Terms of Use</font></a></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p></p>]]></content:encoded>
    </item>
    <item>
      <title>Sysctr 2012 R2 ConfigMgr: Reporting 101</title>
      <link>https://docs.microsoft.com/archive/blogs/smartinez/sysctr-2012-r2-configmgr-reporting-101</link>
      <pubDate>Fri, 31 Jan 2014 03:00:00 GMT</pubDate>
      <dc:creator><![CDATA[Santos Martinez]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/smartinez/2014/01/31/sysctr-2012-r2-configmgr-reporting-101/</guid>
      <description><![CDATA[Hello All, ConfigNinja here to write about Reports in System Center 2012 R2 Configuration Manager....]]></description>
      <content:encoded><![CDATA[<p>Hello All, ConfigNinja here to write about Reports in System Center 2012 R2 Configuration Manager. One of the topics that I like the most is the creation of reports, at the beginning of the month we released the <a href="http://technet.microsoft.com/en-us/library/dn581954.aspx">Creating Custom Reports by Using SQL Server Views in System Center 2012 Configuration Manager</a>. </p> <p>This documentation is split into three sections:</p> <ul> <li>SQL Server Views in System Center 2012 Configuration Manager – Provides a detailed list of the views contained in the Configuration Manager SQL database.  </li><li>Working with Reports in System Center 2012 Configuration Manager – Provides information and exercises about how to understand and create Configuration Manager reports by using SQL statements.  </li><li>Technical Reference for SQL Server Views in System Center 2012 Configuration Manager – Provides sample queries and SQL Server information that can help you to create your own Configuration Manager reports. Also provides a list of the built-in Configuration Manager Reports that you can use, or use as the basis for your own reports. </li></ul> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image002_41319B4E.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image002_5F00_41319B4E.jpg"><img title="clip_image002" style="background-image:none;float:none;margin-left:auto;display:block;margin-right:auto;" border="0" alt="clip_image002" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image002_thumb_110A508B.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image002_5F00_thumb_5F00_110A508B.jpg" width="225" height="397" /></a></p> <p align="center">My Notebook (See something rare)</p> <h4>Overview</h4> <p>What I would like to do is go over and explain some of the steps to create a simple report.</p> <p>As pre-requirement, we need to have the Reporting Point Installed on the Primary Site server or Central Administration Site.</p> <p>To do this you can follow the following steps outlined on this TechNet Article:</p> <p><a href="http://technet.microsoft.com/en-us/library/gg712698.aspx">Configuring Reporting in Configuration Manager</a></p> <p>Once you have installed and validated the Reporting Point, browse to the reporting point url http://localhost/reports and ensure you can see the new folder ConfigMgr_XXX.</p> <p>Review the existing reports will be key; there around 400+ Reports make sure you know some of them or always review them before creating a new report. It may be better to customize one of the existing reports than start over with a new report.</p> <p><a href="http://technet.microsoft.com/en-us/library/dn581998.aspx">List of Reports Supplied with Microsoft System Center 2012 R2 Configuration Manager.</a></p> <p>Since we to review all the documentation, let’s go ahead and write a simple report in System Center 2012 R2 Configuration Manager.</p> <p>There are 2 way to accomplish this, the first one will be to create the report from the reporting service url and the second one will be to create the report inside the monitoring workspace in ConfigMgr. Both will have the same end results that will be having that custom report created.</p> <h4>Steps to Create Report</h4> <p>1. Let’s start with the ConfigMgr Console.</p> <p>2. Open ConfigMgr Console find and click on the Monitoring Workspace.</p> <p>3. In the Monitoring workspace, expand Reporting and then click Reports.</p> <p>4. Right click the Reports and click Create Report.</p> <p>5. On the Information page of the Create Reports Wizard, Configure the following settings as shown on the image below.</p> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image004_5957965A.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image004_5F00_5957965A.jpg"><img title="clip_image004" style="background-image:none;display:inline;" border="0" alt="clip_image004" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image004_thumb_10347B52.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image004_5F00_thumb_5F00_10347B52.jpg" width="448" height="383" /></a></p> <p>6. Select SQL-Based Report, then enter the name of the report. Don’t worry about the name, you can change it later on the Report Builder.</p> <p>7. Click on Browse and select the path where you want the report to be stored, you can also modify this location later on Report Builder.</p> <p>8. Click Next, on the Summary Page, review the settings and click Next once ready.</p> <p>9. Click Close and exit the wizard, once you do this the Report Builder will launch.</p> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image006_5D6474DD.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image006_5F00_5D6474DD.jpg"><img title="clip_image006" style="background-image:none;display:inline;" border="0" alt="clip_image006" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image006_thumb_6D734394.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image006_5F00_thumb_5F00_6D734394.jpg" width="446" height="181" /></a></p> <p>10. Wait until it’s ready.</p> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image008_68908FD8.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image008_5F00_68908FD8.jpg"><img title="clip_image008" style="background-image:none;display:inline;" border="0" alt="clip_image008" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image008_thumb_6A60E59F.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image008_5F00_thumb_5F00_6A60E59F.jpg" width="357" height="217" /></a></p> <p>11. Click Run if you have never run it before, this will install the Report Builder on your desktop.</p> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image010_136B849C.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image010_5F00_136B849C.jpg"><img title="clip_image010" style="background-image:none;display:inline;" border="0" alt="clip_image010" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image010_thumb_1C5B16DB.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image010_5F00_thumb_5F00_1C5B16DB.jpg" width="358" height="253" /></a></p> <p>12. Now that we have the Report Builder up and running the first thing will be to create the first Dataset for the report, to create the dataset just right click on Datasets and click Add Data Set.</p> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image012_6C33CC17.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image012_5F00_6C33CC17.jpg"><img title="clip_image012" style="background-image:none;display:inline;" border="0" alt="clip_image012" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image012_thumb_6031DBE3.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image012_5F00_thumb_5F00_6031DBE3.jpg" width="334" height="342" /></a></p> <p>13. Select either a Shared Dataset or Use a dataset embedded in my report, for this example we are going to select Use a dataset embedded in my report.</p> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image014_22384B25.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image014_5F00_22384B25.jpg"><img title="clip_image014" style="background-image:none;display:inline;" border="0" alt="clip_image014" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image014_thumb_38FA235F.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image014_5F00_thumb_5F00_38FA235F.jpg" width="338" height="345" /></a></p> <p>14. Click on Query Designer</p> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image016_54327C60.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image016_5F00_54327C60.jpg"><img title="clip_image016" style="background-image:none;display:inline;" border="0" alt="clip_image016" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image016_thumb_761DDEE4.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image016_5F00_thumb_5F00_761DDEE4.jpg" width="336" height="253" /></a></p> <p>15. Inside Query Designer find the right view this is why is important to learn about the views in ConfigMgr, The documentation that was made reference on this blog is a section called <a href="http://technet.microsoft.com/en-us/library/dn581978.aspx">SQL Server Views in System Center 2012 Configuration Manager</a>.</p> <p>16. Ensure to read that and select the view you want on the report, for this example we are going to select, and Application Management View called V_Advertisement.</p> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image018_115637E6.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image018_5F00_115637E6.jpg"><img title="clip_image018" style="background-image:none;display:inline;" border="0" alt="clip_image018" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image018_thumb_4EE62660.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image018_5F00_thumb_5F00_4EE62660.jpg" width="332" height="251" /></a></p> <p>17. Click OK to go back in the data set properties.</p> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image020_29E865E7.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image020_5F00_29E865E7.jpg"><img title="clip_image020" style="background-image:none;display:inline;" border="0" alt="clip_image020" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image020_thumb_79C11B23.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image020_5F00_thumb_5F00_79C11B23.jpg" width="336" height="346" /></a></p> <p>18. If you need to customize the T-SQL Statement, you can do this inside the Query Designer if the current statement is good for you go ahead and click OK.</p> <p>19. Now we have our first data set created in Report Builder; the next step should be to build a table with the filed we need inside the report.</p> <p>20. Let’s click on Insert, Table, and Insert Table. This will let you choose the location where the table will be as well as the amount of defaults fields.</p> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image022_46F114AF.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image022_5F00_46F114AF.jpg"><img title="clip_image022" style="background-image:none;display:inline;" border="0" alt="clip_image022" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image022_thumb_76428A39.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image022_5F00_thumb_5F00_76428A39.jpg" width="346" height="391" /></a></p> <p>21. Click on the table field and select the first field that you want on the report, select AdvertisementID as the first field, the second field I selected AdvertisementName and the last ProgramName.</p> <p>22. Click Run to test your first results, click on Design to return to the Design view and modify the report.</p> <p>23. Since is your first report, this will not look pretty. It will just display some raw results based on the fields selected if this is not the view you want modify the dataset again until you have found the view that you need for your report.</p> <p>24. If the Insert Table does not work for you, try Table Wizard and follow the steps. </p> <p>25. Once you have completed the report the next step is to save it on the Reporting Point, click Save, and this will save the report on the area you selected before. To change this path, click on Save As.</p> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image024_14239EEC.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image024_5F00_14239EEC.jpg"><img title="clip_image024" style="background-image:none;display:inline;" border="0" alt="clip_image024" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image024_thumb_1D13312B.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image024_5F00_thumb_5F00_1D13312B.jpg" width="379" height="271" /></a></p> <p>26. You will also have the opportunity to change the Report Name if needed.</p> <p>27. After 10 minutes you should see it on the folder:</p> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image026_6A432AB6.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image026_5F00_6A432AB6.jpg"><img title="clip_image026" style="background-image:none;display:inline;" border="0" alt="clip_image026" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/clip_image026_thumb_134DC9B3.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/clip_5F00_image026_5F00_thumb_5F00_134DC9B3.jpg" width="388" height="79" /></a></p> <h4>Wrap Up</h4> <p>Hope this help you get started on reporting, if you like this blog post I will write a few more post about reporting. For some of you this is very basic, I know but I had a few request for people that wanted just to know the very basic.</p> <p>Here is a few more blog post I have done about reporting just in case you had missed them:</p> <p><a href="http://blogs.technet.com/b/smartinez/archive/2013/11/28/how-to-create-a-rba-capable-report-for-configmgr-r2.aspx">How to create an RBA capable report for ConfigMgr R2.</a></p> <p><a href="http://blogs.technet.com/b/smartinez/archive/2012/07/03/system-center-2012-configuration-manager-create-report-don-t-work-what-do-i-do-now.aspx">System Center 2012 Configuration Manager: &#39;Create Report&#39; Doesn&#39;t Work, so what do I do now?(Updated)</a></p> <p>Santos Martinez – Sr. PFE – ConfigMgr and Databases</p> <p><strong>Disclaimer:</strong> The information on this site is provided &quot;AS IS&quot; with no warranties, confers no rights, and is not supported by the authors or Microsoft Corporation. Use of any included script samples are subject to the terms specified in the <a href="http://www.microsoft.com/info/cpyright.mspx">Terms of Use</a></p>]]></content:encoded>
    </item>
    <item>
      <title>How to create an RBA capable report for ConfigMgr R2</title>
      <link>https://docs.microsoft.com/archive/blogs/smartinez/how-to-create-an-rba-capable-report-for-configmgr-r2</link>
      <pubDate>Thu, 28 Nov 2013 00:00:00 GMT</pubDate>
      <dc:creator><![CDATA[Santos Martinez]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/smartinez/2013/11/28/how-to-create-an-rba-capable-report-for-configmgr-r2/</guid>
      <description><![CDATA[Hello all, ConfigNinja here trying to show you a few tips and tricks to convert your current custom...]]></description>
      <content:encoded><![CDATA[<p>Hello all, ConfigNinja here trying to show you a few tips and tricks to convert your current custom reports using the new RBA(Role Based Administration) for reports. <a href="http://technet.microsoft.com/en-us/library/dn236351.aspx#BKMK_WhatsNew_Monitoring_and_Reporting">http://technet.microsoft.com/en-us/library/dn236351.aspx#BKMK_WhatsNew_Monitoring_and_Reporting</a> This new feature on R2 brings&nbsp; lots of benefits, especially for those users that don’t need to have access to all the data within ConfigMgr and limit what you allow them to view. Read more about this here, <a href="http://technet.microsoft.com/en-us/library/7ca322fc-bbbf-42c8-82c9-6fc8941ef2e6#BKMK_RoleBaseAdministration.">http://technet.microsoft.com/en-us/library/7ca322fc-bbbf-42c8-82c9-6fc8941ef2e6#BKMK_RoleBaseAdministration.</a></p> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/1016.STB13_Csonger_03_35CCE063.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/1016.STB13_5F00_Csonger_5F00_03_5F00_35CCE063.png"><img title="STB13_Csonger_03" style="background-image:none;display:inline;" border="0" alt="STB13_Csonger_03" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/4431.STB13_Csonger_03_thumb_7E88E9D8.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/4431.STB13_5F00_Csonger_5F00_03_5F00_thumb_5F00_7E88E9D8.png" width="536" height="357" /></a></p> <h1>Modify a custom report</h1> <p>We are going to modify your custom report using Report Builder, Once you have the Report Builder open we will review a few things before updating your new custom report.</p> <p>First let’s review one of the new reports from ConfigMgr 2012 R2, at your SSRS Website <strong>http://cmsite/reports.</strong></p> <p>Next, let’s go to Software Distribution - Collections &gt; All resources in a specific collection click on the drop down and select edit in Report Builder.</p> <p>Now that you are on Report Builder, let’s review a few details that are new on this report.</p> <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/2063.clip_image002_28B0F5C6.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/2063.clip_5F00_image002_5F00_28B0F5C6.jpg"><img title="clip_image002" style="display:inline;" border="0" alt="clip_image002" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/5756.clip_image002_thumb_4A9C584A.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/5756.clip_5F00_image002_5F00_thumb_5F00_4A9C584A.jpg" width="190" height="421" /></a></p> <p>We have <strong>UserTokenSIDs</strong> and <strong>UserSIDS</strong> on the Parameters section; also we have a new Dataset call <strong>DataSetAdminID</strong>.</p> <p>Let’s review the query inside the <strong>DataSetAdminID</strong>:</p><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;">“<a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=select&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">select</a> dbo.fn_rbac_GetAdminIDsfromUserSIDs (@UserTokenSIDs) <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=as&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">as</a> UserSIDs”</pre>
<p>Now let’s review the 2 prompts that are part of my report.</p>
<p><strong>@UserTokenSIDs</strong> general Configuration:</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/3527.clip_image004_2CBDD449.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/3527.clip_5F00_image004_5F00_2CBDD449.jpg"><img title="clip_image004" style="display:inline;" border="0" alt="clip_image004" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/0407.clip_image004_thumb_0EDF5048.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/0407.clip_5F00_image004_5F00_thumb_5F00_0EDF5048.jpg" width="419" height="346" /></a></p>
<p>Available Values leave as default that should be NONE.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/1882.clip_image006_5C0F49D3.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/1882.clip_5F00_image006_5F00_5C0F49D3.jpg"><img title="clip_image006" style="display:inline;" border="0" alt="clip_image006" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/5224.clip_image006_thumb_572C9617.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/5224.clip_5F00_image006_5F00_thumb_5F00_572C9617.jpg" width="425" height="353" /></a></p>
<p>Default Values, Specify values.</p>
<p>The value will be an expression, click on the expression button to see the expression code.</p><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;">=SrsResources.UserIdentity.GetUserSIDs(<a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=User&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">User</a>!UserID)</pre>
<p>Leave this as the default.</p>
<p>Let’s review <strong>@UserSIDs</strong> Prompt</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/4075.clip_image008_673B64CE.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/4075.clip_5F00_image008_5F00_673B64CE.jpg"><img title="clip_image008" style="display:inline;" border="0" alt="clip_image008" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/4812.clip_image008_thumb_495CE0CD.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/4812.clip_5F00_image008_5F00_thumb_5F00_495CE0CD.jpg" width="426" height="352" /></a></p>
<p>On the Available Values page, leave as default wich should be NONE</p>
<p>Review the Default Values page and other pages but do not make changes.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/6177.clip_image010_168CDA59.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/6177.clip_5F00_image010_5F00_168CDA59.jpg"><img title="clip_image010" style="display:inline;" border="0" alt="clip_image010" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/6521.clip_image010_thumb_78AE5657.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/6521.clip_5F00_image010_5F00_thumb_5F00_78AE5657.jpg" width="426" height="352" /></a></p>
<p>Now that we understand the prompt let’s review the main Datasets of this reports and review the code.</p>
<p>On the <strong>DataSet1</strong>, the code is as follow.</p><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;">“<a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=Select&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">Select</a> <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=Distinct&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">Distinct</a> CollectionID, Name <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=FROM&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">FROM</a> fn_rbac_collection(@UserSIDs) <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=order&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">order</a> <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=by&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">by</a> Name”</pre>
<p>This T-SQL Code in the past use to be like this:</p><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;">“<a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=Select&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">Select</a> <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=Distinct&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">Distinct</a> CollectionID, Name <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=FROM&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">FROM</a> v_Collection <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=Order&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">Order</a> <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=By&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">By</a> Name”</pre>
<p>We had replaced the view for a function, and with the replace of a <span style="background-color:#ffff00;"><strong>V_</strong></span> we need to add <span style="background-color:#ffff00;"><strong>fn_rbac_</strong></span> and then after the function or view add <strong>(@UserSIDs).</strong></p>
<p>Let’s take a look at the <strong>Dataset2</strong>, here is the query inside this dataset.</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;">“<a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=Select&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">Select</a> fcm.Name,
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"></pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=CASE&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">CASE</a> <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=WHEN&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">WHEN</a> coll.CollectionType=1 <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=THEN&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">THEN</a> fcm.SMSID <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=ELSE&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">ELSE</a> fcm.Name <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=END&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">END</a> <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=as&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">as</a> <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=Is&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">Is</a>,
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"></pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=CASE&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">CASE</a> <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=WHEN&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">WHEN</a> ResourceType = 3 <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=THEN&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">THEN</a> ‘*’ <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=ELSE&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">ELSE</a> ‘’ <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=END&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">END</a> <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=as&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">as</a> C066,
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"></pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=CASE&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">CASE</a> <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=WHEN&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">WHEN</a> ResourceType = 4 <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=THEN&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">THEN</a> ‘*’ <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=ELSE&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">ELSE</a> ‘’ <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=END&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">END</a> <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=as&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">as</a> C067,
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"></pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=CASE&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">CASE</a> <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=WHEN&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">WHEN</a> ResourceType = 5 <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=THEN&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">THEN</a> ‘*’ <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=ELSE&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">ELSE</a> ‘’ <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=END&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">END</a> <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=as&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">as</a> C068,
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"></pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;">SiteCode,
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"></pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=CASE&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">CASE</a> IsDirect
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"></pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=When&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">When</a> 1 <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=THEN&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">THEN</a> ‘*’
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"></pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=When&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">When</a> 0 <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=THEN&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">THEN</a> ‘’
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"></pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=END&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">END</a> <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=AS&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">AS</a> C069,
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"></pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;">Coll.CollectionType
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"></pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=From&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">From</a> fn_rbac_FullCollectionMembership (@UserSIDs) fcm
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"></pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=INNER&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">INNER</a> <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=JOIN&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">JOIN</a> fn_rbac_collection(@UserSIDs) coll <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=on&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">on</a> fcm.CollectionID = coll.CollectionID
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"></pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=Where&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">Where</a> fcm.CollectionID = @ID”
</pre>
<p>&nbsp;</p>
<p>As you can see on this query, the query had been modified to first validate the <strong>UserSIDs</strong> before displaying the report data.</p>
<p>Now let’s convert a custom report without Role Based Administration into using RBA.</p>
<p>For this, I will modify a Quick Fix Engineering Report that was created without RBA.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/5852.clip_image012_16233815.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/5852.clip_5F00_image012_5F00_16233815.jpg"><img title="clip_image012" style="display:inline;" border="0" alt="clip_image012" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/0284.clip_image012_thumb_2A3C549E.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/0284.clip_5F00_image012_5F00_thumb_5F00_2A3C549E.jpg" width="234" height="416" /></a></p>
<p>As you can see on this image, there is a missing Prompt and a missing data set from this report.</p>
<p>Plus let’s take a look at how each dataset query is writing.</p>
<p><strong>DataSet1</strong></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;">“<a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=Select&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">Select</a>
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"></pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;">QFE.HotFixID0
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"></pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=From&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">From</a>
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"></pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;">V_GS_Quick_Fix_Engineering QFE
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"></pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=Order&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">Order</a> <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=By&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">By</a> QFE.HotFixID0”
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"></pre><pre style="font-size:12px;height:49px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"><p>&nbsp;</p><p><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=As&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99"><font color="#000000">As</font></a><font color="#000000"> you can see </font><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=on&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99"><font color="#000000">on</font></a><font color="#000000"> this query, we </font><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=are&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99"><font color="#000000">are</font></a><font color="#000000"> </font><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=using&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99"><font color="#000000">using</font></a><font color="#000000"> the </font><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=View&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99"><font color="#000000">View</font></a><font color="#000000"> </font><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=and&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99"><font color="#000000">and</font></a><font color="#000000"> </font><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=not&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99"><font color="#000000">not</font></a><font color="#000000"> the RBA </font><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=Function&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99"><font color="#000000">Function</font></a><font color="#000000">.</font>
</p></pre>
<h5><strong>DataSet2</strong></h5><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"></pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;">“<a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=Select&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">Select</a>
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"></pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;">QFE.ResourceID
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"></pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;">,sys.Netbios_name0
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"></pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;">,QFE.Caption0 <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=as&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">as</a> ‘URL Info’
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"></pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;">,QFE.Description0 <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=as&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">as</a> ‘Classification’
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"></pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;">,QFE.HotFixID0 <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=as&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">as</a> ‘KB Article’
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"></pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;">,QFE.InstalledBy0 <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=as&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">as</a> ‘Installed <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=By&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">By</a>’
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"></pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;">,QFE.InstalledOn0 <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=as&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">as</a> ‘Installed <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=Date&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">Date</a>’
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"></pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=FROM&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">FROM</a>
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"></pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;">V_GS_Quick_Fix_Engineering QFE
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"></pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=LEFT&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">LEFT</a> <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=Join&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">Join</a> v_r_system sys <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=on&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">on</a> qfe.resourceid = sys.resourceid
</pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"></pre><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=Where&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">Where</a> qfe.HotFixID0 <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=like&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">like</a> @HotFix”
</pre>
<p>&nbsp;</p>
<p>Now let’s start by adding the <strong>DataSetAdminID</strong> to the Report.</p>
<p>To do this go to Datasets, right click Add <strong>DataSet</strong></p>
<p>In the Name Field enter: <strong>DataSetAdminID</strong></p>
<p>Click Use a dataset embedded in my report:</p>
<p>Select the <strong>Data Source</strong>: Should be the ConfigMgr Default data source or a custom one.</p>
<p>In the Query enter the following query statement:</p><pre style="font-size:12px;font-family:consolas,&#39;Courier New&#39;,courier,monospace;width:100%;margin:0em;background-color:#ffffff;"><a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=select&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">select</a> dbo.fn_rbac_GetAdminIDsfromUserSIDs (@UserTokenSIDs) <a style="color:#0000ff;" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;siteid=us%2Fdev&amp;p=1&amp;nq=NEW&amp;qu=as&amp;IntlSearch=&amp;boolean=PHRASE&amp;ig=01&amp;i=09&amp;i=99">as</a> UserSIDs</pre>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/2678.clip_image014_0C5DD09D.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/2678.clip_5F00_image014_5F00_0C5DD09D.jpg"><img title="clip_image014" style="display:inline;" border="0" alt="clip_image014" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/4834.clip_image014_thumb_6E7F4C9B.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/4834.clip_5F00_image014_5F00_thumb_5F00_6E7F4C9B.jpg" width="418" height="425" /></a></p>
<p>Click OK to finish the new dataset.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/3201.clip_image016_3BAF4627.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/3201.clip_5F00_image016_5F00_3BAF4627.jpg"><img title="clip_image016" style="display:inline;" border="0" alt="clip_image016" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/5314.clip_image016_thumb_6BD9219B.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/5314.clip_5F00_image016_5F00_thumb_5F00_6BD9219B.jpg" width="226" height="447" /></a></p>
<p>The dataset has been added and also a new prompt.</p>
<p>Let’s now modify the query on <strong>Dataset1</strong> and <strong>Dataset2</strong> to use the RBAC function.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/5734.clip_image018_6F79CD29.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/5734.clip_5F00_image018_5F00_6F79CD29.jpg"><img title="clip_image018" style="display:inline;" border="0" alt="clip_image018" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/6232.clip_image018_thumb_584E52AB.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/6232.clip_5F00_image018_5F00_thumb_5F00_584E52AB.jpg" width="518" height="390" /></a></p>
<p><strong>Dataset1</strong> has been changed; all I did was replace <span style="background-color:#ffff00;"><strong>V_</strong></span> to <strong><span style="background-color:#ffff00;">fn_rbac </span></strong>and add the <strong>(@UserSIDs).</strong></p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/5287.clip_image020_484214A5.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/5287.clip_5F00_image020_5F00_484214A5.jpg"><img title="clip_image020" style="display:inline;" border="0" alt="clip_image020" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/5125.clip_image020_thumb_435F60E9.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/5125.clip_5F00_image020_5F00_thumb_5F00_435F60E9.jpg" width="524" height="396" /></a></p>
<p>Here is the updated <strong>DataSet2</strong>.</p>
<p>On the parameters, move the <strong>UserTokenSIDs</strong> as the first priority.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/8688.clip_image022_3E7CAD2D.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/8688.clip_5F00_image022_5F00_3E7CAD2D.jpg"><img title="clip_image022" style="display:inline;" border="0" alt="clip_image022" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/6644.clip_image022_thumb_0E55626A.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/6644.clip_5F00_image022_5F00_thumb_5F00_0E55626A.jpg" width="254" height="495" /></a></p>
<p>And that’s all you will need to do to convert your custom report from non RBA to use RBA Function for reports, I hope these instructions were helpful and you can create your new reports ready for RBA.</p>
<p>as a bonus for reading this blog post I have uploaded the template reports I used for this blog post here:</p>
<p><a title="http://gallery.technet.microsoft.com/Quick-Fix-Engineering-0e9fb49c" href="http://gallery.technet.microsoft.com/Quick-Fix-Engineering-0e9fb49c">http://gallery.technet.microsoft.com/Quick-Fix-Engineering-0e9fb49c</a></p>
<h3>Does this information help you?</h3>
<p><strong><em>Happy Thanksgiving!!</em></strong></p>
<p>Santos Martinez – Sr. PFE – ConfigMgr and Databases</p>
<p><strong>Disclaimer:</strong> The information on this site is provided &quot;AS IS&quot; with no warranties, confers no rights, and is not supported by the authors or Microsoft Corporation. Use of any included script samples are subject to the terms specified in the <a href="http://www.microsoft.com/info/cpyright.mspx">Terms of Use</a></p>]]></content:encoded>
    </item>
    <item>
      <title>System Center 2012 R2 Configuration Manager Released, It’s time to upgrade</title>
      <link>https://docs.microsoft.com/archive/blogs/smartinez/system-center-2012-r2-configuration-manager-released-its-time-to-upgrade</link>
      <pubDate>Thu, 31 Oct 2013 06:00:00 GMT</pubDate>
      <dc:creator><![CDATA[Santos Martinez]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/smartinez/2013/10/31/system-center-2012-r2-configuration-manager-released-its-time-to-upgrade/</guid>
      <description><![CDATA[With this new release, it means a lot of things but one of the meanings is that we can take...]]></description>
      <content:encoded><![CDATA[<p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/0488.image_368F4F03.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/0488.image_5F00_368F4F03.png"><img width="493" height="379" title="image" style="display:inline;" alt="image" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/4645.image_thumb_0CAEDACE.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/4645.image_5F00_thumb_5F00_0CAEDACE.png" border="0" /></a></p>
<p>With this new release, it means a lot of things but one of the meanings is that we can take advantage of Windows Server 2012 R2 and Windows 8.1. But how about if you already have System Center 2012 Configuration Manager in a Windows Server 2008 R2, what you will you do. I decided to upgrade to Windows Server 2012 R2 and also upgrade the SQL Server from 2008 R2 to 2012 SP1, I know what you are thinking &ldquo;Crazy&rdquo;. Indeed I agree 100%, but it&rsquo;s a good practice to ensure it works and if not then I will know too.</p>
<p>Links:</p>
<p><a href="/b/systemcenter/archive/2013/10/18/announcing-the-general-availability-of-system-center-2012-r2-management-delivered.aspx">Announcing the Availability of System Center 2012 R2</a></p>
<p><a href="http://infopedia/docstore/Repository/System%20Center%202012%20R2%20Overview/System%20Center%202012%20R2%20Overview.pptx">System Center 2012 R2 Overview</a></p>
<p><a href="http://infopedia/docstore/_layouts/DocIdRedir.aspx?ID=KC00-15-205816">System Center 2012 R2 Configuration Manager w/ Intune Product Overview</a></p>
<p>A few steps that I have to do before the upgrade:</p>
<p><a href="http://technet.microsoft.com/en-US/library/jj822981.aspx#BKMK_UpgradeR2Checklist">&nbsp;http://technet.microsoft.com/en-US/library/jj822981.aspx#BKMK_UpgradeR2Checklist</a></p>
<p><a href="http://technet.microsoft.com/en-US/library/jj822981.aspx#BKMK_UpgradeR2Considerations">&nbsp;http://technet.microsoft.com/en-US/library/jj822981.aspx#BKMK_UpgradeR2Considerations</a></p>
<p>Remove SSRS Feature from SQL Server 2008 R2, for some reason I got a compatibility level issue.</p>
<p>But wait, I just recorded my self-doing all this. Do you want to see the process?</p>
<p>Go ahead take a look at this video, feel free to fast forward if you want. This video is more than 15 Minutes.</p>
<p><video width="960" height="540" style="width:590px;height:459px;" controls="controls" poster="http://media.ch9.ms/ch9/f5bd/8d72fe6d-6d5e-4c6c-805a-0f7d7401f5bd/UpgradetoR2_512.jpg"><source src="http://media.ch9.ms/ch9/f5bd/8d72fe6d-6d5e-4c6c-805a-0f7d7401f5bd/UpgradetoR2_mid.mp4" type="video/mp4" />&nbsp;<source src="http://media.ch9.ms/ch9/f5bd/8d72fe6d-6d5e-4c6c-805a-0f7d7401f5bd/UpgradetoR2.webm" type="video/webm" />&nbsp;</video></p>
<p>Happy Halloween!!!</p>
<p></p>
<p>Santos Martinez - Premier Field Engineer &ndash; ConfigMgr and Databases</p>
<p><strong>Disclaimer:</strong> The information on this site is provided &quot;AS IS&quot; with no warranties, confers no rights, and is not supported by the authors or Microsoft Corporation. Use of any included script samples are subject to the terms specified in the <a href="http://www.microsoft.com/info/cpyright.mspx">Terms of Use</a></p>]]></content:encoded>
    </item>
    <item>
      <title>Top 3 ConfigMgr 2012 Client Installation Methods</title>
      <link>https://docs.microsoft.com/archive/blogs/smartinez/top-3-configmgr-2012-client-installation-methods</link>
      <pubDate>Fri, 27 Sep 2013 00:00:00 GMT</pubDate>
      <dc:creator><![CDATA[Santos Martinez]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/smartinez/2013/09/27/top-3-configmgr-2012-client-installation-methods/</guid>
      <description><![CDATA[&#160;  Hello, ConfigNinja here writing from Germany. Many customers have asked me about what is the...]]></description>
      <content:encoded><![CDATA[<p>&#160;</p>  <p>Hello, ConfigNinja here writing from Germany. Many customers have asked me about what is the best method to achieve a higher number of client installs. And this got me thinking on what are those techniques that I would use more to achieve this goal. First we have to understand all the installation methods available for ConfigMgr 2012, and those installations methods are as follow.</p>  <p>Table 1.1 Client Installation Methods</p>  <table cellspacing="0" cellpadding="0" border="0"><tbody>     <tr>       <td valign="top" width="214">         <p><b>Client Installation Method</b></p>       </td>        <td valign="top" width="539">         <p><b>Description</b></p>       </td>     </tr>      <tr>       <td valign="top" width="214">         <p><b>Automatically Upgrade (new)</b></p>       </td>        <td valign="top" width="539">         <p>Use this method to automatically upgrade client when it identifies that a client that is assigned to the site is below a version that you specify.</p>       </td>     </tr>      <tr>       <td valign="top" width="214">         <p><b>Client push installation</b></p>       </td>        <td valign="top" width="539">         <p>Use this method to automatically install the client to assigned resources and to manually install the client to resources that are not assigned</p>       </td>     </tr>      <tr>       <td valign="top" width="214">         <p><b>Software update point installation</b></p>       </td>        <td valign="top" width="539">         <p>Used to install the client using the Configuration Manager software updates feature</p>       </td>     </tr>      <tr>       <td valign="top" width="214">         <p><b>Group Policy installation</b></p>       </td>        <td valign="top" width="539">         <p>Used to install the client using Windows Group Policy</p>       </td>     </tr>      <tr>       <td valign="top" width="214">         <p><b>Logon script installation</b></p>       </td>        <td valign="top" width="539">         <p>Used to install the client by means of a logon script</p>       </td>     </tr>      <tr>       <td valign="top" width="214">         <p><b>Manual installation</b></p>       </td>        <td valign="top" width="539">         <p>Used to manually install the client software</p>       </td>     </tr>      <tr>       <td valign="top" width="214">         <p><b>Upgrade installation</b></p>       </td>        <td valign="top" width="539">         <p>Uses Configuration Manager application management to upgrade Configuration Manager clients to a newer version. You can also use Configuration Manager 2007 software distribution to upgrade clients to Configuration Manager and assign it to the new site</p>       </td>     </tr>      <tr>       <td valign="top" width="214">         <p><b>Client Imaging</b></p>       </td>        <td valign="top" width="539">         <p>Used to pre-stage the client installation in an operating system image</p>       </td>     </tr>   </tbody></table>  <h2>1. Client push installation:</h2>  <p>As you know this is the best method to get your clients install and should be configure on every site. Even if you don’t plan to enable the automatic client push, here is where you configure the client settings and client push installation account.</p>  <h4>Steps to configure client push.</h4>  <p>a. In the Configuration Manager console, click on the Administration workspace.</p>  <p>b. Expand Site Configuration, and then click Sites.</p>  <p>c. In the Sites list, select the site for which you want to configure automatic site-wide client push installation.</p>  <p>d. right click and select Client installation settings then click on Client Push Installation</p>  <p>e. In the Client Push Installation Properties click on accounts and define the account that you will use for the client push install, this account most have local administration rights on the clients to get the agent installed.</p>  <p>f. Once you have added the account click on Installation Properties.</p>  <p>&#160;<a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/5857.clip_image002_4D4F6803.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/5857.clip_5F00_image002_5F00_4D4F6803.jpg"><img title="clip_image002" style="display: inline; background-image: none;" border="0" alt="clip_image002" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/0844.clip_image002_thumb_7AD31877.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/0844.clip_5F00_image002_5F00_thumb_5F00_7AD31877.jpg" width="298" height="313" /></a></p>  <p>g. In the Installation Properties define the command line to be used by the installation method. If you want to read more about those properties go here <a href="http://technet.microsoft.com/en-us/library/gg699356.aspx">About Client Installation Properties in Configuration Manager</a>.</p>  <p>h. Click on to finish the configuration.</p>  <h4>End Results</h4>  <p>The results of client push, will be different depending if you do a manual install via the console or if the client was automatically install. Monitor <strong>&lt;ConfigMgr installation directory&gt;\logs </strong>and open ccm.log</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/2538.2013-09-27_0531_50F2A442.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/2538.2013_2D00_09_2D00_27_5F00_0531_5F00_50F2A442.png"><img title="2013-09-27_0531" style="display: inline; background-image: none;" border="0" alt="2013-09-27_0531" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/2437.2013-09-27_0531_thumb_0280A289.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/2437.2013_2D00_09_2D00_27_5F00_0531_5F00_thumb_5F00_0280A289.png" width="380" height="322" /></a></p>  <h3>2. Use of Group Policy:</h3>  <p>Group policy could be very beneficial on multiple instances. What the customers find is very difficult to configure and to implement in many cases. Here is how you can configure this group policy to deploy the configmgr client.</p>  <h4>Steps to configure group policy.</h4>  <p>a. copy ccmsetup.msi from <strong>&lt;ConfigMgr installation directory&gt;\bin\i386 </strong><strong>and ensure is copied to a share that will be available for all users.</strong></p>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/8168.clip_image004_76814305.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/8168.clip_5F00_image004_5F00_76814305.jpg"><img title="clip_image004" style="display: inline; background-image: none;" border="0" alt="clip_image004" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/5468.clip_image004_thumb_35E18747.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/5468.clip_5F00_image004_5F00_thumb_5F00_35E18747.jpg" width="351" height="180" /></a></p>  <p>b. I also copy the client source folder to this new share folder, as I will use it as source in my command line.</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/6825.clip_image006_24FCE357.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/6825.clip_5F00_image006_5F00_24FCE357.jpg"><img title="clip_image006" style="display: inline; background-image: none;" border="0" alt="clip_image006" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/5810.clip_image006_thumb_31F95419.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/5810.clip_5F00_image006_5F00_thumb_5F00_31F95419.jpg" width="355" height="140" /></a></p>  <p>c. here is how my ClientGPO share looks like.</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/7343.clip_image008_51AABE92.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/7343.clip_5F00_image008_5F00_51AABE92.jpg"><img title="clip_image008" style="display: inline; background-image: none;" border="0" alt="clip_image008" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/6710.clip_image008_thumb_70EFF616.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/6710.clip_5F00_image008_5F00_thumb_5F00_70EFF616.jpg" width="356" height="154" /></a></p>  <p>d. now is time to configure the GPO, to do this we need to open group policy management on your Management tools or domain controller.</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/5584.clip_image010_6DDD9821.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/5584.clip_5F00_image010_5F00_6DDD9821.jpg"><img title="clip_image010" style="display: inline; background-image: none;" border="0" alt="clip_image010" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/4478.clip_image010_thumb_345D18DB.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/4478.clip_5F00_image010_5F00_thumb_5F00_345D18DB.jpg" width="354" height="194" /></a></p>  <p>e. click ok once you enter the name</p>  <p>f. right click edit on ConfigMgr 2012 Client Policy once created.</p>  <p>g. when the group policy management editor open, expand,computer configuration &gt; Policies &gt; Software Settings &gt; Software installation when open find the share and select ccmsetup.msi<a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/4452.clip_image012_314ABAE6.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/4452.clip_5F00_image012_5F00_314ABAE6.jpg"><img title="clip_image012" style="display: inline; background-image: none;" border="0" alt="clip_image012" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/3162.clip_image012_thumb_5023BF75.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/3162.clip_5F00_image012_5F00_thumb_5F00_5023BF75.jpg" width="488" height="334" /></a></p>  <p>h. at this point the policy is configured to execute the ccmsetup.msi install, I recommend also adding the templates on this GPO to install the client and for client assignment. </p>  <p>i. located the GPO Admin templates on the tools folder on the installation path, on the group policy right click Administrative Templates.</p>  <p>j. click on add\remove templates then click add, find the templates on <strong>&lt;ConfigMgr installation directory&gt;\tools\ConfigMgrADMTemplates. </strong><strong>Select ConfigMgrassignment and configmgrinstallation.</strong></p>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/1882.clip_image014_4B439C6A.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/1882.clip_5F00_image014_5F00_4B439C6A.png"><img title="clip_image014" style="display: inline; background-image: none;" border="0" alt="clip_image014" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/7215.clip_image014_thumb_5CB68DF3.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/7215.clip_5F00_image014_5F00_thumb_5F00_5CB68DF3.png" width="316" height="200" /></a><strong></strong></p>  <p>k. once you add the 2 templates, they are going to be displayed under classic administrative templates.</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/7585.clip_image016_1563C8B2.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/7585.clip_5F00_image016_5F00_1563C8B2.jpg"><img title="clip_image016" style="display: inline; background-image: none;" border="0" alt="clip_image016" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/5556.clip_image016_thumb_0B322E45.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/5556.clip_5F00_image016_5F00_thumb_5F00_0B322E45.jpg" width="469" height="334" /></a></p>  <p>&#160;</p>  <p>l. let’s start by configuring the site assignment one.</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/4353.clip_image018_11E7C879.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/4353.clip_5F00_image018_5F00_11E7C879.jpg"><img title="clip_image018" style="display: inline; background-image: none;" border="0" alt="clip_image018" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/1172.clip_image018_thumb_756D6749.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/1172.clip_5F00_image018_5F00_thumb_5F00_756D6749.jpg" width="356" height="328" /></a><strong></strong></p>  <p><strong>Note* This will add the following value to the registry, just make sure you create and deploy this GPO to the right OU and clients.</strong></p>  <p>m. Let’s modify the ConfigMgr Deployment setting, on here I will be entering the following command line /mp:cmsite.ninja.contoso.com /logon SMSSITECODE=MI6 /source:”\\CMDC\ClientGPO”</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/2022.clip_image020_151ED1C3.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/2022.clip_5F00_image020_5F00_151ED1C3.jpg"><img title="clip_image020" style="display: inline; background-image: none;" border="0" alt="clip_image020" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/0456.clip_image020_thumb_749A22C1.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/0456.clip_5F00_image020_5F00_thumb_5F00_749A22C1.jpg" width="372" height="343" /></a><strong></strong></p>  <h4>The end results:</h4>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/1768.clip_image022_4A4D7B97.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/1768.clip_5F00_image022_5F00_4A4D7B97.png"><img title="clip_image022" style="display: inline; background-image: none;" border="0" alt="clip_image022" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/1222.clip_image022_thumb_4E5A5A1A.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/1222.clip_5F00_image022_5F00_thumb_5F00_4E5A5A1A.png" width="371" height="279" /></a></p>  <h3>3. Software update deployment:</h3>  <p>This installation method requires a little trick. The first thing we need to do is to enable this method on the console.</p>  <h4>Steps to configure software update deployment</h4>  <ol>   <li>In the Configuration Manager console, click <b>Administration.</b></li>    <li>In the <b>Administration</b> workspace, expand <b>Site Configuration</b>, and then click <b>Sites</b>.</li>    <li>In the <b>Sites</b> list, select the site for which you want to configure software update-based client installation.</li>    <li>On the <b>Home</b> tab, in the <b>Settings</b> group, click <b>Client Installation Settings</b>, and then click <b>Software Update-Based Client Installation</b>.</li>    <li>In the <b>Software Update Point Client Installation Properties</b> dialog box, select <b>Enable software update-based client installation</b> to enable this client installation method.</li>    <li>If the client software on the System Center 2012 Configuration Manager site server is a later version than the client version stored on the software update point, the <b>Later Version of Client Package Detected</b> dialog box opens. Click <b>Yes</b> to publish the most recent version of the client software to the software update point.</li> </ol>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/1777.clip_image025_396B6858.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/1777.clip_5F00_image025_5F00_396B6858.jpg"><img title="clip_image025" style="display: inline; background-image: none;" border="0" alt="clip_image025" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/2627.clip_image025_thumb_6AF9669E.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/2627.clip_5F00_image025_5F00_thumb_5F00_6AF9669E.jpg" width="412" height="434" /></a></p>  <table cellspacing="3" cellpadding="0" border="0"><tbody>     <tr>       <td>Note* If the client software has not been previously published to the software update point, this box will be blank.</td>     </tr>      <tr>       <td>&nbsp;</td>     </tr>   </tbody></table>  <ol>   <li>To finish configuring the software update point client installation, click <b>OK</b>.</li> </ol>  <p>Then it will contact the WSUS and push out the following package to it.</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/3568.clip_image027_038B94A0.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/3568.clip_5F00_image027_5F00_038B94A0.png"><img title="clip_image027" style="display: inline; background-image: none;" border="0" alt="clip_image027" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/8836.clip_image027_thumb_1C1DC2A1.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/8836.clip_5F00_image027_5F00_thumb_5F00_1C1DC2A1.png" width="508" height="140" /></a></p>  <p>Once published you will need to configure a group policy to point out all your clients to the SUP Server, here are the steps to configure that group policy.</p>  <ol>   <li>Use the Group Policy Management Console to open a new or existing Group Policy Object.</li>    <li>In the console, expand <b>Computer Configuration</b>, expand <b>Administrative Templates</b>, expand <b>Windows Components</b>, and then click <b>Windows Update</b>.</li>    <li>Open the properties of the setting <b>Specify intranet Microsoft update service location</b>, and then click <b>Enabled</b>.</li>    <li>&#160;<a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/5141.clip_image028_7479D727.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/5141.clip_5F00_image028_5F00_7479D727.png"><img title="clip_image028" style="display: inline; background-image: none;" border="0" alt="clip_image028" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/3005.clip_image028_thumb_219154A7.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/3005.clip_5F00_image028_5F00_thumb_5F00_219154A7.png" width="473" height="264" /></a></li>    <li>In the box <b>Set the intranet update service for detecting updates</b>, specify the name of the software update point server that you want to use and the port. These must match exactly the server name format and the port being used by the software update point:       <ul>       <li>If the Configuration Manager site system is configured to use a fully qualified domain name (FQDN), specify the server name by using FQDN format.</li>        <li>If the Configuration Manager site system is not configured to use a fully qualified domain name (FQDN), specify the server name by using a short name format.</li>     </ul>   </li> </ol>  <p>Note* To determine the port number that is being used by the software update point, see <a href="http://technet.microsoft.com/en-us/library/hh237371.aspx">How to Determine the Port Settings Used by WSUS</a>.</p>  <ol>   <li>Example: <b>http://cmsite.ninja.contoso.com:8530</b></li>    <li>In the box <b>Set the intranet statistics server</b>, specify the name of the intranet statistics server that you want to use. There are no specific requirements for specifying this server. It does not have to be the same computer as the software update point server, and the format does not have to match if it is the same server.</li> </ol>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/8176.clip_image030_62C1EEAF.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/8176.clip_5F00_image030_5F00_62C1EEAF.jpg"><img title="clip_image030" style="display: inline; background-image: none;" border="0" alt="clip_image030" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/4721.clip_image030_thumb_0FD96C2F.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/4721.clip_5F00_image030_5F00_thumb_5F00_0FD96C2F.jpg" width="438" height="402" /></a></p>  <ol>   <li>Assign the Group Policy Object to the computers on which you want to install the Configuration Manager client and receive software updates.</li> </ol>  <h4>The end results:</h4>  <p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/0871.clip_image032_1622D36E.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/0871.clip_5F00_image032_5F00_1622D36E.jpg"><img title="clip_image032" style="display: inline; background-image: none;" border="0" alt="clip_image032" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/86/73/metablogapi/6607.clip_image032_thumb_45081603.jpg" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-86-73-metablogapi/6607.clip_5F00_image032_5F00_thumb_5F00_45081603.jpg" width="452" height="340" /></a></p>  <p>On the next check for missing updates they will find the configmgr client as important update.</p>  <h4>Summary</h4>  <p>Depending on your ConfigMgr site, one installation method will be more than enough for others you may need more than one method to achieve a higher number of client installs.</p>  <h4>What’s your favorite client install method?</h4> <!--aiospwlwbstart
aiosp_title=Top 3 ConfigMgr 2012 Client Installation Method
aiosp_keywords=ConfigMgr 2012 Client Install, ConfigMgr 2012, 100% of client installs
aiosp_description=ConfigNinja Blog on Top 3 ConfigMgr Client Installation Methods
aiospwlwbsend-->    <p>Santos Martinez - Premier Field Engineer – ConfigMgr and Databases</p>  <p><strong>Disclaimer:</strong> The information on this site is provided &quot;AS IS&quot; with no warranties, confers no rights, and is not supported by the authors or Microsoft Corporation. Use of any included script samples are subject to the terms specified in the <a href="http://www.microsoft.com/info/cpyright.mspx">Terms of Use</a></p>]]></content:encoded>
    </item>
  </channel>
</rss>