Siebel Server Sync Guide > Customizing Siebel Server Sync for Microsoft Exchange Server >

Sample Delete Trigger


This topic contains the text of an existing delete trigger, SSSE_CONT_INFO_T1, and two drop-trigger statements that precede it. This trigger resides in the ssse_triggers_mssql.sql file, which is intended for Siebel implementations that use a Microsoft SQL Server database. The trigger operates when a record is deleted from table S_CONTACT_INFO. For more information about delete triggers, see About Creating Custom Delete Triggers and Creating Custom Delete Triggers.

NOTE:  In this sample text, database_owner serves as a placeholder for the name of the database user who owns the table that the trigger modifies (in this case, the table is S_CONTACT_INFO). Leading hyphens indicate a comment for a Microsoft SQL Server database script.

-- Delete of S_CONTACT_INFO
--
--
-- Drop the 7.8 trigger name

IF exists (select name from sysobjects

where name = 'S_CONTACT_INFO_T1'

and type = 'TR')

drop trigger database_owner.S_CONTACT_INFO_T1

GO

IF exists (select name from sysobjects

where name = 'SSSE_CONT_INFO_T1'

and type = 'TR')

drop trigger database_owner.SSSE_CONT_INFO_T1

GO

CREATE TRIGGER database_owner.SSSE_CONT_INFO_T1
on database_owner.S_CONTACT_INFO
FOR delete
AS

insert into database_owner.S_SD_SYNC_INFO ( ROW_ID,

CREATED,
CREATED_BY,
LAST_UPD,
LAST_UPD_BY,
MODIFICATION_NUM,
CONFLICT_ID,
SEBL_DOMAIN_IDEN,
SEBL_ROW_IDEN,
SEBL_USER_ID,
OPERATION_TYPE,
DB_LAST_UPD,
DB_LAST_UPD_SRC)

select NULL,

GETUTCDATE(),
'PIMSI',
GETUTCDATE(),
'PIMSI',
0,
'0',
'PIMSI Intermediate PersonalContact',
dd.TARGET_PER_ID,
dd.OWNER_PER_ID,
'delete',
GETUTCDATE(),
'PIMSI'

from deleted dd

insert into database_owner.S_SD_SYNC_INFO ( ROW_ID,

CREATED,
CREATED_BY,
LAST_UPD,
LAST_UPD_BY,
MODIFICATION_NUM,
CONFLICT_ID,
SEBL_DOMAIN_IDEN,
SEBL_ROW_IDEN,
SEBL_USER_ID,
OPERATION_TYPE,
DB_LAST_UPD,
DB_LAST_UPD_SRC)

select NULL,

GETUTCDATE(),
'PIMSI',
GETUTCDATE(),
'PIMSI',
0,
'0',
'PIMSI Intermediate Business Contact',
dd.TARGET_PER_ID,
dd.OWNER_PER_ID,
'delete',
GETUTCDATE(),
'PIMSI'

from deleted dd

insert into database_owner.S_SD_SYNC_INFO ( ROW_ID,

CREATED,
CREATED_BY,
LAST_UPD,
LAST_UPD_BY,
MODIFICATION_NUM,
CONFLICT_ID,
SEBL_DOMAIN_IDEN,
SEBL_ROW_IDEN,
SEBL_USER_ID,
OPERATION_TYPE,
DB_LAST_UPD,
DB_LAST_UPD_SRC)

select NULL,

GETUTCDATE(),
'PIMSI',
GETUTCDATE(),
'PIMSI',
0,
'0',
'PIMSI Intermediate Employee',
dd.TARGET_PER_ID,
dd.OWNER_PER_ID,
'delete',
GETUTCDATE(),
'PIMSI'

from deleted dd

GO

The following facts might be useful to you as you create new delete triggers based on existing triggers such as the preceding sample:

  • Delete triggers can also be used to operate when records are updated. SSSE_CONTACT_PIM3 and SSSE_ACT_EMP_PIM3 are examples of existing triggers of this type.
  • The list of columns inserted by each delete-trigger is the same for each record that is created in the S_SD_SYNC_INFO table. In the preceding sample, the list of columns begins with ROW_ID and ends with DB_LAST_UPD_SRC.
Siebel Server Sync Guide Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Legal Notices.