This document describes the record structure of the "RCV" files.  An "RCV" file is a fixed-field-position, multi-record format file used to import an order into the DAC software system.  Each file contains one or more Header records followed by one or more Detail records.  The Header record indicates the start of a new order.  The Detail records following each Header record represent the line items for the order.  An RCV file can contain more than one order.  Each record should end with an ASCII Carriage Return / LineFeed pair, such as in a "Text" file.


Start Position

Length Format Required? Remarks
Header Record.
recordID 1 1 A Yes This identifies the record.  For the header record, use a literal "H".
employeeID 2 6 A No The salesperson from whom the order is originating.
customer 8 8 N Yes The DAC Customer Number.  This should be an integer, with leading zeros.  For example, "00103200".  Note: If storeNumber is not zero, this field is assumed to be a corporate number.
reserved 16 2 A No Reserved for future use.  Do not use.
message 18 23 A No A free-form text message.
creationDate 41 6 N No Date the order was created.  YYMMDD
route 47 6 A No Used to force an order onto a particular sales route.  Also accepts special values to direct order to certain applications.
poNumber 53 22 A No Purchase Order Number
source 75 1 A N Where the order came from.  Use any of the following, or Blank.
Access International = A
DAC Express = D
EDI = 4
Emulation = E
Prebook Export = P
Sales Force Automation = 3
Unknown = 2
Web Console = 1
storeNumber 76 6 N N The store number of the intended customer.  If this field is not zero, the customer field is assumed to be a corporate number.  Each customer within the corporate structure represented by that corporate number will be searched for a store number matching this field.  If found, the customer field will be replaced with the matching customer's number.
Detail Record
recordID 1 1 A Yes This identifies the record.  For the detail record, use a literal "I".
itemNumber 2 13 A Yes This identifies the product being ordered.  It is either a 6-digit DAC Item Number, or a 12-Digit UPC code.  The field is specified as Alphanumeric, but this is only so that either length field can be expressed.  If using a 6-digit DAC Item Number, include leading zeros and left-justify the field.  For example, "003456".  If using a 12-digit UPC code, include the prefix and the check digit, and left-justify the field.  For example, "012345678905".
quantity 15 3 N No The quantity ordered.  For example, "012".
quantitySign 18 1 A No The sign of the quantity ordered.  Always use literal "+".
unit 19 1 N No The unit of measure to order.  Use "1" for an Each, Use "2" for a case.  Leave blank to order the item in the standard selling unit.
discount 20 2 N No This field is not used at this time.  Use "00".
price 22 5 N No This field is not used at this time.  Use "00000".
reserved 27 1 A No This field is not used.
creditReason 28 1 A No Reason for a line-item credit.
expectedPrice 29 7 N No The price the sender expects to pay for this product.  Assumed 2-decimal places.  (i.e. $1.25 = 0000125)
longQty 36 5 N No A longer representation of the quantity field.  If > 0, this field will be used for the order quantity, rather than the "quantity" field.  Always right-justify, zero-fill.  Example, "00023"
longQtySign 41 1 N No The sign of the longQty field.  Always use "-" or "+".


The following is a BASIC type declarations for the two record types:

TYPE HeaderRecLayout
	HeaderType AS STRING * 1 '(H=Order Header)
	Employee AS STRING * 6 '(Salesman ID)
	Cust AS STRING * 8 '(Id of customer order is for)'
	Shipto AS STRING * 2 '(Where to ship the goods to- unused now)
	Message AS STRING * 23 '(A free-format message that goes with order)
	CreateDate AS STRING * 6 '(Date this record was created on PC)
	Route as STRING * 6 '(Delivery route override)
	Source as STRING * 1 '(The source of the order)
TYPE DetailRecLayout
	DetailType AS STRING * 1 '(I= Item)
	ItemNumber AS STRING * 13 '(Distributors Item # - or - UPC 6 or 10 long)
	Qty AS STRING * 4 '(Quantity of the item)
	Unit AS STRING * 1 '(Unit of measure for item- blank - standard)
	Disc AS STRING * 2 '(Discount given)
	Price AS STRING * 5 '(Override price)
	expectedPrice as STRING * 7 '(Price the sender expects to pay)