VbzCart/tables/stk bin history

from HTYP, the free directory anyone can edit if they can prove to me that they're not a spambot
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

About

  • Purpose: Documents things which happen to a stock bin -- usually changes to stk_bins data, but can also log collective movement of items to/from bins
  • History:
    • 2009-11-07 Added "Descr" field and made ID_Srce/ID_Dest NOT NULL
    • 2009-12-20 Added fields WhoAdmin, WhoSystem, WhoNetwork
    • 2017-04-17 Replacing this with event_vc_bin
  • Fields:
    • Descr is for events other than moving, e.g. field changes or stock recounts

SQL

DROP TABLE IF EXISTS `stk_bin_history`;
CREATE TABLE `stk_bin_history` (
  `ID`                      INT NOT NULL AUTO_INCREMENT,
  `ID_Bin`                  INT NOT NULL COMMENT "stk_bins.ID of bin being moved",
  `WhenDone`           DATETIME NOT NULL COMMENT "when the move happened",
  `WhoAdmin`   VARCHAR(127)     NOT NULL COMMENT "VbzCart admin username",
  `WhoSystem`  VARCHAR(127) DEFAULT NULL COMMENT "who logged into the operating system, if using non-web client app",
  `WhoNetwork` VARCHAR(64)      NOT NULL COMMENT "network name or IP address of client machine",
  `ID_Srce`                 INT NOT NULL COMMENT "stk_places.ID of where the bin came from (NULL = new bin)",
  `ID_Dest`                 INT NOT NULL COMMENT "stk_places.ID of where the bin was moved to (NULL = bin destroyed)",
  `Descr`      VARCHAR(255) DEFAULT NULL COMMENT "code-generated description for non-move events",
  `Notes`      VARCHAR(255) DEFAULT NULL COMMENT "optional explanatory notes",
  PRIMARY KEY(`ID`)
) ENGINE = MYISAM;

Migration

The following were used to migrate from this table to EventPlex tables:

INSERT INTO event_vc_bin (ID_Event, ID_Bin, ID_Srce, ID_Dest)
 SELECT ID+30000 AS NewID, ID_Bin, ID_Srce, ID_Dest
  FROM stk_bin_history;

INSERT INTO event_vc_legacy (ID_Event, WhoAdmin,WhoSystem,WhoNetwork)
 SELECT ID+30000 AS NewID, WhoAdmin,WhoSystem,WhoNetwork
 FROM stk_bin_history;

INSERT INTO event_notes (ID_Event,Notes)
 SELECT ID+30000 AS NewID, Notes
 FROM stk_bin_history
 WHERE Notes IS NOT NULL;

INSERT INTO event_in_table (ID_Event,TableKey,TableRow)
 SELECT ID+30000 AS NewID, "bin" AS TableKey, ID_Bin AS TableRow
 FROM stk_bin_history;

INSERT INTO event (ID, WhenStart, TypeCode, Descrip)
 SELECT ID+30000 AS NewID, WhenDone, "legacy.bin", Descr
 FROM stk_bin_history;

This is the reverse of the order in which they were executed, but order shouldn't matter. (I think.)