Třídová akce

Popis:
Vrátí existující kombinace Site a OIDInfix dle dat v tabulce Generators pro zadanou třídu a dle dat v zadané tabulce.
Kód:
1
Tělo:
SELECT CAST(Site AS CHAR(2)) AS Site, CAST(OIDInfix AS VARCHAR(3)) AS OIDInfix FROM (
  -- Původní schéma generování ID
  SELECT DISTINCT Site, OIDInfix FROM (
    SELECT 
      Site, 
      OIDInfix
    FROM Generators
    WHERE 
      CLSID = :ACLSID AND
      Site <> '##'
    UNION
    SELECT 
#IB
      SubString(ID from 9 for 2) AS Site, SubString(ID from (8 - (CAST(:AOIDInfixLenOriginalSchemaID AS INT) - 1)) for CAST(:AOIDInfixLenOriginalSchemaID AS INT)) as OIDInfix
#MS
      SubString(ID, 9, 2) AS Site, SubString(ID, (8 - (CAST(:AOIDInfixLenOriginalSchemaID AS INT) - 1)), CAST(:AOIDInfixLenOriginalSchemaID AS INT)) as OIDInfix
#ORA
      SubStr(ID, 9, 2) AS Site, SubStr(ID, (8 - (CAST(:AOIDInfixLenOriginalSchemaID AS INT) - 1)), CAST(:AOIDInfixLenOriginalSchemaID AS INT)) as OIDInfix
#ALL      
    FROM {TableName}
    WHERE
#IB
      LEFT(ID, 1) <> '#' AND
      SubString(ID from 9 for 2) <> '00' -- Vynechání systémových initdat záznamů hnízdo 00
#MS
      LEFT(ID, 1) <> '#' AND
      SubString(ID, 9, 2) <> '00' -- Vynechání systémových initdat záznamů hnízdo 00
#ORA
      SubStr(ID, 1, 1) <> '#' AND
      SubStr(ID, 9, 2) <> '00' -- Vynechání systémových initdat záznamů hnízdo 00
#ALL      
  )
#MS
    T1
#ALL      
  -- Nové schéma generování ID
  UNION
  SELECT DISTINCT Site, OIDInfix FROM (
    SELECT Site, OIDInfix
    FROM Generators
    WHERE 
      CLSID = :ACLSID AND
      Site = '##'
    UNION
    SELECT 
      '##' AS Site,
#IB
      SubString(ID from 2 for CAST(:AOIDInfixLenNewSchemaID AS INT)) as OIDInfix
#MS
      SubString(ID, 2, CAST(:AOIDInfixLenNewSchemaID AS INT)) as OIDInfix
#ORA
      SubStr(ID, 2, CAST(:AOIDInfixLenNewSchemaID AS INT)) as OIDInfix
#ALL
    FROM {TableName}
    WHERE
#IB
      LEFT(ID, 1) = '#'
#MS
      LEFT(ID, 1) = '#'
#ORA
      SubStr(ID, 1, 1) = '#'
#ALL
  )
#MS
    T2
#ALL      
)
#MS
    T3
#ALL      

Generated by ABRA Software a.s. 27.10.2021 16:34:09