Quick Tip: Screen Clips with OneNote

In the second post in the Quick Tip series I want to show you is the ‘screen clipping’ feature built into OneNote.

Personally I find it the most useful way to take screen grabs – and having it in a powerful and underrated application like OneNote is just a bonus!

If you’ve never used OneNote before, you need to fire it up and make sure the icon is placed in the taskbar.



Go to the OneNote ‘Options’ and select the ‘Display Tab’

Now that the OneNote icon is displayed in the taskbar you can take screen ‘clips’ with the ‘Windows Key + S’ shortcut.

This action greys out the entire screen and allows you to select an active area of the screen to grab. If you require the entire screen, simply start in one of the corners and select the screen as if it were a selection in paint.

The default action is to open the screen clip in OneNote and dump it onto  the clipboard. Personally I prefer to just dump to clipboard and paste where necessary (normally into a word doc or Paint).

To change the default action, go back to ‘Options’ menu and select the ‘Send to OneNote’ tab.



Hope you find that as useful as I do.

More Quick Tips coming up – suggestions welcome!

Quick Tip: Quick and easy OCR (optical character recognition) with OneNote

In a new series of posts I plan to share a range of tips for making life that little bit easier. Generally this falls within the realm of ‘general tips’ or ‘productivity tips’ but it may extend further if they are well received (or if I get enough time to write them down!) .

First up we are going to look at a handy OCR feature in OneNote.

OCR for those not acronym-inclined is optical character recognition – or even better yet, its identifying words within pictures.

Cool technology but why on earth would I need to use something like that? Well if your like me and you’re an obsessive screen clip taker you sometimes find that you actually want the text within the screen grab and not a huge embedded image.

Sure you can often go back to the source, find the content you screen grabbed and select the text, and that might be easier for you, but there are other cases where you simply can’t select the text for one reason or another. Protected PDF’s, screenshots from overs and text within data sources that don’t lend themselves to straight forward text exporting (trust me – there are some).

Well, how do you use such fancy technology? By using the heavily underrated OneNote of course – and its so easy!

Simply do a screen grab with your favourite method (mine also uses OneNote’s screen clipping feature – explained here) and paste your screen grab into OneNote.

Then, all you need to do is paste your clipboard to get the converted text from the image.

Viola! You are done..

Now this technology is obviously not foolproof and non-standard fonts and special characters tend to confuse things a little, but at worst this generally means just tidying up odd words manually, but overall the text is converted correctly.

Splitting large SP2010 workflows in Visio 2010

Just a short post on how to approach designing and implementing large or complex workflows using the SharePoint 2010 workflow template in Visio 2010 Premium.

As you probably have heard Visio allows us to use this template to model our SharePoint workflows in Visio with a new shape set and then export it directly(as a zipped XML, *.vwi file) into SP Designer for the developers to ‘hook up’.

I am currently modelling quite a complex / large workflow and I can see its going to be an absolute beast to contain within a single, sprawling Visio workspace. After talking with the development team it was decided that breaking out into ‘tabs’, although not as powerful as the linked sub-process of standard models, would be sufficient for development.

Rather than exporting and maintaining as a single .vwi file, the ‘export’ option of the process tab only exports the contents of the current tab – so it is possible to break detail out into ‘tabs’ and export as separate .vwi files, which in turn are imported and implemented into SPD.

You wont get as much detail in your workflow visualisation if you implement in this manner, but you could always link the tabs or .xml in the .vwi’s together at the end to get a single (if not complex) workflow visualisation.

Will post more on SP2010 workflow design in Visio as I come across – which be the looks of things, will be a lot!

How the SharePoint 2010 Workflow Visio Template Shapes translate to SP Designer workflow steps

I’ve been working on designing a comprehensive workflow for a new application with the SharePoint 2010 workflow template for Visio 2010 Premium. I’ve already modeled the process flow in UML and looking to design it with the template in order to keep it maintainable and customizable moving forward. I googled around and there isn’t a lot of content in this area yet and I wanted something to assist my shape-choosing process. I created a dummy workflow with every single shape and imported the Visio Workflow Interchange (*.vwi) into SharePoint Designer to see exactly what steps each shape mapped into. Rather than store this for my own selfish benefit, I thought others may benefit from seeing what their shapes translate to in a SP Designer context.

Actions Table

Visio Shape Action / Condition Name SharePoint Designer Workflow Steps

Start Obvious one – sets the start point for the workflow to begin
Assign a To-Do item Assign a to-do item to these users
Collect data from a user Then Collect data from this user (Output to collect)
Start approval process then Start Approval (4) process on this item with these users
Start custom task process then Start Task (9) process on this item with these users

Start feedback process then Start Feedback (2) process on this item with these users

Send an email then Email these users

Add a comment then Comment: comment text

Add time to date then Add 0 units to date (Output to date)

Do calculation then Calculate value this operation value (Output to Variable: calc)

Log to history first then Log this message to the workflow history list

Pause for duration then Pause for 0 days, 0 hours, 0 minutes

Pause until date then Pause until this time

Send document to repository then Submit File using this action to this destination router with this explanation (Output to submit file result)

Set content approval status then Set content approval status to this status with comments

Set field in current item then Set field to value

Set time portion of date/time field then Set time as hours: minutes for date (Output to date)

Set workflow status then Set workflow status to Cancelled

Set workflow variable then Set workflow variable to value

Stop workflow then Stop the workflow and log this message
Wait for field change in current item then Wait for field this test value

Send approval for document set then Start New Task (2) process for the contents of this Document Set with the users specified by this column

Send document set to repository then Submit Document Set using this action to this destination content organizer with this explanation (Output to submit file result)

Set content approval status for document set then Set content approval status for the contents of this Document Set to this status with comments

Check in item then Check in item in this list with comment: comment

Check out item Then Check out item in this list

Copy list item then Copy item in this list to this list

Create list item then Create item in this list (Output to create)

Delete item Delete item in this list

Discard check out item Discard check out of item in this list

Add list permission then Add these permissions to item in this list

Inherit list item permissions then Inherit parent permissions for item in this list

Remove list item permissions then Remove these permissions from item in this list

Replace list item permissions then Replace these permissions of item in this list

Update list item then Update item in this list

Look manager of a user then Find Manager of this user (output to manager)

Assign a form to a group then Assign a custom form to these users

Terminate Ends the workflow.

Conditions Table

Compare data source If value this test value

Compare document field If field equals value

Title field contains keywords If title field contains keywords

Created by a specified person If created by specific person

Check exact user permissions If permission levels for these users are at least these permission levels on item in this list

Check user permissions If permissions for these users are at least these permissions on item in this list

Created in specific date span If created between date and date

File size is in a specific range If the file size is between size and size kilobytes

File is a specific type If the file type is specific type

Modified by a specific person If modified by specific person

Modified in a specific date span If modified between date and date

That satisfies my needs at the moment but if I get time I’d like to add some detail and screen grabs to the mix. Feedback and questions are both more than welcome!

Update #1: After some feedback from readers I decided to add the workflow shapes into the table.. formatting isn’t the prettiest but should act as a nice reference chart for those us charged with creating Visio workflows for SharePoint.

Let me know if there is any other features you’d find useful – feedback has been very positive so far!

7 ways to effectively use a SharePoint document library

1.) Versioning – otherwise its just a network folder!

The firs thing I do with a new document library if it isn’t enabled already – turn on versioning! It’s not really document management without versioning so get in there and enable it first thing.

Don’t know how? Follow the steps below

Select the ‘Document Library Settings’ option from the ‘Settings’ menu. If you don’t see the settings menu you don’t have permission and will need to ask someone who does politely.

Then select ‘Versioning settings’ from the General settings column.

Here you have two choices and I suggest you select the second, creating both major and minor versions. Gives you a lot more flexibility and options around ‘publishing’. More on that later

Hit ‘OK’ and your done. Now each time you check a document in it will keep a version on the server and allow you track a full history of your document.


Small sidenote, if you have permissions setup correctly (i.e. not everybody has admin/contribute rights to every document library), ticking the ‘Only users who can edit items’ for drafts is a good idea of hiding documents from those who shouldn’t be reading them until their published form.

This is in a project life-cycle where either the test or dev team needs to review a base lined document but work needs to continue without creating two separate copies. Set this option and you control who see’s what!

2.) Force check out – crucial to have with versioning

Small point but important – no point having versioning unless you force all documents to be checked out before edited!

Always set this to yes unless you have a specific reason not to. If you need to do a bulk move or bulk edit, temporarily remove the force checkout, do what’s required, and set it back. Removes the hassle and keeps the functionality – everybody wins!

Found under document settings -> versioning settings (same as above)

3.) Use content types – managed metadata and consistency across documentation

SharePoint content types are an incredibly useful way of organizing content and in particular, reusing structure that’s been set up elsewhere. I wont go into detail but have a read up on it here.

I normally setup at least one content type per document library, usually a applicable template or work product such as SRS (Software requirement specification) and a generic document type above that sits above that.

The general content type has standard project related columns such as:

  • Project Phase (‘choice’ column of relevant phases)
  • Build (‘choice’ column with set list of builds
  • Category (‘choice’ column of categories such as requirements, technical design, testing

You can use whatever is relevant and the above is just an example of criteria that is relevant to all documents within the library. Then as a child content type of the general, I create a few columns specific to a SRS.

4.) Use Office 2007/2010’s integration – it’s a great way of converting the sceptics

Continuing on from good use of content types above, using Office 2007/2010’s SharePoint integration to save metadata and check in and out documents converts most sceptics.

Common criticism of SharePoint is that you have to check in and check out each time, and you have to edit properties to save metadata blah blah..

With the integration offered in 2007/2010 (and to an extent but not as seamless, 2003) such sceptics have no excuse!

Document metadata shown by default when document is opened and you are required to update the metadata on check in.

Built in support for versioning including comments (which can be used effectively in the document library view)

New in 2010, the Backstage view has built-in drop down menus, presence indicators from Office Communicator integration and a much smoother (graphically) integration.

5.) Workflows – even the default workflows are very useful

SharePoint comes built-in with some useful workflows, such as approval and collect feedback. I tend to use these quickly to request and track feedback on a document.

Access them and any custom workflows you may have built for the workflow/content type, via the backstage in 2010.

6.) Use version history effectively – it’s not just for security/peace of mind!

I use version history extensively and find it very useful for doing document comparisons and finding why I made a certain change or retrieving an existing format/content from an out-dated version.

I tend to use the backstage view of Office 2010, where you can see comments for each version, see all versions and compare against existing fairly easily.

Open an older version and you get the following options for comparison in the backstage.

Quickly compare using the powerful word compare functionality against an existing document. Useful for showing changes if you can’t/don’t use tracked changes. Particularly useful if your generating your documentation out of tools such as Enterprise Architect or Axure RP (anything really, those are just the two that I’ve done it for in the past).

7.) Document library templates – enforce documentation standards

Document library templates are another useful way of setting standards within your document library. You can assign a .dot template (or any other office template for that matter) to the document library or content type and use that each time a new document is created – very useful!

Rather than the standard ‘New Document dialog’  you can set a specific template  for all documents using the content type. In my example, we have one setup for all SRS documents that uses the same styles, structure and document info for all of your requirements documentation. Small thing to set up that significantly reduces rework and doesn’t bog you down during the review phase.

Setting a template is done via the document library settings -> Advanced Settings. There is an aptly named ‘Document Template’ option where you can upload and edit the document template.

Well that’s all for now, those are most of the main additions I use in day-to-day document libraries I use and if anyone wants any further details on particulars or further justification as to why I chose a certain option, feel free to email or comment! Any and all feedback is welcome.

Using Visio Shape Reports to export detail from your diagrams

Ran cross another handy feature of Visio – Shape Reports!

If you’re like me and love manipulating data in Excel to clean up and use elsewhere, rather than doing it the long, slow and manual way, then you will probably like to explore this feature of Visio.

I recently created a state chart and I needed a quick export of all of the states I used on the diagram.

Sure, I could manually type them out, or individually copy and paste each one into a document, but that’s now how I like to operate! If there’s a tool for the job – I like to use it.

So I opened up the ‘Shape Reports’ option under the ‘Review’ ribbon and begin to design my extract.

We want to create a new report, so go ahead and click that to begin the new report wizard.

Now, depending on what you’re doing or what data you’re trying to extract out of your model, you can export everything (easiest – but takes longer to clean up) or put some criteria around what you want to export (little bit trickier but my favorite!)

Easiest option is to create an export using the ‘Shapes on the current page’ and click through the wizard with the default options  and selecting  ‘Show all properties’. This will give you a dump of all properties and you can filter through what you need in Excel.

Personally I like to extract just what I need from the model, so I set some export criteria using the ‘Advanced’ option on Wizard step numero uno.

Here you can define some conditions for what you want to pull out of your model. For the above example I’ve opted to ignore the transition shapes as I just want to see a list of state names.

Play around with what’s available, particularly under the ‘Master Name’ property, to find the criteria your after.

So proceeding with example of not including ‘transition’ elements, you can then move on to selecting what properties to export.

Again, depending on what your modelling and how you defined it, your requirements may differ here. In my example I’ll be using ‘Displayed Text’ – as that’s the exact data set I’m looking for.

Give your a report a name on the next step and then a report definition (for recognizing the report later on!).

Double click your newly created report to see the results.

You need to select an export format, as I said earlier, Excel is my personal favourite for manipulating large amounts of text and filtering – but the choice is entirely yours of course.

Voila! Your data is exported in a lovely styled format ready to use as you please.

I kind of skipped over the selecting the report criteria section, so if anyone would like more guidance in that area let me know!