UFN_CREDITCARDPROCESSING_MERCHANTACCOUNTSVALIDFORUSER
Verifies that an application user has access to all merchant accounts associated with a credit card processing process.
Return
Return Type |
---|
bit |
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@CURRENTAPPUSERID | uniqueidentifier | IN | |
@CREDITCARDPROCESSINGID | uniqueidentifier | IN | |
@SECURITYFEATUREID | uniqueidentifier | IN | |
@SECURITYFEATURETYPE | tinyint | IN |
Definition
Copy
create function dbo.UFN_CREDITCARDPROCESSING_MERCHANTACCOUNTSVALIDFORUSER
(
@CURRENTAPPUSERID uniqueidentifier,
@CREDITCARDPROCESSINGID uniqueidentifier,
@SECURITYFEATUREID uniqueidentifier = null,
@SECURITYFEATURETYPE tinyint = null
)
returns bit
as begin
declare @valid bit = 1;
declare @MULTICURRENCYENABLED bit;
set @MULTICURRENCYENABLED = dbo.UFN_CONDITIONSETTING_EVALUATEEXISTSCONDITION('Multicurrency');
if @MULTICURRENCYENABLED = 0
begin
if exists
(
select
1
from
dbo.CREDITCARDPROCESSING
inner join dbo.MERCHANTACCOUNT on CREDITCARDPROCESSING.MERCHANTACCOUNTID = MERCHANTACCOUNT.ID
where
CREDITCARDPROCESSING.ID = @CREDITCARDPROCESSINGID
and
dbo.UFN_MERCHANTACCOUNT_USERHASSITEACCESS(MERCHANTACCOUNT.ID, @CURRENTAPPUSERID, @SECURITYFEATUREID, @SECURITYFEATURETYPE) = 0
)
select @valid = 0;
end
if @MULTICURRENCYENABLED = 1
begin
if exists
(
select
1
from
dbo.CREDITCARDPROCESSING
inner join dbo.CREDITCARDPROCESSINGMERCHANTACCOUNT on CREDITCARDPROCESSING.ID = CREDITCARDPROCESSINGMERCHANTACCOUNT.CREDITCARDPROCESSINGID
inner join dbo.MERCHANTACCOUNT on MERCHANTACCOUNT.ID = CREDITCARDPROCESSINGMERCHANTACCOUNT.MERCHANTACCOUNTID
where
CREDITCARDPROCESSINGMERCHANTACCOUNT.CREDITCARDPROCESSINGID = @CREDITCARDPROCESSINGID
and
dbo.UFN_MERCHANTACCOUNT_USERHASSITEACCESS(MERCHANTACCOUNT.ID, @CURRENTAPPUSERID, @SECURITYFEATUREID, @SECURITYFEATURETYPE) = 0
)
select @valid = 0;
end
return @valid;
end