Ligação GL X PAC X RI

Perguntas relacionadas a questões técnicas do Oracle EBS. Criação de Concorrentes, Value Sets, Alerts, Forms Personalizations, Configurações, etc
Responder
rafaelsb21
Rank: Estagiário Sênior
Rank: Estagiário Sênior
Mensagens: 10
Registrado em: Dom, 01 Nov 2009 11:28 pm
Localização: RS

Bom dia!

tenho uma nota que saiu do AR e tenho os dados dela no INV, no GL e PAC, porém quero chegar na linha da REC_INVOICES desta nota. Tenho o Transaction_id do item que saiu da origem. Como poderia chegar no número da nota e os demais dados no RI?

Obrigado pela ajuda.
Avatar do usuário
madmax
Rank: DBA Pleno
Rank: DBA Pleno
Mensagens: 293
Registrado em: Qua, 13 Dez 2006 5:02 pm
Localização: São Paulo
Contato:
________________________________
Douglas - Madmax.

Bom dia Rafael.

Cara seria mais facil se você colocar seu select para nós darmos uma olhada, mas ou tentar te ajudar a chegar o RI.

Bem você pode usar estes join do INV para chegar na tabela REC_INVOICE_LINES

Selecionar tudo

  AND RIL.ITEM_ID                  = MSI.INVENTORY_ITEM_ID(+) 
   AND RIL.ORGANIZATION_ID          = MSI.ORGANIZATION_ID(+)
e também esse join para chegar ao REC_ENTRY_OPERATIONS

Selecionar tudo

MPA.ORGANIZATION_ID          = REO.ORGANIZATION_ID
portanto seria + ou - assim

Selecionar tudo

select colunas 
from 
FROM apps.REC_ENTRY_OPERATIONS           REO
     , apps.MTL_PARAMETERS_ALL_V           MPA
     , apps.REC_INVOICES                   RI 
     , apps.REC_INVOICE_LINES              RIL
    , apps.MTL_SYSTEM_ITEMS_B             MSI
WHERE MPA.ORGANIZATION_ID          = REO.ORGANIZATION_ID
   AND REO.ORGANIZATION_ID          = RI.ORGANIZATION_ID
   AND REO.OPERATION_ID             = RI.OPERATION_ID
   AND REO.LOCATION_ID              = RI.LOCATION_ID
   AND RI.INVOICE_ID                = RIL.INVOICE_ID
 AND RIL.ITEM_ID                  = MSI.INVENTORY_ITEM_ID(+) 
   AND RIL.ORGANIZATION_ID          = MSI.ORGANIZATION_ID(+)
Espero ter ajudo.
rafaelsb21
Rank: Estagiário Sênior
Rank: Estagiário Sênior
Mensagens: 10
Registrado em: Dom, 01 Nov 2009 11:28 pm
Localização: RS

Douglas, eu tenho um select inicial que roda e me traz o transaction_id da mtl_material_transactions. A partir disso, rodo o select abaixo que me traz outras informações do GL, PAC e INV. A partir dele quero buscar as notas ou a nota do RI:

Selecionar tudo

SELECT gh.PERIOD_NAME
                   ,gcc.segment1  || '.'|| gcc.segment2  || '.'|| gcc.segment3 || '.'|| gcc.segment4  || '.'||
                    gcc.segment5  || '.'|| gcc.segment6  || '.'|| gcc.segment7 || '.'|| gcc.segment8            Conta
                   ,ch.ORGANIZATION_ID
                   ,Decode ( wdj2.WIP_ENTITY_NAME, NULL, wdj.WIP_ENTITY_NAME, wdj2.WIP_ENTITY_NAME )            Nro_OP
                   ,gl.ACCOUNTED_DR      DR_GL
                   ,gl.ACCOUNTED_CR      CR_GL
                   ,cl.ACCOUNTED_DR      DR_PAC
                   ,cl.ACCOUNTED_CR      CR_PAC
                   ,gh.NAME
                   ,gh.DESCRIPTION       DESC_A
                   ,gl.DESCRIPTION       DESC_B
                   ,ch.DESCRIPTION       DESC_C
                   ,cl.DESCRIPTION       DESC_D 
                   ,gh.EXTERNAL_REFERENCE
                   ,gh.JE_CATEGORY
                   ,gh.JE_SOURCE
                   ,ch.aí_CATEGORY
                   ,ch.ACCT_EVENT_SOURCE_TABLE
                   ,mmt.TRANSACTION_TYPE_ID
                   ,mtt.TRANSACTION_TYPE_NAME
                   ,mmt.TRANSACTION_SOURCE_TYPE_ID
                   ,mst.TRANSACTION_SOURCE_TYPE_NAME
                   ,mmt.TRANSACTION_SOURCE_ID
                   ,gh.JE_BATCH_ID
                   ,GH.JE_HEADER_ID
                   ,gl.JE_LINE_NUM
                   ,gl.GL_SL_LINK_ID
                   ,cl.aí_header_id
                   ,cl.aí_line_id
                --   ,cl.source_id
                --   ,mmt.TRANSACTION_SOURCE_ID
                   ,mmt.transaction_id
                   ,cl.wip_entity_id
                   ,gh.STATUS
                   ,gh.actual_flag
                   ,ch.COST_GROUP_ID
                   ,ch.COST_TYPE_ID
            --       ,ch.PERIOD_NAME
                   ,ch.ACCOUNTING_DATE
                   ,ch.ACCOUNTING_ERROR_CODE
                   ,ch.GL_TRANSFER_FLAG
                   ,ch.GL_REVERSAL_FLAG
            --       ,wdj.WIP_ENTITY_NAME
                   ,wdj.STATUS_TYPE_DISP
                   ,wdj.creation_date
                   ,wdj.DATE_COMPLETED
                   ,wdj.DATE_CLOSED
               --    ,wdj2.WIP_ENTITY_NAME
                --   ,wdj2.STATUS_TYPE_DISP
                --   ,wdj2.creation_date
             --      ,wdj2.DATE_COMPLETED
                   ,wdj2.DATE_CLOSED                 Data_Fech
                   --,cl.*
            FROM apps.cst_aí_headers              ch
                ,apps.CST_aí_LINES                cl
                ,apps.gl_code_combinations        gcc
                ,apps.MTL_MATERIAL_TRANSACTIONS   mmt
                ,apps.wip_discrete_jobs_v         wdj
                ,apps.wip_discrete_jobs_v         wdj2
                ,apps.gl_je_headers               gh
                ,apps.gl_je_lines                 gl
           --     ,apps.po_headers_all              pha
                ,apps.MTL_TXN_SOURCE_TYPES        mst
                ,apps.MTL_TRANSACTION_TYPES       mtt
            WHERE
              ---ch.organization_id                = 99
              ---and  ch.aí_HEADER_ID                   = 20705694
              ---and  ch.creation_date               > '01-AUG-2009'
              ---and  ch.ACCOUNTING_DATE               >= '01-AUG-2009'
              ---and  ch.ACCOUNTING_DATE               <  '01-SEP-2009'
              ---     ch.aí_HEADER_ID                  between 20700000 and 20709000                        ---IN (20705694, 20705732)
                 ---
                  wdj.organization_id            (+)  = mmt.organization_id
              and wdj.WIP_ENTITY_ID              (+)  = mmt.TRANSACTION_SOURCE_ID
              and mtt.TRANSACTION_TYPE_ID        (+)  = mmt.TRANSACTION_TYPE_ID
              and mst.TRANSACTION_SOURCE_TYPE_ID (+)  = mmt.TRANSACTION_SOURCE_TYPE_ID
              AND mmt.TRANSACTION_ID             (+)  = cl.source_id
              AND wdj2.organization_id           (+)  = cl.reference2    ----ch.organization_id
              AND wdj2.WIP_ENTITY_ID             (+)  = cl.wip_entity_id
              and ch.aí_HEADER_ID                     = cl.aí_HEADER_ID
            --  and ch.aí_header_id                (+)  = pha.PO_HEADER_ID
              and cl.code_combination_id         (+)  = gl.code_combination_id
              and cl.GL_SL_LINK_ID               (+)  = gl.GL_SL_LINK_ID
              AND gh.actual_flag                      = 'A'
              and gh.je_header_id                     = gl.je_header_id
              and gl.code_combination_id              = gcc.code_combination_id
              and mst.TRANSACTION_SOURCE_TYPE_NAME = 'Internal order'
             -- AND gcc.segment2                        = '2008'
              AND gcc.segment3                        = '105311'
              and mmt.TRANSACTION_ID = 560167968;
Obrigado pela ajuda inicial.
Avatar do usuário
madmax
Rank: DBA Pleno
Rank: DBA Pleno
Mensagens: 293
Registrado em: Qua, 13 Dez 2006 5:02 pm
Localização: São Paulo
Contato:
________________________________
Douglas - Madmax.

Rafael com item_id do Item você consegue buscar o numero da NOTA e o numero do recebimento.

Fiz um exemplo simples e so modificar o select para sua necessidade:


[

Selecionar tudo

SELECT DISTINCT REO.OPERATION_ID "NUMERO DO RI",
                RI.INVOICE_NUM   "NUMERO DA NOTA"
  FROM apps.REC_ENTRY_OPERATIONS REO,
       apps.REC_INVOICES         RI,
       apps.REC_INVOICE_LINES    RIL,
       apps.MTL_SYSTEM_ITEMS_B   MSI
 WHERE REO.ORGANIZATION_ID = RI.ORGANIZATION_ID
   AND REO.OPERATION_ID = RI.OPERATION_ID
   AND REO.LOCATION_ID = RI.LOCATION_ID
   AND RI.INVOICE_ID = RIL.INVOICE_ID
   AND RIL.ITEM_ID = MSI.INVENTORY_ITEM_ID(+)
   AND RIL.ORGANIZATION_ID = MSI.ORGANIZATION_ID(+)
   AND TRUNC(REO.GL_DATE) between TO_DATE('01-MAR-2009', 'DD-MON-RRRR') and
       TO_DATE('31-MAR-2009', 'DD-MON-RRRR')
   AND REO.REVERSION_FLAG is null
   AND MSI.INVENTORY_ITEM_ID = 22143
 order by 1

Qualquer coisa posta aí

Abs.
rafaelsb21
Rank: Estagiário Sênior
Rank: Estagiário Sênior
Mensagens: 10
Registrado em: Dom, 01 Nov 2009 11:28 pm
Localização: RS

Este teu select me ajudou, eu adaptei ele, porém não queria utilizar data. Eu incluí a data nele com o id do item e trouxe o numero da nota do RI. Tu sabe que lá pela GL_JE_LINES, no campo reference_1, aquivale ao operation_id da rec_invoices?
rafaelsb21
Rank: Estagiário Sênior
Rank: Estagiário Sênior
Mensagens: 10
Registrado em: Dom, 01 Nov 2009 11:28 pm
Localização: RS

Douglas, eu incluí a MTL_MATERIAL_TRANSACTIONS neste teu select fazendo join com a inventory_item_id da MTL_SYSTEM_ITEMS_B. Então filtrei pelo organization_id da REC_INVOICES, o transaction_id da MTL_MATERIAL_TRANSACTION e o inventory_item_id. Me retornou somente uma linha, ou seja, uma nota fiscal que consta na REC_INVOICES. Só não validei com a nota da origem para verificar se é ela mesmo.
rafaelsb21
Rank: Estagiário Sênior
Rank: Estagiário Sênior
Mensagens: 10
Registrado em: Dom, 01 Nov 2009 11:28 pm
Localização: RS

Naquele teu último select tem data. Eu não queria utilizar uma data, embora seja parâmetro do meu relatório para o usuário. Eu fiz o teste sem a data e ele traz outras notas.
Avatar do usuário
madmax
Rank: DBA Pleno
Rank: DBA Pleno
Mensagens: 293
Registrado em: Qua, 13 Dez 2006 5:02 pm
Localização: São Paulo
Contato:
________________________________
Douglas - Madmax.

Rafael,

No meu select tem data sim REO.GL_DATE Data GL que esta na tela de ENTRADA DE OPERAÇÕES FISCAIS no RI.

O Paremetros e relevante você deve discutir com o usuario qual o melhor parametro para o seu resultado do Relatorio.

Abs.
rafaelsb21
Rank: Estagiário Sênior
Rank: Estagiário Sênior
Mensagens: 10
Registrado em: Dom, 01 Nov 2009 11:28 pm
Localização: RS

Oi Douglas, veja se tu consegue me dar uma dica: eu estou fazendo um relatório de notas de transferência entre filiais mas que estão em trânsito, ou seja, saiu da filial origem e ainda não chegou no INV ou RI no destino. Lá no AR, para identificar as notas de transferências, tu iria somente pela RA_CUSTOMER_TRX_ALL? Tu já fez algo parecido?

valeu a ajuda.
Rafael
Avatar do usuário
madmax
Rank: DBA Pleno
Rank: DBA Pleno
Mensagens: 293
Registrado em: Qua, 13 Dez 2006 5:02 pm
Localização: São Paulo
Contato:
________________________________
Douglas - Madmax.

Rafael,

Vamos lá bem eu ainda não fiz um relatório de notas de transferência entre filiais, pelo que eu sei essa tipo de tranferencia e feita atraves de uma requisição interna, mas depende muito de cada empresa né.

Bem vou dar uma dica que custumo seguir antes de fazer um Relatorio no EBS:


1º O Mais importante de tudo o Select principal você deve ter um select principal ou pelo menos um select que traga a maioria das informações o resto pode ser por um outro select via cursor.

2º O usuario deve fazer um layout em excel com as colunas e tudo.

3º definir os parametrros para o filtrar os relatorio.

4º Se possivel o Usuario deve informar onde estão as informações no Oracle EBS muitas vezes eles não sabem aí devemos nos virar.

Bem agora esse seu Relatorio esta meio sinistro todas as NFF passam por RA_CUSTOMER_TRX_ALL depende do Status também, sejá mais claro quem sabe podemos te ajudar mais.


Abraços.
rafaelsb21
Rank: Estagiário Sênior
Rank: Estagiário Sênior
Mensagens: 10
Registrado em: Dom, 01 Nov 2009 11:28 pm
Localização: RS

Douglas, tu já fez algo do tipo, apartir de uma requisição interna(pedido de transferência de mercadorias) entre filiais, chega na filial origem, passa no OM, através de um pedido e chega no AR para a emissão da nota. Na filial destino, é dada entrada no RI desta nota.

Eu estou tentando encontrar essa requisição interna correta que possa ligar ou no OM ou no AR. Já fez algo parecido ou saberia dizer uma tabela dessa requisição interna?

valeu pela ajuda cara,
Rafael
Avatar do usuário
madmax
Rank: DBA Pleno
Rank: DBA Pleno
Mensagens: 293
Registrado em: Qua, 13 Dez 2006 5:02 pm
Localização: São Paulo
Contato:
________________________________
Douglas - Madmax.

Fala Rafael.

Eu numca fizalgo do tipo mas achei interessante vou tentar dar o caminho das pedras para você mano.

Podemos usar a seguinte consulta para encontrar todas as requisições internas que foram criadas no select abaixo:

Selecionar tudo

SELECT rqha.segment1 "Requisition Number"
, rqla.line_num "Line Number"
, rqla.requisition_header_id "Requisition Header ID"
, rqla.requisition_line_id "Requisition Line ID"
, rqla.item_id "Inventory item ID"
, rqla.unit_meas_lookup_code "Unit Of Measure"
, rqla.unit_price "Unit Price"
, rqla.quantity "Quantity"
, rqla.quantity_cancelled "Quantity Cancelled"
, rqla.quantity_delivered "Quantity Delivered"
, rqla.cancel_flag "Cancelled"
, rqla.source_type_code "Source Type"
, rqla.source_organization_id "Source Organization ID"
, rqla.destination_organization_id "Destination Organization ID"
, rqha.transferred_to_oe_flag "Transferred to OE Flag"
FROM po_requisition_lines_all rqla
, po_requisition_headers_all rqha
WHERE rqla.requisition_header_id = rqha.requisition_header_id
AND rqla.source_type_code = 'INVENTORY'
AND rqla.source_organization_id IS NOT NULL
AND NOT EXISTS ( SELECT 'existing internal order'
FROM oe_order_lines_all line
WHERE line.source_document_line_id =
rqla.requisition_line_id
AND line.source_document_type_id = 10)
ORDER BY rqha.requisition_header_id
, rqla.line_num
Existe um site muito bom que explica o procedimento de requisições internas no PO muito bom também.

http://www.virginia.edu/integratedsyste ... V5030U.htm

Espero ter ajuda..

Quando conseguir posta aí.


Falow.
rafaelsb21
Rank: Estagiário Sênior
Rank: Estagiário Sênior
Mensagens: 10
Registrado em: Dom, 01 Nov 2009 11:28 pm
Localização: RS

Douglas, tudo bem, tuas dicas anteriores foram interessantes! O meu relatório está quase concluído, porém agora entrei numa casca no final dele.
Existem dois campos no final do meu layout que diz: entrada em trânsito e saída em trânsito, ou seja, ao listar a linha da nota, tenho que mostrar o valor no PAC. Tu já vinculou uma nota do RI ao PAC? Além do operation_id da rec_invoices ligar no reference_1 da gl_je_lines, tem mais alguma ligação(se é que tu já trabalhou nesta parte).

valeu a ajuda.

Rafael
Avatar do usuário
madmax
Rank: DBA Pleno
Rank: DBA Pleno
Mensagens: 293
Registrado em: Qua, 13 Dez 2006 5:02 pm
Localização: São Paulo
Contato:
________________________________
Douglas - Madmax.

Olá Rafael.

Eu nunca trabalhei com PAC – Package Average Cost, mas acho que não tem relacionamento direto com o RI não amigo.

Vou te dar mais uma dica muito importante e que sempre uso.

Com a senha do apps podemos ir no examine da tela e você escolhe no bloco = system e campo = last query.

Com isso conseguimos ver o ultimo select executado da tela do EBS vem relacionamento e tudo, ajuda bastante na hora de desenvolver relatorios novos.

Outra dica procure um report core sobre PAC em Programas Concorrentes e verifique o select te ajuda, porque existem muitos relatorios core no sistema.

Quando terminar o seu relatorio envia para nós OK.

Abs.
rafaelsb21
Rank: Estagiário Sênior
Rank: Estagiário Sênior
Mensagens: 10
Registrado em: Dom, 01 Nov 2009 11:28 pm
Localização: RS

Oi Douglas, tudo bem cara....

sobre aquele relatório eu fiz quase todo, porém tem duas colunas no final dele, sobre saldo do PAC que nem o Analista de Negócios sabe explicar. Eu pedi para ele falar com o usuário para saber realmente o que ele procura saber com o saldo do PAC neste relatório. Lembra, tu me deu umas dicas do RI e INV neste relatório de mercadorias em trânsito. Ele sai de uma filial de origem e é transferido para uma filial de destino. A idéia do relatório é listar as mercadorias que não chegaram ainda no destino.
Douglas, tu conhece PAC? ou INV?

Tem msn cara? Podemos trocar idéias sobre EBS. O meu msn é rafaelsb21@hotmail.com

abraço,
Rafael
Avatar do usuário
madmax
Rank: DBA Pleno
Rank: DBA Pleno
Mensagens: 293
Registrado em: Qua, 13 Dez 2006 5:02 pm
Localização: São Paulo
Contato:
________________________________
Douglas - Madmax.

Olá Rafael

Conheço bem o INV qual sua duvida? explique melhor para que eu ou outra pessoa te ajude aqui mesmo no forum.

Abs.
rafaelsb21
Rank: Estagiário Sênior
Rank: Estagiário Sênior
Mensagens: 10
Registrado em: Dom, 01 Nov 2009 11:28 pm
Localização: RS

Tu tem algum select que faça a ligação do INV com o PAC? Quando acontece a baixa da quantidade no INV, no PAC deve ocorrer um lançamento do valor.

Tem algum manual do INV ou PAC?

valeu,
Rafael
Avatar do usuário
madmax
Rank: DBA Pleno
Rank: DBA Pleno
Mensagens: 293
Registrado em: Qua, 13 Dez 2006 5:02 pm
Localização: São Paulo
Contato:
________________________________
Douglas - Madmax.

Me envia um e-mail no douglasmad3@hotmail.com vou te mandar um manual.
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 10 visitantes