home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Monster Media 1993 #2
/
Image.iso
/
database
/
prmptacc.zip
/
BOOKFIX.TXT
next >
Wrap
Text File
|
1993-03-25
|
4KB
|
94 lines
Summary of corrections to "Running Microsoft Access" and the
PROMPT.MDB database as of 3/25/93.
Chapter 12, Page 270, line 2
should read: "... or choose the Select Form command from the
Edit menu)"
Chapter 14, Page 312, "Adding Calculated Values"
To properly display totals when some months have no sales for
a particular item, the formula should read:
=IIf(IsNull([Jan]),0,[Jan]) +IIf(IsNull([Feb]),0,[Feb])
+IIf(IsNull([Mar]),0,[Mar])
Chapter 19, Page 402
Using "Is Not Null" is not a good example of a single field validation
rule. Microsoft Access Version 1.0 checks validation rules only via
form controls. However, Access performs validation rule checks ONLY
if data in the control changes. If a user skips over a control bound
to a field that must contain data (Not Null), leaving that control
unchanged, Access will not enforce the validation rule. You should
check for Null in BeforeUpdate for the form. A better example would be
to create a rule that "Days to Build" must always be greater than zero
(>0) and include a default value of 1 for the "Days to Build" field.
Chapter 19, Pages 406-407
The section on "Assisting Data Entry" should also include an explanation
for the second macro action in the sample. The SendKeys {F2} causes the
cursor to position at the end of the data value that was just copied
into the [Long Description] control. This is handy to position the
entry point ready to type additional information.
Chapter 19, Page 409, Figure 19-12
The setting for the Item argument in the second SetValue should
read: Forms![Catalog - Chap 14]![Price]
Chapter 19, Page 411, Figure 19-15
The setting for the SQL Statement argument in the RunSQL action
should read:
DELETE DISTINCTROW [Item Components].[Catalog Item ID]
FROM [Item Components] WHERE [Item Components].[Catalog Item ID] =
Forms![Catalog - Chap 14]![Catalog Item ID];
Chapter 19, Page 411, paragraph immediately under Figure 19-15
should begin:
"Notice that the Condition argument in the first Action of the
Delete Items macro uses ..."
Chapter 19, Pages 424-426, "Orders Form Properties" and
"Picking a Customer on the Orders Form"
Although setting Allow Updating to Any Tables does let you update
customer information on the "one" side of the query as documented,
it also has the unwanted side effect of attempting to delete the
customer row when you try to delete an order. This works OK when
you are deleting the last order for a customer (but the customer
row disappears!), but generates an error if the customer still has
orders outstanding. The sample database has been changed to set
Allow Updating to Default Tables. The desired update to customer
information is accomplished with unbound controls and additional
macro routines in the Orders macro.
Chapter 19, Page 430, Figure 19-39
The setting for the Macro Name argument in the RunMacro action
should read:
Orders - Chap 19.Calc Tax
Improvements to PROMPT.MDB:
OnDelete macros have been added to all forms in the application to
trap all possible referential integrity violations and display a
more informative message box or take appropriate cascading delete
action.
Macros have been added to BeforeUpdate and AfterUpdate of the
Display / Add Components form to cause any change in Our Cost to
also be reflected in any related rows in the Catalog Items table.
Updates to Customer address information from the Orders form are now
accomplished via unbound controls and macros. See above.
An OnDelete macro has been added to the Orders Details Subform and the
Catalog Subform to correctly re-calculate values on the main form
whenever you delete a row in the subform. Deleting a row does not
trigger the subform AfterUpdate routine that handles this calculation
when you change or add a record.