Custom Software Apps & SharePoint Consulting

InfoPath is key to getting clean, useful information from users into SharePoint. Your valuable information can easily be gathered at a granular level with InfoPath forms, and SharePoint can then extract data you care about to create relevant, useful information for decision makers. Basically, InfoPath translates inputs from user information into data points, preparing SharePoint with good data to produce actionable information – ideally customized for specific users.  Because of it’s ability to control data input, InfoPath is the tool to use with SharePoint in order to gather and validate data, which can then be sorted and sourced by SharePoint’s document management system. So what exactly is InfoPath then?

InfoPath is a platform for developing, distributing, filling and submitting forms. The InfoPath desktop software exists in two forms; a design mode (for developers) to create the form and a filler mode for data entry. A well-made form would contain rules to format and validate all data entered into the form preventing any malformed or invalid data from polluting your system.

InfoPath can pull data from XML files, SQL databases, web services, and SharePoint lists; this data can be used to populate dropdown lists and grids to expedite data entry. When a form is complete and there are no invalid fields it is time to submit the form. Forms can be submitted in a variety of ways: via Email, to a web service, or a SharePoint form library.

Since an InfoPath form is nothing more than a XML document, it lends itself very well to SharePoint’s document management system. InfoPath also offers a SharePoint web part that can be used to view and fill out forms within a SharePoint site while in the browser (platform independent data entry).

In most companies there is a process in which employees can ask for new hardware or software; usually involving emails, phone calls, and verbal discussions. This can turn into a long and frustrating process (typically leaving very few records), so let’s replace this with a SharePoint managed InfoPath form.

  1. You open the “Request for Hardware” form within SharePoint. InfoPath uses Active Directory to populate your First/Last name, phone number, and department into the form.
  2. InfoPath retrieves the available purchase types from a SharePoint list and displays them to you in a dropdown list. In this case you select “Computer” as your purchase type, and fill out the product name, model, and comment in the fields provided.
  3. You review your request and submit the form to a SharePoint form library. It is common for companies to have some level of oversight over what employees purchase. To manage this, a workflow is triggered within SharePoint that requires 2 managers to approve your purchase request.
  4. The managers receive a notification via a SharePoint alert that they have a pending purchase request; let’s assume they both approve the purchase.
  5. The form is moved from the Pending Purchase Request library to the IT department’s Purchase Request library. The folks at the IT department will get a notification similar to the approval request notification that was sent to the managers.
  6. When this form is opened by someone in the IT department, they will be looking at a slightly different view of the form. All of the information you entered into the form will be read-only, and a new section will be visible for the purchaser to log all the purchase details (supplier, tax, and actual cost).

From here there are numerous paths the form could take from logging the shipping information (allowing SharePoint to display tracking details) to assigning the hardware to the end user within SharePoint.


Kenny McGarvey
Senior Software Consultant @ Entrance
Kenny has over 5 years of experience developing software across a variety of platforms, languages, and domains. He is an enthusiast of all things Javascript/NodeJs, NoSQL databases, machine learning, or anything related to the Amazon Web Services stack. Outside of work he spends a great deal of time contributing to community projects on GitHub.
Carol Entrance Software Consulting making software better