This articles explains how to set up the Scheduled Job called "Import Transactions" within BackOffice.
This articles explains how to set up the Scheduled Job called "Import Transactions" within BackOffice. Prerequisites- Minimum Bepoz version of 4.6 and onwards
- To setup the scheduled job, the applicable Operator Privileges will need to be enabled
- Operator Maintenance 'General' Tab
- System Setup: "Maintain Scheduled Jobs" Flag
Import Transactions Scheduled Job
- Login to Backoffice and go to System Setup
- Go to Scheduled Jobs and click on Add Job
- Details are as follows:
- Job Name: As per desire
- Job Type: External DLL
- DLL Name: Jobexport.Dll
- ClassName: Import Transactions
- Schedules: Set as per desire
- Job Options:
- Skip First Line: Sometimes the first line may be a header line, this will skip the first line
- File contains Full Path Name: If the Filename of the URL does not fit into 100 characters. Then create a text file with the full path or URL as the first line and Set this flag and put the text files name in the Filename field
- Continual Polling Mode: This will cause the Job to run continuously and export the Transactions as they occur. The export file is opened, appended to, and closed each time an export occurs
- Filename to Import: The name of the file to be imported
- Extra Directory Info: If the full File Path name does not fit into the FileName field, the directory can be placed here
- Archive Directory: The Imported file will be Archived to this Dir.
- Import Format: Select the format of the imported file
- Polling Mode Seconds: This will cause the Job to run continuously and look for an Import file according to the Polling Mode Seconds Field
*This flag must be on in some versions for the transaction import to work
- Till Alias Export Code: If the Import file has Till Alias field, this is the Export Code Field to match that to
- Default Operator: If the Operator is not matched, this Operator will be used
- Default Till: If the Till is not matched, this Till will be used
- Default Product: If the Product is not matched, this Product will be used
- Default Account: If the Account is not matched, this Account will be used
FieldName | Format | Description | |||||
DateTimeTrans | DateTime | ||||||
Training | Boolean | “Y” or blank. Useful for testing Imports… | |||||
OrderID | Int32 | Used to Group Items in same transaction | |||||
OrderType | Int32 | Usually Blank. | |||||
TillID | Int32 | Either TillID or TillAlias MUST be valid | |||||
TillAlias | String | Either TillID or TillAlias MUST be valid | |||||
DrawerNum | Byte | 1 or 2 only (defaults to 1) | |||||
ShiftID | Int32 | 1 – 10 (defaults to 1) | |||||
OperatorID | Int32 | Either Operator ID or Number MUST be valid | |||||
OperatorNumber | String | Either Operator ID or Number MUST be valid | |||||
OrderComment | String | ||||||
ProductID | Int32 | 1-10 only, must be valid size for Product. | |||||
ProdNumber | String | Size Name as set by Product | |||||
ProdExportCode1 | String | ||||||
Size | Byte | Another way of matching a product and size. | |||||
SizeName | String | ||||||
Barcode | String | ||||||
ProductOption | Int32 | ||||||
QtySold | Double | Can have decimal places | |||||
Gross | Double | In 0.00 format | |||||
Nett | Double | In 0.00 format | |||||
PaymentName | String | ||||||
PaymentAmount | Double | In 0.00 format | |||||
Rounding | Double | In 0.00 format | |||||
AccountID | Int32 | Either Account ID or Number MUST be valid | |||||
AccountNumber | String | Either Account ID or Number MUST be valid | |||||
PaymentRefID | Int32 | ||||||
TableGroup | Int32 | ||||||
TableNumber | String | ||||||
TableName | String | ||||||
TableGuests | Int32 | ||||||
TaxRatePlusOne | Int32 | If using Addon Tax, 0 is invalid. 1-5 will set tax rate as 0-4, If inclusive, 0=Use rate as set in Bepoz, 1-5 will set tax rate as 0-4. | |||||
TaxAmount | Double | The required non rounded Addon tax for this line, Inclusive Tax does not need to be included (but can be) | |||||
ServiceCharge | Double | The non rounded Service Charge for this line | |||||
DiscNum_1 | Byte | ||||||
TableID | Int32 | ||||||
ProductSortType | Byte | ||||||
HandlingFee | Double | ||||||
PointsAmount | Integer | ||||||
TLINEREFID | 4.7.x | ||||||
RENEWALTYPE | 4.7.x | ||||||
DISCNUM_1_AMOUNT | 4.7.x | ||||||
DISCNUM_2 | 4.7.x | ||||||
DISCNUM_2_AMOUNT | 4.7.x | ||||||
DISCNUM_3 | 4.7.x | ||||||
DISCNUM_3_AMOUNT | 4.7.x | ||||||
DISCPROMOID_1 | 4.7.x | ||||||
DISCPROMOID_2 | 4.7.x | ||||||
DISCPROMOID_3 | 4.7.x | ||||||
PRODTYPE | 4.7.x | ||||||
ORDPERC_NUM | 4.7.x | ||||||
ORDPERC_AMOUNT | 4.7.x | ||||||
===========
Import Defaults (Till, Operator, Product)
If you want to ensure that all transactions are imported always, it is Critical that you setup
defaults for the Till, Operator and Product in the Bepoz prior to any imports.
If the Till, Operator or Product is not matched to the Bepoz database, it will then try to use a
default if it setup. If no default is found, the entire Order will NOT be Imported. An error File will
be created. To setup the Import Defaults in Bepoz, Set the Till Alias of the default till to
“IMPORT”, set the Operator Number if the default operator to “IMPORT” and set the default
Product to have a ProdNumber of “IMPORT”. It is Important to set these up if you want to ensure
a mismatch does not prevent transaction importing.
Account Default
Account default works differently, if AccountID or AccountNum is present, but is not matched, it
will look for a default account with “IMPORT” in either the Account Number or Card Number
fields. If it does not find a default account, and if there is NO AccCharge payment type then it will
still import the transaction as a normal non-account transaction. If there is an AccCharge
payment, the Order will NOT be imported. If you set the Default Account to be Inactive, then it
will always cancel the order if the account is not matched.
Comment Lines
Lines starting with * will be ignored.
Date & Time
Date and Time will have the current date and time if not present or invalid.
OrderID
It is used to group multiple lines into the same transaction in Bepoz. Important: If you are
importing multiple product lines for the same transaction, you must ensure that the basic
transaction data, Till, Drawer, Shift, Operator and Account is set in the first line for that
transaction. This is the data that will be used for the whole transaction. This is stored in
Transaction->Miscdata.
OrderType:
Blank = Standard Transaction. This can have an account or not. Negative amounts for Returns.
Account payments can be done by having a payment with no products sold.
32770 = Cash Pay Out. A payment amount is requied
32771 = Cash Pay In. A payment amount is requied
32772 = Drawer Clearance. A payment amount is required
ProductOption:
Blank or 0 = Standard product with no condiments.
1 = Standard Product with condiments following
2 = Condiment Product (requires a prior Standard product type 1)
PaymentName:
All Charges (Nett) should be matched with a Payment. If the total charges plus total rounding in a
transaction do not match total payments in a non-account transaction,an automatic payment will
be added. This payment will be a Credit card named “Import Correction” or if this credit card
name is not found, then it will use Cash. If the transaction is for an Account and the payments do
not balance, the different will be subtracted from the Account Balance.
Valid Normal Payment Names:
"CASH"
"EFTPOS"
"CHEQUE"
"RESLINKXFER"
"RESLINKXFER2"
Plus all Credit Card Names as setup in the Bepoz customer Database.
Charging to an Account is done by using the following Payment name
"ACCCHARGE"
The following Payments should have a negative amount as they add to the total payment
required.
"TIP"
"HANDLING_FEE"
"CHANGE"
The following Payments should not have a product.
"CASHPAYOUT"
"CASHPAYIN"
"SKIMDRAWER"
Below shows a number of sample transactions for importing. They all use various ways of matching Tills, Operators etc.
Date,Time,Training,OrderID,OrderType,TillID,TillAlias,DrawerNum,ShiftNum,OperatorID,OperatorNum,OrderComment,ProductID,ProductNum,D escription,SizeNumber,SizeName,Barcode,ProdOption,QtySold,Gross,Nett,PaymentName,PaymentAmount,Rounding,AccountID,AccountNum
*Various Standard Sales using different combinations30/06/2008,14:32:20,,1000,,,123,,,,9999,,,1355,,1,,,,1,23.99,22.99,Amex,22.99,,,1000 30/06/2008,14:32:25,,1001,,,123,,,,9999,,,1285,,2,,,,2,47.98,45.98,Cash,46.00,0.02,, 30/06/2008,14:32:25,,1001,,,123,,,,9999,,,1285,,2,,,,1,23.99,22.99,Cash,23.00,0.01,, 30/06/2008,14:33:40,,1002,,2,,2,2,9,,,481,,Penfolds 128,1,,,,1,23.99,22.99,EFTPOS,22.99,,, 30/06/2008,19:36:40,,1002,,2,,2,2,9,,,,,,,,9310297649389,,1,23.99,22.99,EFTPOS,22.99,,, 30/06/2008,20:36:40,,1002,,2,,2,2,9,,,,,,,,9310297649389,,1,23.99,22.99,CASH,22.99,,,
*Account Charge30/06/2008,20:38:40,,1003,,1,,,2,9,,,177,,Penfolds 389,1,,,,1,23.99,22.99,ACCCharge,22.99,,,1110
*Sample Product with Condiments30/06/2008,21:32:20,,1004,,,124,,,,9999,,,1355,,1,,,1,1,23.99,22.99,Amex,27.49,,,1000 30/06/2008,21:32:20,,1004,,,124,,,,9999,,,1285,,2,,,2,1,2.5,2.5,,,,, 30/06/2008,21:32:20,,1004,,,124,,,,9999,,,1286,,1,,,2,1,2,2,,,,,
*Sample Product with zero priced Condiments30/06/2008,21:32:20,,1005,,,124,,,,9999,,,1355,,1,,,1,1,23.99,22.99,Amex,22.99,,,1000 30/06/2008,21:32:20,,1005,,,124,,,,9999,,,1285,,2,,,2,1,0,0,, 30/06/2008,21:32:20,,1005,,,124,,,,9999,,,1286,,1,,,2,1,0,0,, *
*Return Transaction30/06/2008,21:34:20,,1006,,,123,,,,9999,,,1355,,1,,,,1,-23.99,-22.99,Cash,-22.99 * *Cash Payout 30/06/2008,22:32:20,,1007,32770,,123,,2,,9999,Money for Delivery Person,,,,,,,,,,,,25.00
*Cash Payin30/06/2008,22:32:25,,1008,32771,,123,,2,,9999,Change from Safe,,,,,,,,,,,,46.00