Kategoriarkiv: SharePoint 2010

scriptcs and SharePoint. How SharePoint can benefit?

scriptcs-002

scriptcs-001

Last Saturday I attended Leetspeak. Among many awesome speeches and presentations I discovered scriptcs.

scriptcs

scriptcs lets you write C# code directly in the console, or execute scripts written with just your favourite editor. Please see more about it on the site. What I thought during Justin Rusbatch’s session at Leetspeak:

Can we use scriptcs in SharePoint?

Technically there is no limitations in SharePoint for scriptcs. Any .NET code can be registered, imported and invoked in a console or in a standalone script. Here is the simple code for instantiating a site collection and disposing it:

The code above does not do anything, it is just there to demonstrate how you can register the SharePoint assembly (“Microsoft.SharePoint”) and import it into the script:

The example shows even that you in scriptcs no longer need the necessary “boilerplate” (compared to a console application): namespace, Program, Main()… You can just directly write your code.
The rest is the same as in a C# application. The code samples for scriptcs can be any code written in C# for SharePoint, code from custom console applications, from feature receivers, you name it. So my next question is:

How can SharePoint development benefit from scriptcs

I can think about these advantages with scriptcs in SharePoint:

  • Less need of PowerShell. As a developer you can use one language for creating SharePoint solutions and server configurations.
  • You don’t need to rewrite your C# code to PowerShell. It saves time. Often one can see two solutions: one for C#, one for PowerShell, example.
  • You can freely move code from feature receivers to scripts, like timer job installation, without rewriting code, example.
  • You can use scriptcs to discover the SharePoint API, site columns, sites, fields and so on. PowerShell can be used as well. But scriptcs lets you use the same syntax. PowerShell is much different. It is not case sensitive. It often doesn’t throw NullReferenceException, it just doesn’t output anything. So if you use PowerShell as an exploratory tool, then you still will need to verify it in a C# code to verify, that your code works. With scriptcs you can directly copy the code from console directly to your code solution.

Of course, if there are advantages, then it must be some disantvantages.

Shortcomings of scriptcs in SharePoint?

I have found these shortcomings

  • Missing powerful cmdlets for SharePoint (special “shortcuts” for configuration steps of SharePoint like New-SPWeb, Set-SPEnterpriseSearchService…)
  • Missing native functionality in PowerShell for parsing xml, importing and exporting to csv and xml, a very easy way to read and write files on disk.
  • There are already tons of PowerShell scripts written for SharePoint in companies and in the community. Mixing a huge amount of PowerShell with little scriptcs can increase complexity.
  • scriptcs is still new. It is not adopted by Microsoft and maybe will not be approved in your project.

So what do you think about scriptcs and SharePoint?

Would you use scriptcs in your SharePoint project? Leave a comment or send me a tweet.

javascript: Alert Me on a Page

alertme-001
Recently I needed to add an Alert Me link on Pages. Alert Me is a well known SharePoint functionality for notifying users about changes in list or list items. It is availabe in OOB SharePoint as a command in Ribbon if you go to a list view:

alertme-002

When you click on this ribbon command, SharePoint opens a modal dialog and takes you to layouts page: SubNew.aspx. To open a modal dialog and load a page is not a rocket science. So a custom “Alert Me” link is doable.

As the first step I copied the html markup from the ribbon and adjusted it a little bit.

Then the javascript code which gets the List ID and Page ID is very simple because this information is there in the magic _spPageContextInfo:

This code will open a modal dialog in exactly the same way as the ribbon command in OOB SharePoint and let you subscribe to changes on that page. In this code I use String.format which is available on SharePoint pages and _spPageContextInfo which has existed since SharePoint 2010 and has been extended with more useful information about the current context.

Business Intelligence med SharePoint

Sharepoint_business-intelligence_1

Idag är Business Intelligence (BI) en naturlig del i de flesta moderna organisationers arbete. Genom att på ett tydligt sätt visualisera viktig data ges beslutsfattare och analytiker större möjligheter att förstå den egna organisationen och dess omvärld. Detta leder i sin tur till att bättre beslut kan fattas snabbare, och organisationen kan satsa på rätt initiativ och åtgärder vid rätt tidpunkt. Det kan till exempel handla om att visa försäljningsstatistik per produkt, region, säljare, land etc. för att avgöra vilka som ska investeras i eller vilka som behöver stimuleras, eller så kan det handla om att göra prognoser för potentiella åtgärder för att se vilken som är mest lönsam att satsa på för tillfället.

Business Intelligence i SharePoint

Trots att området Business Intelligence är väletablerat används ofta föråldrade och krångliga lösningar och verktyg. Ett klassiskt exempel för många organisationer är en stor samling Excel-filer med tabeller och grafer som finns i många versioner och distribueras via E-post eller görs tillgängliga genom filservrar där de organiseras i mappar. Känner du igen dig?

SharePoint hjälper till att tillgängliggöra och hantera gamla Excel-lösningar genom att samla dokumenten i bibliotek, och på så sätt utnyttja SharePoints funktioner för versions- och rättighetshantering m.m. På så sätt blir det lättare att göra viktig information tillgänglig för rätt person vid rätt tillfälle, och samtidigt minska risken för att filer sprids åt olika håll och hamnar i orätta händer. Med Excel Services blir Excel-filer dessutom tillgängliga att läsa direkt i webbläsaren, eller som datakälla till SharePoints graf-webbdel eller rapporter i PerformancePoint. På så sätt behövs inte ens ett program som kan läsa filerna vara installerat.

Sharepoint_business-intelligence_2

För ännu mer kraftfulla lösningar kan man även använda PowerPivot för SharePoint för att möjliggöra hanteringen av Excel-filer med dynamiska databaskopplingar som hämtar och bearbetar verksamhetsdata i realtid från avancerade Kub-databaser.

SharePoint kan också helt ersätta gamla Excel-lösningar med hjälp av PerformancePoint – en kraftfull tjänst för att skapa, administrera och publicera rapporter, KPI:er och styrkort mm. Med programmet Dashboard Designer kan BI-ägare själva skapa och underhålla sina BI-lösningar och hålla dem uppdaterade allteftersom organisationen utvecklas.

Dashboard Designer är verktyget som låter dig skapa och underhålla din organisations Business Intelligence på ett enkelt sätt. Upptäck en rad olika grafiska möjligheter att visa just din verksamhets data, från en uppsjö av datakällor.

Tjänster för Business Intelligence i och för SharePoint

– PerformancePoint Services
– Excel Services
– Visio Services
– PowerPivot för SharePoint
– Analysis Services
– Reporting Services och Report Server

Kundcase

Under ett projekt som fortlöpt under våren 2013 levererade Bool inte endast BI-komponenter till en kund, utan även utbildning i hur de själva kan jobba vidare med lösningen. Genom att under en serie workshops sitta tillsammans med kunden och låta dem själva delta i utvecklingen kunde vi dela med oss av vår erfarenhet på ett lyckat sätt. Detta medförde även att lösningen kunde växa fram allteftersom kundens egen kunskap ökade, och att de på så sätt bättre kunde avgöra vilka deras behov var. Resultatet blev inte bara att en BI-lösning implementerades, utan även att kunden idag själv har kunskapen att underhålla och vidareutveckla lösningen.