Item sync is split in 2 different sync options.
•Item Refresh will do core item related tables AND stock levels and serial number availability
•Item Stock Refresh is to refresh stock levels and serial numbers
The following scripts exist in the Items SQL folder location:
•ItemDefault
•ItemEmployeeLocation
CSQUERY SELECT (e.g. no view access) with relevant filters is used to look up Item data
These are the Item sync default queries:
Type |
SQL file |
Default sync filter |
---|---|---|
Items |
item.sql |
ICITEM.SELLABLE = 1 AND |
Units |
itemunit.sql |
ICITEM.SELLABLE = 1 AND |
Manufacturers Code |
itemmancode.sql |
ICITEM.SELLABLE = 1 AND |
Locations |
itemlocation.sql |
ICLOC.LOCTYPE=0 |
Categories |
itemcategory |
|
These are the Item Stock sync queries:
Type |
SQL file |
Default sync filter |
---|---|---|
Location Details |
itemlocationdetail.sql |
ICLOC.LOCTYPE = 0 AND ICLOC.INACTIVE = 0 AND |
Serials |
itemserial.sql |
ICXSER.STATUS = 1 AND ICITEM.SERIALNO=1 AND |
By adding @txempl to query current user can be injected for filtering as a way to cut down the number of records in the Item List as well as the Item syncing time. The ItemEmployeeLocation SQL script is using @txempl as a way of filtering Items to Employee Location.
Item sync is triggered when:
•Item Refresh or Item Stock Refresh is selected
•Full Refresh is selected
•On login (if online) when it has not been done within nominated Item sync or Item Stock sync timeout