Files
Implementation_ITSA/Reference Data/python_project/helpers/config.py
AzureAD\SylvainDUVERNAY 078843f991 Initial commit
2026-02-13 14:23:19 +01:00

78 lines
2.5 KiB
Python

import psycopg2
from proteus import config
# CSV file paths
EMPLOYEE_CSV = 'loaders/employees.csv'
PARTIES_CSV = 'loaders/parties.csv'
CUSTOMER_STOCK_LOCATIONS_CSV = 'loaders/customer_stock_locations.csv'
SUPPLIER_STOCK_LOCATIONS_CSV = 'loaders/supplier_stock_locations.csv'
SERVICES_CSV = 'loaders/services.csv'
VESSELS_CSV = 'loaders/vessels.csv'
PURCHASE_CONTRACTS_CSV = 'loaders/Purchase_Contracts_with_mapping.csv'
PURCHASE_FEES_CSV = 'loaders/purchase_fees.csv'
SALE_CONTRACTS_CSV = 'loaders/Sale_Contracts_with_mapping.csv'
# XML-RPC Configuration (for Proteus interaction)
HTTPS = 'https://'
SERVER_URL = 'itsa.open-squared.tech'
DATABASE_NAME = 'tradon'
USERNAME = 'admin'
PASSWORD = 'dsproject'
# PostgreSQL Configuration (for direct database access if needed)
DB_HOST = '72.61.163.139'
DB_PORT = 5433
DB_USER = 'postgres'
DB_PASSWORD = 'dsproject'
# Database connection configuration for direct PostgreSQL access
# Used by migration mapper and custom field updates
DB_CONFIG = {
'host': DB_HOST, # Your PostgreSQL host
'port': DB_PORT, # Your PostgreSQL port
'database': DATABASE_NAME, # Your Tryton database name
'user': DB_USER, # Your database user
'password': DB_PASSWORD # Your database password
}
# Function to connect to Tryton via XML-RPC
def connect_to_tryton():
"""Establish connection to Tryton via XML-RPC"""
print(f"Server: {HTTPS}{SERVER_URL}")
print(f"Database: {DATABASE_NAME}")
print(f"Username: {USERNAME}")
try:
connection = config.set_xmlrpc(f'{HTTPS}{USERNAME}:{PASSWORD}@{SERVER_URL}/{DATABASE_NAME}/')
print("✓ Connected successfully!\n")
return connection
except Exception as e:
print(f"✗ Connection failed: {e}")
print("\nTroubleshooting:")
print(" - Verify the server URL is correct and accessible")
print(" - Check that the Tryton server is running")
print(" - Verify username and password are correct")
print(" - Make sure you can access the server in a browser")
raise
def get_db_connection():
"""Get PostgreSQL database connection"""
try:
connection = psycopg2.connect(
host=DB_HOST,
port=DB_PORT,
database=DATABASE_NAME,
user=DB_USER,
password=DB_PASSWORD
)
return connection
except Exception as e:
print(f"✗ Database connection failed: {e}")
raise