USP_REPORT_DEFAULTREFUNDITEMIZEDRECEIPT_GETPAYMENTINFORMATION
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@CREDITID | uniqueidentifier | IN |
Definition
Copy
create procedure [dbo].[USP_REPORT_DEFAULTREFUNDITEMIZEDRECEIPT_GETPAYMENTINFORMATION]
(
@CREDITID uniqueidentifier
)
as
set nocount on;
set transaction isolation level read uncommitted;
select
CREDITPAYMENT.ID,
CREDITPAYMENT.ID PAYMENTID,
CREDITPAYMENT.AMOUNT AMOUNT,
case CREDITPAYMENT.PAYMENTMETHODCODE
when 0 then -- Cash
'Refund Cash'
when 1 then -- Check
'Refund Check'
when 2 then -- Credit card
'Refund ' + dbo.UFN_CREDITTYPECODE_GETDESCRIPTION(CREDITTYPECODEID)
when 10 then -- Other
'Refund ' + dbo.UFN_OTHERPAYMENTMETHODCODE_GETDESCRIPTION(CREDITPAYMENT.OTHERPAYMENTMETHODCODEID)
end PAYMENTTYPE,
case CREDITPAYMENT.PAYMENTMETHODCODE
when 0 then -- Cash
''
when 1 then -- Check
CHECKPAYMENTMETHODDETAIL.CHECKNUMBER
when 2 then -- Credit card
'************' + CREDITCARDPAYMENTMETHODDETAIL.CREDITCARDPARTIALNUMBER
when 10 then -- Other
''
end PAYMENTTYPEDETAIL,
case CREDITPAYMENT.PAYMENTMETHODCODE
when 0 then -- Cash
3
when 1 then -- Check
0
when 2 then -- Credit card
1
when 10 then -- Other
2
end SORTFIELD
from
dbo.CREDITPAYMENT
left outer join
dbo.FINANCIALTRANSACTIONLINEITEM as REFUNDEDLI on REFUNDEDLI.ID = CREDITPAYMENT.REVENUESPLITID and REFUNDEDLI.DELETEDON is null and REFUNDEDLI.TYPECODE <> 1 -- Reversal
left outer join
dbo.REVENUEPAYMENTMETHOD on REVENUEPAYMENTMETHOD.REVENUEID = isnull(CREDITPAYMENT.REVENUEID, REFUNDEDLI.FINANCIALTRANSACTIONID)
left outer join
dbo.CHECKPAYMENTMETHODDETAIL on REVENUEPAYMENTMETHOD.PAYMENTMETHODCODE = 1 and CHECKPAYMENTMETHODDETAIL.ID = REVENUEPAYMENTMETHOD.ID
left outer join
dbo.CREDITCARDPAYMENTMETHODDETAIL on REVENUEPAYMENTMETHOD.PAYMENTMETHODCODE = 2 and CREDITCARDPAYMENTMETHODDETAIL.ID = REVENUEPAYMENTMETHOD.ID
where
CREDITPAYMENT.CREDITID = @CREDITID
order by
SORTFIELD, PAYMENTTYPE, CREDITPAYMENT.AMOUNT;
return 0;