UFN_POSTTOGLPROCESS_GETUNPOSTEDGLTRANSACTIONS_2_BULK
Return
Return Type |
---|
table |
Definition
Copy
CREATE function dbo.UFN_POSTTOGLPROCESS_GETUNPOSTEDGLTRANSACTIONS_2_BULK ()
returns table
as
return (
select distinct case JOURNALENTRY_EXT.TABLENAMECODE
when 0
then coalesce(JOURNALENTRY_EXT.LOGICALREVENUEID, FT.PARENTID, FINANCIALTRANSACTIONLINEITEM.FINANCIALTRANSACTIONID)
when 1
then FINANCIALTRANSACTIONLINEITEM.FINANCIALTRANSACTIONID
when 2
then JOURNALENTRY_EXT.REVENUEPURCHASEID
when 5
then JOURNALENTRY_EXT.LOGICALREVENUEID
when 6
then isnull(JOURNALENTRY_EXT.CREDITPAYMENTID, FINANCIALTRANSACTIONLINEITEM.FINANCIALTRANSACTIONID)
when 7
then JOURNALENTRY_EXT.LOGICALREVENUEID
when 8
then JOURNALENTRY_EXT.LOGICALREVENUEID
when 9
then JOURNALENTRY_EXT.LOGICALREVENUEID
when 10
then coalesce(JOURNALENTRY_EXT.LOGICALREVENUEID, FT.PARENTID, FINANCIALTRANSACTIONLINEITEM.FINANCIALTRANSACTIONID)
when 11
then coalesce(JOURNALENTRY_EXT.LOGICALREVENUEID, FT.PARENTID, FINANCIALTRANSACTIONLINEITEM.FINANCIALTRANSACTIONID)
when 12
then coalesce(JOURNALENTRY_EXT.LOGICALREVENUEID, FT.PARENTID, FINANCIALTRANSACTIONLINEITEM.FINANCIALTRANSACTIONID)
when 13
then coalesce(JOURNALENTRY_EXT.LOGICALREVENUEID, FT.PARENTID, FINANCIALTRANSACTIONLINEITEM.FINANCIALTRANSACTIONID)
else FINANCIALTRANSACTIONLINEITEM.FINANCIALTRANSACTIONID
end as REVENUEID
,JOURNALENTRY.ID as GLTRANSACTIONID
,JOURNALENTRY.TRANSACTIONTYPE
,GLACCOUNT.ACCOUNTNUMBER as ACCOUNT
,JOURNALENTRY_EXT.PROJECT
,JOURNALENTRY.TRANSACTIONAMOUNT as AMOUNT
,JOURNALENTRY.COMMENT as REFERENCE
,FINANCIALTRANSACTIONLINEITEM.ID FINANCIALTRANSACTIONLINEITEMID
,case FINANCIALTRANSACTIONLINEITEM.TYPECODE
when 1
then 1
else 0
end as ISREVERSAL
,case
when FTLI2.ID is not null
then 1
else 0
end as ISADJUSTED
,GLACCOUNT.PDACCOUNTSYSTEMID
from dbo.FINANCIALTRANSACTIONLINEITEM
inner join dbo.FINANCIALTRANSACTION FT on FT.ID = FINANCIALTRANSACTIONLINEITEM.FINANCIALTRANSACTIONID
inner join dbo.JOURNALENTRY on FINANCIALTRANSACTIONLINEITEM.ID = JOURNALENTRY.FINANCIALTRANSACTIONLINEITEMID
inner join dbo.JOURNALENTRY_EXT on JOURNALENTRY.ID = JOURNALENTRY_EXT.ID
inner join dbo.GLACCOUNT on JOURNALENTRY.GLACCOUNTID = GLACCOUNT.ID
left join dbo.FINANCIALTRANSACTIONLINEITEM FTLI2 on FINANCIALTRANSACTIONLINEITEM.ID = FTLI2.REVERSEDLINEITEMID
left join dbo.CREDITPAYMENT as CP on JOURNALENTRY_EXT.CREDITPAYMENTID = CP.ID -- CREDITPAYMENTMETHOD
left join dbo.RECONCILIATION as RECON on CP.RECONCILIATIONID = RECON.ID --CREDITPAYMENTMETHOD
left join dbo.CREDITITEM on JOURNALENTRY_EXT.CREDITITEMID = CREDITITEM.ID
left join dbo.CREDIT on CREDITITEM.CREDITID = CREDIT.ID
where FINANCIALTRANSACTIONLINEITEM.POSTSTATUSCODE = 1
and (
JOURNALENTRY_EXT.TABLENAMECODE in (
0
,1
,2
,5
,7
,8
,9
,10
,11
,12
,13
,14
)
or (
-- This is the only payment method that should be posted along with REVENUE post.
JOURNALENTRY_EXT.TABLENAMECODE = 6 -- CREDITGLDISTRIBUTION
and RECON.STATUSCODE = 3 -- Deposited
and CP.PAYMENTMETHODCODE = 10 -- Other Payment Method
and CP.OTHERPAYMENTMETHODCODEID in (
select ID
from dbo.NONDEPOSITABLEPAYMENTMETHOD
)
)
or (
-- discounts
JOURNALENTRY_EXT.TABLENAMECODE = 6 -- CREDITGLDISTRIBUTION
and CREDIT.ID is not null
and CREDITITEM.ID is not null
and CREDIT.TYPECODE != 0
and FINANCIALTRANSACTIONLINEITEM.TYPECODE != 99
)
)
)