jueves, 20 de junio de 2013

Creando Programas Concurrentes en EBS R12 ( Aplicación Personalizada)



Primera parte Conceptos y Creación de una aplicación personalizada
En Oracle EBS R2 existen varios tipos de programas concurrentes que podes crear y ejecutar, los cuales son:
  1.  Oracle Reports : Esta opción es utilizada para ejecutar reportes desarrollados utilizando Reports Builder.
  2.   PL/SQL Stored procedures : Esta opción es utilizada para ejecutar procedimientos almacenados en la Base de Datos.
  3.   Host script: Esta opción es utilizada comúnmente para ejecutar secuencias de comandos Shell, es comúnmente utilizada para realizar acciones sobre el sistema operativo tales como copiar o mover un archivo, etc.
  4.  Java stored procedures: Como su nombre lo indica se trata de archivos ejecutables escritos en el lenguaje de programación Java y almacenados en la Base de Datos, utilizar procedimientos almacenados siempre será la mejor manera de realizar operaciones dentro del motor, pero hay ciertas actividades que con Java  se las realizaría mejor, especialmente cuando se trata de interactuar con el sistema operativo o con una Base de Datos de Terceros.
  5.  SQL *Plus: Se utiliza para ejecutar una secuencia de comandos SQL *Plus o Bloque anónimo, se obtendrá el mismo resultado como si se lo estaría ejecutando en la herramienta SQL Plus de Oracle.
  6.  Perl Concurrent Program: Se utiliza para ejecutar programas escritos en CGI Perl. CGI significa Common Gateway Interface y Perl es el más común lenguaje para escribir scripts CGI. Se utiliza para scripting, programación web interfaces / desarrollo, y es ideal para el análisis.



Ubicación de los Archivos Ejecutables
Los archivos ejecutables deben estar almacenados en un directorio en específico, por nombrar algunos directorios tenemos:
1.       Un programa generado para el módulo de cuentas a Cobrar estará almacenado en: $AR_TOP/bin.
2.       Un reporte creado para el módulo de Inventario estará almacenado en  $INV_TOP/Reports/<Lenguaje>, donde <Lenguaje> será cualquier lenguaje instalado en el EBS.



Archivos de Salida y de Registro (Output and log files)
Estos archivos se generan durante la ejecución de un concurrente, en ellos podemos encontrar mensajes de salida de todo el proceso así como mensajes de registro.
El archivo de salida se genera cuando el concurrente se ha ejecutado de forma satisfactoria y así de esta forma el usuario puede observar la información procesada (no necesariamente un concurrente debe de crear un archivo de salido).
El archivo de Registro se utiliza para escribir mensajes técnicos con respecto a la ejecución del concurrente, información que no necesariamente puede ser entendida por el usuario final, la forma de consulta la ubicación de los archivos es mediante la tabla “FND_CONCURRENT_REQUESTS” mediante la siguiente consulta:

Otra forma de visualizar los archivos de registro y de salida es mediante la pantalla “Requests”



Las definiciones de los programas concurrentes podemos encontrarlas en las siguientes tablas, las cuales pertenecen al esquema appsys :
  1. FND_CONCURRENT_PROGRAMS .- Contiene información sobre el nombre y la descripción del programa concurrente, modo de ejecución, estilo de impresión y otro atributos que definen al programa.
  2. FND_EXECUTABLES.- Contiene información sobre el ejecutable del programa concurrente, incluyendo el nombre del archivo ejecutable, el cual se encuentra alojado en el servidor, el método de ejecución se asocia con el archivo ejecutable del programa concurrente para ayudar al administrador de concurrentes a identificar cómo y con qué herramienta ejecutar el archivo físico.

Existen tres formas de crear programas concurrentes en Oracle Applications las cuales son :
  1. Atreves de la interface basada en formularios “Program Executable” archivo “FNDCPMCP”, y el ejecutable se crea en la pantalla “Executable” archivo “FNDCPMPE
  2. Atreves de la utilidad “FNDLOAD” y el archivo de control “afcpprog.lct
  3.  O finalmente utilizando API’s  PL/SQL “APPLSYS.FND_PROGRAM”.

Los programas concurrentes deben estar asociados a una aplicación existente, puede ser una aplicación estándar del EBS R12 o una personalizada, en la cual alojaremos todos nuestros desarrollos.

Registrar una Aplicación Personalizada (Register a custom application)
Todas las funcionalidades del EBS R2 están aisladas según sus aplicaciones registradas (Esquemas), este es el mecanismo utilizado para separar el código personalizado de cada una de ellas,  este es el estándar que tenemos que seguir para realizar aplicaciones personalizadas dentro del EBS y separar nuestro código del código estándar del EBS, esto nos ayuda a protegernos de las actualizaciones y parches que se pudieran aplicar al EBS.
Vamos a crear un esquema según los siguientes datos:
SCHEMA Name
XDEMO
TOP Name
XDEMO_TOP
Application
XDemo Customizaciones
Data Group
Standard
Request Group
XDemo Request Group
Menu
XDEMO_MENU
Responsibility
XDEMO Customizaciones
APPL_TOP
/oracle/apps/r12/visr12/apps/apps_st/
appl
Instance Name
VISR12
Server Name
oraclevisionr12

Son varias las actividades que debemos de realizar, las cuales son:
  1. Crear una variable de entorno
  2. Ejecutar AutoConfig (adautocfg.sh)
  3. Crear una estructura de directorio de esquema CUSTOM
  4. Agregar el esquema personalizado para el medio ambiente
  5. Crear un nuevo espacio de tablas
  6. Crear un usuario de base de datos
  7. Registrar un esquema de Oracle
  8. Registrar un usuario de Oracle


1.- CREAR LA VARIABLE DE ENTORNO
Ahora vamos a crear un nuevo parámetro de entorno para nuestra aplicación personalizada. Esta es la única forma compatible de modificar los parámetros de configuración automática. No edite los archivos de contexto de forma manual, ya que serán sobrescritos la próxima vez que se ejecuta AutoConfig.
1.- Iniciamos Sesion en el sistema y navegamos hasta “System Administrator/Oracle Applications Manager/AutoConfig”, y le damos click en el link “Manage Custom Parameters



2.- Le damos click en el botón “Add”


Seleccionamos "Applications Tier" y luego hacemos click en el boton "Next"


En esta pantalla ingrese los siguientes datos:
Attribute
Value
Description
OA_VAR
c_xdemo_top
Por convenio el nombre debe estar en minúsculas y comenzar con el prefijo c_ y no debe tener espacios

Default Value
%s_at%/xdemo/12.0.0
Consulte las variables del contexto estándar
en $ APPL_TOP
Title
XDEMO_TOP
Nombre de la variable de entorno
Description
Customizacion XDemo
Descripcion para la variable de entorno TOP
OA_TYPE
Selecione  PROD_TOP
Definicion para este producto


damos click en el botón Next, en esta pantalla simplemente se valida los datos ingresados:


Verificamos que nuestra variable esta lista para ser configurada, presionamos el botón finish


Y como verán ya tenemos una variable de entorno:


2.- EJECUTAR AutoConfig
AutoConfig es una utilidad proporcionada por Oracle. Está dirigida a configurar el medio ambiente. Se puede ejecutar tanto a nivel de aplicación como a nivel de Base de Datos, se ejecuta mediante la ejecución de un script llamado adautocfg.sh. Nosotros sólo vamos a ejecutarlo a nivel de aplicación para recoger el parámetro de entorno que acabamos de crear.
1.- Abrimos el Putty y nos logeamos con un usuario del sistema operativo.
2.- Navegamos hasta “$INST_TOP/admin/scripts
3.- Ahora ejecutamos el comando AutoConfig : ./adautocfg.sh , la imagen siguiente nos muestra el resultado de la operación:



Con esta operación hemos actualizado los archivos de configuración, si quieren saber mas hacer de la configuración del entorno pueden consultar la siguiente nota “Using AutoConfig to Manage System Configurations in Oracle E-Business Suite Release 12 [ID 387859.1]”.
Para verificar que nuestra variable de entorno fue bien configurada debemos de ingresar a WinCSP y navegar hasta el directorio “/u01/oracle/VIS/apps/apps_st/appl” en este debemos observar una nueva carpeta llamada “xdemo” que es el nombre que le aviamos asignado a nuestro esquema.


3.- CREAR UNA ESTRUCTURA DE DIRECTORIO DE ESQUEMA CUSTOM
Ahora tenemos que crear la estructura de directorios de los archivos de aplicación personalizados. Los directorios se crean en el servidor de aplicaciones en el directorio $ APPL_TOP. Cada producto tiene su propia estructura de directorios con un nombre corto o acrónimo. Oracle asume que los objetos se guardan en un directorio específico. Por eso tenemos que ser específico acerca de la estructura de directorios que creamos. Vamos a iniciar sesión a nivel de aplicación y crear los directorios de las aplicaciones de usuario.
1.- Iniciamos sesión en el “PuTTY” y seteamos las variables de entorno:


2.- Ahora navegamos hacia el directorio XDEMO_TOP:
cd $XDEMO_TOP
3.-Ahora creamos el directorio de archivos con los siguientes comandos:
mkdir $XDEMO_TOP /admin
mkdir $XDEMO_TOP/admin/sql
mkdir $XDEMO_TOP/admin/odf
mkdir $XDEMO_TOP/sql
mkdir $XDEMO_TOP/bin
mkdir $XDEMO_TOP/reports
mkdir $XDEMO_TOP/reports/US
mkdir $XDEMO_TOP/reports/ESA
mkdir $XDEMO_TOP/forms
mkdir $XDEMO_TOP/forms/US
mkdir $XDEMO_TOP/forms/ESA
mkdir $XDEMO_TOP/lib
mkdir $XDEMO_TOP/install
mkdir $XDEMO_TOP/install/ch1
mkdir $XDEMO_TOP/install/ch2
mkdir $XDEMO_TOP/install/ch3
mkdir $XDEMO_TOP/install/ch4
mkdir $XDEMO_TOP/install/ch5
mkdir $XDEMO_TOP/install/ch6
verificamos que los directories se hayan creado:


4.-CREAR UN NUEVO TABLESPACE
Vamos a crear un nuevo esquema en la Base de Datos para ello nos conectamos a sqlplus con el usuarios sysadmin:


El esquema creado contendrá todos los objetos “Tablas,Vistas, etc” de nuestro esquema personalizado.
5.- CREAR UN NUEVO USUARIO EN LA B.D.
Tenemos que crear un usuario de B.D. con el cual crearemos todos los objetos en la B.D.


6.- REGISTRAR EL ESQUEMA DE ORACLE
Hay que registrar el nuevo esquema XDEMO en Oracle E-Business Suite. Tenemos que crear la aplicación para que Oracle sepa dónde buscar el sistema de archivos para los objetos personalizados. Crearemos una aplicación personalizada para que podamos aislar las personalizaciones que hacemos.
1.- Nos conectamos al EBS, navegamos a “System Administrator/Application/Register


Donde el significado de la información insertada es la siguiente:

Application
Nombre de nuestra nueva aplicación, por estándar los nombres de las nuevas aplicaciones que extiendan funcionalidad a una aplicación ya existente deberán tener el prefijo X<Nombre>
Short Name
Nombre corto o Abreviación
Basepath
Representa una variable de entorno la cual está alojada en el sistema operativo, esta variable apunta al directorio donde están alojados nuestros archivos fuentes, es donde la biblioteca de objetos de aplicación tratara de encontrar los archivos relacionados con nuestra aplicación personalizada
Description
Una descripción de nuestra nueva aplicación, no es una información necesaria

7.- REGISTRANDO EL USUARIO ORACLE
Ahora vamos a registrar el usuario Oracle. Ya hemos creado el usuario de base de datos y aquí estamos registrando ese usuario en la biblioteca de aplicaciones de Oracle. Tan sólo hay que registrar un usuario de Oracle cuando creamos una aplicación personalizada.
1.- Nos dirigimos a “System Administrator/Security/ORACLE/Register



Para finalizar debemos asignar nuestra aplicación creada a un grupo de datos, para ellos nos dirigimos a “System Administrator/Security/ORACLE/DataGroup



Ahora si ya estamos preparador para crear nuestras propias customizaciones, eso lo explicare en el próximo artículo gracias.


Nota:  Por alguna razón hay ocasiones en las que el EBS R12 cuando creamos nuestra nueva aplicación para customizaciones no carga la variable de entorno que apunta a los archivo de nuestras custom, esto se soluciona reiniciando la capa de aplicación con los siguientes comandos.

Solucion:
Reiniciamos la capa de aplicacion
cd $ADMIN_SCRIPTS_HOME
sh adstpall.sh apps/apps
sh adstrtal.sh apps/apps 

1 comentario:

File sharing system in PHP free code (Veno File Manager v4.2.7)

  File sharing system in PHP free code (Veno File Manager v4.2.7) Download: veno-file-manager-v427 File sharing system in PHP free code ===...