SharePoint Products TechCenter >
SharePoint Products and Technologies Forums
>
SharePoint - InfoPath Forms Services
>
Web Services and Database Linking Questions using Infopath
Web Services and Database Linking Questions using Infopath
- I am very new to Sharepoint and I am not a programmer so that is why I believe the answers to my questions may be over my head. I would still like to hear where I should go next to accomplish my tasks. I am using a Sharepoint Site hosted by Microsoft Online services and that is why the articles I have been reading do not pertain to me directly. Simply enough, I want to build web forms that can submit and query data to and from a database and that can be modified in a browser. I believe I will have to use a combination of SQL Server, Infopath, and Visual Studio to do this. First I must create a database that will store my data. Is there a place to host a SQL database online so that it is easily accessed by my hosted Sharepoint site or is there a way to link the Sharepoint site to my on site SQL Server and database? Second, I believe I must build a web service using Visual Studio to create functions to submit and query the data. Then I will have to create a form template in Infopath that will link to my web service. If that is all correct than I know my problems and I will need to procure a DBA and a Programmer to proceed. Please correct me if any of my steps are incorrect. Thank you!
Answers
- InfoPath to SQL is not an option with browser forms - it has to be done with a web service. I am not clear on why the customer info can't be in SharePoint, though. You can save yourself a ton of hassle and time if you let the form submit the data to SharePoint only. Is customer info considered sensitive within the company itself? That type of info is usually not treated as private from internal employees, but I don't know your situation.
As for the steps you outlined, those are correct.
- Create the DB (you can do it locally on a SQL server of your own)
- Create the web service(s) in Visual Studio
- Create the InfoPath form either based off the web service schema or as a blank form that has data connections for receiving and submitting info from/to the DB
- Configure a BUNCH of special authentication things in SharePoint so that users of the form can actually commit new data to the DB without errors (this is very involved and requires a SharePoint expert who has farm admin rights)
If you keep the data in SharePoint, you avoid all of the above steps and just make a simple form that connects to SharePoint lists/libraries only. Saves a ton of time and effort if it meets your requirements.
SharePoint Architect || My Blog- Marked As Answer byLambert QinMSFT, ModeratorTuesday, November 10, 2009 5:42 AM
- Okay, so i understand that Sharepoint is only used as a repository to store your Infopath form.
Assuming that you are fixed with Infopath being the front end, it can be published to a sharepoint server) which will submit and queries the database.
various implementation strategy (assuming that sharepoint is only used as repository)
Infopath <-> SQL Server
Infopath <-> .Net WebService <-> SQL Server
try web parts, this can be highly customizable by the sharepoint users in your organization.
Balaji Baskar- Marked As Answer byLambert QinMSFT, ModeratorTuesday, November 10, 2009 5:42 AM
All Replies
- If the need is to consume and utilize the data residing in (Sharepoint) then the combination of Sharepoint and Infopath is good enough. Your infopath can submit to the Sharepoint site. This is the best approach of not overloading your approch with webservices and database and so on.
Note if there is no need of sharepoint, developing an appln in .Net interacting with your database is ideal.
Balaji Baskar - There will probably be a form where employees will enter customer info (which we won't want hanging out on the Sharepoint site and will need to be submitted to a database). In the same fashion, there will be a form that will need to query those customer's names. The necessity of Sharepoint is that we can have people using the browser based forms from any location without having any specific application.
- Okay, so i understand that Sharepoint is only used as a repository to store your Infopath form.
Assuming that you are fixed with Infopath being the front end, it can be published to a sharepoint server) which will submit and queries the database.
various implementation strategy (assuming that sharepoint is only used as repository)
Infopath <-> SQL Server
Infopath <-> .Net WebService <-> SQL Server
try web parts, this can be highly customizable by the sharepoint users in your organization.
Balaji Baskar- Marked As Answer byLambert QinMSFT, ModeratorTuesday, November 10, 2009 5:42 AM
- InfoPath to SQL is not an option with browser forms - it has to be done with a web service. I am not clear on why the customer info can't be in SharePoint, though. You can save yourself a ton of hassle and time if you let the form submit the data to SharePoint only. Is customer info considered sensitive within the company itself? That type of info is usually not treated as private from internal employees, but I don't know your situation.
As for the steps you outlined, those are correct.
- Create the DB (you can do it locally on a SQL server of your own)
- Create the web service(s) in Visual Studio
- Create the InfoPath form either based off the web service schema or as a blank form that has data connections for receiving and submitting info from/to the DB
- Configure a BUNCH of special authentication things in SharePoint so that users of the form can actually commit new data to the DB without errors (this is very involved and requires a SharePoint expert who has farm admin rights)
If you keep the data in SharePoint, you avoid all of the above steps and just make a simple form that connects to SharePoint lists/libraries only. Saves a ton of time and effort if it meets your requirements.
SharePoint Architect || My Blog- Marked As Answer byLambert QinMSFT, ModeratorTuesday, November 10, 2009 5:42 AM

