DOWNLOAD SAMPLE FILE: SOIMP.dat
This is an ASCII CSV file format.
There is a minimum of 1 record per sales order. Each record contains columns both for header data and order body data
A similar technique (as is used with the MTADIF.DAT format, the ‘headers cleared’ basis) can be used so that order header information is not repeated for the 2nd and subsequent records on the order.
| Field | Label | Data Type | Max Size | Sample Value 1 | Sample Value 2 | SOIMP.dat Remarks |
|---|---|---|---|---|---|---|
| 1 | Transaction Number | N | 8 | 1 | 2 | Unique Transaction ID in batch; if blank, line is skipped |
| 2 | Customer Code | A | 10 | PERKINS | VAN OVEN | Customer Account Code; must exist in TAS (NB – Uppercase only), otherwise whole Transaction is aborted NB – there is no need to repeat Field/Col Nums 2-36 incl for 2nd, 3rd etc lines of same Order Transaction ID, as Order header info is only read from 1st record |
| 3 | Order Type | A | 1 | I | I | Q=Quotation P=ProForma I=Sales Order N=Credit Note; if none of these defaults to P |
| 4 | Order Date | A | 8 | 21/02/2018 | 22/02/2018 | Sales Order Date. Reasonableness check based on target company’s financial calendar: minimum = 4 Years Past, Period 1 Start Date, maximum = Current Year, Last Period End Date PLUS 1 Year. If blank or unreasonable, default = SL Date. Formats: DDMMYY, DDMMYYYY, DD/MM/YY, DD/MM/YYYY |
| 5 | Expect Ship Date | A | 8 | 22/02/2018 | 28/02/2018 | Expected Ship Date. Reasonableness check based on target company’s financial calendar: minimum >= Order Date, maximum = Current Year, Last Period End Date PLUS 5 Years. If blank or unreasonable, default = SL Date. Formats: DDMMYY, DDMMYYYY, DD/MM/YY, DD/MM/YYYY |
| 6 | Invoice Name | A | 40 | Perkins Ltd | Van Oven Labs Ltd | Customer Invoice Name. NB – if blank, value is got from Customer record. |
| 7 | Invoice Address1 | A | 40 | Thamesway Ind Est | Unit C | Invoice Address Line 1; if this and all other invoice address related fields (7-14) are blank, values are pulled from Customer record. |
| 8 | Invoice Address2 | A | 40 | Sunbury | Panmure Ind Est | Invoice Address Line 2. |
| 9 | Invoice Address3 | A | 40 | Middlesex | Wandsworth | Invoice Address Line 3. |
| 10 | Invoice Address4 | A | 40 | London | Invoice Address Line 4. | |
| 11 | Invoice Country | A | 40 | UK | UK | Invoice Country Line. |
| 12 | Invoice Postcode | A | 8 | TW16 4RT | SW18 4SN | Invoice Post code |
| 13 | Invoice Contact | A | 40 | Gillian Wiltshire | Invoice Contact Name. | |
| 14 | Invoice EC Code | A | 2 | GB | GB | Invoice EC Code |
| 15 | Ship Code | A | 10 | PERKINSD1 | Delivery Address Code. Unless blank, must exist in TAS (NB – Uppercase only), otherwise this field is left blank. | |
| 16 | Ship Name | A | 40 | Perkins Ltd | Van Oven Labs Ltd | Delivery Address Name; if this and ShipAddress1 are blank, all Delivery Address values are pulled from InvoiceName/Address above. |
| 17 | Ship Address1 | A | 40 | Unit 6 | Unit C | Delivery Address 1. |
| 18 | Ship Address2 | A | 40 | Thames Trad. Est | Panmure Ind Est | Delivery Address 2. |
| 19 | Ship Address3 | A | 40 | Kingston upon Thames | Wandsworth | Delivery Address 3. |
| 20 | Ship Address4 | A | 40 | Surrey | London | Delivery Address 4. |
| 21 | Ship Country | A | 40 | UK | UK | Delivery Country. |
| 22 | Ship Postcode | A | 8 | KT1 1AB | SW18 4SN | Delivery Postcode |
| 23 | Ship Contact | A | 40 | Mr Stonehouse | Delivery Contact Name. | |
| 24 | Ship EC Code | A | 2 | GB | GB | Delivery EC Code |
| 25 | Project Code | A | 10 | PROJ0001 | Must be a valid TAS Project Code (NB – Uppercase only), otherwise the value is ignored with a warning in Log | |
| 26 | Pay VAT Basis | A | 1 | H | E | ignored – value got from Customer record. For EC to be zero-rated Customer must have VAT Registration entered! |
| 27 | Terms | N | 4 | ignored | ||
| 28 | Description | A | 60 | Re: PO1234 | Re: Ord098 | Short Description; if blank, it is set to name for order type., e.g. ‘Sales Order’ for Invoice |
| 29 | Customer Order Num | A | 30 | PO1234 | Ord098 | Customer Order Number |
| 30 | Settlement Discount Percentage | N | 6 | 2.5 | 10 | Settlement Discount Percentage; must be in range 0-100, if not (or if blank) defaults this field and next to the values in Customer record |
| 31 | Settlement Discount Days | N | 3 | 21 | 60 | Settlement Number of Days for Discount; must be in range 0-150, otherwise defaults to value in Customer record, except if Settlement Discount Percent is 0, ignoredand set to 0. |
| 32 | Intrastat Delivery Terms | A | 3 | 0 | 0 | Only for EC customers/orders Intrastat Delivery Terms (EC deliveries): EXW=Ex Works FOB=Free On Board CIF=Cost Insurance & Freight DDU=Delivered Domicile XXX=Other; blank is treated as Not Applicable |
| 33 | Intrastat Delivery Mode | N | 1 | 1 | 0 | ignored unless EC customers/orders Intrastat Delivery Mode (EC deliveries): 0=Not Applic 1=Sea 2=Rail 3=Road 4=Air 5=Post 6=Not Allocated 7=Fixed Installations 8=Inland Waterway 9=Own Propulsion |
| 34 | Charge VAT | A | 1 | ignored | ||
| 35 | Salesperson | A | 3 | DEF | SAM | Sales Person; must exist in TAS (NB – Uppercase only), otherwise ignored and TAS Customer Default is used |
| 36 | Marketing Code | A | 10 | DEFAULT | DEFAULT | Market Code; must exist in TAS (NB – Uppercase only), otherwise ignored and TAS Default used |
| 37 | Body Product Code | A | 20 | 10-D1390 | ABCD-123 | Body Item fields start here Product Code, must exist in TAS (NB – Uppercase only), otherwise Line will be aborted (also the whole Order Transaction ID if all lines aborted), unless for a body Text line where value = “-” (i.e. minus sign) |
| 38 | Body Order Qty | N | 9 | 5 | 1 | Order Quantity must be >0.00 (i.e. +ve). If any neg values, total order value must be +ve. |
| 39 | Body Unit Price | N | 12 | 10.25 | 10 | Gross Unit Price; can be 0.00, but not negative (if negative, line is rejected); if blank, relevant Product Price is used (depends on Customer Price Type setup) |
| 40 | Body Unit Cost Price | N | 12 | 5.25 | 2 | Unit Cost Price; can be 0.00, but not negative (if negative, line is rejected); if blank, relevant Product Cost Price is used (depending on TAS Central setup) |
| 41 | Body Disc Perc | N | 6 | 0 | 0 | Line Discount Percentage; can be 0.00, but not negative, and cannot be >100.00; if <0.00 or >100.00 it is set to 0.00 with Log Warning message |
| 42 | Body Disc Amount | N | 12 | 0 | 0 | ignored – program calculates based on Gross Unit Price and Line Discount Percent |
| 43 | Body VAT Code | N | 2 | 1 | 2 | ignored – now based on Product VAT Rate in TAS for Customer VAT Type |
| 44 | Body Description | A | 60 | 100Litre Cap Conv | Generic Product | Product Description for the Product (usually, but not always, same as TAS Product Desc) or, if Body Text Line, the “free” text entry. If blank and a product line, the Product’s TAS description is used. |
| 45 | Invoice Email Address | A | 60 | sales@infoplex.co.uk | Invoice email address, if left blank will use email address of whichever Contact is setup in TAS Central setup (0.1.2) | |
| 46 | Shipping Email Address | A | 60 | shipping@infoplex.co.uk | Shipping email address, if left blank will use email address of whichever Contact is setup in TAS Central setup (0.1.2) | |
| Carriage Return (Hex = 0D, Dec = 13) | ||||||
| Line Feed (Hex = 0A, Dec = 10) |
