Using InfoPath Browser forms as a Development Platform – Best Practices and Recommendations
It's been a while since I posted. As you may imagine, July wasn't the most popular month to spend in the office (or in the Office Server). However, I'm back and packed with loads of new information so it's sharing time! The main topic of this post will be InfoPath Development. Recently, I've been dealing a lot with InfoPath's browser forms with one of our customers (Shlomy, Sveta and Tal from the IDC – this post is dedicated to you) and while working I got the notion that many times developers tend to dismiss the fact that InfoPath is actually a full development platform and should definitely be treated as one. This is even especially important once you decided to add managed code and combine it with Visual Studio 2005/2008. Given concepts and best practices that we use in every development process are totally overlooked when you use InfoPath – and we're talking about important and time saving things like naming convections, data access layers etc.
Well, I decided to try and provide the basic Best Practices that you need to use with InfoPath forms. I believe this will add some sense into the development process and help you make the most of your time (and for other developers to maintain and debug your InfoPath forms):
Coding Naming conventions for InfoPath:
Data Access Layer in InfoPath:
Digital Signatures for InfoPath:
- Support matrix (signing is only supported in IE, but all browsers can view previously created signatures). More data in here: http://office.microsoft.com/en-us/infopath/HA102040851033.aspx#5
- Signing is performed using an ActiveX control. In a Production environment, you should secure the connection via SSL in order to ensure the security of the signed data.
Oh, and before we set off – another link you should be aware of. Check out this great post that compare InfoPath rich client to InfoPath Forms Services. It covers all of the main differences and should be used before you decide on a complex form's platform:
That's it for now. See you soon…