Tables [dbo].[ca_asset_source]
Properties
PropertyValue
CollationSQL_Latin1_General_CP1_CS_AS
Row Count418
Created10:23:57 AM Sunday, December 05, 2010
Last Modified12:43:17 PM Sunday, December 05, 2010
Columns
NameData TypeMax Length (Bytes)Allow NullsDefault
Cluster Primary Key ca_asset_source_idx_02: asset_source_uuidasset_source_uuidbinary(16)16
No
Foreign Keys $ca_as_r0000066500000000: [dbo].[ca_logical_asset].logical_asset_uuidIndexes ca_asset_source_idx_04: logical_asset_uuid\exclude_registrationIndexes ca_asset_source_idx_01: logical_asset_uuid\subschema_idIndexes ca_asset_source_idx_06: subschema_id\logical_asset_uuidlogical_asset_uuidbinary(16)16
Yes
Foreign Keys $ca_as_r000001fd00000000: [dbo].[ca_asset_source_location].source_location_uuidIndexes ca_asset_source_idx_03: source_location_uuidsource_location_uuidbinary(16)16
Yes
Foreign Keys $ca_as_r000001f300000000: [dbo].[ca_asset_subschema].subschema_idIndexes ca_asset_source_idx_01: logical_asset_uuid\subschema_idIndexes ca_asset_source_idx_06: subschema_id\logical_asset_uuidsubschema_idint4
No
creation_usernvarchar(64)128
Yes
creation_dateint4
Yes
last_update_usernvarchar(64)128
Yes
last_update_dateint4
Yes
version_numberint4
Yes
('0')
Indexes ca_asset_source_idx_04: logical_asset_uuid\exclude_registrationexclude_registrationint4
Yes
delete_timeint4
Yes
exclude_reconciliationsmallint2
Yes
Indexes Indexes
NameColumnsUnique
Cluster Primary Key ca_asset_source_idx_02: asset_source_uuidca_asset_source_idx_02asset_source_uuid
Yes
ca_asset_source_idx_01logical_asset_uuid, subschema_id
ca_asset_source_idx_03source_location_uuid
ca_asset_source_idx_04logical_asset_uuid, exclude_registration
ca_asset_source_idx_06subschema_id, logical_asset_uuid
Triggers Triggers
NameANSI Nulls OnQuoted Identifier OnOn
r_assetsource4tenant
Yes
Yes
After Insert Update
Foreign Keys Foreign Keys
NameColumns
$ca_as_r000001f300000000subschema_id->[dbo].[ca_asset_subschema].[subschema_id]
$ca_as_r000001fd00000000source_location_uuid->[dbo].[ca_asset_source_location].[source_location_uuid]
$ca_as_r0000066500000000logical_asset_uuid->[dbo].[ca_logical_asset].[logical_asset_uuid]
Permissions
TypeActionOwning Principal
GrantDeleteregadmin
GrantInsertregadmin
GrantDeleteca_itrm_group
GrantInsertca_itrm_group
GrantDeleteswcmadmin
GrantInsertswcmadmin
GrantSelectregadmin
GrantUpdateregadmin
GrantSelectams_group
GrantSelectservice_desk_admin_group
GrantSelectaiadmin
GrantSelectamsgroup
GrantSelectca_itrm_group
GrantUpdateca_itrm_group
GrantSelectca_itrm_group_ams
GrantSelectucmadmin
GrantSelectucmuser
GrantSelectuniadmin
GrantSelectuniuser
GrantSelectupmuser_group
GrantSelectswcmadmin
GrantUpdateswcmadmin
SQL Script
CREATE TABLE [dbo].[ca_asset_source]
(
[asset_source_uuid] [binary] (16) NOT NULL,
[logical_asset_uuid] [binary] (16) NULL,
[source_location_uuid] [binary] (16) NULL,
[subschema_id] [int] NOT NULL,
[creation_user] [nvarchar] (64) COLLATE SQL_Latin1_General_CP1_CS_AS NULL,
[creation_date] [int] NULL,
[last_update_user] [nvarchar] (64) COLLATE SQL_Latin1_General_CP1_CS_AS NULL,
[last_update_date] [int] NULL,
[version_number] [int] NULL CONSTRAINT [DF__ca_asset___versi__515009E6] DEFAULT ('0'),
[exclude_registration] [int] NULL,
[delete_time] [int] NULL,
[exclude_reconciliation] [smallint] NULL
) ON [PRIMARY]

GO
create trigger r_assetsource4tenant
     on [dbo].[ca_asset_source]
     after update, insert
as
declare @presAssetSrcUuid binary(16);
declare @newTenantId binary(16);
begin
-- ensure tenant consistency of logical asset source was added
-- or asset source was changed


    if update(logical_asset_uuid)
    begin    
        declare cursor_as cursor local for
            select distinct a.tenant, asrc.asset_source_uuid
                    from ca_asset a, ca_logical_asset la, ca_asset_source asrc, inserted updCrt
                    where a.asset_uuid = la.asset_uuid
                        AND la.logical_asset_uuid = asrc.logical_asset_uuid
                        and asrc.subschema_id = 3 -- ITCM ( aka ITRM )
                        and updCrt.asset_source_uuid = asrc.asset_source_uuid;
                        


        open cursor_as;
        fetch next from cursor_as into @newTenantId, @presAssetSrcUuid; -- get first
        while @@fetch_status = 0
        begin
        
            execute sp_updateTenantOnDisHw  @newTenantId, @presAssetSrcUuid;
            fetch next from cursor_as into @newTenantId, @presAssetSrcUuid;

        end; -- while
        close cursor_as;
        deallocate cursor_as;
    
    end;
end;
GO
ALTER TABLE [dbo].[ca_asset_source] ADD CONSTRAINT [ca_asset_source_idx_02] PRIMARY KEY CLUSTERED ([asset_source_uuid]) ON [PRIMARY]
GO
CREATE NONCLUSTERED INDEX [ca_asset_source_idx_04] ON [dbo].[ca_asset_source] ([logical_asset_uuid], [exclude_registration]) ON [PRIMARY]
GO
CREATE NONCLUSTERED INDEX [ca_asset_source_idx_01] ON [dbo].[ca_asset_source] ([logical_asset_uuid], [subschema_id]) ON [PRIMARY]
GO
CREATE NONCLUSTERED INDEX [ca_asset_source_idx_03] ON [dbo].[ca_asset_source] ([source_location_uuid]) ON [PRIMARY]
GO
CREATE NONCLUSTERED INDEX [ca_asset_source_idx_06] ON [dbo].[ca_asset_source] ([subschema_id], [logical_asset_uuid]) ON [PRIMARY]
GO
ALTER TABLE [dbo].[ca_asset_source] ADD CONSTRAINT [$ca_as_r000001f300000000] FOREIGN KEY ([subschema_id]) REFERENCES [dbo].[ca_asset_subschema] ([subschema_id])
GO
ALTER TABLE [dbo].[ca_asset_source] ADD CONSTRAINT [$ca_as_r000001fd00000000] FOREIGN KEY ([source_location_uuid]) REFERENCES [dbo].[ca_asset_source_location] ([source_location_uuid])
GO
ALTER TABLE [dbo].[ca_asset_source] ADD CONSTRAINT [$ca_as_r0000066500000000] FOREIGN KEY ([logical_asset_uuid]) REFERENCES [dbo].[ca_logical_asset] ([logical_asset_uuid])
GO
GRANT SELECT ON  [dbo].[ca_asset_source] TO [aiadmin]
GRANT SELECT ON  [dbo].[ca_asset_source] TO [ams_group]
GRANT SELECT ON  [dbo].[ca_asset_source] TO [amsgroup]
GRANT SELECT ON  [dbo].[ca_asset_source] TO [ca_itrm_group]
GRANT INSERT ON  [dbo].[ca_asset_source] TO [ca_itrm_group]
GRANT DELETE ON  [dbo].[ca_asset_source] TO [ca_itrm_group]
GRANT UPDATE ON  [dbo].[ca_asset_source] TO [ca_itrm_group]
GRANT SELECT ON  [dbo].[ca_asset_source] TO [ca_itrm_group_ams]
GRANT SELECT ON  [dbo].[ca_asset_source] TO [regadmin]
GRANT INSERT ON  [dbo].[ca_asset_source] TO [regadmin]
GRANT DELETE ON  [dbo].[ca_asset_source] TO [regadmin]
GRANT UPDATE ON  [dbo].[ca_asset_source] TO [regadmin]
GRANT SELECT ON  [dbo].[ca_asset_source] TO [service_desk_admin_group]
GRANT SELECT ON  [dbo].[ca_asset_source] TO [swcmadmin]
GRANT INSERT ON  [dbo].[ca_asset_source] TO [swcmadmin]
GRANT DELETE ON  [dbo].[ca_asset_source] TO [swcmadmin]
GRANT UPDATE ON  [dbo].[ca_asset_source] TO [swcmadmin]
GRANT SELECT ON  [dbo].[ca_asset_source] TO [ucmadmin]
GRANT SELECT ON  [dbo].[ca_asset_source] TO [ucmuser]
GRANT SELECT ON  [dbo].[ca_asset_source] TO [uniadmin]
GRANT SELECT ON  [dbo].[ca_asset_source] TO [uniuser]
GRANT SELECT ON  [dbo].[ca_asset_source] TO [upmuser_group]
GO
Uses
Used By