Section 7.2. Using Form Libraries to Gather Data


Table 7-4. Built-in InfoPath form library templates

7.2. Using Form Libraries to Gather Data

SharePoint form libraries are special document libraries for collecting data gathered through Microsoft InfoPath. Though purchased separately, InfoPath is part of the Microsoft Office System. It provides a platform for creating and displaying data-entry forms that may incorporate :

  • Links to remote data sources such as SQL or Access databases

  • Text fields that include simple formatting such as bold, italic, bulleted lists, etc.

  • Office-like editing tools such as autocorrect and spell-checking

  • Complex data validation

  • Detail and summary views of data

  • The ability to submit form data to a database or to an email recipient

  • Property promotion (so that form data automatically becomes part of the searchable SharePoint form library)

InfoPath's form-creation tools are based on XML and its related standards. It is perhaps most useful for medium-to-large corporations that use XML schemas as part of their information architecture. If you're not familiar with XPath, XML, XSD, and XSLT, you may find designing InfoPath forms difficult. On the other hand, filling out an InfoPath form is very easy.

The following sections assume you have InfoPath 2003 SP1 installed on your computer. Members must also have InfoPath installed in order to fill out forms.


7.2.1. Understanding Form Libraries

A form library is basically a document library that uses an InfoPath form template ( template.xsn ) as a template rather than a Word, Excel, or PowerPoint file. To add a new item to the library, members choose Fill Out Form and SharePoint opens the template in InfoPath, as shown in Figure 7-17.

animal 7-17. Creating a new item in a form library

SharePoint comes with several sample templates that you can try. To create a test form library using one of the sample templates:

  1. From a SharePoint site, choose Create Form Library. SharePoint displays the New Form Library page .

Form template

Use to

Absence Request

Request time away from work and to calculate remaining absence balances .

Applicant Rating

Rate job applicants, comment on applicants ' strengths and weaknesses, and to provide a hiring recommendation.

Asset Tracking

Keep a record of your company's equipment and property. You can track information such as primary user , location, and purchase date for each asset. The form can also be sorted, allowing you to quickly find the information you're looking for.

Change Order

Explain and specify changes to existing orders or projects, as well as track total cost and time adjustments.

Expense Report (Domestic)

Create and submit an itemized list of expenses.

Expense Report (International)

Same as above, international travel.

Invoice (Multiple Tax Rates)

Document sales and transactions, and to bill customers for services rendered or equipment delivered.

Invoice (Single Tax Rate)

Same as above, one tax rate.

Invoice Request

Request the generation of an invoice for services rendered or equipment delivered.

Issue Tracking (Detailed)

Track an important issue, as well as provide details such as the due date, status, and owner for all action items that impact that issue.

Issue Tracking (Simple)

Provide and track the details of an important issue, including the progress, contributors, and date closed.

Meeting Agenda

Detail the agenda items, time allotments, guest speakers , attendees, and required materials for a meeting. This form can also be used to record meeting minutes, decisions, and action items.

Project Plan

Provide the details for a project, such as schedule, work items, materials, and budget.

Purchase Order

List the total items, total amount due, and required delivery dates for an order, and to authorize the delivery of the specified items.

Purchase Request

Create a request for items you want to purchase.

Sales Report

Record and track monthly sales of various items in different categories.

Status Report

Provide an update on the status of various projects. These reports can then be combined into a single report.

Service Request

Make requests for services or repairs .

Time Card (Detailed)

Track time worked, including times in/out per day, absences, and other payroll information.

Time Card (Simple)

Report the total hours worked during a specified time period.

Travel Itinerary

Create a schedule of events while traveling, which can include transportation arrangements, appointments, and various contacts.

Travel Request

Request the approval of a business trip and to provide details such as travel dates, destinations, itinerary information, and preferences so that accommodations can be made.

Vendor Information

Specify the products and services provided by a particular vendor, and to allow multiple individuals to rate the vendor according to cost, quality, and delivery.


When you save an InfoPath form to a form library, SharePoint saves the form data as an XML file in the library. SharePoint also maps elements from that XML file to columns in the SharePoint list using the Properties.xfp file found in the library's Forms folder. This process is similar to the way SharePoint promotes custom properties in Word and Excel document libraries. The advantage of this mapping is that you can use SharePoint to easily create different summary views of InfoPath data. These mapped fields are also included in searches of the site.

7.2.2. Designing a Form

InfoPath is both a form designer and a form viewer. To design a data-entry form in InfoPath, start InfoPath, select one of the sample forms, and choose Design this form. InfoPath opens the form in design mode, as shown in Figure 7-18. You can modify the form by selecting any of the options in the task pane.

animal 7-18. Modifying the Issue Tracking form using Design mode

To preview the results of changes choose File Preview Form Default. InfoPath displays the form in Preview mode, as shown in Figure 7-19.

animal 7-19. Viewing changes in Preview mode

In preview mode, you can view changes and test controls but cannot save data entered on the form.


7.2.3. Creating a Form Library

Once you are satisfied with a form, you have a choice: you can save the form for local use or testing, or you can publish the form to create a new form library in SharePoint. To publish a completed form:

  1. Choose File Publish. InfoPath starts the Publish wizard to walk you through the process .

  2. If you chose to publish to a form libary, the Wizard asks if you want to create a new form library or update the form in an existing library. Select Create new form library and choose Next .

  3. Enter the SharePoint site in which to create the form library and choose Next. InfoPath logs on to the site and you may be prompted for your user name and password .

    animal 7-20. Using the Publishing Wizard to create a form library

  4. Enter a name and description for the form library and choose Next. The Wizard displays the mapping step (Figure 7-21). This step lets you map elements from the form's XML schema to columns in the form library. This mapping is maintained in the Properties.xfp file in the list's Forms folder.

  5. Choose Add to create, Remove to delete, or Modify to change a mapping. Choose Finish to create the form library. InfoPath displays a success dialog box.

animal 7-21. Using this step to change the mapping between form data and form library columns

Once you've published the form, members can open it for data entry by choosing Fill Out This Form from the form library's toolbar. When members save the form InfoPath creates a new item in the form library as shown previously in Figure 7-17.

7.2.4. Emailing Form Data

Form libraries are usually set up to collect data this way:

  1. Choose Fill Out This Form from the library toolbar.

  2. Complete, save, and close the form to create a new item in the library.

  3. Open the item from the library to view/edit/modify the form as needed.

InfoPath also provides a Submit action for use in place of Save. Submit sends the form's data in XML form to a database or to an email recipient. Since SharePoint is really a database frontend, it's a bit redundant to submit to database from a form library.

However, submit via email does make sense. Consider this scenario: a support person completes a visit to a customer, fills out a service request, and emails it to the service manager. The manager views the request in Outlook; then saves it to a form library on SharePoint. Figure 7-22 illustrates this scenario.

animal 7-22. Submitting forms via email

In this scenario, the InfoPath form template (. xsn ) is installed on the service person's laptop or tablet as well as in the form library. That makes it possible to complete the form offline. The sample Service Request form doesn't come with submit enabled.

To add this feature to the form template:

  1. Start InfoPath, select the Service Request sample form and choose Design this Form. InfoPath opens the form in design mode.

  2. Choose Tools Submitting Forms. InfoPath displays the Submitting Forms dialog.

  3. Enter the email address, subject, and message body you want to include when sending the form, choose Next, and then choose Finish to complete the task.

  4. Choose Submit Options, select Close the form, and click OK twice to close the dialogs.

animal 7-23. Enabling submit via email

Once you've enabled submit, you can save and publish the template to a form library as described in the earlier section "Creating a Form Library." You'll also want to copy the template to the service person's laptop.

Enabling submit adds a Submit item to the File menu in InfoPath. Once the form is complete, the service person chooses File Submit to send the form. You can also add a command button to submit the form. To do that:

  1. Open the template in design mode.

  2. Choose Insert More controls. InfoPath displays the controls task pane.

  3. Double-click the button. InfoPath displays the button's properties.

  4. Select Action Submit. InfoPath displays the submit properties.

    1. Add a checkbox to enable/disable other controls.

    2. Set conditional formatting on those controls based on the checkbox setting.

    3. Write code that sets the checkbox value.

    4. Test the form.

    5. Hide the checkbox once the form is working correctly.

    The following sections demonstrate those tasks , using the Service Request example.

    7.2.5.1 Adding controls

    To add a new checkbox control on the form:

    1. Open the template in design mode.

    2. Choose Tools Submit Options, clear the Enable the Submit menu item on the File menu, and choose OK. You cant enable/disable menu items from a form so you must remove the menu item if you want to control access to Submit.

    3. Display the Data Source task pane and choose Add. InfoPath displays the Add Field or Group dialog.

    4. Add a Boolean field named DisableSubmit, as shown in Figure 7-24. Choose OK; InfoPath adds an element to the form's XML schema.

    5. Drag my:DisableSubmit from the task pane onto the form. InfoPath creates a checkbox control on the form.

    7.2.5.2 Setting conditional formatting

    To enable/disable the Submit button based on the checkbox setting:

    1. Double-click the Submit button and choose Display Conditional Formatting Add. InfoPath displays the Conditional Format dialog.


    2. animal 7-25. Disabling the Submit button when the checkbox is selected

      7.2.5.3 Writing code

      To write code to control the checkbox value:

      1. Choose Tools Programming On Load Event. InfoPath displays the script editor.


      2. The sample forms use JScript as their programming language. It is very difficult to change the programming language after a form is created, but new forms can use JScript or VBScript. Choose Tools Options Design if you want to change the default language.


        7.2.5.4 Testing a form

        To test the form:

        1. Choose File Preview Form Default to check your code. Compiler errors will display an error message and prevent the preview. Runtime errors will display a script debug error but allow the preview.

        2. Close the preview and choose File Save to save the form to the SharePoint library you created previously in "Creating a Form Library."

          1. From the InfoPath Controls task pane, drag a section control onto the form.

          2. Drag the Disable Submit checkbox onto that section.

          3. Double-click the section and choose Display Conditional Formatting Add.

            1. Create a data connection to the list.

            2. Add controls and bind their values to list fields.

            3. Add filters to display the appropriate data.

            The following sections demonstrate these steps using a list on my site that contains InfoPath coding samples categorized by language.

            7.2.6.1 Creating a data connection

            To create a data connection from an InfoPath form to a SharePoint list:

            1. Design a new, blank form and choose Tools Data Connections Add. InfoPath starts the Data Connection Wizard.

            2. Table 7-5. Data Connection Wizard settings

              At Wizard step

              Do this

              And choose...

              1

              Select Receive data.

              Next

              2

              Select SharePoint library list.

              Next

              3

              Enter http://usingsharepoint.com/.

              Next

              4

              Select the InfoPath Code Samples list.

              Next

              5

              Select ID, Title, Language, Example, and Description fields.

              Next

              6

              Select Automatically retrieve data when form is opened.

              Finish


              7.2.6.2 Adding bound controls

              To add controls that display items from the data connection:

              1. Display the Controls task pane and create two drop-down lists by dragging and dropping the controls from the task pane onto the form, as shown in Figure 7-26.

              2. Double-click on Field; select Enter values manually; add the values VBScript, VB.NET, C#, Registry, and Other. Choose OK to close the dialog.

              3. Double click on field2 , select Look up values in a data connection, choose Select XPath, select the InfoPath_Code_Samples group, and choose Filter Data.

              4. Specify the filter Language is equal to Select a field or group and select the field1 element from the Main data source. Choose OK four times to return to the main dialog.

              5. Choose Set XPath for the Display name field and choose Title. Choose OK to close the last dialog.

              animal 7-26. Creating bound controls

              Step 4 filters the values in field2 so that only the titles for the selected language are displayed. By binding field to InfoPath_Code_Samples you can display Title, but use the unique ID to filter other fields in the next step.

              7.2.6.3 Filtering data

              InfoPath list controls are built to receive arrays of values from data sources. Text box controls are a little different, however. In order to display a value from a list of repeating items, you must use a formula for the field's default value.

              To see how that works:

              1. Add a text box control to the form.

              2. Double-click on the text box, choose Display, select Wrap text, and select Scrolling: Expand to show all text.

              3. Choose Data, click the formula button after the Value field, choose Insert Field or Group, and select the Description field from the InfoPath_Code_Samples group.

              4. Choose Filter Data Add and add the filter ID is equal to field2.

              5. Repeat the preceding steps for the Example field from the InfoPath_Code_Samples group.

              When complete, preview the form. It should look something like Figure 7-27.

              animal 7-27. Previewing the form to test bound fields and filters

              You may have noticed that InfoPath uses very long series of dialog boxes to complete tasks. I've tried to keep it simple, but describing tasks in InfoPath is difficult. You may have better luck learning from the completed samples.

              7.2.7. Validating Data

              One advantage of using Submit rather than Save is that Submit enforces data validation. InfoPath allows you to save forms containing invalid data, but you can't Submit the form until all fields are valid. InfoPath can validate fields using a variety of criteria. To add validation criteria to a control:

              1. Display the control's properties and click Data Validation. InfoPath displays the Data Validation dialog.

              2. Click Add. InfoPath displays the dialog box for validation criteria. Enter a condition that results in a validation error.

              3. Click OK and then preview the form and test the validation.

              You can combine multiple criteria by choosing And >>; however, you can only have one ScreenTip and one Message per control.

              Validation rules are checked as the user enters data on the form. If an invalid entry is made in a control, that entry is flagged as soon as the focus moves to another control.

              Forms containing validation errors can't be submitted, but members only receive a warning if they save or email a form containing validation errors. There is no built-in way to prevent the user from saving, emailing, or printing a form containing validation errors, but you can prevent it by following these steps:

              1. Choose Tools Form Options Open and Save. Disable the Save, Print, and Send to Mail Recipient options. Choose OK to close the dialog.

              2. Add a checkbox to enable/disable the save/print/submit buttons as described in the previous section, "Customizing Forms."

              3. Write code to control the setting of the checkbox based on validation.

              Only the last step above is new, so I'll explain it more. InfoPath creates an Error object for each validation error on a form. Within script, you can use the XDocument object's Errors collection to check whether a form is valid. For example, the following script checks whether the form is valid each time the focus changes from one control to another:

               ' Do validation checking.     Sub XDocument_OnContextChange(eventObj)         If eventObj.Type = "ContextNode" Then             ' Get check box control             Set x = XDocument.DOM.DocumentElement.SelectSingleNode("my:chkValid")             If xdocument.errors.count = 0 Then                 ' Set value to True (valid).                 ' This enables Submit button through                 ' conditional formatting.                 x.text = "true"             Else                 ' Not valid, set to False (disables Submit).                 x.text = "false"             End If             Exit Sub         End If     End Sub 

              This code sets the checkbox to true if the form contains no validation errors.

              7.2.8. Preventing Changes to Form Templates

              InfoPath both designs and displays forms. Only members of the Web Designer or Administrative groups can create form libraries or change the InfoPath form template used by the library. However, templates deployed to clients can be changed. In most cases, you won't want members opening those templates in Design mode and tinkering with them. There are two approaches to solving this problem:

              • Enable form protection. This approach discourages members from changing form templates, but does not prevent them from doing so.

              • Disable design mode on members systems. This approach keeps users from changing existing form templates and prevents them from creating new ones.

              To protect a template from changes:

              1. Open the template in Design mode.

              2. Choose Tools Form Options, select Enable protection, and choose OK.

              Protected templates display the warning if the user opens them in design mode. That's weak protection at best, but if you sign the protected template with a digital signature, you can both discourage changes and detect changes if they are made (changes overwrite the digital signature, so the template will no longer be trusted).

              A stronger solution prevents users from designing any templates. You can use the Custom Installation Wizard (CIW) to create a customized setup program for Office that omits the design features from InfoPath. In order to do that:

              1. Run the CIW.

              2. Open the InfoPath Windows Installer file ( INF11.msi ).

              3. Configure Disable InfoPath Designer mode in step 10 of the Wizard.

              4. Finish creating the custom installation and then use the generated Windows Installer to install InfoPath on the client machines.

              Alternately, you can disable design mode by changing a system registry setting as follows :

               HKEY_CURRENT_USER\Software\Microsoft\Office.0\InfoPath\Designer\DisableDesigner= 0x00000001 

              Editing the system registry requires special knowledge. This is an advanced technique. Disabling design mode removes InfoPath's Design this Form button, Design a Form task pane, and the File, Design a Form menu option.

              7.2.9. Generating HTML for Forms

              If a member does not have InfoPath and they open a form data file, that file appears as XML in their browser. The InfoPath SDK provides a down-level tool (XDown) to convert a form file's XML to read-only HTML so others can view InfoPath output. To use XDown:

              1. Download and install the InfoPath SDK. By default, the SDK installs XDown in the folder C:\Program Files\Microsoft Office 2003 Developer Resources\Microsoft Office InfoPath 2003 SDK\Tools\XDown .

              2. Copy the files in the XDown folder to the project folder where you are working, or make them otherwise available for use from the command line.

              3. Create a subfolder within the project folder to receive the output of XDown.

              4. Run XDown from the command line on your InfoPath template (. xsn ). XDown decompiles the template and converts the views from the template into XSL files that can be used to view form files in HTML.

              5. Copy the generated XSL file to the form library's Forms folder.

              6. Add processing instructions to form data files.

              The generated XSL includes scripts, so you can't use it with the XML web part to perform the transformation within the SharePoint site.


              For example, the following command line converts the views from template.xsn into XSL that can be used to display asset form data; output files are written to the Down subfolder:

               XDown /d template.xsn Down 

              You can then copy the XSL files written to the Down folder to the form library's Forms folder and edit the form data files to include the following processing instruction:

               <?xml-stylesheet type="text/xsl" href="Forms\view_1.xsl"?> 

              To include that instruction in all new forms created within a form library:

              1. Create a new, blank form in the form library named template.xml .

              2. Choose Explorer view, open template.xml in Notepad, and add the processing instruction.

              3. Save the file to the Forms folder of the form library.

              4. Choose Modify settings and columns Change general settings, and change the Template URL: setting to template.xml .

              After these changes, SharePoint will create new forms based on the form file rather than the InfoPath template file ( template.xsn ). Because template.xml includes an xml-stylesheet instruction, all subsequent form files also include the instruction. You can also use this procedure to prepopulate a form with default data entries.

              XDown generates one XSL file for each view in a template. You can use any of those XSL files to display the form data, but if you want to switch between views you will have to create multiple versions of the form files, each with a different xml-stylesheet instruction.

              If you edit the form with InfoPath after making this change, InfoPath preserves the xml-stylesheet instruction. In fact, members with InfoPath never see the HTML view of the form since the mso-application instruction causes the XML file to open in InfoPath if it is available. Remove the mso-application instruction if you want to test the transformation on a machine that has InfoPath installed.

              Forms displayed using the XDown-generated XSL files omit buttons and other user-interactive controls. They convert other controls, such as text boxes, into read-only HTML.

              7.2.10. Programming in .NET

              If you are creating templates that require more than a little code, you should plan to program InfoPath in .NET. Visual Studio .NET is a professional programming tool that gives you far more assistance than the script editor. Although the Visual Studio .NET environment is complicated, the command completion, syntax checking, and debugging tools make it a great deal easier to program with InfoPath.

              Before you can program InfoPath in .NET, you must install the following tools:

              • .NET Framework 1.1 must be installed before installing InfoPath

              • Visual Studio 2003

              • InfoPath 2003 Toolkit for Visual Studio .NET, available for free from http://www.microsoft.com/downloads

              7.2.10.1 Creating a project

              To create an InfoPath project with Visual Studio .NET:

              1. Choose File New Project and select InfoPath Form Template from the Microsoft Office InfoPath Projects group.

              2. Visual Studio starts InfoPath and creates a new project template in Visual Studio .NET.

              It's a good idea to create a new template in InfoPath first, then specify that template in step 2. Creating the new template in InfoPath lets you use the data connection wizard or base a new template on an existing onefeatures that aren't available from Visual Studio .NET.


              InfoPath and Visual Studio .NET are loosely coupled . You edit the template by switching to InfoPath. There, you can design the template's appearance. To write code, click Edit Form Code from control properties.

              7.2.10.2 Responding to events

              Visual Studio .NET creates code templates for any event you create in InfoPath, as shown here ( bold code is mine):

               <InfoPathEventHandler(MatchPath:="cmdOK", EventType:=InfoPathEventType.OnClick)> _     Public Sub cmdOK_OnClick(ByVal e As DocActionEvent)         ' Write your code here.  thisXDocument.UI.Alert("This template is " & _           thisXDocument.Solution.URI)  End Sub 

              To run this code, switch back to InfoPath and click Preview. Visual Studio .NET builds the underlying assembly automatically and then previews the form.

              There are other entry points for creating events from InfoPath. For example, in InfoPath you can select Tools Programming On Load Event... to create a form load event procedure in Visual Studio .NET. Or you can add events from the validation dialog box by selecting an event and clicking Edit. Basically, all of the tasks that formerly started the Microsoft Script Editor (MSE) generate equivalent code in Visual Studio .NET.

              There are a couple things to note that are illustrated by this simple project:

              • You can use InfoPath Preview, as well as Visual Studio .NET's Debug Start (F5) to run the project.

              • The project is copied to a temporary location, not run from the project folder. This can lead to some complications while debugging.

              • The InfoPath template is stored as component files, not as a compiled template (. xsn ). Those component files are listed in the Solution Explorer. If you close InfoPath, you can directly edit those files as XML within Visual Studio .NET.

              • If you place a breakpoint within cmdOK_OnClick, you can step through the code using the Visual Studio .NET debugging commands (unlike MSE).

              • Visual Studio creates two object variables : thisApplication and thisXDocument . You can use these in place of the intrinsic Application and XDocument objects used in scripts.

              7.2.10.3 Converting scripts to .NET

              It is fairly simple to convert InfoPath scripts written in VBScript to Visual Basic .NET. Mainly, remember to add this before references to the XDocument and Application objects and remove Set from object assignments (.NET doesn't use Set ). For example, the following changes convert some InfoPath VBScript to Visual Basic .NET:

                Dim x As DOMNode  Set x =  this  XDocument.DOM.DocumentElement.SelectSingleNode("my:field1") x.text = "New value" 

              In the preceding and following code, bold indicates additions and strikethrough indicates deletions.

              7.2.10.4 Debugging and deploying

              The .NET code running in an InfoPath project inherits its security settings from the InfoPath template. To get some insight into this situation, try to run this code in your new InfoPath project:

               thisXDocument.Save(  ) 

              InfoPath displays a security exception when you try to execute Save in preview mode. Save requires full trust, and preview runs in domain-level trust by default. Methods that require full trust are flagged in the InfoPath object model reference help as level 3 . If you use any level-3 methods, you need to sign or install the form template to ensure it runs in full trust.

              If you don't use level-3 methods or .NET methods that access the local resources, you don't need to ensure that your code runs in full trust. Domain-level trust is fine. In practice, however, that is pretty limiting.


              You face two problems trying to assign full trust to InfoPath templates run from within Visual Studio .NET:

              • You can't sign the template since Visual Studio .NET stores the template as component files and InfoPath can only sign compiled templates (. xsn ).

              • You can't install the template since you are still creating it and so would need to repeatedly uninstall/reinstall the template every time you made a change.

              To solve this problem, follow these steps:

              1. Close InfoPath and edit the template's manifest file ( manifest.xsf ) to remove the publishURL and trustSetting attributes and require full trust as shown below .

                 <xsf:xDocumentClass       solutionVersion="1.0.0.5"       solutionFormatVersion="1.100.0.0"       publishUrl="C:\IPWork\FTNet\ manifest.xsf"       name="urn:schemas-microsoft-com:office:infopath:FTNet2:-myXSD-2004-04-23T16-52-59"       productVersion="11.0.6250"       trustSetting="automatic"       requireFullTrust="yes" 

              2. Build the InfoPath project in Visual Studio .NET.

              3. Run the following script from within the project folder to register the template's manifest file .

                 set ip = CreateObject("InfoPath.ExternalApplication")     Set fso = CreateObject("Scripting.FileSystemObject")     pth = fso.GetFolder(".").path     ip.registersolution pth & "\manifest.xsf"     set ip = nothing     set fso = nothing 

              Now, if you run the InfoPath project, the form previews running in full trust and the Save method (along with any other level-3 methods) will work. This procedure is for debugging only. Once you are ready to deploy the InfoPath project, follow these steps:

              • Run the following script from within the project folder to unregister the template on your development machine:

                 set ip = CreateObject("InfoPath.ExternalApplication")     Set fso = CreateObject("Scripting.FileSystemObject")     pth = fso.GetFolder(".").path     ip.unregistersolution pth & "\manifest.xsf"     set ip = nothing     set fso = nothing 

              • From within Visual Studio .NET, choose Project Publish Form. Visual Studio .NET compiles the component files into a template (. xsn ), builds the assembly (. dll ), for the project, and starts the InfoPath Publish Wizard.

              • Both the template and assembly are placed in the destination folder you specified in the Publish Wizard. You can then open that template (. xsn ) in InfoPath to sign it or use RegForm.exe to create an installer.

              • Run the signed template or install the unsigned template to test that the form runs in full trust.

              7.2.11. Resources

              To get

              Look here

              Help on using InfoPath

              C:\Program Files\Microsoft Office\OFFICE11\1033\InfMain.chm

              Information about programming InfoPath and understanding form template components

              C:\Program Files\Microsoft Office\OFFICE11\1033\InfRef.chm

              The InfoPath SDK

              Search http://www.microsoft.com/downloads for "InfoPath SDK."

              Instructions on using XDown

              http://msdn.microsoft.com/library/en-us/ipsdk/html/ipsdkUsingTheDownLevelTool_HV01081784.asp

              Information about .NET programming with InfoPath

              http://msdn.microsoft.com/library/default.asp?url=/library/en-us/odc_ip2003_tr/html/odc_INF_Lab_15.asp

              Programming InfoPath

              C:\Program Files\Microsoft Office\OFFICE11\1033\InfRef.chm

              Advanced programming techniques

              http:// blogs .msdn.com/infopath

              Support from the InfoPath programming community

              Visit the newsgroup microsoft.public.infopath .

              Information on installing templates using RegForm

              http://msdn.microsoft.com/library/en-us/ipsdk/html/ipsdkUsingTheFormRegistrationTool_HV01073334.asp

              Help creating fully trusted templates

              http://msdn.microsoft.com/library/en-us/ipsdk/html/ipsdkUnderstandingFullyTrustedForms_HV01073332.asp




Essential SharePoint
Essential SharePoint 2007: A Practical Guide for Users, Administrators and Developers
ISBN: 0596514077
EAN: 2147483647
Year: 2005
Pages: 153
Authors: Jeff Webb

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net