USP_PARSE_ORGANIZATION_NAME

Splits an organization name into it's components.

Parameters

Parameter Parameter Type Mode Description
@ORGANIZATIONNAME nvarchar(100) IN
@KEYNAME nvarchar(100) INOUT
@KEYNAMEPREFIX nvarchar(50) INOUT

Definition

Copy


CREATE procedure dbo.USP_PARSE_ORGANIZATION_NAME
(
  @ORGANIZATIONNAME nvarchar(100),
  @KEYNAME nvarchar(100) output,
  @KEYNAMEPREFIX nvarchar(50) output
)
as
  set nocount on;

  declare @BreakPos int;
  declare @OrgBreakChar nchar;

  set @KEYNAMEPREFIX = '';
  set @OrgBreakChar = '\';

  --If org name contains the break character, separate name into keyname and keynameprefix

  set @BreakPos = CHARINDEX(@OrgBreakChar, @ORGANIZATIONNAME);

  if @BreakPos > 51
    begin
      raiserror('BBERR_CONSTITUENT_ORGANIZATIONPREFIXLENGTH', 13, 1);
    end
  else if @BreakPos > 0
    begin
      set @KEYNAMEPREFIX = SUBSTRING(@ORGANIZATIONNAME, 0, @BreakPos);
      set @KEYNAME = SUBSTRING(@ORGANIZATIONNAME, CHARINDEX(@OrgBreakChar, @ORGANIZATIONNAME) + 1, len(@ORGANIZATIONNAME));
    end
  else
    begin
      set @KEYNAME = @ORGANIZATIONNAME;
    end