USP_DATAFORMTEMPLATE_EDITLOAD_RECONCILIATIONCLOSESHIFT2
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | |
@DATALOADED | bit | INOUT | |
@TSLONG | bigint | INOUT | |
@STARTINGCASH | money | INOUT | |
@ACTUALCASH | money | INOUT | |
@COMMENT | nvarchar(max) | INOUT | |
@OTHERRECEIPTS | xml | INOUT | |
@DATE | date | INOUT | |
@USERID | uniqueidentifier | INOUT | |
@WORKSTATIONID | uniqueidentifier | INOUT | |
@CASHDENOMINATIONS | xml | INOUT | |
@COINDENOMINATIONS | xml | INOUT | |
@CHECKNUM | int | INOUT | |
@CHECKTOTAL | money | INOUT | |
@CLOSEDRAWERCONFIGURATIONOPTIONCODE | tinyint | INOUT | |
@STATUSCODE | tinyint | INOUT |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_RECONCILIATIONCLOSESHIFT2(
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@TSLONG bigint = 0 output,
@STARTINGCASH money = null output,
@ACTUALCASH money = null output,
@COMMENT nvarchar(max) = null output,
@OTHERRECEIPTS xml = null output,
@DATE date = null output,
@USERID uniqueidentifier = null output,
@WORKSTATIONID uniqueidentifier = null output,
@CASHDENOMINATIONS xml = null output,
@COINDENOMINATIONS xml = null output,
@CHECKNUM int = null output,
@CHECKTOTAL money = null output,
@CLOSEDRAWERCONFIGURATIONOPTIONCODE tinyint = null output,
@STATUSCODE tinyint = null output
)
as
set nocount on;
select @CLOSEDRAWERCONFIGURATIONOPTIONCODE = CONFIGURATIONOPTIONCODE from dbo.CLOSEDRAWERCONFIGURATION;
set @DATALOADED = 0;
set @TSLONG = 0;
select
@DATALOADED = 1,
@TSLONG = TSLONG,
@STARTINGCASH = STARTINGCASH,
@ACTUALCASH = ACTUALCASH,
@DATE = RECONCILIATIONDATE,
@COMMENT = COMMENT,
@STATUSCODE = RECONCILIATION.STATUSCODE,
@USERID = RECONCILIATION.APPUSERID
from dbo.RECONCILIATION
where ID = @ID
if @DATALOADED = 1 begin
declare @TEMPUSERID uniqueidentifier;
if @CLOSEDRAWERCONFIGURATIONOPTIONCODE = 0 begin -- User
set @TEMPUSERID = @USERID;
end
select @OTHERRECEIPTS = (
select ID, PAYMENTMETHODCODE, PAYMENTMETHOD, EXPECTED, ISREFUND, TOTALAMOUNT, CREDITTYPECODEID, OTHERPAYMENTMETHODCODEID
from dbo.UFN_RECONCILIATION_GETOTHERRECEIPTS_WITH_REFUNDDETAIL(@ID, @TEMPUSERID, @WORKSTATIONID)
where PAYMENTMETHODCODE != 1 or ISREFUND = 1
order by ISREFUND, PAYMENTMETHODCODE, PAYMENTMETHOD
for xml raw('ITEM'),type,elements,root('OTHERRECEIPTS'),BINARY BASE64
)
option (recompile);
set @CASHDENOMINATIONS = (
select CDD.ID, D.ID DENOMINATIONID, D.NAME, CDD.QUANTITY, D.VALUE
from dbo.CURRENCYDENOMINATION D
left join dbo.CLOSEDRAWERDENOMINATION CDD on CDD.CURRENCYDENOMINATIONID = D.ID and CDD.RECONCILIATIONID = @ID
where D.TYPECODE = 0
order by D.VALUE desc
for xml raw('ITEM'),type,elements,root('CASHDENOMINATIONS'),BINARY BASE64
);
set @COINDENOMINATIONS = (
select CDD.ID, D.ID DENOMINATIONID, D.NAME, CDD.QUANTITY, D.VALUE
from dbo.CURRENCYDENOMINATION D
left join dbo.CLOSEDRAWERDENOMINATION CDD on CDD.CURRENCYDENOMINATIONID = D.ID and CDD.RECONCILIATIONID = @ID
where D.TYPECODE = 1
order by D.VALUE desc
for xml raw('ITEM'),type,elements,root('COINDENOMINATIONS'),BINARY BASE64
);
select
@CHECKNUM = QUANTITY,
@CHECKTOTAL = AMOUNT
from dbo.RECONCILIATIONDETAIL
where RECONCILIATIONID = @ID and PAYMENTMETHODCODE = 1
end
return 0;