How to submit an InfoPath form to a Windows SharePoint Services document library
By peter.stilgoe
How to submit an InfoPath form to a Windows SharePoint Services document library
Article ID : 826993
Last Review : November 17, 2004
Revision : 2.0
Design your form data source and layout
Submit the form data to a SharePoint Services document library
Use script to submit the form data to a SharePoint Services document library in InfoPath 2003
Use the UI to submit the form data to a SharePoint Services document library in InfoPath 2003 Service Pack 1
Test your form
INTRODUCTION
In Microsoft Office InfoPath 2003, you cannot submit form data to a Microsoft Windows SharePoint Services document library directly. This article describes how to design a form template that uses script to submit form data to a Windows SharePoint Services document library.
In InfoPath 2003 Service Pack 1, you can submit the form data to a Windows SharePoint Services document library directly by using the UI. This article contains the steps that you have to use to do this.
MORE INFORMATION
Design your form data source and layout
1. Start InfoPath 2003. Design a new blank form.
2. In the Data Source task pane, add a data source to your form. To do this, follow these steps:a. Right-click myFields, and then click Add.
The Add Field or Group dialog box appears.
b. Type FirstName as the name of the field, and then click OK.
c. Repeat step a. Type MiddleInitial as the name of the field, and then click OK.
d. Repeat step a. Type LastName as the name of the field, and then click OK.
3. Add myFields to your form.
4. Click Section with Controls.
Submit the form data to a SharePoint Services document library
You can use script or the UI to submit the form data to the SharePoint Services document library.
Use script to submit the form data to a SharePoint Services document library in InfoPath 2003
1. On the Tools menu, click Submitting Forms.
The Submitting Forms dialog box appears.
2. In the Submitting Forms dialog box, click Enable Submit.
3. In the Submit box, click Submit Using Custom Script.
4. Click Open Microsoft Script Editor, and then click OK.
Microsoft Script Editor starts.
5. Modify the OnSubmitRequest event as follows.
Note You must change the value of the strURL variable to a valid URL in the code. The URL in the following code sample references a server that is named ServerName, a SharePoint site that is named SiteName, and a document library that is named DocumentLibraryName.function XDocument::OnSubmitRequest(eventObj)
{
// If the submit operation is successful, set
// eventObj.ReturnStatus = true.
var fSuccessful = false;
// Set the URL of the file that you want to submit here.
var strUrl = “http://ServerName/SiteName/DocumentLibraryName/testform.xml”;
try
{
// Create an xmlhttp object.
var oXmlHttp = new ActiveXObject(“MSXML2.XMLHTTP”);
// See whether the document with the same name already exists in the Windows SharePoint Services (WSS) document library.
oXmlHttp.Open(“HEAD”, strUrl, false);
oXmlHttp.Send();
// No document with the URL has been found. Continue to submit.
// If you must replace the original file, you must call
// oXmlHttp.Open(“DELETE”, strUrl, false) to delete the document
// in the WSS document library.
if (oXmlHttp.Status == 404)
{
// Put the document in the WSS document library.
oXmlHttp.Open(“PUT”, strUrl, false);
oXmlHttp.Send(XDocument.DOM.xml);
// A 200 status code or a 201 status code indicates that the form has been submitted successfully.
if (oXmlHttp.Status == 200 || oXmlHttp.Status == 201)
{
fSuccessful = true;
}
}
}
catch (ex){}
if (fSuccessful)
{
XDocument.UI.Alert(“Document submitted successfully.”);
eventObj.ReturnStatus = true;
}
else
{
eventObj.ReturnStatus = false;
}
}
6. Save the script. Close Script Editor.
7. Save your form template as SubmitToWSS.xsn.
Use the UI to submit the form data to a SharePoint Services document library in InfoPath 2003 Service Pack 1
1. On the Tools menu, click Submitting Forms.
The Submitting Forms dialog box appears.
2. In the Submitting Forms dialog box, click Enable Submit commands and buttons.
3. In the Submit to section, click SharePoint form library.
4. In the Submitting Forms dialog box, click Add.
The Data Connection Wizard starts.
5. Input your SharePoint Services form library link in the SharePoint form library box.
Your library link may look similar to the following:
http://ServerName/SiteName/DocumentLibraryName
6. Type the document name in the File name box.
You can use a document name such as TestForm.
Click Next.
7. In the Data Connection Wizard, click Finish.
8. In the Submitting Forms dialog box, Click OK.
9. Save your form template as “SubmitToWSS.xsn.”
Test your form
1. On the File menu, click Fill Out a Form.
2. In the Fill Out a Form task pane, click SubmitToWSS.
3. Complete the form.
4. On the File menu, click Submit.
If the form is submitted successfully, you receive a message that indicates this.
5. Quit InfoPath. If you are prompted to save your changes to the form, click No.
6. Start Microsoft Internet Explorer. Locate your document form library.
For example, your document form library may be http://ServerName/SiteName/DocumentLibraryName.
A new item that is named testform is in the document library.
7. Click testform.
The form that you submitted opens in InfoPath 2003.
More From pstilgoe



March 19th, 2008
