Posts

Information Architecture - How to Start a Smart Conversation

When you are thinking to move away from network file shares and heading towards utilizing a document management platform such as SharePoint, starting the conversation is often the hardest part. My blog post on State Of Matter website discusses an approach to initiate a document managemenent conversation and to design an effective information architecture using mind mapping. Click through to read... http://www.superfluid.com.au/articles/2017/3/22/information-architecture-how-to-start-a-smart-conversation

The Tue Digital: Documents in SharePoint

If you are one of many organisations still using network folders to organise company documents, my latest blog is for you. Check it out on State of Matter website: http://www.superfluid.com.au/articles/2017/1/13/the-true-digital-documents-in-sharepoint

Power to You - Building Mobile Apps for your Business using Microsoft PowerApps

Checkout my latest blog post on using Microsoft PowerApps: http://www.superfluid.com.au/articles/2016/12/20/power-to-you-building-apps-for-your-business-using-powerapps

SharePoint 2013 Design Manager Converted Master Page & Focus on Content

Image
Lets suppose a designer creates the design concepts first in html and then we try to convert the html into SharePoint 2013 Master Page using Design Manager. All goes well if your html meets the basic requirements detailed in the MSDN Article http://msdn.microsoft.com/en-us/library/jj822370.aspx . One problem I noticed is that "Focus On Content" functionality (as shown below) which hides the Quick launch bar, does not work properly. For focus on content functionality to work, a DIV with ID "contentBox" should be the outer DIV of the default content DIV because SharePoint uses the "contentBox" id to manipulate left margins as soon as the Quick Launch is hidden. See below screenshot of out of the box Seattle master page html file. Comparing the converted master page html from out of the box Seattle master page html revealed that this outer DIV is missing from the converted file. So, in order to make focus on content ...

Getting Page Field Value in custom publishing page layout

I wanted to create a custom publishing page layout which should render certain UI elements based on the page metadata. For e.g. a page metadata field called "Page Type" being used to display different links on pages (created with the page layout). Surprisingly, first step in the process i.e. reading the page field using SharePoint Javascript API proved to be rather painful as my good friend google wasn't willing to put it on my plate. Finally came up with some code to get this done so sharing below:---- Include this code into your custom publishing page layout to query page metadata fields within the layout: /**************************************************************************************/ var pageItem; //variable for list item of page being displayed (which uses this page layout) var pageFieldNameVar = '[internal name of a custom page field]' ; //variable for page field to be retrieved var context; // This variable will cont...

Read Web.Config settings while using Delay Activity in SharePoint Visual Studio Workflow

Be careful if you ever have to read a web.config setting from a SharePoint visual studio workflow when you are also using Delay activities. When a workflow wakes up from a Delay activity, it’s no longer running in an ASP.Net Worker Process. Instead it’s running in the process for SharePoint Workflow Timer service.  So, the method to read the setting would be different in that case. Your method to read the web.config app settings should be somethink like below: private string GetWebConfigSetting(string settingKey) {     string webconfigSettingValue = String.Empty;       if (ConfigurationManager.AppSettings[settingKey] != null) //reading app setting from web configuration file       {        webconfigSettingValue = ConfigurationManager.AppSettings[settingKey];       }             ...

SharePoint Permission Inheritance – Site versus Library

I learnt this, the hard way recently that SharePoint security inheritance mechanism between "Site and Library" is not the same as "Site and Sub sites". Let's say you have parent site "Parent Site" and its sub site called "Child Site". You break inheritance on "Child Site". Any security changes you make to parent "Parent Site" now, should not affect "Child Site" as it has unique permissions. All good between sites. SADLY it is not the case between Site and document libraries. Let's say you have a site called "ABC Site" which has a document library called "Doc Lib". You assign direct "Contribute" permission to a user "User1" on site level. You break inheritance on "Doc Lib". Now "Doc Lib" has a copy of all permissions (including "User1") from the site and you can add/remove more permission. Now ideally, any security ...