home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 1997 April
/
Chip_1997-04_cd.bin
/
prezent
/
cb
/
data.z
/
ABOUT.TXT
< prev
next >
Wrap
Text File
|
1997-01-16
|
3KB
|
102 lines
This example demonstrates how cached updates
can be used with live data and in conjunction
with the UpdateSQL component for non-live data.
When working with live data, updates are
performed by the BDE, otherwise the updates
are performed by the UpdateSQL component.
The following is a description of what each
of the controls in the main form do:
o Cached Updates Checkbox
This checkbox determines whether cached
updates are enabled or not. When unchecked,
the other controls which are only relevant
while cached updates mode are disabled.
In this mode, all edits are immediately
applied to the underlying dataset.
o UpdateSQL Checkbox
This checkbox determines whether the
UpdateSQL component is used to perform
the cached updates. When the user clicks
on this control to check or uncheck it,
the dataset is closed and the UpdateObject
property is set or cleared and then the
dataset is reopened. This is required
because the UpdateObject property of
TDataSet can only be set while the dataset
is closed. You can examine the SQL
statements used by the UpdateSQL component
by double clicking on it in the data module.
o Apply Updates Button
Clicking this button causes all pending
updates to be applied.
o Cancel Updates Button
Clicking this button causes all pending
updates to be discarded.
o Revert Record Button
Clicking this button causes any updates
to the current record in the grid to
be discarded.
o Show Records Group
Each of the check boxes in the ShowRecords
groupbox determine what types of records
are displayed in the grid. If you change
several records, and then want to only
see those record, uncheck all the boxes
except for the one marked "modified".
If you delete a record and then later
decide you want to undelete it, check
the deleted box, and then position to
the deleted record in the grid and click
the revert record button.
o ReExecute Query Button
Clicking this button forces the dataset
to be closed and then reopened.
This example also uses a calculated field
which shows the current update status of each
record (only when cached updates are enabled).
Errors which occur during the update process
are displayed in a simple form which shows
the new and old values together. There are
buttons which allow the user to determine
what type of action take. To see the
update error dialog in action, try changing
the ProjID field of one record to be the
same as the ProjID of another record.
This will cause a key violation when the
apply updates button is clicked.
When the error dialog comes up, if
you click the abort button, no updates will
be performed and the dataset will be restored
to the state it was in before the updates
were applied. If you click the skip button,
any other changes you made will be applied,
but not the one with the invalid ProjID.
The last option would be to change the ProjID
to something valid (such as the old value)
and then click the retry button.
Cached updates provide a powerful new way of
working with data in Delphi 2.0. See the
Database Application Developers Guide for a
complete discussion of this new feature.