We will be going back to our Order Form in this
class. We'll begin by setting the whole order as LOCKED as soon
as it's marked PAID. This way no further changes can be made to
Next we'll set up a REFUND button so that
someone can take a paid order and mark it NOT paid, but at least its a
separate step (and you can optionally put a password on it).
Next we'll add a ShipDate field and "Ship
Order" button to the invoice. Click on the button, and the invoice will
be marked SHIPPED.
Next we're going to start tracking inventory
levels. We'll add a Quantity On Hand field to our product table
We'll add a note in our System Log any
time a user changes an inventory level so we can see EXACTLY where our
products are going.
Next we'll examine a problem we have where if we
add the same product multiple times, we get multiple line item
entries in the order.
We'll write some VBA code so that if you click on
Add Product multiple times for the same product, it just
increments the Quantity field. This is a much nicer result.
Next we'll start working on the process of
shipping an order. First, we'll check stock levels. If we can't
ship an order because we don't have enough inventory, the database will
yell at you.
Now we'll write the code to actually remove
the items from inventory once they're shipped. This all happens behind
the scenes, but it updates your product table.
Access 326 - Course Outline
1. Locking Orders When Paid
Pull Databases Back Together
Lock the Order if it's Paid
2.Refunding an Order
Marking Unpaid in VBA Code
Can't Hide a Control That Has Focus
Pay a Quote Bug
3. Ship Date
Add ShipDate Field
Lock The ShipDate
Show the ShipButton only if needed
Can't Refund a Shipped Order
4. Inventory Levels
Quantity On Hand (QtyOnHand)
Adding Our UserLogon Form To Database
Adding a Log feature
Tracking which employee changed inventory level
5. Items Already On Order
Add QtyOnHand to Product Combo on OrderDetailF
Increment Quantity if already on order
Warning if no product picked
Create a recordset to increment quantity
Compile error: ByRef argument type mismatch
6. Shipping The Order, Part 1
Check to see if we have enough inventory on hand
7. Shipping The Order, Part 2
Actually ship the items