Introduction |
|
xxiii | |
|
InfoPath---The Journey Begins |
|
|
1 | (12) |
|
What Is InfoPath, and How Can It Be Used? |
|
|
1 | (11) |
|
The Challenge of Forms Management |
|
|
1 | (1) |
|
Microsoft's Solution: InfoPath |
|
|
2 | (1) |
|
Try It Out: Opening the Sample Absence Request InfoPath Form |
|
|
2 | (2) |
|
Side Trip: Installing the InfoPath 2003 Service Pack 1.1 |
|
|
4 | (1) |
|
|
4 | (1) |
|
Features Introduced in Service Pack 1.1 |
|
|
5 | (1) |
|
The InfoPath Form Process |
|
|
6 | (1) |
|
|
7 | (1) |
|
|
7 | (1) |
|
Published for Others' Use |
|
|
8 | (1) |
|
|
8 | (1) |
|
Ways to Connect Data to InfoPath |
|
|
8 | (1) |
|
Deployment Requirements for Designing and Filling Out InfoPath Forms |
|
|
8 | (1) |
|
Taking a Look at a Typical InfoPath Form |
|
|
9 | (1) |
|
Try It Out: Testing the Features of the Absence Request Form |
|
|
10 | (2) |
|
|
12 | (1) |
|
|
12 | (1) |
|
Getting Started Designing with InfoPath |
|
|
13 | (16) |
|
Touring the InfoPath Designer |
|
|
13 | (6) |
|
Overview of the Task Panes |
|
|
15 | (1) |
|
|
15 | (1) |
|
|
16 | (1) |
|
|
17 | (1) |
|
|
18 | (1) |
|
Creating Your First InfoPath Form |
|
|
19 | (8) |
|
Try It Out: Creating a New InfoPath Form |
|
|
19 | (2) |
|
Exploring the Ways of Designing a New Form |
|
|
21 | (1) |
|
|
22 | (1) |
|
|
22 | (1) |
|
Try It Out: Adding the Tables |
|
|
22 | (1) |
|
Resizing Table Columns and Rows |
|
|
23 | (1) |
|
Try It Out: Resizing Elements |
|
|
24 | (1) |
|
Setting Fonts and Adding Text to the Form |
|
|
24 | (1) |
|
Try It Out: Setting Font Information and Adding Text |
|
|
25 | (1) |
|
Adding Controls to the Form |
|
|
25 | (1) |
|
Try It Out: Adding Controls |
|
|
26 | (1) |
|
|
26 | (1) |
|
Try It Out: Set the Color Scheme |
|
|
26 | (1) |
|
|
27 | (1) |
|
|
28 | (1) |
|
|
29 | (16) |
|
|
29 | (6) |
|
Databases in the Real World |
|
|
30 | (1) |
|
|
31 | (1) |
|
Flat File Model Databases |
|
|
31 | (1) |
|
Relational Database Model |
|
|
32 | (1) |
|
Tables: Where Data is Stored |
|
|
32 | (2) |
|
|
34 | (1) |
|
|
34 | (1) |
|
|
35 | (1) |
|
Working with Various Databases |
|
|
35 | (5) |
|
File Server versus Client Server |
|
|
36 | (1) |
|
|
36 | (1) |
|
|
36 | (1) |
|
Benefits and Issues of Microsoft Access |
|
|
37 | (1) |
|
Microsoft Access Objects Used with InfoPath |
|
|
37 | (1) |
|
|
38 | (1) |
|
Benefits and Issues of Microsoft SQL Server |
|
|
38 | (1) |
|
Microsoft SQL Server Objects Used with InfoPath |
|
|
39 | (1) |
|
|
40 | (1) |
|
|
40 | (2) |
|
Try It Out: Examining an XML Document |
|
|
42 | (1) |
|
Introduction to Web Services |
|
|
42 | (2) |
|
|
42 | (1) |
|
Using Web Services with InfoPath |
|
|
43 | (1) |
|
|
44 | (1) |
|
|
44 | (1) |
|
Creating an InfoPath Form from an Existing Data Source |
|
|
45 | (20) |
|
Starting the Form Based on a Data Source |
|
|
45 | (6) |
|
Specifying the Right Data for the Right Job |
|
|
46 | (1) |
|
Working with the Data Connection Wizard |
|
|
46 | (1) |
|
Try It Out: Creating the Form and Specifying the Data Source |
|
|
47 | (4) |
|
Working with the Created InfoPath Form |
|
|
51 | (7) |
|
A Look at the Features of the New Form |
|
|
51 | (1) |
|
Try It Out: Filling in the Form Header Information |
|
|
52 | (1) |
|
|
53 | (1) |
|
Try It Out: Displaying the Fields in the Data Source |
|
|
53 | (1) |
|
|
54 | (1) |
|
|
54 | (1) |
|
Try It Out: Adding Fields to the Query Field Section |
|
|
54 | (1) |
|
Using More Than One Query Field |
|
|
55 | (1) |
|
|
55 | (1) |
|
Adding Fields One at a Time |
|
|
55 | (1) |
|
Adding Repeating Sections of Fields to the Form |
|
|
55 | (1) |
|
Try It Out: Adding Fields to the Data Field Section |
|
|
56 | (1) |
|
New Record and Run Query Command Buttons |
|
|
56 | (1) |
|
Try It Out: Examining to Run Query Command Button Action |
|
|
57 | (1) |
|
|
58 | (3) |
|
Try It Out: Querying a Customer Record by Region |
|
|
58 | (1) |
|
Try It Out: Modify a Customer's Record |
|
|
59 | (1) |
|
Try It Out: Adding a New Customer |
|
|
60 | (1) |
|
Updating a Form's Data Source |
|
|
61 | (2) |
|
Try It Out: Adding a Sort Order to tb/Customers |
|
|
62 | (1) |
|
|
63 | (1) |
|
|
64 | (1) |
|
Utilizing XML and Web Service Data Sources |
|
|
65 | (18) |
|
|
65 | (6) |
|
|
66 | (1) |
|
|
66 | (1) |
|
|
66 | (2) |
|
The XML Data Document (*.xml) |
|
|
68 | (1) |
|
|
69 | (1) |
|
Try It Out: Exporting tb/Shippers from Access to XML |
|
|
70 | (1) |
|
Utilizing XML Data in InfoPath |
|
|
71 | (9) |
|
Why Use an XML Data Source? |
|
|
71 | (1) |
|
Creating an InfoPath Form Using an Existing XML Document |
|
|
72 | (1) |
|
Try It Out: Specifying a XML Data Source |
|
|
72 | (2) |
|
Try It Out: Adding the Fields |
|
|
74 | (1) |
|
Utilizing Data with an XML Data Source |
|
|
75 | (1) |
|
Try It Out: Adding a Data Source Using an XML Document |
|
|
75 | (5) |
|
A Brief Look at the XML Used for InfoPath Forms |
|
|
80 | (1) |
|
Try It Out: Examining the Files |
|
|
80 | (1) |
|
|
81 | (1) |
|
|
81 | (2) |
|
Working with Controls in General |
|
|
83 | (20) |
|
Using the Right Control for the Right Job |
|
|
83 | (2) |
|
Looking at the Starting Form for the Chapter |
|
|
85 | (1) |
|
Try It Out: Open the Sample Form |
|
|
86 | (1) |
|
Working with the Property Sheet |
|
|
86 | (1) |
|
Setting the Default Value of a Control |
|
|
87 | (5) |
|
|
87 | (1) |
|
Try It Out: Adding a Default Value to Quantity |
|
|
87 | (2) |
|
|
89 | (1) |
|
Try It Out: Using a Formula for Order Data Default Value |
|
|
90 | (2) |
|
Working with Rules at the Control Level |
|
|
92 | (6) |
|
What Are Rules and When Are They Used? |
|
|
92 | (1) |
|
|
93 | (3) |
|
Try It Out: Adding a Second Rule |
|
|
96 | (2) |
|
|
98 | (4) |
|
Using Standard Formatting |
|
|
98 | (1) |
|
Try It Out: Formatting the UnitPrice for Currency |
|
|
99 | (1) |
|
|
100 | (1) |
|
|
100 | (1) |
|
Display Properties of a Text Box |
|
|
100 | (1) |
|
Try It Out: Creating Conditional Formatting |
|
|
101 | (1) |
|
|
102 | (1) |
|
|
102 | (1) |
|
Looking at Some Useful Controls and Techniques |
|
|
103 | (20) |
|
Using Expression Boxes with Formulas |
|
|
103 | (3) |
|
Try It Out: Adding an Expression Box Based on a Formula |
|
|
104 | (2) |
|
Utilizing Command Buttons |
|
|
106 | (3) |
|
Try It Out: Adding a Delete Button |
|
|
107 | (2) |
|
Utilizing Drop-Down List Boxes on the Form |
|
|
109 | (12) |
|
Adding a Drop-Down List Box to a Form |
|
|
109 | (1) |
|
Try It Out: Adding the Field from the Data Source as a Text Box, and then Changing It |
|
|
110 | (1) |
|
Try It Out: Adding a Drop-Down List Box and Binding it to a Field |
|
|
111 | (1) |
|
Specifying List Box Data Sources |
|
|
112 | (1) |
|
Working with an Additional Data Source |
|
|
113 | (1) |
|
Try It Out: Specifying an Additional Data Source |
|
|
113 | (2) |
|
List Box Data Connection Properties |
|
|
115 | (1) |
|
Try It Out: Setting a List Box's Data Connection Properties |
|
|
115 | (2) |
|
Entering the List Manually |
|
|
117 | (2) |
|
Try It Out: Creating the List Manually |
|
|
119 | (2) |
|
|
121 | (1) |
|
|
121 | (2) |
|
|
123 | (12) |
|
Overview of Types of Sections in an InfoPath Form |
|
|
123 | (1) |
|
Looking at Choice Sections and the Choice Group Control |
|
|
124 | (3) |
|
Try It Out: Adding a Choice Group Control |
|
|
126 | (1) |
|
|
127 | (3) |
|
Try It Out: Adding an Optional Notes Section and Setting Its Properties |
|
|
129 | (1) |
|
Specifying Filters on InfoPath Forms |
|
|
130 | (4) |
|
Try It Out: Filtering a Repeating Table Using a Drop-Down List Box |
|
|
131 | (3) |
|
|
134 | (1) |
|
|
134 | (1) |
|
|
134 | (1) |
|
|
135 | (26) |
|
|
135 | (4) |
|
Try It Out: Creating the Default View |
|
|
136 | (3) |
|
Working with View Properties |
|
|
139 | (5) |
|
Reviewing the Views Task Pane |
|
|
140 | (1) |
|
Getting to the View Properties |
|
|
141 | (2) |
|
Try It Out: Changing the Default View's Properties |
|
|
143 | (1) |
|
|
144 | (5) |
|
Try It Out: Adding the Notes and Orders Views |
|
|
144 | (3) |
|
Try It Out: Switching between Multiple Views |
|
|
147 | (2) |
|
|
149 | (6) |
|
HTML Web Page Used for Custom Task Pane |
|
|
150 | (1) |
|
Try It Out: Creating the Task Pane in HTML |
|
|
151 | (1) |
|
InfoPath Custom Task Pane Properties |
|
|
152 | (1) |
|
Try It Out: Specify Task Pane Files in Your InfoPath Form |
|
|
152 | (3) |
|
|
155 | (4) |
|
Try It Out: Creating Print Views |
|
|
156 | (3) |
|
|
159 | (1) |
|
|
160 | (1) |
|
Publishing InfoPath Forms |
|
|
161 | (20) |
|
What It Means to Publish an InfoPath Form |
|
|
161 | (1) |
|
Differentiating Forms to Fill from Their Templates |
|
|
162 | (1) |
|
Ways to Distribute InfoPath Forms |
|
|
162 | (1) |
|
Publishing to a File Server |
|
|
162 | (11) |
|
Try It Out: Publishing a Form on a File Server |
|
|
163 | (4) |
|
Publishing to a Web Server |
|
|
167 | (1) |
|
Try It Out: Publishing an InfoPath Form to a Web Server |
|
|
167 | (3) |
|
|
170 | (1) |
|
Try It Out: E-mailing an InfoPath Form When Filling |
|
|
171 | (2) |
|
|
173 | (3) |
|
Try It Out: Exporting an InfoPath Form |
|
|
174 | (2) |
|
Merging Data from Separate Forms |
|
|
176 | (4) |
|
Try It Out: Merging Data from Separate InfoPath Forms |
|
|
177 | (3) |
|
|
180 | (1) |
|
|
180 | (1) |
|
Working with Code in Your InfoPath Form |
|
|
181 | (12) |
|
|
181 | (1) |
|
Choose Your Flavor of Code: Script or Managed Code (.NET) |
|
|
182 | (4) |
|
|
182 | (1) |
|
Try It Out: Setting the Default Script Editor |
|
|
183 | (1) |
|
|
184 | (1) |
|
Try It Out: Downloading the InfoPath 2003 Toolkit for Visual Studio .NET |
|
|
184 | (2) |
|
Looking at Event Programming |
|
|
186 | (6) |
|
|
186 | (1) |
|
|
187 | (1) |
|
Try It Out: Creating Your First Scripted Event |
|
|
188 | (1) |
|
Try It Out: Creating Your First Managed Code Event |
|
|
189 | (3) |
|
|
192 | (1) |
|
|
192 | (1) |
|
Getting Started Using Scripts |
|
|
193 | (14) |
|
Introduction to Microsoft Script Editor |
|
|
193 | (3) |
|
Try It Out: Creating the Initial Form |
|
|
195 | (1) |
|
|
196 | (9) |
|
Working with Custom Functions |
|
|
197 | (1) |
|
Try It Out: Creating a Custom Function |
|
|
197 | (1) |
|
Try It Out: Calling a Custom Function |
|
|
198 | (2) |
|
|
200 | (1) |
|
|
200 | (1) |
|
|
200 | (1) |
|
|
200 | (1) |
|
Try It Out: Adding References to Fields on an InfoPath Form |
|
|
201 | (1) |
|
Performing Operations on Variables |
|
|
202 | (1) |
|
Try It Out: Updating the txtFullName Field from Code |
|
|
202 | (1) |
|
Try It Out: Displaying LastName, FirstName |
|
|
203 | (1) |
|
|
204 | (1) |
|
Try It Out: Adding an Conditional If Statement |
|
|
205 | (1) |
|
|
205 | (1) |
|
|
206 | (1) |
|
Working with .NET Managed Code |
|
|
207 | (22) |
|
Introduction to the .NET Framework |
|
|
207 | (3) |
|
|
208 | (1) |
|
.NET Framework Class Library |
|
|
209 | (1) |
|
|
210 | (7) |
|
Try It Out: Creating a C# Windows Application Project |
|
|
211 | (2) |
|
|
213 | (1) |
|
Modifying the Project by Adding a Control and Event Code |
|
|
214 | (1) |
|
Try It Out: Adding Controls and Code |
|
|
214 | (1) |
|
Executing the Application |
|
|
215 | (1) |
|
Executing with Debugging (Debug Mode) |
|
|
216 | (1) |
|
Executing without Debugging (Release Mode) |
|
|
216 | (1) |
|
Try It Out: Running Your Application |
|
|
216 | (1) |
|
Developing InfoPath Projects in .NET |
|
|
217 | (4) |
|
Review: Installing the InfoPath 2003 Toolkit for Visual Studio .NET |
|
|
217 | (1) |
|
Working with the InfoPath Namespaces |
|
|
217 | (1) |
|
Try It Out: Creating an InfoPath .NET Project |
|
|
218 | (3) |
|
Distributing InfoPath .NET applications |
|
|
221 | (6) |
|
Try It Out: Creating the Setup Distribution Project |
|
|
221 | (6) |
|
|
227 | (1) |
|
|
227 | (2) |
|
Real-World Tasks and Coding Examples |
|
|
229 | (20) |
|
|
229 | (7) |
|
Simple Date Calculations Using Script |
|
|
230 | (1) |
|
|
230 | (1) |
|
Creating a Reference to an InfoPath Field |
|
|
230 | (1) |
|
Assigning a Value to a Variable |
|
|
231 | (1) |
|
Try It Out: Creating a Form That Manipulates Dates Using Script |
|
|
231 | (2) |
|
Date Calculations Using C# and Visual Studio .NET |
|
|
233 | (1) |
|
|
233 | (1) |
|
Creating a Reference to an InfoPath Field |
|
|
233 | (1) |
|
Assigning a Value to a Variable |
|
|
234 | (1) |
|
Try It Out: Manipulating Dates Using C# |
|
|
234 | (2) |
|
Sending a Form in an E-Mail |
|
|
236 | (4) |
|
Try It Out: Creating a Form That Can E-Mail Itself |
|
|
237 | (3) |
|
Providing Context-Sensitive Help |
|
|
240 | (6) |
|
Try It Out: Creating a Context-Sensitive Help Task Pane |
|
|
243 | (3) |
|
|
246 | (1) |
|
|
247 | (2) |
|
Creating and Working with Web Services |
|
|
249 | (26) |
|
|
250 | (5) |
|
Web Services Infrastructure |
|
|
251 | (2) |
|
Using Web Services Locally |
|
|
253 | (1) |
|
Try It Out: Setting Up a Web Service Locally |
|
|
253 | (2) |
|
Using Web Services for Data Source |
|
|
255 | (7) |
|
Try It Out: Basing an InfoPath Form on a Web Service |
|
|
256 | (6) |
|
Creating a Web Service Using ASP.NET |
|
|
262 | (8) |
|
|
262 | (1) |
|
Try It Out: Creating an ASP.NET Web Service Project |
|
|
263 | (2) |
|
Looking at the Initial Template |
|
|
265 | (1) |
|
|
266 | (1) |
|
Namespace and Class Directives |
|
|
266 | (1) |
|
|
266 | (1) |
|
|
267 | (1) |
|
Try It Out: Creating and Testing Your First Web Method |
|
|
267 | (3) |
|
Working with Web Service Methods That Return Data |
|
|
270 | (4) |
|
|
270 | (1) |
|
Differences between ADO and ADO.NET |
|
|
270 | (1) |
|
ADO.NET Data Provider Classes |
|
|
270 | (1) |
|
|
271 | (1) |
|
Try It Out: Creating the Method to Return Supplier Information |
|
|
272 | (2) |
|
|
274 | (1) |
|
|
274 | (1) |
|
|
275 | (16) |
|
|
275 | (1) |
|
|
276 | (8) |
|
|
277 | (1) |
|
Try It Out: Looking at IE's Security Settings |
|
|
278 | (1) |
|
|
278 | (1) |
|
Try It Out: How to Create a Fully Trusted Form |
|
|
279 | (1) |
|
Using the SDK Regform Utility |
|
|
280 | (2) |
|
Try It Out: Creating a Fully Trusted Form Using the RegForm Utility |
|
|
282 | (1) |
|
|
282 | (1) |
|
Creating an MSI to Automatically Set Up Full Trust |
|
|
283 | (1) |
|
Try It Out: Use the RegForm Utility to Create an MSI |
|
|
283 | (1) |
|
Defining Security with the .NET Framework |
|
|
284 | (2) |
|
|
284 | (1) |
|
Assemblies in Web Services |
|
|
284 | (1) |
|
User versus Code Security |
|
|
285 | (1) |
|
|
285 | (1) |
|
|
285 | (1) |
|
System.Security Namespace |
|
|
285 | (1) |
|
|
286 | (3) |
|
Using Digital Signatures with InfoPath |
|
|
286 | (1) |
|
Try It Out: Creating a Test Digital for Testing |
|
|
286 | (1) |
|
Try It Out: Sign the Form with the Digital Signature |
|
|
287 | (2) |
|
|
289 | (1) |
|
|
289 | (2) |
|
Working with InfoPath and Windows SharePoint Services |
|
|
291 | (18) |
|
What Are Windows SharePoint Services? |
|
|
292 | (1) |
|
Windows SharePoint Services Site Features |
|
|
292 | (1) |
|
The Difference between Windows SharePoint Services and SharePoint Portal Services |
|
|
292 | (1) |
|
Touring a SharePoint Site |
|
|
293 | (7) |
|
Default Lists of the Site |
|
|
293 | (3) |
|
Try It Out: Touring the Different Areas |
|
|
296 | (1) |
|
|
296 | (1) |
|
Customizing the Windows SharePoint Services Team Site |
|
|
297 | (1) |
|
Try It Out: Applying a Theme to the Site |
|
|
298 | (1) |
|
Adding Existing Web Parts to Your Site |
|
|
299 | (1) |
|
Creating Your Own Web Parts |
|
|
300 | (1) |
|
Using InfoPath and SharePoint |
|
|
300 | (8) |
|
Publishing an InfoPath Form on a SharePoint Site |
|
|
301 | (1) |
|
Try It Out: Publish a Sales Report to a SharePoint Site |
|
|
301 | (5) |
|
Filling Out InfoPath Forms on the SharePoint Site |
|
|
306 | (1) |
|
Try It Out: Working with the Form Library |
|
|
306 | (2) |
|
|
308 | (1) |
|
|
308 | (1) |
|
Manufacturing Plant Case Study |
|
|
309 | (14) |
|
|
309 | (1) |
|
|
310 | (4) |
|
The BoilerSystem Data Model |
|
|
311 | (1) |
|
BoilersOperatingLog table |
|
|
311 | (1) |
|
|
312 | (1) |
|
|
313 | (1) |
|
The BoilerSystem Relationship Model |
|
|
313 | (1) |
|
Looking at the Boiler Web Service |
|
|
314 | (8) |
|
Creating the Data Adapters |
|
|
315 | (1) |
|
|
316 | (1) |
|
|
317 | (1) |
|
|
318 | (2) |
|
|
320 | (1) |
|
|
320 | (1) |
|
|
321 | (1) |
|
|
321 | (1) |
|
|
322 | (1) |
Appendix A: Answers to Exercises |
|
323 | (4) |
Index |
|
327 | |