There will be 2 coding sessions, 1 for Day Birds from 10am – 4pm and one for Night Owls from 6pm – 12am. You can join us for one or both sessions. Build an app, have fun and go home with a fantastic prize!
Don’t forget to register.
There will be 2 coding sessions, 1 for Day Birds from 10am – 4pm and one for Night Owls from 6pm – 12am. You can join us for one or both sessions. Build an app, have fun and go home with a fantastic prize!
Don’t forget to register.
In SharePoint 2007 you had two options when you needed to create a new template for a SharePoint site:
In SharePoint 2010, there is a new replacement and improved framework for handling site templates. When you save a site as template it will create a normal SharePoint Solution Package (a wsp file – if this is new for you take a look at WSP – SharePoint Solution Files). The new webtemplate feature allows you to build a “site definition” which is scoped to a site collection – this way you can built templates of a site and still deploy them to the SharePoint solution gallery in sandbox mode.
Every webtemplate is based on an existing site definition – listed below is a code sample using the minimal set of attributes that you have to use when creating a new webtemplate.
<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<WebTemplate
BaseTemplateID="1"
BaseTemplateName="STS"
BaseConfigurationID="1"
Name="JOPX"
Title="JOPX WebTemplate"
>
</WebTemplate>
</Elements>
The WebTemplate has to reference the Template (BaseTemplateName) and the configuration of the site definition (BaseConfigurationId) the template is based on.
The example on MSDN How to: Create a webtemplate starts from importing an existing saved webtemplate but in some cases it is easier to start from an empty SharePoint project and manually adding a elements.xml incorporating the webtemplate feature as well as the ONET.XML from the site definition from which you want to start.
References:
After having installed Visual Studio 2012 together with the Microsoft Office Dev Tools which are distributed with the Web Platform Installer 4.0 (Just search for Office within Web PI) you can start building your first SharePoint 2013 apps. There is only one project type for building SharePoint 2013 apps.
After having selected the SharePoint 2013 app template, you will need to decide what type of app you want to build.
Let’s start with exploring what is included in the Visual Studio 2012 project after you have selected SharePoint hosted app.
Visual Studio 2012 SharePoint 2013 App structure:
If you take a look at default.aspx you will notice the following javascript snippet added in to the page – this is quite important – and provides the binding with the business logic which is added into app.js
1: <script type="text/javascript">
2: $(document).ready(function () {
3: SP.SOD.executeFunc('sp.js', 'SP.ClientContext', function () { sharePointReady(); });
4: }); 5: </script>The snippet above uses the jQuery document ready event handler – “ $(document).ready(function())” to call SP.SOD.ExecuteFunc(). This is an example of a common pattern in Javascript called anonymous function calls. SP.SOD.ExecuteFunc(key,functionname,fn) ensures that the specified file - sp.js - that contains the specified function – SP.ClientContext - is loaded and then runs the specified callback.
So when both the DOM and SP.js are loaded and the ClientContext object is initialized the code will call the sharePointReady() function which is located in App.js.
If you look at the code in App.js – you will notice that the general way of working with the Javascript Client Object Model hasn’t changed a lot in SharePoint 2013.
1: // The code creates a context object which is needed to use the SharePoint object model
2: function sharePointReady() {
3: context = new SP.ClientContext.get_current();
4: web = context.get_web(); 5: 6: getUserName(); 7: }References:
One of the challenges of designing a good search solution is understanding the range of different search requirements from users. When you look at the Google search screen (or a SharePoint search center screen for that matter) it is quite minimalistic. The trick is to look for the intention of the user who is performing a search operation.
So what is the user looking for?
Key in delivering a good search result is the fact whether the search engine has understood the unstated question. Traditional metrics which are commonly used to measure the efficiency and effectiveness of search are the following:
The measure with which it all start is relevance – and relevancy is dependent on the intent of the user. In any organization there will be a range of different search requirements from users, depending on the purpose for which they are searching. If you are serious about building a good search experience you should identify common tasks that user are trying to achieve when performing a search. These requirements are best identified though the development of search personas and scenarios. For more information on identifying personas and search information design take a look at the links listed below:
Don’t forget to mark September 12th 9:30 AM Pacific Time (for Belgium – 18:30 PM) in your agenda and follow the Visual Studio 2012 Virtual Launch event on http://www.visualstudiolaunch.com
In SharePoint 2010 the Client Side Object Model (CSOM) was made available through the _vti_bin/client.svc. Client.svc wasn’t really build to be accessed directly but calls would go through supported entry points (proxies) being the 3 flavours of the CSOM:
Unfortunately the Javascript CSOM was harder to use then the managed version and also more limited in functionality. SharePoint 2010 also provided oneREST/oData enabled service called ListData.svc also referred to as WCF Data Services (See Introduction to oData and SharePoint Server 2010 for more info)
In SharePoint 2013 the client.svc service is extended with REST capabilities and it now support direct access from REST clients which makes it easier for javascript and non .NET code to access it. There is also a new shorthand notation for accessing the REST API where CSOM URLs can go through the _api folder.
This means that you can now replace
http://sharepoint/_vti_bin/client.svc/web
with
The new SharePoint 2013 REST API follows the oData protocol specification but also extends it in some ways to support more complex SharePoint specific operations. The SharePoint 2013 Preview REST service responses are formatted by using the Atom protocol by default. But it is also possible to use HTTP Accept headers that enable you to specify that the response is returned in JSON format which is easier to use in Javascript code.
Since a number of REST calls are simple GET operations it is possible to learn the syntax by creating the URL in a browser and looking at the ATOM response being returned. Next are a number of examples to get you started:
In a next post I’ll explore the extensions in the REST API for SharePoint Server 2013.
More information:
There is lot of hours of video material available around building apps for SharePoint – check out SharePoint 2013 Developer training videos for all modules. To get you started you should with SharePoint 2013 app development, you should definitely take a look at the following modules (in total around 7 hours of training material around SharePoint 2013 app development alone)
Happy SharePoint-ing
In SharePoint 2013 everything is an app now … but in strict sense apps are a new way to build and deliver self-contained pieces of functionality that extend the capabilities of a SharePoint site. Apps will be installable by site owners from either the SharePoint Store or from a private App catalog which is setup within your SharePoint 2013 environment.
The SharePoint Store (or marketplace) will be a public App Store which will allow you to publish your Apps world-wide and sell them through this new channel.
So how do you get started:
Other links which might be of interest:
I will be presenting a MSDN Belux Webcast on Tuesday , September 04, 2012 around the new App model in SharePoint Server 2013.
SharePoint 2013: to app or not to app?
SharePoint 2013 introduces a new mechanism for custom code solutions with the new App model. In this session, we'll examine why SharePoint Apps have been introduced and how it compares with the standard solution deployment model, the different architecture models and which technologies are used in the App model. We will also look in to the enhancements in the Client Side Object Model and the new REST API which will help you build SharePoint Apps. During this session the different scenarios are outlined using demos and after this session attendees will be ready to build Apps in SharePoint 2013.
Don’t forget to register for the MSDN Webcast – SharePoint 2013: to app or not to app? It is free.
If you want to build a client application for SharePoint Online such as a Windows 8 Metro App or a Windows Phone 7 app you will need to understand how active authentication works in Office 365 – a great background article on this is How to do active authentication to Office 365 and SharePoint Online which has a code sample listed below the blog post. This code sample uses the Microsoft.IdentityModel.dll which is part of Windows Identity Foundation and which you can normally find underneath - <drive>:\Program Files\Reference Assemblies\Microsoft\Windows Identity Foundation\v3.5\Microsoft.IdentityModel.dll
But since there is no version of Windows Identify Foundation available for the Windows Phone platform so you will need to create the SAML sign-in request programmatically if you want to build a Windows Phone 7 client for SharePoint Online. You can start by taking a look at the code sample Claims-SPOnline from Edin Kapic which does exactly that in a scenario with Windows 8. Unfortunately the code will become quite a lot more complex once you try to port it over to Windows Phone 7 since you can’t use the new async/await keywords which were introduced with .NET 4.5.
So if anyone has written a generic framework for authenticating against SharePoint Online from a Windows Phone 7.x – please leave a comment.
I recently installed Visual Studio 2012 Ultimate on my machine and now every time that I open Excel 2010 - I get a message "Please wait while Windows configures Microsoft Visual Studio Professional 2012..." and then I have to wait for 20 seconds…
The same thing happens with PowerPoint 2010. One of the workarounds seems to be to disable some of the COM add-ins which are added by Visual Studio 2012.
For Excel 2010:
For PowerPoint 2010:
This seems to work for the moment – although the definite solution might be something else.
One of the hurdles you will be facing when building a Windows Phone 7 application which needs to integrate with SharePoint Server 2010 is the fact that WP7 does not support NTLM windows authentication. There are currently two different options:
For more information check out Security with SharePoint and Windows Phone Applications which is part of the SharePoint 2010 and Windows Phone 7 Training kit.
These are the two official ways of doing it but I recently found a third option where you can access your SharePoint site from Windows Phone 7 using basic authentication as outlined on Darrin Bishop’s blog.
If you need to login to tfs.codeplex.com from Visual Studio you will need to use the following user name - SND\myusername_cp as login. The domain is SND and you need to add extra _cp to the end of the user name that you use to normally login to www.codeplex.com
I have two copies of Microsoft SharePoint 2010 Business Application Blueprints to give away to two lucky winners.
How you can win:
To win your copy of this book, all you need to do is come up with a comment below highlighting the reason "why you would like to win this book”.
The contest is valid until the end of July, and is open to everyone. Winners will be selected randomly on the basis of their comment posted below.
Microsoft SharePoint 2010 Business Application Blueprintsis written by Mike Oryszak, and highlights details on building SharePoint solutions based on real-life scenarios that you will encounter within your own organization or at your customers. These scenarios range from building an engaging community site to building a site directory with SharePoint search. It is written in an easy-to-understand style and is targeted at SharePoint developers, consultants, and administrators who want to
build a range of SharePoint solutions that extend the SharePoint platform, and see how to apply the many available SharePoint features in different business scenarios.
Chapter outline:
Reference links:
In Office 2013 the Microsoft Office Outlook Hotmail connector is not supported anymore instead you should be using Exchange ActiveSync. You should follow these steps to connect Outlook 2013 to Hotmail:
A couple of months ago two university students organized a survey around SharePoint User Adoption in Belgium. The results are now in and with over 130 respondents it gives a interesting view upon how SharePoint deployments are perceived in Belgium. The full report is only available in Dutch but here are some interesting facts and numbers that I want to share:
The full report is available as well – Onderzoek naar de tevredenheid en implementatie van SharePoint in België (Available in Dutch only)
The Content Query Web Part is one of the most powerful web parts which is provided by the SharePoint Server Publishing Framework (it is not available with SharePoint Foundation). It allows you to roll up information within a SharePoint site collection for display on a web page by letting you build queries through simple configuration of the different available web part properties. The Content Query web part leverages caching and performance optimization techniques and avoids the use of custom code.
While the out of the box CQWP is quite powerful you will see some that in most cases you will need extra configuration and customization. This has however become a lot simpler in SharePoint 2010 by the introduction of slots. So how does this work. Steps to get going:
<property name="ItemXslLink" type="string">/Style Library/XSL Style Sheets/customitemstyle.xsl</property>
Once you define slots in the itemstyle.xsl these are picked up by the Content Query Web Part and shown in the web part tool pane so that you can map these to specific fields. Using the “slots” concept you can define reusable XSL templates. This also means that you don’t need to use the “CommonViewfields” property anymore as defined in SharePoint Server 2007 – this is a thing of the past (See Displaying Custom Fields in Content Query Web Parts in Office SharePoint Server 2007)
If you want to delve a little deeper and see some practical examples of the Content Query Web Part check out these links:
The audit feature in SharePoint is used to track what actions users are taking within your SharePoint Server 2010 environment. It is typically activated to comply with compliance guidelines governing your business or the sector in which your organization is operating.
Compliance is the process of adhering to a set of established guidelines or rules established by external bodies such as government agencies or by internal corporate policies.
Auditing can be activated on multiple levels in SharePoint:
After activating auditing in SharePoint Server 2010 (SharePoint Foundation does not expose this functionality through the user interface) you will be able to generate reports on the audit data using reports which are generated in Excel. These Excel reports typically contains two worksheets, one with a pivot table to provide reporting capability and a second one containing detail information such as the SiteId, ItemId, Item Type,User Id,Document location,Occurred (Datetime),Event (e.g. Security Group Member Add),Event source,Source Name,Event Data. The scope of the audit reports is the current site collection only.
You should be careful when activating auditing and just checking all audit event types since every action which needs to monitored will add a new row of audit data. Auditing data is stored in the AuditData table of the SharePoint content database (Remember that a site collection is stored in one database – so when you have multiple database):
Use the following guidelines to estimate the space you will need to reserve for auditing data:
Source: TechNet Storage and SQL Server Capacity planning and configuration (SharePoint Server 2010)
Fortunately SharePoint also provides the ability to automatically trim audit logs and only keep audit data for a limited number of days with the option to either delete the audit data or export it to a document library in Excel format.
You can also install it locally:
http://www.microsoft.com/resources/TechNet/en-us/Office/media/WindowsPowerShell/WindowsPowerShellCommandBuilder.html