Transcript Chapter 5
1
Chapter 5
Using Objects and
Properties
5
Chapter Objectives
• Define and explain the roles of objects and
properties in an Access database
• Describe the difference between Microsoft Access
objects, Data Access Objects (DAO), and ActiveX
Data Objects (ADO)
• Write dot and bang notation that retrieves and
updates object properties in a macro and module
• Create a query with a criterion that references a
control on a form
5
Chapter Objectives
• Modify the properties of a form through a
macro or VBA statement
• Modify the properties of a linked table
• Create recordsets in a VBA procedure
• Find and describe properties related to
many objects, including forms, reports,
tables, commands, controls, fields,
databases, and recordsets
5
The World According to
Objects
• Each object has properties
Data items that describe the objects
• Object characteristics:
Can contain other objects
Have methods
Capabilities or procedures that the object can
perform
Related objects can be grouped
5
The World According to
Objects
• A group of objects, called a subclass, is a
subset of another group of objects, called a
superclass
• Class inheritance
Process when a new subclass is placed inside a
superclass, objects within that subclass inherit
the properties of the superclass
5
The World According to
Objects
• Object-oriented development environment
Uses objects that have the features just
described
• Object-based development environment
Supports object properties, object methods,
collections, and objects that contain other
objects
5
Objects and Collections in
Access
• Three major categories of objects exist:
Microsoft Access objects
Created and maintained by Access programming
environment
Primarily relate to the user interface and modules
DAO objects
Created and managed by the Jet database engine
Primarily involve objects related to data storage and
retrieval
TableDef and QueryDef objects are examples of DAO
objects
5
Objects and Collections in
Access
• Three major categories of objects exist
(continued):
ADO objects
Similar to DAO objects
Table object replaces the TableDef object used in
DAO and the Command object replaces the
QueryDef DAO object
5
Objects and Collections in
Access
• Collection
An object that contains related objects
• Tables collection
Contains definitions of all Table objects
• Forms collection
Contains all open forms; all forms that are
loaded
5
Objects and Collections in
Access
• Each TableDef object owns a Fields collection
that in turn contains the Fields objects in the
table
• Each Form object owns a Controls collection
that contains all of the controls in the form
• Count property of a collection
Indicates the number of objects in the collection
5
Objects and Collections in
Access
Figure 5-1 Some of the relationships among Microsoft Access objects
5
Objects and Collections in
Access
Figure 5-2
Relationships
among DAO
objects
5
Objects and Collections in
Access
Figure 5-3
Relationships
among ADO
objects
5
Objects and Properties in
Access
• Dot notation
Syntax used by VBA, macros, and queries
Uses the dot (.) operator to indicate that what
follows is an item defined by Microsoft Access
• Bang notation
Notation using the exclamation point (!)
Can be used in place of dot notation when the
collection referenced by an object is the default
collection
5
Objects and Collections in
Access
• Keywords can be used to shorten object
property paths
VBA can use the word Me inside a form or
report class module to refer to the form or
report that contains the module
A form or report class module can use the word
Parent to refer to a form or report that contains
another form or report
5
Changing Property Values
• VBA can change the value of a property by
using the assignment statement in a VBA
procedure
• VBA supports several data types:
Integer is a relatively small integer
Long is a larger integer
Single is a real number
5
Changing Property Values
• VBA supports several data types (cont.):
Double is a real number that offers twice as
much storage space and precision as a Single
String is a series of characters or numbers
Boolean is True or False
Variant can contain anything
5
Changing Property Values
Table 5-1
Microsoft
Access
objects
5
Changing Property Values
• The SetValue action requires two action
arguments:
Item argument
Contains the dot or bang notation that identifies the
property
Expression argument
Contains the new value
5
Changing Property Values
Figure 5-5
Macro
action that
shows a
form’s
Form
Header
5
The Application Object and
Properties
• Application object
Represents the Access application that is currently
running
• MenuBar
Identified the default menu that will be displayed when
the application opens
• Intrinsic constant
Name used by Access to represent a particular integer
5
The Application Object and
Properties
Table 5-2 Some Application object properties
5
The Screen Object and
Properties
• Screen object
Refers to the form, report, or control that is
currently active on the screen
• Some screen properties are read-only
Macros and VBA statements can read the
current value but cannot change it
5
The Screen Object and
Properties
Table 5-3 Important Screen properties
5
Objects and Properties Related
to Forms, Reports, and Controls
Table 5-4
Commonly used
properties
associated with
format or
appearance
5
Objects and Properties Related
to Forms, Reports, and Controls
Table 5-5
Commonly
used
properties
associated
with
updating
data
5
Objects and Properties Related
to Forms, Reports, and Controls
Table 5-5
Commonly
used
properties
associated
with
updating
data
(continued)
5
Objects and Properties Related
to Forms, Reports, and Controls
• Caption property
Displays text in the title bar of the form
• AllowAdditions
A False setting prohibits the entry of new records
• Filter property
When the FilterOn property equals True, the Filter
property restricts the rows that the form displays to
those rows that meet the criteria
5
Manipulating Record Sources
and Row Sources
• Row source
Specifies a table or query that contains the values listed
in combo or list box
• Record source
Identifies table or query that supplies data to the entire
form, page, or report
• Changing the value of a record source or row
source in a module or macro changes the data
displayed by the form, page, report, combo box, or
list box
5
Nuances of Forms, Reports,
and Controls Notation
• When the Modal property of a form is True, a
user cannot perform an operation on any other
form until the current, or modal, form is
closed
• When the PopUp property of a form property
is True, Access places the current form in front
of all other open forms
5
Nuances of Forms, Reports,
and Controls Notation
Figure 5-6
Creating a
hierarchical
sequence of
combo
boxes
5
Data Access Objects and
Their Properties
Table 5-6
Commonly
used DAO
objects
5
Data Access Objects and
Their Properties
Table 5-6
Commonly
used DAO
objects
(continued)
5
DBEngine, Workspace, and
the Database Objects
• Database object
Represents an open database and is managed within the
context of a Workspace
• Workspace object
Defines how an application interacts with data
• Database engine (DBEngine object)
Manages workspaces
Compromises the built-in procedures that retrieve and
update data in response to a user’s request
5
ActiveX Data Objects and
Properties
• ActiveX Data Objects model (ADO)
Not hierarchical like the DAO model
Figure 5-7
ActiveX
Data
Objects
Database
Data
Model
(ADODB)
5
ActiveX Data Objects and
Properties
Figure 5-8
ActiveX
Data
Objects
Extensions
for DDL
and
Security
Data
Model
(ADOX)
5
ActiveX Data Objects and
Properties
Figure 5-9
ActiveX Data
Objects Jet
Replication
Objects Data
Model (JRO)
5
Libraries
• The libraries needed to support ADOX and
JRO are not automatically loaded by Access
• If using both DAO and ADO objects in an
Access project:
Specify which library to use when declaring
objects
DAO and ADO include several objects with the
same names
5
Connection Object
• Connection object
Establishes a connection to the database and defines a
session in which a user interacts with the data
Table 5-7
Commonly used
ADODB
Connection
object properties
5
Connection Object
Table 5-7 Commonly used ADODB Connection object properties (continued)
5
Catalog and Table Objects
• Catalog object
Represents a database
• Table object
Contains the definitions that define the table
structures in the database
Used to access properties of the table’s design
5
Table 5-8
Commonly
used Table
object
properties
Catalog and Table Objects
5
Catalog and Table Objects
• Some properties are optional
Managed by the database engine only when
they are created in VBA code or set by the
system developer through Design or Datasheet
view of an object
Description property
Created by Microsoft Access (not the database
engine) through the Table property sheet
5
Field Objects and Properties
• Every Table object owns a Columns
collection
• As you append columns to the Columns
collection
Specify the information needed for the Data
Type
5
Index Objects and Properties
• Indexes are fields used to find and sort records in a
table
• Keys are either primary keys or foreign keys
Table 5-9
Commonly
used ADOX
Index
properties
5
Command Object
• Command Object
Can contain information needed to define a query
Table 5-10 Commonly used ADODB Command properties
5
Recordset Objects and
Properties
• Recordset objects
Provide access to the actual data stored in and
retrieved from the database
• ADO recognizes four general types of
recordsets, which are determined by the
CursorType property setting
Dynamic cursors
Fully scrollable
5
Recordset Objects and
Properties
• Four general types of recordsets (cont.):
KeySet cursors
Fully scrollable, but do not offer the capability of
seeing changes made by other users
Forward Only cursors
Not scrollable
Static cursors
Fully scrollable, yet do not offer the option of seeing
changes made by anyone in a Static cursor
5
Recordset Objects and
Properties
Table 5-11 Allowed CursorType/LockType combinations in ADO
5
Recordset Objects and
Properties
Figure 5-10
Prospect
processing
module section
5
Recordset Objects and
Properties
• Procedure-level (or local variable)
A variable used only in the current procedure
Table 5-12
Commonly
used
Recordset
properties
5
Recordset Objects and
Properties
• Bookmark property of a recordset
Points to the current record
• EOF property
Equals True when a previously executed Find
method does not find a record that matches a
specified criterion
Equals True when the bookmark advances past
the last record in the recordset
5
Objects Defined by Other
Applications
• An Access application can use objects
managed by other applications
• To write code that uses objects from another
application:
Microsoft Access References collection must
contain an object that identifies the other
application
5
Chapter Summary
• Access is an object-based database
environment
Tables, queries, forms, reports, and even
database are objects
Other objects that support data access activities
are recordsets and workspaces
5
Chapter Summary
• Access maintains hundreds of data items,
called properties, that describe the objects in
an Access database
• Objects are grouped into collections
Collections are associated with the user
interface or with the database engine
5
Chapter Summary
• Generally, properties can be examined and
changed by opening the property sheet
associated with the object
• Most properties can be manipulated through
VBA
Macros and VBA allow programmers to change
object properties while the program is running