USP_DATALIST_REFUNDBENEFITGLDISTRIBUTION
A datalist of the refund benefit GL distribution.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | Input parameter indicating the context ID for the data list. |
Definition
Copy
CREATE procedure dbo.USP_DATALIST_REFUNDBENEFITGLDISTRIBUTION(
@ID uniqueidentifier
)
as
set nocount on;
if exists (select top 1 [ID] from dbo.[CREDITPAYMENT] where [CREDITID] = @ID and [REVENUEID] is not null)
begin
if exists(select top 1 1 from dbo.UFN_REFUND_GETPRORATEDSPLITS(@ID) as [SPLITS] inner join dbo.REVENUEBENEFIT_EXT RE on RE.REVENUESPLITID = SPLITS.REVENUESPLITID)
select
J.TRANSACTIONTYPE,
G.ACCOUNTNUMBER as ACCOUNT,
J.BASEAMOUNT as AMOUNT,
J.COMMENT as REFERENCE
from dbo.UFN_REFUND_GETPRORATEDSPLITS(@ID) as [SPLITS]
inner join dbo.REVENUEBENEFIT_EXT RE on RE.REVENUESPLITID = SPLITS.REVENUESPLITID
inner join dbo.FINANCIALTRANSACTIONLINEITEM L on L.ID = RE.ID
inner join dbo.FINANCIALTRANSACTIONLINEITEM L2 on L2.REVERSEDLINEITEMID = L.ID
inner join dbo.JOURNALENTRY J on J.FINANCIALTRANSACTIONLINEITEMID = L2.ID
inner join dbo.JOURNALENTRY_EXT X on J.ID = X.ID
inner join dbo.GLACCOUNT G on J.GLACCOUNTID = G.ID
where X.tablenamecode = 0
order by J.TRANSACTIONTYPE, G.ACCOUNTNUMBER desc;
else
select
[REVERSED].[TRANSACTIONTYPE],
[REVERSED].[ACCOUNT],
[REVERSED].[AMOUNT],
[REVERSED].[REFERENCE]
from dbo.UFN_REFUND_GETPRORATEDSPLITS(@ID) as [SPLITS]
inner join dbo.[REVENUESPLIT] on [REVENUESPLIT].[ID] = [SPLITS].[REVENUESPLITID]
inner join dbo.[BENEFITGLDISTRIBUTION] on [BENEFITGLDISTRIBUTION].[REVENUEID] = [REVENUESPLIT].[REVENUEID]
inner join dbo.[GLTRANSACTION] as [ORIGINAL] on [BENEFITGLDISTRIBUTION].[GLTRANSACTIONID] = [ORIGINAL].[ID]
inner join dbo.[GLTRANSACTION] as [REVERSED] on [REVERSED].[REVERSEDGLTRANSACTIONID] = [ORIGINAL].[ID]
group by [BENEFITGLDISTRIBUTION].[ID], [REVERSED].[TRANSACTIONTYPE], [REVERSED].[ACCOUNT], [REVERSED].[AMOUNT], [REVERSED].[REFERENCE]
order by [REVERSED].[TRANSACTIONTYPE], [REVERSED].[ACCOUNT] desc;
end
else
begin
select
[REVERSED].[TRANSACTIONTYPE],
[REVERSED].[ACCOUNT],
[REVERSED].[AMOUNT],
[REVERSED].[REFERENCE]
from dbo.[CREDITPAYMENT]
inner join dbo.[REVENUESPLIT] on [REVENUESPLIT].[ID] = [CREDITPAYMENT].[REVENUESPLITID]
inner join dbo.[BENEFITGLDISTRIBUTION] on [BENEFITGLDISTRIBUTION].[REVENUEID] = [REVENUESPLIT].[REVENUEID]
inner join dbo.[GLTRANSACTION] as [ORIGINAL] on [BENEFITGLDISTRIBUTION].[GLTRANSACTIONID] = [ORIGINAL].[ID]
inner join dbo.[GLTRANSACTION] as [REVERSED] on [REVERSED].[REVERSEDGLTRANSACTIONID] = [ORIGINAL].[ID]
where [CREDITPAYMENT].[CREDITID] = @ID
order by [REVERSED].[TRANSACTIONTYPE], [REVERSED].[ACCOUNT] desc;
end