Packaging Wizard, 330
PadQuotes function, 495
page break, inserting into a Word document, 302
Parallel Activities in Activity Diagrams, 8
parameters, 33
parent-child class relationships, 122
password, 328–329
Password parameter, 204
Password Required dialog, 328
perceived performance, 325–326
percent meter, 325–326
performance
improving actual for applications, 322–325
improving perceived, 325–326
slowed by encryption, 329
Performance Analyzer, 326–327
period (.), referring to objects, 94
pessimistic locking, 317
Phone field, 514–515
physical tier, 18
Picture property, 142
PopulateComboBoxes procedure, 421, 435–436
PopulateContactsControls procedure, 446–447, 450–451
PopulateControlsOnForm procedure, 146, 153–154
PopulateListFromRecordset procedure, 422, 436–437, 489–490
PopulateProjectsControls procedure, 419–420, 433–434
PopulatePropertiesFromForm procedure
adding to clsCustomer class module, 487
adding to clsProjects class module, 364–365, 369–370, 377, 381
PopulatePropertiesFromRecordset procedure, 363–364, 368–369, 376, 380–381, 486
populating combo boxes and list boxes, 190–193
predicates, restricting records returned, 160
prefixes, as naming conventions, 55–56
presentation (user interface) layer
creating diagrams for, 104, 105
in n-tier architecture, 17
in three-tier architecture, 15, 16
PresentationTarget parameter, 209
Preserve statement, 52
Preview button, 339
preview mode, 245, 246
primary key for a SQL Server table, 265
printer devices, displaying in the Debug window, 98–100
printer margins, setting, 247
Printer object, 98, 246–247
Printers collection, 98–100, 246–247
private declarations of procedures, 45
private variable, 54
procedures
calling sub procedures from, 35–36
creating and calling, 33–46
declaring as private, 45
defined, 33
versus macros, 46–48, 49
for making updates to data, 507–508
making use of If...Then statements, 57–58
retrieving values for, 36
variables and constants in, 49
ProceedWithDelete function, 388, 403
process Flow Diagrams, 7
ProcessRecordset function, 493–494
ProcessRecordset procedure, 396, 407–408
ProcessUpdate procedure, 396–397, 408, 496
program flow, controlling, 56–63
progress bar, 325–326
Project class, 358–372
Project Explorer, 357
Project object, class for, 357
project records, creating procedures for, 393–395, 406–407
Project Tracker application
building class modules for objects, 357–383
building the database, 340–343
building the user interface, 344–357
connecting the user interface to the code, 410–451
Contacts class, 372–383
design specifications, 334–340
opening, 335
Project class, 358–372
standard modules, 383–409
touring the finished, 452–459
Project Tracker screen
dividing into tabs, 336–339
prototype, 342
sample project record on, 452
Project window, 19, 20
ProjectId field, 410, 427
Projects form, 410–440
ProjectTrackerDb database, 340–343
ProjectTrackerUI database, 344
ProjectType property, 97
properties
adding to forms, 124–125
in a Class Diagram, 103
creating, 105–111
creating custom, 124–125
creating for a class, 105
creating for the Car class, 107–111
described, 80–82
of the Err object, 74
example using, 86–91
with interface inheritance, 123
listing for an object, 81
of objects, 79
shared by objects, 81
Properties dialog box
displaying for a form, 30
Event tab, 84, 86, 116
for a form, 80
for a text box control, 86
Properties module, 19, 20
Properties window, 30, 32
Property Get procedure
adding, 111
creating properties for existing objects, 124
syntax for, 106–107
using, 106
using SpecialFeaturesList enumeration, 122–123
Property Let procedure
adding, 111
creating properties for existing objects, 124
general syntax for, 106
using, 106
using SpecialFeaturesList enumeration, 122–123
property procedures
adding to clsCustomer class module, 483–485
adding to clsProjects class module, 359–361, 367, 373–375, 380
Property Set procedure, 106, 107, 124
property value, limiting to specified constants, 122
Protection tab, selecting, 328, 329
prototype screens
for the Customer Service application, 464–465
generating with Access forms, 336–340
generating with Visio, 336, 337
for managing cars, 102, 103
public functions, 111
Public keyword, 45, 54
public sub procedures
adding to a class, 111
creating custom methods, 125–126
public variables
creating properties for existing objects, 124
declaring, 54–55
implementing properties for custom classes, 105
using, 105
PublicEvent statement, 114
purpose of an application, 3