Zlatan's Blog [MVP SharePoint]

SharePoint Saturday – Cape Town #spscpt is going large on the 31st of this month

Just to give you a full overview of all the speakers and sessions, of which we have 6, yes all 6 in one single track, one after another (most events like that you have to pay for), so if you're coming make sure you have plenty of rest and you had enough coffee, because SharePoint fun is bound to last for a while for all you SharePoint enthusiasts, but coming back to the sessions:

We have:

  • Neil van Wyngaard of Airborne Consulting talking about Integrating TFS, MOSS and EPM together,
  • Troy Gerber of Intervate talking about SharePoint out of the box Records management,
  • Willem Burger of Shoprite talking about Custom Treeview Audience Picker implementation in SharePoint
  • Nicolas Blank (Exchange MVP) of Symbiotech talking about Exchange 2010 and associated technologies overview
  • Hilton Giesenow (C# MVP) of 3fifteen talking about Unlocking the Value of Enterprise Search (We have crossed the boundaries of time and matter and we are bringing you this baby from back in the past, that's right, come and see it to believe it)
  • Zlatan Dzinic (SharePoint MVP) of *NDA* talking about SharePoint 2010 *NDA* (come to the Event to see what the *NDA* bit is covering)

5 representatives from the 5 leading Microsoft Gold Partners from Cape Town and (6th) one representative from possibly the largest SharePoint client in Cape Town.

For more details check out http://www.sharepointsaturday.org/capetown/

Hurry up and register before it's too late: http://spscpt.eventbrite.com/

Guaranteed hours of excellent SharePoint (and a wee bit of Exchange) geek fun!!

Registration is open for SharePoint Saturday Cape Town (31st October 2008) #spscpt

Session and Speakers have been selected for the next SharePoint Saturday Cape Town (31st October 2009), together with registration, so if you would like to attend please go to http://www.sharepointsaturday.org/capetown/ and register for the event, also check out your speakers, speaker profiles and details around their sessions.

Please note that we have only 60 tickets allocated due to the limited number of seats at the venue, so hurry up and register now!

Announcing Call For Speakers - SharePoint Saturday Cape Town - Saturday, October 31st, 2009 #SPSCPT

We are currently accepting submissions for speakers for the SharePoint Saturday Cape Town event. If you would like to be considered for the event, please fill out and email back the Call For Speakers document. If you have any questions, please contact us by using the email address provided in the call for speakers document or Contact Us web part on the About page.
 
Please download and email back the Call For Speakers document to be considered.
 
Call For Speakers Expires on the 10th od October 2009

SharePoint Saturday - Cape Town 31 October 2009 #SPSCPT

 

Make sure you don't miss out on this one!!!!!!!!!!!!!!! 

Join SharePoint architects, administrators, developers, and other professionals who work with SharePoint for a special 'SharePoint 2010 Themed Saturday' on October 31st, 2009.  The day will be filled with educational and informative SharePoint 2007 and 2010 sessions and provide you with an excellent opportunity to network with Microsoft MVPs and other SharePoint professionals in Cape Town area. SharePoint Saturday is FREE and is open to the public for registration. Don't miss out - Registration will Open Oct. 10 but make sure you save the date.

This event will be held at Microsoft - Cape Town Offices, more details will be published here: http://www.sharepointsaturday.org/capetown/ 

SharePoint Saturday - Cape Town Site is Now Live!!!!! #SPSCPT

 

Many thanks to Michael Lotter, Hilton Giesenow, Eric Harlan, Joel Oleson and many others for helping me start a first official SharePoint Saturday in South Africa - SharePoint Saturday - Cape Town

Please note that the official twitter tag is #SPSCPT

Got to: http://www.sharepointsaturday.org/capetown

Cape Town SharePoint Saturday held on 8th of August 2009 #spscpt

 

Our first SharePoint Saturday held on 8th of August 2009 was a great success.

http://dotnet.org.za/zlatan/archive/2009/07/27/cape-town-sharepoint-saturday-on-8th-of-august-2009.aspx

Thank you to all that came and above all for your enthusiasm regarding this initiative, big thank you goes to our presenters Joel and Eric who presented the following sessions:

SharePoint Twitter No Code Integration and Crash Course- Joel Oleson

                                                                       
Twitter is becoming the defacto way to keep up on blogs, announcements, and information for the community.  Discuss clients.  Learn out how to search, filter, and integrate the best into SharePoint.


Preparing to Upgrade to SharePoint 2010 Today- Joel Oleson


A non NDA discussion about preparing to upgrade with the latest and greatest from Service Pack 2 PreUpgradeCheck tool, and system discussion based on the SharePoint Team blog.  (Approved by the SharePoint team)

 

InfoPath and InfoPath Forms Services tip and tricks- Eric Harlan

"InfoPath forms can automate your entire back office. The 80/20 rule certainly applies in the enterprise however.  With these tips and tricks for using and implementing InfoPath in your organization, you can help close that acceptance gap.  From injecting InfoPath forms into web parts on branded pages to compiling totals in repeating fields. These hints will will save you time and headaches!

SharePoint List Mashup's using SharePoint Designer- Eric Harlan

Mashups can cover just about any combination of data or design elements with in SharePoint specifically.  In this session we will go over how to mashup DHTML, XSLT and SharePoint lists into clean news rotation web parts.  This method will allow administrators to make simple changes in a list view that they are already comfortable with to make a news rotation change.  This session will also focus on the infamous DataView web part and some of the cool data presentation and integration tips used to show your users different editable views of list data.

SharePoint's Federated Search and Social Networking- Eric Harlan

With so much focus on SharePoint 2010 and some of the new search aspects related to the new release, its important to understand some of the features that got us to this point. This session will include a very quick overview on upgrading SharePoint to Server Pack 1 and upgrading with the infrastructure update. Then a main focus on incorporating the web parts and pulling structured data into SharePoint search results from various internal and external sources. Then taking it a step further, how to use those incoming data sources from social networking and Web 2.0 sites to  integrate data into SharePoint.

Twitter and the SharePoint Community- Joel Oleson & Eric Harlan

Twitter is changing our community SharePoint dynamics!  In this discussion we'll talk about the path of social software and twitter's influence on the SharePoint community.

Last but not least I would like to thank the following people from the community for their invaluable contribution and without whom this event would've ever happened:

Alistair Pugin (BCX) - for helping me organise many aspects of the event (and recover some serious issues in the last second)

Claire Nel (BCX) - For organising food.

Wayne Sylvester (BCX) - For organising drinks and snacks.

Hilton Giesenow (3fifteen) - For organising and sending out additional invites and helping me register Cape Town SharePoint Saturday as an official SharePoint Saturday (http://www.sharepointsaturday.org/)

Podcast: SharePoint Architecture Panel Discussion with Joel, Eric and Zlatan

On TechEd Africa 2009 Joel Oleson (http://www.sharepointjoel.com/), Eric Harlan (http://www.ericharlan.com/) and myself did a whiteboard session titled:

"SharePoint Architecture Panel Discussion with Joel, Eric and Zlatan"

The session was hosted by my friend and fellow MVP Hilton Giesenow who also recorded the whole session and some time ago published it on his great podcasting initiative http://www.theMossShow.com/ and I only got to listen to it only recently.

From left to right: Joel, Eric, me, Hilton (standing)

Check it out here: http://www.themossshow.com/?p=145 and feel free to reply here with your feedback.

 

My Lecture: “Developing Business Intelligence Solutions With SharePoint 2007” from SharePoint Conference 2008 in Slovenia

I see that my presentation from last year's SharePoint Conference in Slovenia has been made available online together with some other presentations here (http://www.sharepointkonferenca.si/eng/multimedia.aspx?id=menu03 ) in case you want to check it out.

Direct link to the video: http://vimeo.com/6208957

Developing Business Intelligence Solutions With SharePoint 2007 on Vimeo.

P.S. In you're using local, South African, bandwidth send me a pigeon with a memory stick and I'll upload it for you.

TechEd Europe 2009 and Berlin here I come!!

 

I have a great privilege and honour to be invited to speak at TechEd Europe (EMEA) 2009 later this year (9th to 13th of November) in Berlin, Germany

I can't wait!!!!!!!!!!!!!!!!!!!!!!!

TechEd Europe 2009 promises to be one of the best Microsoft events this year worldwide and a definite must for any geek and geek-ette in Europe and elsewhere, with great events happening in Berlin at the same time such as: 

Festival of Freedom - Monday 9 November (http://www.mauerfall09.de/en/portal/9-november/)

· The Festival of Freedom will begin with an open-air concert at Pariser Platz by the Staatskapelle Berlin conducted by Daniel Barenboim.
· After the concert, the fall of the Berlin Wall will be symbolised by knocking over the designed dominos, which will be broadcast live on ZDF (German TV) from 19:25 until 20:15. (from the Reichstagsufer (Spree river bank by Reichstag) via the Brandenburg Gate to Potsdamer Platz)
· Hundreds of thousands of people are expected to attend this extraordinary event

Posted by Zlatan
Filed under: , , ,

Item Level Permission in SharePoint 2007

Question around Item Level permission in SharePoint 2007 came out so many times by now, well I lost the count. It is one of the most fundamental requirements of creating client centric SharePoint solutions, and it builds on concepts of Personalization and Audience Targeting, exactly where these two fail, and that is to provide appropriate security trimmings to the personalised content.

I have covered this in my Social Networking SharePoint session (among other things) at TechEd Africa this year and I decided (due to numerous requests) to post the methods and code from the presentation.

Requirement is often to make sure that people and roles with permissions to the same library don't have access to the documents/items with the same  

There is four effective ways to use Item Level Permissions in your SharePoint solutions and here they are in order of simplicity:

1. Change appropriate Item Level Permissions manually for Document/Item in a library by simply clicking on the drop down menu of the item and clicking on "Manage Permissions" option. You will be presented with a list of permissions for that item lone and options to change it for each role/user.

 

2. Second option is in also OOB (Out of the Box), used mainly when the solution should limit the access of the submitted documents (for example) in the same library to the rest of the users that have access to the same library until that item has been approved by a relevant role (note that this can be for many reasons), and it requires turning on "Require content approval for submitted items?" which can be found when navigating to Library Setting (of Document Library for Example) eg Documents(library) > Settings > Versioning Settings.

From the Help Files:

"When this content approval setting is applied, an item or file that has been changed remains in a pending state until it is approved or rejected by someone who has permission to approve it. If the item or file is approved, it is assigned an Approved status in the list or library, and it is displayed to anyone with permission to view the list or library. If the item or file is rejected, it remains in a pending state and is visible only to the people with permission to view drafts.

By default, a pending item or file is visible only to its creator and to the people with permission to manage lists, but you can specify whether other groups of users can view the item or file."

3. Automate who should have the specific permissions by means of developing a Custom Event Handler by means of SPSecurity.RunWithElevatedPrivileges Method. This method executes the specified method with Full Control rights even if the user does not otherwise have Full Control. You'll most likely use asynchronous ItemAdded event in your custom event handler.

Here‘s the sample source code:

//the following code sample removes all permissions from an item and assigns only permissions of the current user to the document

using (SPWeb web = properties.OpenWeb())

            {

                SPSecurity.RunWithElevatedPrivileges(delegate()

                {

                    using (SPSite site = new SPSite(web.Site.ID))

                    {

                        using (SPWeb impersonatedWeb = site.OpenWeb())

                        {

                            SPList impersonatedScList = impersonatedWeb.Lists[scorecardList.Title];

                            SPRoleDefinition RoleDefinition = impersonatedWeb.RoleDefinitions.GetByType(SPRoleType.Contributor);

                            SPPrincipal principal = (SPPrincipal)web.CurrentUser;

                            SPRoleAssignment RoleAssignment = new SPRoleAssignment(principal);

                            RoleAssignment.RoleDefinitionBindings.Add(RoleDefinition);

                            SPListItem impersonatedListItem = impersonatedScList.Items[properties.ListItem.UniqueId];

                                //break permission inheritance

                            if (!impersonatedListItem.HasUniqueRoleAssignments)

                            {

                                impersonatedListItem.BreakRoleInheritance(true);

                            }

 

                            SPRoleAssignmentCollection roleCollection = impersonatedListItem.RoleAssignments;

                            foreach (SPRoleAssignment assignment in roleCollection)

                            {

                                assignment.RoleDefinitionBindings.RemoveAll();

                                assignment.Update();

                            }

 

                            impersonatedListItem.RoleAssignments.Add(RoleAssignment);

                            impersonatedListItem.Update();

                        }

                    }

                });

}

 

4. Same as number 3 however this example uses proper SharePoint Impersonation to impersonate the System Account. "Why?" you might ask, well because number 3 (above) does not always work and doesn't seem to always have the absolute privileges like it promises, hence why I strongly recommend you use this option, just to be on a safe side.

Here's the sample source code:

//the following code sample also removes all permissions from an item and assigns only permissions of the current user to the document

using (SPWeb web = properties.OpenWeb())

            {

                SPUser user = web.Users["SHAREPOINT\\SYSTEM"];

                SPUserToken token = user.UserToken;

                SPSite impersonatedSiteColl = new SPSite(web.Url, token);

                using (SPWeb impersonatedWeb = impersonatedSiteColl.OpenWeb())

                {

                    SPList impersonatedScList = impersonatedWeb.Lists[scorecardList.Title];

                    SPRoleDefinition RoleDefinition = impersonatedWeb.RoleDefinitions.GetByType(SPRoleType.Contributor);

                    SPPrincipal principal = (SPPrincipal)web.CurrentUser;

                    SPRoleAssignment RoleAssignment = new SPRoleAssignment(principal);

                    RoleAssignment.RoleDefinitionBindings.Add(RoleDefinition);

                    SPListItem impersonatedListItem = impersonatedScList.Items[properties.ListItem.UniqueId];

 

                    if (!impersonatedListItem.HasUniqueRoleAssignments)

                    {

                        impersonatedListItem.BreakRoleInheritance(true);

                    }

 

                    SPRoleAssignmentCollection roleCollection = impersonatedListItem.RoleAssignments;

                    foreach (SPRoleAssignment assignment in roleCollection)

                    {

                        assignment.RoleDefinitionBindings.RemoveAll();

                        assignment.Update();

                    }

 

                    impersonatedListItem.RoleAssignments.Add(RoleAssignment);

                    impersonatedListItem.Update();

                }

            }

 

Please note that the two code samples above (in case of required automation) belong in a properly deployed Custom Event Handler and NOT a Workflow. Although it might be tempting for those that are familiar with Workflow design and not familiar with Event Handlers to use the fact that each deployed workflow support activation on item added, please resist the temptation and adhere to best practices, otherwise you're causing unnecessary resource overhead and introducing a really bad design into your solution.

TechEd Online Africa 2009 #tea09 Videos are Out

You can see the link for them at http://www.teched.co.za/

Here's a direct link: http://www.microsoft.com/techedonline/default.aspx

This year I did two interviews, so check them out:

Taxonomy in SharePoint Enterprise Content Management and Enterprise Search http://www.msteched.com/online/view.aspx?tid=b00ff74c-cc6a-45b5-93b3-703b9963d479

(with Nicolas Blank - Exchange MVP http://blankmanblog.spaces.live.com/)

 
(with Paul Somers - BizTalk MVP http://blog.paul.somers.com/)
 
 
I want to thank both of my interview partners, it was a real pleasure doing interviews with you guys, you both rock!!
Posted by Zlatan
Filed under: , ,

Taxonomy, Entrerprise Search and Records Management Best Practices #bpc09 Slide Decks

I've never expected for my two sessions to be so welcomed:

IW312, Taxonomy in SharePoint Enterprise Content Management and Enterprise Search

Large and even smaller enterprises require a standard and consistent way to understand and access the unstructured information that resides in their various repositories. Learn how to meet this business challenge with Microsoft SharePoint Server and Microsoft Enterprise Search so that your company can make faster business decisions that drive customer satisfaction and value.

ITP383, Records Management Best Practices in SharePoint

This session will cover best practices for using SharePoint platform in capture, classification, and ongoing management of records throughout their lifecycle.
We will also cover the following in Microsoft Office SharePoint Server 2007 Records Management:

  • Setting policies and standards.
  • Assigning responsibilities and authorities.
  • Establishing and promulgating procedures and guidelines.
  • Providing a range of services relating to the management and use of records.
  • Designing, implementing and administering specialized systems for managing records.

• Integrating records management into business systems and processes.

 

For each we will consider:

Electronic Records Management Best Practices
Physical Records Management Best Practices
Mixed Records Management Best practices
Common Issues in Records Management Solutions based on SharePoint

Thank you all that attended so much for such great feedback, ratings and compliments.

The hunger for information in Washington was amazing, I was kept after each session for at least an hour with, what seemed as endless questions from the audience, also at #SharePint's and other social events regardless of how late or how early there was always people keen to know more about Taxonomy and Records Management with one of the main highlights being the Ask The Experts Session where I got to also hear experiences, issues and lessons learnt from Government and Large Corporates alike.

Thank you for your enthusiasm, it has inspired me to blog a lot more on this topic, so expect more resources on these two topics, on this blog in future.  

Meanwhile many have emailed me requesting my slides, well you can download them here:

http://cid-d1b897d941659c44.skydrive.live.com/self.aspx/.Public/Taxonomy.zip

http://cid-d1b897d941659c44.skydrive.live.com/self.aspx/.Public/RecordsManagement.zip

Please feel free to contact me around any additional information you require.

Best Practices Conference 2009 #bpc09 Recap

What a great conference, what great memories.... I don't know where to begin.

Once I arrived to Washington DC I got invited by Dux Sy of  http://sp.meetdux.com/ (@meetdux) to a #ShareFood event where I got to meet some of the #bpc09 speakers and US SharePoint Community people that came to attend the conference. What a feast that was, once again Dux thank you for inviting me and big thanks go out to your family that helped prepare all the wonderful food.

It's really great to see that SharePoint community all over the world is warm and welcoming to everyone, complete strangers can immediately feel as if they're with friends they knew all their life.

There I met a whole heap of cool people who instantly became my great friends like Dan (@usher), Sara (@sharepointsara),  Lori (@LoriGowin), her very cool husband Matt (@MattGowin), Cathy (@catpaint1), Laura (@WonderLaura), Mark Miller (@EUSP) from EndUserSharePoint.com and many others, but it felt like the conference and breakout sessions started then and there with Paul (@paulculmsee), Andrew (@AndrewWoody) and later with Ruven (@ruveng) from that point on, on almost every occasion we met since, together with participation from many good people that I already mentioned (and that I'm about to mention), deep best practices discussions and debates went on that demonstrated to me their extensive experience and expertise on all aspects relating to successful deployment of SharePoint, as well as enormous similarities to issues and resolutions we encountered on all different corners of the earth. We've compared different methods, tactics, thinking, and conflict resolution. Unfortunately I personally don't come across too many people (clients and service ,providers) back home in South Africa that value these "soft" skills as much, or at least that take them seriously enough, but I'm still going to continue trying to change that.

Had many great discussions with Mike (@mikecferarra) from SharePoint Reviews http://www.sharepointreviews.com/onpoint.html  who together with  Laura (@WonderLaura), Mark Miller (@EUSP) from EndUserSharePoint.com did a brilliant coverage of the whole conference with livestreaming, interviews, blogging and twittering, check  http://www.sharepointreviews.com/onpoint/649-view-the-best-practices-conference-live-stream-archive.html  and  http://www.endusersharepoint.com/ to get more of the conference goodness.

More great events, #SharePints, and discussions followed with Paul (@paulschaeflein), Mike (@mikecferarra), Brett (@brettlonsdale) Dan (@usher), #ShareCigar with Darrin (@bishopd),  Sara (@sharepointsara), Benjamin Curry, Lori (@LoriGowin), Matt (@MattGowin), Cathy (@catpaint1), Laura (@WonderLaura),  Ruven (@ruveng) Christina (@cwheeler76), and of course Andrew (@AndrewWoody).

Brett Lonsdale (@brettlonsdale), one of the great people behind  http://www.lightningtools.com/ responsible for many great SharePoint products including the unavoidable BDC Meta Man that I covered in many of my previous speaking engagements (was presenting here on best practices for BDC) bestowed me with his and Nick Swan's great new publication -> SharePoint 2007 Developer's Guide to Business Data Catalog (Manning) which, I'm convinced, is the best SharePoint BDC book you can possibly get today, and a definite must.

I also had an excellent and eye-opening SharePoint MVP discussion with Bill English (http://sharepoint.mindsharpblogs.com/Bill/default.aspx) and Darrin Bishop (@bishopd) hosted by Olivia Shone (lovely lady) our cool new SharePoint MVP Lead, it's really encouraging to see how much support MVPs get from Microsoft even when times are really tough.

One of the most memorable sessions of the conference was a brilliant "7 Ways to Leverage SharePoint for Project Management Success" by Dux Sy, SharePoint PMP, check the "SharePoint is Nice Nice Baby" videos here http://sp.meetdux.com/archive/2009/08/24/sharepoint-is-nice-nice-baby-bpc09-remix.aspx to quote one of the tweets: Dux's lean is gangsta and his pimp hand is heavy...

Thank you Paul (@paulschaeflein) and Mike Elgersma for a great conference, one of the most professional and best organised conferences I've seen so far, you guys can't get enough credit for the work that you did.

Thank you all for a great conference and great memories, I'm really looking forward to the next Best Practices Conference, where I can see all the same people in one place again. Above all thank you for such great feedback for the sessions that I delivered, you are all absolutely awesome.

Check also recaps from:

Paul Culmsee (http://www.cleverworkarounds.com/2009/08/28/bpc-09-august-wrap-up/) hehe I love the description of me: "utterly brilliant but is genetically programmed to be unable to whisper"

Lori Gowin (http://www.pointgowin.com/SeeThePoint/Lists/Posts/Post.aspx?List=8436e2d5%2D7526%2D409a%2Db7f3%2De49da113abd5&ID=14)

Developing SharePoint Applications Guidance - August 2009

New revised guidance:

"Guidance for building collaborative applications that extend your LOB systems.
This guidance helps architects and developers design, build, and test intranet and enterprise-scale SharePoint applications. Two reference implementations demonstrate solutions to common issues, and a library provides reusable components that can help you with your own development projects."

http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=91f3c22c-8be7-4721-9449-84f699337d55#tm

Posted by Zlatan
Filed under:

TechEd 2009 #tea2009 is finished and resources are out

 

Once again, what a great TechEd, and just to let you know that speaker presentations have been made available at http://www.teched.co.za/.

Thank you all for the great reviews and feedback that I got so far, some of you have blogged about it including our very own MVP lead Ruari Plint http://ruariplint.spaces.live.com/blog/cns!4DC22E349714F30F!869.entry who almsot got im in trouble with my better half with that post.

Thanks Ruari, thank you to all the MVPs, rest of my friends, colleagues, organisers and above all Amory who year after year made sure that every TechEd went without a hitch, Amory you rock!!

Posted by Zlatan
More Posts Next page »