USP_DATAFORMTEMPLATE_VIEW_CREDITMEMOPAGEDATA
The load procedure used by the view dataform template "Credit Memo Page Expression View Form"
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | The input ID parameter used to load the fields defined on the form. |
@DATALOADED | bit | INOUT | Output parameter indicating whether or not data was actually loaded. |
@VENDORNAME | nvarchar(100) | INOUT | Vendor name |
@VENDORID | uniqueidentifier | INOUT | Vendor ID |
@CREDITMEMONUMBER | nvarchar(60) | INOUT | Credit memo number |
@AMOUNT | money | INOUT | Credit memo amount |
@CREDITMEMODATE | datetime | INOUT | Credit memo date |
@IS1099VENDOR | bit | INOUT | Is 1099 vendor? |
@HAS1099INFO | bit | INOUT | Credit memo has 1099 info |
@ISLOCKED | bit | INOUT | Credit memo is locked |
@HASPAYMENTS | bit | INOUT | Credit memo has a payment |
@ISFULLYPAID | bit | INOUT | Credit memo is fully paid |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_VIEW_CREDITMEMOPAGEDATA
(
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@VENDORNAME nvarchar(100) = null output,
@VENDORID uniqueidentifier = null output,
@CREDITMEMONUMBER nvarchar(60) = null output,
@AMOUNT money = null output,
@CREDITMEMODATE datetime = null output,
@IS1099VENDOR bit = null output,
@HAS1099INFO bit = null output,
@ISLOCKED bit = null output
,@HASPAYMENTS bit = null output
,@ISFULLYPAID bit = null output
)
as
set nocount on;
-- be sure to set this, in case the select returns no rows
set @DATALOADED = 0;
-- populate the output parameters, which correspond to fields on the form. Note that
-- we set @DATALOADED = 1 to indicate that the load was successful. Otherwise, the system
-- will display a "no data loaded" message.
select top 1
@DATALOADED = 1,
@VENDORNAME = C.NAME,
@VENDORID = C.ID,
@CREDITMEMONUMBER = F.USERDEFINEDID,
@AMOUNT = F.TRANSACTIONAMOUNT,
@CREDITMEMODATE = F.[DATE],
@IS1099VENDOR = PV.INCLUDEIN1099,
@ISLOCKED = case when CM.DISBURSEMENTPROCESSID is null then 0 else 1 end
,@ISFULLYPAID = case when CM.BALANCE = 0 then 1 else 0 end
from dbo.CREDITMEMO CM
inner join dbo.FINANCIALTRANSACTION F on F.ID = CM.ID and F.TYPECODE = 102
inner join dbo.CONSTITUENT C on F.CONSTITUENTID = C.ID
inner join dbo.VENDOR PV on PV.ID = C.ID
where F.ID = @ID
set @HASPAYMENTS = dbo.UFN_PAYABLES_HASPAYMENTS(@ID);
if exists(select * from dbo.FINANCIALTRANSACTION1099DISTRIBUTION where FINANCIALTRANSACTIONID = @ID)
SET @HAS1099INFO = 1;
return 0;