| Joe's profileMack Twenty-four SevenPhotosBlogLists | Help |
|
May 14 How to Move a SharePoint SiteI had occasion to move a SharePoint site (technically, it was a sub site) from one location to another today. I am sure that there are several other folks that have put similar posts to this out in the blogosphere, but for those regular visitors to The Mack Page, I thought I would give you something small to put in your kit bag. Scenario: You need to move a SharePoint site from one place to another. For the purposes of this exercise, I am moving a site titled SharePoint Training, with a URL of http://wss.tpg.local/IT_Team/SPTng from the “IT_Team” site to the “Training” centralized site, which is located at the same level as the IT team site. Tool: The quickest and easiest way to accomplish this task is to use the STSADM tool, specifically the export and import operations. Steps: Enough lead-in B.S. This is a simple one, so let’s get right to it. 1. Create a blank site at the destination. For this example, I did the following:
2. Logon to a server in your farm as a user with the appropriate permissions. Since both the source and destination of this site are under the same site collection, I logged on as a member of the Site Collection Administrators group. 3. Open a command prompt and browse to the “BIN” folder under the “12 HIVE”. For default installations, it is found here: C:\Program Files\Common Files\Microsoft Shared\web server extensions\BIN.
4. Run the export using STSADM. I almost always use the –includeusersecurity parameter when I do an export/import operation to preserve the user and group security settings for the site. The command I used for this particular scenario looked like this:
5. Navigate to the location where you saved the export file and make sure that it is there. If interested, you can also explore the log file there as well. It should be pretty easy to identify, as it has the format: <<exported file name>>.export.log. For my example, it was named: SPTng_Export.cmp.export.log 6. Run the import using STSADM. Just like when exporting, I make it standard practice to include user security. The import command I used for this scenario looked like this:
7. That’s it. You are done. As you would expect, the import operation will put a log file in the same location as the export log file, and it will also be very intuitively named. If you have any issues along the way, you should be able to see what is happening in the command line window (as long as you do not use the –quiet parameter), as well as the log files. For more information about the parameters available, you can simply type stsadm –o <<operation name>> (e.g. stsadm –o export) with no parameters. Alternatively, you can check out the stsadm page on Microsoft TechNet. February 11 Implicit Documents – Knowledge Management Zen with Microsoft (Step 0 of 10)This the first of several related posts I am going to use to start exploring a concept I have had for some time – implicit documents. Without getting too far down in the weeds yet regarding definitions (wait for Step 1 later this week), let’s just say that an implicit document represents the concept of a completely and totally virtual document…that is to say, a document made up entirely of a series of references to other objects within a corporate knowledge management structure, such as boiler plate text, graphs, charts, logos, etc. Also in Step 1, a quick tour of how I arrived at the term “Implicit Document”, and how it differs from other similar terms you may have heard, such as “Virtual Document” and “Compound Document”. For those of you that are interested, here is the working outline for the steps I will hopefully conquer as I progress through this series. Once a future step becomes active, I will replace the bulleted text below with a link to the appropriate article for that step.
I hope to be able to provide at least 2 blog posts in this series per week, which would hopefully get us to the end somewhere around the middle of March. Please check back often to see the latest, or feel free to sign up for our RSS Feed. February 10 Don’t Fear the SharePoint ReaperLately, I have been increasingly asked to come up with something that looks like a value proposition for selling SharePoint to potential customers. Luckily, I had already thought about this one, so it was kind of easy for me to make the transition from how we used to sell SharePoint way back in 2007 and 2008. You see, back then, in the good old days, you basically had to show up, say “I want to be your SharePoint guy – here are my rates” and start preparing the Statement of Work. There was a huge line of folks wanting SharePoint up and running, most probably because someone sold it to them as part of their Microsoft Enterprise Agreement (EA) and it was supposed to help them “get with the program” in terms of cutting edge technology in the enterprise. Selling SharePoint in 2007 was kind of like shooting fish in a barrel, or to use a more appropriate analogy, owning a successful software company in 1995…if you could not do it, you should be checked for a pulse and seek a different career path. Then, we had the little matter of the economy sliding down the drain faster than Kellogg’s dropped Michael “Are You Holding?” Phelps…and it has become necessary to actually have a story to tell and maybe (heaven forbid) use some selling skills. SharePoint is, for lack of a better or more politically correct term, the “hatchet” companies are looking for as they “right-size” their way to increased buoyancy in these trying times. Think of SharePoint as Sir Anthony Hopkins in The Efficiency Expert and The Two “Bobs” from Office Space, all rolled into one awesome product…designed to maximize your ability to achieve “The Four Rights” of good knowledge / information / content management. Let’s walk through a quick example for the sake of illustration. We will use numbers that make the math easy…your individual mileage may vary, depending on your corporate structure and culture, but hopefully you will be able to see the potential when we are done. You have 5 accountants in your company. On average, each of them spends around 20 hours per week doing their actual job (counting beans and crunching numbers), 5 hours per week dealing with e-mail / meeting requests, 7 hours per week in meetings, and 8 hours per week trying to find information on your dearth of corporate systems, network fileshares, their individual hard drive, e-mail archives, etc., etc. You implement SharePoint, and the numbers start to swing in your favor. The table below presents a conservative estimate:
So, after implementing SharePoint, the accountants can spend about 50% less time looking for information, 50% less time in meetings, and 50% less time dealing with e-mail / meeting requests. The net result is that each accountant has 10 more hours per week, and 500 more hours per year, to spend doing their job. So, for 5 accountants, that amounts to 2500 hours per year of extra work they can do after implementing SharePoint. Here comes the very unpleasant part, at least for one of the accountants. If SharePoint has gained you an average of 500 hours per accountant per year, then it stands to reason that you now only need to have 4 accountants, working more efficiently, as a direct result of implementing SharePoint, to accomplish the same amount of work that 5 accountants are doing now. Let’s keep the momentum going here – once again, we will make the numbers easy. Let’s say you have 500 employees, 50 of which are in management and mission critical positions…we will leave them alone for now. So, of the other 450 employees, let’s extrapolate our 20% force optimization as a result of a properly waged SharePoint implementation, and say that you can eliminate up to 90 positions, with a 0% drop in work performed. Once again, let’s keep the math easy and say that the average yearly salary of those 90 employees is $40,000. SharePoint has just brought you a savings of $360,000…and that does not include:
Once again, keeping things simple, let’s just say that it would not be unexpected for a proper SharePoint implementation at a 500-employee company to save 500,000 or more in the first 12 months after the initial SharePoint project, which will cost you around $50,000-100,000, based on the volume of content and resources required. For larger companies, the cost of the SharePoint project will increase in a linear fashion, while the potential savings tend to increase exponentially. I almost feel like Vince Offer (the Sham-Wow and Slap Chop guy) – it practically sells itself. Maybe I will get one of those stylish headsets like Vince and use some goop to spike up what’s left of my hair. So, SharePoint is not just a way to make your company more efficient…it is a bona fide way for you to consolidate company resources and trim excess positions that are only necessary because of current inefficiencies in process and knowledge quality / availability. This is how SharePoint is starting to be billed, at least by the most savvy Microsoft Partners that know their customers and what they need in 2009 and beyond. So, to keep using the Office Space analogy, how can you protect yourself against becoming Michael Bolton or Samir Notgonnaworkhereanymore? Well, that is simple. Make SharePoint (or whatever Knowledge Management tool your company chooses) your friend. Volunteer to be a content manager, user interface tester, etc. Learn everything you can about the product and how to use it…in addition to gaining some skills with some cutting-edge technology, you might just be saving your job. The Four Rights of Knowledge ManagementAs the most forward-thinking companies are starting to hire and/or organically grow Chief Knowledge Officers (CKOs), the already opaque waters of Knowledge Management are becoming further muddied by the day. Don’t get me wrong – I absolutely love the concept of the CKO. In fact, if you have not heard of the CKO yet, don’t worry, you will. If your company has more than 1,000 employees, and you still do not have a CKO, you will…and if you are concerned about the long-term success of your company, you should hope that day comes sooner rather than later. I love the CKO position so much that I have been taking the appropriate steps for the past 2-3 years to position myself and my company as an indispensable resource for companies in this area. I am very excited about the prospects there and cannot wait to make the formal announcement regarding our processes and services in this area later this year. However, I do not want to give away too much information in this forum, as someone with greater resources than myself could easily rain on my parade if they knew my plans. Anyway, the main problem of CKOs from a “real people solving real problems in the real world” standpoint is that Knowledge Management, already a difficult undertaking, is becoming even further bogged down with project charters, mission statements, corporate oversight and “analysis paralysis” of the highest order. The entire concept of Knowledge Management, longtime corporate bridesmaid, is finally starting to spread its wings, yet simultaneously becoming even more difficult to quantify and as a result, exponentially more difficult to bring to fruition. Enter The Four RIGHTs. An effective Knowledge Management implementation will put the RIGHT information in front of the RIGHT person at the RIGHT time to make the RIGHT decision. It’s that simple. Sure, in a large company, figuring out each one of the RIGHTs could take 6 months, and a near-flawless implementation of technology and process surrounding that RIGHT could take another 6 months, but the four RIGHTs should be the rallying cry of every CKO and Knowledge Management consultant in the world. In fact, the first thing I do in every strategic Knowledge Management engagement is drive home the concept of the four RIGHTs. I put it on the wall of the interview room; I put it into every slide deck; and I try to work it into every conversation. It immediately cuts through any nebulous concepts surrounding Knowledge Management in general and a company’s approach to Knowledge Management in particular. I cannot tell you how many times I have been bogged down in the middle of a conversation talking about corporate naming conventions and how they should be implemented in a specific knowledge management portal (Microsoft SharePoint). It is usually during those moments that I start bringing everyone back to The Four RIGHTs. I don’t care if you call it a work instruction, policy, or a ham sandwich…does it help us get through each of the RIGHTs, so we can maximize the chances of the RIGHT decision? If not, why are we talking about it? This kind of approach is sorely lacking in the Knowledge Management community today, and we only have ourselves to blame. In fact, we have gone so far toward the nebulous that one of the key defining concepts within Knowledge Management is actually called a “Continuum”. It’s true – I did not make that up. The “Continuum” originally started out as a progression from Data to Information to Knowledge. Recently, there has been another level added…Wisdom. Oh, great. Just what the whole concept needed – more abstract terminology. Just for kicks, take a look at this picture and tell me what each of the terms on it means to you. Now, go ask someone else to do the same. Can you see how Knowledge Management has gotten its current reputation of a bunch of flowery language with no substance? Hopefully, you not only agree, but will help me spread the word. Knowledge Management does not have to be so hard, and it certainly does not need to be as misunderstood as it has been in the past. All you need is to be ever mindful of The Four RIGHTs…if you do right by them, they will take care of you as well…if you lose sight of them, they will tear you a new one. February 09 Validating "Choice" Fields in SharePoint Designer Workflow Forms
I recently discovered a bug in SharePoint Designer Workflows whereby a "Choice" field that you denote as required (de-select the "Allow blank values" option in your SharePoint Designer Workflow form field options) is not exactly required on the form...as in, the validation is worthless. This blog post will attempt to help solve this issue for a couple of different options you may want to select or use when designing your Workflow Task forms in SharePoint Designer. For starters, let me say that I have merely built a small amount of extra validation onto some existing information I found in the blogosphere. The original and still penultimate article on how to manipulate SharePoint form fields using JavaScript is by Rob Howard, and can be found here: http://blogs.msdn.com/sharepointdesigner/archive/2007/06/13/using-javascript-to-manipulate-a-list-form-field.aspx. I also found some good information in this thread from the MSDN forums, which uses Rob's ideas to specifically validate a "Choice" field in a SharePoint Designer Workflow Task Form: http://social.msdn.microsoft.com/Forums/en-US/sharepointworkflow/thread/0ad7fc3c-97a1-464e-ae89-c3133462dda8/ The only problem I had with the information contained in the MSDN thread is that it is what I would call a little bit clunky in how it handles some of the validation, particularly the code that deals with Radio Buttons. Sidebar: If you want to go all the way with Radio Button validation, check out this article by Markuso: http://blog.markuso.com/posts/9/using-javascript-to-access-a-list-form-field-in-sharepoint-designer/ OK, back on point. I wanted to come up with a way to implement validation within a form for multiple field types. As you would expect, since it is using JavaScript, I have run into many of the same issues that I mentioned as drawbacks to the code contained in the MSDN thread. Alas, it is one of the joys of JavaScript, especially on SharePoint. I have chosen to support the following validations in the first version...because that was the requirement I had for a client.
Step 1: JavaScript Coding Here is the code that I came up with. Once again, please be advised that it is a little bit clunky...but effective nonetheless. function validateField(fieldName)
{
var theForm = document.forms[0];
for(var i=0; i < theForm.elements.length; i++)
{
if(theForm.elements[i].title == fieldName)
{
if(theForm.elements[i].value == "")
{
alert("You must select a value for " + fieldName + "!");
return false;
}
return true;
}
}
}
function validateRadio(fieldName)
{
var theForm=document.forms[0];
for(var i=0; i < theForm.elements.length; i++)
{
if(theForm.elements[i].type == "radio")
{
if(theForm.elements[i].checked)
{
return true;
}
}
}
alert("You must choose a value for " + fieldName + "!");
return false;
}
function validateApprovalCheckbox(fieldName)
{
var theForm = document.forms[0];
var approved = 0;
var rejected = 0;
for(var i=0; i < theForm.elements.length; i++)
{
if(theForm.elements[i].type == "checkbox")
{
if(theForm.elements[i].checked)
{
if(theForm.elements[i].parentElement.title == "Approved")
{
approved = 1;
}
if(theForm.elements[i].parentElelment.title == "Rejected")
{
rejected = 1;
}
}
}
}
if(approved > 0)
{
if(rejected > 0)
{
alert("You must select only one value for " + fieldName + "!");
return false;
}
return true;
}
if(rejected > 0)
{
return true;
}
alert("You must choose a value for " + fieldName + "!");
return false;
}
function validateCheckboxSingle(fieldName)
{
var theForm = document.forms[0];
var checkedCount = 0;
for(var i=0; i < theForm.elements.length; i++)
{
if(theForm.elements[i].type == "checkbox")
{
if(theForm.elements[i].checked)
{
checkedCount = checkedCount + 1;
}
}
}
if(checkedCount > 1)
{
alert("You must select only one value for " + fieldName + "!");
return false;
}
if(checkedCount == 0)
{
alert("You must choose a value for " + fieldName + "!");
return false;
}
return true;
}
OK, now that THAT unpleasantness is taken care of, how the heck do we use it? Step 2: Using the Code in SharePoint Designer First, open your form in SharePoint Designer and find an asp.net tag near the top that looks like this: <asp:content id="content2" runat="server" contentplaceholderid="PlaceHolderMain"> and put the JavaScript code RIGHT after that. DO NOT FORGET TO ENCLOSE THE CODE IN A <script type="text/javascript" language="javascript"> tag! Now, we just need to fire off one or more of those functions when we click our "Complete Task" button on our form.
OK -- now for the extra long list of caveats for this "solution"...and the air quotes are no accident. Make no mistake, this is a workaround if ever there was one. And, like most workarounds of this type, there are certain things you will need to know before implementing it. They are:
Please feel free to expand upon this code and let me know what results you experience. CodePlex to the Rescue...Again
In the words of the immortal Bob Ryan from "Entourage", take a look at this picture: Is that something you might be interested in? This little application installs in about 30 seconds and lets you get to the Site Settings of your current site through a keyboard shortcut...without leaving the current page. While I have not fully tested it yet, I have installed it on 3 separate environments and it works just fine on all 3. Here is a direct link to the project on CodePlex. http://www.codeplex.com/inlinesitesettings Enjoy... February 06 White Paper - The Six Pillars of SharePoint
The purpose of this document is to provide a basic overview of the Six Pillars of Microsoft Office SharePoint Server (MOSS) 2007. CollaborationMOSS 2007 helps your organization get more done by providing a platform for sharing information and working together in teams, communities and people-driven processes. Office SharePoint Server is an important part of the overall Microsoft collaboration vision and integrates with other collaborative products to offer a comprehensive infrastructure for working with others.
PortalPortal sites connect your people to business critical information, expertise and applications. MOSS is a world-class Enterprise Portal platform that makes it easy to build and maintain portal sites for every aspect of your business.
Enterprise SearchMOSS 2007 is the Microsoft enterprise search solution for organizations that want to increase productivity and reduce information overload by providing their employees, partners and customers the ability to find relevant content in a wide range of repositories and formats. With actionable search results that respect security permissions, MOSS 2007 lets users go beyond documents and across repositories to unlock information, find people and locate expertise in the enterprise.
Enterprise Content Management (ECM)Over the last several years, organizations have created a huge volume of unstructured content that includes documents, e-mail messages, videos, instant messages, Web pages and more. This content often exists in a state of unmanaged chaos that prevents an organization from properly using these valuable assets for better knowledge sharing, improved customer communications and increased process efficiency. ECM from Microsoft is a key component of an organization’s infrastructure that can help companies overcome these challenges. Built on a well-integrated platform, ECM from Microsoft easily extends content management to every information worker in an organization through integration with familiar tools like the Microsoft office system. A Microsoft ECM solution can help businesses:
Integrated collaboration capabilities, such as automated workflow, help people work better together to create, review and approve documents in a more structured way. That way, they no longer have to rely solely on e-mail to share documents. Mobile workers can also use these document offline when they are not connected to the network.
These capabilities are provided by Microsoft in a single integrated business productivity infrastructure. This significantly reduces the management burden on the IT organization, since they now have a common set of tools and methodologies for managing the solution. Tight integration with familiar tools such as Microsoft Office system programs enables the Microsoft ECM solution to easily extend these capabilities to every information worker in the organization. This reduces the burden on users, who no longer need to learn new tools or change the way they work in order to participate in their organization’s content management strategy. Business Process and FormsMOSS 2007 provides built-in workflow templates to automate approval, review and archiving processes. With MOSS 2007, you can also create, maintain and analyze custom workflows, enabling you to streamline your collaborative processes. Electronic forms provided through InfoPath Forms Services are an integral part of such workflows. These InfoPath-designed electronic forms make it easy to collect and validate information that drives your business processes. And you can collect and validate this information right from the Microsoft Office client applications you use every day.
For more complex workflows, developers can also use the standard Microsoft development environment, Microsoft Visual Studio 2005. Business IntelligenceBusiness Intelligence (BI) with MOSS 2007 makes it easy for decision-makers to access and analyze information anytime, anywhere. You can get up-to-date information whenever people work, collaborate and make decisions, whether it’s on the desktop or over the Web. Now, aligning employees’ objectives with your corporate goals is as easy as creating a spreadsheet or report.
Project Server Errors on User Edit ScreenAt a client recently, I noticed that their Project Server implementation is having some issues with the edit user page throwing errors for certain users. I will try to get a screenshot later and marry it up with this post. After some research, we were able to determine that one of the Project Server databases had those users checked out to a fictitious user (00000000-0000-0000-0000-000000000000), instead of one of the two normal values, NULL or an actual GUID representing the user that had that record checked out. While we are currently working on a long-term fix, the quickest way we found to fix the problem immediately was to run some simple SQL queries against the ProjectServer_Published database. In order to see the users that are in this situation, execute the following SQL command:
In order to fix the user accounts so you can access them through the update user screen, execute the following SQL command:
NOTE: Make sure you use the wildcard notation above, and not something like WHERE RES_CHECKOUTBY IS NOT NULL, as that will override the value for users that are actually checked out. NOTE 2: As always, take special care and concern when running SQL commands against production databases. Once I have an update on how to fix this long-term, I will repost... SharePoint 2007 Authentication OptionsTasked with configuring a MOSS 2007 implementation for external users to authenticate through Forms-Based Authentication (FBA), I hit the blogosphere recently. Based on some preliminary research, I was able to find the two sources referenced below. Rather than link out to the blog entries themselves, I have saved them off as PDFs. Hopefully, assuming you are able to find my blog, having both of these documents in one location will save you a few seconds. Configuring Multiple Authentication Providers for SharePoint 2007 by Steve Peschka SharePoint 2007 Forms Authentication by Nick Swan SharePoint 2007 Customization GuideAnyone who has been trying to figure out how to customize the look and feel of SharePoint 2007 has found Liam Cleary's blog. If you would like to explore his blog directly (highly recommended), you may do so at: http://www.sharepointblogs.com/helloitsliam/. The first entry at that location talks about a move to a different URL, which is: http://www.helloitsliam.com/. His series of articles on customization is excellent, and I have compiled them into one PDF for easy reference. Please be advised, it is 96 pages and a 3 MB download. SharePoint/MOSS 2007 Customization Guide by Liam Cleary |
|
|