Conexión Fuente Sybase
Requisitos Previos
Antes de configurar la conexión de origen SAP ASE en Crestone, asegúrese de contar con lo siguiente:
Requisito Principal: Una instancia activa y accesible de SAP ASE (Sybase), versión 12.5.1 o superior, con un usuario que posea privilegios de lectura en la base de datos de destino. Las siguientes versiones son totalmente compatibles:
| Versión | Compatibilidad |
|---|---|
| SAP ASE 12.5.x (< 12.5.1) | No compatible (SELECT TOP no disponible) |
| SAP ASE 12.5.1+ | Compatible |
| SAP ASE 15.x | Compatible (recomendado) |
| SAP ASE 16.x | Compatible (recomendado, probado) |
| SAP IQ (Sybase IQ) | No compatible (motor y protocolo diferentes) |
| SAP SQL Anywhere | No compatible (motor diferente) |
Nota: Crestone se conecta a SAP ASE mediante
pyodbccon el controlador de código abierto FreeTDS (versión de protocolo TDS 5.0). No se requiere ningún controlador ODBC con licencia de SAP en el servidor de Crestone.
Información Requerida:
| Campo | Descripción |
|---|---|
| Server / Host | Dirección IP o nombre de host del servidor ASE (ej. 192.168.1.100 o ase.example.com) |
| Port | Puerto TCP donde escucha ASE. El valor predeterminado es 5000. |
| Database | Nombre de la base de datos ASE a la que conectarse (ej. my_database) |
| Username | Usuario con privilegios de lectura sobre las tablas que desea extraer |
| Password | Contraseña del usuario especificado |
Paso de Pre-Verificación
Antes de configurar la conexión en Crestone, recomendamos verificar sus credenciales utilizando un cliente SQL compatible como DBeaver, DataGrip o la CLI isql (parte de FreeTDS). Esto garantiza que el servidor sea accesible y que las credenciales sean correctas antes de continuar.
Consejo para DBeaver: Para conectarse a SAP ASE desde DBeaver, seleccione Sybase ASE como el tipo de controlador. Asegúrese de que la versión de TDS esté configurada en
5.0en las propiedades avanzadas del controlador. DBeaver utiliza un controlador JDBC para Sybase (jTDS o el controlador JDBC de Sybase), mientras que Crestone utiliza FreeTDS/ODBC; ambos usan TDS 5.0 y deben comportarse de manera consistente para la validación de credenciales.
Pasos de Configuración
Siga estos pasos para crear una nueva conexión de origen SAP ASE en Crestone:
- Navegue a Connections en la barra de navegación superior.
- Seleccione la pestaña Source.
- Haga clic en el botón + para crear una nueva conexión.
- Complete el campo Connection Name con un nombre descriptivo (ej.
Mi Fuente Sybase). - En el menú desplegable Source Type, seleccione SAP ASE (Sybase).
- Complete el formulario de credenciales con los campos requeridos:
- Server — host o dirección IP de su instancia ASE
- Port — predeterminado
5000 - Database — nombre de la base de datos ASE a la que conectarse
- Username — usuario de la base de datos
- Password — contraseña del usuario
- Haga clic en Test Connection para validar que Crestone pueda comunicarse exitosamente con la base de datos.
- Una vez superada la prueba, haga clic en Create Source para guardar la conexión.
Edición de una Conexión Existente
Para actualizar las credenciales de una conexión de origen SAP ASE existente:
- Navegue a Connections y localice su origen SAP ASE.
- Haga clic en Edit.
- Modifique los campos deseados en el formulario de credenciales.
- Haga clic en Test Connection para verificar las nuevas credenciales.
- Haga clic en Confirm para guardar los cambios.
Uso de SAP ASE como Fuente en un Nodo de Extracción
Una vez creada la conexión, puede utilizarla como origen de un Extraction Node. Hay dos modos de extracción disponibles:
Modo Visual
Configure la extracción sin necesidad de escribir código SQL:
- Abra o cree un Extraction Node y vaya a la pestaña Source.
- En Select Source, elija su conexión SAP ASE.
- En Select Schema, elija el esquema (usuario de la base de datos) que posee las tablas que desea extraer.
- En Select Table, elija la tabla a extraer.
- En Select Fields, seleccione las columnas específicas que necesita, o déjelo vacío para extraer todas las columnas.
- Opcionalmente, agregue una condición WHERE para filtrar filas.
- El panel de Preview muestra una muestra de los datos que se extraerán.
Modo SQL Script
Escriba una consulta SQL personalizada para extracciones más complejas:
- Seleccione la fuente y el esquema como en el Modo Visual.
- Cambie al modo SQL Script.
- Escriba su consulta SQL utilizando la sintaxis estándar T-SQL de Sybase ASE.
- Haga clic en Run Preview para validar y previsualizar los resultados de la consulta.
Nota: El modo SQL Script admite cualquier sentencia
SELECTválida de ASE, incluyendoJOIN, subconsultas, funciones de agregación yGROUP BY. Evite sentencias DDL (CREATE,DROP,ALTER) en este campo.
Nota sobre esquemas: En SAP ASE, los esquemas corresponden a los usuarios de la base de datos. Un esquema denominado
dboes el esquema predeterminado propiedad del DBA. Los esquemas creados por usuarios (ej.crestone) corresponden a usuarios de bases de datos con el mismo nombre. Crestone lista todos los usuarios de la base de datos conectada que están disponibles como esquemas.
Manejo de Tipos de Datos
Cuando Crestone lee datos de SAP ASE, los tipos de columna se devuelven a través del cursor ODBC y se asignan internamente a tipos Polars. Dado que pyodbc/FreeTDS devuelve tipos nativos de Python, la asignación se determina en tiempo de ejecución según los valores:
| Tipo ASE | Tipo Python devuelto | Tipo Polars |
|---|---|---|
TINYINT, SMALLINT | int | Int64 |
INT, INTEGER | int | Int64 |
BIGINT | int | Int64 |
REAL, FLOAT | float | Float64 |
DOUBLE PRECISION | float | Float64 |
NUMERIC, DECIMAL | Decimal (convertido a str) | String |
CHAR, VARCHAR, TEXT | str | String |
DATETIME, SMALLDATETIME | datetime (convertido a str) | String |
DATE | date (convertido a str) | String |
BIT | bool | Boolean |
| Otro / desconocido | convertido a str | String |
Nota: Los tipos de Python no estándar (ej.
Decimal,datetime) se convierten automáticamente a string para garantizar la compatibilidad entre todos los conectores de destino. Si necesita preservar la precisión numérica exacta, considere realizar un cast en su consulta de SQL Script.
Problemas Frecuentes
| Problema | Causa Posible | Solución |
|---|---|---|
| Tiempo de espera de conexión agotado (timeout) | Firewall bloqueando el puerto 5000 | Permita conexiones entrantes en el puerto 5000 desde la IP del servidor de Crestone |
Adaptive Server is unavailable or does not exist | Host, puerto o nombre de servidor incorrecto | Verifique el host y puerto con su DBA; asegúrese de que el servidor ASE esté en ejecución |
| Fallo de autenticación | Nombre de usuario o contraseña incorrectos | Verifique las credenciales utilizando un cliente SQL (DBeaver, isql) |
| No se listan esquemas | El usuario no tiene visibilidad de usuarios en sysusers | Verifique que el usuario tenga al menos SELECT en las tablas del sistema; consulte con su DBA |
| No se listan tablas para un esquema | El usuario del esquema no posee tablas en esa base de datos | Seleccione un esquema diferente o utilice el modo SQL Script para consultar entre esquemas |
Can't open lib 'FreeTDS' | Controlador FreeTDS no instalado | Este es un problema del lado del servidor; contacte a su administrador de Crestone |
| La vista previa no muestra datos | La tabla está vacía o la condición WHERE filtra todas las filas | Verifique la existencia de datos utilizando un cliente SQL |
| Nombres de columnas con caracteres especiales | Las columnas de origen contienen /, espacios o caracteres no ASCII | Crestone sanitiza automáticamente los nombres de columnas; los nombres originales pueden diferir en el destino |
Permisos Requeridos
Para acceso de solo lectura (extracción de origen), el usuario de base de datos requiere como mínimo los siguientes privilegios:
-- Conceder SELECT en todas las tablas propiedad de un usuario/esquema específico
GRANT SELECT ON dbo.my_table TO crestone_user
GO
-- O conceder SELECT en todas las tablas de la base de datos (requiere rol DBA o resource)
GRANT SELECT ON ALL TO crestone_user
GONota: En SAP ASE, el permiso
SELECTse otorga por tabla o por usuario. No existe un equivalente aGRANT SELECT ON *.* TO usercomo en MySQL. Solicite a su DBA que otorgueSELECTsobre las tablas específicas que necesita extraer o asigne el usuario a un grupo con los permisos correspondientes.
Nota: Para listar esquemas (usuarios) y tablas en la interfaz de descubrimiento de esquemas, Crestone consulta las tablas del sistema
sysusersysysobjects. Estas tablas son legibles de manera predeterminada por cualquier usuario autenticado en ASE.
Contenidos de esta sección
SAP HANA
Connect to SAP HANA source databases.
SAP ABAP
Connect to SAP ABAP application servers via RFC.
SAP BW
Connect to SAP Business Warehouse info-providers and queries.
SAP OData
Connect to SAP OData REST web services.
ODATA SAP ERP
Connect to standard SAP ERP systems using OData.
ODATA SAP Business One
Connect to SAP Business One Service Layer.
ODATA SAP ByDesign
Connect to SAP Business ByDesign cloud ERP.
SAP S/4HANA Cloud Public Edition
Connect to SAP S/4HANA Cloud Public Edition APIs.