CREATE TABLE [dbo].[harlinkedprocess]
(
[stateobjid] [int] NOT NULL,
[parentprocobjid] [int] NOT NULL,
[processobjid] [int] NOT NULL,
[processorder] [int] NOT NULL,
[processname] [char] (128) COLLATE SQL_Latin1_General_CP1_CS_AS NOT NULL,
[processtype] [char] (32) COLLATE SQL_Latin1_General_CP1_CS_AS NOT NULL,
[processprelink] [char] (1) COLLATE SQL_Latin1_General_CP1_CS_AS NOT NULL
) ON [PRIMARY]
GO
ALTER TABLE [dbo].[harlinkedprocess] ADD CONSTRAINT [XPKharlinkedprocess] PRIMARY KEY CLUSTERED ([parentprocobjid], [processobjid]) ON [PRIMARY]
GO
CREATE UNIQUE NONCLUSTERED INDEX [HARLINKEDPROCESS_IND] ON [dbo].[harlinkedprocess] ([parentprocobjid], [processname], [processprelink]) ON [PRIMARY]
GO
CREATE NONCLUSTERED INDEX [HARLINKEDPROCESS_PARENT] ON [dbo].[harlinkedprocess] ([parentprocobjid], [processprelink], [processorder]) ON [PRIMARY]
GO
CREATE NONCLUSTERED INDEX [HARLINKEDPROCESS_POBJID] ON [dbo].[harlinkedprocess] ([processobjid]) ON [PRIMARY]
GO
ALTER TABLE [dbo].[harlinkedprocess] ADD CONSTRAINT [HARLINKEDPROCESS_SPID_FK] FOREIGN KEY ([stateobjid], [parentprocobjid]) REFERENCES [dbo].[harstateprocess] ([stateobjid], [processobjid]) ON DELETE CASCADE
GO
ALTER TABLE [dbo].[harlinkedprocess] ADD CONSTRAINT [HARLINKEDPROCESS_STATEID_FK] FOREIGN KEY ([stateobjid]) REFERENCES [dbo].[harstate] ([stateobjid]) ON DELETE CASCADE
GO
GRANT SELECT ON [dbo].[harlinkedprocess] TO [harvest_group]
GRANT INSERT ON [dbo].[harlinkedprocess] TO [harvest_group]
GRANT DELETE ON [dbo].[harlinkedprocess] TO [harvest_group]
GRANT UPDATE ON [dbo].[harlinkedprocess] TO [harvest_group]
GRANT SELECT ON [dbo].[harlinkedprocess] TO [harvest_rep]
GO