22 May 2012

How do I – Add an Approval Workflow to my SharePoint list

Approval workflows come with SharePoint 2010 as an Out of the Box workflow that allows for some quick, customizable management of approval processes. Here’s how to activate and use these powerful workflows:
  1. Navigate to your target list.
  2. On the ribbon, click the “List” tab.
  3. Depending on your screen resolution, the “Workflow Settings” option should appear to the far right of the ribbon.  On lower resolution screens, the wording may not appear and instead only a small version of the icon would be visible.  If you are unable to locate “Workflow Settings in the ribbon at all, navigate to it via the “List Settings” option instead.
  4. image_thumb_148A2B73
  5. Click “Workflow Settings”.
  6. On the Workflow Settings page, click the “Add a worflow” link under the “Workflows” section.
  7. image_thumb_1_148A2B73
  8. If you notice a limited number of workflows like “Three-state” and possibly “Disposition Approval”, but no “Approval” workflow, then it means that your site collection workflow Feature is not enabled.
  9. image_thumb_2_148A2B73
  10. Click “Site Actions” on the ribbon in the top left of the page.
  11. On the dropdown menu, click “Site Settings”.
  12. image_thumb_3_148A2B73
  13. On the Site Settings page, click “Site collection features” under the Site Collection Administration section.
  14. image_thumb_4_148A2B73
  15. Scroll all the way to the bottom of the Features list.
  16. Locate the Workflows Feature.
  17. The button to the right of the Feature should say “Activate”.
  18. Click the “Activate” button.
  19. image_thumb_6_148A2B73
  20. Once the Feature has been activated, the button should say “Deactivate”.
  21. There should also be a label to the right of the button that reads “Active”.
  22. image_thumb_7_148A2B73
  23. With your site collection Feature now activated, navigate back to your list in question.
  24. Navigate back to the workflow settings of the list in question.
  25. [***TIME SAVING TIP***]  You can simply use your browser’s back button to navigate directly to the page titled “Workflow Settings”.
  26. Now click the “Add a workflow” link again.
  27. This time you should see more workflows in the “Select a workflow template:” section.
  28. Scroll down and select the “Approval – SharePoint 2010” workflow.
  29. In the name field, type a name for your new workflow.  NOTE: This name will be used as the column name for status values in the list view so you don’t want this name to be too lengthy.
  30. In the Task List field, by default, SharePoint will select the “Tasks” list for you.  This list was created when you activated the Workflows Feature on the site collection in Steps 10-22.  You can change this selection through the provided dropdown or you can even create an entirely new tasks list via the dropdown.  The choice is yours.
  31. In the History List field, by default SharePoint will select the “Workflow History” lists for you.  As was the case with the Tasks list, this list was automatically created when you activated the Workflows Features on the site collection.  Again, you have the option of selecting a different workflow history list or creating an new one via the dropdown.
  32. In the Start Options section, the “Allow this workflow to be manually started by an authenticated user with Edit Item permissions.” option is checked by default.  This option simply means that anyone who can modify items in this list, can manually start an approval workflow on an item.  In many cases, you may with to disable this by unchecking the box.
  33. The secondary check box titled “Require Manage List Permissions to start the workflow.” allows you to limit manual starting of the workflow only to list managers/designers.  This allows the workflow to still be manually started, but normal users who can only modify items in the list, would not have the required permissions to do so.
  34. The next check box titled “Start this workflow to approve publishing a major version of an item.” will be disabled (grayed out) unless you have Version History configured on the list with both major and minor versions.
  35. The next check box titled “Start this workflow when a new item is created.” is the most frequently used.  When this is checked, any creation of a new item, will result in the workflow being started.
  36. The next check box titled “Start this workflow when an item is changed.” allows the workflow to be terminated if something is modified in the item while the workflow is running, and then restarting the workflow from the top.  It is a good idea to check this box in most workflow cases.
  37. Once you have configured your options on this page, click the “Next” button at the bottom.
  38. image_thumb_8_7F98A8FF
  39. On the final configuration page, we get to configure the who and when of the workflow.
  40. In the Approvers section, you can add people/groups to who the approval task is assigned.  Since people change jobs and responsibilities all the time, it’s a good idea to create a site security group for the approvers here.  In our example, we are using a security group called “My Approvers List”.  The members of the group would be all the people who can approve items in this list.  NOTE:  In addition to the approvers configured here, anyone with administrator or owner rights over either the list, the site on which the list resides or the collection in which the site on which the list resides, will also have the ability to approve tasks in this workflow directly.  That is why best practices dictate that administrators should be carefully selected and careful consideration should be given any time the number of administrators exceed two.
  41. By default, the “Expand Groups” check box is checked.  This is only applicable when you are adding security groups to the Approvers list above and it means that if our security group contains three people, each person would be assigned the approval task.
  42. The “Request” field contains custom text you wish to have appear in the task assignment email that is sent to the approvers.
  43. The “Due Date for All Tasks” field is very seldom used due to its fixed nature and it allows you to select a specific due date for tasks.
  44. The “Duration Per Task” and “Duration Units” fields work together and is the preferred way to configure task due dates.  In our example, we are giving task assignees 3 days to act on the tasks.
  45. The CC field allows you to copy managers or interested parties on the assignment emails.
  46. The “End of First Rejection” check box controls what happens if any one of the approvers rejects the item.  When checked, it will terminate the workflow in a rejected state.
  47. The “End on Document Change” check box which is also checked by default, terminates the workflow if any changes is made to the item while in a pending state.
  48. The “Enable Content Approval” check box functions in cooperation with the Content Approval settings on the list or library.  When checked, the new item or document will automatically become visible to all users if the approval completes.
  49. Once you’ve configured the workflow behavior, click the “Save” button.
  50. image_thumb_9_7F98A8FF
  51. Congratulations!  You’ve now configured an Approval workflow on your list or library.
Cheers
C

15 May 2012

How do I – Add a User Account to the Local Administrators security group of a Domain Controller

Once you have done a DCPROMO (promoting your server to a domain controller) on your server, Windows removes the ability to manage local administrators from the server, at least via the GUI interface. As you can see here in the following two screen shots, the “Local Users and Groups” GUI option which is normally available on a non domain controller server thus:
image
Is removed once the server is promoted to a domain controller thus:
image
How do we work around this issue then?
Bring out the good old administrative command line…
  1. Click through your Start menu and navigate to locate the “Command Prompt”.
  2. Right click the “Command Prompt” icon.
  3. On the popup menu, click “Run as administrator”.
  4. image
  5. In the admin window that opens, use the following syntax to add the target account to the local administrators group of the server:
  6. net localgroup administrators /add <domain>\<user>
  7. Where the <domain> value is the target domain and the <user> value is the target user e.g.
  8. image
  9. In the example above we added the DEV\SPADM account to the server’s local administrators group.
Cheers
C

10 May 2012

White Paper-2010 Office and SharePoint-Good, Better, Bes



My clients and conference attendees are constantly asking me for this reference document. It’s silly that it’s so hard to locate on the Microsoft site, but it’s a great resource and the Appendix where it lists the Office versions side by side is indispensable. Come and get it!

http://www.crayveon.com/Downloads/SharePoint/2010/Office-and-SharePoint-Good-Better-Best-White-Paper.pdf



Cheers
C

01 May 2012

My Starbucks disappointment



So I just stepped off a long 5 hour flight from LAX to IND and headed to my favorite coffee shop for my morning Joe. I wait in line and since it’s early and I’m hungry, I decided to also get an cheese bagel. I was handed the bagel in a bag with cream cheese, but the bagel is uncut???!!! I ask if they have some way to cut the bagel and they point out that I have a plastic knife in the bag. A plastic knife?! That’s barely able to SPREAD the cream cheese let alone cut it. They must have have sensed my disappointment after I uttered “That’s OK. I’ll just saw through my bagel with my plastic knife.” because in their defense, they offered to cut it for me… so I let them.

Seriously Starbucks? What the ??? If you’re going to sell bagels, how about spending $5 for a bagel cutter? It’s a tiny little addition that makes a huge difference on the impression of your patrons!



Cheers
C

17 February 2012

Success at any cost is failure – An introspective

When in the course of our natural development, we come to a crossroads, we should strive to reach inner stillness to enable the possibility of deep inner reflection. In this world with it’s ever increasing pace, the quintessential rat race, it is so easy to lose focus on what really matters. It’s tragic that there are so many highly driven Type A personalities in this world. We all strive for success above all else. Even as a child, I could sense this internal force driving me forward. At age 11 I coined a slogan that stayed with me my entire life.
“Success isn’t found around every corner, but if you quit now, you’ll never know if it was around the next corner!” – Cornelius J. van Dyk – 1982


What a difference 30 years make. Living by my motto, I chased the fleeting dream that is success, ever higher. Before my 21st birthday, I was one of 48 out of 10,000 applicants to graduate as a pilot in the Air Force. That placed me in the top ½% of my field. Changing careers into computers, I was awarded the Smithsonian Award for Technological Innovation before my 25th birthday. Receiving seven MVP Awards were further pinnacles to my career but… what a difference 30 years make indeed.

What I didn’t understand as an 11 year old child, was context. My slogan is a great motivational phrase, but as every decent project manager can attest, one cannot be successful without defining the success criteria first. It is the most important thing for anyone to do in life. Without knowing and understanding what your definition of success is, you are like a ship on the ocean without a map. No matter how fast the ship sails, it will never reach it’s destination.

I have reflected on my life many times and always my reflection resulted in the question… why am I not truly and deeply satisfied and happy with my life. After all, as one of the experts in my field, I am well respected. I make a good income. I live in a nice house in a nice neighborhood with my beautiful wife and my two awesome kids. We drive a nice car. I have a nice computer and all the gadgets my heart desires. So then why is it that I’m not truly and deeply satisfied and happy? My revelation can be summarized in one single word… CONTEXT.

The context of success. Because I never pondered and truly defined for myself what exactly “success” meant to me in my deepest most inner being, I didn’t have a map to guide my ship. I could never reach my success port because I had no idea where it was.

As a highly driven type A personality, I always strived to scale the summit. What we don’t realized in our mad dash for success is that every pinnacle inevitably is followed by a steep down slope. There is no plateau beyond the pinnacle, only a steep cliff down to the valley below. We tell ourselves, if only I can do X or if only I can achieve Y, then everything will fall into place. Sadly, the cold reality is that it seldom does, for no one has ever exclaimed on their death bed “I wish I had worked more!”. No, indeed it’s quite the opposite. Most exclamations are something to the effect of “I wish I had spent more time with my family.” They say our kids grow up so quickly and it’s true. Every day with them is a blessing and should not be squandered. It’s easy to say “I can’t make it to scouts tonight, I have to work.” Believe me, it gets easier each time you say it and before long, you aren’t even asked any more because they already know what the answer will be.

I grew up in a household where my father worked 12 hours a day, 7 days a week. The man was a machine. He provided everything we needed, but I never got to know him as a person. I swore I would never do that to my kids and it’s very hard for me to not fall into that rut. I don’t know if there is such a thing as genetic pre-disposition to workaholism, but if there is, I probably have it.

As the patriarch in our single income family, it’s so easy for me to justify everything I do as important because it’s for or related to my work, but I have to realize that every time I do that, I am choosing something else over my family. My introspective really allowed me to identify what’s most important to me in my life. I realized there is nothing in this world that I can ever do or achieve, if it was done at the expense of my family, that would ever be worth it.

My dear wife, bless her heart, helped me list my priorities some time ago while we were in Chicago. I believe I had 9 items on that list, but I now realize that it’s way too large a number. I have re-evaluated my list and have narrowed it down to the five things in my life, the only things in my life to which I will attach importance going forward.
  1. My family.  My wife and kids are, will be and always should be first and foremost in my life.  Being the best husband and father that I can be is my ultimate goal, at the expense of all others on this list.
  2. My health, both physical and mental.  I have to take care of my mind and body so that I can enjoy a long life with my family.  This includes making time to exercise and eat well.
  3. My job.  We all have to pay the bills somehow and that makes my job a very important part of this list, but never, never, ever at the expense of #1 or #2.  To be clear, this is my job.  My actual paying job.  Not some activity related to work.  Just work.  Pure and simple.
  4. My friendships with my friends.  The inter personal relationships.  Not anything that bleeds into other areas, but being a good friend and maintaining said friendships.  It’s too easy to get distracted by other things in life and lose touch with those we hold dear.
  5. My speaking engagements.  I love to get out and speak and present about topics that I have a passion for.  SharePoint is one of my main passions and I intend to continue to present at conferences in the future, but it should be clear that this is the lowest on my priority list and is trumped by all four the previous items.


So there I have it. My life definition of success. I have to make some serious decisions in my life as there are 4 other items that didn’t make the cut in this list and I fear the fall out may be far reaching, but for the first time in my life, I believe that I have a clear definition of what success means to me and I intend to keep my eyes trained on it and never lose sight of this epiphical revelation.



Cheers
C

18 January 2012

You do NOT need to install the SPF CU before installing the SharePoint Server CU as of 2011-08-31



Yes, yes, I know. I’m only about 4 months behind on this revelation, but it came and went without too much fan fare. Something that so radically changes the way we apply Cumulative Updates for SharePoint, deserves a special footnote. Consider this post as such.

We bid farewell to Long drawn out explanations to clients as to why they have to install the Foundation CU before installing the Server CU when they have the Server product installed. I can’t tell you how many times I’ve had to explain and then re-explain this to admins. The concept is confusing and I’m glad it’s finally been rectified. Per the Updates for SharePoint 2010 Products site:
“As a result of the new packaging, it is no longer necessary to install the SharePoint Foundation cumulative update and then install the SharePoint Server cumulative update.” – SharePoint Product Team


This is indeed great news. To be clear, it’s only for 2010 products. Of course, Microsoft has discontinued the release of 2007 product CUs last year and that is probably what helped springboard the new approach to bundling the updates.

Whatever triggered it, I just want to say THANK YOU to the SharePoint Product Team for making life just a little easier… now if we can work on that CU rollback plan



Cheers
C

08 December 2011

SharePoint 2010 – Boundaries and Limits



Discovered this one with one of my clients today.

Error Message: This view cannot be displayed because the number of lookup and workflow status columns it contains exceeds the threshold (8) enforced by the administrator.

Cause: SharePoint 2010 lists limit the number of fields that can be displayed in a list view. In this case, it was a 2007 list that was upgraded to 2010. The list worked just fine in 2007, but failed to render with this error in 2010. It turned out the list view contained 100+ fields. The 2010 limit is 80.

Fix: None

Workaround: Split the view into two views, the first view containing the core data and the first half of the extra fields and the second view containing the core data and the rest of the extra fields.



Cheers
C

SharePoint Remote Event Receivers are DEAD!!!

 Well, the time has finally come.  It was evident when Microsoft started pushing everyone to WebHooks, but this FAQ and related announcement...