Archive for January, 2013

Free ebook: Introducing Microsoft SQL Server 2012

January 21, 2013

The final and complete version of Introducing Microsoft SQL Server 2012, by Ross Mistry (@RossMistry) and Stacia Misner (@StaciaMisner), is now ready as a free download! You can download the PDF version of this title here (288 pages; 10.8 MB).

We will update this post soon with links to EPUB and MOBI files. We expect these files to be available by March 23. UPDATE: The EPUB is here, and the MOBI is here.

If you prefer a hard copy of the book, you can order it here for $14.99.

Introducing Microsoft SQL Server 2012 includes 10 chapters:

PART I   DATABASE ADMINISTRATION (by Ross Mistry)

1.   SQL Server 2012 Editions and Engine Enhancements

2.   High-Availability and Disaster-Recovery Enhancements

3.   Performance and Scalability

4.   Security Enhancements

5.   Programmability and Beyond-Relational Enhancements

PART II   BUSINESS INTELLIGENCE DEVELOPMENT (by Stacia Misner)

6.   Integration Services

7.   Data Quality Services

8.   Master Data Services

9.   Analysis Services and PowerPivot

10.   Reporting Services

Please help us share the news about this ebook. And enjoy!

LinkedIn integration for Microsoft Dynamics CRM 2011

January 20, 2013

Installation guide: http://www.linkedin.com/static?key=installation_guide_dynamics

  • View a lead or contact and automatically see his or her LinkedIn profile and company profile on the same page.
  • You can also search for your lead or contact, and once you’ve connected the lead or contact to a LinkedIn profile, the profile will be visible for all users in your environment.
  • You can search for your lead or contact’s company, and once you’ve connected the company to a LinkedIn company profile, the profile will be visible for all users in your environment.
  • View an account or opportunity and automatically see the LinkedIn company profile on the same page.
  • View an activity stream for each of your accounts and opportunities.
  • Narrow down the activity stream to only show activity from contacts in your accounts.

Free ebook: Programming Windows 8 Apps with HTML, CSS, and JavaScript

January 15, 2013

You can download the ebook in PDF format here: http://go.microsoft.com/FWLink/?Linkid=270056 (17.9 MB)

EPUB format is here: http://go.microsoft.com/FWLink/?Linkid=272592 (37.3 MB)

MOBI format is here: http://go.microsoft.com/FWLink/?Linkid=272591 (69.5 MB)

The ebook’s companion content is here: http://go.microsoft.com/FWLink/?Linkid=270057 (59.9 MB) (Note: An updated version of the companion content was made available on November 8, 2012, to fix a line of code.)

Free Microsoft eBooks

January 10, 2013

Large collection of Free Microsoft eBooks for you, including: SharePoint, Visual Studio, Windows Phone, Windows 8, Office 365, Office 2010, SQL Server 2012, Azure, and more.

Another large collection of Free Microsoft eBooks and Resource Kits for you, including: SharePoint 2013, Office 2013, Office 365, Duet 2.0, Azure, Cloud, Windows Phone, Lync, Dynamics CRM, and more.

How to fix 404 not found on SharePoint 2010 browsing User Profile page _layouts/userdisp.aspx

January 9, 2013

The userdisp.aspx page code needs to be changed on any servers providing web application services for the site (the web front ends, for example). On the servers, navigate to C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\LAYOUTS. Make a copy of the userdisp.aspx file – just in case, so you’ll have something to revert back to! Open the original using Notepad. Look for Scope=”Farm” and change Farm to Web so that it reads Scope=”Web”. Save and close. Repeat on all web servers

How to colorize grid rows based on some conditions in Microsoft Dynamics CRM 2011

January 4, 2013

In CRM 2011, I found a way to add color to entities grids using the ribbon, even  if there are still two limitations:

1) This is still not supported (as I browse and change DOM as you will see below) but does not required access to the  filesystem
2) Ribbon element that helps me to colorize the grid view can’t be hidden and it is useful just to add color, it should then not be  visible…

To accomplish this you need to perform three tasks

1) Add Ribbon Button

This button is added in the HomePageGrid of an case entity (but could also be added to SubGrid). It has an Enable rule that perform the grid colorization and returns always false to be deactivated. This is the last remaining difficulty, the SDK doesn’t allow to use a customRule to manage DisplayRule, so we can just deactivate the button.

<RibbonDiffXml>
<CustomActions>
<CustomAction
Id=”Mscrm.HomepageGrid.incident.MainTab.Actions”
Location=”Mscrm.HomepageGrid.incident.MainTab.Actions.Controls._children”
Sequence=”20″>
<CommandUIDefinition>
<Button
Id=”Mscrm.HomepageGrid.incident.Colorization.Button”
Command=”Mscrm.HomepageGrid.incident.Colorization.Button.Command”
CommandType=”General” Image32by32=”/_imgs/Ribbon/Actions_32.png”
LabelText=”Colorize” Sequence=”22″ TemplateAlias=”o1″
/>
</CommandUIDefinition>
</CustomAction>

</CustomActions>
<Templates>
<RibbonTemplates
Id=”Mscrm.Templates”></RibbonTemplates>
</Templates>
<CommandDefinitions>
<CommandDefinition
Id=”Mscrm.HomepageGrid.incident.Colorization.Button.Command”>
<EnableRules>
<EnableRule
Id=”ColorizeRule” />
</EnableRules>
<DisplayRules
/>
<Actions
/>
</CommandDefinition>
</CommandDefinitions>
<RuleDefinitions>
<TabDisplayRules
/>
<DisplayRules>
<DisplayRule
Id=”testRule”>
<CrmClientTypeRule
Default=”false”
InvertResult=”false”
Type=”Outlook”
/>
</DisplayRule>
</DisplayRules>
<EnableRules>
<EnableRule
Id=”ColorizeRule”>
<CustomRule
Default=”true”
InvertResult=”false”
FunctionName=”load”
Library=”$webresource:mctools_/ColorView/jQuery_1_7_1.js”
/>
<CustomRule Default=”true” InvertResult=”false” FunctionName=”load”
Library=”$webresource:new_jQuery_1_7_1″ />
<CustomRule Default=”false”
InvertResult=”false” FunctionName=”load”
Library=”$webresource:new_case_colour_enabled”>
<CrmParameter
Value=”SelectedControlAllItemReferences” />
<CrmParameter
Value=”SelectedControl”
/>
</CustomRule>
</EnableRule>
</EnableRules>
</RuleDefinitions>
<LocLabels
/>
</RibbonDiffXml>

2) jQuery library

Download the latest version from jQuery web site and add a new function to permit load of this script file from ribbon. jQuery will help us writing faster code…

3) A custom library

The custom library has a unique function with two parameters:
A list of entityReference that contains the grid elements displayed
The grid control itself

Script File we are using is

function load(items,grid)
{
try
{
if(items)
{
var
index = $(“#gridBodyTable”).find(“col[name=gendercode]”).index();
/*//to colour a specific cell of grid row
var a
=
document.all[‘crmGrid’].InnerGrid.AllRecords;
alert(a);
alert(a.length);
for
(var i=0; i <a.length;
i++)
{
alert(a[i][a[i].length-1].cells[3].innerText);

if(a[i][a[i].length-1].cells[3].innerText==’Homme’)
{
a[i][a[i].length-1].cells[3].style.backgroundColor=’CCFF33′;
}
if(a[i][a[i].length-1].cells[3].innerText==’Femme’)
{
a[i][a[i].length-1].cells[3].style.backgroundColor=’FF9966′;
}

}*/

/*
$(‘table
tr :nth-child(3)’).css(‘background-color’, ‘red’);
$(‘table tr
:nth-child(3)’).innerHtml();
var myValue =
$(this).parents(‘tr:first’).find(‘td:eq(4)’).text();

*/
//To colour a grid row
for(var
i=0;i<items.length;i++)
{
var id =
items[i].Id;

$(grid._element).find(“tr[oid='” + id +
“‘]”).each(function()
{
var theTr =
$(this);

//alert(theTr);
//alert(theTr.find(“td:nth-child(4)”)[0].innerText);
//theTr.find(“td:nth-child(”
+ (index/1 + 1/1) +
“)”)[0].innerText

if(theTr.find(“td:nth-child(5)”)[0].innerText.indexOf(“Normal”)
>=
0)
{
theTr.find(“td”).css(“background-color”,”lightblue”);
}
else
if(theTr.find(“td:nth-child(5)”)[0].innerText.indexOf(“Low”) >=
0)
{
theTr.find(“td”).css(“background-color”,”pink”);
}
else
if(theTr.find(“td:nth-child(5)”)[0].innerText.indexOf(“High”) >=
0)
{
theTr.find(“td”).css(“background-color”,”red”);
}
});
}
}
}
catch(e)
{
alert(e.description);
}
}