Fieldpine Logo Documentation Home  

Barcodes PHYSICAL Table Structure

This page contains technical detail about the physical database structure. It is not required for normal day to day operation of the Point Of Sale.


This table holds reference information describing barcodes and their links to products or abilities to control the POS Operation.


On mesh configured systems, this table is maintained as an input/output


FieldNameDatatypeMeta InfoGnapDescription
Barcodestring,60100/sActual barcode value. Leading zeros are important and must be retained.
Pidlong101/EProduct Id this barcode points too
qtylong102/sQuantity to be applied to this scan. A value of 0, null or 1, all mean "1x". Qty is used where scanning a single barcode should cause the product to appear multiple times on the sale
StartDtdate108/sDate this record is valid from
EndDtdate109/sDate this record is valid until
EntryDtdate110/sDate this record was added to the database
ScanActionlong111/EAction to be undertaken when a match is made to this record
  • 0, null- Add product to sale
  • 2 - Ignore barcode scan
Prioritylong114/ERecords are selected in ascending priority order and the first valid match used.
DefineSourcelong115/EWhere this barcode record originated from. A coded number
  • 0, null - Unknown, not captured, historic.
  • 1 - Was captured by scanning at POS and linking to product
  • 2 - Result of a bulk load operation, such as a spreadsheet
  • 3 - A supplier price book or reference document supplied this information and it was automatically inserted.
physkeystring:44,zerolen254/sUnique key for this record


It is valid to have the same barcode pointing to multiple different products, although this feature can be disabled. Sometimes barcode conflicts will occur, they shouldn't but they do, and where a barcode matches multiple products, the POS may need to prompt the teller to determine the exact product being sold

Not all POS programs will honour all fields. Some systems will ignore some of this table.


The primary key on this table is physkey

In previous versions the primary key was {barcode,pid}. This may remain as the primary key but this disables the ability to enter time controls for individual barcodes. The ability to enter time controls is rarely used and typically only relates to extended usage.

An index should exist on the barcode field, as the most common scan of this table is of the form

	select ... from barcodes where barcode = '123456'