USP_DATAFORMTEMPLATE_VIEW_BANKACCOUNTPROFILE
The load procedure used by the view dataform template "Bank Account Profile 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. |
@ACCOUNTNAME | nvarchar(100) | INOUT | Account name |
@BANKID | uniqueidentifier | INOUT | Bank |
@ACCOUNTNUMBER | nvarchar(50) | INOUT | Account number |
@ROUTINGNUMBER | nvarchar(9) | INOUT | Routing number |
@STATUSCODE | tinyint | INOUT | Status |
@ACCOUNTTYPECODE | tinyint | INOUT | Account type |
@MINIMUMBALANCE | decimal(19, 4) | INOUT | Minimum balance |
@DEFAULTPRINTER | nvarchar(255) | INOUT | Default printer |
@RECONCILED | bit | INOUT | RECONCILED |
@RECONCILEDBALANCE | decimal(19, 4) | INOUT | Reconciled balance |
@LASTDEPOSITNUM | int | INOUT | Last deposit number |
@BANKNAME | nvarchar(100) | INOUT | Bank name |
@ADDRESS | nvarchar(300) | INOUT | ADDRESS |
@PHONENUMBER | nvarchar(100) | INOUT | PHONENUMBER |
@PHONETYPE | nvarchar(100) | INOUT | PHONETYPE |
@EMAILADDRESS | UDT_EMAILADDRESS | INOUT | EMAILADDRESS |
@DONOTMAIL | bit | INOUT | DONOTMAIL |
@DONOTEMAIL | bit | INOUT | DONOTEMAIL |
@DONOTPHONE | bit | INOUT | DONOTPHONE |
@WEBADDRESS | UDT_WEBADDRESS | INOUT | WEBADDRESS |
@LOOKUPID | nvarchar(100) | INOUT | Lookup ID |
@CURRENTBALANCE | money | INOUT | Current balance |
@ENDINGBALANCE | money | INOUT | Ending balance |
@DEFAULTCASHACCOUNTTYPECODE | tinyint | INOUT | Cash account type |
@GLACCOUNTNUMBER | nvarchar(100) | INOUT | Cash account |
@GLACCOUNTCODE | nvarchar(30) | INOUT | Cash account code |
@SORTCODE | nvarchar(6) | INOUT | Sort code |
@PDACCOUNTSYSTEM | nvarchar(50) | INOUT | Account system |
@NUMSYSTEMS | tinyint | INOUT | Number of account systems |
@STATUS | nvarchar(100) | INOUT | Status |
@ACCOUNTTYPE | nvarchar(100) | INOUT | Account type |
@TRANSACTIONCURRENCYID | uniqueidentifier | INOUT | Currency |
@CURRENCY | nvarchar(110) | INOUT | Currency |
@BANKINGSYSTEMID | uniqueidentifier | INOUT | |
@BIC | nvarchar(11) | INOUT | |
@BANKCODE | nvarchar(25) | INOUT | |
@UNMASKEDACCOUNT | nvarchar(255) | INOUT | |
@CANVIEWSENSITIVEINFORMATION | bit | INOUT | |
@CURRENTAPPUSERID | uniqueidentifier | IN |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_VIEW_BANKACCOUNTPROFILE
(
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@ACCOUNTNAME nvarchar(100) = null output,
@BANKID uniqueidentifier = null output,
@ACCOUNTNUMBER nvarchar(50) = null output,
@ROUTINGNUMBER nvarchar(9) = null output,
@STATUSCODE tinyint = null output,
@ACCOUNTTYPECODE tinyint = null output,
@MINIMUMBALANCE decimal(19, 4) = null output,
@DEFAULTPRINTER nvarchar(255) = null output,
@RECONCILED bit = null output,
@RECONCILEDBALANCE decimal(19,4) = null output,
@LASTDEPOSITNUM integer = null output,
@BANKNAME nvarchar(100) = null output,
@ADDRESS nvarchar(300) = null output,
@PHONENUMBER nvarchar(100) = null output,
@PHONETYPE nvarchar(100) = null output,
@EMAILADDRESS dbo.UDT_EMAILADDRESS = null output,
@DONOTMAIL bit = null output,
@DONOTEMAIL bit = null output,
@DONOTPHONE bit = null output,
@WEBADDRESS dbo.UDT_WEBADDRESS = null output,
@LOOKUPID nvarchar(100) = null output,
@CURRENTBALANCE money = null output,
@ENDINGBALANCE money = null output,
@DEFAULTCASHACCOUNTTYPECODE tinyint = null output,
@GLACCOUNTNUMBER nvarchar(100) = null output,
@GLACCOUNTCODE nvarchar(30) = null output,
@SORTCODE nvarchar(6) = null output,
@PDACCOUNTSYSTEM nvarchar(50) = null output,
@NUMSYSTEMS tinyint = null output,
@STATUS nvarchar(100) = null output,
@ACCOUNTTYPE nvarchar(100) = null output,
@TRANSACTIONCURRENCYID uniqueidentifier = null output,
@CURRENCY nvarchar(110) = null output,
@BANKINGSYSTEMID uniqueidentifier = null output,
@BIC nvarchar(11) = null output,
@BANKCODE nvarchar(25) = null output,
@UNMASKEDACCOUNT nvarchar(255) = null output,
@CANVIEWSENSITIVEINFORMATION bit = null output,
@CURRENTAPPUSERID uniqueidentifier = null
)
as
set nocount on;
-- be sure to set this, in case the select returns no rows
set @DATALOADED = 0;
-- Open the symmetric key for encryption
exec dbo.USP_GET_KEY_ACCESS;
-- Can View Sensitive Information
set @CANVIEWSENSITIVEINFORMATION = 0;
declare @ISSYSADMIN bit = dbo.[UFN_APPUSER_ISSYSADMIN](@CURRENTAPPUSERID);
if @ISSYSADMIN = 0
begin
set @CANVIEWSENSITIVEINFORMATION = dbo.[UFN_SECURITY_APPUSER_GRANTED_SYSTEMPRIVILEGE_IN_SYSTEMROLE](@CURRENTAPPUSERID, 'B01B8750-8BC3-4FA8-881E-BE2E605339BF');
end
else if @ISSYSADMIN = 1
begin
set @CANVIEWSENSITIVEINFORMATION = 1;
end
-- 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
@DATALOADED = 1,
@ACCOUNTNAME = BANKACCOUNT.ACCOUNTNAME,
@BANKID = BANKACCOUNT.BANKID,
@ACCOUNTNUMBER = dbo.UFN_BANKACCOUNT_GETMASKEDACCOUNTNUMBER(BANKACCOUNT.ID),
--@ROUTINGNUMBER = coalesce(convert(nvarchar(9), DecryptByKey(BANKACCOUNT.ROUTINGNUMBER)),''),
--@ACCOUNTNUMBER = BANKACCOUNT.ACCOUNTNUMBER,
@ROUTINGNUMBER = BANKACCOUNT.ROUTINGNUMBER,
@STATUSCODE = BANKACCOUNT.STATUSCODE,
@STATUS = BANKACCOUNT.STATUS,
@ACCOUNTTYPECODE = BANKACCOUNT.ACCOUNTTYPECODE,
@ACCOUNTTYPE = BANKACCOUNT.ACCOUNTTYPE,
@MINIMUMBALANCE = BANKACCOUNT.MINIMUMBALANCE,
@DEFAULTPRINTER = BANKACCOUNT.DEFAULTPRINTER,
@RECONCILED = BANKACCOUNT.RECONCILED,
@RECONCILEDBALANCE = BANKACCOUNT.RECONCILEDBALANCE,
@LASTDEPOSITNUM = BANKACCOUNT.LASTDEPOSITNUM,
@DEFAULTCASHACCOUNTTYPECODE = BANKACCOUNT.DEFAULTCASHACCOUNTTYPECODE,
@GLACCOUNTNUMBER = GLACCOUNT.ACCOUNTNUMBER,
@GLACCOUNTCODE = PDACCOUNTSEGMENTVALUE.SHORTDESCRIPTION,
@SORTCODE = SORTCODE,
@PDACCOUNTSYSTEM = (select NAME from PDACCOUNTSYSTEM where ID =
(select PDACCOUNTSYSTEMID from BANKACCOUNT B where B.ID = BANKACCOUNT.ID)),
@NUMSYSTEMS = (select count(ID) from dbo.PDACCOUNTSYSTEM),
@TRANSACTIONCURRENCYID = BANKACCOUNT.TRANSACTIONCURRENCYID,
@CURRENCY = dbo.UFN_CURRENCY_GETDESCRIPTION(BANKACCOUNT.TRANSACTIONCURRENCYID),
@BANKINGSYSTEMID = BANKACCOUNT.BANKINGSYSTEMID,
@BIC = BANKACCOUNT.BIC,
@BANKCODE = BANKACCOUNT.BANKCODE,
@UNMASKEDACCOUNT =(
case
when @CANVIEWSENSITIVEINFORMATION = 1 then
dbo.UFN_BANKACCOUNT_GETACCOUNTNUMBER(BANKACCOUNT.ID)
when @CANVIEWSENSITIVEINFORMATION = 0 then
dbo.UFN_BANKACCOUNT_GETMASKEDACCOUNTNUMBER(BANKACCOUNT.ID)
end)
from
dbo.BANKACCOUNT
left outer join dbo.PDACCOUNTSEGMENTVALUE on BANKACCOUNT.PDACCOUNTSEGMENTVALUEID = PDACCOUNTSEGMENTVALUE.ID
left outer join dbo.GLACCOUNT on BANKACCOUNT.GLACCOUNTID = GLACCOUNT.ID
where
BANKACCOUNT.ID = @ID;
begin try
set @CURRENTBALANCE = dbo.UFN_BANKACCOUNT_GETCURRENTBALANCE(@ID);
set @ENDINGBALANCE = dbo.UFN_BANKACCOUNT_GETENDINGBALANCE(@ID);
end try
begin catch
end catch
--CONSTITUENT INFO
select
@BANKNAME = CONSTITUENT.NAME,
@DONOTMAIL = CONSTITUENT.DONOTMAIL,
@DONOTEMAIL = CONSTITUENT.DONOTEMAIL,
@DONOTPHONE = CONSTITUENT.DONOTPHONE,
@WEBADDRESS = CONSTITUENT.WEBADDRESS,
@LOOKUPID = CONSTITUENT.LOOKUPID
from
dbo.CONSTITUENT
where
CONSTITUENT.ID = @BANKID;
--EMAIL
select
@EMAILADDRESS = EMAILADDRESS
from
dbo.EMAILADDRESS
where
EMAILADDRESS.CONSTITUENTID = @BANKID and
EMAILADDRESS.ISPRIMARY = 1;
--PHONE
select
@PHONENUMBER = PHONE.NUMBER,
@PHONETYPE = (select DESCRIPTION FROM dbo.PHONETYPECODE WHERE ID = PHONE.PHONETYPECODEID)
from
dbo.PHONE
where
PHONE.CONSTITUENTID = @BANKID and
PHONE.ISPRIMARY = 1;
--ADDRESS
select
@ADDRESS = dbo.UFN_BUILDFULLADDRESS(ADDRESS.ID, ADDRESS.ADDRESSBLOCK, ADDRESS.CITY, ADDRESS.STATEID, ADDRESS.POSTCODE, ADDRESS.COUNTRYID)
from
dbo.ADDRESS
where
ADDRESS.CONSTITUENTID = @BANKID and
ADDRESS.ISPRIMARY = 1;
--close symmetric key sym_BBInfinity;
exec USP_CLOSE_KEY_ACCESS;
return 0;