VbzCart/tables/ord pkgs
Jump to navigation
Jump to search
About
- Purpose: Packages shipped in response to a customer order (
- REDIRECT Template:l/vc/table)
- Refers to: core_orders (parent), ord_shipmt
- Used by: ord_pkg_lines (child)
- Fields:
- WhenFinished: I'm going to go out on a limb and define this as the time when the package charges are added up and created as order transaction records.
- WhenChecked: When the package was marked as ready (checked off) for inclusion in the shipment
- This field may be less useful in the web-based UI than it was in the Access/desktop UI.
- WhenVoided: We're not deleting packages anymore. Instead, we mark an emptied, unsent package as "VOID", and log it in the container record. Voided package records can be re-used if they aren't assigned to a closed shipment; log the un-voiding prior to re-use. (Should there be a "WhenLocked" field to represent the shipment being closed?
Maybe WhenFinished does this...) A package should never be voided without first zeroing stock in all line items. - ChgShipItm: total charged for per-item shipping
- ChgShipPkg: amount charged for per-package shipping
- ChgItmSale: total charged price of all items in this package
- Future:
- The field "ArrivalNotes" should be added to the message log; leaving it out of the migration for this table.
- History:
- 2010-10-19 Added ChgShipItm, ChgShipPkg to complete the record of what was charged for the package. (This should make it a lot easier to estimate shipping rates, though that's not why I added them. I added them from a vague sense that they should be there.)
- 2014-05-25 Added ChgItmSale to complete the record of how each package contributes to the total.
SQL
<mysql>CREATE TABLE `ord_pkgs` (
`ID` INT NOT NULL AUTO_INCREMENT, `Seq` INT COMMENT "number used to make user-friendly pkg #", `ID_Order` INT NOT NULL COMMENT "core_orders.ID", `WhenStarted` DATETIME COMMENT "when package record was created", `WhenFinished` DATETIME, `WhenChecked` DATETIME, `WhenVoided` DATETIME COMMENT "when package was emptied; can be reused later", `isReturn` BOOL COMMENT "TRUE = this package is being returned, not shipped out", `ID_Shipment` INT COMMENT "ord_shipmt.ID", `ChgShipItm` DECIMAL(9,2) DEFAULT NULL COMMENT "total amount charged for per-item shipping", `ChgShipPkg` DECIMAL(9,2) DEFAULT NULL COMMENT "amount charged for per-package shipping", `ChgItmSale` DECIMAL(9,2) DEFAULT NULL COMMENT "total sale amount of all charged items in package", `ShipCost` DECIMAL(9,2) DEFAULT NULL COMMENT "actual cost of shipping (postage)", `PkgCost` DECIMAL(9,2) DEFAULT NULL COMMENT "actual cost of packaging / insurance", `ShipPounds` FLOAT COMMENT "shipping weight in pounds (whole or fractional)", `ShipOunces` FLOAT COMMENT "shipping weight in ounces, less ShipPounds", `ShipNotes` VARCHAR(255) COMMENT "human-entered notes about this pkg", `ShipTracking` VARCHAR(127) COMMENT "shipper's tracking number for pkg", `WhenArrived` DATETIME COMMENT "when arrived at customer, if known", PRIMARY KEY(`ID`)
) ENGINE = MYISAM;</mysql>