У меня следующий запрос:
select
ppdid.EXPENDITURE_ITEM_ID,
ppdid.DRAFT_INVOICE_NUM,
ppdid.BILL_AMOUNT,
ppdid.CREATION_DATE,
ppeia.EXPENDITURE_ITEM_DATE,
pppa.SEGMENT1 PROJECT_NUMBER,
ppdia.DRAFT_INVOICE_NUM,
ppdia.RA_INVOICE_NUMBER
from
PA.PA_DRAFT_INVOICE_DETAILS_ALL ppdid,
PA.PA_EXPENDITURE_ITEMS_ALL ppeia,
PA.PA_PROJECTS_ALL pppa,
PA.PA_DRAFT_INVOICES_ALL ppdia
where ppdid.EXPENDITURE_ITEM_ID = ppeia.EXPENDITURE_ITEM_ID
and ppdid.PROJECT_ID = pppa.PROJECT_ID
and ppdid.PROJECT_ID = ppdia.PROJECT_ID
--and ppdid.DRAFT_INVOICE_NUM = ppdia.DRAFT_INVOICE_NUM
and ( ppdid.DRAFT_INVOICE_NUM = ppdia.DRAFT_INVOICE_NUM
or ppdia.DRAFT_INVOICE_NUM = ppdid.ORIG_DRAFT_INVOICE_NUM
)
and pppa.SEGMENT1 = '123456' --fictive number
and ppdia.GL_PERIOD_NAME = '05-2020'
order by ppdid.DRAFT_INVOICE_NUM;
Проблема связана со счетом, который был создан в APR-2020 и зачислен в MAY-2020. Транзакции во всех таких случаях (исходный счет и счет-фактура в разные месяцы, И не перевыпущенный) не будут получены запросом, даже если я выберу условие pppdia.GL_PERIOD_NAME
.
Я попытался поставить (+)
на разных сторонах соединений, но результат тот же.
Есть идеи, как это обойти?
Спасибо, Алекс