120 likes | 251 Views
Advanced InfoPath Development InfoPath / SharePoint 2010 Prepared By: Suzanne George Suzanne.George@perficient.com Sr. Architect Perficient - Microsoft West Region. About Perficient. Perficient is a leading information technology consulting firm serving clients throughout North America.
E N D
Advanced InfoPath DevelopmentInfoPath / SharePoint 2010 • Prepared By: Suzanne George • Suzanne.George@perficient.com • Sr. Architect • Perficient - Microsoft West Region
About Perficient Perficient is a leading information technology consulting firm serving clients throughout North America. We help clients implement business-driven technology solutions that integrate business processes, improve worker productivity, increase customer loyalty and create a more agile enterprise to better respond to new business opportunities.
Agenda • InfoPath – Getting started • Designing foundations • What you need to know • Debugging InfoPath • Creating a Vacation Request Form
InfoPath – Love it or Hate it!?! The Promise of InfoPath Where is the developer?? Why Me?? The Developer Dream
InfoPath - Start with the basics! • To use or not to use InfoPath? Just because you can doesn’t mean you should! • Pros: • Easy to use interface, integration with SharePoint Listsand Form Web Parts, Office Integration. • Power Users can do simple stuff. • Lookups and repeating tables are easy to do. • Cons: • Advanced developers find it frustrating • Can’t publish people picker fields • Publishing columns / changes to column names • No CSS type support (expand/collapse regions) • evaluate the requirements and prioritization of features over simplicity and maintainability
Designing Your InfoPath Form for Success • Design first! • Where is the data? Database, List or Library, in the form? • Where does the business logic belong – Workflow, Code-Behind, or InfoPath Rules? Where will approval happen? • Form Views – how many views will you need, when will they show, and who has access to update? • Form Controls – what types of controls are needed for the data, which controls will be exported, etc. • Styles – how will the form look and does it make sense to the user?
The InfoPath Need to Know List • Deployment – Central Admin vs. Publish (Form Options) • Know how to retrieve your InfoPath Form w/Powershell • Export-SPInfoPathAdministrationFiles -path d:\Temp\file.cab • Know how to export source files before checking in to TFS. (Also possible to rename FormName.xsn to FormName.cab to view/extract contents) • When removing exported columns, the are not removed from a list! Here is how to fix it… Add-PSSnapinmicrosoft.SharePoint.PowerShell $web = Get-SPWeb http://crzo-test77/BASS $list = $web.Lists["ApplicationSupport"] $field = $list.Fields["SR Assigned To"] $field.AllowDeletion = “true” $field.Sealed = “false” $field.Delete() $list.Update() $list.Fields | Select-ObjectInternalName $web.Dispose()
Debugging an InfoPath Form • Debugging Essentials • Check form with Design Checker • Set debug mode • click the Build tab and then, at the bottom, click Advanced. In the Advanced Build Settings dialog box, click the Debug Info list and then click full • In the Options dialog box, in the area to the left, expand Debugging and then click General. • Clear the Enable Just My Code (Managed only) check box. • Select the Suppress JIT optimization on module load (Managed only) check box. • Build/Deploy • Set Central Administration Logging for InfoPath • Use ULS Viewer for log information • Urls: http://ybbest.wordpress.com/2011/01/09/how-to-debug-infopath2010-using-vs2010/ • http://msdn.microsoft.com/en-us/library/gg271285.aspx#IP14_Debugging
An example… Vacation Form • The requirements • User to input form • All data stays inside form, certain fields are exported to list • Version History • After approval start SharePoint workflow • SharePoint list views need to have People “is [Me]” functionality
Form User Input • Demo
Conclusion • Design first, code once! • InfoPath can be powerful and leverage both PowerUsers and developers capabilities • More things you can do with InfoPath • Automatically check-in / out forms • Populate dynamic approvers in form based upon information in the form • Dynamically hide and show data • Mash-ups • Read/Write to database tables • Questions?
Suzanne George For further information, please contact: Suzanne George Suzanne.George@perficient.com Sr. Technical Architect Perficient - Microsoft West Region Twitter: spgenie Books co-authored: Microsoft® SharePoint® 2010 Administrator's Companion The SharePoint 2010 Handbook: A Collection of Short Chapters for Delivering Successful SharePoint Projects