lunes, 28 de septiembre de 2015

Responsables de Aprobación de Departamentos

Con una responsabilidad asignada a los activos circulantes propios por  departamento, puede configurar aprobadores por departamento para que las notificaciones de solicitudes de trabajo se puedan enviar a cada aprobador, a través de Oracle Workflow. Los aprobadores pueden ver estas notificaciones en la página inicial al momento de entrar al EBS. Todo el que reciba la notificación puede acceder a la solicitud de trabajo para cambiar el estado, o añadir información adicional para el registro de la solicitud de trabajo. Después de que un usuario aprueba la solicitud de trabajo, la notificación será retirada de las listas de notificaciones de los usuarios, y el estado de la solicitud de trabajo cambiará de Abierto a Espera de Pedido de Trabajo.


Una solicitud de trabajo también puede ser rechazada. Si un aprobador rechaza una solicitud de trabajo, la notificación será eliminada de la lista de notificación de aprobadores. También puede volver a asignar una notificación a otro usuario para su aprobación o información adicional, por ejemplo, el creador puede tener que proporcionar información adicional sobre la solicitud de trabajo.


Para definir Aprobadores por Departamento
Navegar a una responsabilidad de EAM >> Configuración >> Responsables de aprobación de Departamento. En la pantalla seleccionar un nombre de Responsabilidad de una lista de valores. Aquí puede indicar cuantos departamentos serán asignados para la responsabilidad(previamente deben estar creados por la organización de inventarios a la cual tiene acceso a EAM)

En la región de Departamentos, seleccione un Departamento de la lista de valores. Puede seleccionar un número ilimitado de departamentos y asociar el responsable de Aprobación, finalmente guarde los cambios.

viernes, 25 de septiembre de 2015

APP-PER-50022: HR no pudo recuperar un valor para la opción de Perfil Tipo de Usuario

Cuando estamos creando una nueva  organización es común crear responsabilidad los cuales tendrá acceso al modulo de Human Resources, sin embargo hay ocasiones que al tratar de ingresar un nuevo empleado a la organización nos salte el siguiente mensaje:
  


APP-PER-50022: Oracle Human Resources no pudo recuperar un valor para la opción de Perfil Tipo de Usuario. Asegurarse de de que esté definida correctamente para la responsabilidad.
  
Esto sucede debido a que la nueva responsabilidad donde se está ingresando los empleados  no s ha configurado una opción de Perfil.  En este caso se debe modificar el perfil del sistema HR:Tipo de Usuario
  
Para ello ir a la Responsabilidad de Administrador del sistema >> Perfil >> Sistema. Buscar la opción de perfil HR:Tipo de Usuario a nivel de la responsabilidad donde se ha encontrado el problema.   Ahora seleccionar el  Valor HR con Usuario de Nómina de Empleados. Grabar los cambios. 




Para comprobar los cambios regrese a la responsabilidad donde se obtuvo el error. Podrá apreciar que ya no hay problemas y podrá ingresar nuevos empleados.

Divisas Múltiples de Información


Divisas Múltiples de Información o Multiple Reporting Currencies (MRC) es un conjunto de características únicas incluidas en Oracle que permite a una organización generar reportes  en múltiples monedas funcionales. El uso de MRC, puede mantener y reportar los registros contables a nivel de transacciones en más de una moneda funcional. Esto se hace mediante la definición de una o más juegos de libros de Información, cada uno asociado a un juego de libros Primario. Cada juego de libros tiene su propia moneda funcional. Las siguientes aplicaciones de Oracle soportan esta funcionalidad:

a) General Ledger
b) Payables
c) Purchasing
d) Receivables
e) Cash Management
f) Projects
g) Assets
h) Cost Management
i) Global Accounting Engine

MRC se usa en organizaciones que deben soportar regularmente y rutinariamente informes legales y jurídicos de ambas transacciones  y Balance de cuentas en varias monedas, que no sea la moneda funcional primaria. Si sólo necesita reportar saldos en una moneda distinta a la moneda funcional primaria, puede utilizar translación de General Ledger.

Características
a) Conversión a nivel Transaccional
Cuando ingresas transacciones en Oracle que soportan MRC, se convierten automáticamente en su moneda funcional primaria y cada uno de sus monedas funcionales de información, de acuerdo a lo siguiente:

Las transacciones en moneda funcionales primarias: Todas las transacciones denominadas en su moneda funcional primaria se registran en esta moneda. Las transacciones también se convierten automáticamente en cada uno de sus monedas funcionales de información.

Transacciones en moneda extranjera: Las transacciones denominadas en moneda extranjera se convierten automáticamente en su moneda funcional primaria y en cada uno de sus monedas funcionales de información, así a menos que la moneda extranjera coincida con la moneda funcional de información (conversión no es obligatorio).
  
b) Transacciones libro auxiliar
Cuando ingresas transacciones en Oracle a libros auxiliares que apoyan MRC, las transacciones se convierten a sus monedas funcionales primarias y de información en el momento del ingreso original. Las cantidades en moneda funcionales primarios y sus importes en moneda de información asociados se almacenan juntos en sus libros auxiliares. Se debe registrar transacciones de Libro auxiliar en el juego de libros primario y en cada juego de libros de información.

c) Consulta y reportes en múltiples divisas
Debido a que las transacciones de Libro auxiliar se convierten en sus monedas funcionales de información en el momento del ingreso original, las transacciones convertidas están disponibles para consulta y notificación inmediata.

Después de haber contabilizado  sus transacciones en libro auxiliar de General Ledger en el juego de libros primario y asociado a cada juego de libros de información, puede iniciar sesión en una responsabilidad de reportes de General Ledger, contabilizar los nuevos  asientos creados, y generar los reportes de asientos y balance de cuentas  del juego  de libros de información. Cuando hace su consulta sobre el balance de cuenta y asientos en el juego de libros de información. Se puede profundizar  o desplegar en los detalles de Libro auxiliar (en su moneda funcional de información), usando las  características de desglose integradas en GL para proporcionar vistas completas y coherentes de las transacciones subyacentes del Libro auxiliar.

Puede profundizar de General Ledger a  detalles de la transacción en Oracle Receivables, Oracle Payables, Oracle Projects, Oracle Assets, Oracle Purchasing, Oracle Inventory, y  Oracle Work in Process.

Conceptos MRC
Hay tres conceptos claves para hacer frente a los requisitos de múltiples divisas

Conversión: Se refiere a una transacción en moneda extranjera inmediatamente convertido en la moneda funcional (es decir, la moneda del libro).

La conversión usa el tipo de cambio diario que se ingresa al momento de ingresar un asiento o cuando se ha configurado previamente para cierta fecha en la pantalla de Tipos de cambio. Cuan do se contabiliza las transacciones en moneda extranjera, General Ledger mantiene separado el balance de cuentas ingresada en moneda extranjera y su balance de cuenta en la moneda funcional.

La funcionalidad de conversión permite lo siguiente: 
  • Separa por partes el balance de cuentas por diferentes monedas usada para cada transacción.
  • Identifica específicamente el origen de las monedas de las transacciones, el componente clave para realizar apropiadamente una revaluación del balance.




Revaluación: Ajusta las cuentas de activos y pasivos que pueden ser subestimado o sobrestimado al final del período sustancialmente debido a fluctuaciones significativas en los tipos de cambio entre el momento de la transacción cual fue ingresado y al final del período.

Al final de un periodo contable, el proceso de revaluación crea un asiento no contabilizado para registrar el cambio en los balances convertidos  en la cuenta de pérdidas y ganancias no realizadas. El asiento es contabilizado posteriormente, y luego será convertido al inicio del siguiente  periodo.


Traslación: Se refiere a la actualización de un libro contable o saldos para una compañía de la moneda funcional a la moneda extranjera.

Si se tiene procesando un balance promedio, se puede trasladar los balances promedios como un balance standard. Se debe ejecutar la traslación después de haber completado   todas las actividades de asiento para un periodo contable, Si luego de la contabilización se hicieran cambios en los asientos es posible volver a trasladar los saldos modificados.



martes, 22 de septiembre de 2015

Deshabilitar campos desde Forms Personalization

Usando Forms Personalization, podemos bloquear ciertos campos que queremos que los usuarios no modifiquen o ingresen datos erroneamente. Por ejemplo damos el caso de la pantalla de transacciones misceláneas donde se requiere que el campo fecha no deba ser modificado y  cualquier tipo de transacción por esta pantalla debe de indicar su fecha y hora correcta.

Primero debemos  agregar un menú en la opción de  Herramientas. Para personalizar debemos ir a Ayuda >> Diagnóstico >> Código Personalizado >> Personalizar. Crearemos una primera personalización a nivel de Función y usaremos el Evento Trigger WHEN-NEW-FORM-INSTANCE. 

En la pestaña Acciones. Debemos escoger como Tipo de Acción Propiedad. Colocar como tipo Objeto Artículo y agregar en Objeto Objetivo el campo fecha en este caso MISC_TRX.TRANSACTION_DATE y como Propiedad colocar INSERT_ALLOWED  y valor FALSE.


Al colocar esta configuración estamos indicando que el campo Fecha no puede ser editado. Para comprobar debemos cerrar la pantalla para que se actualicen los cambios. Abrir el formulario y se podrá apreciar que el campo fecha ya está bloqueado para el usuario. 


Cuentas Resumen

Una Cuenta  Resumen es una cuenta cuyo saldo es la suma de los saldos de varias cuentas de detalle. Las cuentas resumen nos permiten actualizar asientos contabilizados para cierta cuenta de detalle, habilitar consultas de  resumen en línea y al estar resumido permite mayor velocidad  de Procesamiento de concurrentes sobretodo en los reportes financieros. Tener en cuenta que las Cuentas a detalle solo permite contabilización directa de las transacciones y asientos del negocio.


Determinando sus Cuentas Resumen
El primer paso en la definición de sus cuentas Resumen es determinar sus necesidades de resumir sus cuentas. Las cuentas resumen le proporcionan beneficios significativos cuando se produce informes resumidos y realizar asignaciones. Tenga en cuenta los siguientes pasos:

1. Tenga en cuenta la información de resumen que necesita para los informes.
Aunque se puede definir fácilmente los estados financieros que resumir en una serie de cuentas juntos por una fila dada, puede utilizar cuentas resumen para un acceso más rápido a los saldos resumidos.

2. Identificar los saldos de resumen que necesita para consultas en línea.
Por ejemplo, es posible necesitar consultas rápidas sobre el total de todos los saldos de caja para sus organizaciones nacionales para tomar decisiones diarias sobre inversiones o de cobertura de moneda extranjera. También es posible que desee revisar la cantidad de capital de trabajo (activo circulante menos pasivo circulante) para cada división o departamento sobre una base semanal.

3. Considere cómo desea utilizar las cuentas resumen en fórmulas y asignaciones. Puede utilizar las cuentas resumen como factores al definir fórmulas de asientos y asignaciones.

Usar cuentas resumen para hacer referencia a los saldos de resumen en una fórmula de asiento  recurrente. Por ejemplo, para estimar un devengo de comisión de ventas basado en el total de todas las ventas de productos para cada división, puede utilizar una cuenta de resumen que asciende a todas las ventas de productos en cada división.

Usar cuentas resumen para hacer referencia a los saldos presupuestarios resumen en una fórmula presupuesto. Por ejemplo, para basar el presupuesto para beneficios de los empleados en cada empresa en el total de los salarios de los empleados presupuestados, utilizar las cuentas de resumen que el total de todos los salarios de los empleados de cada empresa.

Usar cuentas resumen  al ingresar los presupuestos con las normas presupuestarias. Por ejemplo, puede basar su presupuesto para la cuenta de sueldos del año en curso en un porcentaje de gastos generales total del año anterior, un resumen.

Usar cuentas  resumen para indicar la cantidad total que desea asignar al definir sus fórmulas de asignación. También, utilizar las cuentas resumen para ayudarle a calcular los coeficientes de asignación para utilizar en tus fórmulas de asignación.

Planificando  la estructura de sus cuentas Resumen
Después de determinar sus necesidades de cuentas resumen, planificar su estructura de cuentas de resumen de acuerdo a la forma en que desea resumir su información contable.

Elija formas de resumir su información contable en función de la estructura de su cuenta y sus necesidades de información. En general, las organizaciones estructuran sus cuentas de manera que cada segmento representa una dimensión particular, o una manera de mirar a su organización.

Para entender mejor como definir cuentas Resumen damos algunos ejemplos de maneras en que puede resumir la información por cada segmento:

Compañía:
Un segmento que indica las personas jurídicas. Es posible resumir empresas por las principales industrias, como las Empresas de Retail; por regiones dentro de un país, tales como compañías de Oriente; o por grupos de países, como por ejemplo las empresas americanas.

Centro de costo:
Un segmento que indica las áreas funcionales de su negocio, tales como Soporte, Sistemas, Instalaciones, y así sucesivamente. Es posible realizar un seguimiento de las áreas funcionales de una forma detallada, pero se puede generar  un reporte Resumen donde los centros de costos de esta agrupados por una división llamada T.I.

Cuenta:
Un segmento que indica su cuenta natural, como efectivo, cuentas por pagar, o de gastos de salarios. Es probable que resuma sus cuentas por tipo de cuenta, es decir, sus activos, pasivos, patrimonio, ingresos y gastos. También puede resumir a un nivel más detallado, con las cuentas de resumen como activos corrientes o pasivos a largo plazo.

Producto:
Un segmento que indica los productos. Es posible que desee resumir productos en grupos de productos tales como componentes de computadoras personales, dispositivos de almacenamiento, y así sucesivamente.

Distrito:
 Un segmento que indica lugares geográficos, como el norte de California, Florida central u el Oeste de Nueva York. Si define segmentos que registran datos dentro de las áreas geográficas más pequeñas, como los distritos, se puede resumir fácilmente distritos en estados, o incluso en grupos de estados que se pueden llamar regiones.


Planificando Valores de Padres y Grupos de Acumulación
Después de determinar sus necesidades y la  estructura de cuentas resumen de su organización, debe definir sus valores padres y sus Grupos de Acumulación o Rollups Groups.


Los Grupos de Acumulación son un conjunto de valores de segmento padres para un segmento dado, Un valor no puede pertenecer a un grupo de Acumulación a menos que sea un valor primario que tiene valores hijos. Los valores padres y los valores hijos pertenecen al mismo conjunto de valores, que se adjunta a un segmento de FlexField clave. 
Planificando Plantillas Cuenta Resumen
Configurar plantillas para definir y mantener cuentas resumen. Puede mejorar la velocidad de sus resumenes controlando el número de cuentas resumen creados por la plantilla. El numero de sus cuentas resumen de su plantilla será creado dependiendo de los segmentos de valore de su plantilla.

Oracle General Ledger utiliza plantillas de resumen para crear cuentas  resumen. Oracle General Ledger utiliza las plantillas en combinación con las definiciones de valor del segmento de los padres para crear cuentas resumen. Se especifica cuando se quiere que comience el mantenimiento de sus saldos de las cuentas resumen. Cuando se elimina una plantilla de resumen, Oracle General Ledger elimina todas las cuentas de resumen creados a partir de esa plantilla y sus saldos asociados.

Cuando se crea una plantilla se puede escoger tres tipos de valores:

D: La plantilla crea y mantiene un resumen para cada valor de segmento detalle. Este valor crea las mayorías de las cuentas resumen de cualquier valor plantilla. Tener en cuenta que General Ledger no le permitirá definir una plantilla de cuenta resumen usando sólo valores plantilla D.

T: La plantilla crea y mantiene una relación sumaria que resume los saldos de todos los valores de segmento detalle. Este valor crea las cuentas resumidas en menor cantidad de cualquier valor plantilla. Si introduce T para un segmento, todas las cuentas resumen creadas por la plantilla tendrán el valor de T para el segmento. Por lo tanto, el valor T debe ser definido y habilitado para el segmento. Además, el valor del segmento debe ser uno de los padres y el detalle de contabilización y el presupuesto no están permitidos. Tener en cuenta no definir una plantilla de cuenta Resumen utilizando sólo valores T de la plantilla. Una plantilla con valores T para cada segmento tiene un saldo de cero si su libro está en balance.

Grupo de Acumulación: La plantilla crea y mantiene un resumen para cada valor del segmento de los padres asignado al grupo de acumulación que se especifique. Cuantos más valores de segmento de los padres esta en un grupo determinado de resumen, más cuentas de resumen se crean en la plantilla.


Definiendo de cuentas Resumen
General Ledger utiliza plantillas de resumen para crear cuentas resumen, cuyos saldos son las sumas de múltiples cuentas detalle. Para definir una nueva plantilla de cuenta  resumen Ir a una responsabilidad de General Ledger >> Configuración >> Cuentas >> Resumen.

Ingresar un Nombre para la plantilla de cuenta resumen. Luego en el campo Plantilla, ingresar un valor para cada segmento de su plan contable bajo los  valores D,T, o Grupo de acumulación. Una vez escoja la plantilla debe  ingresar el Primer Período  para el que desea que General Ledger empiece a trabajar con sus saldos de las cuentas resumen para este período contable y los períodos posteriores.


Si está utilizando el control presupuestario para el juego de libros, defina las opciones de control presupuestario para la plantilla de resumen. Guarde los cambios. General Ledger presenta una solicitud concurrente llamada Agregar/Suprimir Cuentas Resumen para agregar las cuentas resumen, y muestra el Estado de la plantilla de resumen.

Actual: Las cuentas de resumen están activas.
Adición: La Solicitud Concurrente para crear cuentas resumen está pendiente o en marcha.
Suprimiendo: La solicitud concurrente para eliminar cuentas resumen está pendiente o en marcha.

viernes, 18 de septiembre de 2015

Tipos de datos pl/sql


En PLSQL admite una variada gama de tipos de datos para la información almacenada en las tablas. Estos tipos de datos pueden ser numéricos, alfanuméricos, de fecha o booleanos. Los tipos de datos en PL/SQL definen el formato de una variable, constante o parametro (los parametros son usados para pasar valores y devolverlos de un procedimiento o función).

NUMBER (Numérico): Almacena números enteros, virtualmente de cualquier longitud, aunque puede ser especificada la precisión (Número de dígitos) y la escala que es la que determina el número de decimales. El tipo NUMBER tiene muchos subtipos tales como DECIMAL y el INTEGER

CHAR (Caracter): Es un tipo de dato de longitud fija. Almacena datos de tipo caracter con una longitud maxima de 32767 y cuyo valor de longitud por default es 1.

VARCHAR2 (Caracter de longitud variable): es un tipo de dato de longitud variable. Almacena datos de tipo caracter empleando sólo la cantidad necesaria aún cuando la longitud máxima sea mayor.
 
DATE:  Soporta valores de tipo fecha y hora.


BOOLEAN: Variables que contienen TRUE, FALSE, o NULL y son usadas en condiciones lógicas PL/SQL.

EXCEPTION: Es usada para definir nombres de excepciones definidas por el usuario.

REF CURSOR: Es un apuntador a un cursor en memoria. Es muy util para retornar sets de registros a procedimientos.

RECORD: Define un tipo compuesto, una colección de otras escalas o tipos compuestos.

TABLE: Define un arreglo delimitado de PL/SQL.

RAW y LONG RAW: Son datos binarios. LONG RAW ha sido declarado obsoleto en favor del tipo de dato BLOB.

BLOB: Es mejor para objetos binarios grandes.

LONG y CLOB: Son utilizados para objetos de tipo carácter muy grandes, es mejor utilizar el CLOB.

BFILE: Es un archivo binario externo.


ROWID: Es una apuntador a una fila de una tabla.

jueves, 17 de septiembre de 2015

Query para obtener la lista del navegador por responsabilidad

El siguiente query nos brinda información de todo el contenido de formularios y menús que podemos encontrar por responsabilidad. Cada responsabilidad contiene asociado un solo menú y dentro se ubican submenus y funciones. 

select

 prompt

  FROM (SELECT menu_id,
               sub_menu_id,
               function_id,
               (select function_name
                  from fnd_form_functions_vl
                 where function_id = fme.function_id) func,
               LPAD(' ', (LEVEL - 1) * 2) || prompt prompt,
               entry_sequence
          FROM fnd_menu_entries_vl fme
         WHERE prompt IS NOT NULL
        CONNECT BY PRIOR sub_menu_id = menu_id
         START WITH menu_id =
                    (select menu_Id
                       from apps.FND_RESPONSIBILITY_VL
                      where responsibility_name = '&Responsibility')
                AND menu_id =
                    (select menu_Id
                       from apps.FND_RESPONSIBILITY_VL
                      where responsibility_name = '&Responsibility')
                AND prompt IS NOT NULL
                AND grant_flag = 'Y'
         ORDER BY entry_sequence) a
CONNECT BY PRIOR sub_menu_id = menu_id
 START WITH menu_id =
            (select menu_Id
               from apps.FND_RESPONSIBILITY_VL
              where responsibility_name = '&Responsibility')
        AND menu_id =
            (select menu_Id
               from apps.FND_RESPONSIBILITY_VL
              where responsibility_name = '&Responsibility')

        AND prompt IS NOT NULL;

martes, 15 de septiembre de 2015

JOINS - Consultas combinadas


Las consultas  combinadas o JOINS son el resultado de una operación de combinación realizada sobre dos o más tablas. Se pueden realizar las siguientes combinaciones:

Combinación interna (Inner Join)
La combinación interna nos permite mostrar los datos de dos o más tablas a través de una condición WHERE. Para realizar la consulta combinada entre dos tablas debemos escribir una consulta SELECT  en cuya clausula FROM escribiremos el nombre de las dos tablas, separados por comas, y una condición WHERE que obligue mediante un código clave la unión de datos en dos o mas tablas de la siguiente manera:

SELECT RCTA.TRX_NUMBER,
       RCTA.COMMENTS,
       RCTA.INVOICE_CURRENCY_CODE,,
       XDT.CODE,
       XDT.DETAIL_NAME
  FROM APPS.RA_CUSTOMER_TRX_ALL RCTA
 WHERE APPS.XX_DETAIL_TRX_ALL XDT
   AND RCTA.CUSTOMER_TRX_ID = XDT.CUSTOMER_TRX_ID 

Otra opción es utilizar la cláusula INNER JOIN. Su sintaxis es idéntica a la de una consulta SELECT, con la particularidad de que en la clausula FROM sólo aparece con una tabla o vista, añadiéndose el resto de tablas a través de cláusulas INNER JOIN de la siguiente manera:

SELECT RCTA.TRX_NUMBER,
       RCTA.COMMENTS,
       RCTA.INVOICE_CURRENCY_CODE,,
       XDT.CODE,
       XDT.DETAIL_NAME
  FROM APPS.RA_CUSTOMER_TRX_ALL RCTA
 INNER JOIN APPS.XX_DETAIL_TRX_ALL XDT

    ON RCTA.CUSTOMER_TRX_ID = XDT.CUSTOMER_TRX_ID

La cláusula INNER JOIN permite separar completamente las condiciones de combinación con otros criterios, cuando tenemos consultas que combinan nueve o diez tablas esto realmente se agradece. Sin embargo muchos programadores no son amigos de la cláusula INNER JOIN, la razón es que uno de los principales gestores de bases de datos, ORACLE, no la soportaba. Si nuestro programa debía trabajar sobre bases de datos ORACLE no podíamos utilizar INNER JOIN. A partir de la version ORACLE 9i oracle soporta la cláusula INNER JOIN.

Combinación externa Completa (Full Outer Join)
La cláusula FULL OUTER JOIN específica que se debería incluir en el resultado las filas que no cumplen con la condición ON, así como las filas que que cumplen la condición ON. En el campo donde no es coincidente la condición se coloca NULL.

SELECT RCTA.TRX_NUMBER,
       RCTA.COMMENTS,
       RCTA.INVOICE_CURRENCY_CODE,,
       XDT.CODE,
       XDT.DETAIL_NAME
  FROM APPS.RA_CUSTOMER_TRX_ALL RCTA
  FULL OUTER JOIN APPS.XX_DETAIL_TRX_ALL XDT
    ON RCTA.CUSTOMER_TRX_ID = XDT.CUSTOMER_TRX_ID

Combinación externa por la izquierda (Left Outer Join)
La combinación externa con LEFT  OUTER JOIN obtenemos todos los registros de en la tabla que situemos a la izquierda de la clausula JOIN. Devuelve las filas coincidentes más todas las filas de la tabla que se especifican a la izquierda de la palabra clave JOIN.

SELECT RCTA.TRX_NUMBER,
       RCTA.COMMENTS,
       RCTA.INVOICE_CURRENCY_CODE,,
       XDT.CODE,
       XDT.DETAIL_NAME
  FROM APPS.RA_CUSTOMER_TRX_ALL RCTA
  LEFT OUTER JOIN APPS.XX_DETAIL_TRX_ALL XDT
    ON RCTA.CUSTOMER_TRX_ID = XDT.CUSTOMER_TRX_ID


Combinación externa por la derecha (Right Outer Join)

Es lo contrario a Left Outer. La combinación con  RIGHT OUTER JOIN obtenemos el efecto contrario. Devuelve las filas coincidentes más todas las filas de la tabla que se especifican a la derecha de la palabra clave JOIN.

SELECT RCTA.TRX_NUMBER,
       RCTA.COMMENTS,
       RCTA.INVOICE_CURRENCY_CODE,,
       XDT.CODE,
       XDT.DETAIL_NAME
  FROM APPS.RA_CUSTOMER_TRX_ALL RCTA
  RIGHT OUTER JOIN APPS.XX_DETAIL_TRX_ALL XDT
    ON RCTA.CUSTOMER_TRX_ID = XDT.CUSTOMER_TRX_ID