USP_IDMAPPERCATALOG_GETMETADATA

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN

Definition

Copy



create procedure dbo.USP_IDMAPPERCATALOG_GETMETADATA
@ID uniqueidentifier

as

set nocount on;

declare @IMPLTYPE tinyint;
declare @PROCNAME nvarchar(128);
declare @ASMNAME nvarchar(128);
declare @CLASSNAME nvarchar(128);

select 
@IMPLTYPE  =IMPLEMENTATIONTYPE,
@PROCNAME= PROCEDURENAME,
@ASMNAME = ASSEMBLYNAME,
@CLASSNAME =CLASSNAME
from
dbo.IDMAPPERCATALOG
where
ID=@ID;

if @IMPLTYPE is null return 0;

if @IMPLTYPE=0
begin

    declare @SOURCEDATATYPE nvarchar(128);
    declare @TARGETDATATYPE nvarchar(128);
    declare @SOURCEDATA_MAXLEN int;
    declare @TARGETDATA_MAXLEN int;


    select @SOURCEDATATYPE=DATA_TYPE,@SOURCEDATA_MAXLEN=CHARACTER_MAXIMUM_LENGTH  from INFORMATION_SCHEMA.PARAMETERS 
        where SPECIFIC_NAME=@PROCNAME and PARAMETER_NAME = '@SOURCEID' and SPECIFIC_SCHEMA='dbo';


    select @TARGETDATATYPE=DATA_TYPE,@TARGETDATA_MAXLEN=CHARACTER_MAXIMUM_LENGTH  from INFORMATION_SCHEMA.PARAMETERS 
        where SPECIFIC_NAME=@PROCNAME and PARAMETER_NAME = '@TARGETID' and SPECIFIC_SCHEMA='dbo';


end


select @IMPLTYPE as 'IMPLEMENTATIONTYPE',
@PROCNAME as 'PROCEDURENAME',
@ASMNAME as 'ASSEMBLYNAME',
@CLASSNAME as 'CLASSNAME',
@SOURCEDATATYPE as 'SOURCEDATATYPE',
@SOURCEDATA_MAXLEN as 'SOURCEDATA_MAXLEN',
@TARGETDATATYPE as 'TARGETDATATYPE',
@TARGETDATA_MAXLEN as 'TARGETDATA_MAXLEN'

return 0;