USP_DATALIST_WORKSTATION_CASHDRAWEROPEN_BYREVENUE
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@REVENUEID | uniqueidentifier | IN | |
@WORKSTATIONID | uniqueidentifier | IN | |
@WORKSTATIONMACHINENAME | nvarchar(255) | IN |
Definition
Copy
CREATE procedure dbo.USP_DATALIST_WORKSTATION_CASHDRAWEROPEN_BYREVENUE (
@REVENUEID uniqueidentifier,
@WORKSTATIONID uniqueidentifier = null,
@WORKSTATIONMACHINENAME nvarchar(255) = null
)
as
set nocount on;
if @WORKSTATIONID is null
begin
set @WORKSTATIONID = dbo.UFN_WORKSTATION_GETIDBYMACHINENAME(@WORKSTATIONMACHINENAME);
end
if @WORKSTATIONID is not null and
exists(
select 1
from dbo.REVENUE
inner join dbo.REVENUEPAYMENTMETHOD
on REVENUE.ID = REVENUEPAYMENTMETHOD.REVENUEID
left outer join dbo.OTHERPAYMENTMETHODDETAIL
on OTHERPAYMENTMETHODDETAIL.ID = REVENUEPAYMENTMETHOD.ID
inner join dbo.UFN_WORKSTATION_GETCASHDRAWERPAYMENTMETHODS(@WORKSTATIONID) as WORKSTATIONPAYMENTMETHOD
on
REVENUEPAYMENTMETHOD.PAYMENTMETHODCODE = WORKSTATIONPAYMENTMETHOD.PAYMENTTYPECODE and
(
--Other payment method special handling -- not just on matching on typecode
REVENUEPAYMENTMETHOD.PAYMENTMETHODCODE <> 10 or
WORKSTATIONPAYMENTMETHOD.PAYMENTMETHODID = OTHERPAYMENTMETHODDETAIL.OTHERPAYMENTMETHODCODEID
)
where [REVENUE].[ID] = @REVENUEID
)
begin
select
1 OPENDRAWER,
WORKSTATIONPRINTER.PRINTERNAME,
WORKSTATION.CASHDRAWEROPENCOMMAND
from dbo.WORKSTATION
left outer join dbo.WORKSTATIONPRINTER
on WORKSTATION.CASHDRAWERPRINTERID = WORKSTATIONPRINTER.ID
where WORKSTATION.ID = @WORKSTATIONID
end
else
begin
select
0 OPENDRAWER,
'' PRINTERNAME,
'' CASHDRAWEROPENCOMMAND
end