USP_DATAFORMTEMPLATE_VIEW_ADDRESSPAGEDATA
The load procedure used by the view dataform template "Address 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. |
@CURRENTAPPUSERID | uniqueidentifier | IN | Input parameter indicating the ID of the current user. |
@DATALOADED | bit | INOUT | Output parameter indicating whether or not data was actually loaded. |
@ATTRIBUTEDEFINED | bit | INOUT | ATTRIBUTEDEFINED |
@CONSTITUENTID | uniqueidentifier | INOUT | CONSTITUENTID |
@CONSTITUENTNAME | nvarchar(154) | INOUT | CONSTITUENTNAME |
@ADDRESSTYPE | nvarchar(200) | INOUT | ADDRESSTYPE |
@ISFORMER | bit | INOUT | ISFORMER |
@ISGEOCODED | bit | INOUT | ISGEOCODED |
@PENDINGGEOCODE | bit | INOUT | PENDINGGEOCODE |
@INVALIDGEOCODE | bit | INOUT | INVALIDGEOCODE |
@MAPCONTEXTID | nvarchar(108) | INOUT | MAPCONTEXTID |
@MAPPINGCREDENTIALSEXIST | bit | INOUT | MAPPINGCREDENTIALSEXIST |
@USER_GRANTED_ADDRESS_GEOCODE | bit | INOUT | USER_GRANTED_ADDRESS_GEOCODE |
@USER_GRANTED_ADDRESS_DELETE_FOR_CONSTIT | bit | INOUT | USER_GRANTED_ADDRESS_DELETE_FOR_CONSTIT |
@USER_GRANTED_CONSTITUENT_MAPENTITY | bit | INOUT | USER_GRANTED_CONSTITUENT_MAPENTITY |
@SHOWCONTEXTLINK | bit | INOUT |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_VIEW_ADDRESSPAGEDATA
(
@ID uniqueidentifier,
@CURRENTAPPUSERID uniqueidentifier,
@DATALOADED bit = 0 output,
@ATTRIBUTEDEFINED bit = null output,
@CONSTITUENTID uniqueidentifier = null output,
@CONSTITUENTNAME nvarchar(154) = null output,
@ADDRESSTYPE nvarchar(200) = null output,
@ISFORMER bit = null output,
@ISGEOCODED bit = null output,
@PENDINGGEOCODE bit = null output,
@INVALIDGEOCODE bit = null output,
@MAPCONTEXTID nvarchar(108) = null output,
@MAPPINGCREDENTIALSEXIST bit = null output,
@USER_GRANTED_ADDRESS_GEOCODE bit = null output,
@USER_GRANTED_ADDRESS_DELETE_FOR_CONSTIT bit = null output,
@USER_GRANTED_CONSTITUENT_MAPENTITY bit = null output,
@SHOWCONTEXTLINK bit = null output
)
as
set nocount on;
declare @CURRENTDATE date = getdate();
declare @MAPENTITYID uniqueidentifier = N'645E6BE7-459C-402b-A03C-67587CA72B94';
if (dbo.UFN_INSTALLEDPRODUCTS_PRODUCTIS('6f77d512-d0d1-444f-9b46-b8603a6fe5f1') = 1)
set @MAPENTITYID = N'78102CE5-F217-4429-9175-D99A6B55A4EE';
select
@DATALOADED = 1,
@ATTRIBUTEDEFINED = dbo.UFN_ATTRIBUTECATEGORY_DEFINEDFORRECORDTYPE_FORAPPUSER('ADDRESS', @CURRENTAPPUSERID),
@CONSTITUENTID = CONSTITUENT.ID,
@CONSTITUENTNAME = CONSTITUENT.NAME,
@ADDRESSTYPE = dbo.UFN_ADDRESSTYPECODE_GETDESCRIPTION(ADDRESS.ADDRESSTYPECODEID),
@ISFORMER = case
when ((ADDRESS.HISTORICALENDDATE is null) or (ADDRESS.HISTORICALENDDATE > @CURRENTDATE)) then 0
else 1
end,
@ISGEOCODED = case
when ADDRESSCOORDINATES.ID is null or ADDRESSCOORDINATES.PENDINGGEOCODE = 1 or ADDRESSCOORDINATES.INVALIDGEOCODE = 1 then 0
else 1
end,
@PENDINGGEOCODE = case
when ADDRESSCOORDINATES.ID is null then 0
else ADDRESSCOORDINATES.PENDINGGEOCODE
end,
@INVALIDGEOCODE = case
when ADDRESSCOORDINATES.ID is null then 0
else ADDRESSCOORDINATES.INVALIDGEOCODE
end,
@MAPCONTEXTID = dbo.UFN_MAPPING_BUILDCONTEXTRECORDID(@MAPENTITYID, ADDRESS.CONSTITUENTID, ADDRESS.ID),
--Checking that Installed products except RP
@SHOWCONTEXTLINK = case
when dbo.UFN_INSTALLEDPRODUCTS_PRODUCTIS('3117d2c8-7f46-42f2-abeb-b654f2f63046') = 1 or dbo.UFN_INSTALLEDPRODUCTS_PRODUCTIS('42c15648-749e-4859-a56d-3a6474814cc7') = 1 or dbo.UFN_INSTALLEDPRODUCTS_PRODUCTIS('bb9873d7-f1ed-430a-8ab4-f09f47056538') = 1 or dbo.UFN_INSTALLEDPRODUCTS_PRODUCTIS('f5ac53c4-d0ce-4e20-bca6-aacdfc01b302') = 1 then 1
else 0
end
from
dbo.ADDRESS
inner join
dbo.CONSTITUENT on CONSTITUENT.ID = ADDRESS.CONSTITUENTID
left join
dbo.ADDRESSCOORDINATES on ADDRESSCOORDINATES.ADDRESSID = ADDRESS.ID
where
ADDRESS.ID = @ID
if @DATALOADED = 0
return 0;
--Mapping credentials
set @MAPPINGCREDENTIALSEXIST = 0;
select top 1
@MAPPINGCREDENTIALSEXIST = 1
from
dbo.MAPPINGCREDENTIALS
where
len([KEY]) > 0;
--Security access to operations
if dbo.UFN_APPUSER_ISSYSADMIN(@CURRENTAPPUSERID) = 1
begin
set @USER_GRANTED_ADDRESS_GEOCODE = 1;
set @USER_GRANTED_ADDRESS_DELETE_FOR_CONSTIT = 1;
set @USER_GRANTED_CONSTITUENT_MAPENTITY = 1;
end
else
begin
set @USER_GRANTED_ADDRESS_GEOCODE = dbo.UFN_SECURITY_APPUSER_GRANTED_RECORDOPERATION_IN_SYSTEMROLE(@CURRENTAPPUSERID,'1783224D-E771-437F-AAE4-A3981AE84543');
set @USER_GRANTED_ADDRESS_DELETE_FOR_CONSTIT = case
when dbo.UFN_SECURITY_APPUSER_GRANTED_RECORDOPERATION_IN_SYSTEMROLE(@CURRENTAPPUSERID,'0C2D6552-EC7F-4923-A4AF-AFC53114C32B') = 1 and
dbo.UFN_SECURITY_APPUSER_GRANTED_RECORDOPERATION_FORCONSTIT(@CURRENTAPPUSERID,'0C2D6552-EC7F-4923-A4AF-AFC53114C32B',@CONSTITUENTID) = 1 and
(select count(*) from dbo.UFN_SITEID_MAPFROM_CONSTITUENTID(@CONSTITUENTID) as SITES
where dbo.UFN_SECURITY_APPUSER_GRANTED_RECORDOPERATION_FORSITE(@CURRENTAPPUSERID, '0C2D6552-EC7F-4923-A4AF-AFC53114C32B', SITEID) = 1) > 0
then 1
else 0
end;
set @USER_GRANTED_CONSTITUENT_MAPENTITY = dbo.UFN_SECURITY_APPUSER_GRANTED_MAPENTITY_IN_SYSTEMROLE(@CURRENTAPPUSERID, @MAPENTITYID);
end
return 0;