USP_DATALIST_RELATIONSHIPMAPINSTANCE
Returns a list of relationship map instances for a given record.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | nvarchar(100) | IN | Input parameter indicating the context ID for the data list. |
@CURRENTAPPUSERID | uniqueidentifier | IN | Input parameter indicating the ID of the current user. |
Definition
Copy
CREATE procedure dbo.USP_DATALIST_RELATIONSHIPMAPINSTANCE(@ID nvarchar(100), @CURRENTAPPUSERID uniqueidentifier = null)
as
set nocount on;
declare @RELATIONSHIPMAPID uniqueidentifier;
declare @CONTEXTRECORDID nvarchar(100);
declare @ISSYSADMIN bit;
set @RELATIONSHIPMAPID = substring(@ID, 1, 36);
set @CONTEXTRECORDID = substring(@ID, 38, len(@ID) - 37);
if not @CURRENTAPPUSERID is null
begin
select @ISSYSADMIN = dbo.UFN_APPUSER_ISSYSADMIN(@CURRENTAPPUSERID);
end;
select RELATIONSHIPMAPINSTANCE.ID,
RELATIONSHIPMAPINSTANCE.RELATIONSHIPMAPID,
RELATIONSHIPMAPINSTANCE.NAME,
RELATIONSHIPMAPINSTANCE.DESCRIPTION,
cast(
(case when OTHERSCANMODIFY = 1 or @ISSYSADMIN = 1 or @CURRENTAPPUSERID = OWNERID then 1
else 0
end)
as bit) CURRENTUSERCANMODIFY,
case when APPUSER.DISPLAYNAME = ''
then APPUSER.USERNAME
else APPUSER.DISPLAYNAME
end [OWNER],
OTHERSCANMODIFY
from dbo.RELATIONSHIPMAPINSTANCE
inner join dbo.RELATIONSHIPMAPCATALOG on RELATIONSHIPMAPINSTANCE.RELATIONSHIPMAPID = RELATIONSHIPMAPCATALOG.ID
left join dbo.APPUSER on RELATIONSHIPMAPINSTANCE.OWNERID = APPUSER.ID
where RELATIONSHIPMAPINSTANCE.CONTEXTRECORDID = @CONTEXTRECORDID
and RELATIONSHIPMAPCATALOG.ID = @RELATIONSHIPMAPID;