""" Test vTiger modules and queries """ import asyncio import sys sys.path.insert(0, '/app') from app.services.vtiger_service import get_vtiger_service async def test_vtiger(): vtiger = get_vtiger_service() # Test connection print("šŸ”‘ Testing vTiger connection...") connected = await vtiger.test_connection() if not connected: print("āŒ Connection failed!") return print("\n" + "="*60) print("Testing different module queries for account 3x760") print("="*60) # Test various queries queries = [ # Try different module names ("Services", "SELECT * FROM Services WHERE account_id='3x760' LIMIT 5;"), ("Products", "SELECT * FROM Products WHERE account_id='3x760' LIMIT 5;"), ("SalesOrder", "SELECT * FROM SalesOrder WHERE account_id='3x760' LIMIT 5;"), ("Invoice", "SELECT * FROM Invoice WHERE account_id='3x760' LIMIT 5;"), ("Quotes", "SELECT * FROM Quotes WHERE account_id='3x760' LIMIT 5;"), ("Contacts", "SELECT * FROM Contacts WHERE account_id='3x760' LIMIT 5;"), # Try without account filter to see structure ("SalesOrder (all)", "SELECT * FROM SalesOrder LIMIT 2;"), ("Invoice (all)", "SELECT * FROM Invoice LIMIT 2;"), ] for name, query in queries: print(f"\nšŸ“‹ Testing: {name}") print(f"Query: {query}") try: results = await vtiger.query(query) if results: print(f"āœ… Found {len(results)} records") if len(results) > 0: print(f"Sample keys: {list(results[0].keys())[:10]}") # Show first record print("\nFirst record:") for key, value in list(results[0].items())[:15]: print(f" {key}: {value}") else: print("āš ļø No results") except Exception as e: print(f"āŒ Error: {e}") if __name__ == "__main__": asyncio.run(test_vtiger())