USP_DATALIST_PAIDFINANCIALTRANSACTION1099DISTRIBUTION
Lists all 1099 distributions for a paid financial transaction.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@FINANCIALTRANSACTIONID | uniqueidentifier | IN | Input parameter indicating the context ID for the data list. |
Definition
Copy
CREATE procedure dbo.USP_DATALIST_PAIDFINANCIALTRANSACTION1099DISTRIBUTION
(
@FINANCIALTRANSACTIONID uniqueidentifier
)
as
set nocount on;
if exists(select FT.ID
from dbo.FINANCIALTRANSACTION FT
left outer join dbo.INVOICE I on I.ID = FT.ID
left outer join dbo.CREDITMEMO CM on CM.ID = FT.ID
where isnull(I.ZEROBALANCE, CM.ZEROBALANCE) = 1 and FT.ID = @FINANCIALTRANSACTIONID)
begin
declare @AMOUNT money = 0;
select @AMOUNT = isnull(I.DISCOUNTEDTOTAL, FT.TRANSACTIONAMOUNT)
from dbo.FINANCIALTRANSACTION FT
left outer join dbo.INVOICE I on I.ID = FT.ID
where FT.ID = @FINANCIALTRANSACTIONID;
select newid()
,(B.BOXNUMBER + ' - ' + B.DESCRIPTION) as [BOXNUMBER1099]
,S.ABBREVIATION 'STATE'
,ABS(SUM(FTAD.AMOUNT)) [AMOUNT]
,ABS(SUM(FTAD.AMOUNT)) / @AMOUNT * 100
,1 [PAID]
,1 [POSTSTATUSCODE]
from dbo.FINANCIALTRANSACTIONAPPLICATION1099DISTRIBUTION FTAD
inner join dbo.FINANCIALTRANSACTION1099BOXNUMBER as B on B.ID = FTAD.BOXNUMBER1099ID
left outer join dbo.STATE as S on S.ID = FTAD.STATEID
inner join dbo.FINANCIALTRANSACTIONAPPLICATION FTA on FTA.ID = FTAD.FINANCIALTRANSACTIONAPPLICATIONID
inner join dbo.BANKACCOUNTTRANSACTION BAT on BAT.ID = FTA.FINANCIALTRANSACTIONID and BAT.DELETED = 0 and BAT.STATUSCODE != 4
where FTA.TYPECODE = 0 and FTA.STATUSCODE = 1 and FTA.ID in (select FTA1.ID
from dbo.FINANCIALTRANSACTION FT
inner join dbo.FINANCIALTRANSACTIONSCHEDULE FTS on FTS.FINANCIALTRANSACTIONID = FT.ID
inner join dbo.FINANCIALTRANSACTIONAPPLICATION FTA1 on FTA1.FINANCIALTRANSACTIONSCHEDULEID = FTS.ID
where FT.ID = @FINANCIALTRANSACTIONID)
group by B.BOXNUMBER, B.DESCRIPTION, S.ABBREVIATION
end
else
begin
exec dbo.USP_DATALIST_FINANCIALTRANSACTION1099DISTRIBUTION @FINANCIALTRANSACTIONID
end