USP_DATALIST_ORDERPAYMENT
Returns a list of payments for an order.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@SALESORDERID | uniqueidentifier | IN | Input parameter indicating the context ID for the data list. |
Definition
Copy
CREATE procedure dbo.USP_DATALIST_ORDERPAYMENT(@SALESORDERID uniqueidentifier)
as
set nocount on;
select SALESORDERPAYMENT.ID,
SALESORDERPAYMENT.PAYMENTID,
REVENUE.DATE,
REVENUEPAYMENTMETHOD.PAYMENTMETHOD,
SALESORDERPAYMENT.AMOUNT,
case when REVENUEPAYMENTMETHOD.PAYMENTMETHODCODE = 0 then
''
when REVENUEPAYMENTMETHOD.PAYMENTMETHODCODE = 1 then
(select 'Check #' + CHECKNUMBER + ', ' + convert(nvarchar(20), dbo.UFN_DATE_FROMFUZZYDATE(CHECKDATE), 101)
from dbo.CHECKPAYMENTMETHODDETAIL
where ID = REVENUEPAYMENTMETHOD.ID)
when REVENUEPAYMENTMETHOD.PAYMENTMETHODCODE = 2 then
(select dbo.UFN_CREDITTYPECODE_GETDESCRIPTION(CREDITTYPECODEID) + ': ' + CREDITCARDPAYMENTMETHODDETAIL.CREDITCARDPARTIALNUMBER + ' - ' + CREDITCARDPAYMENTMETHODDETAIL.AUTHORIZATIONCODE
from dbo.CREDITCARDPAYMENTMETHODDETAIL
where ID = REVENUEPAYMENTMETHOD.ID)
when REVENUEPAYMENTMETHOD.PAYMENTMETHODCODE = 10 then
(select dbo.UFN_OTHERPAYMENTMETHODCODE_GETDESCRIPTION(OTHERPAYMENTMETHODCODEID)
from dbo.OTHERPAYMENTMETHODDETAIL
where ID = REVENUEPAYMENTMETHOD.ID)
end as 'DETAILS',
case when REVENUEPOSTED.ID is null then 0 else 1 end as ISPOSTED,
0 as ISSECURITYDEPOSIT
from dbo.REVENUE
inner join dbo.REVENUEPAYMENTMETHOD on REVENUE.ID = REVENUEPAYMENTMETHOD.REVENUEID
inner join dbo.SALESORDERPAYMENT on REVENUE.ID = SALESORDERPAYMENT.PAYMENTID
left join dbo.REVENUEPOSTED on REVENUEPOSTED.ID = REVENUE.ID
where SALESORDERPAYMENT.SALESORDERID = @SALESORDERID
union all
select RESERVATIONSECURITYDEPOSITPAYMENT.ID,
RESERVATIONSECURITYDEPOSITPAYMENT.PAYMENTID,
REVENUE.DATE,
REVENUEPAYMENTMETHOD.PAYMENTMETHOD,
RESERVATIONSECURITYDEPOSITPAYMENT.AMOUNT,
'Security deposit ' +
case when REVENUEPAYMENTMETHOD.PAYMENTMETHODCODE = 0 then
''
when REVENUEPAYMENTMETHOD.PAYMENTMETHODCODE = 1 then
(select case when dbo.UFN_DATE_FROMFUZZYDATE(CHECKDATE) is null then '' else 'Check #' + CHECKNUMBER + ', ' + convert(nvarchar(20), dbo.UFN_DATE_FROMFUZZYDATE(CHECKDATE), 101) end
from dbo.CHECKPAYMENTMETHODDETAIL
where ID = REVENUEPAYMENTMETHOD.ID)
when REVENUEPAYMENTMETHOD.PAYMENTMETHODCODE = 2 then
(select dbo.UFN_CREDITTYPECODE_GETDESCRIPTION(CREDITTYPECODEID) + ': ' + CREDITCARDPAYMENTMETHODDETAIL.CREDITCARDPARTIALNUMBER + ' - ' + CREDITCARDPAYMENTMETHODDETAIL.AUTHORIZATIONCODE
from dbo.CREDITCARDPAYMENTMETHODDETAIL
where ID = REVENUEPAYMENTMETHOD.ID)
when REVENUEPAYMENTMETHOD.PAYMENTMETHODCODE = 10 then
(select dbo.UFN_OTHERPAYMENTMETHODCODE_GETDESCRIPTION(OTHERPAYMENTMETHODCODEID)
from dbo.OTHERPAYMENTMETHODDETAIL
where ID = REVENUEPAYMENTMETHOD.ID)
end as 'DETAILS',
case when REVENUEPOSTED.ID is null then 0 else 1 end as ISPOSTED,
1 as ISSECURITYDEPOSIT
from dbo.REVENUE
inner join dbo.REVENUEPAYMENTMETHOD on REVENUE.ID = REVENUEPAYMENTMETHOD.REVENUEID
inner join dbo.RESERVATIONSECURITYDEPOSITPAYMENT on REVENUE.ID = RESERVATIONSECURITYDEPOSITPAYMENT.PAYMENTID
left join dbo.REVENUEPOSTED on REVENUEPOSTED.ID = REVENUE.ID
where RESERVATIONSECURITYDEPOSITPAYMENT.RESERVATIONID = @SALESORDERID