InfoPath 2007 Template Parts being used by other co-workers

August 2nd, 2007 by mlotter

While in Atlanta last week finishing a 2 week SharePoint 2007 consulting job B&R was lucky enough to stumble across a graphic designer wanting to work part time on InfoPath 2007 forms and SharePoint 2007 design work.  This has ended up being a great find for us at the moment because she has already wowed are current client.  She wowed them so much the client already has decided to have all existing forms redesigned by her and this just proves having a great UI person makes a world of difference.

During the process of getting her setup to work with the existing InfoPath 2007 forms and InfoPath Form Template Parts.  It was discovered that the InfoPath Form Template Parts did not show up in her InfoPath designer and she had to import them in manually.  This was something that I totally forgot about from TechED 2007 and started me to think on how best to manage this remote work.  As mentioned before she will be redesigning the existing forms but also start designing the new forms (a few 100 I think) but I will need to keep my InfoPath designer in sync and anyone else we hire to help out because I'll be adding some Rules and Conditional Formatting functionality to the forms or form template parts that the forms are made from (remember reuse). 

I'm currently thinking about using Groove 2007 to keep all the files in sync or WSS site to store and reference the InfoPath Form Template Parts.  Once we've used both solutions for a while I'll let everyone know what worked best for us.  If someone else has an ideal please speak up because I'm always open for suggestions.

Cheers    

Struggled to create a cross browser user lookup control for InfoPath 2007 browser based forms

July 31st, 2007 by mlotter

With the introduction of InfoPath 2007 came browser based forms that could be used with several different browsers but with some limitations (Official document on "Web browser compatibility in InfoPath Forms Services").  The Contact Selector (ActiveX control) is very nice but it doesn't do everything and it's not compatible with other browsers that don't support ActiveX controls.  I've looked for other reasonable solutions but haven't found anything yet.  So I came to the conclusion that I needed to build something on my own that would not require any custom code in InfoPath 2007 but could be reused by any other form.  Shortly after making this decision I learned my current client needed the same capability but only to retrieve account names from Active Directory.

With my limited time to complete this for my client it was pretty simple on how I was going to do it but was not really happy with solution because I thought it could be done better but I just don't have the knowledge of other technologies to know what is possible with InfoPath 2007 and don't want to write custom code in the form source because of support reasons.  The solution was built as an InfoPath Form Template Part with 3 controls (search box, search button and search results list box) and .NET Web Service solution that uses LDAP to query Active Directory by the user last name.  This solution was easy to build and met the immediate needs and most importantly met the need of being able to reuse it in any InfoPath 2007 form.

Over all everything works fine but some of the baggage is what I've been struggling with and thinking there has to be a better solution.  The items I'm struggling with are listed below and if anybody has any suggestions I would be more than interested learning about them.

  • Adding the control more than once to the form creates another Section to the data source, naturally. It would be nice to learn how to reuse the same control data source.
  • Using the same Secondary Data Source causes all other search results box to be pre-populated. Client likes this feature but it drives me nuts but the old saying says the client is always right.
  • The search control fields stay visible on the form unless the user manually minimizes the section. Is there any way to have a pop-up without writing custom code?
  • Search box doesn't execute the search query when hitting Enter key. What simple thing is missing hear?

Overall the functionality of this simple solution has outweighed my troubles but it would be great if it could be better.  The solution has already been reused to bring back email addresses instead of usernames and it was pretty much a copy and paste in the .NET Web Service solution with a little query change and duplicating the InfoPath Form Template and changing the data connection.

Well it's time for me to get back to work.

Cheers

InfoPath 2007 Template Parts to the rescue

July 17th, 2007 by mlotter

When doing InfoPath 2003 form creation one of the most tedious things that I did was keeping all the sections, tables, fields, data connections and dropdown lists consistent between all forms.  When the time came along to pass InfoPath form to the client developers or business analysts it was nearly impossible for them to keep everything consistent because it was so tedious and time consuming.  The ROI was not that high for the customer and the client development was pretty slow.

The InfoPath 2007 was released and it has a new feature called Template Parts. Template Parts is a new type of InfoPath template that allows for predefined forms to be saved and then imported into the InfoPath Controls Task Pane.  A Template Part is capable of saving Data Connections, Rules, Conditional Formatting, Data Validation and many other things.  Just having this capability has saved me a tremendous amount of time when designing forms and it has increased the ROI for the client.  A standard address block is one of the first things that I create for a new client because I'm able reuse it right away and show immediate ROI.  At first you might not think this would have a big impact but when you take in account that, you no longer have to worry about defining the data source fields, layout table, field widths, colors, font style/size, data connections for states/regions and country, data validation, rules or conditional formatting then the ROI is reached pretty quickly.  Once I understood this capability it changed how I started developing forms.

A feature of a Template Part that you need to take in consideration when using them to help designing forms is the Update capability.  The Update capability allows for existing Template Part control on a form to be updated once the master Template Part control has changed and re-imported into the designer.  At first this capability was frustrating because I didn't design everything with this in mind but after understanding how it worked, I quickly changed how I was designing forms and took advantage of the Update capability.

Long story short, Template Parts are great if you put thought into how you are building and using them.  If you don't do this then it will just adds more complexity when building your InfoPath form and shouldn't be used.

Cheers,
Michael

A few good books on SharePoint, InfoPath, Workflow and Directory Services Programming

July 15th, 2007 by mlotter

Every since SharePoint 2007 was released mainstream at the end of January new books have started to flood the market and in the past it has always been a hit or miss on which books are worth buying for me.  When I'm buying books for a new product I look for books that could give me a quick reference on how to do things without spending a lot of time researching it.  Once I've used a product more than six months then I tend to look for books with real life scenarios.  Real life scenarios are vital to me because of all the consulting I do and it helps me when creating solutions for clients.

The books that I've bought so far this year worth mentioning are listed below.

Inside Office SharePoint Server 2007 by Patrick Tisseghem
This book has been very helpful just getting started with different aspects of SharePoint 2007 that I haven't had time to work with.  This book has been worth every penny that I spent and I would recommend it to anyone who wants to get their hands around SharePoint 2007.

Designing Forms for Microsoft Office InfoPath and Forms Services 2007 by Scott Roberts and Hagen Green
Most of my work recently has been in this area and I've used this book several times as a quick reference for getting details about InfoPath Forms Services.  The book is very thick and covers tons of information on both subjects and it's a must have if you're starting out with InfoPath 2007.

Workflow in the 2007 Microsoft Office System by David Mann
This book was a good starter book for me when I started building .NET Workflows through VS for SharePoint 2007.  It has saved me a ton of initial research time and I have recommended this book to all my clients that have asked for a book that deals with workflow and SharePoint 2007.

 The .NET Developer's Guide to Directory Services Programming by Joe Kaplan and Ryan Dunn
When at TechEd I discovered this gem of a book and it has saved me tons of time.  This is another book that has paid for its self many times over and I would like to thank Joe and Ryan for putting this book together.

If anybody else has any suggestions I would love to hear about them because I am always looking for new books with good content.

Cheers,
Michael

My new AT&T 8525 Smartphone and "Internet Sharing" feature

July 12th, 2007 by mlotter

Month after joining B&R Business Solutions I realized that my current LG phone was not going to give me enough functionality and getting a new Smartphone was on the horizon.  Two weekends ago I went shopping and decided to purchase the AT&T 8525 phone because it seemed to have all the features that I wanted and had the slide out keyboard (nice feature since I have big fingers).  The one feature that I've used the most since the purchase is the "Internet Sharing" (phone connected to laptop as modem either through USB or Bluetooth) and it works really good most of the time with my Vista Ultimate OS.  The only complaint is that the EDGE Network is a little slow but when connected to the 3 G Network the performance is very nice.  This option is really nice for me because I travel all the time for my job and having internet access wherever I'm at is becoming a necessity.

A positive of having this phone now is that I can show off the SharePoint mobile page functionality to my clients and maybe even create some of my own stuff.  Does anybody know if InfoPath has mobile page functionality?  Wouldn't that be cool to develop and use.

On a side note, when I purchased my phone the wife decided she needed a new phone to and she decided to buy the iPhone from Apple.  This phone is really cool but the biggest drawback that I've seen so far is the syncing capability (only through iTunes application) and keyboard (touch screen hard and slow for typing when you have big fingers).  The big positive is that she is really happy with it and in the long wrong that's what counts for me.

I'm off to work now and currently running late but I just wanted to share my experiences with my new AT&T 8525, which I am currently using the "Internet Sharing" feature for this blog post.

Cheers,
Michael

Simple Corporate Directory with InfoPath 2007, SharePoint 2007 and Web Service

July 8th, 2007 by mlotter

Currently have a client that we built a SharePoint 2007 web part that displays Active Directory user name, company, title and extension and it's filtered by location and last name initials.  All the LDAP queries were built in a .NET Class project and exposed through a .NET Web Service.  This was all great but I wanted a simple way to display the data in a table format during testing so I decided to use InfoPath 2007 as the presentation layer.  To get it to work was simply done by created a Data Connection to my web service and then inserting the repeating group from web service data source to the form as a repeating table.  Then I clicked the preview button and all Active Directory user information was returned after a short period of time.

The web service was built to accept three parameters (company name, last name initial and title) and I wanted to add the capability to the form to submit the parameters dynamically to test performance of the LDAP query.  To accomplish this I added three textboxes and a button to the form and then created a rule for the button to set the web service data source parameters with the corresponding textboxes and then execute a query to retrieve the results whenever the button was pressed.  All this was accomplished within in minutes and that started me to think about what else could be done simply.

Before I could think about it, my patient, understanding lovely wife came into the office and said she was ready for dinner, so off we went.  Driving to dinner it came to me that I could just publish the form to SharePoint 2007 and display it through the XMLFormView web part so it can inherit the look and feel of SharePoint site.  After returning from dinner this was accomplished by converting my data connection and publishing it the Site Collection Data Connection Library, tiding up the form and publishing it to my local drive.  Then I opened up Central Administration and uploaded the form to InfoPath Form Services and then activated it to my site collection.  I opened my site and created a new page and added the XMLFormView web part and specified the location of the form and published the page. 

The form worked great when returning small amounts of user information but had troubles handling large amounts of user information.  This brought me to the ideal of doing some sort of paging but when I went back to InfoPath I was unable to figure it out and I decided to postpone the research for another night but wanted to share the above ideal with everyone.  If anyone has any ideal on how to make the paging work I would love to hear about it.

Cheers,
Michael

Joining a new SharePoint team

July 5th, 2007 by mlotter

I'm proud to announce that I am now a fulltime member of the B&R Business Solutions team of Chris Regan, Jason Medero and Bob Fox to mention a few.  I made the switch officially on June 1st which was my last day with TAKE Solutions a company that launched me into mainstream SharePoint and InfoPath consulting.  It was also my last day on a SharePoint 2003 to SharePoint 2007 upgrade project which was one of my most challenging consulting gigs to date because it included two separate environments that need to be upgraded.

The first week on the job was TechEd 2007 and it was my first TechEd conference and it was a great experience. I had a great time at the conference during the day and at night hanging out with Chris Regan and Jason Medero and many other SharePoint gurus.  That week was also when I passed one of the four SharePoint certifications and it was my first Microsoft certification, just three more to go until I have them all completed.

I'm hoping to start posting more on my blog now, since I'm only working one job now and I finished my chapter for the SharePoint 2007: The Definitive Guide book.  This was my first time writing for a book and it was not the easiest thing in the world to do but it was a great overall experience and I learned a lot from it and I would like to thank Bob Fox and O'REILLY publishing for giving me the chance to write a chapter and the official release date for the book is August 15th.

Well I better get back to work on my InfoPath forms and Windows Communication Foundation stuff before it gets too late.

Cheers,
Michael

MS InfoPath Team blog is looking to put together a OPML compilation

January 19th, 2007 by mlotter

The MS InfoPath team blog is currently looking for bloggers who would be interested in submitting their blog URL.  All you have to do is add a comment to the following post.  The below URL will take you to there post.

http://blogs.msdn.com/infopath/archive/2007/01/19/do-you-blog-about-infopath.aspx

 

InfoPath 2003 error – Microsoft .NET Framework 1.1 is not installed or InfoPath primary interop assembly is not registered

January 8th, 2007 by mlotter

One of my previous clients we did 2 custom InfoPath 2003 forms with Visual Studio 2003 and when we deployed and launched the forms on their machines the below error was occurring.  After doing some research on the net and doing some old fashion trial by error we discovored and documented the following solution for the error. 

 

Error:

InfoPath cannot open the selected form because of an error in the form's code.

The Microsoft .NET Framework 1.1 is not installed on your computer or the InfoPath primary interop assembly (PIA) is not registered. Use Add or Remove Programs in Control Panel to make sure that Microsoft .NET Framework 1.1 is installed or install it using Windows Update, then run Setup again to confirm that .NET Programmability Support is installed, or contact your system administrator.

 

Complete the following steps from the machine having the error.

ú         Open Control Panel – Add or Remove Programs

ú         From the “Add or Remove Programs” pop-up window click the Microsoft Office 2003 installation entry to highlight it.

ú         Click the “Click hear for support information” link directly below entry heading.

        

ú         Click the “Repair” button located on the new pop-up window.

        

ú         The Microsoft Office 2003 installation program will start the repair process (this may take several minutes before it completes).

ú         When finished close all the windows and then reboot the machine and then launch the InfoPath 2003 form again and the error should no longer exist.

 

 

Strange interaction when installing VS 2005 Extensions for WF and VSTO 2005 SE in same directory

January 8th, 2007 by mlotter

I've recently built a new development environment for a new InfoPath 2007 and Windows Workflow project.  The installation of all the software was going really smoothly until I tried to install Visual Studio Extensions for Windows Workflow Foundation.  Each time I would double click the exe to install the extensions I would get the repair and remove application for VSTO 2005 SE.  I couldn't figure out what was causing the strange interaction so I deleted the install file and downloaded it again but no luck because the same thing was happening with the new file.  I rebooted the server but I still had the problem and I finally decided to move on and install the reset of the software.  When I was done I deleted the all the files except for the VS 2005 Extensions for WF and I tried it again and it worked this time.  Instead of installing the extensions I decided to do some more investigation on what was going on and after doing some trial and error I was able to replicate the strange interaction.  The strange interaction only occurs when the VS 2005 Extensions for WF and VSTO 2005 SE installation files are in the same directory.   If you remove the installation file for VSTO 2005 SE from the directory the strange interaction doesn't occur and you are able to install the extensions successfully.

 

I don't know if anyone else had or will have this strange interaction but I thought I would pass along my experience.