viernes, 6 de septiembre de 2019

Consultas (Lookups) en OIC



Hola que tal, hace tiempo que no escribo, una disculpa me he encontrado con demasiado trabajo, pero ya estoy de vuelta para poder aportar un poco con ideas y situaciones que me curren día a día, espero que la breve información que encuentren aquí sea de mucha ayuda.
Empecemos, recientemente me encontré en un dilema al realizar una integración, en la cual el sistema origen y el sistema destino, por obvias razones, no se encontraban homologados y el sistema destino requería que se le desplegara la información con ciertos valores en específico, platicando con las personas del sistema origen me comentaron que de su lado no tenían forma de cambiar la estructura o la información que se estaba desplegando en la API, derivado de eso surgió la necesidad de realizar una transformación directamente en OIC (Oracle Integration Cloud), se que me van a decir, ¿transformar datos?  ¿Acaso eso no lleva mucho tiempo y es muy complicado?  Pues que creen en OIC el mapeo de datos y transformación de un dato A hacia un dato B es muy muy sencillo.
Oracle Integration Cloud nos presenta una funcionalidad para poder cubrir éstas necesidades y es muy eficiente se llama Lookups


Dicha funcionalidad lo encuentran en el panel de Diseño (Designer) del lado izquierdo ingresan y podrán ver las consultas que tienen creadas, del lado derecho encontraran dos botones:

  • Import: Nos permite importar un archivo en formato csv, esto es muy útil cuando neesitamos importar una gran cantidad de información, veremos con detalle esta funcionalidad en el siguiente post.
  • Create: Permite crear una lista con los valores que ustedes deseen.


En nuestro caso daremos click en el botón create y nos desplegará un cuadro de diálogo n donde ingresaremos la información requerida:
  • Lookup Name: Será el nombre que le asignaremos a nuestro Lookup
  • Description: Una breve descripción del uso o detalle del lookup


Posteriormente veremos que en la interfaz se nos presenta una tabla, ahí es en donde colocaremos los valores y el tipo de transformación que deseamos, por default los cabeceros de las columnas vienen con un nombre, ese se puede editar o lo pueden dejar como esta, es un paso opcional y se los dejo a su consideración, yo cambiare el nombre de las columnas, para hacer eso simplemente se da click en el nombre “Domain_Name_1” y posteriormente en “Edit Domain Name”



Ingresamos el valor y damos click en OK, este procedimiento lo haremos exactamente igual con la siguiente columna.

Después únicamente nos resta ir colocando los valores que deseamos transformar, la tabla presenta un ícono de “+” al dar click nos permite agregar una fila más o incluso podemos agregar una columna más.


Una vez que hemos colocado los valores en el lookup ahora nos toca ir a la integración y usar la transformación.

Para eso nos dirigimos a “Integrations” y abrimos la integración en la que usaremos la transformación o le damos crear;Una vez que tenemos nuestra integración en modo edición seleccionamos el map en donde haremos uso del lookup y daremos click en el campo en el que haremos la transformación. Ya que estamos en la edición del campo abriremos el menú Mapping Components, después nos vamos a la siguiente ruta Function->Integration Cloud
Seleccionamos y arrastramos el valor lookupValue con eso nos abrirá un wizard en el que colocaremos la información del lookup creado anteriormente.
En la primer ventana buscamos y seleccionamos nuestro lookup y damos click en “Next” o “Siguiente”

En la siguiente ventana nos muestra una tabla ahí damos click en los Headers y seleccionamos los cabeceros de la tabla que creamos en el lookup.


En la ventana siguiente ingresaremos un valor por default que tendrá como entrada en este caso yo colocare el valor TST_QUEUED y damos click en Next o siguiente.

Por último, nos muestra un resumen de la configuración que realizamos en los pasos anteriores y damos click en el botón Done
Nos arrojará un warning pero no se preocupen, eso se debe a que aun no hemos colocado el campo del sistema fuente con el cual se realizará la comparación para poder transformar los datos, para poder mapear el campo, abrimos nuestro árbol de campos disponibles y seleccionamos nuestro field, damos click en Save y luego cerramos el wizard del mapeo.

Ahora debemos probar la transformación, para eso como ya saben vamos a la herramienta de TEST que se encuentra en el mapping.

Generamos los datos de prueba con ayuda del botón Generate Inputs


Colocamos el valor del sistema fuente y damos click en el botón Execute. LISTO ¡!!! Pueden ver como se realiza la transformación del campo.
Como pueden observar realizar transformaciones en OIC es extremadamente sencillo y muy rápido, así que no duden en hacer uso de ésta grandiosa herramienta que los sacara de verdaderos dolores de cabeza.
Por el momento eso es todo amigos, nos estamos viendo en otro post, hasta luego.

jueves, 20 de diciembre de 2018

SOAP, REST eso qué es?

Cuando un proyecto se encuentra en etapa de diseño y se llega a la parte de integraciones, se escucha muy seguido el término web service SOAP o web service REST, pero, ¿a qué se refieren al utilizar estos dos conceptos? Bien, se buscará dejar más claro la diferencia entre ambos de una manera general, sin profundizar demasiado en el tema ya que nos llevaría demasiado tiempo.

SOAP (Simple Object Access Protocol ) se define como un protocolo estándar de comunicación, es decir se está haciendo referencia a un conjunto de reglas que se deben seguir para lograr un intercambio de mensajes entre sistemas basado en la especificación de XML, y se encuentra conformado por tres partes:
·         Sobre (envelope): nos define el mensaje y cómo procesarlo
·         Conjunto de reglas de codificación: Indica el protocolo de aplicación a utilizar como HTTP, SMTP o JMS
·         Independencia: permite cualquier modelo de programación
Ejemplo de mensajes SOAP
El ejemplo presentará la forma se solicita información de un cliente.
Request
Response
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
   <soap:Body>
     <getClientDetails xmlns="http://io3cloud.example.com/ws">
       <clientId>770982</clientId>
     </ getClientDetails >
   </soap:Body>
</soap:Envelope>

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">   <soap:Body>     <getClientDetailsResponse xmlns="http://io3cloud.example.com/ws">       <getClientDetailsResult>         <name>James</name>               <lastName>Parker</lastName>         <birthDt>01/01/1980</birthDt>     
         <phone>55667654</phone>     
       </getClientDetailsResult>     </getClientDetailsResponse>   </soap:Body></soap:Envelope>



REST (Representational State Transfer) nos da la descripción de un conjunto de principios basados en una arquitectura por la cual los datos se pueden transmitir a través de una interfaz estandarizada. REST no contiene una capa adicional de mensajería y se centra en las reglas de diseño para la creación de servicios, los servicios REST presentan las siguientes características:
·         Operaciones bien, GET, PUT, DELETE y POST.
·         Sintaxis universal en un sistema REST cada recurso es direccionable únicamente a través de su URI
·         Es posible navegar un recurso REST únicamente siguiendo los enlaces sin necesitar peticiones adicionales
Ejemplo de mensaje REST
La petición se realiza mediante una URL
Respuesta
{
                "name": "James",
                "lastName": "Parker",
                "birthDt": "01/01/1980",
                "phone": "55667654"
}
Como resumen presentamos la siguiente tabla comparativa entre SOAP y REST
SOAP
REST
Es un protocolo
Es una arquitectura
Utiliza interfaces de servicio para exponer la lógica de negocio
Utiliza URI para exponer la lógica del negocio
Define las normas que deben seguirse estrictamente
No define demasiados estándares
Requiere más ancho de banda
Requiere menos ancho de banda
Realiza la definición de todo en su formato
Sólo define su arquitectura
Permite XML como único formato de datos
Permite diferentes formatos, HTML, XML, JSON, etc


miércoles, 4 de enero de 2017

Modificar parámetros desde el server manager

Que tal ya andamos acá de vuelta, deje un poco abandonada la página por cuestiones laborales, pero acá les traigo un artículo interesante.
En ocasiones no es posible acceder a nuestra instancia de Siebel desde el explorador; ya sea porque no hay conexión con el Siebel Gateway o simplemente la autenticación de nuestra instancia no está trabajando de forma correcta.
Lo que haremos como ejemplo será modificar los parámetros de un componente en nuestra instancia de Siebel para que el login sea por Base de datos.
Primero nos tendremos que conectar al Server Manager, una vez estando ahí utilizaremos el siguiente comando para poder modificar el parámetro:

  • change parameter parameter_alias_name1=value1 for comp component_definition_name
En donde:
  • parameter_alias_name1: Se debe indicar el Alias del parámetro que se deberá modificar.
  • value1: El valor que se desea.
  • component_definition_name: El nombre del componente al que pertenece el parámetro que se modificará
Los parámetros que modificaremos serán los siguientes, 

change parameter SecAdptMode=DB for comp loyaltyObjMgr_enu
change parameter SecAdptName=DBSecAdpt for comp loyaltyObjMgr_enu

Con esto indicaremos que el componente loyaltyObjMgr_enu realice un login por Base de Datos, sin embargo esto es sólo un ejemplo y con ese comando podremos modificar cualquier parámetros que necesitamos de cualquier componente directamente desde el server manager, lo único que faltaría por hacer sería reiniciar los servicios de Siebel Server.


martes, 5 de abril de 2016

Error SAMPLE "SBL-DAT-00227 unable to create the business service 'web engine interface' "

Que tal, acá andamos de vuelta con un tema el cuál surgió en la semana y es de esos detalles sencillos pero que nos pueden ahorrar horas de investigación y sobre todo de frustración.
En donde me encuentro laborando nos vimos en la necesidad de instalar el SAMPLE de Siebel 8.2 para efectuar una presentación, el Sample se instaló en el idioma nativo que todos sabemos es el Inglés (ENU), pero fue necesario instalar un complemento de lenguaje en este caso fue Español (ESN), la instalación no tuvo problema alguno; sin embargo al intentar ejecutar uno de los clientes dedicados del Sample en ESN, marcaba el siguiente error:

sbl-dat-00227 unable to create the business service 'web engine interface'



Para solucionar el error lo que se tiene que realizar es:
  • Ejecutar el cliente dedicado en inglés ENU
  • Dirigirse a Administration - Data ----> List of values
  •  Ejecutar una consulta por Type y buscar el valor ACCESS_RESOURCE_TYPE el query devolverá los siguientes resultados (pueden ser más)
  • Posteriormente deberán crear los mismos registros que devolvió la consulta pero en el campo Language Name deberán colocar el idioma en el que desean ejecutar el cliente en este caso fue Spanish (Modern) que es el idioma español ESN

  • No olviden colocar el flag de Active en Y y dar click en Clear Cache
Al efectuar esos sencillos pasos ya podrán ejecutar el Cliente dedicado en el idioma ESN, sin ningún problema.

Me despido y espero que este post les haya sido de utilidad, y así evitar horas de frustración intentando encontrar el problema, no olviden compartir.


jueves, 31 de marzo de 2016

Error Siebel Tools RegisterServer failed in SRCVW32.DLL

En ocasiones después de instalar Siebel Tools, al intentar ejecutar la aplcación nos muestra un error con el mensaje:

RegisterServer failed in SRCVW32.DLL. Return = 0x80020009 GetLastError = 0x0
Registration failed srcvw32.dll

La solución a éste problema es bastante sencilla sólo deben hacer lo siguiente:
1 Posicionarse en el ícono de Tools, dar click derecho y dirigirse a Propiedades (Properties)



2 Posteriormente deberán localizar la pestaña Compatibilidad (Compatibility)


3 Una vez que se encuentran en dicha sección deberán habilitar la opción que indica "Ejecutar este programa en modo de compatibilidad para" (Run this program in compatibility mode for)


4 Dar click en Aplicar(Apply) y Aceptar (OK)
Con estos sencillos pasos la ejecución de Siebel Tools se hará sin ningún problema, espero que este pequeño post les sea de ayuda.

miércoles, 27 de enero de 2016

Importar Repositorio Siebel

Que tal continuando con la serie de post's en donde se realiza la migración de una configuración existente de Siebel, ahora veremos la importación del repositorio, el método será utilizando el wizard de configuración justo como se realizó la exportación del repositorio.
Para importar el repositorio es necesario copiar al servidor destino el archivo customer.dat (El nombre del archivo puede variar según se haya definido en el post anterior ver Exportar Repositorio Siebel).

Una vez copiado dicho archivo al servidor destino, ir a la ruta: /INSTANCE_NAME/siebsrvr, y ejecutar las variables de base de datos:

    . ./dbenv.sh

Posteriormente dirigirse a la ruta /INSTANCE_NAME/siebsrvr/bin y ejecutar el siguiente comando para iniciar el wizard de configuración:

./ssincfgw -args LANG=ENU MODE=LIVE MODEL_FILE=/data02/INSTANCE_NAME/siebsrvr/admin/dbsrvr.scm

Una vez ejecutado el comando anterior, el wizard de configuración iniciara,  mostrando en su primer pantalla la ruta dónde el directorio del Siebel Server se encuentra ubicado, de ser correcta la ruta presionar el botón “Next” para continuar al siguiente paso.

En la siguiente pantalla debemos ubicar la ruta del directorio del Siebel Database Server, nuevamente presionar el botón “Next” para continuar al siguiente paso.


En el siguiente paso será necesario seleccionar la plataforma sobre la cual se encuentra la base de datos de Siebel, en nuestro caso seleccionaremos “Oracle Database Enterprise Edition” y presionamos el botón “Next” posteriormente.
La siguiente pantalla del wizard es para seleccionar que acción se desea llevar a cabo, por lo que aquí se seleccionará la opción “Import/Export Repository”.


Al dar clic en el botón “Next” mostrará una nueva pantalla, para importar el repositorio es necesario seleccionar la opción “Import Repository” y dar clic en el botón “Next”.

Posteriormente en la pantalla siguiente seleccionar la opción “Import Standard Siebel Repository” y presionar el botón “Next”.
El siguiente paso consiste en proporciona al asistente el nombre del ODBC de la instancia de Siebel, dicho valor se puede verificar en el archivo odbc.ini generalmente por default tiene la forma "siebelservername_DSN". 
En las siguientes dos pantallas se ingresará el nombre y password del usuario de base de datos (SADMIN) y del propietario de la base (SIEBEL), una vez ingresado cada valor, presionar “Next” para continuar con el proceso.
Una vez ingrsado esos datos, se requiere colocar el nombre del repositorio a importar y la ruta donde se exportó el repositorio (archiuvo .dat) . Es importante renombrar el repositorio a importar en este paso ya que en el Siebel Server Destino ya existe un repositorio llamado Siebel Repository, al finalizar, dar clic en el botón “Next”.

En la siguiente pantalla seleccionar el valor “Does not use the Oracle Parallel Indexing” y dar clic en “Next”.
Por último se definirá el grupo de usuarios al que se dará acceso a dicho repositorio y el Directorio donde se escribirán los logs del proceso de exportación. Aceptar los valores por defecto y presionar “Next”.
Aparecerá una nueva ventana con las indicaciones para ejecutar la configuración una vez que se cree el archivo de salida, dar clic en “Next”.

Posteriormente aparecerá un resumen de la configuración, dar clic en “Next” y luego en “Yes” para ejecutar la configuración, una vez que aparezca un mensaje indicando que el proceso fue exitoso, salir del asistente.

El último paso consiste en dirigirse a la ruta /INSTANCE_NAME/siebsrvr/bin y ejecutar el siguiente comando:

./srvrupgwiz -m master_imprep.ucf

Una vez que el comando se haya ejecutado de forma correcta es necesario renombrar los repositorios en Siebel Tools para sustituir el repositorio actual (Siebel Repository) por el repositorio que se acaba de importar.


Hemos concluido, estos son los pasos que se deben seguir para realizar la importación de un repositorio en Siebel utilizando el wizard de configuración.

lunes, 25 de enero de 2016

Exportar Repositorio Siebel

Que tal, este post surgió gracias a una sugerencia que me realizó una persona que nos sigue, así que comencemos.
Para migrar una configuración existente de un Siebel Server a otro, es necesario copiar todos los objetos del repositorio, para lo cual se debe exportar a un archivo el repositorio del servidor fuente e importar posteriormente el contenido de dicho archivo al servidor destino. 
Durante el post se le denominará servidor fuente al servidor del cuál se extraerá el repositorio. Y se le llamará servidor destino al servidor en el cuál se colocará el repositorio; así mismo cabe aclarar que se estará utilizando el wizard de configuración para realizar las tareas.

Para exportar del Siebel Server, es necesario dirigirse a la siguiente ruta: /INSTANCE_NAME/siebsrvr, dicha ruta será en el servidor fuente y ejecutar las variables de base de datos:
                 . ./dbenv.sh
Una vez que se han ejecutado las variables se deberá ingresar a la ruta /INSTANCE_NAME/siebsrvr/bin y ejecutar el siguiente comando para iniciar el wizard de configuración:
                   
                ./ssincfgw -args LANG=ENU MODE=LIVE MODEL_FILE=/INSTANCE_NAME/siebsrvr/admin/dbsrvr.scm

Una vez ejecutado el comando anterior, el wizard de configuración iniciará,  mostrando en su primer pantalla la ruta en el cual el directorio del Siebel Server se encuentra ubicado, de ser correcta la ruta presionar el botón “Next” para continuar al siguiente paso.


La siguiente pantalla mostrará la ruta del directorio del Siebel Database Server, nuevamente presionar el botón “Next” para continuar al siguiente paso.


En el siguiente paso es necesario seleccionar la plataforma sobre la cual se encuentra la base de datos de Siebel, en este caso seleccionar “Oracle Database Enterprise Edition” y presionar el botón “Next” posteriormente.


La siguiente pantalla del wizard es para seleccionar que acción se desea llevar a cabo, por lo que aquí se seleccionará la opción “Import/Export Repository”.


Al dar clic en el botón “Next” mostrará una nueva pantalla, para exportar el repositorio es necesario seleccionar la opción “Export Repository” y dar clic en el botón “Next”.


El siguiente paso consiste en proporcionarle al asistente el nombre del ODBC de la instancia de Siebel, su valor por defecto tiene la forma “siebelservername_DSN”. Después de llenar el campo con dicho valor dar clic en el botón “Next”.
En las siguientes pantallas se introducirá el nombre y password del usuario de base de datos (SADMIN) y del propietario de la base (SIEBEL), una vez ingresado cada valor, presionar “Next” para continuar con el proceso.


El paso siguiente será colocar el nombre del repositorio y la ruta en donde se guardará el archivo. Para exportar el repositorio “Activo” de la aplicación aceptar el valor por defecto (Siebel Repository) y dar clic en el botón “Next”.
Nota: El archivo que se va crear bajo la ruta escrita en el campo “Repository File Name” se deberá copiar al Servidor Destino para poder importar el repositorio posteriormente.

En la siguiente pantalla seleccionar el valor "Does not use the Oracle Parallel Indexing Option" y dar clic en “Next”.
Por último se definirá el grupo de usuarios al que se dará acceso a dicho repositorio y el Directorio donde se escribirán los logs del proceso de exportación. Aceptar los valores por defecto y presionar “Next”.
Aparecerá una nueva ventana con las indicaciones para ejecutar la configuración una vez que se cree el archivo de salida, dar clic en “Next”.


Aparecerá un resumen de la configuración, dar clic en “Next” y luego en “Yes” para ejecutar la configuración, una vez que aparezca un mensaje indicando que el proceso fue exitoso, salir del asistente.
El último paso consiste en dirigirse a la ruta //INSTANCE_NAME/siebsrvr/bin y ejecutar el siguiente comando:

                ./srvrupgwiz -m master_exprep.ucf

Ya que se ha ejecutado el comando, el archivo con el repositorio cuyo nombre y ruta se definió en el campo “Repository File Name” del Wizard, estará listo para copiarse al servidor destino (por default, el nombre del archivo es customer.dat).

Hemos concluido, estos son los pasos que se deben seguir para realizar la exportación de un repositorio en Siebel utilizando el wizard de configuración.