VbzCart/docs/tables/ord pkgs: Difference between revisions
Jump to navigation
Jump to search
imported>Woozle (better documentation of fields) |
m (Woozle moved page VbzCart/VbzCart/tables/ord pkgs to VbzCart/docs/tables/ord pkgs without leaving a redirect: part 4/5) |
||
(2 intermediate revisions by one other user not shown) | |||
Line 8: | Line 8: | ||
*** This field may be less useful in the web-based UI than it was in the Access/desktop UI. | *** 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? <s>Maybe WhenFinished does this...</s>) A package should never be voided without first zeroing stock in all line items. | ** '''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? <s>Maybe WhenFinished does this...</s>) A package should never be voided without first zeroing stock in all line items. | ||
* '''ChgShipItm''': total charged for per-item shipping | ** '''ChgShipItm''': total charged for per-item shipping | ||
* '''ChgShipPkg''': amount charged for per-package 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. | ** The field "ArrivalNotes" should be added to the message log; leaving it out of the migration for this table. | ||
* '''History''': | * '''History''': | ||
** '''2010-10-19''' Added '''ChgShipItm''', '''ChgShipPkg''' to complete the record of what was charged for the package. | ** '''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== | ==SQL== | ||
<mysql>CREATE TABLE `ord_pkgs` ( | |||
`ID` INT NOT NULL AUTO_INCREMENT, | `ID` INT NOT NULL AUTO_INCREMENT, | ||
`Seq` INT COMMENT "number used to make user-friendly pkg #", | `Seq` INT COMMENT "number used to make user-friendly pkg #", | ||
Line 25: | Line 27: | ||
`isReturn` BOOL COMMENT "TRUE = this package is being returned, not shipped out", | `isReturn` BOOL COMMENT "TRUE = this package is being returned, not shipped out", | ||
`ID_Shipment` INT COMMENT "ord_shipmt.ID", | `ID_Shipment` INT COMMENT "ord_shipmt.ID", | ||
`ChgShipItm` DECIMAL(9,2) COMMENT "total amount charged for per-item shipping", | `ChgShipItm` DECIMAL(9,2) DEFAULT NULL COMMENT "total amount charged for per-item shipping", | ||
`ChgShipPkg` DECIMAL(9,2) COMMENT "amount charged for per-package shipping", | `ChgShipPkg` DECIMAL(9,2) DEFAULT NULL COMMENT "amount charged for per-package shipping", | ||
`ShipCost` DECIMAL(9,2) COMMENT "actual cost of shipping (postage)", | `ChgItmSale` DECIMAL(9,2) DEFAULT NULL COMMENT "total sale amount of all charged items in package", | ||
`PkgCost` DECIMAL(9,2) COMMENT "actual cost of packaging / insurance", | `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)", | `ShipPounds` FLOAT COMMENT "shipping weight in pounds (whole or fractional)", | ||
`ShipOunces` FLOAT COMMENT "shipping weight in ounces, less ShipPounds", | `ShipOunces` FLOAT COMMENT "shipping weight in ounces, less ShipPounds", | ||
Line 37: | Line 40: | ||
) | ) | ||
ENGINE = MYISAM;</mysql> | ENGINE = MYISAM;</mysql> | ||
Latest revision as of 01:57, 25 February 2024
About
- Purpose: Packages shipped in response to a customer order (Template:Vbzcart/table)
- Refers to: Template:Vbzcart/table (parent), Template:Vbzcart/table
- Used by: Template:Vbzcart (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 Template:Vbzcart 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>