Monday, January 21, 2008

Our Newest Class – Mission: Automation – SharePoint Workflow and InfoPath

For the past year, students have been telling me they wanted more information on how to use Workflow Designer in SharePoint Designer to write workflows to automate their business processes. I hear this after they use the out-of-the-box workflows in our MOSS Core Features class. When I wrote the MOSS Advanced Features class, I included an entire module dedicated to SharePoint Designer Workflows and InfoPath. Students continue to tell me that was great, but they still want more about workflows and InfoPath.
I'm excited to announce our newest class – Mission: Automation – SharePoint Workflow and InfoPath. For three exciting days, students will dig into InfoPath, Forms Services, and SharePoint Designer workflows.
On day one, you'll focus on learning the basics of InfoPath, Forms Services, and Workflow Designer in SharePoint Designer. On day two, you'll continue to build on those skills while you learn how to interact with external data, convert existing Word and Excel forms to InfoPath forms, work with digital signatures, and explore e-mail enabled forms in InfoPath and e-mail enabled lists in SharePoint. On the last day, you will continue to expand your knowledge by learning how to send your InfoPath form data to a database, how to work with forms on a mobile device, and how to work with an InfoPath form that contains code. Whew! I told you it was exciting!
If you want to make SharePoint far more than just a place to store information, this is the class for you. Register today! The class is geared towards Information Workers who want to learn how to use SharePoint to automate common business processes, Power Users, Enterprise Planners and Teams, Webmasters, Application Designers, Systems Analysts, Help-desk and end-user support professionals, Trainers, and IT Pros and Developers who are primarily interested in out-of-the-box functionality and features. Note: this course does not teach workflow development using Visual Studio and .NET.

Sunday, January 20, 2008

Checking for a NULL Date Field in SharePoint Designer Workflow

I was recently teaching an Advanced SharePoint class in Richardson, TX and a student was expressing his frustration over Microsoft's apparent oversight within the SharePoint Designer workflow wizard. One of the "IF" conditions is a simple testing of the value of a field…"If this equals that." He wanted to test a date field in SharePoint to see if it was empty or not. Problem is, when you select a field that is typed as DATE in SharePoint Designer, there is no test for the empty or null condition. You can see this in the first figure.

It occurred to me that we might be able to change the type of the field to a string and then be able to perform the comparison. I used the "Build Dynamic String" action.

I selected the End Date custom field on my Expense Statements list and stored it in a new variable that was typed as STRING.

The results of this were not exactly what I expected, however I was able to determine, through trial and error (sending the values in an email), that the conversion created a string that was filled with question marks (????). Therefore, if you simply test to see if the new string begins with a ?, you can successfully test for an empty date value.

Both my student and I were happy with the results. There may be other ways to do this (perhaps by testing if the value of the date is equal to the "beginning of time" date), but this certainly seems like an easy and foolproof method.

Sunday, January 13, 2008

VMs Disappearing from Microsoft Virtual Server

I know this isn't specifically a SharePoint issue, but...

I use Microsoft Virtual Server to run all the SharePoint VMs that I use. At any given time, I may have 4-6 VMs on my notebook computer. Recently I ran into a problem where I kept losing my VMs that I set up on Virtual Server. Each time I came back into the Virtual Server administration web site (after restarting my notebook) my VMs that I set up from the last time would be missing. This caused me to have to go into the directory C:\Documents and Settings\All Users\Application Data\Microsoft\Virtual Server\Virtual Machines and delete all the VM shortcuts so I could re-add the VMs. Sometimes I had to create the VM again. However, all the Virtual Network shortcuts seemed to be unaffected. In all cases, the VHD and VMC files were was just the shortcuts that were causing the problem. I had been living with this problem for the last several months.

The Solution:
I felt like there was a problem somewhere in the permissions, so I finally started poking around. Sure enough, I found that there were some permissions that were not being correctly inherited from C:\Documents and Settings\All Users\Application Data\Microsoft\Virtual Server. I'm a little rusty on setting advanced permissions, so it took me a while to figure out how to make the correct permissions inherit to the Virtual Server sub-directories, but I finally figured it out. The Network Service didn’t have the appropriate permissions to the Virtual Machines directory. I finally found
this MSDN documentation that details the DACLs for the Virtual Server directory. The NETWORK SERVICE entries in the following table were the permissions that were missing and not correctly being inherited by the sub-folders.

NETWORK SERVICERead & executeThis folder, subfolders, and files
NETWORK SERVICECreate Files/Write Data Create Folders/Append DataThis folder only

Whew! Finally got that fixed!

Tuesday, January 08, 2008

Presenting at Information Worker Conference 2008 (IWC08)

I'm looking forward to presenting at this year's upcoming Information Worker Conference. Along with SharePoint Solutions' president Jeff Cate and fellow software engineer Jeremy Luerkens, I'll be presenting a session on how we use SharePoint and Extranet Collaboration Manager to facilitate and automate our customer-facing business processes. Here is the title and description of our session:

Real-world case study: Collaborating with Customers on the Extranet with SharePoint
In January, 2007, SharePoint Solutions began using SharePoint 2007 to collaborate on the Extranet with every customer that attends one of its training classes. Each training class that is held receives its own WSS site that students can access during and after class to collaborate with fellow students and their instructors. The class extranet collaboration application has been a huge success with over 100 extranet sites created and being accessed securely over the Internet by over 1,500 customers. Come hear about the features of this solution, the approach that has been taken to ensure security, and the processes that have been established to quickly generate user accounts and uniform class sites. SharePoint Solutions' award-winning Extranet Collaboration Manager add-on, a big part of this solution, will also be highlighted by its designers, Tony Bierman and Jeremy Luerkens.