Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.
| FIGURE P.1: | Open with Form Template Dialog | lvii |
| FIGURE P.2: | Dialog shown when InfoPath cannot find the Visual C# project with the form code | lix |
| FIGURE 1.1: | Controls task pane in InfoPath 2003 | 8 |
| FIGURE 1.2: | Data Source task pane in InfoPath 2003 | 9 |
| FIGURE 1.3: | Insert Layout Table toolbar item | 13 |
| FIGURE 1.4: | Tables toolbar | 13 |
| FIGURE 1.5: | Fill Out a Form dialog in InfoPath 2003 SP1 | 17 |
| FIGURE 1.6: | Filling out a browser-enabled form template in Internet Explorer | 19 |
| FIGURE 1.7: | The table layout tab | 23 |
| FIGURE 1.8: | The Rules task pane prior to rules being created | 24 |
| FIGURE 2.1: | Opening screen | 30 |
| FIGURE 2.2: | New blank form | 35 |
| FIGURE 2.3: | Table Tools Layout tab | 36 |
| FIGURE 2.4: | Employment application form template with title added | 37 |
| FIGURE 2.5: | Employment application form template with cells for first and last names | 38 |
| FIGURE 2.6: | Employment application form template with a row for address information | 39 |
| FIGURE 2.7: | Page Design tab | 40 |
| FIGURE 2.8: | Controls task pane | 41 |
| FIGURE 2.9: | Employment application form template after adding standard controls | 46 |
| FIGURE 2.10: | Section control selected | 47 |
| FIGURE 2.11: | Preview of the employment application form | 48 |
| FIGURE 2.12: | Employment application form template with Optional Section controls | 50 |
| FIGURE 2.13: | Optional controls when previewing the form | 51 |
| FIGURE 2.14: | Optional controls after clicking on the link, Click here to insert | 51 |
| FIGURE 2.15: | Context menu for the Optional Section control when filling out a form | 52 |
| FIGURE 2.16: | Employment application form template with Repeating Section control | 53 |
| FIGURE 2.17: | Repeating Section control when previewing the form | 54 |
| FIGURE 2.18: | Context menu for Repeating Section control when previewing the form | 54 |
| FIGURE 2.19: | Three instances of the Repeating Section control inserted into the form | 55 |
| FIGURE 2.20: | Insert Repeating Table dialog | 57 |
| FIGURE 2.21: | Repeating Table control in InfoPath Designer | 57 |
| FIGURE 2.22: | Change To menu | 58 |
| FIGURE 2.23: | Repeating Table control after changing from a Repeating Section control | 58 |
| FIGURE 2.24: | Repeating Table control when previewing the form | 59 |
| FIGURE 2.25: | Horizontal Repeating Table control in Designer | 61 |
| FIGURE 2.26: | Horizontal Repeating Table control when filling out a form | 61 |
| FIGURE 2.27: | Insert Master/Detail dialog | 62 |
| FIGURE 2.28: | Master and detail controls in Designer | 63 |
| FIGURE 2.29: | Master/Detail control in the application review form when filling out a form | 63 |
| FIGURE 2.30: | Master/Detail control showing more applicant data | 65 |
| FIGURE 2.31: | Binding design-time visual showing the name of the control | 65 |
| FIGURE 2.32: | List controls in Designer | 66 |
| FIGURE 2.33: | List controls when filling out a form | 66 |
| FIGURE 2.34: | Multiple-Selection List Box control when filling out a form | 67 |
| FIGURE 2.35: | File Attachment control in Designer | 68 |
| FIGURE 2.36: | File Attachment control when filling out a form | 68 |
| FIGURE 2.37: | File Attachment control with résumé file attached | 68 |
| FIGURE 2.38: | File Attachment control commands | 69 |
| FIGURE 2.39: | Insert Picture Control dialog | 70 |
| FIGURE 2.40: | Picture control when filling out the form | 70 |
| FIGURE 2.41: | Picture control with picture inserted | 71 |
| FIGURE 2.42: | Ink Picture control that contains text entered with a Tablet PC stylus | 72 |
| FIGURE 2.43: | Button control | 73 |
| FIGURE 2.44: | The Picture Button control when first inserted | 73 |
| FIGURE 2.45: | The Control Tools Properties tab | 73 |
| FIGURE 2.46: | Insert Calculated Value dialog | 74 |
| FIGURE 2.47: | Insert Vertical Label dialog | 74 |
| FIGURE 2.48: | Vertical Label control in Designer | 75 |
| FIGURE 2.49: | Hyperlink control | 75 |
| FIGURE 2.50: | Insert Hyperlink dialog | 76 |
| FIGURE 2.51: | Signature Line control in InfoPath Filler | 76 |
| FIGURE 2.52: | The Sign dialog | 77 |
| FIGURE 3.1: | Filling out the status report form in InfoPath | 81 |
| FIGURE 3.2: | Filling out the status report form in the browser by using Forms Services | 81 |
| FIGURE 3.3: | Message indicating that a feature cannot be used in a browser-enabled form template | 85 |
| FIGURE 3.4: | Message indicating that a feature can be used in a browser-enabled form template but is not active in the browser | 85 |
| FIGURE 3.5: | Toolbar shown when filling out a form in the browser | 86 |
| FIGURE 3.6: | Configuring toolbars for a browser-enabled form template filled out in the browser | 88 |
| FIGURE 3.7: | Saving a form in the browser | 89 |
| FIGURE 3.8: | Editing a Rich Text Box control in the browser | 93 |
| FIGURE 3.9: | Commonality of InfoPath and Forms Services feature sets | 96 |
| FIGURE 3.10: | MOI Consulting feedback form | 97 |
| FIGURE 3.11: | Compatibility settings in the Form Options dialog | 98 |
| FIGURE 3.12: | Errors and messages in the Design Checker after making the feedback form template browser-compatible | 99 |
| FIGURE 3.13: | Browser-compatibility message within the Digital Signatures category under the Form Options dialog | 100 |
| FIGURE 3.14: | Remake of the Overall Satisfaction table without vertical text | 102 |
| FIGURE 3.15: | Filling out the MOI Consulting feedback form in the browser | 106 |
| FIGURE 4.1: | Clicking on a control in the view to select the bound control in the data source | 113 |
| FIGURE 4.2: | A Person/Group Picker control bound to group1 in the data source | 114 |
| FIGURE 4.3: | Warning dialog when changing the name of a data source field or group for a published form | 123 |
| FIGURE 4.4: | Data type validation error that occurs when a field contains invalid data | 126 |
| FIGURE 4.5: | Warning when saving a form with validation errors | 127 |
| FIGURE 4.6: | Validation error for the Cannot be blank property, delineated by a red asterisk | 128 |
| FIGURE 4.7: | Repeating field4, which is bound to the Numbered List control and repeats in group1 | 130 |
| FIGURE 4.8: | Airline form with default value for FlightType as “Roundtrip” | 132 |
| FIGURE 4.9: | The default value calculation button | 133 |
| FIGURE 4.10: | The Insert Formula dialog, with a formula that sets this field’s default value to today’s date plus 45 days | 133 |
| FIGURE 4.11: | Data source details for the FlightType field bound to the option buttons in the airline form | 134 |
| FIGURE 4.12: | Label for the node PurposeOfVisit, created when inserting the control into the view | 148 |
| FIGURE 4.13: | Move Field or Group dialog used to move an existing field or group | 149 |
| FIGURE 4.14: | Validation error that appears when opening a form created before the FlightType–FlightDate node swap | 150 |
| FIGURE 4.15: | Setting the Employee group to repeat and reference itself | 152 |
| FIGURE 4.16: | Filling out the MOI Company’s employee information form | 153 |
| FIGURE 4.17: | Design a form from an existing XML document or schema instead of creating the data source from scratch | 154 |
| FIGURE 4.18: | Selecting the location of an XML document or schema | 155 |
| FIGURE 4.19: | Choosing whether to include data from a selected XML file as the form template default data | 156 |
| FIGURE 4.20: | The first prompt when starting from an ambiguous schema | 159 |
| FIGURE 4.21: | Disambiguating the data source by using the Edit Settings dialog | 160 |
| FIGURE 4.22: | Prompt that appears when starting from a schema with multiple top-level elements | 160 |
| FIGURE 4.23: | The Type drop-down menu, with an option for adding a complete XML Schema or XML document | 164 |
| FIGURE 4.24: | Data source created from the XML document | 166 |
| FIGURE 4.25: | Text Box Binding dialog that appears when Automatically create data source is disabled or Change Binding is used from a control | 169 |
| FIGURE 4.26: | Changing binding via the context menu by right-clicking on any control that can be bound | 169 |
| FIGURE 4.27: | Context menu of the most popular control bindings | 172 |
| FIGURE 4.28: | Dialog that results from clicking More on the menu shown in Figure 4.27 | 172 |
| FIGURE 4.29: | Inserting field1 in the data source. The context of a drop affects available control binding options. | 173 |
| FIGURE 4.30: | An absurd control nesting: Attribute contains DocumentElement, which contains Attribute | 175 |
| FIGURE 4.31: | NumberOfChildren attribute field, which is bound to both the Optional Section and the Drop-Down List Box inside of the Optional Section | 176 |
| FIGURE 4.32: | NumberOfChildren attribute is nonexistent in the form and XML data | 176 |
| FIGURE 4.33: | NumberOfChildren attribute field inserted in the form and XML with a default value of 1 | 176 |
| FIGURE 4.34: | A simple repeating field: field1 | 177 |
| FIGURE 4.35: | Three controls multiply bound to field1 | 177 |
| FIGURE 4.36: | Critical design-time visual on an unbound Text Box control | 180 |
| FIGURE 4.37: | Cutaway of the Edit Default Values dialog when Choice exists in the data source | 181 |
| FIGURE 4.38: | Cutaway of the Edit Default Values dialog when Choice exists in the data source | 182 |
| FIGURE 5.1: | Insert Hyperlink dialog | 187 |
| FIGURE 5.2: | Select a Field or Group dialog | 188 |
| FIGURE 5.3: | Hyperlink control in InfoPath Designer | 188 |
| FIGURE 5.4: | Insert Hyperlink dialog in InfoPath Filler | 189 |
| FIGURE 5.5: | Insert Calculated Value dialog | 190 |
| FIGURE 5.6: | Insert Formula dialog after choosing a field | 190 |
| FIGURE 5.7: | Insert Formula dialog after checking the Edit XPath checkbox | 191 |
| FIGURE 5.8: | Insert Function dialog | 191 |
| FIGURE 5.9: | Repeating Table control for expenses | 192 |
| FIGURE 5.10: | Data source for the expense report example | 192 |
| FIGURE 5.11: | Insert Formula dialog after inserting the sum function | 192 |
| FIGURE 5.12: | Expense report form during preview | 193 |
| FIGURE 5.13: | Insert Vertical Label dialog | 194 |
| FIGURE 5.14: | Vertical Label control | 194 |
| FIGURE 5.15: | Scrolling Region control in InfoPath Designer | 195 |
| FIGURE 5.16: | Application review form with Scrolling Region when filling out the form | 196 |
| FIGURE 5.17: | Horizontal Region controls in InfoPath Designer | 197 |
| FIGURE 5.18: | Choice Group control in InfoPath Designer | 198 |
| FIGURE 5.19: | Employment application form with Choice Group control | 200 |
| FIGURE 5.20: | Default Choice Section with context menu commands | 200 |
| FIGURE 5.21: | Employment application form after replacing the default Choice Section | 200 |
| FIGURE 5.22: | Repeating Recursive Section in InfoPath Designer | 202 |
| FIGURE 5.23: | Repeating Recursive Section when filling out the employee information form | 203 |
| FIGURE 5.24: | Selected Text Box control | 205 |
| FIGURE 5.25: | Format Painter in the Home tab | 206 |
| FIGURE 5.26: | Format Painter cursor | 206 |
| FIGURE 5.27: | Text Settings tab in the View Properties dialog | 208 |
| FIGURE 5.28: | Properties dialog for the Text Box control | 209 |
| FIGURE 5.29: | Dialog that warns about data loss when changing field names | 211 |
| FIGURE 5.30: | Binding design-time visual for the FirstName Text Box control | 212 |
| FIGURE 5.31: | Integer Format dialog for Whole Number (integer) data types | 213 |
| FIGURE 5.32: | Field for minimum salary desired formatted as currency | 213 |
| FIGURE 5.33: | Properties dialog for the Optional Section for the minimum salary desired | 215 |
| FIGURE 5.34: | Display tab of the Text Box Properties dialog | 217 |
| FIGURE 5.35: | Placeholder text in a Text Box control | 218 |
| FIGURE 5.36: | Display tab for the Rich Text Box control | 220 |
| FIGURE 5.37: | Insert Picture dialog | 221 |
| FIGURE 5.38: | Size tab of the Text Box Properties dialog | 223 |
| FIGURE 5.39: | Text Box control with inner text not aligned to outer text | 224 |
| FIGURE 5.40: | Text Box control with inner text aligned to outer text | 225 |
| FIGURE 5.41: | Properties dialog for resizing multiple controls | 226 |
| FIGURE 5.42: | Properties tab with multiple controls selected | 226 |
| FIGURE 5.43: | Advanced tab for the Hyperlink control | 227 |
| FIGURE 5.44: | Advanced tab of the Text Box Properties dialog showing the Input recognition section | 228 |
| FIGURE 5.45: | Input Scope dialog showing standard input scopes | 229 |
| FIGURE 5.46: | Input Scope dialog showing custom input scopes | 230 |
| FIGURE 5.47: | New Input Scope dialog showing Phrase List option | 231 |
| FIGURE 5.48: | Sample data source for the Master/Detail example | 233 |
| FIGURE 5.49: | Master/Detail tab for a Repeating Table set as the master control | 235 |
| FIGURE 5.50: | Master/Detail tab for a Repeating Section set as a detail control | 235 |
| FIGURE 5.51: | Master/Detail control when filling out a form | 237 |
| FIGURE 5.52: | Section Properties dialog for an Optional Section control | 239 |
| FIGURE 5.53: | Edit Default Values dialog for an Optional Section control | 240 |
| FIGURE 5.54: | Repeating Section Properties dialog | 241 |
| FIGURE 5.55: | Section Properties dialog for a Repeating Section fragment | 242 |
| FIGURE 5.56: | Repeating Section Properties dialog showing three sections—Apples, Oranges, and Bananas | 243 |
| FIGURE 5.57: | Filling out the grocery shopping list | 243 |
| FIGURE 5.58: | Section Commands dialog used to customize commands | 245 |
| FIGURE 5.59: | Default commands for a Choice Section when filling out a form | 246 |
| FIGURE 6.1: | Rules pane | 249 |
| FIGURE 6.2: | Rules pane with a validation rule added | 250 |
| FIGURE 6.3: | Condition dialog | 251 |
| FIGURE 6.4: | Condition dialog with multiple conditions | 253 |
| FIGURE 6.5: | Rules pane with validation rule defined | 254 |
| FIGURE 6.6: | Inline alert for a data validation error | 254 |
| FIGURE 6.7: | Full error description for a data validation error | 255 |
| FIGURE 6.8: | Data Validation dialog listing two conditions to validate the total number of guests | 256 |
| FIGURE 6.9: | Data Entry Pattern dialog | 257 |
| FIGURE 6.10: | Red asterisk error | 257 |
| FIGURE 6.11: | Custom pattern | 258 |
| FIGURE 6.12: | Rules pane with formatting rule added | 260 |
| FIGURE 6.13: | Rules pane with condition, where StockPrice is less than or equal to $18.00 | 261 |
| FIGURE 6.14: | Rules pane specifying the four conditions needed to set the background color to yellow | 262 |
| FIGURE 6.15: | Rules pane showing all three rules | 263 |
| FIGURE 6.16: | Defining a rule so that four actions are always run when the form is submitted | 265 |
| FIGURE 6.17: | Choosing to add a new action rule | 265 |
| FIGURE 6.18: | Specifying the action for a rule to run when a user clicks the Button control | 266 |
| FIGURE 6.19: | Dialog displayed when an action on a rule fails to execute when the user fills out the form | 269 |
| FIGURE 6.20: | The Add Rules menu when a text box is selected | 270 |
| FIGURE 6.21: | The Rule Detail dialog for an Is less than rule | 271 |
| FIGURE 6.22: | Form template for the Rule Inspector sample | 273 |
| FIGURE 6.23: | Rule Inspector showing the logic for the entire form template | 274 |
| FIGURE 6.24: | Detailed view of the DataValidation node | 275 |
| FIGURE 6.25: | Views controls in Page Design tab | 276 |
| FIGURE 6.26: | Add View dialog | 277 |
| FIGURE 6.27: | View Properties dialog | 277 |
| FIGURE 7.1: | Relationships between a form and its external data sources | 283 |
| FIGURE 7.2: | Available Form Templates, the starting point for creating a main query connection | 286 |
| FIGURE 7.3: | Creating a secondary query connection for a form template | 287 |
| FIGURE 7.4: | Pictures library on SharePoint Foundation | 288 |
| FIGURE 7.5: | The libraries and lists available for querying from the SharePoint server | 289 |
| FIGURE 7.6: | Choosing which fields from the SharePoint list you want to use for the data connection | 290 |
| FIGURE 7.7: | Filling out the music and photos form. The list of photos comes from the Pictures library on SharePoint. | 291 |
| FIGURE 7.8: | Data to fill into a form and save to Sample.xml, to be read later by using an XML file adapter | 293 |
| FIGURE 7.9: | Entering the file location to use when creating a secondary connection to XML data | 294 |
| FIGURE 7.10: | XML file connection settings to opt in or out of including the data as a file in your template | 295 |
| FIGURE 7.11: | Final page of the Data Connection Wizard for an XML file | 296 |
| FIGURE 7.12: | Data Connections dialog after finishing the XML file Data Connection Wizard | 297 |
| FIGURE 7.13: | Fields task pane showing secondary data source | 298 |
| FIGURE 7.14: | Clicking on the Button to query the Sample data connection | 300 |
| FIGURE 7.15: | Data Connection Wizard when creating a new database connection | 304 |
| FIGURE 7.16: | Connecting to SQL Server after clicking Select Database | 305 |
| FIGURE 7.17: | Select Database and Table dialog. Choose the Northwind database and the Customers table. The top two items in the list are database views instead of tables. | 306 |
| FIGURE 7.18: | Database connection’s data source structure showing the added Customers and Orders tables | 307 |
| FIGURE 7.19: | Adding the Orders child table to the Customers parent table | 307 |
| FIGURE 7.20: | Defining a relationship between the child and parent tables. Some relationships are automatically defined for you. | 308 |
| FIGURE 7.21: | Sort Order dialog for setting three levels of sorting order | 310 |
| FIGURE 7.22: | Edit SQL dialog, which allows hand-editing of the query statement used by InfoPath to create the data source | 311 |
| FIGURE 7.23: | Customers secondary data source | 313 |
| FIGURE 7.24: | A nested database table (Orders), which is hard to represent when the parent table (Customers) is in the view as a Repeating Table | 315 |
| FIGURE 7.25: | Our rendition of displaying the Customers and Orders data | 316 |
| FIGURE 7.26: | Preview of the modified form layout with Northwind customers and orders data | 316 |
| FIGURE 7.27: | Navigating to the Web service | 319 |
| FIGURE 7.28: | Browser test form for the SaveItem Web service method | 320 |
| FIGURE 7.29: | Entering an address to the WSDL | 321 |
| FIGURE 7.30: | List of methods from the Web service that can be used to receive data | 323 |
| FIGURE 7.31: | Setting up the parameter to the SaveItems Web service method, which involves selecting which data source node provides its value | 324 |
| FIGURE 7.32: | Choosing the data source node to submit to the SaveItems method. The data source is based on the query Web service data connection. | 325 |
| FIGURE 7.33: | InfoPath Designer after finishing the Web service Data Connection Wizard | 326 |
| FIGURE 7.34: | Querying and submitting our Web service form during preview | 327 |
| FIGURE 7.35: | The Rule Details dialog for changing a REST URL | 330 |
| FIGURE 7.36: | Designing the TerraServer form using the GetTile Web service method | 331 |
| FIGURE 7.37: | Querying the TerraServer for a section of the San Francisco Bay near Highway 80 | 332 |
| FIGURE 7.38: | Searching for Web services by using UDDI in InfoPath | 334 |
| FIGURE 7.39: | Converting an InfoPath data connection to use a server-defined data connection file | 336 |
| FIGURE 7.40: | Secondary data source–bound controls allow for little customization | 339 |
| FIGURE 7.41: | Form after querying the XML file secondary data connection | 341 |
| FIGURE 7.42: | Enabling query support for offline mode when adding or modifying a secondary data connection | 344 |
| FIGURE 7.43: | Configuring a form template for offline mode queries | 345 |
| FIGURE 7.44: | InfoPath global cached queries setting | 346 |
| FIGURE 7.45: | Error dialog shown if querying an external data source fails when filling out the form | 347 |
| FIGURE 7.46: | Error dialog that results from clicking Try to Connect in Figure 7.45 if the data connection is unavailable | 348 |
| FIGURE 7.47: | Grocery list form template, unchanged, from Chapter 5 | 350 |
| FIGURE 7.48: | Drop-Down List Box Properties dialog | 351 |
| FIGURE 7.49: | Selecting a secondary data source node from the XML file connection that provides data for the List Box entries | 352 |
| FIGURE 7.50: | Filling out the grocery list form when the items are retrieved from a data connection | 353 |
| FIGURE 7.51: | Using the main data source to provide data for a List Box control | 354 |
| FIGURE 7.52: | Adding a note-taking capability to our grocery form | 355 |
| FIGURE 7.53: | Filling out the form after we’ve added the note-taking feature | 356 |
| FIGURE 7.54: | Specifying a filter to show only grocery items from a selected category | 357 |
| FIGURE 7.55: | Relationships between a form and its external data sources | 358 |
| FIGURE 8.1: | Settings for enabling and disabling certain features for users, such as the ability to save a form | 364 |
| FIGURE 8.2: | The first view of the job application form | 365 |
| FIGURE 8.3: | The last page of the job application form | 366 |
| FIGURE 8.4: | Dialog about the submit error that occurs when the user clicks the Submit button after not filling in a name in the first view | 367 |
| FIGURE 8.5: | Submit Options dialog, the starting point for enabling submit | 368 |
| FIGURE 8.6: | A custom list in SharePoint | 371 |
| FIGURE 8.7: | The default list entry form | 372 |
| FIGURE 8.8: | The Customize Form button | 372 |
| FIGURE 8.9: | Field properties dialog for a list field | 373 |
| FIGURE 8.10: | Configuring SharePoint document library submit for the student sign-in form | 375 |
| FIGURE 8.11: | Submit Options dialog configured to submit to a SharePoint document library | 376 |
| FIGURE 8.12: | SharePoint document library that contains submitted form data | 378 |
| FIGURE 8.13: | First page of the Data Connection Wizard for setting properties of the e-mail sent when users submit the form | 379 |
| FIGURE 8.14: | Configuring the attachment options for submitting via e-mail | 380 |
| FIGURE 8.15: | Dialog prompt in which the user must click Send in order to submit a helpdesk request | 381 |
| FIGURE 8.16: | Specifying whether your form only receives data or only submits data with a Web service | 386 |
| FIGURE 8.17: | Selecting a Web service method for submit | 387 |
| FIGURE 8.18: | InfoPath Designer after finishing the Data Connection Wizard for submitting data to a Web service | 388 |
| FIGURE 8.19: | Error dialog that results when submitting a form with validation errors that are in the current view | 389 |
| FIGURE 8.20: | Student sign-in form during preview | 390 |
| FIGURE 8.21: | Dialog confirming that submit succeeded | 390 |
| FIGURE 8.22: | Student sign-in form showing the instructor’s Class Information view with default data | 392 |
| FIGURE 8.23: | Designing the sign-in form view | 394 |
| FIGURE 8.24: | Configuring conditional formatting to hide the LateReason section if the start time is later than now | 394 |
| FIGURE 8.25: | Setting custom data validation to make the Reason field required when the LateReason section is visible | 396 |
| FIGURE 8.26: | Defining parameter mappings for Web service submit | 397 |
| FIGURE 8.27: | Tardy Johnny signs in to Philosophy 101 | 398 |
| FIGURE 8.28: | Debugging the Web service by using Visual Studio | 400 |
| FIGURE 8.29: | Debugger paused at our breakpoint | 400 |
| FIGURE 8.30: | Data source for the student sign-in form | 402 |
| FIGURE 8.31: | Parameter mappings dialog configured to submit the entire form | 403 |
| FIGURE 8.32: | Dialog that gives the user a chance to digitally sign a form before continuing with submit | 408 |
| FIGURE 8.33: | Controlling whether or not to display the prompt shown in Figure 8.32 | 408 |
| FIGURE 8.34: | Submit Options dialog for Web server submit via HTTP | 409 |
| FIGURE 8.35: | Setting the destination option to use an ASP.NET page | 410 |
| FIGURE 8.36: | Submit Options Dialog, choosing to run rules | 413 |
| FIGURE 8.37: | List of rules that run when the form is submitted | 414 |
| FIGURE 8.38: | Actions for the actual submit to the Web services | 415 |
| FIGURE 8.39: | Expression shown in a popup message when a student signs in late to class | 415 |
| FIGURE 8.40: | Dialog that appears when Johnny signs in tardy | 416 |
| FIGURE 8.41: | Dialog that appears when submit with rules fails on a secondary connection | 418 |
| FIGURE 8.42: | Dialog shown when submit using rules fails on the main submit connection | 419 |
| FIGURE 8.43: | Generic success dialog for the main submit connection | 420 |
| FIGURE 8.44: | Generic failure dialog for the main submit connection | 421 |
| FIGURE 8.45: | Advanced section of the Submit Options dialog | 421 |
| FIGURE 9.1: | InfoPath prompt that appears when choosing Save or Save As for a new form template | 427 |
| FIGURE 9.2: | The Publish menu, offering a variety of publishing options | 428 |
| FIGURE 9.3: | Publishing a MeetingRequest template to a Web server via a “backdoor” network share | 429 |
| FIGURE 9.4: | Specifying the users’ access path | 431 |
| FIGURE 9.5: | Error dialog that appears when opening a form from a path that is not the access path | 431 |
| FIGURE 9.6: | Specifying a server location for publishing to a SharePoint site or Forms Services site | 434 |
| FIGURE 9.7: | Choosing whether to publish the form template to a SharePoint document library or a site content type | 435 |
| FIGURE 9.8: | Saving the template somewhere on the SharePoint server when creating a site content type | 436 |
| FIGURE 9.9: | Wizard page showing promoted properties from the template’s data source, which appear as columns in SharePoint libraries and lists | 437 |
| FIGURE 9.10: | Form library on SharePoint | 437 |
| FIGURE 9.11: | Adding site content types to a document library | 438 |
| FIGURE 9.12: | Selecting a field from the data source to promote. The display name (Due Date) can be set independently from the node name (When). | 440 |
| FIGURE 9.13: | Choosing to publish to Forms Services via the Document Library option | 443 |
| FIGURE 9.14: | Last page of the Publishing Wizard before clicking the Publish button | 444 |
| FIGURE 9.15: | Last page of the Publishing Wizard after clicking the Publish button | 445 |
| FIGURE 9.16: | First wizard page for publishing a form to e-mail recipients | 446 |
| FIGURE 9.17: | Promoting properties to make them available as columns in Outlook | 447 |
| FIGURE 9.18: | Resulting e-mail in Outlook after finishing the Publishing Wizard for e-mail | 448 |
| FIGURE 9.19: | Browse For Folder dialog for selecting a location to save template source files | 452 |
| FIGURE 9.20: | Dialog warning that appears when saving source files to a folder that already contains existing source files | 452 |
| FIGURE 9.21: | Configuring preview settings | 455 |
| FIGURE 9.22: | Error message that results from attempting to open a form that was saved while previewing | 459 |
| FIGURE 10.1: | Add a Workflow page | 465 |
| FIGURE 10.2: | Customizing the Travel Request Approval workflow | 466 |
| FIGURE 10.3: | Workflow initiation e-mail message | 467 |
| FIGURE 10.4: | E-mail task requesting approval of the travel request | 467 |
| FIGURE 10.5: | Travel Request form showing the Workflow Task message bar | 468 |
| FIGURE 10.6: | Workflow dialog | 469 |
| FIGURE 10.7: | Workflows dialog | 471 |
| FIGURE 10.8: | The Open SharePoint Site interface | 472 |
| FIGURE 10.9: | The navigation menu of SharePoint Designer 2010 | 472 |
| FIGURE 10.10: | The Create Reusable Workflow dialog for Data Collection | 473 |
| FIGURE 10.11: | The Action drop-down list | 474 |
| FIGURE 10.12: | The inserted action | 474 |
| FIGURE 10.13: | Select Users dialog | 475 |
| FIGURE 10.14: | Custom Task Wizard, form fields | 476 |
| FIGURE 10.15: | Add Field dialog | 476 |
| FIGURE 10.16: | Association and Initiation Form Parameters dialog | 477 |
| FIGURE 10.17: | Settings navigation | 478 |
| FIGURE 10.18: | Manage User Roles dialog | 481 |
| FIGURE 10.19: | Add User Role dialog | 482 |
| FIGURE 10.20: | Select Users dialog | 483 |
| FIGURE 10.21: | Manage User Roles dialog after adding a few roles | 484 |
| FIGURE 10.22: | The Form Load button | 487 |
| FIGURE 10.23: | Selecting User’s current role as the qualifier in the Condition dialog for rules | 487 |
| FIGURE 10.24: | Rules pane after setting the condition and action | 488 |
| FIGURE 10.25: | Rules for Opening Forms dialog after adding all rules | 489 |
| FIGURE 10.26: | Preview tab on the Form Options dialog | 490 |
| FIGURE 10.27: | Selecting the UserRole field that corresponds to the TeamName field in the secondary data source | 493 |
| FIGURE 10.28: | Insert Formula dialog after adding a calculated default value | 493 |
| FIGURE 10.29: | Specifying a user role in the condition for data validation | 495 |
| FIGURE 10.30: | Rules Pane after changing the condition to use a user role | 496 |
| FIGURE 10.31: | Manage User Roles dialog after adding “Team Manager” and “Sales Manager” roles | 497 |
| FIGURE 10.32: | Rules Pane after adding a rule to switch to the Team Status Report view | 498 |
| FIGURE 10.33: | Food survey form template | 503 |
| FIGURE 10.34: | Choosing which properties to make available in Outlook folders | 503 |
| FIGURE 10.35: | Sending the form to a list of e-mail recipients | 504 |
| FIGURE 10.36: | Rules Wizard showing the rule specific to InfoPath forms | 505 |
| FIGURE 10.37: | Choose InfoPath Form dialog | 506 |
| FIGURE 10.38: | Create New Folder dialog after selecting InfoPath Form Items | 508 |
| FIGURE 10.39: | Folder properties dialog after clicking on the InfoPath Forms tab | 509 |
| FIGURE 10.40: | Team Lunch folder showing “Food Preference” column | 509 |
| FIGURE 10.41: | InfoPath e-mail form in Outlook’s reading pane | 510 |
| FIGURE 10.42: | Filling out an InfoPath e-mail form | 511 |
| FIGURE 10.43: | Submit dialog when submitting an InfoPath e-mail form | 512 |
| FIGURE 10.44: | Mail Options task pane | 512 |
| FIGURE 10.45: | Team Lunch folder showing responses to the food preference survey | 513 |
| FIGURE 10.46: | Team Lunch folder grouped by food preference | 514 |
| FIGURE 10.47: | Expense Reports InfoPath form folder | 515 |
| FIGURE 10.48: | InfoPath actions context menu | 516 |
| FIGURE 10.49: | E-Mail Attachments tab in the Form Options dialog | 517 |
| FIGURE 11.1: | Configuring security and trust settings for a form template | 527 |
| FIGURE 11.2: | Form Template Properties dialog for setting the form ID | 528 |
| FIGURE 11.3: | Error dialog when opening a restricted form template that attempts to query an external data source | 530 |
| FIGURE 11.4: | Setting an access path, which is not required when publishing a restricted form template | 531 |
| FIGURE 11.5: | Cache conflict that occurs when a different version of the same form template is opened | 532 |
| FIGURE 11.6: | New dialog showing form templates in the InfoPath cache | 534 |
| FIGURE 11.7: | Resource Files dialog, which shows files accessible by all form templates | 534 |
| FIGURE 11.8: | Internet Explorer Web content zones, each of which has its own security level | 537 |
| FIGURE 11.9: | Settings for defining the local intranet zone | 538 |
| FIGURE 11.10: | Security prompt for cross-domain data access | 542 |
| FIGURE 11.11: | Office Customization Tool security settings for InfoPath | 544 |
| FIGURE 11.12: | Error dialog that appears when a domain form is not opened from its access path and the published template is unavailable | 547 |
| FIGURE 11.13: | Opening a domain form whose access path doesn’t match the .xsn location, but the form template exists at the originally published location | 548 |
| FIGURE 11.14: | Entering a domain for the template when previewing the form | 549 |
| FIGURE 11.15: | List of any settings or features resulting in the form template being at domain trust level | 551 |
| FIGURE 11.16: | Security and Trust tab of the Form Options dialog | 553 |
| FIGURE 11.17: | Trusted root certification authorities for the current user | 556 |
| FIGURE 11.18: | Security and Trust category settings for signing a form template | 557 |
| FIGURE 11.19: | Selecting a certificate to use for digital signing | 557 |
| FIGURE 11.20: | Creating a self-signed certificate for code signing | 558 |
| FIGURE 11.21: | General tab of the Certificate dialog, which shows whether the publisher of a certificate is trusted | 559 |
| FIGURE 11.22: | InfoPath prompt that appears when a signed template’s CA isn’t trusted | 560 |
| FIGURE 11.23: | Error that occurs when opening a full trust form template that is neither digitally signed nor installed | 561 |
| FIGURE 11.24: | Trusted Publishers category of the Trust Center dialog | 567 |
| FIGURE 11.25: | Add-ins category of the Trust Center dialog | 569 |
| FIGURE 11.26: | The External Content Category of the Trust Center | 571 |
| FIGURE 11.27: | Privacy Options category of the Trust Center dialog | 573 |
| FIGURE 11.28: | Configuring digital signatures for a form template | 577 |
| FIGURE 11.29: | Our sample MOI Consulting performance review form | 578 |
| FIGURE 11.30: | Setting up the template to allow signing the entire form | 579 |
| FIGURE 11.31: | Filling out the MOI performance review before using a digital signature | 580 |
| FIGURE 11.32: | Digital Signatures dialog, which tracks who has signed this form | 581 |
| FIGURE 11.33: | Selecting what form data to sign | 582 |
| FIGURE 11.34: | Clicking the Sign button to apply a digital signature to the form | 582 |
| FIGURE 11.35: | Additional Information dialog, which shows exactly what you’re signing before you sign it | 583 |
| FIGURE 11.36: | Digitally signed form with read-only controls | 585 |
| FIGURE 11.37: | Error dialog that appears when trying to change signed form data | 585 |
| FIGURE 11.38: | Friendly reminder that the form being opened is digitally signed | 586 |
| FIGURE 11.39: | Choosing whether or not to show a notification when signed forms are opened | 587 |
| FIGURE 11.40: | Setting up the Personal Information part of the view for partial signing | 590 |
| FIGURE 11.41: | Creating a new set of signable data (partial signing) on a Section control | 591 |
| FIGURE 11.42: | Setting up digital signatures on a Section control | 593 |
| FIGURE 11.43: | Signing the “Info” set of signable data when filling out the form | 594 |
| FIGURE 11.44: | Using the Select the Data to Sign dialog opened by clicking the Digital Signatures button | 594 |
| FIGURE 11.45: | Signing a set of signable data when filling out the form | 595 |
| FIGURE 11.46: | Form showing that the set of signable data has been signed | 596 |
| FIGURE 11.47: | Signature Details dialog for a signed Section control | 597 |
| FIGURE 11.48: | Form showing that Robert co-signed John’s review rating | 599 |
| FIGURE 11.49: | The Sign dialog from the Signature Line control | 606 |
| FIGURE 11.50: | Specifying permission in InfoPath Designer to apply when the form is filled out | 608 |
| FIGURE 11.51: | Specifying permission for the current form while filling it out | 610 |
| FIGURE 11.52: | Form Permission task pane | 611 |
| FIGURE 11.53: | Permission dialog after clicking the More Options button | 612 |
| FIGURE 11.54: | Enabling Information Rights Management on the SharePoint Central Administration site | 615 |
| FIGURE 11.55: | IRM settings for a document library | 616 |
| FIGURE 12.1: | Weekly status report form | 621 |
| FIGURE 12.2: | Merge Forms dialog | 622 |
| FIGURE 12.3: | Merge Forms dialog showing the Views menu | 623 |
| FIGURE 12.4: | Weekly status report document library in Merge Forms view | 624 |
| FIGURE 12.5: | Merge error dialog for forms with a schema that doesn’t match the target form | 624 |
| FIGURE 12.6: | Merged status report form | 626 |
| FIGURE 12.7: | Data source for the status report form template | 628 |
| FIGURE 12.8: | Weekly Status Report view in the weekly status report form template | 629 |
| FIGURE 12.9: | Team Status Report view for merging multiple status report forms | 630 |
| FIGURE 12.10: | Merge tab on the Field or Group Properties dialog | 632 |
| FIGURE 12.11: | Advanced tab of the Repeating Section Properties dialog | 633 |
| FIGURE 12.12: | Merge settings error dialog | 634 |
| FIGURE 12.13: | Merge Settings dialog for the StatusReports repeating group node | 635 |
| FIGURE 12.14: | Merge Settings dialog with merge customizations | 637 |
| FIGURE 12.15: | Merge Settings dialog for the EmployeeInformation node | 639 |
| FIGURE 12.16: | Team status report after merging three status reports | 640 |
| FIGURE 12.17: | Merge Settings dialog for the Summary node | 641 |
| FIGURE 12.18: | Merge Settings dialog for the Summary node after customizations are complete | 643 |
| FIGURE 12.19: | Merge Settings dialog for the ThisWeek node after customization | 643 |
| FIGURE 12.20: | Merged team status report after all customizations are complete | 644 |
| FIGURE 12.21: | Advanced tab of the Form Options dialog | 645 |
| FIGURE 12.22: | Field or Group Properties dialog after specifying a custom merge XSL in the manifest | 648 |
| FIGURE 12.23: | Create New View dialog | 653 |
| FIGURE 12.24: | Printed team status report | 653 |
| FIGURE 12.25: | Print Settings tab of the View Properties dialog | 654 |
| FIGURE 12.26: | Header format dialog | 656 |
| FIGURE 12.27: | Header format dialog after adding Team field and date | 657 |
| FIGURE 12.28: | Team status report with header and footer information | 658 |
| FIGURE 12.29: | Sales Report view | 659 |
| FIGURE 12.30: | Merged sales report data | 659 |
| FIGURE 12.31: | Print dialog | 660 |
| FIGURE 12.32: | Print Multiple Views dialog when filling out a form | 660 |
| FIGURE 12.33: | Print Multiple Views dialog in InfoPath Designer | 662 |
| FIGURE 12.34: | XML Structure task pane in Microsoft Office Word | 664 |
| FIGURE 12.35: | Word document used to generate the Word print view XSL | 665 |
| FIGURE 12.36: | Word Print Views dialog | 666 |
| FIGURE 12.37: | Choosing the path and file name from the Add Print View for Word Wizard | 667 |
| FIGURE 12.38: | Specifying the Word print view name in the Add Print View for Word Wizard | 667 |
| FIGURE 12.39: | Filling out the Team Status Report view in the browser | 669 |
| FIGURE 12.40: | Print View button on the Forms Services toolbar | 669 |
| FIGURE 12.41: | Team Status Report view shown as a print view in the browser | 670 |
| FIGURE 12.42: | Export To in the File tab | 671 |
| FIGURE 12.43: | Choosing the type of data to export | 672 |
| FIGURE 12.44: | Choosing the forms from which to export data | 672 |
| FIGURE 12.45: | Status report data exported to Microsoft Office Excel | 673 |
| FIGURE 12.46: | Export to Excel Wizard after choosing to export only the data from a specific table | 674 |
| FIGURE 12.47: | Selecting the data to export | 674 |
| FIGURE 12.48: | Sales data exported to Microsoft Office Excel | 675 |
| FIGURE 12.49: | Filler Features tab of the Form Options dialog | 676 |
| FIGURE 13.1: | Programming category in the Form Options dialog | 682 |
| FIGURE 13.2: | Confirmation dialog shown before removing code | 682 |
| FIGURE 13.3: | Upgrading code from a form template compatible with InfoPath 2003 | 683 |
| FIGURE 13.4: | Programming options, which are saved as defaults for all new form templates | 686 |
| FIGURE 13.5: | VSTA development environment | 687 |
| FIGURE 13.6: | EventBubbling sample, which shows Site and Sender node names as events bubble up the data source | 695 |
| FIGURE 13.7: | MOI Consulting morale event scheduler form in InfoPath Designer | 700 |
| FIGURE 13.8: | Password dialog prompt | 701 |
| FIGURE 13.9: | Custom error message that appears when a Changing event handler is canceled | 705 |
| FIGURE 13.10: | Error that occurs when calling unsupported OM during the Changing event | 707 |
| FIGURE 13.11: | Show Error Message dialog | 717 |
| FIGURE 13.12: | Supporting entry of last and first names in a Repeating Table control | 719 |
| FIGURE 13.13: | MultipleNotifications sample form in InfoPath Designer | 725 |
| FIGURE 13.14: | One of the notifications when adding underline to a rich text (XHTML) field | 726 |
| FIGURE 13.15: | Setting up a custom task pane in the Form Options dialog | 736 |
| FIGURE 13.16: | Welcome view of the MOI Consulting request form | 740 |
| FIGURE 13.17: | Dialog that results when the Time-sensitive/Critical request type is selected | 741 |
| FIGURE 13.18: | Dialog that appears when form errors exist in the current view | 742 |
| FIGURE 13.19: | Informing the user that signing is required to continue | 742 |
| FIGURE 13.20: | Dialog that appears after using the Click here to sign this section link in the MOI request form | 743 |
| FIGURE 13.21: | Request Details view of the MOI Consulting request form | 744 |
| FIGURE 13.22: | Confirm view of the MOI Consulting request form | 745 |
| FIGURE 13.23: | Thank You view of the MOI Consulting request form | 745 |
| FIGURE 13.24: | Main data source for the MOI Consulting request form template | 750 |
| FIGURE 13.25: | Error dialog that appears when user attempts to open an existing MOI request form | 756 |
| FIGURE 13.26: | Dialog for clearly presenting to the user any form errors | 760 |
| FIGURE 13.27: | GetSubAreas secondary data source | 770 |
| FIGURE 13.28: | Request Details view | 775 |
| FIGURE 13.29: | Finding the xmlToEdit and ActionType capability of a structurally editable control | 777 |
| FIGURE 13.30: | Setting up the form’s main submit to use code | 779 |
| FIGURE 13.31: | Our own message box | 784 |
| FIGURE 14.1: | Design Checker messages from the MOI feedback form template | 793 |
| FIGURE 14.2: | Controls targeted by the messages in the Design Checker for the MOI feedback form template | 794 |
| FIGURE 14.3: | Postback settings for a control in a browser-enabled form template | 797 |
| FIGURE 14.4: | Customizing user interface buttons for a browser-enabled form template | 798 |
| FIGURE 14.5: | Configuring a Button control to use the Update Form option for a browser-enabled form template | 799 |
| FIGURE 14.6: | Accessibility control settings | 800 |
| FIGURE 14.7: | Publishing to Forms Services a form template that requires administrator approval | 804 |
| FIGURE 14.8: | Specifying a path during publishing to save a form template requiring administrator approval | 805 |
| FIGURE 14.9: | Administration links for Forms Services | 807 |
| FIGURE 14.10: | Upload Form Template page | 808 |
| FIGURE 14.11: | Manage Form Templates page | 809 |
| FIGURE 14.12: | Choosing a site collection and Web application for activation | 811 |
| FIGURE 14.13: | Activating a form template on the Site Collection Features page | 812 |
| FIGURE 14.14: | Forms Services Admin tool authored by using the admin object model | 816 |
| FIGURE 14.15: | Some settings for configuring InfoPath Forms Services | 821 |
| FIGURE 14.16: | Configuring the session state shared service | 823 |
| FIGURE 14.17: | Administrative session state thresholds | 825 |
| FIGURE 14.18: | Quiescing error that frustrated John when creating a status report form | 829 |
| FIGURE 14.19: | Configuring to quiesce a form template on the Quiesce Form Template page | 829 |
| FIGURE 14.20: | Status of a quiescing form template | 829 |
| FIGURE 14.21: | Fully quiesced form template | 830 |
| FIGURE 14.22: | Quiesce tool authored by using admin object models | 834 |
| FIGURE 14.23: | Diagnostic Logging administration page | 840 |
| FIGURE 14.24: | Global administrative data connection settings for Forms Services | 845 |
| FIGURE 14.25: | The Convert Data Connection dialog | 852 |
| FIGURE 14.26: | Connection Options dialog when modifying a server-based connection | 852 |
| FIGURE 14.27: | Uploading to the centrally managed connection library | 853 |
| FIGURE 14.28: | Passing NTLM credentials for data connections with InfoPath and Forms Services | 857 |
| FIGURE 14.29: | Settings on the Managing the Web Service Proxy page | 860 |
| FIGURE 14.30: | Copying the physical path for the SharePoint root site collection from IIS Manager | 866 |
| FIGURE 14.31: | Opening the SharePoint site by using the file system path | 867 |
| FIGURE 14.32: | Solution Explorer after adding the XmlFormView folder and MyPage.aspx Web form | 868 |
| FIGURE 14.33: | Toolbox after adding the XmlFormView control | 869 |
| FIGURE 14.34: | Hosting the life insurance form in MyPage.aspx | 872 |
| FIGURE 14.35: | Adding the Initialize event handler in the host page for the XmlFormView1 control | 876 |
| FIGURE 14.36: | Host page handling the form submit by sending a custom response | 883 |
| FIGURE 14.37: | Clicking the Validate Form button shows a dialog box message in the browser | 886 |
| FIGURE 14.38: | State of the life insurance form while the dialog box still has focus | 887 |
| FIGURE 14.39: | Configuring Forms Services form session state | 895 |
| FIGURE 14.40: | Adding performance counters for templates activated with InfoPath Forms Services | 897 |
| FIGURE 14.41: | SharePoint 2010 Management Console | 900 |
| FIGURE 15.1: | Document properties dialog in Word 2003 | 906 |
| FIGURE 15.2: | Document Information Panel in Word 2010 | 907 |
| FIGURE 15.3: | Document Information Panel dialog | 907 |
| FIGURE 15.4: | SharePoint Document Properties page | 908 |
| FIGURE 15.5: | Document Information Panel Settings page | 909 |
| FIGURE 15.6: | List of content types in the Data Source Wizard | 910 |
| FIGURE 15.7: | InfoPath form template based on the Document content type after adding the Assigned To column in SharePoint | 911 |
| FIGURE 15.8: | Data source for the Document content type | 912 |
| FIGURE 15.9: | Customized Document Properties view for editing standard document properties | 913 |
| FIGURE 15.10: | Completing the wizard will publish the Document Information Panel template back to the SharePoint document library | 914 |
| FIGURE 15.11: | Document Information Panel showing the Document Properties—Server view | 914 |
| FIGURE 15.12: | Document Information Panel showing the Document Properties view | 915 |
| FIGURE 15.13: | Word document showing the Document Information Panel and the Author property in the body of the document | 915 |
| FIGURE 15.14: | Visual Studio Toolbox after adding the InfoPath FormControl control | 918 |
| FIGURE 15.15: | IP Insurance application after adding Combo Box and GroupBox controls | 923 |
| FIGURE 15.16: | IP Insurance application after loading the auto insurance form | 925 |
| FIGURE 15.17: | Standard toolbar for the IP Insurance application | 929 |
| FIGURE 15.18: | Submit Options dialog with Hosting environment as the destination | 947 |
| FIGURE 15.19: | Add Custom Control Wizard showing the Microsoft UpDown Control 6.0 (SP4) selected in the list of ActiveX controls | 951 |
| FIGURE 15.20: | Specify Installation Options page of the Add Custom Control Wizard | 952 |
| FIGURE 15.21: | Specify a Binding Property page of the Add Custom Control Wizard | 953 |
| FIGURE 15.22: | Specify an Enable or Disable Property page of the Add Custom Control Wizard | 955 |
| FIGURE 15.23: | Specify Data Type Options page of the Add Custom Control Wizard | 956 |
| FIGURE 15.24: | Specify Data Type Options page showing the Field (element with custom data type) option | 958 |
| FIGURE 15.25: | Properties dialog for the Microsoft UpDown Control | 960 |
| FIGURE 16.1: | MOI Consulting expense report form created in Word | 966 |
| FIGURE 16.2: | Import Wizard page for selecting the importer to use | 968 |
| FIGURE 16.3: | Import Wizard page for selecting the file to import | 968 |
| FIGURE 16.4: | Import Options dialog for importing Word documents | 969 |
| FIGURE 16.5: | Import Options dialog for importing Excel workbooks | 970 |
| FIGURE 16.6: | Final page of the Import Wizard | 971 |
| FIGURE 16.7: | Expense report form after importing into InfoPath | 972 |
| FIGURE 16.8: | Change To Repeating Table dialog | 974 |
| FIGURE 16.9: | Registry key structure for importers and exporters | 977 |
| FIGURE 16.10: | Export Wizard showing a custom exporter | 979 |
| FIGURE 16.11: | Importer/exporter process flow | 981 |
| FIGURE A.1: | SharePoint Designer List details Forms section | 995 |
| FIGURE A.2: | SharePoint List Ribbon Customize List section | 999 |
| FIGURE A.3: | Updated InfoPath form | 1004 |
| FIGURE A.4: | List View Web Parts | 1007 |
| FIGURE A.5: | Create page | 1008 |
| FIGURE A.6: | Tactical Projects Value Calculation section | 1009 |
| FIGURE A.7: | Creating a New Mashup Wiki page | 1011 |
| FIGURE A.8: | InfoPath Form Web Part and Projects List View Web Part | 1013 |
| FIGURE A.9: | All Web Parts added to mashup page | 1014 |
| FIGURE A.10: | Project Statuses, Type, and Status Web Parts configured | 1016 |
| FIGURE A.11: | All Web Parts of mashup page configured | 1018 |