USP_OLAP_GETEXCLUDEDATTRIBUTECATEGORIES_FORQV

Parameters

Parameter Parameter Type Mode Description
@OLAPDATASOURCEID uniqueidentifier IN

Definition

Copy


CREATE procedure dbo.USP_OLAP_GETEXCLUDEDATTRIBUTECATEGORIES_FORQV (@OLAPDATASOURCEID uniqueidentifier)
as
begin

  declare @QVPREFIX nvarchar(355
  set @QVPREFIX = (select 'v_QUERY_' + [MARTKEY] + '_' from dbo.[OLAPDATASOURCE] where [ID] = @OLAPDATASOURCEID)

  select
    qv.[ID],
    qv.[QUERYVIEWSPEC]
  from dbo.[QUERYVIEWCATALOG] qv
  where qv.[OBJECTNAME] in

  (
  select
    @QVPREFIX + tc.TABLENAME
  from dbo.[ATTRIBUTECATEGORY] ac
  inner join dbo.[TABLECATALOG] tc on ac.[TABLECATALOGID] = tc.[ID]

  except

  select
    @QVPREFIX + tc.TABLENAME

  from dbo.[ATTRIBUTECATEGORY] ac
  inner join dbo.[OLAPDATASOURCEATTRIBUTECATEGORY] oc on ac.[ID] = oc.[ATTRIBUTECATEGORYID] and oc.[OLAPDATASOURCEID] = @OLAPDATASOURCEID
  inner join dbo.[ATTRIBUTERECORDTYPE] arc on arc.[ID] = ac.[ATTRIBUTERECORDTYPEID]
  inner join dbo.[OLAPDATASOURCERECORDTYPE] ort on ort.[RECORDTYPEID] = arc.[RECORDTYPEID]
  inner join dbo.[RECORDTYPE] rt on ort.[RECORDTYPEID] = rt.[ID]
  inner join dbo.[OLAPDATASOURCE] ds on ds.[ID] = @OLAPDATASOURCEID
  inner join dbo.[QUERYVIEWCATALOG] qv on qv.[RECORDTYPEID] = arc.[RECORDTYPEID] and ds.[MARTKEY] = qv.[MARTKEY]
  inner join dbo.[TABLECATALOG] tc on ac.[TABLECATALOGID] = tc.[ID]
  )

  and qv.[ID] in (select [RELATEDQUERYVIEWID] from dbo.[QUERYVIEWRELATIONSHIP] where [OBSOLETE] = 0)

end