The Windows server should already have Firebird 1.5 installed with TRADER.FDB at:
/traderftp/Technocore/TRADER.FDB
Download and install fbexport for Windows:
fbexport.exe to a directory in PATH or to C:\Program Files\fbexport\fbclient.dll) is accessible# Install Python 3.12+ from python.org
# Create virtual environment
python -m venv venv
# Activate virtual environment
.\venv\Scripts\activate
# Install dependencies
pip install -r resource.config\requirements.txt
Update config.yaml trader section (already configured):
base:
trader:
password: INT7753931
location_windows: C:/traderftp/Technocore/TRADER.FDB
sql_folder_windows: C:/traderftp/Technocore/sql
traderftp:
host: 102.36.24.130
username: ftp
password: trader
port: 7000
type: FTP
Important: Verify the actual paths on your Windows server. The paths above assume:
C:\traderftp\Technocore\TRADER.FDBC:\traderftp\Technocore\sqlAdjust these paths in config.yaml to match your actual Windows server directory structure.
# Test that fbexport can access the database
fbexport -D /traderftp/Technocore/TRADER.FDB `
-P INT7753931 `
-U SYSDBA `
-Q "SELECT COUNT(*) FROM RDB$RELATIONS WHERE RDB$SYSTEM_FLAG = 0"
# Activate virtual environment
.\venv\Scripts\activate
# Run the agent to extract all priority tables
python factory.service\package.fullhouse\ObjServiceFullhouseAgent.py extract
# Download TRADER.zip from FTP
python factory.service\package.fullhouse\ObjServiceFullhouseAgent.py scan-hq
# Download and process trader ZIP files (216 AVONWOOD)
python factory.service\package.fullhouse\ObjServiceTrader.py run
# Check multiprocessing configuration
python factory.service\package.fullhouse\ObjServiceImportSql.py workers
# Scan and import SQL backup files (uses multiprocessing for speed)
python factory.service\package.fullhouse\ObjServiceImportSql.py scan
# Run sync check only
python factory.service\package.fullhouse\ObjServiceImportSql.py synccheck
# Download and import AJS feeds
python factory.service\package.fullhouse\ObjServiceImportSql.py ajs
# Update single table post-import hooks
python factory.service\package.fullhouse\ObjServiceImportSql.py table sales_transaction_header
Performance Note: The import service uses multiprocessing to import multiple SQL files in parallel (default: 4 workers). Each worker creates its own isolated database connection for maximum safety and performance. See MULTIPROCESSING_OPTIMIZATION.md for details.
All services use os.path.join() which automatically handles Windows vs Linux path separators:
C:\path\to\file/path/to/fileThe _resolve_path() helper in ObjServiceFullhouseAgent.py handles both absolute and relative paths correctly.
Add fbexport directory to PATH:
$env:PATH += ";C:\Program Files\fbexport"
def_tablemeta for tables with SyncPriority 0-1sql_folder_windows path