WorkFerret/tables/invoice: Difference between revisions

From Woozle Writes Code
Jump to navigation Jump to search
(+fields: InvcNum, Notes)
(+ID_Debit)
Line 3: Line 3:
** '''2010-01-28''' Adapted from MS Access version
** '''2010-01-28''' Adapted from MS Access version
** '''2010-02-05''' Added fields: InvcNum, Notes
** '''2010-02-05''' Added fields: InvcNum, Notes
** '''2010-02-09''' Added field: ID_Debit
* '''Fields''':
* '''Fields''':
** '''InvcSeq''' is used to generate the invoice number. I'm thinking [invc ID [zero-padded]]-[invc pfx]-[InvcSeq] would be sortable ''and'' would provide a validity check (i.e. nobody could just make one up because of the ID).
** '''InvcSeq''' is used to generate the invoice number. I'm thinking [invc ID [zero-padded]]-[invc pfx]-[InvcSeq] would be sortable ''and'' would provide a validity check (i.e. nobody could just make one up because of the ID).
Line 13: Line 14:
   `InvcNum`    VARCHAR(31)  NOT NULL COMMENT "Complete invoice number",
   `InvcNum`    VARCHAR(31)  NOT NULL COMMENT "Complete invoice number",
   `TotalAmt`    DECIMAL(9,2) NOT NULL COMMENT "total amount billed",
   `TotalAmt`    DECIMAL(9,2) NOT NULL COMMENT "total amount billed",
  `ID_Debit`    INT(4)  DEFAULT NULL COMMENT "ID of session in which invoice total is deducted",
   `WhenCreated` DATETIME    NOT NULL COMMENT "when the invoice was created",
   `WhenCreated` DATETIME    NOT NULL COMMENT "when the invoice was created",
   `WhenSent`    DATETIME DEFAULT NULL COMMENT "when the invoice was sent out to the client",
   `WhenSent`    DATETIME DEFAULT NULL COMMENT "when the invoice was sent out to the client",

Revision as of 12:23, 9 February 2010

About

  • History:
    • 2010-01-28 Adapted from MS Access version
    • 2010-02-05 Added fields: InvcNum, Notes
    • 2010-02-09 Added field: ID_Debit
  • Fields:
    • InvcSeq is used to generate the invoice number. I'm thinking [invc ID [zero-padded]]-[invc pfx]-[InvcSeq] would be sortable and would provide a validity check (i.e. nobody could just make one up because of the ID).

SQL

<mysql>DROP TABLE IF EXISTS `invoice`; CREATE TABLE `invoice` (

 `ID`          INT(4)       NOT NULL AUTO_INCREMENT,
 `ID_Proj`     INT(4)       NOT NULL COMMENT "Project to which this invoice applies",
 `InvcSeq`     VARCHAR(7)   NOT NULL COMMENT "Invoice sequence number",
 `InvcNum`     VARCHAR(31)  NOT NULL COMMENT "Complete invoice number",
 `TotalAmt`    DECIMAL(9,2) NOT NULL COMMENT "total amount billed",
 `ID_Debit`    INT(4)   DEFAULT NULL COMMENT "ID of session in which invoice total is deducted",
 `WhenCreated` DATETIME     NOT NULL COMMENT "when the invoice was created",
 `WhenSent`    DATETIME DEFAULT NULL COMMENT "when the invoice was sent out to the client",
 `WhenPaid`    DATETIME DEFAULT NULL COMMENT "when payment was received on this invoice",
 `WhenVoid`    DATETIME DEFAULT NULL COMMENT "when this invoice was cancelled or otherwise nullified",
 `Notes`       VARCHAR(255) DEFAULT NULL COMMENT "human-entered notes",
  PRIMARY KEY(`ID`)

) ENGINE=MyISAM;</mysql>