141 lines
3.8 KiB
Markdown
141 lines
3.8 KiB
Markdown
# Ejemplos de uso del Cliente Tryton
|
|
|
|
Esta carpeta contiene ejemplos prácticos de cómo utilizar el cliente RPC de Tryton en Node.js.
|
|
|
|
## Preparación
|
|
|
|
Antes de ejecutar cualquier ejemplo, asegúrate de tener:
|
|
|
|
1. **Node.js instalado** (versión 14 o superior)
|
|
2. **Servidor Tryton ejecutándose** y accesible
|
|
3. **Credenciales válidas** para conectarse al servidor
|
|
4. **El proyecto compilado**:
|
|
```bash
|
|
npm install
|
|
npm run build
|
|
```
|
|
|
|
## Ejemplos disponibles
|
|
|
|
### 1. Conexión Básica (`basic-connection.ts`)
|
|
|
|
**Propósito**: Demuestra cómo conectarse a Tryton y realizar operaciones básicas.
|
|
|
|
**Características**:
|
|
|
|
- ✅ Conexión al servidor Tryton
|
|
- ✅ Autenticación de usuario
|
|
- ✅ Obtención de información del usuario y token de sesión
|
|
- ✅ Búsqueda de terceros (party.party)
|
|
- ✅ Manejo de errores y validación de configuración
|
|
|
|
**Configuración requerida**:
|
|
Edita el archivo `basic-connection.ts` y completa estos campos:
|
|
|
|
```typescript
|
|
const config = {
|
|
hostname: "localhost", // IP/dominio del servidor Tryton
|
|
port: 8000, // Puerto (generalmente 8000)
|
|
database: "tu_base_datos", // Nombre de la base de datos
|
|
username: "tu_usuario", // Usuario de Tryton
|
|
password: "tu_contraseña", // Contraseña
|
|
language: "es", // Idioma preferido
|
|
// ... resto de opciones
|
|
};
|
|
```
|
|
|
|
**Ejecución**:
|
|
|
|
```bash
|
|
# Opción 1: Usando el script npm (recomendado)
|
|
npm run example:basic
|
|
|
|
# Opción 2: Directamente con Node.js
|
|
node dist/examples/basic-connection.js
|
|
```
|
|
|
|
**Salida esperada**:
|
|
|
|
```
|
|
🚀 Iniciando ejemplo de conexión con Tryton...
|
|
|
|
📡 Creando cliente Tryton...
|
|
🔗 Conectando al servidor...
|
|
✅ Conexión exitosa!
|
|
|
|
👤 INFORMACIÓN DEL USUARIO
|
|
========================================
|
|
Usuario: Juan Pérez (ID: 123)
|
|
Idioma: es
|
|
Token de sesión: usuario:123:abc123xyz789
|
|
|
|
🏢 LISTA DE TERCEROS
|
|
========================================
|
|
Buscando terceros...
|
|
✅ Se encontraron 15 terceros:
|
|
|
|
1. ACME Corporation (ACME001)
|
|
2. Beta Industries
|
|
3. Gamma Solutions (GAM001)
|
|
...
|
|
|
|
🎉 ¡Ejemplo completado exitosamente!
|
|
```
|
|
|
|
## Solución de problemas comunes
|
|
|
|
### Error de conexión
|
|
|
|
- **Síntoma**: `Error durante la ejecución: Connection refused`
|
|
- **Solución**: Verifica que el servidor Tryton esté ejecutándose en la IP y puerto correctos
|
|
|
|
### Error de autenticación
|
|
|
|
- **Síntoma**: `Error durante la ejecución: Invalid login`
|
|
- **Solución**: Confirma que el usuario, contraseña y base de datos sean correctos
|
|
|
|
### Error de base de datos
|
|
|
|
- **Síntoma**: `Error durante la ejecución: Database not found`
|
|
- **Solución**: Asegúrate de que el nombre de la base de datos sea exacto (sensible a mayúsculas)
|
|
|
|
### Error de permisos
|
|
|
|
- **Síntoma**: `Access denied for model party.party`
|
|
- **Solución**: El usuario necesita permisos de lectura para el modelo de terceros
|
|
|
|
### Error de compilación TypeScript
|
|
|
|
- **Síntoma**: Errores durante `npm run build`
|
|
- **Solución**: Ejecuta `npm run clean` y luego `npm run build`
|
|
|
|
## Estructura de archivos
|
|
|
|
```
|
|
examples/
|
|
├── README.md # Esta documentación
|
|
├── basic-connection.ts # Ejemplo básico de conexión
|
|
└── [futuros ejemplos] # Ejemplos adicionales
|
|
```
|
|
|
|
## Próximos ejemplos
|
|
|
|
Se planean agregar más ejemplos que cubran:
|
|
|
|
- 📝 Creación de registros
|
|
- ✏️ Actualización de datos
|
|
- 🗑️ Eliminación de registros
|
|
- 🔍 Búsquedas avanzadas con dominios complejos
|
|
- 📊 Trabajo con diferentes modelos de Tryton
|
|
- 🔧 Configuración avanzada del cliente
|
|
|
|
## Soporte
|
|
|
|
Si encuentras problemas con los ejemplos:
|
|
|
|
1. Verifica que hayas seguido todos los pasos de preparación
|
|
2. Revisa la sección de solución de problemas
|
|
3. Asegúrate de usar la versión más reciente del cliente
|
|
|
|
Para más información sobre la API de Tryton, consulta la [documentación oficial de Tryton](https://docs.tryton.org/).
|