UFN_CATEGORYDEFINITION_OVERLAP

Check for overlaps between categories.

Return

Return Type
int

Definition

Copy


create function dbo.UFN_CATEGORYDEFINITION_OVERLAP()
    returns integer
    with execute as caller
    as begin
        declare @NUMBER integer = 0;    
        declare @CATEGORYDEFINITION xml;
        set @CATEGORYDEFINITION = dbo.UFN_CATEGORYDEFINITION_TOITEMLISTXML();
      if exists(select * from UFN_CATEGORYDEFINITION_FROMITEMLISTXML(@CATEGORYDEFINITION) t1 inner join UFN_CATEGORYDEFINITION_FROMITEMLISTXML(@CATEGORYDEFINITION) t2 on t1.ID != t2.ID and convert(bigint,nullif(t1.FROMCODE,'')) <= convert(bigint,nullif(t2.TOCODE,'')) and convert(bigint,nullif(t1.TOCODE,'')) >= convert(bigint,nullif(t2.FROMCODE,'')))
                set @NUMBER = 0           --overlapping categories

        else
          set @NUMBER = 1          --everything fine


        return @NUMBER
    end