UFN_POSTTOGLPROCESS_GETUNPOSTEDGLTRANSACTIONS_2
Gets all unposted GL transaction rows for account system.
Return
Return Type |
---|
table |
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@POSTTOGLPROCESSID | uniqueidentifier | IN |
Definition
Copy
CREATE function dbo.UFN_POSTTOGLPROCESS_GETUNPOSTEDGLTRANSACTIONS_2(@POSTTOGLPROCESSID uniqueidentifier)
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
,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
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
inner join dbo.POSTTOGLPROCESS on GLACCOUNT.PDACCOUNTSYSTEMID = POSTTOGLPROCESS.PDACCOUNTSYSTEMID
left join dbo.FINANCIALTRANSACTIONLINEITEM FTLI2
on FTLI2.FINANCIALTRANSACTIONLINEITEMADJUSTMENTID = FINANCIALTRANSACTIONLINEITEM.FINANCIALTRANSACTIONLINEITEMADJUSTMENTID
and FTLI2.TYPECODE = 1
left outer join dbo.CREDITPAYMENT as CP on JOURNALENTRY_EXT.CREDITPAYMENTID = CP.ID -- CREDITPAYMENTMETHOD
left outer join dbo.RECONCILIATION as RECON on CP.RECONCILIATIONID = RECON.ID --CREDITPAYMENTMETHOD
left outer join dbo.CREDITITEM on JOURNALENTRY_EXT.CREDITITEMID = CREDITITEM.ID
left outer join dbo.CREDIT on CREDITITEM.CREDITID = CREDIT.ID
where FINANCIALTRANSACTIONLINEITEM.POSTSTATUSCODE = 1
and POSTTOGLPROCESS.ID = @POSTTOGLPROCESSID
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
or (CP.PAYMENTMETHODCODE = 10 -- Other Payment Method
and CP.OTHERPAYMENTMETHODCODEID in (select ID from dbo.NONDEPOSITABLEPAYMENTMETHOD))
or (FT.TYPECODE=23 and FT.TRANSACTIONAMOUNT=0)) -- Refunds with amount 0
)
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
)
)
)