Customer & operational data used in Floworks is regularly updated to the field using a scheduled syncing mechanism. This page covers that mechanism and how data flows from NetSuite to Floworks.
The syncing mechanism from NetSuite to Floworks is actually a 2-stage process that starts with a scheduled task that pulls selected information from NetSuite (via webservices) into either our local database (where it will later be converted to XML) or generates XML directly. The XML files are placed into folder on the OKCPUB01 server which is being monitored by version-control software. The second stage of this 2-step process involves the version-control software installed locally on each laptop checking to make sure that it's local files are the most up-to-date version. If not, the laptop will pull the latest version down from the server to store locally. This allows the client laptops to operate autonomously without relying on an active internet signal for new data. This process occurs silently as a background process on the client laptops, meaning that the laptop may update itself several times throughout the day as the user travels in and out of cell range.
Currently the first step of this process is scheduled to run every 20 minutes. The second stage will run asynchronously to the first step at 30 minute intervals, or upon starting the client machine.
Assets
Mechanics
Parts
Customer Information
Warehouses
Warehouses are synced from NetSuite via the "sync_warehouses.php" script. This script relies on the "**DO NOT DELETE** Warehouse Location Code with Driver" Saved Search within NetSuite. This script will pull this saved search via web services and create a structured XML file named "warehouses.xml". This file is then moved into the "XMLOut" folder that is synced to client machines. Warehouses are only synced if they are currently assigned to a Driver (or mechanic) in NetSuite.
After these warehouses have been added to "warehouses.xml", the script will then add a number of entries in the XML for "unmanned warehouses". These warehouses can be edited, added or removed by editing the array embedded in "sync_warehouses.php".