iTUI: Travel Universal Interface

iTUI permite usar iBIP para proveer datos a otros sistemas, usualmente sistemas de BackOffice o de Business Intelligence. Toda la experiencia en el análisis de información de viajes se puede integrar a los sistemas de su empresa.

Casos de uso frecuentes:

1) Interfaz GDS y BSP para sistemas de Business Intelligence externos.

Existen muy buenos sistemas de BI en el mercado con mucha capacidad para analizar y distribuir información, pero suele ser muy complejo implementar con éxito estas soluciones por el esfuerzo que implica importar, conectar y entender los datos de la industria de viajes. IBIP puede simplificar mucho esa tarea actuando como interfaz entre los sistemas de reserva y BSP. Se puede aprovechar la experiencia de iBIP para usar esos resultados en sistemas comerciales como Cognos, Microstrategy, Oracle BO, QView o cualquier otro sistema comercial.  IBIP deja los datos en una base de datos relacional como PostgreSQL, Microsoft SQLServer, Oracle, Sybase, MySQL, y en forma simple de consultar para que los BI la usen como datawarehouse.   Un producto limitado pero muy usado como BI es Microsoft Excel, con el cual es posible crear cubos dinámicos, gráficos y soliciones conectadas a bases de datos.

2) Interfaz GDS y BSP para BackOffice o sistemas de gestión administrativa.

Las empresas de viajes o los proveedores de sistemas para empresas de viajes suelen requerir interfaces con los GDS (Amadeus, Sabre o Travelport), muchas veces porque carecen de la posibilidad de leer uno o varios globalizadores, otras porque necesitan conciliar internamente la información de BSPLink y otras porque quieren mejorar las prestaciones o alcances de sus interfaces actuales. Para esto pueden contar con iTUI y usar sus servicios de exportación especiales que implementan soluciones para esta clase de escenarios. Es normal que en estos casos se considere la producción de un servicio a medida o que la misma empresa desarrolle la forma en que se interactúa con su sistema.

3) Uso interno con iBIP para mejorar perfomance y usarlo sobre bases de datos.

La forma mas usual para conectarse  a los GDS es a través de sus archivos de interfaz, pero en empresas muy grandes hay contextos en donde esos archivos pueden ser muchos o pueden no estar disponibles para todos los usuarios o requieren ser protegidos de una manera segura y controlada. En estos casos se puede configurar iTUI para que almacene los datos en una base y luego iBIP se conecte a esa base de datos para los análisis y reportes. Esta configuración aumenta considerablemente la perfomance y simplifica la distribución de la información.

Configuración de iTUI

 

Iniciar iTUI

iTUI se puede usar desde el menú de inicio, o también se puede hacer doble-clic al archivo iTUI.igds que se encuentra en la carpeta de instalación de iBIP.

 
 

Conexión a bases de datos

Antes de usar iTUI se debe contar con una base de datos para alojar los datos. Se puede crear una base de datos nueva o usar la de otro sistema al cual se le quieren enviar los datos de la interfaz (boletos, segmentos, hoteles, etc.)

También es conveniente crear una conexión ODBC de 32 bits para simplificar la cadena de conexión al servidor.


Para ingresar a la configuración debe entrar el menú Tools/Settings

 
 

Archivos de la interfaz

En la configuración debe indicar las carpetas en donde se recibirán los archivos de las interfaces de los globalizadores.

Las carpetas de procesados, pretiketing, rechazados y BSP alojarán los archivos que ya fueron procesados al pasar por la interfaz iTUI.

 
 

Servicios de exporación

Los  "DB exporters" son servicios que definen cómo y a dónde se exportarán los datos leíos. En el ejemplo de la imagen se ven dos servicios, el primero es para alimentar las tablas del datawarehouse de un BI, y el segundo servicio sirve para guardar los archivos de iBIP (Travel Files) en la base y poder conectar iBIP a esa base para trabajar desde una conexión cliente-servidor.

 
 

Crear de objetos en la base de datos

Una vez que se hizo la conexión, se pueden generar las tablas, vistas o stored procedures en la base de datos que son necesarios para alojar los datos que registrará iTUI. Esta operación borrará la información previa de iTUI por lo que se le solicitará una confirmación y además se le pedirá una clave, puede usar:

CF755213-F4EA-4BEB-9182-F2B2EA75141F


 
 

Guardar configuración

Recuerde guardar la configuración de iTUI, esta quedará almacenada con una extensión ".igds". Posteriormente podrá hacer doble clic en ese archivo para iniciar el serivcio de iTUI.

 

Exportación a tablas para sitemas de BI/BO

Para exportar a tablas planas se puede usar "Send To Export Tables" y funciona generando tablas y posteriormente cargando registros en ellas. A continuación se muestran las tablas generadas, con la estructura de datos que contienen, las tablas son las siguientes:

IFM_PNRTravelFile

IFM_PNRTicket

IFM_PNRAirSegment

IFM_PNRAirRoute

IFM_PNRHotelService

IFM_PNRCarService

IFM_BSPItem


Tabla: IFM_PNRTravelFile

Contiene las cabeceras y la información principal de cada PNR, al estructura de datos es la siguiente:


[IFM_PNRTravelFile] (
    [guid]                   VARCHAR (64)    NULL,
    [fileSourcefileName]     VARCHAR (1024)  NULL,
    [fileSourceparsingError] TEXT            NULL,
    [pnrLocator]             VARCHAR (16)    NULL,
    [airlineRecordLocator]   VARCHAR (16)    NULL,
    [optionNumber]           VARCHAR (8)     NULL,
    [year]                   INT             NULL,
    [month]                  VARCHAR (255)   NULL,
    [emittedDate]            DATETIME        NULL,
    [pnrCreationDate]        DATETIME        NULL,
    [departureDate]          DATETIME        NULL,
    [advancedPurchaseDays]   INT             NULL,
    [travelledDays]          INT             NULL,
    [bookingCurrency]        VARCHAR (8)     NULL,
    [bookingFareCurrency]    VARCHAR (8)     NULL,
    [fareTotalAmount]        DECIMAL (15, 2) NULL,
    [localCurrencyValue]     DECIMAL (15, 2) NULL,
    [baseFare]               DECIMAL (15, 2) NULL,
    [itinerary]              VARCHAR (255)   NULL,
    [emittedItinerary]       VARCHAR (255)   NULL,
    [clientname]             VARCHAR (255)   NULL,
    [clientid]               VARCHAR (255)   NULL,
    [clientInformation]      VARCHAR (255)   NULL,
    [agentname]              VARCHAR (255)   NULL,
    [agentid]                VARCHAR (255)   NULL,
    [gdsName]                VARCHAR (255)   NULL,
    [terminalID]             VARCHAR (255)   NULL,
    [iata]                   VARCHAR (16)    NULL,
    [bookingAgencyname]      VARCHAR (255)   NULL,
    [bookingAgencyid]        VARCHAR (255)   NULL,
    [ticketingAgencyname]    VARCHAR (255)   NULL,
    [ticketingAgencyid]      VARCHAR (255)   NULL,
    [bookingAgentname]       VARCHAR (255)   NULL,
    [bookingAgentid]         VARCHAR (255)   NULL,
    [ticketingAgentname]     VARCHAR (255)   NULL,
    [ticketingAgentid]       VARCHAR (255)   NULL,
    [emittedStatus]          VARCHAR (32)    NULL,
    [costCenter]             VARCHAR (255)   NULL,
    [costCenter2]            VARCHAR (255)   NULL,
    [travelReason]           VARCHAR (255)   NULL,
    [employerNumber]         VARCHAR (255)   NULL,
    [budget]                 VARCHAR (255)   NULL,
    [tourCode]               VARCHAR (255)   NULL,
    [requestedBy]            VARCHAR (255)   NULL,
    [region]                 VARCHAR (255)   NULL,
    [department]             VARCHAR (255)   NULL,
    [lowFare]                DECIMAL (15, 2) NULL,
    [fullFare]               DECIMAL (15, 2) NULL,
    [fareReason]             VARCHAR (255)   NULL,
    [fareTravelType]         VARCHAR (255)   NULL,
    [businessGroup]          VARCHAR (255)   NULL,
    [savingsCode]            VARCHAR (255)   NULL,
    [savingsCode2]           VARCHAR (255)   NULL,
    [freeFieldA]             VARCHAR (255)   NULL,
    [freeFieldB]             VARCHAR (255)   NULL,
    [freeFieldC]             VARCHAR (255)   NULL,
    [freeFieldD]             VARCHAR (255)   NULL,
    [freeFieldE]             VARCHAR (255)   NULL)


Nota: No es necesario crear las tablas en la base de datos, iTUI lo hace automáticamente con el comando "Create database objects"

Tabla: IFM_PNRTicket

Contiene la información de cada boleto aéreo emitido en Amadeus, Sabre o Travelport. Su estructura es:

[IFM_PNRTicket] (

    [guid]                    VARCHAR (64)    NULL,
    [parentGuid]              VARCHAR (64)    NULL,
    [fileSourcefileName]      VARCHAR (1024)  NULL,
    [fileSourceparsingError]  TEXT            NULL,
    [pnrLocator]              VARCHAR (16)    NULL,
    [airlineRecordLocator]    VARCHAR (16)    NULL,
    [classDescription]        VARCHAR (255)   NULL,
    [itemDate]                DATETIME        NULL,
    [pnrCreationDate]         DATETIME        NULL,
    [departureDate]           DATETIME        NULL,
    [advancedPurchaseDays]    INT             NULL,
    [travelledDays]           INT             NULL,
    [bookingCurrency]         VARCHAR (8)     NULL,
    [bookingFareCurrency]     VARCHAR (8)     NULL,
    [fareTotalAmount]         DECIMAL (15, 2) NULL,
    [baseFare]                DECIMAL (15, 2) NULL,
    [localCurrencyValue]      DECIMAL (15, 2) NULL,
    [itinerary]               VARCHAR (255)   NULL,
    [emittedItinerary]        VARCHAR (255)   NULL,
    [clientname]              VARCHAR (255)   NULL,
    [clientid]                VARCHAR (255)   NULL,
    [clientInformation]       VARCHAR (255)   NULL,
    [agentname]               VARCHAR (255)   NULL,
    [agentid]                 VARCHAR (255)   NULL,
    [emittedStatus]           VARCHAR (32)    NULL,
    [gdsName]                 VARCHAR (255)   NULL,
    [terminalID]              VARCHAR (255)   NULL,
    [iata]                    VARCHAR (16)    NULL,
    [bookingAgencyname]       VARCHAR (255)   NULL,
    [bookingAgencyid]         VARCHAR (255)   NULL,
    [ticketingAgencyname]     VARCHAR (255)   NULL,
    [ticketingAgencyid]       VARCHAR (255)   NULL,
    [bookingAgentname]        VARCHAR (255)   NULL,
    [bookingAgentid]          VARCHAR (255)   NULL,
    [ticketingAgentname]      VARCHAR (255)   NULL,
    [ticketingAgentid]        VARCHAR (255)   NULL,
    [costCenter]              VARCHAR (255)   NULL,
    [costCenter2]             VARCHAR (255)   NULL,
    [travelReason]            VARCHAR (255)   NULL,
    [employerNumber]          VARCHAR (255)   NULL,
    [budget]                  VARCHAR (255)   NULL,
    [tourCode]                VARCHAR (255)   NULL,
    [requestedBy]             VARCHAR (255)   NULL,
    [region]                  VARCHAR (255)   NULL,
    [department]              VARCHAR (255)   NULL,
    [lowFare]                 DECIMAL (15, 2) NULL,
    [fullFare]                DECIMAL (15, 2) NULL,
    [fareReason]              VARCHAR (255)   NULL,
    [fareTravelType]          VARCHAR (255)   NULL,
    [businessGroup]           VARCHAR (255)   NULL,
    [savingsCode]             VARCHAR (255)   NULL,
    [savingsCode2]            VARCHAR (255)   NULL,
    [freeFieldA]              VARCHAR (255)   NULL,
    [freeFieldB]              VARCHAR (255)   NULL,
    [freeFieldC]              VARCHAR (255)   NULL,
    [freeFieldD]              VARCHAR (255)   NULL,
    [freeFieldE]              VARCHAR (255)   NULL,
    [ticketNumber]            VARCHAR (255)   NULL,
    [airlineid]               VARCHAR (16)    NULL,
    [airlinedescription]      VARCHAR (255)   NULL,
    [airlineiataNumericCode]  INT             NULL,
    [dateOfIssue]             DATETIME        NULL,
    [monthOfIssue]            VARCHAR (255)   NULL,
    [yearOfIssue]             INT             NULL,
    [fromDate]                DATETIME        NULL,
    [toDate]                  DATETIME        NULL,
    [marketPlace]             VARCHAR (255)   NULL,
    [passenger]               VARCHAR (255)   NULL,
    [ticketedPointMileage]    INT             NULL,
    [voidStatus]              VARCHAR (255)   NULL,
    [exchangeStatus]          VARCHAR (255)   NULL,
    [generalStatus]           VARCHAR (255)   NULL,
    [originalTicketNumber]    VARCHAR (255)   NULL,
    [fareBasis]               VARCHAR (255)   NULL,
    [serviceClasses]          VARCHAR (255)   NULL,
    [fareCommissionIndicator] VARCHAR (255)   NULL,
    [price]                   DECIMAL (15, 2) NULL,
    [fareCommission]          DECIMAL (15, 2) NULL,
    [fareCommissionPercent]   DECIMAL (15, 2) NULL,
    [priceVAT]                DECIMAL (15, 2) NULL,
    [priceVATPercent]         DECIMAL (15, 2) NULL,
    [otherTax]                DECIMAL (15, 2) NULL,
    [cost]                    DECIMAL (15, 2) NULL,
    [costVAT]                 DECIMAL (15, 2) NULL,
    [totalPrice]              DECIMAL (15, 2) NULL,
    [totalCost]               DECIMAL (15, 2) NULL,
    [saving]                  DECIMAL (15, 2) NULL,
    [qValue]                  DECIMAL (15, 2) NULL,
    [ticketBaseFare]          DECIMAL (15, 2) NULL)

Tabla: IFM_PNRAirSegment

Esta tabla contiene todos los segmentos hoteles emitidos por los globalizadores:


[IFM_PNRAirSegment] (
    [guid]                                    VARCHAR (64)  NULL,
    [parentGuid]                              VARCHAR (64)  NULL,
    [pnrLocator]                              VARCHAR (16)  NULL,
    [airlineRecordLocator]                    VARCHAR (16)  NULL,
    [clientname]                              VARCHAR (255) NULL,
    [clientid]                                VARCHAR (255) NULL,
    [passenger]                               VARCHAR (255) NULL,
    [emittedDate]                             DATETIME      NULL,
    [dateOfIssue]                             DATETIME      NULL,
    [monthOfIssue]                            VARCHAR (255) NULL,
    [yearOfIssue]                             INT           NULL,
    [agentname]                               VARCHAR (255) NULL,
    [agentid]                                 VARCHAR (255) NULL,
    [gdsName]                                 VARCHAR (255) NULL,
    [terminalID]                              VARCHAR (255) NULL,
    [iata]                                    VARCHAR (16)  NULL,
    [bookingAgencyname]                       VARCHAR (255) NULL,
    [bookingAgencyid]                         VARCHAR (255) NULL,
    [ticketingAgencyname]                     VARCHAR (255) NULL,
    [ticketingAgencyid]                       VARCHAR (255) NULL,
    [bookingAgentname]                        VARCHAR (255) NULL,
    [bookingAgentid]                          VARCHAR (255) NULL,
    [ticketingAgentname]                      VARCHAR (255) NULL,
    [ticketingAgentid]                        VARCHAR (255) NULL,
    [itinerary]                               VARCHAR (255) NULL,
    [stopOver]                                VARCHAR (255) NULL,
    [ticketNumber]                            VARCHAR (255) NULL,
    [emittedStatus]                           VARCHAR (255) NULL,
    [voidStatus]                              VARCHAR (255) NULL,
    [airlineid]                               VARCHAR (16)  NULL,
    [airlinedescription]                      VARCHAR (255) NULL,
    [airlineiataNumericCode]                  INT           NULL,
    [carrierid]                               VARCHAR (16)  NULL,
    [carrierdescription]                      VARCHAR (255) NULL,
    [carrieriataNumericCode]                  INT           NULL,
    [fareBasis]                               VARCHAR (255) NULL,
    [marketPlace]                             VARCHAR (255) NULL,
    [chekInTerminal]                          VARCHAR (255) NULL,
    [checkInTime]                             VARCHAR (255) NULL,
    [departureAirportgeoContinentid]          VARCHAR (16)  NULL,
    [departureAirportgeoContinentnumberID]    VARCHAR (16)  NULL,
    [departureAirportgeoContinentname]        VARCHAR (255) NULL,
    [departureAirportgeoSubContinentid]       VARCHAR (16)  NULL,
    [departureAirportgeoSubContinentnumberID] VARCHAR (16)  NULL,
    [departureAirportgeoSubContinentname]     VARCHAR (255) NULL,
    [departureAirportgeoCountryid]            VARCHAR (16)  NULL,
    [departureAirportgeoCountrynumberID]      VARCHAR (16)  NULL,
    [departureAirportgeoCountryname]          VARCHAR (255) NULL,
    [departureAirportgeoCityid]               VARCHAR (16)  NULL,
    [departureAirportgeoCitynumberID]         VARCHAR (16)  NULL,
    [departureAirportgeoCityname]             VARCHAR (255) NULL,
    [arrivalAirportgeoContinentid]            VARCHAR (16)  NULL,
    [arrivalAirportgeoContinentnumberID]      VARCHAR (16)  NULL,
    [arrivalAirportgeoContinentname]          VARCHAR (255) NULL,
    [arrivalAirportgeoSubContinentid]         VARCHAR (16)  NULL,
    [arrivalAirportgeoSubContinentnumberID]   VARCHAR (16)  NULL,
    [arrivalAirportgeoSubContinentname]       VARCHAR (255) NULL,
    [arrivalAirportgeoCountryid]              VARCHAR (16)  NULL,
    [arrivalAirportgeoCountrynumberID]        VARCHAR (16)  NULL,
    [arrivalAirportgeoCountryname]            VARCHAR (255) NULL,
    [arrivalAirportgeoCityid]                 VARCHAR (16)  NULL,
    [arrivalAirportgeoCitynumberID]           VARCHAR (16)  NULL,
    [arrivalAirportgeoCityname]               VARCHAR (255) NULL,
    [advancedPurchaseDays]                    INT           NULL,
    [travelledDays]                           INT           NULL,
    [departureDate]                           DATETIME      NULL,
    [departureTime]                           VARCHAR (4)   NULL,
    [arrivalTime]                             VARCHAR (4)   NULL,
    [flightTime]                              VARCHAR (4)   NULL,
    [flightMinutes]                           INT           NULL,
    [ticketedPointMileage]                    INT           NULL,
    [flightNumber]                            VARCHAR (255) NULL,
    [serviceClassid]                          VARCHAR (16)  NULL,
    [serviceClassdescription]                 VARCHAR (255) NULL,
    [arrivalDate]                             DATETIME      NULL,
    [equipmentid]                             VARCHAR (16)  NULL,
    [equipmentdescription]                    VARCHAR (255) NULL,
    [costCenter]                              VARCHAR (255) NULL,
    [costCenter2]                             VARCHAR (255) NULL,
    [travelReason]                            VARCHAR (255) NULL,
    [employerNumber]                          VARCHAR (255) NULL,
    [budget]                                  VARCHAR (255) NULL,
    [tourCode]                                VARCHAR (255) NULL,
    [requestedBy]                             VARCHAR (255) NULL,
    [region]                                  VARCHAR (255) NULL,
    [department]                              VARCHAR (255) NULL,
    [fareReason]                              VARCHAR (255) NULL,
    [fareTravelType]                          VARCHAR (255) NULL,
    [businessGroup]                           VARCHAR (255) NULL,
    [savingsCode]                             VARCHAR (255) NULL,
    [savingsCode2]                            VARCHAR (255) NULL,
    [freeFieldA]                              VARCHAR (255) NULL,
    [freeFieldB]                              VARCHAR (255) NULL,
    [freeFieldC]                              VARCHAR (255) NULL,
    [freeFieldD]                              VARCHAR (255) NULL,
    [freeFieldE]                              VARCHAR (255) NULL)

Tabla: IFM_PNRAirRoute

Esta tabla guarda la rutas tarifarias de los boletos emitidos en globalizadores:


[IFM_PNRAirRoute] (
    [guid]                                    VARCHAR (64)    NULL,
    [parentGuid]                              VARCHAR (64)    NULL,
    [ticketNumber]                            VARCHAR (255)   NULL,
    [pnrLocator]                              VARCHAR (16)    NULL,
    [airlineRecordLocator]                    VARCHAR (16)    NULL,
    [clientname]                              VARCHAR (255)   NULL,
    [clientid]                                VARCHAR (255)   NULL,
    [passenger]                               VARCHAR (255)   NULL,
    [date]                                    DATETIME        NULL,
    [dateOfIssue]                             DATETIME        NULL,
    [monthOfIssue]                            VARCHAR (255)   NULL,
    [yearOfIssue]                             INT             NULL,
    [agentname]                               VARCHAR (255)   NULL,
    [agentid]                                 VARCHAR (255)   NULL,
    [gdsName]                                 VARCHAR (255)   NULL,
    [terminalID]                              VARCHAR (255)   NULL,
    [iata]                                    VARCHAR (255)   NULL,
    [bookingAgencyname]                       VARCHAR (255)   NULL,
    [bookingAgencyid]                         VARCHAR (255)   NULL,
    [ticketingAgencyname]                     VARCHAR (255)   NULL,
    [ticketingAgencyid]                       VARCHAR (255)   NULL,
    [bookingAgentname]                        VARCHAR (255)   NULL,
    [bookingAgentid]                          VARCHAR (255)   NULL,
    [ticketingAgentname]                      VARCHAR (255)   NULL,
    [ticketingAgentid]                        VARCHAR (255)   NULL,
    [voidStatus]                              VARCHAR (255)   NULL,
    [airlineid]                               VARCHAR (16)    NULL,
    [airlinedescription]                      VARCHAR (255)   NULL,
    [airlineiataNumericCode]                  INT             NULL,
    [marketPlace]                             VARCHAR (255)   NULL,
    [fareBasis]                               VARCHAR (255)   NULL,
    [currency]                                VARCHAR (255)   NULL,
    [itinerary]                               VARCHAR (255)   NULL,
    [fullItinerary]                           VARCHAR (255)   NULL,
    [departureAirportid]                      VARCHAR (16)    NULL,
    [departureAirportdescription]             VARCHAR (255)   NULL,
    [arrivalAirportid]                        VARCHAR (16)    NULL,
    [arrivalAirportdescription]               VARCHAR (255)   NULL,
    [departureDate]                           DATETIME        NULL,
    [departureTime]                           VARCHAR (4)     NULL,
    [arrivalDate]                             DATETIME        NULL,
    [arrivalTime]                             VARCHAR (4)     NULL,
    [departureAirportgeoContinentid]          VARCHAR (16)    NULL,
    [departureAirportgeoContinentnumberID]    VARCHAR (16)    NULL,
    [departureAirportgeoContinentname]        VARCHAR (255)   NULL,
    [departureAirportgeoSubContinentid]       VARCHAR (16)    NULL,
    [departureAirportgeoSubContinentnumberID] VARCHAR (16)    NULL,
    [departureAirportgeoSubContinentname]     VARCHAR (255)   NULL,
    [departureAirportgeoCountryid]            VARCHAR (16)    NULL,
    [departureAirportgeoCountrynumberID]      VARCHAR (16)    NULL,
    [departureAirportgeoCountryname]          VARCHAR (255)   NULL,
    [departureAirportgeoCityid]               VARCHAR (16)    NULL,
    [departureAirportgeoCitynumberID]         VARCHAR (16)    NULL,
    [departureAirportgeoCityname]             VARCHAR (255)   NULL,
    [arrivalAirportgeoContinentid]            VARCHAR (16)    NULL,
    [arrivalAirportgeoContinentnumberID]      VARCHAR (16)    NULL,
    [arrivalAirportgeoContinentname]          VARCHAR (255)   NULL,
    [arrivalAirportgeoSubContinentid]         VARCHAR (16)    NULL,
    [arrivalAirportgeoSubContinentnumberID]   VARCHAR (16)    NULL,
    [arrivalAirportgeoSubContinentname]       VARCHAR (255)   NULL,
    [arrivalAirportgeoCountryid]              VARCHAR (16)    NULL,
    [arrivalAirportgeoCountrynumberID]        VARCHAR (16)    NULL,
    [arrivalAirportgeoCountryname]            VARCHAR (255)   NULL,
    [arrivalAirportgeoCityid]                 VARCHAR (16)    NULL,
    [arrivalAirportgeoCitynumberID]           VARCHAR (16)    NULL,
    [arrivalAirportgeoCityname]               VARCHAR (255)   NULL,
    [carriersIDs]                             VARCHAR (255)   NULL,
    [fare]                                    DECIMAL (15, 2) NULL,
    [ticketedPointMileage]                    INT             NULL,
    [costCenter]                              VARCHAR (255)   NULL,
    [costCenter2]                             VARCHAR (255)   NULL,
    [travelReason]                            VARCHAR (255)   NULL,
    [employerNumber]                          VARCHAR (255)   NULL,
    [budget]                                  VARCHAR (255)   NULL,
    [tourCode]                                VARCHAR (255)   NULL,
    [requestedBy]                             VARCHAR (255)   NULL,
    [region]                                  VARCHAR (255)   NULL,
    [department]                              VARCHAR (255)   NULL,
    [fareReason]                              VARCHAR (255)   NULL,
    [fareTravelType]                          VARCHAR (255)   NULL,
    [businessGroup]                           VARCHAR (255)   NULL,
    [savingsCode]                             VARCHAR (255)   NULL,
    [savingsCode2]                            VARCHAR (255)   NULL,
    [freeFieldA]                              VARCHAR (255)   NULL,
    [freeFieldB]                              VARCHAR (255)   NULL,
    [freeFieldC]                              VARCHAR (255)   NULL,
    [freeFieldD]                              VARCHAR (255)   NULL,
    [freeFieldE]                              VARCHAR (255)   NULL)

Tabla: IFM_PNRHotelService

Hoteles reservados en los globalizadores (solo para Amadeus):


[IFM_PNRHotelService] (
    [guid]                    VARCHAR (64)    NULL,
    [parentGuid]              VARCHAR (64)    NULL,
    [fileSourcefileName]      VARCHAR (1024)  NULL,
    [fileSourceparsingError]  TEXT            NULL,
    [pnrLocator]              VARCHAR (16)    NULL,
    [airlineRecordLocator]    VARCHAR (16)    NULL,
    [classDescription]        VARCHAR (255)   NULL,
    [itemDate]                DATETIME        NULL,
    [pnrCreationDate]         DATETIME        NULL,
    [departureDate]           DATETIME        NULL,
    [advancedPurchaseDays]    INT             NULL,
    [travelledDays]           INT             NULL,
    [bookingCurrency]         VARCHAR (8)     NULL,
    [bookingFareCurrency]     VARCHAR (8)     NULL,
    [fareTotalAmount]         DECIMAL (15, 2) NULL,
    [baseFare]                DECIMAL (15, 2) NULL,
    [localCurrencyValue]      DECIMAL (15, 2) NULL,
    [itinerary]               VARCHAR (255)   NULL,
    [emittedItinerary]        VARCHAR (255)   NULL,
    [clientname]              VARCHAR (255)   NULL,
    [clientid]                VARCHAR (255)   NULL,
    [clientInformation]       VARCHAR (255)   NULL,
    [agentname]               VARCHAR (255)   NULL,
    [agentid]                 VARCHAR (255)   NULL,
    [emittedStatus]           VARCHAR (32)    NULL,
    [gdsName]                 VARCHAR (255)   NULL,
    [terminalID]              VARCHAR (255)   NULL,
    [iata]                    VARCHAR (16)    NULL,
    [bookingAgencyname]       VARCHAR (255)   NULL,
    [bookingAgencyid]         VARCHAR (255)   NULL,
    [ticketingAgencyname]     VARCHAR (255)   NULL,
    [ticketingAgencyid]       VARCHAR (255)   NULL,
    [bookingAgentname]        VARCHAR (255)   NULL,
    [bookingAgentid]          VARCHAR (255)   NULL,
    [ticketingAgentname]      VARCHAR (255)   NULL,
    [ticketingAgentid]        VARCHAR (255)   NULL,
    [costCenter]              VARCHAR (255)   NULL,
    [costCenter2]             VARCHAR (255)   NULL,
    [travelReason]            VARCHAR (255)   NULL,
    [employerNumber]          VARCHAR (255)   NULL,
    [budget]                  VARCHAR (255)   NULL,
    [tourCode]                VARCHAR (255)   NULL,
    [requestedBy]             VARCHAR (255)   NULL,
    [region]                  VARCHAR (255)   NULL,
    [department]              VARCHAR (255)   NULL,
    [lowFare]                 DECIMAL (15, 2) NULL,
    [fullFare]                DECIMAL (15, 2) NULL,
    [fareReason]              VARCHAR (255)   NULL,
    [fareTravelType]          VARCHAR (255)   NULL,
    [businessGroup]           VARCHAR (255)   NULL,
    [savingsCode]             VARCHAR (255)   NULL,
    [savingsCode2]            VARCHAR (255)   NULL,
    [freeFieldA]              VARCHAR (255)   NULL,
    [freeFieldB]              VARCHAR (255)   NULL,
    [freeFieldC]              VARCHAR (255)   NULL,
    [freeFieldD]              VARCHAR (255)   NULL,
    [freeFieldE]              VARCHAR (255)   NULL,
    [supplierCode]            VARCHAR (32)    NULL,
    [status]                  VARCHAR (32)    NULL,
    [numberOfRooms]           INT             NULL,
    [numberOfNights]          INT             NULL,
    [fromDate]                DATETIME        NULL,
    [toDate]                  DATETIME        NULL,
    [price]                   DECIMAL (15, 2) NULL,
    [guaranteeMethod]         VARCHAR (255)   NULL,
    [passengerName]           VARCHAR (255)   NULL,
    [hotelName]               VARCHAR (255)   NULL,
    [hotelCity]               VARCHAR (255)   NULL,
    [hotelCountry]            VARCHAR (255)   NULL,
    [hotelZipCode]            VARCHAR (255)   NULL,
    [hotelAddress1]           VARCHAR (255)   NULL,
    [hotelAddress2]           VARCHAR (255)   NULL,
    [hotelPhone]              VARCHAR (255)   NULL,
    [totalRateCurrencyID]     VARCHAR (3)     NULL,
    [totalRateValue]          DECIMAL (15, 2) NULL,
    [roomRateCurrencyID]      VARCHAR (3)     NULL,
    [roomRate]                DECIMAL (15, 2) NULL,
    [roomLocalRateCurrencyID] VARCHAR (3)     NULL,
    [roomLocalRate]           DECIMAL (15, 2) NULL,
    [taxDescription]          VARCHAR (255)   NULL,
    [sipRoomType]             VARCHAR (255)   NULL,
    [rateTypeBookingCode]     VARCHAR (255)   NULL,
    [confirmationNumber]      VARCHAR (255)   NULL,
    [observations]            TEXT            NULL)

Tabla: IFM_PNRCarService

Autos reservados en los globalizadores (Amadeus):


[IFM_PNRCarService] (
    [guid]                      VARCHAR (64)    NULL,
    [parentGuid]                VARCHAR (64)    NULL,
    [fileSourcefileName]        VARCHAR (1024)  NULL,
    [fileSourceparsingError]    TEXT            NULL,
    [pnrLocator]                VARCHAR (16)    NULL,
    [airlineRecordLocator]      VARCHAR (16)    NULL,
    [classDescription]          VARCHAR (255)   NULL,
    [itemDate]                  DATETIME        NULL,
    [pnrCreationDate]           DATETIME        NULL,
    [departureDate]             DATETIME        NULL,
    [advancedPurchaseDays]      INT             NULL,
    [travelledDays]             INT             NULL,
    [bookingCurrency]           VARCHAR (8)     NULL,
    [bookingFareCurrency]       VARCHAR (8)     NULL,
    [fareTotalAmount]           DECIMAL (15, 2) NULL,
    [baseFare]                  DECIMAL (15, 2) NULL,
    [localCurrencyValue]        DECIMAL (15, 2) NULL,
    [itinerary]                 VARCHAR (255)   NULL,
    [emittedItinerary]          VARCHAR (255)   NULL,
    [clientname]                VARCHAR (255)   NULL,
    [clientid]                  VARCHAR (255)   NULL,
    [clientInformation]         VARCHAR (255)   NULL,
    [agentname]                 VARCHAR (255)   NULL,
    [agentid]                   VARCHAR (255)   NULL,
    [emittedStatus]             VARCHAR (32)    NULL,
    [gdsName]                   VARCHAR (255)   NULL,
    [terminalID]                VARCHAR (255)   NULL,
    [iata]                      VARCHAR (16)    NULL,
    [bookingAgencyname]         VARCHAR (255)   NULL,
    [bookingAgencyid]           VARCHAR (255)   NULL,
    [ticketingAgencyname]       VARCHAR (255)   NULL,
    [ticketingAgencyid]         VARCHAR (255)   NULL,
    [bookingAgentname]          VARCHAR (255)   NULL,
    [bookingAgentid]            VARCHAR (255)   NULL,
    [ticketingAgentname]        VARCHAR (255)   NULL,
    [ticketingAgentid]          VARCHAR (255)   NULL,
    [costCenter]                VARCHAR (255)   NULL,
    [costCenter2]               VARCHAR (255)   NULL,
    [travelReason]              VARCHAR (255)   NULL,
    [employerNumber]            VARCHAR (255)   NULL,
    [budget]                    VARCHAR (255)   NULL,
    [tourCode]                  VARCHAR (255)   NULL,
    [requestedBy]               VARCHAR (255)   NULL,
    [region]                    VARCHAR (255)   NULL,
    [department]                VARCHAR (255)   NULL,
    [lowFare]                   DECIMAL (15, 2) NULL,
    [fullFare]                  DECIMAL (15, 2) NULL,
    [fareReason]                VARCHAR (255)   NULL,
    [fareTravelType]            VARCHAR (255)   NULL,
    [businessGroup]             VARCHAR (255)   NULL,
    [savingsCode]               VARCHAR (255)   NULL,
    [savingsCode2]              VARCHAR (255)   NULL,
    [freeFieldA]                VARCHAR (255)   NULL,
    [freeFieldB]                VARCHAR (255)   NULL,
    [freeFieldC]                VARCHAR (255)   NULL,
    [freeFieldD]                VARCHAR (255)   NULL,
    [freeFieldE]                VARCHAR (255)   NULL,
    [passengerName]             VARCHAR (255)   NULL,
    [supplierCode]              VARCHAR (32)    NULL,
    [status]                    VARCHAR (32)    NULL,
    [numberOfCars]              INT             NULL,
    [fromDate]                  DATETIME        NULL,
    [toDate]                    DATETIME        NULL,
    [numberOfDays]              INT             NULL,
    [reservationName]           VARCHAR (255)   NULL,
    [carClassID]                VARCHAR (255)   NULL,
    [carClassDescription]       VARCHAR (255)   NULL,
    [confirmationNumber]        VARCHAR (255)   NULL,
    [baseRateInformation]       VARCHAR (255)   NULL,
    [rateGuaranteedInformation] VARCHAR (255)   NULL)

Tabla: IFM_BSPItem

Documentos de BSP, incluye boletos, revisados, ADMs, ACMs y todo lo tipos de registros que vienen en las facturas de BSP:


[IFM_BSPItem] (
    [itemType]               TEXT            NULL,
    [reportType]             TEXT            NULL,
    [sectionType]            TEXT            NULL,
    [typeDescription]        TEXT            NULL,
    [airlineid]              VARCHAR (16)    NULL,
    [airlinedescription]     VARCHAR (255)   NULL,
    [airlineiataNumericCode] INT             NULL,
    [docNumber]              TEXT            NULL,
    [itemDate]               DATETIME        NULL,
    [paymentForm]            TEXT            NULL,
    [creditCardCompanyID]    TEXT            NULL,
    [creditCardNumber]       TEXT            NULL,
    [agencyName]             TEXT            NULL,
    [iataID]                 TEXT            NULL,
    [period]                 TEXT            NULL,
    [year]                   TEXT            NULL,
    [month]                  TEXT            NULL,
    [exchangedTicketNumber]  TEXT            NULL,
    [referencedTicketNumber] TEXT            NULL,
    [itCode]                 TEXT            NULL,
    [currencyID]             TEXT            NULL,
    [fare]                   DECIMAL (15, 2) NULL,
    [fareCash]               DECIMAL (15, 2) NULL,
    [fareCC]                 DECIMAL (15, 2) NULL,
    [fareTaxes]              DECIMAL (15, 2) NULL,
    [commissionPercent]      DECIMAL (15, 2) NULL,
    [commission]             DECIMAL (15, 2) NULL,
    [cancelFee]              DECIMAL (15, 2) NULL,
    [commissionVAT]          DECIMAL (15, 2) NULL,
    [netToBePaid]            DECIMAL (15, 2) NULL,
    [price]                  DECIMAL (15, 2) NULL,
    [cost]                   DECIMAL (15, 2) NULL)

Vistas traducidas

En las bases de datos SQLServer se encontrarán también vistas (VIEWS) similares a las tablas descriptas pero con una traducción y denominación mas adecuadas de sus campos. Estas vistas sirven para que al conectar los BI (o Excel) los nombres aparezcan mas cercanos a lo que espera encontrar un usuario

iBIP usado desde datos generados por iTUI

Como se explicaba anteriormente, iBIP puede usarse desde archivo o desde bases de datos, para esto se utiliza principalmente una tabla:


[IFM_DBStoredGDSFile] (
    [filename]              VARCHAR (255) NULL,
    [content]               TEXT          NULL,
    [contentHash]           INT           NULL,
    [travelFilesSerialized] TEXT          NULL,
    [pnrLocator]            VARCHAR (16)  NULL,
    [airlineRecordLocator]  VARCHAR (16)  NULL,
    [emittedDate]           DATETIME      NULL,
    [creationDate]          DATETIME      NULL,
    [departureDate]         DATETIME      NULL,
    [clientID]              VARCHAR (255) NULL,
    [agentID]               VARCHAR (255) NULL,
    [terminalID]            VARCHAR (255) NULL,
    [bookingAgencyID]       VARCHAR (255) NULL,
    [ticketingAgencyID]     VARCHAR (255) NULL,
    [bookingAgentSine]      VARCHAR (255) NULL,
    [ticketingsAgentSine]   VARCHAR (255) NULL)



Esta tabla contiene los archivos de la interfaz y una interpretación binaria de iBIP que facilita la lectura completa, además contiene otros campos adicionales que se utilizan solo con el propósito de búsqueda. Para utilizar esta función iTUI debe tener activado el "DB Exporter" denominado "Store files in DB", el cual sube los archivos a la base de datos para que luego los pueda consultar cualquier applet de iBIP.


Para entender cómo funciona la conexión y los filtros de los applets que se van a conectar a la base de datos, puede consultar el capítulo de "Procesos, análisis de datos (motores)"

iTUI como interfaz de un BackOffice externo

iTUI no puede saber de antemano cómo debe afectar una base de datos externa que no conoce su estructura o reglas, pero lo que puede hacer es delegar esa función en un procedimiento almacenado  (stored procedure) y enviarle los datos para que se programe en ese lugar qué hacer con esos datos.

Los stored procedures son varios, pero a modo de ejemplo se mostrará la estructura de uno:


CREATE PROCEDURE SP_IFM_PNRTicket 
@fileSourcefileName VARCHAR(1024),
@fileSourceparsingError TEXT,
@pnrLocator VARCHAR(16),
@classDescription VARCHAR(255),
@date DATETIME,
@pnrCreationDate DATETIME,
@departureDate DATETIME,
@advancedPurchaseDays INT,
@travelledDays INT,
@bookingCurrency VARCHAR(8),
@bookingFareCurrency VARCHAR(8),
@fareTotalAmount DECIMAL(15,2),
@baseFare DECIMAL(15,2),
@localCurrencyValue DECIMAL(15,2),
@itinerary VARCHAR(255),
@emittedItinerary VARCHAR(255),
@clientname VARCHAR(255),
@clientid VARCHAR(255),
@clientInformation VARCHAR(255),
@emittedStatus VARCHAR(32),
@gdsName VARCHAR(255),
@terminalID VARCHAR(255),
@bookingAgencyname VARCHAR(255),
@bookingAgencyid VARCHAR(255),
@ticketingAgencyname VARCHAR(255),
@ticketingAgencyid VARCHAR(255),
@costCenter VARCHAR(255),
@costCenter2 VARCHAR(255),
@travelReason VARCHAR(255),
@employerNumber VARCHAR(255),
@budget VARCHAR(255),
@tourCode VARCHAR(255),
@requestedBy VARCHAR(255),
@region VARCHAR(255),
@department VARCHAR(255),
@lowFare DECIMAL(15,2),
@fullFare DECIMAL(15,2),
@fareReason VARCHAR(255),
@fareTravelType VARCHAR(255),
@businessGroup VARCHAR(255),
@savingsCode VARCHAR(255),
@savingsCode2 VARCHAR(255),
@freeFieldA VARCHAR(255),
@freeFieldB VARCHAR(255),
@freeFieldC VARCHAR(255),
@freeFieldD VARCHAR(255),
@freeFieldE VARCHAR(255),
@ticketNumber VARCHAR(255),
@airlineid VARCHAR(16),
@airlinedescription VARCHAR(255),
@airlineiataNumericCode INT,
@dateOfIssue DATETIME,
@monthOfIssue VARCHAR(255),
@yearOfIssue INT,
@marketPlace VARCHAR(255),
@passenger VARCHAR(255),
@ticketedPointMileage INT,
@voidStatus VARCHAR(255),
@exchangeStatus VARCHAR(255),
@generalStatus VARCHAR(255),
@originalTicketNumber VARCHAR(255),
@fareCommissionIndicator VARCHAR(255),
@price DECIMAL(15,2),
@fareCommission DECIMAL(15,2),
@fareCommissionPercent DECIMAL(15,2),
@priceVAT DECIMAL(15,2),
@priceVATPercent DECIMAL(15,2),
@otherTax DECIMAL(15,2),
@cost DECIMAL(15,2),
@costVAT DECIMAL(15,2),
@totalPrice DECIMAL(15,2),
@totalCost DECIMAL(15,2),
@saving DECIMAL(15,2),
@qValue DECIMAL(15,2),
@ticketBaseFare DECIMAL(15,2),
@usdValue DECIMAL(15,2),
@priceUSD DECIMAL(15,2),
@priceVatUSD DECIMAL(15,2),
@otherTaxUSD DECIMAL(15,2),
@totalPriceUSD DECIMAL(15,2)
 AS

/*WRITE CODE HERE*/



Como se puede observar, en el comentario de abajo se puede escribir el código de afectación de tablas requerido para cada sistema, iTUI ejecutará este procedimiento por cada boleto que ingrese y le enviará todos los datos al mismo.

Otros servicios de exportación

Actualmente existen, o están en desarrollo, otros servicios de exportación para brindar información a sistemas comerciales, consulte a soporte para solicitar información mas específica.

 
 

Temas relacionados