From 5935961e4a3b5c39878e9df8abffb2e9a4a27a2b Mon Sep 17 00:00:00 2001 From: Adam Rauch Date: Tue, 10 Feb 2026 15:43:14 -0800 Subject: [PATCH 01/11] PostgreSQL support for SNPRC modules --- .../sqlserver/snprc_ehr-0.000-25.000.sql | 605 +++++++++--------- 1 file changed, 301 insertions(+), 304 deletions(-) diff --git a/snprc_ehr/resources/schemas/dbscripts/sqlserver/snprc_ehr-0.000-25.000.sql b/snprc_ehr/resources/schemas/dbscripts/sqlserver/snprc_ehr-0.000-25.000.sql index 7a0af5bd..02caa46a 100644 --- a/snprc_ehr/resources/schemas/dbscripts/sqlserver/snprc_ehr-0.000-25.000.sql +++ b/snprc_ehr/resources/schemas/dbscripts/sqlserver/snprc_ehr-0.000-25.000.sql @@ -148,7 +148,8 @@ CREATE TABLE snprc_ehr.species arc_species_code NVARCHAR(3), objectid NVARCHAR(4000), tid INT, - CONSTRAINT pk_species PRIMARY KEY (common ) + + CONSTRAINT pk_species PRIMARY KEY (common) ); -- change primary key to species_code column @@ -162,15 +163,15 @@ ALTER TABLE snprc_ehr.species ADD CONSTRAINT pk_species PRIMARY KEY (species_cod CREATE TABLE snprc_ehr.clinical_observation_datasets ( - rowId Int NOT NULL, + rowId Int NOT NULL, dataset_name NVARCHAR(255) NOT NULL, category_name NVARCHAR(255) NOT NULL, sort_order Int NULL, - Container entityId NOT NULL, + Container entityId NOT NULL, CONSTRAINT pk_clinical_observation_datasets PRIMARY KEY (rowId), CONSTRAINT FK_clinical_observation_datasets_Container FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) - ); +); GO @@ -190,8 +191,7 @@ CREATE TABLE snprc_ehr.validAccounts( ModifiedBy USERID, objectid NVARCHAR(4000) - CONSTRAINT [PK_VALID_ACCOUNTS] PRIMARY KEY CLUSTERED ( account ASC ) - + CONSTRAINT [PK_VALID_ACCOUNTS] PRIMARY KEY CLUSTERED ( account ASC ) ); GO @@ -222,10 +222,8 @@ CREATE TABLE snprc_ehr.lab_tests ( GO CREATE INDEX IDX_snprc_lab_tests_test_id ON snprc_ehr.lab_tests (testid); - GO - CREATE TABLE snprc_ehr.labwork_services ( servicename varchar(200) NOT NULL, serviceid varchar(200) NOT NULL, @@ -253,87 +251,87 @@ CREATE TABLE snprc_ehr.labwork_services ( GO CREATE TABLE snprc_ehr.validInstitutions ( - institution_id integer NOT NULL , - institution_name varchar(200) NOT NULL, - short_name varchar(20) NOT NULL, - city varchar(50) NOT NULL, - state varchar(20) NOT NULL, - affiliate varchar(50) NULL, - web_site varchar(200) NULL, - objectid nvarchar(4000) NOT NULL, - Created DATETIME, - CreatedBy USERID, - Modified DATETIME, - ModifiedBy USERID, - Container entityId NOT NULL, - -CONSTRAINT PK_snprc_valid_institutions PRIMARY KEY (institution_id), -CONSTRAINT FK_snprc_valid_institutions FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) + institution_id integer NOT NULL , + institution_name varchar(200) NOT NULL, + short_name varchar(20) NOT NULL, + city varchar(50) NOT NULL, + state varchar(20) NOT NULL, + affiliate varchar(50) NULL, + web_site varchar(200) NULL, + objectid nvarchar(4000) NOT NULL, + Created DATETIME, + CreatedBy USERID, + Modified DATETIME, + ModifiedBy USERID, + Container entityId NOT NULL, + + CONSTRAINT PK_snprc_valid_institutions PRIMARY KEY (institution_id), + CONSTRAINT FK_snprc_valid_institutions FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) ); GO CREATE TABLE snprc_ehr.validVets ( - vetId integer NOT NULL, - displayName varchar(128) NOT NULL , - emailAddress varchar(128) NULL, - status varchar(10) NOT NULL, - objectid nvarchar(4000) NOT NULL, - Created DATETIME, - CreatedBy USERID, - Modified DATETIME, - ModifiedBy USERID, - Container entityId NOT NULL, - - CONSTRAINT PK_snprc_validVets PRIMARY KEY (vetId), - CONSTRAINT FK_snprc_validVets FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) + vetId integer NOT NULL, + displayName varchar(128) NOT NULL , + emailAddress varchar(128) NULL, + status varchar(10) NOT NULL, + objectid nvarchar(4000) NOT NULL, + Created DATETIME, + CreatedBy USERID, + Modified DATETIME, + ModifiedBy USERID, + Container entityId NOT NULL, + + CONSTRAINT PK_snprc_validVets PRIMARY KEY (vetId), + CONSTRAINT FK_snprc_validVets FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) ); GO CREATE TABLE snprc_ehr.valid_bd_status ( - value integer NOT NULL, - description varchar(128) NOT NULL , - objectid nvarchar(4000) NULL, - Created DATETIME, - CreatedBy USERID, - Modified DATETIME, - ModifiedBy USERID, - Container entityId NOT NULL, - - CONSTRAINT PK_snprc_valid_bd_status PRIMARY KEY (value), - CONSTRAINT FK_snprc_valid_bd_status FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) + value integer NOT NULL, + description varchar(128) NOT NULL , + objectid nvarchar(4000) NULL, + Created DATETIME, + CreatedBy USERID, + Modified DATETIME, + ModifiedBy USERID, + Container entityId NOT NULL, + + CONSTRAINT PK_snprc_valid_bd_status PRIMARY KEY (value), + CONSTRAINT FK_snprc_valid_bd_status FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) ); GO CREATE TABLE snprc_ehr.valid_birth_code ( - value integer NOT NULL, - description varchar(128) NOT NULL , - objectid nvarchar(4000) NULL, - Created DATETIME, - CreatedBy USERID, - Modified DATETIME, - ModifiedBy USERID, - Container entityId NOT NULL, - - CONSTRAINT PK_snprc_valid_birth_code PRIMARY KEY (value), - CONSTRAINT FK_snprc_valid_birth_code FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) + value integer NOT NULL, + description varchar(128) NOT NULL , + objectid nvarchar(4000) NULL, + Created DATETIME, + CreatedBy USERID, + Modified DATETIME, + ModifiedBy USERID, + Container entityId NOT NULL, + + CONSTRAINT PK_snprc_valid_birth_code PRIMARY KEY (value), + CONSTRAINT FK_snprc_valid_birth_code FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) ); GO CREATE TABLE snprc_ehr.valid_death_code ( - value integer NOT NULL, - description varchar(128) NOT NULL , - objectid nvarchar(4000) NULL, - Created DATETIME, - CreatedBy USERID, - Modified DATETIME, - ModifiedBy USERID, - Container entityId NOT NULL, - - CONSTRAINT PK_snprc_valid_death_code PRIMARY KEY (value), - CONSTRAINT FK_snprc_valid_death_code FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) + value integer NOT NULL, + description varchar(128) NOT NULL , + objectid nvarchar(4000) NULL, + Created DATETIME, + CreatedBy USERID, + Modified DATETIME, + ModifiedBy USERID, + Container entityId NOT NULL, + + CONSTRAINT PK_snprc_valid_death_code PRIMARY KEY (value), + CONSTRAINT FK_snprc_valid_death_code FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) ); GO @@ -395,53 +393,53 @@ ALTER TABLE snprc_ehr.lab_tests DROP COLUMN entryDateTm; ALTER TABLE snprc_ehr.lab_tests DROP COLUMN userName; CREATE TABLE snprc_ehr.animal_group_categories( - category_code int NOT NULL, - description varchar(128) NULL, - comment varchar(128) NULL, - displayable char(1) NOT NULL, - species char(2) NULL, - sex char(1) NULL, - enforce_exclusivity char(1) NOT NULL, - allow_future_date char(1) NOT NULL, - sort_order int NULL, - objectid nvarchar(4000) NULL, - Created DATETIME, - CreatedBy USERID, - Modified DATETIME, - ModifiedBy USERID, - diCreated DATETIME, - diModified DATETIME, - diCreatedBy USERID, - diModifiedBy USERID, - Container entityId NOT NULL, - - CONSTRAINT PK_animal_group_categories PRIMARY KEY (category_code), - CONSTRAINT FK_animal_group_categories FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) + category_code int NOT NULL, + description varchar(128) NULL, + comment varchar(128) NULL, + displayable char(1) NOT NULL, + species char(2) NULL, + sex char(1) NULL, + enforce_exclusivity char(1) NOT NULL, + allow_future_date char(1) NOT NULL, + sort_order int NULL, + objectid nvarchar(4000) NULL, + Created DATETIME, + CreatedBy USERID, + Modified DATETIME, + ModifiedBy USERID, + diCreated DATETIME, + diModified DATETIME, + diCreatedBy USERID, + diModifiedBy USERID, + Container entityId NOT NULL, + + CONSTRAINT PK_animal_group_categories PRIMARY KEY (category_code), + CONSTRAINT FK_animal_group_categories FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) ); GO CREATE TABLE snprc_ehr.animal_groups( - code INT NOT NULL, - category_code INT NOT NULL, - description VARCHAR(128) NOT NULL, - date DATE NOT NULL, - enddate DATE NULL, - comment VARCHAR(MAX) NULL, - sort_order INT NULL, - objectid nvarchar(4000) NULL, - Created DATETIME, - CreatedBy USERID, - Modified DATETIME, - ModifiedBy USERID, - diCreated DATETIME, - diModified DATETIME, - diCreatedBy USERID, - diModifiedBy USERID, - Container entityId NOT NULL, - - CONSTRAINT PK_snprc_animal_groups PRIMARY KEY (code, category_code), - CONSTRAINT FK_snprc_animal_groups FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) + code INT NOT NULL, + category_code INT NOT NULL, + description VARCHAR(128) NOT NULL, + date DATE NOT NULL, + enddate DATE NULL, + comment VARCHAR(MAX) NULL, + sort_order INT NULL, + objectid nvarchar(4000) NULL, + Created DATETIME, + CreatedBy USERID, + Modified DATETIME, + ModifiedBy USERID, + diCreated DATETIME, + diModified DATETIME, + diCreatedBy USERID, + diModifiedBy USERID, + Container entityId NOT NULL, + + CONSTRAINT PK_snprc_animal_groups PRIMARY KEY (code, category_code), + CONSTRAINT FK_snprc_animal_groups FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) ); GO @@ -517,30 +515,30 @@ IF exists (select 1 from INFORMATION_SCHEMA.TABLES where TABLE_NAME = 'labwork_s drop table snprc_ehr.labwork_services CREATE TABLE snprc_ehr.labwork_services ( - rowId int identity, - serviceName varchar(200) NOT NULL, - serviceId varchar(200) NOT NULL, - dataset varchar(200), - chargeType varchar(200), - collectionMethod varchar(500), - alertOnComplete bit, - tissue varchar(100), - outsideLab bit, - dateDisabled datetime, - method varchar(100), - objectid UNIQUEIDENTIFIER not null default newid(), - Created DATETIME, - CreatedBy USERID, - Modified DATETIME, - ModifiedBy USERID, - diCreated DATETIME, - diModified DATETIME, - diCreatedBy USERID, - diModifiedBy USERID, - Container entityId NOT NULL, - - CONSTRAINT PK_snprc_labwork_services PRIMARY KEY (rowId), - CONSTRAINT FK_snprc_labwork_services FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) + rowId int identity, + serviceName varchar(200) NOT NULL, + serviceId varchar(200) NOT NULL, + dataset varchar(200), + chargeType varchar(200), + collectionMethod varchar(500), + alertOnComplete bit, + tissue varchar(100), + outsideLab bit, + dateDisabled datetime, + method varchar(100), + objectid UNIQUEIDENTIFIER not null default newid(), + Created DATETIME, + CreatedBy USERID, + Modified DATETIME, + ModifiedBy USERID, + diCreated DATETIME, + diModified DATETIME, + diCreatedBy USERID, + diModifiedBy USERID, + Container entityId NOT NULL, + + CONSTRAINT PK_snprc_labwork_services PRIMARY KEY (rowId), + CONSTRAINT FK_snprc_labwork_services FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) ); CREATE UNIQUE INDEX idx_labwork_services_serviceName ON snprc_ehr.labwork_services (serviceName) @@ -595,43 +593,43 @@ GO -- labwork_services CREATE TABLE snprc_ehr.labwork_services ( - RowId [INT] IDENTITY(1,1) NOT NULL, - ServiceName varchar(100) NOT NULL, - ServiceId INT NOT NULL, - Dataset varchar(100), - ChargeType varchar(100), - CollectionMethod varchar(500), - AlertOnComplete bit, - Tissue varchar(100), - OutsideLab bit, - DateDisabled datetime, - Method varchar(100), - Active INT, - Bench varchar(20), - ObjectId nvarchar(4000), - [Created] [DATETIME] NULL, - [CreatedBy] [dbo].[USERID] NULL, - [Modified] [DATETIME] NULL, - [ModifiedBy] [dbo].[USERID] NULL, - [DiCreated] [DATETIME] NULL, - [DiModified] [DATETIME] NULL, - [DiCreatedBy] [dbo].[USERID] NULL, - [DiModifiedBy] [dbo].[USERID] NULL, - Container entityId NOT NULL, - - CONSTRAINT PK_snprc_labwork_services PRIMARY KEY (ServiceId), - CONSTRAINT FK_snprc_labwork_services_container FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) + RowId [INT] IDENTITY(1,1) NOT NULL, + ServiceName varchar(100) NOT NULL, + ServiceId INT NOT NULL, + Dataset varchar(100), + ChargeType varchar(100), + CollectionMethod varchar(500), + AlertOnComplete bit, + Tissue varchar(100), + OutsideLab bit, + DateDisabled datetime, + Method varchar(100), + Active INT, + Bench varchar(20), + ObjectId nvarchar(4000), + [Created] [DATETIME] NULL, + [CreatedBy] [dbo].[USERID] NULL, + [Modified] [DATETIME] NULL, + [ModifiedBy] [dbo].[USERID] NULL, + [DiCreated] [DATETIME] NULL, + [DiModified] [DATETIME] NULL, + [DiCreatedBy] [dbo].[USERID] NULL, + [DiModifiedBy] [dbo].[USERID] NULL, + Container entityId NOT NULL, + + CONSTRAINT PK_snprc_labwork_services PRIMARY KEY (ServiceId), + CONSTRAINT FK_snprc_labwork_services_container FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) ); GO -ALTER TABLE [snprc_ehr].[labwork_services] ADD DEFAULT (NEWID()) FOR [ObjectId] +ALTER TABLE [snprc_ehr].[labwork_services] ADD DEFAULT (NEWID()) FOR [ObjectId] GO CREATE UNIQUE INDEX idx_labwork_services_serviceId ON [snprc_ehr].[labwork_services](ServiceId); GO -ALTER TABLE [snprc_ehr].[labwork_services] WITH CHECK ADD CONSTRAINT [FK_snprc_labwork_panels_dataset] FOREIGN KEY([Dataset]) +ALTER TABLE [snprc_ehr].[labwork_services] WITH CHECK ADD CONSTRAINT [FK_snprc_labwork_panels_dataset] FOREIGN KEY([Dataset]) REFERENCES [snprc_ehr].[labwork_types] ([ServiceType]) GO @@ -640,30 +638,31 @@ GO -- labwork_panels CREATE TABLE [snprc_ehr].[labwork_panels]( - RowId [INT] IDENTITY(1,1) NOT NULL, - [ServiceId] INT NOT NULL, - [TestId] [VARCHAR](100) NOT NULL, - [TestName] [VARCHAR](100) NULL, - [Units] [VARCHAR](100) NULL, - [SortOrder] INT NULL, - [Aliases] [VARCHAR](1000) NULL, - [AlertOnAbnormal] [BIT] NULL, - [AlertOnAny] [BIT] NULL, - [IncludeInPanel] [BIT] NULL, - [Created] [DATETIME] NULL, - [CreatedBy] [dbo].[USERID] NULL, - [Modified] [DATETIME] NULL, - [ModifiedBy] [dbo].[USERID] NULL, - [Container] [dbo].[ENTITYID] NOT NULL, - [DiCreated] [DATETIME] NULL, - [DiModified] [DATETIME] NULL, - [DiCreatedBy] [dbo].[USERID] NULL, - [DiModifiedBy] [dbo].[USERID] NULL, - [ObjectId] [UNIQUEIDENTIFIER] NOT NULL, - CONSTRAINT [PK_snprc_labwork_panels] PRIMARY KEY CLUSTERED + RowId [INT] IDENTITY(1,1) NOT NULL, + [ServiceId] INT NOT NULL, + [TestId] [VARCHAR](100) NOT NULL, + [TestName] [VARCHAR](100) NULL, + [Units] [VARCHAR](100) NULL, + [SortOrder] INT NULL, + [Aliases] [VARCHAR](1000) NULL, + [AlertOnAbnormal] [BIT] NULL, + [AlertOnAny] [BIT] NULL, + [IncludeInPanel] [BIT] NULL, + [Created] [DATETIME] NULL, + [CreatedBy] [dbo].[USERID] NULL, + [Modified] [DATETIME] NULL, + [ModifiedBy] [dbo].[USERID] NULL, + [Container] [dbo].[ENTITYID] NOT NULL, + [DiCreated] [DATETIME] NULL, + [DiModified] [DATETIME] NULL, + [DiCreatedBy] [dbo].[USERID] NULL, + [DiModifiedBy] [dbo].[USERID] NULL, + [ObjectId] [UNIQUEIDENTIFIER] NOT NULL, + CONSTRAINT [PK_snprc_labwork_panels] PRIMARY KEY CLUSTERED ( - [RowId] ASC - )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] + [RowId] ASC + ) + WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] GO @@ -709,10 +708,10 @@ CREATE TABLE [snprc_ehr].[MhcData]( go -ALTER TABLE [snprc_ehr].[MhcData] ADD DEFAULT (NEWID()) FOR [ObjectId] +ALTER TABLE [snprc_ehr].[MhcData] ADD DEFAULT (NEWID()) FOR [ObjectId] GO -ALTER TABLE [snprc_ehr].[MhcData] ADD CONSTRAINT [AK_ID_Haplotype] UNIQUE NONCLUSTERED +ALTER TABLE [snprc_ehr].[MhcData] ADD CONSTRAINT [AK_ID_Haplotype] UNIQUE NONCLUSTERED ( [Id] ASC, [Haplotype] ASC @@ -2026,78 +2025,80 @@ CREATE TABLE snprc_ehr.HL7_PathologyCasesStaging ( GO CREATE TABLE snprc_ehr.HL7_PathologyDiagnosesStaging ( - ID NVARCHAR(32) NOT NULL, - Date DATETIME NOT NULL, - AccessionNumber NVARCHAR(40) NULL, - RowId BIGINT IDENTITY(1,1) NOT NULL, - Morphology NVARCHAR(4000) NULL, - Organ NVARCHAR(4000) NULL, - EtiologyCode NVARCHAR(4000) NULL, - SpecificEtiology NVARCHAR(4000) NULL, - PerformedBy NVARCHAR(64) NULL, - Description NVARCHAR(4000) NULL, - Remark NVARCHAR(4000) NULL, - Created datetime NULL, - CreatedBy dbo.USERID NULL, - Modified datetime NULL, - ModifiedBy dbo.USERID NULL, - Container dbo.ENTITYID NOT NULL, - ObjectId uniqueidentifier NULL, - timestamp ROWVERSION, + ID NVARCHAR(32) NOT NULL, + Date DATETIME NOT NULL, + AccessionNumber NVARCHAR(40) NULL, + RowId BIGINT IDENTITY(1,1) NOT NULL, + Morphology NVARCHAR(4000) NULL, + Organ NVARCHAR(4000) NULL, + EtiologyCode NVARCHAR(4000) NULL, + SpecificEtiology NVARCHAR(4000) NULL, + PerformedBy NVARCHAR(64) NULL, + Description NVARCHAR(4000) NULL, + Remark NVARCHAR(4000) NULL, + Created datetime NULL, + CreatedBy dbo.USERID NULL, + Modified datetime NULL, + ModifiedBy dbo.USERID NULL, + Container dbo.ENTITYID NOT NULL, + ObjectId uniqueidentifier NULL, + timestamp ROWVERSION, - CONSTRAINT PK_HL7_PathologyDiagnosesStaging PRIMARY KEY CLUSTERED - ( - RowID ASC - )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) + CONSTRAINT PK_HL7_PathologyDiagnosesStaging PRIMARY KEY CLUSTERED + ( + RowID ASC + ) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ) GO CREATE TABLE snprc_ehr.HL7_DeletePathologyCasesStaging ( - AccessionNumber NVARCHAR(10) NOT NULL, - ObjectId UNIQUEIDENTIFIER NOT NULL, - timestamp ROWVERSION + AccessionNumber NVARCHAR(10) NOT NULL, + ObjectId UNIQUEIDENTIFIER NOT NULL, + timestamp ROWVERSION - CONSTRAINT PK_HL7_DeletePathologyCasesStaging PRIMARY KEY CLUSTERED - ( - AccessionNumber ASC, - ObjectId ASC - )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) + CONSTRAINT PK_HL7_DeletePathologyCasesStaging PRIMARY KEY CLUSTERED + ( + AccessionNumber ASC, + ObjectId ASC + ) + WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ) GO CREATE TABLE snprc_ehr.HL7_DeletePathologyDiagnosesStaging ( - AccessionNumber NVARCHAR(10) NOT NULL, - ObjectId uniqueidentifier NOT NULL, - timestamp ROWVERSION + AccessionNumber NVARCHAR(10) NOT NULL, + ObjectId uniqueidentifier NOT NULL, + timestamp ROWVERSION - CONSTRAINT PK_HL7_DeletePathologyDiagnosesStaging PRIMARY KEY CLUSTERED - ( - AccessionNumber ASC, - ObjectId ASC - )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) + CONSTRAINT PK_HL7_DeletePathologyDiagnosesStaging PRIMARY KEY CLUSTERED + ( + AccessionNumber ASC, + ObjectId ASC + ) + WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ) GO CREATE TABLE snprc_ehr.HL7_Demographics ( - ID NVARCHAR(32) NOT NULL, - RowId BIGINT IDENTITY(1,1) NOT NULL, - Gender NVARCHAR(32) NULL, - Species NVARCHAR(32) NOT NULL, - Breed NVARCHAR(40) NOT NULL, - BirthDate DATETIME NULL, - DeathDate DATETIME NULL, - isDeceased NVARCHAR(32) NULL, - Dam NVARCHAR(32) NULL, - Sire NVARCHAR(32) Null, - ObjectId uniqueidentifier NULL, - Modified datetime NULL, - ModifiedBy NVARCHAR(32) NULL, - Container dbo.ENTITYID NOT NULL, + ID NVARCHAR(32) NOT NULL, + RowId BIGINT IDENTITY(1,1) NOT NULL, + Gender NVARCHAR(32) NULL, + Species NVARCHAR(32) NOT NULL, + Breed NVARCHAR(40) NOT NULL, + BirthDate DATETIME NULL, + DeathDate DATETIME NULL, + isDeceased NVARCHAR(32) NULL, + Dam NVARCHAR(32) NULL, + Sire NVARCHAR(32) Null, + ObjectId uniqueidentifier NULL, + Modified datetime NULL, + ModifiedBy NVARCHAR(32) NULL, + Container dbo.ENTITYID NOT NULL, - CONSTRAINT PK_HL7_Demographics PRIMARY KEY CLUSTERED - ( - RowId ASC - )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) + CONSTRAINT PK_HL7_Demographics PRIMARY KEY CLUSTERED + ( + RowId ASC + ) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ) GO @@ -2182,8 +2183,6 @@ CREATE TABLE snprc_ehr.SndPackageAttributeStaging ); GO -/* 24.xxx SQL scripts */ - EXEC core.fn_dropifexists @objname = 'therapy_formulary', @objschema = 'snprc_ehr', @objtype = 'TABLE'; EXEC core.fn_dropifexists @objname = 'therapy_frequency', @objschema = 'snprc_ehr', @objtype = 'TABLE'; EXEC core.fn_dropifexists @objname = 'therapy_routes', @objschema = 'snprc_ehr', @objtype = 'TABLE'; @@ -2191,62 +2190,60 @@ EXEC core.fn_dropifexists @objname = 'therapy_units', @objschema = 'snprc_ehr', EXEC core.fn_dropifexists @objname = 'therapy_resolutions', @objschema = 'snprc_ehr', @objtype = 'TABLE'; CREATE TABLE snprc_ehr.therapy_formulary( - RowId INT NOT NULL, - drug VARCHAR(400) NOT NULL, - dose NUMERIC(8, 4) NOT NULL, - route INT NOT NULL, -- FK snprc_ehr.therapy_routes.RowId - frequency INT NOT NULL, -- FK snprc_ehr.therapy_frequency.RowId` - duration INT NOT NULL, - units INT NOT NULL, -- FK snprc_ehr.therapy_units.RowId - isActive INT NULL, - dateDisabled DATETIME NULL, - Container dbo.ENTITYID NOT NULL, - Created DATETIME NULL, - CreatedBy dbo.USERID NULL, - Modified DATETIME NULL, - ModifiedBy dbo.USERID NULL, - ObjectId UNIQUEIDENTIFIER NOT NULL - - CONSTRAINT PK_therapy_formulary PRIMARY KEY CLUSTERED (RowId) + RowId INT NOT NULL, + drug VARCHAR(400) NOT NULL, + dose NUMERIC(8, 4) NOT NULL, + route INT NOT NULL, -- FK snprc_ehr.therapy_routes.RowId + frequency INT NOT NULL, -- FK snprc_ehr.therapy_frequency.RowId` + duration INT NOT NULL, + units INT NOT NULL, -- FK snprc_ehr.therapy_units.RowId + isActive INT NULL, + dateDisabled DATETIME NULL, + Container dbo.ENTITYID NOT NULL, + Created DATETIME NULL, + CreatedBy dbo.USERID NULL, + Modified DATETIME NULL, + ModifiedBy dbo.USERID NULL, + ObjectId UNIQUEIDENTIFIER NOT NULL + + CONSTRAINT PK_therapy_formulary PRIMARY KEY CLUSTERED (RowId) ) -ALTER TABLE snprc_ehr.therapy_formulary WITH CHECK ADD CONSTRAINT FK_therapy_formulary_container FOREIGN KEY(Container) +ALTER TABLE snprc_ehr.therapy_formulary WITH CHECK ADD CONSTRAINT FK_therapy_formulary_container FOREIGN KEY(Container) REFERENCES core.Containers (EntityId) GO - CREATE TABLE snprc_ehr.therapy_routes( + RowId INT NOT NULL, + route VARCHAR(30) NOT NULL, + description VARCHAR(100) NULL, + isActive INT NULL, + Container dbo.ENTITYID NOT NULL, + Created DATETIME NULL, + CreatedBy dbo.USERID NULL, + Modified DATETIME NULL, + ModifiedBy dbo.USERID NULL, + ObjectId UNIQUEIDENTIFIER NULL - RowId INT NOT NULL, - route VARCHAR(30) NOT NULL, - description VARCHAR(100) NULL, - isActive INT NULL, - Container dbo.ENTITYID NOT NULL, - Created DATETIME NULL, - CreatedBy dbo.USERID NULL, - Modified DATETIME NULL, - ModifiedBy dbo.USERID NULL, - ObjectId UNIQUEIDENTIFIER NULL - - CONSTRAINT PK_therapy_routes PRIMARY KEY CLUSTERED (RowId) + CONSTRAINT PK_therapy_routes PRIMARY KEY CLUSTERED (RowId) ) ALTER TABLE snprc_ehr.therapy_routes WITH CHECK ADD CONSTRAINT FK_therapy_routes FOREIGN KEY(Container) REFERENCES core.Containers (EntityId) GO CREATE TABLE snprc_ehr.therapy_units( - RowId INT NOT NULL, - units VARCHAR(30) NOT NULL, - description VARCHAR(100), - isActive INT NULL, - Container dbo.ENTITYID NOT NULL, - Created DATETIME NULL, - CreatedBy dbo.USERID NULL, - Modified DATETIME NULL, - ModifiedBy dbo.USERID NULL, - ObjectId UNIQUEIDENTIFIER NULL - - CONSTRAINT PK_therapy_units PRIMARY KEY CLUSTERED (RowId) + RowId INT NOT NULL, + units VARCHAR(30) NOT NULL, + description VARCHAR(100), + isActive INT NULL, + Container dbo.ENTITYID NOT NULL, + Created DATETIME NULL, + CreatedBy dbo.USERID NULL, + Modified DATETIME NULL, + ModifiedBy dbo.USERID NULL, + ObjectId UNIQUEIDENTIFIER NULL + + CONSTRAINT PK_therapy_units PRIMARY KEY CLUSTERED (RowId) ) ALTER TABLE snprc_ehr.therapy_units WITH CHECK ADD CONSTRAINT FK_therapy_units FOREIGN KEY(Container) REFERENCES core.Containers (EntityId) @@ -2254,7 +2251,6 @@ ALTER TABLE snprc_ehr.therapy_units WITH CHECK ADD CONSTRAINT FK_therapy_units CREATE TABLE snprc_ehr.therapy_resolutions ( - RowId INT NOT NULL, resolution VARCHAR(30) NOT NULL, isActive INT NULL, @@ -2265,7 +2261,7 @@ CREATE TABLE snprc_ehr.therapy_resolutions ModifiedBy dbo.USERID NULL, ObjectId UNIQUEIDENTIFIER NULL - CONSTRAINT PK_therapy_resolutions PRIMARY KEY CLUSTERED (RowId) + CONSTRAINT PK_therapy_resolutions PRIMARY KEY CLUSTERED (RowId) ) ALTER TABLE snprc_ehr.therapy_resolutions WITH CHECK ADD CONSTRAINT FK_therapy_resolutions FOREIGN KEY(Container) @@ -2273,19 +2269,20 @@ ALTER TABLE snprc_ehr.therapy_resolutions WITH CHECK ADD CONSTRAINT FK_therapy GO CREATE TABLE snprc_ehr.therapy_frequency( - RowId INT NOT NULL, - frequency VARCHAR(30) NOT NULL, - description VARCHAR(100) NULL, - isActive INT NULL, - Container dbo.ENTITYID NOT NULL, - Created DATETIME NULL, - CreatedBy dbo.USERID NULL, - Modified DATETIME NULL, - ModifiedBy dbo.USERID NULL, - ObjectId UNIQUEIDENTIFIER NOT NULL - - CONSTRAINT PK_therapy_frequency PRIMARY KEY CLUSTERED (RowId) + RowId INT NOT NULL, + frequency VARCHAR(30) NOT NULL, + description VARCHAR(100) NULL, + isActive INT NULL, + Container dbo.ENTITYID NOT NULL, + Created DATETIME NULL, + CreatedBy dbo.USERID NULL, + Modified DATETIME NULL, + ModifiedBy dbo.USERID NULL, + ObjectId UNIQUEIDENTIFIER NOT NULL + + CONSTRAINT PK_therapy_frequency PRIMARY KEY CLUSTERED (RowId) ) + ALTER TABLE snprc_ehr.therapy_frequency WITH CHECK ADD CONSTRAINT FK_therapy_frequency FOREIGN KEY(Container) REFERENCES core.Containers (EntityId) GO \ No newline at end of file From 99b05938649bfa4735d0fedf435420acb302a7b8 Mon Sep 17 00:00:00 2001 From: Adam Rauch Date: Tue, 10 Feb 2026 21:40:07 -0800 Subject: [PATCH 02/11] Add semicolons, fix whitespace --- .../sqlserver/snprc_ehr-0.000-25.000.sql | 478 +++++++++--------- 1 file changed, 229 insertions(+), 249 deletions(-) diff --git a/snprc_ehr/resources/schemas/dbscripts/sqlserver/snprc_ehr-0.000-25.000.sql b/snprc_ehr/resources/schemas/dbscripts/sqlserver/snprc_ehr-0.000-25.000.sql index 02caa46a..2d86e5f9 100644 --- a/snprc_ehr/resources/schemas/dbscripts/sqlserver/snprc_ehr-0.000-25.000.sql +++ b/snprc_ehr/resources/schemas/dbscripts/sqlserver/snprc_ehr-0.000-25.000.sql @@ -92,10 +92,10 @@ CREATE PROCEDURE snprc_ehr.handleUpgrade AS GO -EXEC snprc_ehr.handleUpgrade +EXEC snprc_ehr.handleUpgrade; GO -DROP PROCEDURE snprc_ehr.handleUpgrade +DROP PROCEDURE snprc_ehr.handleUpgrade; GO -- Alters existing ehr_lookups.species table to include additional SNPRC species code columns columns needed @@ -120,13 +120,13 @@ CREATE PROCEDURE snprc_ehr.handleUpgrade AS GO -EXEC snprc_ehr.handleUpgrade +EXEC snprc_ehr.handleUpgrade; GO -DROP PROCEDURE snprc_ehr.handleUpgrade +DROP PROCEDURE snprc_ehr.handleUpgrade; GO --- Use custom SNPRC species table instead of ehr_lookups.species +-- Use custom SNPRC species table instead of ehr_lookups species ALTER TABLE ehr_lookups.species DROP COLUMN species_code; ALTER TABLE ehr_lookups.species DROP COLUMN arc_species_code; @@ -154,12 +154,12 @@ CREATE TABLE snprc_ehr.species -- change primary key to species_code column -TRUNCATE TABLE snprc_ehr.species +TRUNCATE TABLE snprc_ehr.species; -ALTER TABLE snprc_ehr.species ALTER COLUMN species_code NVARCHAR(3) NOT NULL -ALTER TABLE snprc_ehr.species ALTER COLUMN arc_species_code NVARCHAR(3) NOT NULL -ALTER TABLE snprc_ehr.species DROP CONSTRAINT pk_species -ALTER TABLE snprc_ehr.species ADD CONSTRAINT pk_species PRIMARY KEY (species_code) +ALTER TABLE snprc_ehr.species ALTER COLUMN species_code NVARCHAR(3) NOT NULL; +ALTER TABLE snprc_ehr.species ALTER COLUMN arc_species_code NVARCHAR(3) NOT NULL; +ALTER TABLE snprc_ehr.species DROP CONSTRAINT pk_species; +ALTER TABLE snprc_ehr.species ADD CONSTRAINT pk_species PRIMARY KEY (species_code); CREATE TABLE snprc_ehr.clinical_observation_datasets ( @@ -492,27 +492,27 @@ ALTER TABLE snprc_ehr.package ADD objectid uniqueidentifier not null default new ALTER TABLE snprc_ehr.clinical_observation_datasets ADD objectid uniqueidentifier not null default newid(); -- create a unique index on the objectid -CREATE UNIQUE INDEX idx_species_objectid ON snprc_ehr.species (objectid) -CREATE UNIQUE INDEX idx_package_category_objectid ON snprc_ehr.package_category (objectid) -CREATE UNIQUE INDEX idx_package_category_junction_objectid ON snprc_ehr.package_category_junction (objectid) -CREATE UNIQUE INDEX idx_animal_groups_objectid ON snprc_ehr.animal_groups (objectid) -CREATE UNIQUE INDEX idx_validVets_objectid ON snprc_ehr.validVets (objectid) -CREATE UNIQUE INDEX idx_lab_tests_objectid ON snprc_ehr.lab_tests (objectid) -CREATE UNIQUE INDEX idx_validAccounts_objectid ON snprc_ehr.validAccounts (objectid) -CREATE UNIQUE INDEX idx_valid_bd_status_objectid ON snprc_ehr.valid_bd_status (objectid) -CREATE UNIQUE INDEX idx_valid_birth_code_objectid ON snprc_ehr.valid_birth_code (objectid) -CREATE UNIQUE INDEX idx_valid_death_code_objectid ON snprc_ehr.valid_death_code (objectid) -CREATE UNIQUE INDEX idx_animal_group_categories_objectid ON snprc_ehr.animal_group_categories (objectid) -CREATE UNIQUE INDEX idx_validInstitutions_objectid ON snprc_ehr.validInstitutions (objectid) -CREATE UNIQUE INDEX idx_package_objectid ON snprc_ehr.package (objectid) +CREATE UNIQUE INDEX idx_species_objectid ON snprc_ehr.species (objectid); +CREATE UNIQUE INDEX idx_package_category_objectid ON snprc_ehr.package_category (objectid); +CREATE UNIQUE INDEX idx_package_category_junction_objectid ON snprc_ehr.package_category_junction (objectid); +CREATE UNIQUE INDEX idx_animal_groups_objectid ON snprc_ehr.animal_groups (objectid); +CREATE UNIQUE INDEX idx_validVets_objectid ON snprc_ehr.validVets (objectid); +CREATE UNIQUE INDEX idx_lab_tests_objectid ON snprc_ehr.lab_tests (objectid); +CREATE UNIQUE INDEX idx_validAccounts_objectid ON snprc_ehr.validAccounts (objectid); +CREATE UNIQUE INDEX idx_valid_bd_status_objectid ON snprc_ehr.valid_bd_status (objectid); +CREATE UNIQUE INDEX idx_valid_birth_code_objectid ON snprc_ehr.valid_birth_code (objectid); +CREATE UNIQUE INDEX idx_valid_death_code_objectid ON snprc_ehr.valid_death_code (objectid); +CREATE UNIQUE INDEX idx_animal_group_categories_objectid ON snprc_ehr.animal_group_categories (objectid); +CREATE UNIQUE INDEX idx_validInstitutions_objectid ON snprc_ehr.validInstitutions (objectid); +CREATE UNIQUE INDEX idx_package_objectid ON snprc_ehr.package (objectid); -- add unique index on code column in snprc_ehr.animal_groups -CREATE UNIQUE INDEX idx_animal_groups_code ON snprc_ehr.animal_groups (code) +CREATE UNIQUE INDEX idx_animal_groups_code ON snprc_ehr.animal_groups (code); -- Need to change the primary key - recreate labwork_services table - The table will need to be repopulated using the ETL process IF exists (select 1 from INFORMATION_SCHEMA.TABLES where TABLE_NAME = 'labwork_services' AND TABLE_SCHEMA = 'snprc_ehr') - drop table snprc_ehr.labwork_services + drop table snprc_ehr.labwork_services; CREATE TABLE snprc_ehr.labwork_services ( rowId int identity, @@ -541,9 +541,9 @@ CREATE TABLE snprc_ehr.labwork_services ( CONSTRAINT FK_snprc_labwork_services FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) ); -CREATE UNIQUE INDEX idx_labwork_services_serviceName ON snprc_ehr.labwork_services (serviceName) -CREATE UNIQUE INDEX idx_labwork_services_serviceId ON snprc_ehr.labwork_services (serviceId) -CREATE UNIQUE INDEX idx_labwork_services_objectid ON snprc_ehr.labwork_services (objectid) +CREATE UNIQUE INDEX idx_labwork_services_serviceName ON snprc_ehr.labwork_services (serviceName); +CREATE UNIQUE INDEX idx_labwork_services_serviceId ON snprc_ehr.labwork_services (serviceId); +CREATE UNIQUE INDEX idx_labwork_services_objectid ON snprc_ehr.labwork_services (objectid); ALTER TABLE snprc_ehr.species ADD Created DATETIME; ALTER TABLE snprc_ehr.species ADD Modified DATETIME; @@ -555,14 +555,14 @@ if exists (select 1 from sysobjects where id = object_id('snprc_ehr.lab_tests') and type = 'U') - drop table snprc_ehr.lab_tests + drop table snprc_ehr.lab_tests; GO if exists (select 1 from sysobjects where id = object_id('snprc_ehr.labwork_services') and type = 'U') - drop table snprc_ehr.labwork_services + drop table snprc_ehr.labwork_services; go -- labwork_types @@ -586,7 +586,7 @@ CREATE TABLE snprc_ehr.labwork_types ( GO -ALTER TABLE [snprc_ehr].[labwork_types] ADD DEFAULT (NEWID()) FOR [ObjectId] +ALTER TABLE [snprc_ehr].[labwork_types] ADD DEFAULT (NEWID()) FOR [ObjectId]; GO @@ -623,17 +623,16 @@ CREATE TABLE snprc_ehr.labwork_services ( GO -ALTER TABLE [snprc_ehr].[labwork_services] ADD DEFAULT (NEWID()) FOR [ObjectId] +ALTER TABLE [snprc_ehr].[labwork_services] ADD DEFAULT (NEWID()) FOR [ObjectId]; GO CREATE UNIQUE INDEX idx_labwork_services_serviceId ON [snprc_ehr].[labwork_services](ServiceId); GO -ALTER TABLE [snprc_ehr].[labwork_services] WITH CHECK ADD CONSTRAINT [FK_snprc_labwork_panels_dataset] FOREIGN KEY([Dataset]) -REFERENCES [snprc_ehr].[labwork_types] ([ServiceType]) +ALTER TABLE [snprc_ehr].[labwork_services] WITH CHECK ADD CONSTRAINT [FK_snprc_labwork_panels_dataset] FOREIGN KEY([Dataset]) REFERENCES [snprc_ehr].[labwork_types] ([ServiceType]); GO -ALTER TABLE [snprc_ehr].[labwork_services] CHECK CONSTRAINT [FK_snprc_labwork_panels_dataset] +ALTER TABLE [snprc_ehr].[labwork_services] CHECK CONSTRAINT [FK_snprc_labwork_panels_dataset]; GO -- labwork_panels @@ -663,24 +662,22 @@ CREATE TABLE [snprc_ehr].[labwork_panels]( [RowId] ASC ) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] -) ON [PRIMARY] +) ON [PRIMARY]; GO -ALTER TABLE [snprc_ehr].[labwork_panels] ADD DEFAULT (NEWID()) FOR [objectid] +ALTER TABLE [snprc_ehr].[labwork_panels] ADD DEFAULT (NEWID()) FOR [objectid]; GO -ALTER TABLE [snprc_ehr].[labwork_panels] WITH CHECK ADD CONSTRAINT [FK_snprc_labwork_panels_container] FOREIGN KEY([Container]) -REFERENCES [core].[Containers] ([EntityId]) +ALTER TABLE [snprc_ehr].[labwork_panels] WITH CHECK ADD CONSTRAINT [FK_snprc_labwork_panels_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); GO -ALTER TABLE [snprc_ehr].[labwork_panels] CHECK CONSTRAINT [FK_snprc_labwork_panels_container] +ALTER TABLE [snprc_ehr].[labwork_panels] CHECK CONSTRAINT [FK_snprc_labwork_panels_container]; GO -ALTER TABLE [snprc_ehr].[labwork_panels] WITH CHECK ADD CONSTRAINT [FK_snprc_labwork_panels_services] FOREIGN KEY([ServiceId]) -REFERENCES [snprc_ehr].[labwork_services] ([ServiceId]) +ALTER TABLE [snprc_ehr].[labwork_panels] WITH CHECK ADD CONSTRAINT [FK_snprc_labwork_panels_services] FOREIGN KEY([ServiceId]) REFERENCES [snprc_ehr].[labwork_services] ([ServiceId]); GO -ALTER TABLE [snprc_ehr].[labwork_panels] CHECK CONSTRAINT [FK_snprc_labwork_panels_services] +ALTER TABLE [snprc_ehr].[labwork_panels] CHECK CONSTRAINT [FK_snprc_labwork_panels_services]; GO CREATE TABLE [snprc_ehr].[MhcData]( @@ -708,14 +705,14 @@ CREATE TABLE [snprc_ehr].[MhcData]( go -ALTER TABLE [snprc_ehr].[MhcData] ADD DEFAULT (NEWID()) FOR [ObjectId] +ALTER TABLE [snprc_ehr].[MhcData] ADD DEFAULT (NEWID()) FOR [ObjectId]; GO ALTER TABLE [snprc_ehr].[MhcData] ADD CONSTRAINT [AK_ID_Haplotype] UNIQUE NONCLUSTERED ( [Id] ASC, [Haplotype] ASC - )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) + )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON); GO CREATE TABLE [snprc_ehr].[ValidChargeBySpecies]( @@ -739,7 +736,7 @@ CREATE TABLE [snprc_ehr].[ValidChargeBySpecies]( go -ALTER TABLE [snprc_ehr].[ValidChargeBySpecies] ADD DEFAULT (NEWID()) FOR [ObjectId] +ALTER TABLE [snprc_ehr].[ValidChargeBySpecies] ADD DEFAULT (NEWID()) FOR [ObjectId]; GO EXEC core.fn_dropifexists 'FeeSchedule','snprc_ehr', 'TABLE'; @@ -764,7 +761,7 @@ CREATE TABLE [snprc_ehr].[FeeSchedule]( CONSTRAINT FK_snprc_fee_Schedule_container FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) ); -CREATE UNIQUE INDEX idx_snprc_fee_schedule_objectid ON snprc_ehr.feeSchedule (objectid) +CREATE UNIQUE INDEX idx_snprc_fee_schedule_objectid ON snprc_ehr.feeSchedule (objectid); CREATE UNIQUE INDEX idx_snprc_fee_schedule_activityId_budgetYear ON snprc_ehr.FeeSchedule (ActivityId, BudgetYear); EXEC core.fn_dropifexists 'FeeSchedule','snprc_ehr', 'TABLE'; @@ -792,7 +789,7 @@ CREATE TABLE [snprc_ehr].[FeeSchedule]( CONSTRAINT FK_snprc_fee_Schedule_container FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) ); -CREATE UNIQUE INDEX idx_snprc_fee_schedule_objectid ON snprc_ehr.feeSchedule (objectid) +CREATE UNIQUE INDEX idx_snprc_fee_schedule_objectid ON snprc_ehr.feeSchedule (objectid); CREATE UNIQUE INDEX idx_snprc_fee_schedule_activityId_budgetYear ON snprc_ehr.FeeSchedule (StartingYear, VersionLabel, ActivityId, BudgetYear); GO @@ -843,8 +840,8 @@ CREATE TABLE [snprc_ehr].[LocationTemperature]( CONSTRAINT [PK_LocationTemperature] PRIMARY KEY CLUSTERED ([Room] ASC,[Date] ASC) CONSTRAINT FK_snprc_LocationTemperature_container FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) -) - GO +); +GO CREATE UNIQUE INDEX idx_snprc_LocationTemperature_objectid ON snprc_ehr.LocationTemperature (ObjectId); @@ -881,7 +878,7 @@ CREATE TABLE [snprc_ehr].[LocationTemperature]( CONSTRAINT [PK_LocationTemperature] PRIMARY KEY CLUSTERED ([Room] ASC,[Date] ASC) CONSTRAINT FK_snprc_LocationTemperature_container FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) -) +); GO CREATE UNIQUE INDEX idx_snprc_LocationTemperature_objectid ON snprc_ehr.LocationTemperature (ObjectId); @@ -929,9 +926,9 @@ CREATE TABLE snprc_ehr.ValidDiet( [Container] [dbo].[ENTITYID] NOT NULL, [objectid] [uniqueidentifier] NOT NULL CONSTRAINT [PK_ValidDiet] PRIMARY KEY CLUSTERED ([Diet] ASC,[StartDate] ASC) - ) +); - go +go EXEC core.fn_dropifexists 'ValidDiet','snprc_ehr', 'TABLE'; @@ -976,11 +973,11 @@ CREATE TABLE snprc_ehr.ValidDiet( [Container] [dbo].[ENTITYID] NOT NULL, [objectid] [uniqueidentifier] NOT NULL CONSTRAINT [PK_ValidDiet] PRIMARY KEY CLUSTERED ([Diet] ASC,[StartDate] ASC) - ) +); -- will need to be changed if we begin to use Diet instead of SnomedCode srr CREATE UNIQUE INDEX idx_ValidDiet_SnomedCode_StartStopDate ON snprc_ehr.ValidDiet(SnomedCode, StartDate, StopDate); - go +go /********************************************************* Valids for diagnosis (DX) taken from legacy DB. @@ -1008,14 +1005,13 @@ CREATE TABLE snprc_ehr.ValidDXGroup diCreatedBy dbo.USERID NULL, diModifiedBy dbo.USERID NULL, Container dbo.ENTITYID NOT NULL, - objectid uniqueidentifier NOT NULL - CONSTRAINT PK_ValidDXGroup PRIMARY KEY CLUSTERED (DXGroup ASC) -) + objectid uniqueidentifier NOT NULL, + CONSTRAINT PK_ValidDXGroup PRIMARY KEY CLUSTERED (DXGroup ASC) +); EXEC core.fn_dropifexists 'ValidDXList','snprc_ehr', 'TABLE'; - --srr 07.17.19 CREATE TABLE snprc_ehr.ValidDXList @@ -1031,9 +1027,10 @@ CREATE TABLE snprc_ehr.ValidDXList diCreatedBy dbo.USERID NULL, diModifiedBy dbo.USERID NULL, Container dbo.ENTITYID NOT NULL, - objectid uniqueidentifier NOT NULL - CONSTRAINT PK_ValidDXList PRIMARY KEY CLUSTERED (DXGroup ASC, DX ASC) -) + objectid uniqueidentifier NOT NULL, + + CONSTRAINT PK_ValidDXList PRIMARY KEY CLUSTERED (DXGroup ASC, DX ASC) +); EXEC core.fn_dropifexists 'ValidVaccines','snprc_ehr', 'TABLE'; @@ -1051,13 +1048,14 @@ CREATE TABLE snprc_ehr.ValidVaccines diCreatedBy dbo.USERID NULL, diModifiedBy dbo.USERID NULL, Container dbo.ENTITYID NOT NULL, - objectid uniqueidentifier NOT NULL - CONSTRAINT PK_ValidVaccine PRIMARY KEY CLUSTERED (Vaccine ASC) -) + objectid uniqueidentifier NOT NULL, + + CONSTRAINT PK_ValidVaccine PRIMARY KEY CLUSTERED (Vaccine ASC) +); -- adding species to the PK ALTER TABLE snprc_ehr.ValidChargeBySpecies - DROP CONSTRAINT PK_snprc_ValidChargeBySpecies + DROP CONSTRAINT PK_snprc_ValidChargeBySpecies; GO ALTER TABLE snprc_ehr.ValidChargeBySpecies ADD CONSTRAINT @@ -1065,7 +1063,7 @@ ALTER TABLE snprc_ehr.ValidChargeBySpecies ADD CONSTRAINT ( Project, Species -) +); GO @@ -1110,8 +1108,9 @@ CREATE TABLE snprc_ehr.NewAnimalData DiCreatedBy dbo.USERID NULL, DiModifiedBy dbo.USERID NULL, Container ENTITYID NOT NULL, - objectid UNIQUEIDENTIFIER NOT NULL - CONSTRAINT PK_snprc_NEWANIMALDATA PRIMARY KEY (Id) + objectid UNIQUEIDENTIFIER NOT NULL, + + CONSTRAINT PK_snprc_NEWANIMALDATA PRIMARY KEY (Id) ); --[DeliveryType] [nvarchar](400) NULL, --[BirthNature] [nvarchar](400) NULL, @@ -1158,8 +1157,6 @@ Changed to ints for values that have a dropdown. EXEC core.fn_dropifexists 'NewAnimalData','snprc_ehr', 'TABLE'; - - CREATE TABLE [snprc_ehr].[NewAnimalData]( [Id] [nvarchar](32) NOT NULL, [BirthDate] [datetime] NULL, @@ -1184,14 +1181,13 @@ CREATE TABLE [snprc_ehr].[NewAnimalData]( [ModifiedBy] [dbo].[USERID] NULL, [Container] [dbo].[ENTITYID] NOT NULL, [objectid] [uniqueidentifier] NOT NULL, - CONSTRAINT PK_snprc_NEWANIMALDATA PRIMARY KEY (Id) + + CONSTRAINT PK_snprc_NEWANIMALDATA PRIMARY KEY (Id) ); -- generated w/o issue from SSMS srr 04.10.20 --- schemas/dbscripts/sqlserver/snprc_ehr-20.003-20.004.sql EXEC core.fn_dropifexists 'BehaviorNotificationComment','snprc_ehr', 'TABLE'; - CREATE TABLE snprc_ehr.BehaviorNotificationComment ( NotificationNumber INT NOT NULL, @@ -1218,12 +1214,12 @@ CREATE TABLE snprc_ehr.BehaviorNotificationComment DiModifiedBy USERID NULL, DiModified DATETIME NULL, ObjectId UNIQUEIDENTIFIER NULL, + CONSTRAINT PK_BehaviorNotiComment PRIMARY KEY (NotificationNumber) ); -- generated w/o issue from SSMS srr 04.10.20 --- schemas/dbscripts/sqlserver/snprc_ehr-20.003-20.004.sql --- changed pk to tid idenity +-- changed pk to tid identity EXEC core.fn_dropifexists 'BehaviorNotificationComment','snprc_ehr', 'TABLE'; @@ -1253,13 +1249,13 @@ CREATE TABLE snprc_ehr.BehaviorNotificationComment DiModifiedBy USERID NULL, DiModified DATETIME NULL, tid INT IDENTITY, - objectid UNIQUEIDENTIFIER NULL - CONSTRAINT PK_BehaviorNotiComment_oid PRIMARY KEY (tid) + objectid UNIQUEIDENTIFIER NULL, + + CONSTRAINT PK_BehaviorNotiComment_oid PRIMARY KEY (tid) ); EXEC core.fn_dropifexists 'ValidDefaultIACUC','snprc_ehr', 'TABLE'; - CREATE TABLE snprc_ehr.validDefaultIACUC ( WorkingIacuc varchar(7) NOT NULL, @@ -1276,8 +1272,9 @@ CREATE TABLE snprc_ehr.validDefaultIACUC DiCreated DATETIME NULL, DiModifiedBy USERID NULL, DiModified DATETIME NULL, - ObjectId UNIQUEIDENTIFIER NOT NULL - CONSTRAINT PK_ValidDefaultIACUC PRIMARY KEY (WorkingIacuc) + ObjectId UNIQUEIDENTIFIER NOT NULL, + + CONSTRAINT PK_ValidDefaultIACUC PRIMARY KEY (WorkingIacuc) ); /******************************************************* @@ -1303,7 +1300,6 @@ srr 06.08.2020 version 20.007 EXEC core.fn_dropifexists 'NewAnimalData','snprc_ehr', 'TABLE'; - CREATE TABLE snprc_ehr.NewAnimalData ( Id nvarchar(32) NOT NULL, @@ -1330,6 +1326,7 @@ CREATE TABLE snprc_ehr.NewAnimalData ModifiedBy dbo.USERID NULL, Container dbo.ENTITYID NOT NULL, objectid uniqueidentifier NOT NULL, + CONSTRAINT PK_snprc_NEWANIMALDATA PRIMARY KEY (Id) ); @@ -1338,17 +1335,16 @@ Change ValidDiet PK Script generated by SSMS srr 06.16.2020 ******************************************************/ -ALTER TABLE snprc_ehr.ValidDiet - DROP CONSTRAINT PK_ValidDiet - GO -ALTER TABLE snprc_ehr.ValidDiet ADD CONSTRAINT - PK_ValidDiet PRIMARY KEY CLUSTERED +ALTER TABLE snprc_ehr.ValidDiet DROP CONSTRAINT PK_ValidDiet; +GO + +ALTER TABLE snprc_ehr.ValidDiet ADD CONSTRAINT PK_ValidDiet PRIMARY KEY CLUSTERED ( Diet -) - +); GO -ALTER TABLE snprc_ehr.ValidDiet SET (LOCK_ESCALATION = TABLE) + +ALTER TABLE snprc_ehr.ValidDiet SET (LOCK_ESCALATION = TABLE); GO /******************************************************* @@ -1377,7 +1373,6 @@ srr 06.08.2020 version 20.007 EXEC core.fn_dropifexists 'NewAnimalData','snprc_ehr', 'TABLE'; - CREATE TABLE snprc_ehr.NewAnimalData ( Id nvarchar(32) NOT NULL, @@ -1404,6 +1399,7 @@ CREATE TABLE snprc_ehr.NewAnimalData ModifiedBy dbo.USERID NULL, Container dbo.ENTITYID NOT NULL, objectid uniqueidentifier NOT NULL, + CONSTRAINT PK_snprc_NEWANIMALDATA PRIMARY KEY (Id) ); @@ -1450,10 +1446,11 @@ CREATE TABLE snprc_ehr.IacucAssignmentStats diModified DATETIME, diCreatedBy USERID, diModifiedBy USERID, - Container entityId NOT NULL + Container entityId NOT NULL, + CONSTRAINT PK_IacucAssignmentStats PRIMARY KEY CLUSTERED ( WorkingIacuc ASC, ThreeYearPeriod ASC ), CONSTRAINT FK_IacucAssignmentsStats_container FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) -) +); /* * New table to configure external reports @@ -1473,9 +1470,10 @@ CREATE TABLE snprc_ehr.ExternalReports Created DATETIME DEFAULT GETDATE(), Modified DATETIME DEFAULT GETDATE(), CreatedBy USERID, - ModifiedBy USERID - CONSTRAINT PK_ExternalReports PRIMARY KEY CLUSTERED ( Id ASC) -) + ModifiedBy USERID, + + CONSTRAINT PK_ExternalReports PRIMARY KEY CLUSTERED ( Id ASC) +); /* 21.xxx SQL scripts */ @@ -1534,6 +1532,7 @@ CREATE TABLE snprc_ehr.NewAnimalData ModifiedBy dbo.USERID NULL, Container dbo.ENTITYID NOT NULL, objectid uniqueidentifier NOT NULL, + CONSTRAINT PK_snprc_NEWANIMALDATA PRIMARY KEY (Id) ); @@ -1578,21 +1577,20 @@ CREATE TABLE [snprc_ehr].[HL7_MSH]( ( [MESSAGE_ID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) - ) - GO + ); +GO -ALTER TABLE [snprc_ehr].[HL7_MSH] ADD CONSTRAINT [DF_HL7_MSH_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID] - GO +ALTER TABLE [snprc_ehr].[HL7_MSH] ADD CONSTRAINT [DF_HL7_MSH_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID]; +GO -ALTER TABLE [snprc_ehr].[HL7_MSH] ADD CONSTRAINT [DF_HL7_MSH_USER] DEFAULT (USER_NAME()) FOR [USER_NAME] - GO +ALTER TABLE [snprc_ehr].[HL7_MSH] ADD CONSTRAINT [DF_HL7_MSH_USER] DEFAULT (USER_NAME()) FOR [USER_NAME]; +GO -ALTER TABLE [snprc_ehr].[HL7_MSH] ADD CONSTRAINT [DF_HL7_MSH_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM] - GO +ALTER TABLE [snprc_ehr].[HL7_MSH] ADD CONSTRAINT [DF_HL7_MSH_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM]; +GO -ALTER TABLE [snprc_ehr].[HL7_MSH] WITH CHECK ADD CONSTRAINT [FK_HL7_MSH_container] FOREIGN KEY([Container]) - REFERENCES [core].[Containers] ([EntityId]) - GO +ALTER TABLE [snprc_ehr].[HL7_MSH] WITH CHECK ADD CONSTRAINT [FK_HL7_MSH_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); +GO CREATE TABLE [snprc_ehr].[HL7_PID]( [MESSAGE_ID] [VARCHAR](50) NOT NULL, @@ -1616,34 +1614,32 @@ CREATE TABLE [snprc_ehr].[HL7_PID]( [MESSAGE_ID] ASC, [IDX] )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) - ) - GO + ); +GO -ALTER TABLE [snprc_ehr].[HL7_PID] ADD CONSTRAINT [DF_HL7_PID_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID] - GO +ALTER TABLE [snprc_ehr].[HL7_PID] ADD CONSTRAINT [DF_HL7_PID_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID]; +GO -ALTER TABLE [snprc_ehr].[HL7_PID] ADD CONSTRAINT [DF_HL7_PID_USER] DEFAULT (USER_NAME()) FOR [USER_NAME] - GO +ALTER TABLE [snprc_ehr].[HL7_PID] ADD CONSTRAINT [DF_HL7_PID_USER] DEFAULT (USER_NAME()) FOR [USER_NAME]; +GO -ALTER TABLE [snprc_ehr].[HL7_PID] ADD CONSTRAINT [DF_HL7_PID_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM] - GO +ALTER TABLE [snprc_ehr].[HL7_PID] ADD CONSTRAINT [DF_HL7_PID_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM]; +GO -ALTER TABLE [snprc_ehr].[HL7_PID] WITH CHECK ADD CONSTRAINT [FK_PID_REF_MSH] FOREIGN KEY([MESSAGE_ID]) - REFERENCES [snprc_ehr].[HL7_MSH] ([MESSAGE_ID]) - GO +ALTER TABLE [snprc_ehr].[HL7_PID] WITH CHECK ADD CONSTRAINT [FK_PID_REF_MSH] FOREIGN KEY([MESSAGE_ID]) REFERENCES [snprc_ehr].[HL7_MSH] ([MESSAGE_ID]); +GO CREATE NONCLUSTERED INDEX [IDX_HL7_PID_ID] ON [snprc_ehr].[HL7_PID] ( [PATIENT_ID_EXTERNAL] ASC -)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] +)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]; GO -ALTER TABLE [snprc_ehr].[HL7_PID] CHECK CONSTRAINT [FK_PID_REF_MSH] - GO +ALTER TABLE [snprc_ehr].[HL7_PID] CHECK CONSTRAINT [FK_PID_REF_MSH]; +GO -ALTER TABLE [snprc_ehr].[HL7_PID] WITH CHECK ADD CONSTRAINT [FK_HL7_PID_container] FOREIGN KEY([Container]) - REFERENCES [core].[Containers] ([EntityId]) - GO +ALTER TABLE [snprc_ehr].[HL7_PID] WITH CHECK ADD CONSTRAINT [FK_HL7_PID_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); +GO CREATE TABLE [snprc_ehr].[HL7_PV1]( [MESSAGE_ID] [VARCHAR](50) NOT NULL, @@ -1665,28 +1661,26 @@ CREATE TABLE [snprc_ehr].[HL7_PV1]( [MESSAGE_ID] ASC, [IDX] )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) - ) - GO + ); +GO -ALTER TABLE [snprc_ehr].[HL7_PV1] ADD CONSTRAINT [DF_HL7_PV1_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID] - GO +ALTER TABLE [snprc_ehr].[HL7_PV1] ADD CONSTRAINT [DF_HL7_PV1_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID]; +GO -ALTER TABLE [snprc_ehr].[HL7_PV1] ADD CONSTRAINT [DF_HL7_PV1_USER] DEFAULT (USER_NAME()) FOR [USER_NAME] - GO +ALTER TABLE [snprc_ehr].[HL7_PV1] ADD CONSTRAINT [DF_HL7_PV1_USER] DEFAULT (USER_NAME()) FOR [USER_NAME]; +GO -ALTER TABLE [snprc_ehr].[HL7_PV1] ADD CONSTRAINT [DF_HL7_PV1_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM] - GO +ALTER TABLE [snprc_ehr].[HL7_PV1] ADD CONSTRAINT [DF_HL7_PV1_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM]; +GO -ALTER TABLE [snprc_ehr].[HL7_PV1] WITH CHECK ADD CONSTRAINT [FK_PV1_REF_MSH] FOREIGN KEY([MESSAGE_ID]) - REFERENCES [snprc_ehr].[HL7_MSH] ([MESSAGE_ID]) - GO +ALTER TABLE [snprc_ehr].[HL7_PV1] WITH CHECK ADD CONSTRAINT [FK_PV1_REF_MSH] FOREIGN KEY([MESSAGE_ID]) REFERENCES [snprc_ehr].[HL7_MSH] ([MESSAGE_ID]); +GO -ALTER TABLE [snprc_ehr].[HL7_PV1] CHECK CONSTRAINT [FK_PV1_REF_MSH] - GO +ALTER TABLE [snprc_ehr].[HL7_PV1] CHECK CONSTRAINT [FK_PV1_REF_MSH]; +GO -ALTER TABLE [snprc_ehr].[HL7_PV1] WITH CHECK ADD CONSTRAINT [FK_HL7_PV1_container] FOREIGN KEY([Container]) - REFERENCES [core].[Containers] ([EntityId]) - GO +ALTER TABLE [snprc_ehr].[HL7_PV1] WITH CHECK ADD CONSTRAINT [FK_HL7_PV1_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); +GO CREATE TABLE [snprc_ehr].[HL7_ORC]( [MESSAGE_ID] [VARCHAR](50) NOT NULL, @@ -1711,28 +1705,26 @@ CREATE TABLE [snprc_ehr].[HL7_ORC]( [MESSAGE_ID] ASC, [IDX] )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) - ) - GO + ); +GO -ALTER TABLE [snprc_ehr].[HL7_ORC] ADD CONSTRAINT [DF_HL7_ORC_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID] - GO +ALTER TABLE [snprc_ehr].[HL7_ORC] ADD CONSTRAINT [DF_HL7_ORC_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID]; +GO -ALTER TABLE [snprc_ehr].[HL7_ORC] ADD CONSTRAINT [DF_HL7_ORC_USER] DEFAULT (USER_NAME()) FOR [USER_NAME] - GO +ALTER TABLE [snprc_ehr].[HL7_ORC] ADD CONSTRAINT [DF_HL7_ORC_USER] DEFAULT (USER_NAME()) FOR [USER_NAME]; +GO -ALTER TABLE [snprc_ehr].[HL7_ORC] ADD CONSTRAINT [DF_HL7_ORC_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM] - GO +ALTER TABLE [snprc_ehr].[HL7_ORC] ADD CONSTRAINT [DF_HL7_ORC_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM]; +GO -ALTER TABLE [snprc_ehr].[HL7_ORC] WITH CHECK ADD CONSTRAINT [FK_ORC_REF_MSH] FOREIGN KEY([MESSAGE_ID]) - REFERENCES [snprc_ehr].[HL7_MSH] ([MESSAGE_ID]) - GO +ALTER TABLE [snprc_ehr].[HL7_ORC] WITH CHECK ADD CONSTRAINT [FK_ORC_REF_MSH] FOREIGN KEY([MESSAGE_ID]) REFERENCES [snprc_ehr].[HL7_MSH] ([MESSAGE_ID]); +GO -ALTER TABLE [snprc_ehr].[HL7_ORC] CHECK CONSTRAINT [FK_ORC_REF_MSH] - GO +ALTER TABLE [snprc_ehr].[HL7_ORC] CHECK CONSTRAINT [FK_ORC_REF_MSH]; +GO -ALTER TABLE [snprc_ehr].[HL7_ORC] WITH CHECK ADD CONSTRAINT [FK_HL7_ORC_container] FOREIGN KEY([Container]) - REFERENCES [core].[Containers] ([EntityId]) - GO +ALTER TABLE [snprc_ehr].[HL7_ORC] WITH CHECK ADD CONSTRAINT [FK_HL7_ORC_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); +GO CREATE TABLE [snprc_ehr].[HL7_OBR]( [MESSAGE_ID] [VARCHAR](50) NOT NULL, @@ -1762,41 +1754,39 @@ CREATE TABLE [snprc_ehr].[HL7_OBR]( ( [OBJECT_ID] )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) -) +); GO -ALTER TABLE [snprc_ehr].[HL7_OBR] ADD CONSTRAINT [DF_HL7_OBR_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID] - GO +ALTER TABLE [snprc_ehr].[HL7_OBR] ADD CONSTRAINT [DF_HL7_OBR_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID]; +GO -ALTER TABLE [snprc_ehr].[HL7_OBR] ADD CONSTRAINT [DF_HL7_OBR_USER] DEFAULT (USER_NAME()) FOR [USER_NAME] - GO +ALTER TABLE [snprc_ehr].[HL7_OBR] ADD CONSTRAINT [DF_HL7_OBR_USER] DEFAULT (USER_NAME()) FOR [USER_NAME]; +GO -ALTER TABLE [snprc_ehr].[HL7_OBR] ADD CONSTRAINT [DF_HL7_OBR_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM] - GO +ALTER TABLE [snprc_ehr].[HL7_OBR] ADD CONSTRAINT [DF_HL7_OBR_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM]; +GO -ALTER TABLE [snprc_ehr].[HL7_OBR] WITH CHECK ADD CONSTRAINT [CKC_ENTRY_DATE_TM_HL7_OBR_OBR] CHECK (([ENTRY_DATE_TM]<=GETDATE())) - GO +ALTER TABLE [snprc_ehr].[HL7_OBR] WITH CHECK ADD CONSTRAINT [CKC_ENTRY_DATE_TM_HL7_OBR_OBR] CHECK (([ENTRY_DATE_TM]<=GETDATE())); +GO -ALTER TABLE [snprc_ehr].[HL7_OBR] CHECK CONSTRAINT [CKC_ENTRY_DATE_TM_HL7_OBR_OBR] - GO +ALTER TABLE [snprc_ehr].[HL7_OBR] CHECK CONSTRAINT [CKC_ENTRY_DATE_TM_HL7_OBR_OBR]; +GO -ALTER TABLE [snprc_ehr].[HL7_OBR] WITH CHECK ADD CONSTRAINT [FK_OBR_REF_MSH] FOREIGN KEY([MESSAGE_ID]) - REFERENCES [snprc_ehr].[HL7_MSH] ([MESSAGE_ID]) - GO +ALTER TABLE [snprc_ehr].[HL7_OBR] WITH CHECK ADD CONSTRAINT [FK_OBR_REF_MSH] FOREIGN KEY([MESSAGE_ID]) REFERENCES [snprc_ehr].[HL7_MSH] ([MESSAGE_ID]); +GO -ALTER TABLE [snprc_ehr].[HL7_OBR] CHECK CONSTRAINT [FK_OBR_REF_MSH] - GO +ALTER TABLE [snprc_ehr].[HL7_OBR] CHECK CONSTRAINT [FK_OBR_REF_MSH]; +GO CREATE NONCLUSTERED INDEX [IDX_HL7_OBR_ID_DATE] ON [snprc_ehr].[HL7_OBR] ( [ANIMAL_ID] ASC, [OBSERVATION_DATE_TM] ASC -)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] +)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]; GO -ALTER TABLE [snprc_ehr].[HL7_OBR] WITH CHECK ADD CONSTRAINT [FK_HL7_OBR_container] FOREIGN KEY([Container]) - REFERENCES [core].[Containers] ([EntityId]) - GO +ALTER TABLE [snprc_ehr].[HL7_OBR] WITH CHECK ADD CONSTRAINT [FK_HL7_OBR_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); +GO CREATE TABLE [snprc_ehr].[HL7_OBX]( [MESSAGE_ID] [VARCHAR](50) NOT NULL, @@ -1823,34 +1813,32 @@ CREATE TABLE [snprc_ehr].[HL7_OBX]( ( [OBJECT_ID] )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) -) +); GO -ALTER TABLE [snprc_ehr].[HL7_OBX] ADD CONSTRAINT [DF_HL7_OBX_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID] - GO +ALTER TABLE [snprc_ehr].[HL7_OBX] ADD CONSTRAINT [DF_HL7_OBX_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID]; +GO -ALTER TABLE [snprc_ehr].[HL7_OBX] ADD CONSTRAINT [DF_HL7_OBX_USER] DEFAULT (USER_NAME()) FOR [USER_NAME] - GO +ALTER TABLE [snprc_ehr].[HL7_OBX] ADD CONSTRAINT [DF_HL7_OBX_USER] DEFAULT (USER_NAME()) FOR [USER_NAME]; +GO -ALTER TABLE [snprc_ehr].[HL7_OBX] ADD CONSTRAINT [DF_HL7_OBX_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM] - GO +ALTER TABLE [snprc_ehr].[HL7_OBX] ADD CONSTRAINT [DF_HL7_OBX_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM]; +GO -ALTER TABLE [snprc_ehr].[HL7_OBX] WITH CHECK ADD CONSTRAINT [FK_OBX_REF_OBR] FOREIGN KEY([OBR_OBJECT_ID]) - REFERENCES [snprc_ehr].[HL7_OBR] ([OBJECT_ID]) - GO +ALTER TABLE [snprc_ehr].[HL7_OBX] WITH CHECK ADD CONSTRAINT [FK_OBX_REF_OBR] FOREIGN KEY([OBR_OBJECT_ID]) REFERENCES [snprc_ehr].[HL7_OBR] ([OBJECT_ID]); +GO -ALTER TABLE [snprc_ehr].[HL7_OBX] CHECK CONSTRAINT [FK_OBX_REF_OBR] - GO +ALTER TABLE [snprc_ehr].[HL7_OBX] CHECK CONSTRAINT [FK_OBX_REF_OBR]; +GO CREATE NONCLUSTERED INDEX [IDX_HL7_OBX_OBR_OBJ_ID] ON [snprc_ehr].[HL7_OBX] ( [OBR_OBJECT_ID] ASC -)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] +)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]; GO -ALTER TABLE [snprc_ehr].[HL7_OBX] WITH CHECK ADD CONSTRAINT [FK_HL7_OBX_container] FOREIGN KEY([Container]) - REFERENCES [core].[Containers] ([EntityId]) - GO +ALTER TABLE [snprc_ehr].[HL7_OBX] WITH CHECK ADD CONSTRAINT [FK_HL7_OBX_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); +GO CREATE TABLE [snprc_ehr].[HL7_NTE]( [MESSAGE_ID] [VARCHAR](50) NOT NULL, @@ -1869,33 +1857,31 @@ CREATE TABLE [snprc_ehr].[HL7_NTE]( [OBJECT_ID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) -) +); GO -ALTER TABLE [snprc_ehr].[HL7_NTE] ADD CONSTRAINT [DF_HL7_NTE_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID] - GO +ALTER TABLE [snprc_ehr].[HL7_NTE] ADD CONSTRAINT [DF_HL7_NTE_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID]; +GO -ALTER TABLE [snprc_ehr].[HL7_NTE] ADD CONSTRAINT [DF_HL7_NTE_USER] DEFAULT (USER_NAME()) FOR [USER_NAME] - GO +ALTER TABLE [snprc_ehr].[HL7_NTE] ADD CONSTRAINT [DF_HL7_NTE_USER] DEFAULT (USER_NAME()) FOR [USER_NAME]; +GO -ALTER TABLE [snprc_ehr].[HL7_NTE] ADD CONSTRAINT [DF_HL7_NTE_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM] - GO +ALTER TABLE [snprc_ehr].[HL7_NTE] ADD CONSTRAINT [DF_HL7_NTE_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM]; +GO -ALTER TABLE [snprc_ehr].[HL7_NTE] WITH CHECK ADD CONSTRAINT [FK_NTE_REF_OBR] FOREIGN KEY([OBR_OBJECT_ID]) - REFERENCES [snprc_ehr].[HL7_OBR] ([OBJECT_ID]) - GO +ALTER TABLE [snprc_ehr].[HL7_NTE] WITH CHECK ADD CONSTRAINT [FK_NTE_REF_OBR] FOREIGN KEY([OBR_OBJECT_ID]) REFERENCES [snprc_ehr].[HL7_OBR] ([OBJECT_ID]); +GO -ALTER TABLE [snprc_ehr].[HL7_NTE] CHECK CONSTRAINT [FK_NTE_REF_OBR] - GO +ALTER TABLE [snprc_ehr].[HL7_NTE] CHECK CONSTRAINT [FK_NTE_REF_OBR]; +GO -ALTER TABLE [snprc_ehr].[HL7_NTE] WITH CHECK ADD CONSTRAINT [FK_HL7_NTE_container] FOREIGN KEY([Container]) - REFERENCES [core].[Containers] ([EntityId]) - GO +ALTER TABLE [snprc_ehr].[HL7_NTE] WITH CHECK ADD CONSTRAINT [FK_HL7_NTE_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); +GO CREATE NONCLUSTERED INDEX [IDX_HL7_NTE_OBR_OBJ_ID] ON [snprc_ehr].[HL7_NTE] ( [OBR_OBJECT_ID] ASC -)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] +)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]; GO CREATE TABLE [snprc_ehr].[HL7_IMPORT_LOG]( @@ -1918,27 +1904,26 @@ CREATE TABLE [snprc_ehr].[HL7_IMPORT_LOG]( ( [TID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) - ) - GO + ); +GO -ALTER TABLE [snprc_ehr].[HL7_IMPORT_LOG] ADD DEFAULT (USER_NAME()) FOR [USER_NAME] - GO +ALTER TABLE [snprc_ehr].[HL7_IMPORT_LOG] ADD DEFAULT (USER_NAME()) FOR [USER_NAME]; +GO -ALTER TABLE [snprc_ehr].[HL7_IMPORT_LOG] ADD DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM] - GO +ALTER TABLE [snprc_ehr].[HL7_IMPORT_LOG] ADD DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM]; +GO -ALTER TABLE [snprc_ehr].[HL7_IMPORT_LOG] ADD CONSTRAINT [DF_HL7_IMPROT_LOG_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID] - GO +ALTER TABLE [snprc_ehr].[HL7_IMPORT_LOG] ADD CONSTRAINT [DF_HL7_IMPROT_LOG_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID]; +GO -ALTER TABLE [snprc_ehr].[HL7_IMPORT_LOG] WITH CHECK ADD CONSTRAINT [CKC_HL7_IMPORT_LOG_OBSERVATION_DATE] CHECK (([OBSERVATION_DATE_TM] IS NULL OR [OBSERVATION_DATE_TM]<=GETDATE())) - GO +ALTER TABLE [snprc_ehr].[HL7_IMPORT_LOG] WITH CHECK ADD CONSTRAINT [CKC_HL7_IMPORT_LOG_OBSERVATION_DATE] CHECK (([OBSERVATION_DATE_TM] IS NULL OR [OBSERVATION_DATE_TM]<=GETDATE())); +GO -ALTER TABLE [snprc_ehr].[HL7_IMPORT_LOG] CHECK CONSTRAINT [CKC_HL7_IMPORT_LOG_OBSERVATION_DATE] - GO +ALTER TABLE [snprc_ehr].[HL7_IMPORT_LOG] CHECK CONSTRAINT [CKC_HL7_IMPORT_LOG_OBSERVATION_DATE]; +GO -ALTER TABLE [snprc_ehr].[HL7_IMPORT_LOG] WITH CHECK ADD CONSTRAINT [FK_HL7_IMPORT_LOG_container] FOREIGN KEY([Container]) - REFERENCES [core].[Containers] ([EntityId]) - GO +ALTER TABLE [snprc_ehr].[HL7_IMPORT_LOG] WITH CHECK ADD CONSTRAINT [FK_HL7_IMPORT_LOG_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); +GO -- ========================================================================== -- Author: Terry Hawkins @@ -2021,7 +2006,7 @@ CREATE TABLE snprc_ehr.HL7_PathologyCasesStaging ( ID ASC, Date ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) -) +); GO CREATE TABLE snprc_ehr.HL7_PathologyDiagnosesStaging ( @@ -2048,7 +2033,7 @@ CREATE TABLE snprc_ehr.HL7_PathologyDiagnosesStaging ( ( RowID ASC ) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) -) +); GO CREATE TABLE snprc_ehr.HL7_DeletePathologyCasesStaging ( @@ -2062,7 +2047,7 @@ CREATE TABLE snprc_ehr.HL7_DeletePathologyCasesStaging ( ObjectId ASC ) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) -) +); GO CREATE TABLE snprc_ehr.HL7_DeletePathologyDiagnosesStaging ( @@ -2076,7 +2061,7 @@ CREATE TABLE snprc_ehr.HL7_DeletePathologyDiagnosesStaging ( ObjectId ASC ) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) -) +); GO CREATE TABLE snprc_ehr.HL7_Demographics ( @@ -2099,11 +2084,11 @@ CREATE TABLE snprc_ehr.HL7_Demographics ( ( RowId ASC ) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) -) +); GO -- Increase procedure name size in OBR table -ALTER TABLE snprc_ehr.HL7_OBR ALTER COLUMN PROCEDURE_NAME VARCHAR(200) NULL +ALTER TABLE snprc_ehr.HL7_OBR ALTER COLUMN PROCEDURE_NAME VARCHAR(200) NULL; EXEC core.fn_dropifexists 'SndSuperPackageStaging', 'snprc_ehr', 'TABLE'; GO @@ -2207,11 +2192,10 @@ CREATE TABLE snprc_ehr.therapy_formulary( ObjectId UNIQUEIDENTIFIER NOT NULL CONSTRAINT PK_therapy_formulary PRIMARY KEY CLUSTERED (RowId) -) +); -ALTER TABLE snprc_ehr.therapy_formulary WITH CHECK ADD CONSTRAINT FK_therapy_formulary_container FOREIGN KEY(Container) - REFERENCES core.Containers (EntityId) - GO +ALTER TABLE snprc_ehr.therapy_formulary WITH CHECK ADD CONSTRAINT FK_therapy_formulary_container FOREIGN KEY(Container) REFERENCES core.Containers (EntityId); +GO CREATE TABLE snprc_ehr.therapy_routes( RowId INT NOT NULL, @@ -2226,10 +2210,9 @@ CREATE TABLE snprc_ehr.therapy_routes( ObjectId UNIQUEIDENTIFIER NULL CONSTRAINT PK_therapy_routes PRIMARY KEY CLUSTERED (RowId) -) -ALTER TABLE snprc_ehr.therapy_routes WITH CHECK ADD CONSTRAINT FK_therapy_routes FOREIGN KEY(Container) - REFERENCES core.Containers (EntityId) - GO +); +ALTER TABLE snprc_ehr.therapy_routes WITH CHECK ADD CONSTRAINT FK_therapy_routes FOREIGN KEY(Container) REFERENCES core.Containers (EntityId); +GO CREATE TABLE snprc_ehr.therapy_units( RowId INT NOT NULL, @@ -2244,10 +2227,9 @@ CREATE TABLE snprc_ehr.therapy_units( ObjectId UNIQUEIDENTIFIER NULL CONSTRAINT PK_therapy_units PRIMARY KEY CLUSTERED (RowId) -) -ALTER TABLE snprc_ehr.therapy_units WITH CHECK ADD CONSTRAINT FK_therapy_units FOREIGN KEY(Container) - REFERENCES core.Containers (EntityId) - GO +); +ALTER TABLE snprc_ehr.therapy_units WITH CHECK ADD CONSTRAINT FK_therapy_units FOREIGN KEY(Container) REFERENCES core.Containers (EntityId); +GO CREATE TABLE snprc_ehr.therapy_resolutions ( @@ -2262,11 +2244,10 @@ CREATE TABLE snprc_ehr.therapy_resolutions ObjectId UNIQUEIDENTIFIER NULL CONSTRAINT PK_therapy_resolutions PRIMARY KEY CLUSTERED (RowId) -) +); -ALTER TABLE snprc_ehr.therapy_resolutions WITH CHECK ADD CONSTRAINT FK_therapy_resolutions FOREIGN KEY(Container) - REFERENCES core.Containers (EntityId) - GO +ALTER TABLE snprc_ehr.therapy_resolutions WITH CHECK ADD CONSTRAINT FK_therapy_resolutions FOREIGN KEY(Container) REFERENCES core.Containers (EntityId); +GO CREATE TABLE snprc_ehr.therapy_frequency( RowId INT NOT NULL, @@ -2281,8 +2262,7 @@ CREATE TABLE snprc_ehr.therapy_frequency( ObjectId UNIQUEIDENTIFIER NOT NULL CONSTRAINT PK_therapy_frequency PRIMARY KEY CLUSTERED (RowId) -) +); -ALTER TABLE snprc_ehr.therapy_frequency WITH CHECK ADD CONSTRAINT FK_therapy_frequency FOREIGN KEY(Container) - REFERENCES core.Containers (EntityId) - GO \ No newline at end of file +ALTER TABLE snprc_ehr.therapy_frequency WITH CHECK ADD CONSTRAINT FK_therapy_frequency FOREIGN KEY(Container) REFERENCES core.Containers (EntityId); +GO From e3bb9345fb478aeba2a82b780a4c68136cd8bcf0 Mon Sep 17 00:00:00 2001 From: Adam Rauch Date: Tue, 10 Feb 2026 21:59:21 -0800 Subject: [PATCH 03/11] Remove a few unnecessary procedures and statements --- .../sqlserver/snprc_ehr-0.000-25.000.sql | 204 ++++++------------ 1 file changed, 68 insertions(+), 136 deletions(-) diff --git a/snprc_ehr/resources/schemas/dbscripts/sqlserver/snprc_ehr-0.000-25.000.sql b/snprc_ehr/resources/schemas/dbscripts/sqlserver/snprc_ehr-0.000-25.000.sql index 2d86e5f9..ccd8c1f6 100644 --- a/snprc_ehr/resources/schemas/dbscripts/sqlserver/snprc_ehr-0.000-25.000.sql +++ b/snprc_ehr/resources/schemas/dbscripts/sqlserver/snprc_ehr-0.000-25.000.sql @@ -76,63 +76,6 @@ ALTER TABLE snprc_ehr.package_category_junction ADD objectid nvarchar(4000); GO -CREATE PROCEDURE snprc_ehr.handleUpgrade AS - BEGIN - IF NOT EXISTS(SELECT column_name - FROM information_schema.columns - WHERE table_name='package' and table_schema='snprc_ehr' and column_name='objectid') - BEGIN - -- Run variants of scripts from trunk - - ALTER TABLE snprc_ehr.package ADD objectid nvarchar(4000); - ALTER TABLE snprc_ehr.package_category ADD objectid nvarchar(4000); - ALTER TABLE snprc_ehr.package_category_junction ADD objectid nvarchar(4000); - END - END; - -GO - -EXEC snprc_ehr.handleUpgrade; -GO - -DROP PROCEDURE snprc_ehr.handleUpgrade; -GO - --- Alters existing ehr_lookups.species table to include additional SNPRC species code columns columns needed --- for ETLs (objectid) - -CREATE PROCEDURE snprc_ehr.handleUpgrade AS - BEGIN - IF NOT EXISTS(SELECT column_name - FROM information_schema.columns - WHERE table_name='species' and table_schema='ehr_lookups' and column_name='objectid') - BEGIN - -- Run variants of scripts from trunk - - ALTER TABLE ehr_lookups.species ADD species_code nvarchar(3); - ALTER TABLE ehr_lookups.species ADD arc_species_code nvarchar(3); - --ALTER TABLE ehr_lookups.species ADD arc_common_name nvarchar(255); - --ALTER TABLE ehr_lookups.species ADD arc_scientific_name nvarchar(255); - ALTER TABLE ehr_lookups.species ADD objectid nvarchar(4000); - ALTER TABLE ehr_lookups.species ADD tid int; - END - END; - -GO - -EXEC snprc_ehr.handleUpgrade; -GO - -DROP PROCEDURE snprc_ehr.handleUpgrade; -GO - --- Use custom SNPRC species table instead of ehr_lookups species - -ALTER TABLE ehr_lookups.species DROP COLUMN species_code; -ALTER TABLE ehr_lookups.species DROP COLUMN arc_species_code; -ALTER TABLE ehr_lookups.species DROP COLUMN objectid; -ALTER TABLE ehr_lookups.species DROP COLUMN tid; - CREATE TABLE snprc_ehr.species ( common NVARCHAR(255) NOT NULL, @@ -154,8 +97,6 @@ CREATE TABLE snprc_ehr.species -- change primary key to species_code column -TRUNCATE TABLE snprc_ehr.species; - ALTER TABLE snprc_ehr.species ALTER COLUMN species_code NVARCHAR(3) NOT NULL; ALTER TABLE snprc_ehr.species ALTER COLUMN arc_species_code NVARCHAR(3) NOT NULL; ALTER TABLE snprc_ehr.species DROP CONSTRAINT pk_species; @@ -511,8 +452,7 @@ CREATE UNIQUE INDEX idx_animal_groups_code ON snprc_ehr.animal_groups (code); -- Need to change the primary key - recreate labwork_services table - The table will need to be repopulated using the ETL process -IF exists (select 1 from INFORMATION_SCHEMA.TABLES where TABLE_NAME = 'labwork_services' AND TABLE_SCHEMA = 'snprc_ehr') - drop table snprc_ehr.labwork_services; +DROP TABLE snprc_ehr.labwork_services; CREATE TABLE snprc_ehr.labwork_services ( rowId int identity, @@ -551,18 +491,10 @@ ALTER TABLE snprc_ehr.species ADD CreatedBy USERID; ALTER TABLE snprc_ehr.species ADD ModifiedBy USERID; -- drop existing tables -if exists (select 1 - from sysobjects - where id = object_id('snprc_ehr.lab_tests') - and type = 'U') - drop table snprc_ehr.lab_tests; -GO - -if exists (select 1 - from sysobjects - where id = object_id('snprc_ehr.labwork_services') - and type = 'U') - drop table snprc_ehr.labwork_services; +DROP TABLE snprc_ehr.lab_tests; +GO + +DROP TABLE snprc_ehr.labwork_services; go -- labwork_types @@ -907,25 +839,25 @@ srr 03.11.2019 ori ***************************************************/ CREATE TABLE snprc_ehr.ValidDiet( - [Diet] [nvarchar](20) NOT NULL, - [ArcSpeciesCode] [nvarchar](2) NULL, - [StartDate] [datetime] NOT NULL, - [StopDate] [datetime] NULL, - [SnomedCode] [nvarchar](7) NULL, - [DietId] [INTEGER] NOT NULL, - --ObjectId] UNIQUEIDENTIFIER NOT NULL DEFAULT NEWID(), - --[Container] [entityID] NOT NULL, - [Created] DATETIME, - [CreatedBy] USERID, - [Modified] DATETIME, - [ModifiedBy] USERID, - [diCreated] [datetime] NULL, - [diModified] [datetime] NULL, - [diCreatedBy] [dbo].[USERID] NULL, - [diModifiedBy] [dbo].[USERID] NULL, - [Container] [dbo].[ENTITYID] NOT NULL, - [objectid] [uniqueidentifier] NOT NULL - CONSTRAINT [PK_ValidDiet] PRIMARY KEY CLUSTERED ([Diet] ASC,[StartDate] ASC) + [Diet] [nvarchar](20) NOT NULL, + [ArcSpeciesCode] [nvarchar](2) NULL, + [StartDate] [datetime] NOT NULL, + [StopDate] [datetime] NULL, + [SnomedCode] [nvarchar](7) NULL, + [DietId] [INTEGER] NOT NULL, + --ObjectId] UNIQUEIDENTIFIER NOT NULL DEFAULT NEWID(), + --[Container] [entityID] NOT NULL, + [Created] DATETIME, + [CreatedBy] USERID, + [Modified] DATETIME, + [ModifiedBy] USERID, + [diCreated] [datetime] NULL, + [diModified] [datetime] NULL, + [diCreatedBy] [dbo].[USERID] NULL, + [diModifiedBy] [dbo].[USERID] NULL, + [Container] [dbo].[ENTITYID] NOT NULL, + [objectid] [uniqueidentifier] NOT NULL + CONSTRAINT [PK_ValidDiet] PRIMARY KEY CLUSTERED ([Diet] ASC,[StartDate] ASC) ); go @@ -954,25 +886,25 @@ refactored DietId to DietCode ******************************************************************/ CREATE TABLE snprc_ehr.ValidDiet( - [Diet] [nvarchar](20) NOT NULL, - [ArcSpeciesCode] [nvarchar](2) NULL, - [StartDate] [datetime] NOT NULL, - [StopDate] [datetime] NULL, - [SnomedCode] [nvarchar](7) NULL, - [DietCode] [INTEGER] NOT NULL, - --ObjectId] UNIQUEIDENTIFIER NOT NULL DEFAULT NEWID(), - --[Container] [entityID] NOT NULL, - [Created] DATETIME, - [CreatedBy] USERID, - [Modified] DATETIME, - [ModifiedBy] USERID, - [diCreated] [datetime] NULL, - [diModified] [datetime] NULL, - [diCreatedBy] [dbo].[USERID] NULL, - [diModifiedBy] [dbo].[USERID] NULL, - [Container] [dbo].[ENTITYID] NOT NULL, - [objectid] [uniqueidentifier] NOT NULL - CONSTRAINT [PK_ValidDiet] PRIMARY KEY CLUSTERED ([Diet] ASC,[StartDate] ASC) + [Diet] [nvarchar](20) NOT NULL, + [ArcSpeciesCode] [nvarchar](2) NULL, + [StartDate] [datetime] NOT NULL, + [StopDate] [datetime] NULL, + [SnomedCode] [nvarchar](7) NULL, + [DietCode] [INTEGER] NOT NULL, + --ObjectId] UNIQUEIDENTIFIER NOT NULL DEFAULT NEWID(), + --[Container] [entityID] NOT NULL, + [Created] DATETIME, + [CreatedBy] USERID, + [Modified] DATETIME, + [ModifiedBy] USERID, + [diCreated] [datetime] NULL, + [diModified] [datetime] NULL, + [diCreatedBy] [dbo].[USERID] NULL, + [diModifiedBy] [dbo].[USERID] NULL, + [Container] [dbo].[ENTITYID] NOT NULL, + [objectid] [uniqueidentifier] NOT NULL + CONSTRAINT [PK_ValidDiet] PRIMARY KEY CLUSTERED ([Diet] ASC,[StartDate] ASC) ); -- will need to be changed if we begin to use Diet instead of SnomedCode srr @@ -1982,30 +1914,30 @@ EXEC core.fn_dropifexists @objname = 'HL7_DeletePathologyDiagnosesStaging',@objs EXEC core.fn_dropifexists @objname = 'HL7_Demographics', @objschema = 'snprc_ehr', @objtype = 'TABLE'; CREATE TABLE snprc_ehr.HL7_PathologyCasesStaging ( - ID NVARCHAR(32) NOT NULL, - Date DATETIME NOT NULL, - RowId BIGINT IDENTITY(1,1) NOT NULL, - AccessionNumber NVARCHAR(10) NULL, - AccessionCode NVARCHAR(4000) NULL, - Tissue NVARCHAR(4000) NULL, - PerformedBy NVARCHAR(64) NULL, - Description NVARCHAR(4000) NULL, - Remark NVARCHAR(4000) NULL, - ApathRecordStatus NVARCHAR(1) NULL, - DeathType NVARCHAR(1) NULL, - Created DATETIME NULL, - CreatedBy dbo.USERID NULL, - Modified datetime NULL, - ModifiedBy dbo.USERID NULL, - Container dbo.ENTITYID NOT NULL, - ObjectId uniqueidentifier NULL, - timestamp ROWVERSION, - - CONSTRAINT PK_HL7_PathologyCasesStaging PRIMARY KEY CLUSTERED - ( - ID ASC, - Date ASC - )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) + ID NVARCHAR(32) NOT NULL, + Date DATETIME NOT NULL, + RowId BIGINT IDENTITY(1,1) NOT NULL, + AccessionNumber NVARCHAR(10) NULL, + AccessionCode NVARCHAR(4000) NULL, + Tissue NVARCHAR(4000) NULL, + PerformedBy NVARCHAR(64) NULL, + Description NVARCHAR(4000) NULL, + Remark NVARCHAR(4000) NULL, + ApathRecordStatus NVARCHAR(1) NULL, + DeathType NVARCHAR(1) NULL, + Created DATETIME NULL, + CreatedBy dbo.USERID NULL, + Modified datetime NULL, + ModifiedBy dbo.USERID NULL, + Container dbo.ENTITYID NOT NULL, + ObjectId uniqueidentifier NULL, + timestamp ROWVERSION, + + CONSTRAINT PK_HL7_PathologyCasesStaging PRIMARY KEY CLUSTERED + ( + ID ASC, + Date ASC + ) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ); GO @@ -2241,7 +2173,7 @@ CREATE TABLE snprc_ehr.therapy_resolutions CreatedBy dbo.USERID NULL, Modified DATETIME NULL, ModifiedBy dbo.USERID NULL, - ObjectId UNIQUEIDENTIFIER NULL + ObjectId UNIQUEIDENTIFIER NULL, CONSTRAINT PK_therapy_resolutions PRIMARY KEY CLUSTERED (RowId) ); From 13485087d2d8480c52b1971054ee4d0bb8e63cad Mon Sep 17 00:00:00 2001 From: Adam Rauch Date: Wed, 11 Feb 2026 09:55:33 -0800 Subject: [PATCH 04/11] Reorder --- .../sqlserver/snprc_ehr-0.000-25.000.sql | 1374 ++++++++--------- 1 file changed, 681 insertions(+), 693 deletions(-) diff --git a/snprc_ehr/resources/schemas/dbscripts/sqlserver/snprc_ehr-0.000-25.000.sql b/snprc_ehr/resources/schemas/dbscripts/sqlserver/snprc_ehr-0.000-25.000.sql index ccd8c1f6..2c4250f3 100644 --- a/snprc_ehr/resources/schemas/dbscripts/sqlserver/snprc_ehr-0.000-25.000.sql +++ b/snprc_ehr/resources/schemas/dbscripts/sqlserver/snprc_ehr-0.000-25.000.sql @@ -27,6 +27,25 @@ CREATE TABLE snprc_ehr.package ( CONSTRAINT FK_packages_Container FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) ); +ALTER TABLE snprc_ehr.package ADD Created DATETIME; +ALTER TABLE snprc_ehr.package ADD CreatedBy USERID; +ALTER TABLE snprc_ehr.package ADD Modified DATETIME; +ALTER TABLE snprc_ehr.package ADD ModifiedBy USERID; + +ALTER TABLE snprc_ehr.package ADD objectid nvarchar(4000); + +ALTER TABLE snprc_ehr.package ADD diCreated DATETIME; +ALTER TABLE snprc_ehr.package ADD diModified DATETIME; +ALTER TABLE snprc_ehr.package ADD diCreatedBy USERID; +ALTER TABLE snprc_ehr.package ADD diModifiedBy USERID; + +ALTER TABLE snprc_ehr.package DROP COLUMN objectid; +ALTER TABLE snprc_ehr.package ADD objectid uniqueidentifier not null default newid(); + +CREATE UNIQUE INDEX idx_package_objectid ON snprc_ehr.package (objectid); + +ALTER TABLE snprc_ehr.package ADD pkgType NVARCHAR(1) not null default 'U'; + CREATE TABLE snprc_ehr.package_category ( id int not null, name NVARCHAR(100), @@ -38,6 +57,25 @@ CREATE TABLE snprc_ehr.package_category ( ); GO +ALTER TABLE snprc_ehr.package_category DROP COLUMN name; + +ALTER TABLE snprc_ehr.package_category ADD Created DATETIME; +ALTER TABLE snprc_ehr.package_category ADD CreatedBy USERID; +ALTER TABLE snprc_ehr.package_category ADD Modified DATETIME; +ALTER TABLE snprc_ehr.package_category ADD ModifiedBy USERID; + +ALTER TABLE snprc_ehr.package_category ADD objectid nvarchar(4000); + +ALTER TABLE snprc_ehr.package_category ADD diCreated DATETIME; +ALTER TABLE snprc_ehr.package_category ADD diModified DATETIME; +ALTER TABLE snprc_ehr.package_category ADD diCreatedBy USERID; +ALTER TABLE snprc_ehr.package_category ADD diModifiedBy USERID; + +ALTER TABLE snprc_ehr.package_category DROP COLUMN objectid; +ALTER TABLE snprc_ehr.package_category ADD objectid uniqueidentifier not null default newid(); + +CREATE UNIQUE INDEX idx_package_category_objectid ON snprc_ehr.package_category (objectid); + CREATE TABLE snprc_ehr.package_category_junction ( rowId int not null, packageId int not null, @@ -51,31 +89,25 @@ GO CREATE UNIQUE INDEX IDX_package_category_junction ON snprc_ehr.package_category_junction(categoryId, packageId); -ALTER TABLE snprc_ehr.package_category DROP COLUMN name; - -ALTER TABLE snprc_ehr.package ADD Created DATETIME; -ALTER TABLE snprc_ehr.package ADD CreatedBy USERID; -ALTER TABLE snprc_ehr.package ADD Modified DATETIME; -ALTER TABLE snprc_ehr.package ADD ModifiedBy USERID; - -ALTER TABLE snprc_ehr.package_category ADD Created DATETIME; -ALTER TABLE snprc_ehr.package_category ADD CreatedBy USERID; -ALTER TABLE snprc_ehr.package_category ADD Modified DATETIME; -ALTER TABLE snprc_ehr.package_category ADD ModifiedBy USERID; - ALTER TABLE snprc_ehr.package_category_junction ADD Created DATETIME; ALTER TABLE snprc_ehr.package_category_junction ADD CreatedBy USERID; ALTER TABLE snprc_ehr.package_category_junction ADD Modified DATETIME; ALTER TABLE snprc_ehr.package_category_junction ADD ModifiedBy USERID; -ALTER TABLE snprc_ehr.package ADD objectid nvarchar(4000); - -ALTER TABLE snprc_ehr.package_category ADD objectid nvarchar(4000); - ALTER TABLE snprc_ehr.package_category_junction ADD objectid nvarchar(4000); GO +ALTER TABLE snprc_ehr.package_category_junction ADD diCreated DATETIME; +ALTER TABLE snprc_ehr.package_category_junction ADD diModified DATETIME; +ALTER TABLE snprc_ehr.package_category_junction ADD diCreatedBy USERID; +ALTER TABLE snprc_ehr.package_category_junction ADD diModifiedBy USERID; + +ALTER TABLE snprc_ehr.package_category_junction DROP COLUMN objectid; +ALTER TABLE snprc_ehr.package_category_junction ADD objectid uniqueidentifier not null default newid(); + +CREATE UNIQUE INDEX idx_package_category_junction_objectid ON snprc_ehr.package_category_junction (objectid); + CREATE TABLE snprc_ehr.species ( common NVARCHAR(255) NOT NULL, @@ -102,6 +134,26 @@ ALTER TABLE snprc_ehr.species ALTER COLUMN arc_species_code NVARCHAR(3) NOT NUL ALTER TABLE snprc_ehr.species DROP CONSTRAINT pk_species; ALTER TABLE snprc_ehr.species ADD CONSTRAINT pk_species PRIMARY KEY (species_code); +ALTER TABLE snprc_ehr.species ADD diCreated DATETIME; +ALTER TABLE snprc_ehr.species ADD diModified DATETIME; +ALTER TABLE snprc_ehr.species ADD diCreatedBy USERID; +ALTER TABLE snprc_ehr.species ADD diModifiedBy USERID; + +ALTER TABLE snprc_ehr.species ADD primate VARCHAR(1); + +-- DROP the object id column +-- ADD the objectid back as a uniqueidentifier + +ALTER TABLE snprc_ehr.species DROP COLUMN objectid; +ALTER TABLE snprc_ehr.species ADD objectid uniqueidentifier not null default newid(); + +-- create a unique index on the objectid +CREATE UNIQUE INDEX idx_species_objectid ON snprc_ehr.species (objectid); +ALTER TABLE snprc_ehr.species ADD Created DATETIME; +ALTER TABLE snprc_ehr.species ADD Modified DATETIME; +ALTER TABLE snprc_ehr.species ADD CreatedBy USERID; +ALTER TABLE snprc_ehr.species ADD ModifiedBy USERID; + CREATE TABLE snprc_ehr.clinical_observation_datasets ( rowId Int NOT NULL, @@ -116,6 +168,8 @@ CREATE TABLE snprc_ehr.clinical_observation_datasets GO +ALTER TABLE snprc_ehr.clinical_observation_datasets ADD objectid uniqueidentifier not null default newid(); + CREATE TABLE snprc_ehr.validAccounts( account varchar(16) NOT NULL, accountStatus varchar(1) NOT NULL, @@ -136,6 +190,19 @@ CREATE TABLE snprc_ehr.validAccounts( ); GO +ALTER TABLE snprc_ehr.validAccounts ADD diCreated DATETIME; +ALTER TABLE snprc_ehr.validAccounts ADD diModified DATETIME; +ALTER TABLE snprc_ehr.validAccounts ADD diCreatedBy USERID; +ALTER TABLE snprc_ehr.validAccounts ADD diModifiedBy USERID; + +ALTER TABLE snprc_ehr.validAccounts DROP COLUMN entryDateTm; +ALTER TABLE snprc_ehr.validAccounts DROP COLUMN userName; + +ALTER TABLE snprc_ehr.validAccounts DROP COLUMN objectid; +ALTER TABLE snprc_ehr.validAccounts ADD objectid uniqueidentifier not null default newid(); + +CREATE UNIQUE INDEX idx_validAccounts_objectid ON snprc_ehr.validAccounts (objectid); + CREATE TABLE snprc_ehr.lab_tests ( rowid int identity(1,1), type varchar(100), @@ -165,6 +232,22 @@ GO CREATE INDEX IDX_snprc_lab_tests_test_id ON snprc_ehr.lab_tests (testid); GO +ALTER TABLE snprc_ehr.lab_tests ADD diCreated DATETIME; +ALTER TABLE snprc_ehr.lab_tests ADD diModified DATETIME; +ALTER TABLE snprc_ehr.lab_tests ADD diCreatedBy USERID; +ALTER TABLE snprc_ehr.lab_tests ADD diModifiedBy USERID; + +ALTER TABLE snprc_ehr.lab_tests DROP COLUMN entryDateTm; +ALTER TABLE snprc_ehr.lab_tests DROP COLUMN userName; + +ALTER TABLE snprc_ehr.lab_tests DROP COLUMN objectid; +ALTER TABLE snprc_ehr.lab_tests ADD objectid uniqueidentifier not null default newid(); + +CREATE UNIQUE INDEX idx_lab_tests_objectid ON snprc_ehr.lab_tests (objectid); +-- drop existing tables +DROP TABLE snprc_ehr.lab_tests; +GO + CREATE TABLE snprc_ehr.labwork_services ( servicename varchar(200) NOT NULL, serviceid varchar(200) NOT NULL, @@ -191,6 +274,91 @@ CREATE TABLE snprc_ehr.labwork_services ( GO +ALTER TABLE snprc_ehr.labwork_services ADD diCreated DATETIME; +ALTER TABLE snprc_ehr.labwork_services ADD diModified DATETIME; +ALTER TABLE snprc_ehr.labwork_services ADD diCreatedBy USERID; +ALTER TABLE snprc_ehr.labwork_services ADD diModifiedBy USERID; + +ALTER TABLE snprc_ehr.labwork_services DROP COLUMN entryDateTm; +ALTER TABLE snprc_ehr.labwork_services DROP COLUMN userName; + +-- Need to change the primary key - recreate labwork_services table - The table will need to be repopulated using the ETL process + +DROP TABLE snprc_ehr.labwork_services; + +CREATE TABLE snprc_ehr.labwork_services ( + rowId int identity, + serviceName varchar(200) NOT NULL, + serviceId varchar(200) NOT NULL, + dataset varchar(200), + chargeType varchar(200), + collectionMethod varchar(500), + alertOnComplete bit, + tissue varchar(100), + outsideLab bit, + dateDisabled datetime, + method varchar(100), + objectid UNIQUEIDENTIFIER not null default newid(), + Created DATETIME, + CreatedBy USERID, + Modified DATETIME, + ModifiedBy USERID, + diCreated DATETIME, + diModified DATETIME, + diCreatedBy USERID, + diModifiedBy USERID, + Container entityId NOT NULL, + + CONSTRAINT PK_snprc_labwork_services PRIMARY KEY (rowId), + CONSTRAINT FK_snprc_labwork_services FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) +); + +CREATE UNIQUE INDEX idx_labwork_services_serviceName ON snprc_ehr.labwork_services (serviceName); +CREATE UNIQUE INDEX idx_labwork_services_serviceId ON snprc_ehr.labwork_services (serviceId); +CREATE UNIQUE INDEX idx_labwork_services_objectid ON snprc_ehr.labwork_services (objectid); + +DROP TABLE snprc_ehr.labwork_services; +go + +-- labwork_services + +CREATE TABLE snprc_ehr.labwork_services ( + RowId [INT] IDENTITY(1,1) NOT NULL, + ServiceName varchar(100) NOT NULL, + ServiceId INT NOT NULL, + Dataset varchar(100), + ChargeType varchar(100), + CollectionMethod varchar(500), + AlertOnComplete bit, + Tissue varchar(100), + OutsideLab bit, + DateDisabled datetime, + Method varchar(100), + Active INT, + Bench varchar(20), + ObjectId nvarchar(4000), + [Created] [DATETIME] NULL, + [CreatedBy] [dbo].[USERID] NULL, + [Modified] [DATETIME] NULL, + [ModifiedBy] [dbo].[USERID] NULL, + [DiCreated] [DATETIME] NULL, + [DiModified] [DATETIME] NULL, + [DiCreatedBy] [dbo].[USERID] NULL, + [DiModifiedBy] [dbo].[USERID] NULL, + Container entityId NOT NULL, + + CONSTRAINT PK_snprc_labwork_services PRIMARY KEY (ServiceId), + CONSTRAINT FK_snprc_labwork_services_container FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) +); + +GO + +ALTER TABLE [snprc_ehr].[labwork_services] ADD DEFAULT (NEWID()) FOR [ObjectId]; +GO + +CREATE UNIQUE INDEX idx_labwork_services_serviceId ON [snprc_ehr].[labwork_services](ServiceId); +GO + CREATE TABLE snprc_ehr.validInstitutions ( institution_id integer NOT NULL , institution_name varchar(200) NOT NULL, @@ -212,6 +380,16 @@ CREATE TABLE snprc_ehr.validInstitutions ( GO +ALTER TABLE snprc_ehr.validInstitutions ADD diCreated DATETIME; +ALTER TABLE snprc_ehr.validInstitutions ADD diModified DATETIME; +ALTER TABLE snprc_ehr.validInstitutions ADD diCreatedBy USERID; +ALTER TABLE snprc_ehr.validInstitutions ADD diModifiedBy USERID; + +ALTER TABLE snprc_ehr.validInstitutions DROP COLUMN objectid; +ALTER TABLE snprc_ehr.validInstitutions ADD objectid uniqueidentifier not null default newid(); + +CREATE UNIQUE INDEX idx_validInstitutions_objectid ON snprc_ehr.validInstitutions (objectid); + CREATE TABLE snprc_ehr.validVets ( vetId integer NOT NULL, displayName varchar(128) NOT NULL , @@ -230,6 +408,16 @@ CREATE TABLE snprc_ehr.validVets ( GO +ALTER TABLE snprc_ehr.validVets ADD diCreated DATETIME; +ALTER TABLE snprc_ehr.validVets ADD diModified DATETIME; +ALTER TABLE snprc_ehr.validVets ADD diCreatedBy USERID; +ALTER TABLE snprc_ehr.validVets ADD diModifiedBy USERID; + +ALTER TABLE snprc_ehr.validVets DROP COLUMN objectid; +ALTER TABLE snprc_ehr.validVets ADD objectid uniqueidentifier not null default newid(); + +CREATE UNIQUE INDEX idx_validVets_objectid ON snprc_ehr.validVets (objectid); + CREATE TABLE snprc_ehr.valid_bd_status ( value integer NOT NULL, description varchar(128) NOT NULL , @@ -245,6 +433,11 @@ CREATE TABLE snprc_ehr.valid_bd_status ( ); GO +ALTER TABLE snprc_ehr.valid_bd_status DROP COLUMN objectid; +ALTER TABLE snprc_ehr.valid_bd_status ADD objectid uniqueidentifier not null default newid(); + +CREATE UNIQUE INDEX idx_valid_bd_status_objectid ON snprc_ehr.valid_bd_status (objectid); + CREATE TABLE snprc_ehr.valid_birth_code ( value integer NOT NULL, description varchar(128) NOT NULL , @@ -261,6 +454,12 @@ CREATE TABLE snprc_ehr.valid_birth_code ( GO +ALTER TABLE snprc_ehr.valid_birth_code DROP COLUMN objectid; +ALTER TABLE snprc_ehr.valid_birth_code ADD objectid uniqueidentifier not null default newid(); + +CREATE UNIQUE INDEX idx_valid_birth_code_objectid ON snprc_ehr.valid_birth_code (objectid); +EXEC core.fn_dropifexists 'valid_birth_code','snprc_ehr', 'TABLE'; + CREATE TABLE snprc_ehr.valid_death_code ( value integer NOT NULL, description varchar(128) NOT NULL , @@ -277,61 +476,11 @@ CREATE TABLE snprc_ehr.valid_death_code ( GO -ALTER TABLE snprc_ehr.labwork_services ADD diCreated DATETIME; -ALTER TABLE snprc_ehr.labwork_services ADD diModified DATETIME; -ALTER TABLE snprc_ehr.labwork_services ADD diCreatedBy USERID; -ALTER TABLE snprc_ehr.labwork_services ADD diModifiedBy USERID; - -ALTER TABLE snprc_ehr.lab_tests ADD diCreated DATETIME; -ALTER TABLE snprc_ehr.lab_tests ADD diModified DATETIME; -ALTER TABLE snprc_ehr.lab_tests ADD diCreatedBy USERID; -ALTER TABLE snprc_ehr.lab_tests ADD diModifiedBy USERID; - -ALTER TABLE snprc_ehr.package ADD diCreated DATETIME; -ALTER TABLE snprc_ehr.package ADD diModified DATETIME; -ALTER TABLE snprc_ehr.package ADD diCreatedBy USERID; -ALTER TABLE snprc_ehr.package ADD diModifiedBy USERID; +ALTER TABLE snprc_ehr.valid_death_code DROP COLUMN objectid; +ALTER TABLE snprc_ehr.valid_death_code ADD objectid uniqueidentifier not null default newid(); -ALTER TABLE snprc_ehr.package_category ADD diCreated DATETIME; -ALTER TABLE snprc_ehr.package_category ADD diModified DATETIME; -ALTER TABLE snprc_ehr.package_category ADD diCreatedBy USERID; -ALTER TABLE snprc_ehr.package_category ADD diModifiedBy USERID; - -ALTER TABLE snprc_ehr.package_category_junction ADD diCreated DATETIME; -ALTER TABLE snprc_ehr.package_category_junction ADD diModified DATETIME; -ALTER TABLE snprc_ehr.package_category_junction ADD diCreatedBy USERID; -ALTER TABLE snprc_ehr.package_category_junction ADD diModifiedBy USERID; - -ALTER TABLE snprc_ehr.validAccounts ADD diCreated DATETIME; -ALTER TABLE snprc_ehr.validAccounts ADD diModified DATETIME; -ALTER TABLE snprc_ehr.validAccounts ADD diCreatedBy USERID; -ALTER TABLE snprc_ehr.validAccounts ADD diModifiedBy USERID; - -ALTER TABLE snprc_ehr.validInstitutions ADD diCreated DATETIME; -ALTER TABLE snprc_ehr.validInstitutions ADD diModified DATETIME; -ALTER TABLE snprc_ehr.validInstitutions ADD diCreatedBy USERID; -ALTER TABLE snprc_ehr.validInstitutions ADD diModifiedBy USERID; - -ALTER TABLE snprc_ehr.species ADD diCreated DATETIME; -ALTER TABLE snprc_ehr.species ADD diModified DATETIME; -ALTER TABLE snprc_ehr.species ADD diCreatedBy USERID; -ALTER TABLE snprc_ehr.species ADD diModifiedBy USERID; - -ALTER TABLE snprc_ehr.validVets ADD diCreated DATETIME; -ALTER TABLE snprc_ehr.validVets ADD diModified DATETIME; -ALTER TABLE snprc_ehr.validVets ADD diCreatedBy USERID; -ALTER TABLE snprc_ehr.validVets ADD diModifiedBy USERID; - -ALTER TABLE snprc_ehr.species ADD primate VARCHAR(1); - -ALTER TABLE snprc_ehr.validAccounts DROP COLUMN entryDateTm; -ALTER TABLE snprc_ehr.validAccounts DROP COLUMN userName; - -ALTER TABLE snprc_ehr.labwork_services DROP COLUMN entryDateTm; -ALTER TABLE snprc_ehr.labwork_services DROP COLUMN userName; - -ALTER TABLE snprc_ehr.lab_tests DROP COLUMN entryDateTm; -ALTER TABLE snprc_ehr.lab_tests DROP COLUMN userName; +CREATE UNIQUE INDEX idx_valid_death_code_objectid ON snprc_ehr.valid_death_code (objectid); +EXEC core.fn_dropifexists 'valid_death_code','snprc_ehr', 'TABLE'; CREATE TABLE snprc_ehr.animal_group_categories( category_code int NOT NULL, @@ -360,6 +509,11 @@ CREATE TABLE snprc_ehr.animal_group_categories( GO +ALTER TABLE snprc_ehr.animal_group_categories DROP COLUMN objectid; +ALTER TABLE snprc_ehr.animal_group_categories ADD objectid uniqueidentifier not null default newid(); + +CREATE UNIQUE INDEX idx_animal_group_categories_objectid ON snprc_ehr.animal_group_categories (objectid); + CREATE TABLE snprc_ehr.animal_groups( code INT NOT NULL, category_code INT NOT NULL, @@ -388,115 +542,13 @@ GO EXEC sp_rename 'snprc_ehr.animal_groups.description', 'name', 'COLUMN'; GO --- DROP the object id column --- ADD the objectid back as a uniqueidentifier - -ALTER TABLE snprc_ehr.species DROP COLUMN objectid; -ALTER TABLE snprc_ehr.species ADD objectid uniqueidentifier not null default newid(); - -ALTER TABLE snprc_ehr.package_category DROP COLUMN objectid; -ALTER TABLE snprc_ehr.package_category ADD objectid uniqueidentifier not null default newid(); - -ALTER TABLE snprc_ehr.package_category_junction DROP COLUMN objectid; -ALTER TABLE snprc_ehr.package_category_junction ADD objectid uniqueidentifier not null default newid(); - ALTER TABLE snprc_ehr.animal_groups DROP COLUMN objectid; ALTER TABLE snprc_ehr.animal_groups ADD objectid uniqueidentifier not null default newid(); -ALTER TABLE snprc_ehr.validVets DROP COLUMN objectid; -ALTER TABLE snprc_ehr.validVets ADD objectid uniqueidentifier not null default newid(); - -ALTER TABLE snprc_ehr.lab_tests DROP COLUMN objectid; -ALTER TABLE snprc_ehr.lab_tests ADD objectid uniqueidentifier not null default newid(); - -ALTER TABLE snprc_ehr.validAccounts DROP COLUMN objectid; -ALTER TABLE snprc_ehr.validAccounts ADD objectid uniqueidentifier not null default newid(); - -ALTER TABLE snprc_ehr.valid_bd_status DROP COLUMN objectid; -ALTER TABLE snprc_ehr.valid_bd_status ADD objectid uniqueidentifier not null default newid(); - -ALTER TABLE snprc_ehr.valid_birth_code DROP COLUMN objectid; -ALTER TABLE snprc_ehr.valid_birth_code ADD objectid uniqueidentifier not null default newid(); - -ALTER TABLE snprc_ehr.valid_death_code DROP COLUMN objectid; -ALTER TABLE snprc_ehr.valid_death_code ADD objectid uniqueidentifier not null default newid(); - -ALTER TABLE snprc_ehr.animal_group_categories DROP COLUMN objectid; -ALTER TABLE snprc_ehr.animal_group_categories ADD objectid uniqueidentifier not null default newid(); - -ALTER TABLE snprc_ehr.validInstitutions DROP COLUMN objectid; -ALTER TABLE snprc_ehr.validInstitutions ADD objectid uniqueidentifier not null default newid(); - -ALTER TABLE snprc_ehr.package DROP COLUMN objectid; -ALTER TABLE snprc_ehr.package ADD objectid uniqueidentifier not null default newid(); - -ALTER TABLE snprc_ehr.clinical_observation_datasets ADD objectid uniqueidentifier not null default newid(); - --- create a unique index on the objectid -CREATE UNIQUE INDEX idx_species_objectid ON snprc_ehr.species (objectid); -CREATE UNIQUE INDEX idx_package_category_objectid ON snprc_ehr.package_category (objectid); -CREATE UNIQUE INDEX idx_package_category_junction_objectid ON snprc_ehr.package_category_junction (objectid); CREATE UNIQUE INDEX idx_animal_groups_objectid ON snprc_ehr.animal_groups (objectid); -CREATE UNIQUE INDEX idx_validVets_objectid ON snprc_ehr.validVets (objectid); -CREATE UNIQUE INDEX idx_lab_tests_objectid ON snprc_ehr.lab_tests (objectid); -CREATE UNIQUE INDEX idx_validAccounts_objectid ON snprc_ehr.validAccounts (objectid); -CREATE UNIQUE INDEX idx_valid_bd_status_objectid ON snprc_ehr.valid_bd_status (objectid); -CREATE UNIQUE INDEX idx_valid_birth_code_objectid ON snprc_ehr.valid_birth_code (objectid); -CREATE UNIQUE INDEX idx_valid_death_code_objectid ON snprc_ehr.valid_death_code (objectid); -CREATE UNIQUE INDEX idx_animal_group_categories_objectid ON snprc_ehr.animal_group_categories (objectid); -CREATE UNIQUE INDEX idx_validInstitutions_objectid ON snprc_ehr.validInstitutions (objectid); -CREATE UNIQUE INDEX idx_package_objectid ON snprc_ehr.package (objectid); - -- add unique index on code column in snprc_ehr.animal_groups CREATE UNIQUE INDEX idx_animal_groups_code ON snprc_ehr.animal_groups (code); --- Need to change the primary key - recreate labwork_services table - The table will need to be repopulated using the ETL process - -DROP TABLE snprc_ehr.labwork_services; - -CREATE TABLE snprc_ehr.labwork_services ( - rowId int identity, - serviceName varchar(200) NOT NULL, - serviceId varchar(200) NOT NULL, - dataset varchar(200), - chargeType varchar(200), - collectionMethod varchar(500), - alertOnComplete bit, - tissue varchar(100), - outsideLab bit, - dateDisabled datetime, - method varchar(100), - objectid UNIQUEIDENTIFIER not null default newid(), - Created DATETIME, - CreatedBy USERID, - Modified DATETIME, - ModifiedBy USERID, - diCreated DATETIME, - diModified DATETIME, - diCreatedBy USERID, - diModifiedBy USERID, - Container entityId NOT NULL, - - CONSTRAINT PK_snprc_labwork_services PRIMARY KEY (rowId), - CONSTRAINT FK_snprc_labwork_services FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) -); - -CREATE UNIQUE INDEX idx_labwork_services_serviceName ON snprc_ehr.labwork_services (serviceName); -CREATE UNIQUE INDEX idx_labwork_services_serviceId ON snprc_ehr.labwork_services (serviceId); -CREATE UNIQUE INDEX idx_labwork_services_objectid ON snprc_ehr.labwork_services (objectid); - -ALTER TABLE snprc_ehr.species ADD Created DATETIME; -ALTER TABLE snprc_ehr.species ADD Modified DATETIME; -ALTER TABLE snprc_ehr.species ADD CreatedBy USERID; -ALTER TABLE snprc_ehr.species ADD ModifiedBy USERID; - --- drop existing tables -DROP TABLE snprc_ehr.lab_tests; -GO - -DROP TABLE snprc_ehr.labwork_services; -go - -- labwork_types CREATE TABLE snprc_ehr.labwork_types ( RowId [INT] IDENTITY(1,1) NOT NULL, @@ -518,54 +570,14 @@ CREATE TABLE snprc_ehr.labwork_types ( GO -ALTER TABLE [snprc_ehr].[labwork_types] ADD DEFAULT (NEWID()) FOR [ObjectId]; -GO - - --- labwork_services - -CREATE TABLE snprc_ehr.labwork_services ( - RowId [INT] IDENTITY(1,1) NOT NULL, - ServiceName varchar(100) NOT NULL, - ServiceId INT NOT NULL, - Dataset varchar(100), - ChargeType varchar(100), - CollectionMethod varchar(500), - AlertOnComplete bit, - Tissue varchar(100), - OutsideLab bit, - DateDisabled datetime, - Method varchar(100), - Active INT, - Bench varchar(20), - ObjectId nvarchar(4000), - [Created] [DATETIME] NULL, - [CreatedBy] [dbo].[USERID] NULL, - [Modified] [DATETIME] NULL, - [ModifiedBy] [dbo].[USERID] NULL, - [DiCreated] [DATETIME] NULL, - [DiModified] [DATETIME] NULL, - [DiCreatedBy] [dbo].[USERID] NULL, - [DiModifiedBy] [dbo].[USERID] NULL, - Container entityId NOT NULL, - - CONSTRAINT PK_snprc_labwork_services PRIMARY KEY (ServiceId), - CONSTRAINT FK_snprc_labwork_services_container FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) -); - -GO - -ALTER TABLE [snprc_ehr].[labwork_services] ADD DEFAULT (NEWID()) FOR [ObjectId]; -GO - -CREATE UNIQUE INDEX idx_labwork_services_serviceId ON [snprc_ehr].[labwork_services](ServiceId); +ALTER TABLE [snprc_ehr].[labwork_types] ADD DEFAULT (NEWID()) FOR [ObjectId]; GO ALTER TABLE [snprc_ehr].[labwork_services] WITH CHECK ADD CONSTRAINT [FK_snprc_labwork_panels_dataset] FOREIGN KEY([Dataset]) REFERENCES [snprc_ehr].[labwork_types] ([ServiceType]); GO - ALTER TABLE [snprc_ehr].[labwork_services] CHECK CONSTRAINT [FK_snprc_labwork_panels_dataset]; GO + -- labwork_panels CREATE TABLE [snprc_ehr].[labwork_panels]( @@ -671,6 +683,23 @@ go ALTER TABLE [snprc_ehr].[ValidChargeBySpecies] ADD DEFAULT (NEWID()) FOR [ObjectId]; GO +-- adding species to the PK +ALTER TABLE snprc_ehr.ValidChargeBySpecies + DROP CONSTRAINT PK_snprc_ValidChargeBySpecies; +GO + +ALTER TABLE snprc_ehr.ValidChargeBySpecies ADD CONSTRAINT + PK_snprc_ValidChargeBySpecies PRIMARY KEY CLUSTERED +( + Project, + Species +); + +GO + +ALTER TABLE snprc_ehr.ValidChargeBySpecies ADD startDate DATETIME NOT NULL DEFAULT GETDATE(); +ALTER TABLE snprc_ehr.ValidChargeBySpecies ADD stopDate DATETIME; + EXEC core.fn_dropifexists 'FeeSchedule','snprc_ehr', 'TABLE'; GO @@ -697,8 +726,6 @@ CREATE UNIQUE INDEX idx_snprc_fee_schedule_objectid ON snprc_ehr.feeSchedule (ob CREATE UNIQUE INDEX idx_snprc_fee_schedule_activityId_budgetYear ON snprc_ehr.FeeSchedule (ActivityId, BudgetYear); EXEC core.fn_dropifexists 'FeeSchedule','snprc_ehr', 'TABLE'; -EXEC core.fn_dropifexists 'FeeScheduleSpeciesLookup','snprc_ehr', 'TABLE'; -GO CREATE TABLE [snprc_ehr].[FeeSchedule]( [RowId] [bigint] IDENTITY(1,1) NOT NULL, @@ -725,6 +752,9 @@ CREATE UNIQUE INDEX idx_snprc_fee_schedule_objectid ON snprc_ehr.feeSchedule (ob CREATE UNIQUE INDEX idx_snprc_fee_schedule_activityId_budgetYear ON snprc_ehr.FeeSchedule (StartingYear, VersionLabel, ActivityId, BudgetYear); GO +EXEC core.fn_dropifexists 'FeeScheduleSpeciesLookup','snprc_ehr', 'TABLE'; +GO + CREATE TABLE [snprc_ehr].[FeeScheduleSpeciesLookup] ( [FsSpecies] [VARCHAR](128) NOT NULL, [SpeciesCode] [VARCHAR](2) NOT NULL, @@ -740,11 +770,6 @@ CREATE TABLE [snprc_ehr].[FeeScheduleSpeciesLookup] ( ); GO -ALTER TABLE snprc_ehr.package ADD pkgType NVARCHAR(1) not null default 'U'; - -EXEC core.fn_dropifexists 'valid_birth_code','snprc_ehr', 'TABLE'; -EXEC core.fn_dropifexists 'valid_death_code','snprc_ehr', 'TABLE'; - EXEC core.fn_dropifexists 'LocationTemperature','snprc_ehr', 'TABLE'; GO @@ -911,6 +936,23 @@ CREATE TABLE snprc_ehr.ValidDiet( CREATE UNIQUE INDEX idx_ValidDiet_SnomedCode_StartStopDate ON snprc_ehr.ValidDiet(SnomedCode, StartDate, StopDate); go +/****************************************************** +Change ValidDiet PK +Script generated by SSMS +srr 06.16.2020 +******************************************************/ +ALTER TABLE snprc_ehr.ValidDiet DROP CONSTRAINT PK_ValidDiet; +GO + +ALTER TABLE snprc_ehr.ValidDiet ADD CONSTRAINT PK_ValidDiet PRIMARY KEY CLUSTERED +( + Diet +); +GO + +ALTER TABLE snprc_ehr.ValidDiet SET (LOCK_ESCALATION = TABLE); +GO + /********************************************************* Valids for diagnosis (DX) taken from legacy DB. Likely needs refactoring. @@ -985,20 +1027,6 @@ CREATE TABLE snprc_ehr.ValidVaccines CONSTRAINT PK_ValidVaccine PRIMARY KEY CLUSTERED (Vaccine ASC) ); --- adding species to the PK -ALTER TABLE snprc_ehr.ValidChargeBySpecies - DROP CONSTRAINT PK_snprc_ValidChargeBySpecies; -GO - -ALTER TABLE snprc_ehr.ValidChargeBySpecies ADD CONSTRAINT - PK_snprc_ValidChargeBySpecies PRIMARY KEY CLUSTERED -( - Project, - Species -); - -GO - /******************************************************* New table to load data from new animal wizard. Data will be ETLed back down to animal database @@ -1044,34 +1072,6 @@ CREATE TABLE snprc_ehr.NewAnimalData CONSTRAINT PK_snprc_NEWANIMALDATA PRIMARY KEY (Id) ); ---[DeliveryType] [nvarchar](400) NULL, ---[BirthNature] [nvarchar](400) NULL, ---[AcquireType] [nvarchar](400) NULL, - - -/* -Species, -Acq_code, -id_type, -institution_id, -colony, -delivery_type, -birth_nature, -acquire_type, -animalAccounts, -location, -IACUC fields, -pedigree, -diet - */ - - - -go - -ALTER TABLE snprc_ehr.ValidChargeBySpecies ADD startDate DATETIME NOT NULL DEFAULT GETDATE(); -ALTER TABLE snprc_ehr.ValidChargeBySpecies ADD stopDate DATETIME; - /******************************************************* New table to load data from new animal wizard. Data will be ETLed back down to animal database @@ -1117,96 +1117,57 @@ CREATE TABLE [snprc_ehr].[NewAnimalData]( CONSTRAINT PK_snprc_NEWANIMALDATA PRIMARY KEY (Id) ); --- generated w/o issue from SSMS srr 04.10.20 -EXEC core.fn_dropifexists 'BehaviorNotificationComment','snprc_ehr', 'TABLE'; - -CREATE TABLE snprc_ehr.BehaviorNotificationComment -( - NotificationNumber INT NOT NULL, - NotificationDateTm DATETIME NOT NULL, - BehaviorId INT NOT NULL, - NotificationStatus INT NOT NULL, - CaseNumber INT NULL, - NotificationComments VARCHAR(255) NULL, - SuspiciousBehavior CHAR(1) NOT NULL, - Sib CHAR(1) NOT NULL, - HousingType INT NULL, - Behavior VARCHAR(30) NOT NULL, - AbnormalFlag CHAR(1) NOT NULL, - BehaviorDescription VARCHAR(200) NOT NULL, - BehaviorCategory VARCHAR(40) NULL, - BehaviorComments VARCHAR(200) NULL, - Container ENTITYID NOT NULL, - Created DATETIME NULL, - CreatedBy USERID NULL, - ModifiedBy USERID NULL, - Modified DATETIME NULL, - DiCreatedBy USERID NULL, - DiCreated DATETIME NULL, - DiModifiedBy USERID NULL, - DiModified DATETIME NULL, - ObjectId UNIQUEIDENTIFIER NULL, - - CONSTRAINT PK_BehaviorNotiComment PRIMARY KEY (NotificationNumber) -); - --- generated w/o issue from SSMS srr 04.10.20 --- changed pk to tid identity -EXEC core.fn_dropifexists 'BehaviorNotificationComment','snprc_ehr', 'TABLE'; +/******************************************************* +New table to load data from new animal wizard. + Data will be ETLed back down to animal database +srr 01.28.2020 -CREATE TABLE snprc_ehr.BehaviorNotificationComment -( - NotificationNumber INT NOT NULL, - NotificationDateTm DATETIME NOT NULL, - BehaviorId INT NOT NULL, - NotificationStatus INT NOT NULL, - CaseNumber INT NULL, - NotificationComments VARCHAR(255) NULL, - SuspiciousBehavior CHAR(1) NOT NULL, - Sib CHAR(1) NOT NULL, - HousingType INT NULL, - Behavior VARCHAR(30) NOT NULL, - AbnormalFlag CHAR(1) NOT NULL, - BehaviorDescription VARCHAR(200) NOT NULL, - BehaviorCategory VARCHAR(40) NULL, - BehaviorComments VARCHAR(200) NULL, - Container ENTITYID NOT NULL, - Created DATETIME NULL, - CreatedBy USERID NULL, - ModifiedBy USERID NULL, - Modified DATETIME NULL, - DiCreatedBy USERID NULL, - DiCreated DATETIME NULL, - DiModifiedBy USERID NULL, - DiModified DATETIME NULL, - tid INT IDENTITY, - objectid UNIQUEIDENTIFIER NULL, + May not use all columns. + I defaulted to nvarchar(400) if unsure of datatype. + May need to change datatypes to match those in lookup tables. - CONSTRAINT PK_BehaviorNotiComment_oid PRIMARY KEY (tid) -); +srr 03.09.2020 version 20.003 + Changed to ints for values that have a dropdown. + No Real data, therefore dropping table and re-recreating. +srr 06.08.2020 version 20.007 + Added column for BirthCode. + 1 DOB accurate + 2 Month-Year accurate + 3 Year accurate + No Real data, therefore dropping table and re-recreating. +*******************************************************/ -EXEC core.fn_dropifexists 'ValidDefaultIACUC','snprc_ehr', 'TABLE'; +EXEC core.fn_dropifexists 'NewAnimalData','snprc_ehr', 'TABLE'; -CREATE TABLE snprc_ehr.validDefaultIACUC +CREATE TABLE snprc_ehr.NewAnimalData ( - WorkingIacuc varchar(7) NOT NULL, - ArcNumSeq int NOT NULL, - ArcNumGenus varchar(2) NOT NULL, - Mandatory varchar(1) NULL, - DefaultIacuc varchar(1) NULL, - Container ENTITYID NOT NULL, - Created DATETIME NULL, - CreatedBy USERID NULL, - ModifiedBy USERID NULL, - Modified DATETIME NULL, - DiCreatedBy USERID NULL, - DiCreated DATETIME NULL, - DiModifiedBy USERID NULL, - DiModified DATETIME NULL, - ObjectId UNIQUEIDENTIFIER NOT NULL, + Id nvarchar(32) NOT NULL, + BirthDate datetime NULL, + BirthCode int NULL, + AcquisitionType int NULL, + AcqDate datetime NULL, + Gender nvarchar(10) NULL, + Sire nvarchar(32) NULL, + Dam nvarchar(32) NULL, + Species nvarchar(3) NULL, + Colony int NULL, + AnimalAccount int NULL, + OwnerInstitution int NULL, + ResponsibleInstitution int NULL, + Room int NULL, + Cage int NULL, + Diet int NULL, + Pedigree int NULL, + IACUC int NULL, + Created datetime NULL, + CreatedBy dbo.USERID NULL, + Modified datetime NULL, + ModifiedBy dbo.USERID NULL, + Container dbo.ENTITYID NOT NULL, + objectid uniqueidentifier NOT NULL, - CONSTRAINT PK_ValidDefaultIACUC PRIMARY KEY (WorkingIacuc) + CONSTRAINT PK_snprc_NEWANIMALDATA PRIMARY KEY (Id) ); /******************************************************* @@ -1228,6 +1189,9 @@ srr 06.08.2020 version 20.007 2 Month-Year accurate 3 Year accurate No Real data, therefore dropping table and re-recreating. + + srr 06.24.2020 + Changed Diet, AnimalAccount and IACUC to strings *******************************************************/ EXEC core.fn_dropifexists 'NewAnimalData','snprc_ehr', 'TABLE'; @@ -1244,14 +1208,14 @@ CREATE TABLE snprc_ehr.NewAnimalData Dam nvarchar(32) NULL, Species nvarchar(3) NULL, Colony int NULL, - AnimalAccount int NULL, + AnimalAccount nvarchar(16) NULL, OwnerInstitution int NULL, ResponsibleInstitution int NULL, Room int NULL, Cage int NULL, - Diet int NULL, + Diet nvarchar(20) NULL, Pedigree int NULL, - IACUC int NULL, + IACUC nvarchar(200) NULL, Created datetime NULL, CreatedBy dbo.USERID NULL, Modified datetime NULL, @@ -1262,23 +1226,6 @@ CREATE TABLE snprc_ehr.NewAnimalData CONSTRAINT PK_snprc_NEWANIMALDATA PRIMARY KEY (Id) ); -/****************************************************** -Change ValidDiet PK -Script generated by SSMS -srr 06.16.2020 -******************************************************/ -ALTER TABLE snprc_ehr.ValidDiet DROP CONSTRAINT PK_ValidDiet; -GO - -ALTER TABLE snprc_ehr.ValidDiet ADD CONSTRAINT PK_ValidDiet PRIMARY KEY CLUSTERED -( - Diet -); -GO - -ALTER TABLE snprc_ehr.ValidDiet SET (LOCK_ESCALATION = TABLE); -GO - /******************************************************* New table to load data from new animal wizard. Data will be ETLed back down to animal database @@ -1301,6 +1248,7 @@ srr 06.08.2020 version 20.007 srr 06.24.2020 Changed Diet, AnimalAccount and IACUC to strings + srr 04012021 version 21.000 *******************************************************/ EXEC core.fn_dropifexists 'NewAnimalData','snprc_ehr', 'TABLE'; @@ -1312,6 +1260,7 @@ CREATE TABLE snprc_ehr.NewAnimalData BirthCode int NULL, AcquisitionType int NULL, AcqDate datetime NULL, + SourceInstitutionLocation nvarchar(10) NULL, Gender nvarchar(10) NULL, Sire nvarchar(32) NULL, Dam nvarchar(32) NULL, @@ -1335,6 +1284,97 @@ CREATE TABLE snprc_ehr.NewAnimalData CONSTRAINT PK_snprc_NEWANIMALDATA PRIMARY KEY (Id) ); +-- generated w/o issue from SSMS srr 04.10.20 +EXEC core.fn_dropifexists 'BehaviorNotificationComment','snprc_ehr', 'TABLE'; + +CREATE TABLE snprc_ehr.BehaviorNotificationComment +( + NotificationNumber INT NOT NULL, + NotificationDateTm DATETIME NOT NULL, + BehaviorId INT NOT NULL, + NotificationStatus INT NOT NULL, + CaseNumber INT NULL, + NotificationComments VARCHAR(255) NULL, + SuspiciousBehavior CHAR(1) NOT NULL, + Sib CHAR(1) NOT NULL, + HousingType INT NULL, + Behavior VARCHAR(30) NOT NULL, + AbnormalFlag CHAR(1) NOT NULL, + BehaviorDescription VARCHAR(200) NOT NULL, + BehaviorCategory VARCHAR(40) NULL, + BehaviorComments VARCHAR(200) NULL, + Container ENTITYID NOT NULL, + Created DATETIME NULL, + CreatedBy USERID NULL, + ModifiedBy USERID NULL, + Modified DATETIME NULL, + DiCreatedBy USERID NULL, + DiCreated DATETIME NULL, + DiModifiedBy USERID NULL, + DiModified DATETIME NULL, + ObjectId UNIQUEIDENTIFIER NULL, + + CONSTRAINT PK_BehaviorNotiComment PRIMARY KEY (NotificationNumber) +); + +-- generated w/o issue from SSMS srr 04.10.20 +-- changed pk to tid identity +EXEC core.fn_dropifexists 'BehaviorNotificationComment','snprc_ehr', 'TABLE'; + +CREATE TABLE snprc_ehr.BehaviorNotificationComment +( + NotificationNumber INT NOT NULL, + NotificationDateTm DATETIME NOT NULL, + BehaviorId INT NOT NULL, + NotificationStatus INT NOT NULL, + CaseNumber INT NULL, + NotificationComments VARCHAR(255) NULL, + SuspiciousBehavior CHAR(1) NOT NULL, + Sib CHAR(1) NOT NULL, + HousingType INT NULL, + Behavior VARCHAR(30) NOT NULL, + AbnormalFlag CHAR(1) NOT NULL, + BehaviorDescription VARCHAR(200) NOT NULL, + BehaviorCategory VARCHAR(40) NULL, + BehaviorComments VARCHAR(200) NULL, + Container ENTITYID NOT NULL, + Created DATETIME NULL, + CreatedBy USERID NULL, + ModifiedBy USERID NULL, + Modified DATETIME NULL, + DiCreatedBy USERID NULL, + DiCreated DATETIME NULL, + DiModifiedBy USERID NULL, + DiModified DATETIME NULL, + tid INT IDENTITY, + objectid UNIQUEIDENTIFIER NULL, + + CONSTRAINT PK_BehaviorNotiComment_oid PRIMARY KEY (tid) +); + +EXEC core.fn_dropifexists 'ValidDefaultIACUC','snprc_ehr', 'TABLE'; + +CREATE TABLE snprc_ehr.validDefaultIACUC +( + WorkingIacuc varchar(7) NOT NULL, + ArcNumSeq int NOT NULL, + ArcNumGenus varchar(2) NOT NULL, + Mandatory varchar(1) NULL, + DefaultIacuc varchar(1) NULL, + Container ENTITYID NOT NULL, + Created DATETIME NULL, + CreatedBy USERID NULL, + ModifiedBy USERID NULL, + Modified DATETIME NULL, + DiCreatedBy USERID NULL, + DiCreated DATETIME NULL, + DiModifiedBy USERID NULL, + DiModified DATETIME NULL, + ObjectId UNIQUEIDENTIFIER NOT NULL, + + CONSTRAINT PK_ValidDefaultIACUC PRIMARY KEY (WorkingIacuc) +); + /******************************************************* Counters table for SNPRC_EHRSequencer Creator: thawkins @@ -1407,256 +1447,142 @@ CREATE TABLE snprc_ehr.ExternalReports CONSTRAINT PK_ExternalReports PRIMARY KEY CLUSTERED ( Id ASC) ); -/* 21.xxx SQL scripts */ - -/******************************************************* -New table to load data from new animal wizard. - Data will be ETLed back down to animal database - -srr 01.28.2020 +/* + Drop tables if they already exist +*/ - May not use all columns. - I defaulted to nvarchar(400) if unsure of datatype. - May need to change datatypes to match those in lookup tables. +EXEC core.fn_dropifexists @objname = 'HL7_IMPORT_LOG',@objschema = 'snprc_ehr', @objtype = 'TABLE'; -srr 03.09.2020 version 20.003 - Changed to ints for values that have a dropdown. - No Real data, therefore dropping table and re-recreating. -srr 06.08.2020 version 20.007 - Added column for BirthCode. - 1 DOB accurate - 2 Month-Year accurate - 3 Year accurate - No Real data, therefore dropping table and re-recreating. - - srr 06.24.2020 - Changed Diet, AnimalAccount and IACUC to strings - srr 04012021 version 21.000 -*******************************************************/ - -EXEC core.fn_dropifexists 'NewAnimalData','snprc_ehr', 'TABLE'; - - -CREATE TABLE snprc_ehr.NewAnimalData -( - Id nvarchar(32) NOT NULL, - BirthDate datetime NULL, - BirthCode int NULL, - AcquisitionType int NULL, - AcqDate datetime NULL, - SourceInstitutionLocation nvarchar(10) NULL, - Gender nvarchar(10) NULL, - Sire nvarchar(32) NULL, - Dam nvarchar(32) NULL, - Species nvarchar(3) NULL, - Colony int NULL, - AnimalAccount nvarchar(16) NULL, - OwnerInstitution int NULL, - ResponsibleInstitution int NULL, - Room int NULL, - Cage int NULL, - Diet nvarchar(20) NULL, - Pedigree int NULL, - IACUC nvarchar(200) NULL, - Created datetime NULL, - CreatedBy dbo.USERID NULL, - Modified datetime NULL, - ModifiedBy dbo.USERID NULL, - Container dbo.ENTITYID NOT NULL, - objectid uniqueidentifier NOT NULL, - - CONSTRAINT PK_snprc_NEWANIMALDATA PRIMARY KEY (Id) -); - -/* 22.xxx SQL scripts */ - -/******************************************************* -New tables for Orchard clinical path data integration via HL7 -05/19/22 - Terry Hawkins -*/ - -/* - Drop tables if they already exist -*/ - -EXEC core.fn_dropifexists @objname = 'HL7_IMPORT_LOG',@objschema = 'snprc_ehr', @objtype = 'TABLE'; -EXEC core.fn_dropifexists @objname = 'HL7_OBX',@objschema = 'snprc_ehr', @objtype = 'TABLE'; -EXEC core.fn_dropifexists @objname = 'HL7_NTE',@objschema = 'snprc_ehr', @objtype = 'TABLE'; -EXEC core.fn_dropifexists @objname = 'HL7_OBR',@objschema = 'snprc_ehr', @objtype = 'TABLE'; -EXEC core.fn_dropifexists @objname = 'HL7_PID',@objschema = 'snprc_ehr', @objtype = 'TABLE'; -EXEC core.fn_dropifexists @objname = 'HL7_PV1',@objschema = 'snprc_ehr', @objtype = 'TABLE'; -EXEC core.fn_dropifexists @objname = 'HL7_ORC',@objschema = 'snprc_ehr', @objtype = 'TABLE'; -EXEC core.fn_dropifexists @objname = 'HL7_MSH',@objschema = 'snprc_ehr', @objtype = 'TABLE'; -EXEC core.fn_dropifexists @objname = 'f_isNumeric',@objschema = 'snprc_ehr', @objtype = 'FUNCTION'; - -CREATE TABLE [snprc_ehr].[HL7_MSH]( +CREATE TABLE [snprc_ehr].[HL7_IMPORT_LOG]( + [TID] [NUMERIC](18, 0) IDENTITY(1,1) NOT NULL, [MESSAGE_ID] [VARCHAR](50) NOT NULL, - [IDX] [INT] NOT NULL, - [SENDING_APPLICATION] [VARCHAR](50) NULL, - [SENDING_FACILITY] [VARCHAR](50) NULL, - [RECEIVING_APPLICATION] [VARCHAR](50) NULL, - [RECEIVING_FACILITY] [VARCHAR](50) NULL, - [MESSAGE_TYPE] [VARCHAR](50) NULL, -- MSH_F9_C1 - [TRIGGER_EVENT_ID][VARCHAR](50) NULL, -- MSH_F9_C2 + [OBSERVATION_DATE_TM] [DATETIME] NULL, [MESSAGE_CONTROL_ID] [VARCHAR](50) NULL, - [MESSAGE_DATE_TM] [DATETIME] NULL, - [Container] [dbo].[ENTITYID] NOT NULL, - [OBJECT_ID] [UNIQUEIDENTIFIER] NOT NULL, - [USER_NAME] [VARCHAR](128) NOT NULL, - [ENTRY_DATE_TM] [DATETIME] NOT NULL, - [TIMESTAMP] [TIMESTAMP] NULL, - CONSTRAINT [PK_HL7_MSH] PRIMARY KEY CLUSTERED -( - [MESSAGE_ID] ASC -)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) - ); -GO - -ALTER TABLE [snprc_ehr].[HL7_MSH] ADD CONSTRAINT [DF_HL7_MSH_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID]; -GO - -ALTER TABLE [snprc_ehr].[HL7_MSH] ADD CONSTRAINT [DF_HL7_MSH_USER] DEFAULT (USER_NAME()) FOR [USER_NAME]; -GO - -ALTER TABLE [snprc_ehr].[HL7_MSH] ADD CONSTRAINT [DF_HL7_MSH_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM]; -GO - -ALTER TABLE [snprc_ehr].[HL7_MSH] WITH CHECK ADD CONSTRAINT [FK_HL7_MSH_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); -GO - -CREATE TABLE [snprc_ehr].[HL7_PID]( - [MESSAGE_ID] [VARCHAR](50) NOT NULL, - [IDX] [INT] NOT NULL, - [SET_ID] [VARCHAR](20) NULL, -- F1_C1 - [PATIENT_ID_EXTERNAL] [VARCHAR](20) NULL, -- F2_C1 - [PATIENT_ID_INTERNAL] [VARCHAR](20) NULL, -- F3_C1 - [BIRTHDATE] [DATETIME] NULL, --F7_C1 - [SEX] [VARCHAR] (20) NULL, -- F8_C1 - [BREED] [VARCHAR] (50) NULL, -- arc_species_code - F10_C1 (Race) - [SPECIES] [VARCHAR] (50) NULL, -- common name - F22_C1 (Ethnic Group) - [ACCOUNT_NUMBER] [VARCHAR] (50) NULL, --F18_C1 - [DEATH_DATE] [VARCHAR] (50) NULL, -- F29_C1 + [IMPORT_STATUS] [INT] NOT NULL, + [RESULT_STATUS] [VARCHAR](10) NULL, + [PATIENT_ID] [VARCHAR](20) NULL, + [SPECIES] [VARCHAR](50) NULL, + [HL7_MESSAGE_TEXT] [VARCHAR](MAX) NULL, + [IMPORT_TEXT] [VARCHAR](MAX) NULL, [Container] [dbo].[ENTITYID] NOT NULL, [OBJECT_ID] [UNIQUEIDENTIFIER] NOT NULL, [USER_NAME] [VARCHAR](128) NOT NULL, [ENTRY_DATE_TM] [DATETIME] NOT NULL, [TIMESTAMP] [TIMESTAMP] NULL, - CONSTRAINT [PK_HL7_PID] PRIMARY KEY CLUSTERED + CONSTRAINT [PK_HL7_IMPORT_LOG] PRIMARY KEY CLUSTERED ( -[MESSAGE_ID] ASC, -[IDX] +[TID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ); GO -ALTER TABLE [snprc_ehr].[HL7_PID] ADD CONSTRAINT [DF_HL7_PID_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID]; +ALTER TABLE [snprc_ehr].[HL7_IMPORT_LOG] ADD DEFAULT (USER_NAME()) FOR [USER_NAME]; GO -ALTER TABLE [snprc_ehr].[HL7_PID] ADD CONSTRAINT [DF_HL7_PID_USER] DEFAULT (USER_NAME()) FOR [USER_NAME]; +ALTER TABLE [snprc_ehr].[HL7_IMPORT_LOG] ADD DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM]; GO -ALTER TABLE [snprc_ehr].[HL7_PID] ADD CONSTRAINT [DF_HL7_PID_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM]; +ALTER TABLE [snprc_ehr].[HL7_IMPORT_LOG] ADD CONSTRAINT [DF_HL7_IMPROT_LOG_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID]; GO -ALTER TABLE [snprc_ehr].[HL7_PID] WITH CHECK ADD CONSTRAINT [FK_PID_REF_MSH] FOREIGN KEY([MESSAGE_ID]) REFERENCES [snprc_ehr].[HL7_MSH] ([MESSAGE_ID]); +ALTER TABLE [snprc_ehr].[HL7_IMPORT_LOG] WITH CHECK ADD CONSTRAINT [CKC_HL7_IMPORT_LOG_OBSERVATION_DATE] CHECK (([OBSERVATION_DATE_TM] IS NULL OR [OBSERVATION_DATE_TM]<=GETDATE())); GO -CREATE NONCLUSTERED INDEX [IDX_HL7_PID_ID] ON [snprc_ehr].[HL7_PID] -( - [PATIENT_ID_EXTERNAL] ASC -)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]; +ALTER TABLE [snprc_ehr].[HL7_IMPORT_LOG] CHECK CONSTRAINT [CKC_HL7_IMPORT_LOG_OBSERVATION_DATE]; GO -ALTER TABLE [snprc_ehr].[HL7_PID] CHECK CONSTRAINT [FK_PID_REF_MSH]; +ALTER TABLE [snprc_ehr].[HL7_IMPORT_LOG] WITH CHECK ADD CONSTRAINT [FK_HL7_IMPORT_LOG_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); GO -ALTER TABLE [snprc_ehr].[HL7_PID] WITH CHECK ADD CONSTRAINT [FK_HL7_PID_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); -GO +EXEC core.fn_dropifexists @objname = 'HL7_OBX',@objschema = 'snprc_ehr', @objtype = 'TABLE'; -CREATE TABLE [snprc_ehr].[HL7_PV1]( +CREATE TABLE [snprc_ehr].[HL7_OBX]( [MESSAGE_ID] [VARCHAR](50) NOT NULL, [IDX] [INT] NOT NULL, - [SET_ID] [VARCHAR](20) NULL, -- F1_C1 - [ADMISSION_TYPE] [VARCHAR] (20) NULL, --F4_C1 - [ATTENDING_DOCTOR_LAST] [VARCHAR] (50) NULL, -- F7_C2 - [ATTENDING_DOCTOR_FIRST] [VARCHAR] (50) NULL, -- F7_C3 - [VISIT_NUMBER] [VARCHAR] (20) NULL, -- F19_C1 - [CHARGE_NUMBER] [VARCHAR] (20) NULL, -- F22_C1 (Courtesy Code) - [ADMIT_DATE] [DATETIME] NULL, --F44_C1 + [OBR_OBJECT_ID] [UNIQUEIDENTIFIER] NOT NULL, + [SET_ID] [VARCHAR](20) NOT NULL, + [OBR_SET_ID] [VARCHAR](20) NOT NULL, + [VALUE_TYPE] [VARCHAR](10) NULL, + [TEST_ID] [VARCHAR](20) NULL, + [TEST_NAME] [VARCHAR](50) NULL, + [serviceTestId] [UNIQUEIDENTIFIER] NULL, + [QUALITATIVE_RESULT] [VARCHAR](MAX) NULL, + [RESULT] [VARCHAR](MAX) NULL, + [UNITS] [VARCHAR](20) NULL, + [REFERENCE_RANGE] [VARCHAR](60) NULL, + [ABNORMAL_FLAGS] [VARCHAR](10) NULL, + [RESULT_STATUS] [VARCHAR](10) NULL, [Container] [dbo].[ENTITYID] NOT NULL, [OBJECT_ID] [UNIQUEIDENTIFIER] NOT NULL, [USER_NAME] [VARCHAR](128) NOT NULL, [ENTRY_DATE_TM] [DATETIME] NOT NULL, [TIMESTAMP] [TIMESTAMP] NULL, - CONSTRAINT [PK_HL7_PV1] PRIMARY KEY CLUSTERED + CONSTRAINT [PK_HL7_OBX] PRIMARY KEY CLUSTERED ( - [MESSAGE_ID] ASC, -[IDX] + [OBJECT_ID] )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) - ); +); GO -ALTER TABLE [snprc_ehr].[HL7_PV1] ADD CONSTRAINT [DF_HL7_PV1_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID]; +ALTER TABLE [snprc_ehr].[HL7_OBX] ADD CONSTRAINT [DF_HL7_OBX_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID]; GO -ALTER TABLE [snprc_ehr].[HL7_PV1] ADD CONSTRAINT [DF_HL7_PV1_USER] DEFAULT (USER_NAME()) FOR [USER_NAME]; +ALTER TABLE [snprc_ehr].[HL7_OBX] ADD CONSTRAINT [DF_HL7_OBX_USER] DEFAULT (USER_NAME()) FOR [USER_NAME]; GO -ALTER TABLE [snprc_ehr].[HL7_PV1] ADD CONSTRAINT [DF_HL7_PV1_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM]; +ALTER TABLE [snprc_ehr].[HL7_OBX] ADD CONSTRAINT [DF_HL7_OBX_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM]; GO -ALTER TABLE [snprc_ehr].[HL7_PV1] WITH CHECK ADD CONSTRAINT [FK_PV1_REF_MSH] FOREIGN KEY([MESSAGE_ID]) REFERENCES [snprc_ehr].[HL7_MSH] ([MESSAGE_ID]); +CREATE NONCLUSTERED INDEX [IDX_HL7_OBX_OBR_OBJ_ID] ON [snprc_ehr].[HL7_OBX] +( + [OBR_OBJECT_ID] ASC +)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]; GO -ALTER TABLE [snprc_ehr].[HL7_PV1] CHECK CONSTRAINT [FK_PV1_REF_MSH]; +ALTER TABLE [snprc_ehr].[HL7_OBX] WITH CHECK ADD CONSTRAINT [FK_HL7_OBX_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); GO -ALTER TABLE [snprc_ehr].[HL7_PV1] WITH CHECK ADD CONSTRAINT [FK_HL7_PV1_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); -GO +EXEC core.fn_dropifexists @objname = 'HL7_NTE',@objschema = 'snprc_ehr', @objtype = 'TABLE'; -CREATE TABLE [snprc_ehr].[HL7_ORC]( +CREATE TABLE [snprc_ehr].[HL7_NTE]( [MESSAGE_ID] [VARCHAR](50) NOT NULL, [IDX] [INT] NOT NULL, - [ORDER_CONTROL_CODE] [VARCHAR](20) NULL, -- F1_C1 - [FILLER_ORDER_NUMBER] [VARCHAR] (22) NULL, --F3_C1 - [ENTERED_BY_LAST] [VARCHAR] (50) NULL, -- F10_C2 - [ENTERED_BY_FIRST] [VARCHAR] (50) NULL, -- F10_C3 - [VERIFIED_BY_LAST] [VARCHAR] (50) NULL, -- F11_C2 - [VERIFIED_BY_FIRST] [VARCHAR] (50) NULL, -- F11_C3 - [ORDER_PROVIDER_LAST] [VARCHAR] (50) NULL, -- F12_C2 - [ORDER_PROVIDER_FIRST] [VARCHAR] (50) NULL, -- F12_C3 - [CALLBACK_EMAIL] [VARCHAR](50) NULL, -- F14_C3 - [ORDER_DATE] [DATETIME] NULL, -- F15_C1 + [OBR_OBJECT_ID] [UNIQUEIDENTIFIER] NOT NULL, + [SET_ID] [VARCHAR](20) NOT NULL, + [OBR_SET_ID] [VARCHAR](20) NOT NULL, + [COMMENT] [VARCHAR](MAX) NULL, [Container] [dbo].[ENTITYID] NOT NULL, [OBJECT_ID] [UNIQUEIDENTIFIER] NOT NULL, [USER_NAME] [VARCHAR](128) NOT NULL, [ENTRY_DATE_TM] [DATETIME] NOT NULL, [TIMESTAMP] [TIMESTAMP] NULL, - CONSTRAINT [PK_HL7_ORC] PRIMARY KEY CLUSTERED + CONSTRAINT [PK_HL7_NTE] PRIMARY KEY CLUSTERED ( - [MESSAGE_ID] ASC, -[IDX] + [OBJECT_ID] ASC + )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) - ); +); GO -ALTER TABLE [snprc_ehr].[HL7_ORC] ADD CONSTRAINT [DF_HL7_ORC_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID]; +ALTER TABLE [snprc_ehr].[HL7_NTE] ADD CONSTRAINT [DF_HL7_NTE_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID]; GO -ALTER TABLE [snprc_ehr].[HL7_ORC] ADD CONSTRAINT [DF_HL7_ORC_USER] DEFAULT (USER_NAME()) FOR [USER_NAME]; +ALTER TABLE [snprc_ehr].[HL7_NTE] ADD CONSTRAINT [DF_HL7_NTE_USER] DEFAULT (USER_NAME()) FOR [USER_NAME]; GO -ALTER TABLE [snprc_ehr].[HL7_ORC] ADD CONSTRAINT [DF_HL7_ORC_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM]; +ALTER TABLE [snprc_ehr].[HL7_NTE] ADD CONSTRAINT [DF_HL7_NTE_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM]; GO -ALTER TABLE [snprc_ehr].[HL7_ORC] WITH CHECK ADD CONSTRAINT [FK_ORC_REF_MSH] FOREIGN KEY([MESSAGE_ID]) REFERENCES [snprc_ehr].[HL7_MSH] ([MESSAGE_ID]); +ALTER TABLE [snprc_ehr].[HL7_NTE] WITH CHECK ADD CONSTRAINT [FK_HL7_NTE_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); GO -ALTER TABLE [snprc_ehr].[HL7_ORC] CHECK CONSTRAINT [FK_ORC_REF_MSH]; +CREATE NONCLUSTERED INDEX [IDX_HL7_NTE_OBR_OBJ_ID] ON [snprc_ehr].[HL7_NTE] +( + [OBR_OBJECT_ID] ASC +)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]; GO -ALTER TABLE [snprc_ehr].[HL7_ORC] WITH CHECK ADD CONSTRAINT [FK_HL7_ORC_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); -GO +EXEC core.fn_dropifexists @objname = 'HL7_OBR',@objschema = 'snprc_ehr', @objtype = 'TABLE'; CREATE TABLE [snprc_ehr].[HL7_OBR]( [MESSAGE_ID] [VARCHAR](50) NOT NULL, @@ -1704,12 +1630,6 @@ GO ALTER TABLE [snprc_ehr].[HL7_OBR] CHECK CONSTRAINT [CKC_ENTRY_DATE_TM_HL7_OBR_OBR]; GO -ALTER TABLE [snprc_ehr].[HL7_OBR] WITH CHECK ADD CONSTRAINT [FK_OBR_REF_MSH] FOREIGN KEY([MESSAGE_ID]) REFERENCES [snprc_ehr].[HL7_MSH] ([MESSAGE_ID]); -GO - -ALTER TABLE [snprc_ehr].[HL7_OBR] CHECK CONSTRAINT [FK_OBR_REF_MSH]; -GO - CREATE NONCLUSTERED INDEX [IDX_HL7_OBR_ID_DATE] ON [snprc_ehr].[HL7_OBR] ( [ANIMAL_ID] ASC, @@ -1720,198 +1640,205 @@ GO ALTER TABLE [snprc_ehr].[HL7_OBR] WITH CHECK ADD CONSTRAINT [FK_HL7_OBR_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); GO -CREATE TABLE [snprc_ehr].[HL7_OBX]( +-- Increase procedure name size in OBR table +ALTER TABLE snprc_ehr.HL7_OBR ALTER COLUMN PROCEDURE_NAME VARCHAR(200) NULL; + +ALTER TABLE [snprc_ehr].[HL7_OBX] WITH CHECK ADD CONSTRAINT [FK_OBX_REF_OBR] FOREIGN KEY([OBR_OBJECT_ID]) REFERENCES [snprc_ehr].[HL7_OBR] ([OBJECT_ID]); +GO + +ALTER TABLE [snprc_ehr].[HL7_OBX] CHECK CONSTRAINT [FK_OBX_REF_OBR]; +GO + +ALTER TABLE [snprc_ehr].[HL7_NTE] WITH CHECK ADD CONSTRAINT [FK_NTE_REF_OBR] FOREIGN KEY([OBR_OBJECT_ID]) REFERENCES [snprc_ehr].[HL7_OBR] ([OBJECT_ID]); +GO + +ALTER TABLE [snprc_ehr].[HL7_NTE] CHECK CONSTRAINT [FK_NTE_REF_OBR]; +GO + +EXEC core.fn_dropifexists @objname = 'HL7_PID',@objschema = 'snprc_ehr', @objtype = 'TABLE'; + +CREATE TABLE [snprc_ehr].[HL7_PID]( [MESSAGE_ID] [VARCHAR](50) NOT NULL, [IDX] [INT] NOT NULL, - [OBR_OBJECT_ID] [UNIQUEIDENTIFIER] NOT NULL, - [SET_ID] [VARCHAR](20) NOT NULL, - [OBR_SET_ID] [VARCHAR](20) NOT NULL, - [VALUE_TYPE] [VARCHAR](10) NULL, - [TEST_ID] [VARCHAR](20) NULL, - [TEST_NAME] [VARCHAR](50) NULL, - [serviceTestId] [UNIQUEIDENTIFIER] NULL, - [QUALITATIVE_RESULT] [VARCHAR](MAX) NULL, - [RESULT] [VARCHAR](MAX) NULL, - [UNITS] [VARCHAR](20) NULL, - [REFERENCE_RANGE] [VARCHAR](60) NULL, - [ABNORMAL_FLAGS] [VARCHAR](10) NULL, - [RESULT_STATUS] [VARCHAR](10) NULL, + [SET_ID] [VARCHAR](20) NULL, -- F1_C1 + [PATIENT_ID_EXTERNAL] [VARCHAR](20) NULL, -- F2_C1 + [PATIENT_ID_INTERNAL] [VARCHAR](20) NULL, -- F3_C1 + [BIRTHDATE] [DATETIME] NULL, --F7_C1 + [SEX] [VARCHAR] (20) NULL, -- F8_C1 + [BREED] [VARCHAR] (50) NULL, -- arc_species_code - F10_C1 (Race) + [SPECIES] [VARCHAR] (50) NULL, -- common name - F22_C1 (Ethnic Group) + [ACCOUNT_NUMBER] [VARCHAR] (50) NULL, --F18_C1 + [DEATH_DATE] [VARCHAR] (50) NULL, -- F29_C1 [Container] [dbo].[ENTITYID] NOT NULL, [OBJECT_ID] [UNIQUEIDENTIFIER] NOT NULL, [USER_NAME] [VARCHAR](128) NOT NULL, [ENTRY_DATE_TM] [DATETIME] NOT NULL, [TIMESTAMP] [TIMESTAMP] NULL, - CONSTRAINT [PK_HL7_OBX] PRIMARY KEY CLUSTERED + CONSTRAINT [PK_HL7_PID] PRIMARY KEY CLUSTERED ( - [OBJECT_ID] +[MESSAGE_ID] ASC, +[IDX] )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) -); + ); GO -ALTER TABLE [snprc_ehr].[HL7_OBX] ADD CONSTRAINT [DF_HL7_OBX_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID]; +ALTER TABLE [snprc_ehr].[HL7_PID] ADD CONSTRAINT [DF_HL7_PID_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID]; GO -ALTER TABLE [snprc_ehr].[HL7_OBX] ADD CONSTRAINT [DF_HL7_OBX_USER] DEFAULT (USER_NAME()) FOR [USER_NAME]; +ALTER TABLE [snprc_ehr].[HL7_PID] ADD CONSTRAINT [DF_HL7_PID_USER] DEFAULT (USER_NAME()) FOR [USER_NAME]; GO -ALTER TABLE [snprc_ehr].[HL7_OBX] ADD CONSTRAINT [DF_HL7_OBX_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM]; +ALTER TABLE [snprc_ehr].[HL7_PID] ADD CONSTRAINT [DF_HL7_PID_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM]; GO -ALTER TABLE [snprc_ehr].[HL7_OBX] WITH CHECK ADD CONSTRAINT [FK_OBX_REF_OBR] FOREIGN KEY([OBR_OBJECT_ID]) REFERENCES [snprc_ehr].[HL7_OBR] ([OBJECT_ID]); +CREATE NONCLUSTERED INDEX [IDX_HL7_PID_ID] ON [snprc_ehr].[HL7_PID] +( + [PATIENT_ID_EXTERNAL] ASC +)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]; GO -ALTER TABLE [snprc_ehr].[HL7_OBX] CHECK CONSTRAINT [FK_OBX_REF_OBR]; +ALTER TABLE [snprc_ehr].[HL7_PID] WITH CHECK ADD CONSTRAINT [FK_HL7_PID_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); GO -CREATE NONCLUSTERED INDEX [IDX_HL7_OBX_OBR_OBJ_ID] ON [snprc_ehr].[HL7_OBX] +EXEC core.fn_dropifexists @objname = 'HL7_PV1',@objschema = 'snprc_ehr', @objtype = 'TABLE'; + +CREATE TABLE [snprc_ehr].[HL7_PV1]( + [MESSAGE_ID] [VARCHAR](50) NOT NULL, + [IDX] [INT] NOT NULL, + [SET_ID] [VARCHAR](20) NULL, -- F1_C1 + [ADMISSION_TYPE] [VARCHAR] (20) NULL, --F4_C1 + [ATTENDING_DOCTOR_LAST] [VARCHAR] (50) NULL, -- F7_C2 + [ATTENDING_DOCTOR_FIRST] [VARCHAR] (50) NULL, -- F7_C3 + [VISIT_NUMBER] [VARCHAR] (20) NULL, -- F19_C1 + [CHARGE_NUMBER] [VARCHAR] (20) NULL, -- F22_C1 (Courtesy Code) + [ADMIT_DATE] [DATETIME] NULL, --F44_C1 + [Container] [dbo].[ENTITYID] NOT NULL, + [OBJECT_ID] [UNIQUEIDENTIFIER] NOT NULL, + [USER_NAME] [VARCHAR](128) NOT NULL, + [ENTRY_DATE_TM] [DATETIME] NOT NULL, + [TIMESTAMP] [TIMESTAMP] NULL, + CONSTRAINT [PK_HL7_PV1] PRIMARY KEY CLUSTERED ( - [OBR_OBJECT_ID] ASC -)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]; + [MESSAGE_ID] ASC, +[IDX] +)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) + ); +GO + +ALTER TABLE [snprc_ehr].[HL7_PV1] ADD CONSTRAINT [DF_HL7_PV1_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID]; +GO + +ALTER TABLE [snprc_ehr].[HL7_PV1] ADD CONSTRAINT [DF_HL7_PV1_USER] DEFAULT (USER_NAME()) FOR [USER_NAME]; +GO + +ALTER TABLE [snprc_ehr].[HL7_PV1] ADD CONSTRAINT [DF_HL7_PV1_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM]; GO -ALTER TABLE [snprc_ehr].[HL7_OBX] WITH CHECK ADD CONSTRAINT [FK_HL7_OBX_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); +ALTER TABLE [snprc_ehr].[HL7_PV1] WITH CHECK ADD CONSTRAINT [FK_HL7_PV1_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); GO -CREATE TABLE [snprc_ehr].[HL7_NTE]( +EXEC core.fn_dropifexists @objname = 'HL7_ORC',@objschema = 'snprc_ehr', @objtype = 'TABLE'; + +CREATE TABLE [snprc_ehr].[HL7_ORC]( [MESSAGE_ID] [VARCHAR](50) NOT NULL, [IDX] [INT] NOT NULL, - [OBR_OBJECT_ID] [UNIQUEIDENTIFIER] NOT NULL, - [SET_ID] [VARCHAR](20) NOT NULL, - [OBR_SET_ID] [VARCHAR](20) NOT NULL, - [COMMENT] [VARCHAR](MAX) NULL, + [ORDER_CONTROL_CODE] [VARCHAR](20) NULL, -- F1_C1 + [FILLER_ORDER_NUMBER] [VARCHAR] (22) NULL, --F3_C1 + [ENTERED_BY_LAST] [VARCHAR] (50) NULL, -- F10_C2 + [ENTERED_BY_FIRST] [VARCHAR] (50) NULL, -- F10_C3 + [VERIFIED_BY_LAST] [VARCHAR] (50) NULL, -- F11_C2 + [VERIFIED_BY_FIRST] [VARCHAR] (50) NULL, -- F11_C3 + [ORDER_PROVIDER_LAST] [VARCHAR] (50) NULL, -- F12_C2 + [ORDER_PROVIDER_FIRST] [VARCHAR] (50) NULL, -- F12_C3 + [CALLBACK_EMAIL] [VARCHAR](50) NULL, -- F14_C3 + [ORDER_DATE] [DATETIME] NULL, -- F15_C1 [Container] [dbo].[ENTITYID] NOT NULL, [OBJECT_ID] [UNIQUEIDENTIFIER] NOT NULL, [USER_NAME] [VARCHAR](128) NOT NULL, [ENTRY_DATE_TM] [DATETIME] NOT NULL, [TIMESTAMP] [TIMESTAMP] NULL, - CONSTRAINT [PK_HL7_NTE] PRIMARY KEY CLUSTERED + CONSTRAINT [PK_HL7_ORC] PRIMARY KEY CLUSTERED ( - [OBJECT_ID] ASC - + [MESSAGE_ID] ASC, +[IDX] )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) -); -GO - -ALTER TABLE [snprc_ehr].[HL7_NTE] ADD CONSTRAINT [DF_HL7_NTE_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID]; -GO - -ALTER TABLE [snprc_ehr].[HL7_NTE] ADD CONSTRAINT [DF_HL7_NTE_USER] DEFAULT (USER_NAME()) FOR [USER_NAME]; + ); GO -ALTER TABLE [snprc_ehr].[HL7_NTE] ADD CONSTRAINT [DF_HL7_NTE_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM]; +ALTER TABLE [snprc_ehr].[HL7_ORC] ADD CONSTRAINT [DF_HL7_ORC_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID]; GO -ALTER TABLE [snprc_ehr].[HL7_NTE] WITH CHECK ADD CONSTRAINT [FK_NTE_REF_OBR] FOREIGN KEY([OBR_OBJECT_ID]) REFERENCES [snprc_ehr].[HL7_OBR] ([OBJECT_ID]); +ALTER TABLE [snprc_ehr].[HL7_ORC] ADD CONSTRAINT [DF_HL7_ORC_USER] DEFAULT (USER_NAME()) FOR [USER_NAME]; GO -ALTER TABLE [snprc_ehr].[HL7_NTE] CHECK CONSTRAINT [FK_NTE_REF_OBR]; +ALTER TABLE [snprc_ehr].[HL7_ORC] ADD CONSTRAINT [DF_HL7_ORC_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM]; GO -ALTER TABLE [snprc_ehr].[HL7_NTE] WITH CHECK ADD CONSTRAINT [FK_HL7_NTE_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); +ALTER TABLE [snprc_ehr].[HL7_ORC] WITH CHECK ADD CONSTRAINT [FK_HL7_ORC_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); GO -CREATE NONCLUSTERED INDEX [IDX_HL7_NTE_OBR_OBJ_ID] ON [snprc_ehr].[HL7_NTE] -( - [OBR_OBJECT_ID] ASC -)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]; -GO +EXEC core.fn_dropifexists @objname = 'HL7_MSH',@objschema = 'snprc_ehr', @objtype = 'TABLE'; -CREATE TABLE [snprc_ehr].[HL7_IMPORT_LOG]( - [TID] [NUMERIC](18, 0) IDENTITY(1,1) NOT NULL, +CREATE TABLE [snprc_ehr].[HL7_MSH]( [MESSAGE_ID] [VARCHAR](50) NOT NULL, - [OBSERVATION_DATE_TM] [DATETIME] NULL, + [IDX] [INT] NOT NULL, + [SENDING_APPLICATION] [VARCHAR](50) NULL, + [SENDING_FACILITY] [VARCHAR](50) NULL, + [RECEIVING_APPLICATION] [VARCHAR](50) NULL, + [RECEIVING_FACILITY] [VARCHAR](50) NULL, + [MESSAGE_TYPE] [VARCHAR](50) NULL, -- MSH_F9_C1 + [TRIGGER_EVENT_ID][VARCHAR](50) NULL, -- MSH_F9_C2 [MESSAGE_CONTROL_ID] [VARCHAR](50) NULL, - [IMPORT_STATUS] [INT] NOT NULL, - [RESULT_STATUS] [VARCHAR](10) NULL, - [PATIENT_ID] [VARCHAR](20) NULL, - [SPECIES] [VARCHAR](50) NULL, - [HL7_MESSAGE_TEXT] [VARCHAR](MAX) NULL, - [IMPORT_TEXT] [VARCHAR](MAX) NULL, + [MESSAGE_DATE_TM] [DATETIME] NULL, [Container] [dbo].[ENTITYID] NOT NULL, [OBJECT_ID] [UNIQUEIDENTIFIER] NOT NULL, [USER_NAME] [VARCHAR](128) NOT NULL, [ENTRY_DATE_TM] [DATETIME] NOT NULL, [TIMESTAMP] [TIMESTAMP] NULL, - CONSTRAINT [PK_HL7_IMPORT_LOG] PRIMARY KEY CLUSTERED + CONSTRAINT [PK_HL7_MSH] PRIMARY KEY CLUSTERED ( -[TID] ASC + [MESSAGE_ID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ); GO -ALTER TABLE [snprc_ehr].[HL7_IMPORT_LOG] ADD DEFAULT (USER_NAME()) FOR [USER_NAME]; +ALTER TABLE [snprc_ehr].[HL7_MSH] ADD CONSTRAINT [DF_HL7_MSH_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID]; GO -ALTER TABLE [snprc_ehr].[HL7_IMPORT_LOG] ADD DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM]; +ALTER TABLE [snprc_ehr].[HL7_MSH] ADD CONSTRAINT [DF_HL7_MSH_USER] DEFAULT (USER_NAME()) FOR [USER_NAME]; GO -ALTER TABLE [snprc_ehr].[HL7_IMPORT_LOG] ADD CONSTRAINT [DF_HL7_IMPROT_LOG_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID]; +ALTER TABLE [snprc_ehr].[HL7_MSH] ADD CONSTRAINT [DF_HL7_MSH_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM]; GO -ALTER TABLE [snprc_ehr].[HL7_IMPORT_LOG] WITH CHECK ADD CONSTRAINT [CKC_HL7_IMPORT_LOG_OBSERVATION_DATE] CHECK (([OBSERVATION_DATE_TM] IS NULL OR [OBSERVATION_DATE_TM]<=GETDATE())); +ALTER TABLE [snprc_ehr].[HL7_MSH] WITH CHECK ADD CONSTRAINT [FK_HL7_MSH_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); GO -ALTER TABLE [snprc_ehr].[HL7_IMPORT_LOG] CHECK CONSTRAINT [CKC_HL7_IMPORT_LOG_OBSERVATION_DATE]; +ALTER TABLE [snprc_ehr].[HL7_OBR] WITH CHECK ADD CONSTRAINT [FK_OBR_REF_MSH] FOREIGN KEY([MESSAGE_ID]) REFERENCES [snprc_ehr].[HL7_MSH] ([MESSAGE_ID]); GO -ALTER TABLE [snprc_ehr].[HL7_IMPORT_LOG] WITH CHECK ADD CONSTRAINT [FK_HL7_IMPORT_LOG_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); +ALTER TABLE [snprc_ehr].[HL7_OBR] CHECK CONSTRAINT [FK_OBR_REF_MSH]; GO --- ========================================================================== --- Author: Terry Hawkins --- Create date: 2/28/14 --- Description: Returns 1 if the value is numeric, 0 if value is not numeric --- 6/19/2015 added additional criteria based on the current datasets. tjh --- 2/29/2016 fixed file formatting. Fixed bug in patindex call (removed). tjh --- ========================================================================== -CREATE FUNCTION [snprc_ehr].[f_isNumeric] -( - @value VARCHAR(MAX) -) -RETURNS INT -AS -BEGIN - -- Declare the return variable here - DECLARE @return INT - - IF (@value IS NULL) - BEGIN - SET @return = 0 - GOTO finis - END - - select @value = LTRIM(RTRIM(REPLACE(@value, ' ', ''))) - - IF (ISNUMERIC(@value) = 1) - BEGIN - if ( LEN(@value) = 1 AND CHARINDEX ('+', @value, 1) > 0) - OR ( LEN(@value) = 1 AND CHARINDEX('-', @value, 1) > 0) - OR (CHARINDEX(',', @value, 1) > 0) - OR (CHARINDEX('-' , @value, 2) > 1) - - BEGIN - SET @return = 0 - GOTO finis - END +ALTER TABLE [snprc_ehr].[HL7_PID] WITH CHECK ADD CONSTRAINT [FK_PID_REF_MSH] FOREIGN KEY([MESSAGE_ID]) REFERENCES [snprc_ehr].[HL7_MSH] ([MESSAGE_ID]); +GO - SET @return = 1 - GOTO finis +ALTER TABLE [snprc_ehr].[HL7_PID] CHECK CONSTRAINT [FK_PID_REF_MSH]; +GO - END - SET @return = 0 +ALTER TABLE [snprc_ehr].[HL7_PV1] WITH CHECK ADD CONSTRAINT [FK_PV1_REF_MSH] FOREIGN KEY([MESSAGE_ID]) REFERENCES [snprc_ehr].[HL7_MSH] ([MESSAGE_ID]); +GO - finis: - RETURN @return +ALTER TABLE [snprc_ehr].[HL7_PV1] CHECK CONSTRAINT [FK_PV1_REF_MSH]; +GO -END +ALTER TABLE [snprc_ehr].[HL7_ORC] WITH CHECK ADD CONSTRAINT [FK_ORC_REF_MSH] FOREIGN KEY([MESSAGE_ID]) REFERENCES [snprc_ehr].[HL7_MSH] ([MESSAGE_ID]); +GO +ALTER TABLE [snprc_ehr].[HL7_ORC] CHECK CONSTRAINT [FK_ORC_REF_MSH]; GO EXEC core.fn_dropifexists @objname = 'HL7_PathologyCasesStaging',@objschema = 'snprc_ehr', @objtype = 'TABLE'; -EXEC core.fn_dropifexists @objname = 'HL7_PathologyDiagnosesStaging',@objschema = 'snprc_ehr', @objtype = 'TABLE'; -EXEC core.fn_dropifexists @objname = 'HL7_DeletePathologyCasesStaging',@objschema = 'snprc_ehr', @objtype = 'TABLE'; -EXEC core.fn_dropifexists @objname = 'HL7_DeletePathologyDiagnosesStaging',@objschema = 'snprc_ehr', @objtype = 'TABLE'; -EXEC core.fn_dropifexists @objname = 'HL7_Demographics', @objschema = 'snprc_ehr', @objtype = 'TABLE'; CREATE TABLE snprc_ehr.HL7_PathologyCasesStaging ( ID NVARCHAR(32) NOT NULL, @@ -1941,6 +1868,8 @@ CREATE TABLE snprc_ehr.HL7_PathologyCasesStaging ( ); GO +EXEC core.fn_dropifexists @objname = 'HL7_PathologyDiagnosesStaging',@objschema = 'snprc_ehr', @objtype = 'TABLE'; + CREATE TABLE snprc_ehr.HL7_PathologyDiagnosesStaging ( ID NVARCHAR(32) NOT NULL, Date DATETIME NOT NULL, @@ -1968,6 +1897,8 @@ CREATE TABLE snprc_ehr.HL7_PathologyDiagnosesStaging ( ); GO +EXEC core.fn_dropifexists @objname = 'HL7_DeletePathologyCasesStaging',@objschema = 'snprc_ehr', @objtype = 'TABLE'; + CREATE TABLE snprc_ehr.HL7_DeletePathologyCasesStaging ( AccessionNumber NVARCHAR(10) NOT NULL, ObjectId UNIQUEIDENTIFIER NOT NULL, @@ -1982,6 +1913,8 @@ CREATE TABLE snprc_ehr.HL7_DeletePathologyCasesStaging ( ); GO +EXEC core.fn_dropifexists @objname = 'HL7_DeletePathologyDiagnosesStaging',@objschema = 'snprc_ehr', @objtype = 'TABLE'; + CREATE TABLE snprc_ehr.HL7_DeletePathologyDiagnosesStaging ( AccessionNumber NVARCHAR(10) NOT NULL, ObjectId uniqueidentifier NOT NULL, @@ -1996,6 +1929,8 @@ CREATE TABLE snprc_ehr.HL7_DeletePathologyDiagnosesStaging ( ); GO +EXEC core.fn_dropifexists @objname = 'HL7_Demographics', @objschema = 'snprc_ehr', @objtype = 'TABLE'; + CREATE TABLE snprc_ehr.HL7_Demographics ( ID NVARCHAR(32) NOT NULL, RowId BIGINT IDENTITY(1,1) NOT NULL, @@ -2019,18 +1954,9 @@ CREATE TABLE snprc_ehr.HL7_Demographics ( ); GO --- Increase procedure name size in OBR table -ALTER TABLE snprc_ehr.HL7_OBR ALTER COLUMN PROCEDURE_NAME VARCHAR(200) NULL; - EXEC core.fn_dropifexists 'SndSuperPackageStaging', 'snprc_ehr', 'TABLE'; GO -EXEC core.fn_dropifexists 'SndPackageStaging', 'snprc_ehr', 'TABLE'; -GO - -EXEC core.fn_dropifexists 'SndPackageAttributeStaging', 'snprc_ehr', 'TABLE'; -GO - CREATE TABLE snprc_ehr.SndSuperPackageStaging ( TopLevelPkgId INTEGER NOT NULL, @@ -2057,6 +1983,9 @@ CREATE TABLE snprc_ehr.SndSuperPackageStaging ); GO +EXEC core.fn_dropifexists 'SndPackageStaging', 'snprc_ehr', 'TABLE'; +GO + CREATE TABLE snprc_ehr.SndPackageStaging ( PkgId INTEGER NOT NULL, @@ -2076,6 +2005,9 @@ CREATE TABLE snprc_ehr.SndPackageStaging ); GO +EXEC core.fn_dropifexists 'SndPackageAttributeStaging', 'snprc_ehr', 'TABLE'; +GO + CREATE TABLE snprc_ehr.SndPackageAttributeStaging ( PkgId INTEGER NOT NULL, @@ -2101,10 +2033,6 @@ CREATE TABLE snprc_ehr.SndPackageAttributeStaging GO EXEC core.fn_dropifexists @objname = 'therapy_formulary', @objschema = 'snprc_ehr', @objtype = 'TABLE'; -EXEC core.fn_dropifexists @objname = 'therapy_frequency', @objschema = 'snprc_ehr', @objtype = 'TABLE'; -EXEC core.fn_dropifexists @objname = 'therapy_routes', @objschema = 'snprc_ehr', @objtype = 'TABLE'; -EXEC core.fn_dropifexists @objname = 'therapy_units', @objschema = 'snprc_ehr', @objtype = 'TABLE'; -EXEC core.fn_dropifexists @objname = 'therapy_resolutions', @objschema = 'snprc_ehr', @objtype = 'TABLE'; CREATE TABLE snprc_ehr.therapy_formulary( RowId INT NOT NULL, @@ -2129,6 +2057,28 @@ CREATE TABLE snprc_ehr.therapy_formulary( ALTER TABLE snprc_ehr.therapy_formulary WITH CHECK ADD CONSTRAINT FK_therapy_formulary_container FOREIGN KEY(Container) REFERENCES core.Containers (EntityId); GO +EXEC core.fn_dropifexists @objname = 'therapy_frequency', @objschema = 'snprc_ehr', @objtype = 'TABLE'; + +CREATE TABLE snprc_ehr.therapy_frequency( + RowId INT NOT NULL, + frequency VARCHAR(30) NOT NULL, + description VARCHAR(100) NULL, + isActive INT NULL, + Container dbo.ENTITYID NOT NULL, + Created DATETIME NULL, + CreatedBy dbo.USERID NULL, + Modified DATETIME NULL, + ModifiedBy dbo.USERID NULL, + ObjectId UNIQUEIDENTIFIER NOT NULL + + CONSTRAINT PK_therapy_frequency PRIMARY KEY CLUSTERED (RowId) +); + +ALTER TABLE snprc_ehr.therapy_frequency WITH CHECK ADD CONSTRAINT FK_therapy_frequency FOREIGN KEY(Container) REFERENCES core.Containers (EntityId); +GO + +EXEC core.fn_dropifexists @objname = 'therapy_routes', @objschema = 'snprc_ehr', @objtype = 'TABLE'; + CREATE TABLE snprc_ehr.therapy_routes( RowId INT NOT NULL, route VARCHAR(30) NOT NULL, @@ -2143,9 +2093,12 @@ CREATE TABLE snprc_ehr.therapy_routes( CONSTRAINT PK_therapy_routes PRIMARY KEY CLUSTERED (RowId) ); + ALTER TABLE snprc_ehr.therapy_routes WITH CHECK ADD CONSTRAINT FK_therapy_routes FOREIGN KEY(Container) REFERENCES core.Containers (EntityId); GO +EXEC core.fn_dropifexists @objname = 'therapy_units', @objschema = 'snprc_ehr', @objtype = 'TABLE'; + CREATE TABLE snprc_ehr.therapy_units( RowId INT NOT NULL, units VARCHAR(30) NOT NULL, @@ -2160,9 +2113,12 @@ CREATE TABLE snprc_ehr.therapy_units( CONSTRAINT PK_therapy_units PRIMARY KEY CLUSTERED (RowId) ); + ALTER TABLE snprc_ehr.therapy_units WITH CHECK ADD CONSTRAINT FK_therapy_units FOREIGN KEY(Container) REFERENCES core.Containers (EntityId); GO +EXEC core.fn_dropifexists @objname = 'therapy_resolutions', @objschema = 'snprc_ehr', @objtype = 'TABLE'; + CREATE TABLE snprc_ehr.therapy_resolutions ( RowId INT NOT NULL, @@ -2181,20 +2137,52 @@ CREATE TABLE snprc_ehr.therapy_resolutions ALTER TABLE snprc_ehr.therapy_resolutions WITH CHECK ADD CONSTRAINT FK_therapy_resolutions FOREIGN KEY(Container) REFERENCES core.Containers (EntityId); GO -CREATE TABLE snprc_ehr.therapy_frequency( - RowId INT NOT NULL, - frequency VARCHAR(30) NOT NULL, - description VARCHAR(100) NULL, - isActive INT NULL, - Container dbo.ENTITYID NOT NULL, - Created DATETIME NULL, - CreatedBy dbo.USERID NULL, - Modified DATETIME NULL, - ModifiedBy dbo.USERID NULL, - ObjectId UNIQUEIDENTIFIER NOT NULL +-- ========================================================================== +-- Author: Terry Hawkins +-- Create date: 2/28/14 +-- Description: Returns 1 if the value is numeric, 0 if value is not numeric +-- 6/19/2015 added additional criteria based on the current datasets. tjh +-- 2/29/2016 fixed file formatting. Fixed bug in patindex call (removed). tjh +-- ========================================================================== +CREATE FUNCTION [snprc_ehr].[f_isNumeric] +( + @value VARCHAR(MAX) +) +RETURNS INT +AS +BEGIN + -- Declare the return variable here + DECLARE @return INT - CONSTRAINT PK_therapy_frequency PRIMARY KEY CLUSTERED (RowId) -); + IF (@value IS NULL) + BEGIN + SET @return = 0 + GOTO finis + END + + select @value = LTRIM(RTRIM(REPLACE(@value, ' ', ''))) + + IF (ISNUMERIC(@value) = 1) + BEGIN + if ( LEN(@value) = 1 AND CHARINDEX ('+', @value, 1) > 0) + OR ( LEN(@value) = 1 AND CHARINDEX('-', @value, 1) > 0) + OR (CHARINDEX(',', @value, 1) > 0) + OR (CHARINDEX('-' , @value, 2) > 1) + + BEGIN + SET @return = 0 + GOTO finis + END + + SET @return = 1 + GOTO finis + + END + SET @return = 0 + + finis: + RETURN @return + +END -ALTER TABLE snprc_ehr.therapy_frequency WITH CHECK ADD CONSTRAINT FK_therapy_frequency FOREIGN KEY(Container) REFERENCES core.Containers (EntityId); GO From aa1260347d147da568d13d537256bb79a9687f04 Mon Sep 17 00:00:00 2001 From: Adam Rauch Date: Wed, 11 Feb 2026 11:32:58 -0800 Subject: [PATCH 05/11] Replace tabs with spaces --- .../sqlserver/snprc_ehr-0.000-25.000.sql | 124 +++++++++--------- 1 file changed, 62 insertions(+), 62 deletions(-) diff --git a/snprc_ehr/resources/schemas/dbscripts/sqlserver/snprc_ehr-0.000-25.000.sql b/snprc_ehr/resources/schemas/dbscripts/sqlserver/snprc_ehr-0.000-25.000.sql index 2c4250f3..853d2438 100644 --- a/snprc_ehr/resources/schemas/dbscripts/sqlserver/snprc_ehr-0.000-25.000.sql +++ b/snprc_ehr/resources/schemas/dbscripts/sqlserver/snprc_ehr-0.000-25.000.sql @@ -21,7 +21,7 @@ CREATE TABLE snprc_ehr.package ( id int not null, name NVARCHAR(100), description NVARCHAR(MAX), - Container entityId NOT NULL, + Container entityId NOT NULL, CONSTRAINT PK_packages PRIMARY KEY (id), CONSTRAINT FK_packages_Container FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) @@ -50,7 +50,7 @@ CREATE TABLE snprc_ehr.package_category ( id int not null, name NVARCHAR(100), description NVARCHAR(MAX), - Container entityId NOT NULL, + Container entityId NOT NULL, CONSTRAINT PK_package_categories PRIMARY KEY (id), CONSTRAINT FK_package_categories_Container FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) @@ -110,19 +110,19 @@ CREATE UNIQUE INDEX idx_package_category_junction_objectid ON snprc_ehr.package_ CREATE TABLE snprc_ehr.species ( - common NVARCHAR(255) NOT NULL, - scientific_name NVARCHAR(255), - id_prefix NVARCHAR(255), - mhc_prefix NVARCHAR(255), - blood_per_kg FLOAT, - max_draw_pct FLOAT, - blood_draw_interval FLOAT, - dateDisabled DATETIME NULL, - cites_code NVARCHAR(200), - species_code NVARCHAR(3), - arc_species_code NVARCHAR(3), - objectid NVARCHAR(4000), - tid INT, + common NVARCHAR(255) NOT NULL, + scientific_name NVARCHAR(255), + id_prefix NVARCHAR(255), + mhc_prefix NVARCHAR(255), + blood_per_kg FLOAT, + max_draw_pct FLOAT, + blood_draw_interval FLOAT, + dateDisabled DATETIME NULL, + cites_code NVARCHAR(200), + species_code NVARCHAR(3), + arc_species_code NVARCHAR(3), + objectid NVARCHAR(4000), + tid INT, CONSTRAINT pk_species PRIMARY KEY (common) ); @@ -157,10 +157,10 @@ ALTER TABLE snprc_ehr.species ADD ModifiedBy USERID; CREATE TABLE snprc_ehr.clinical_observation_datasets ( rowId Int NOT NULL, - dataset_name NVARCHAR(255) NOT NULL, - category_name NVARCHAR(255) NOT NULL, - sort_order Int NULL, - Container entityId NOT NULL, + dataset_name NVARCHAR(255) NOT NULL, + category_name NVARCHAR(255) NOT NULL, + sort_order Int NULL, + Container entityId NOT NULL, CONSTRAINT pk_clinical_observation_datasets PRIMARY KEY (rowId), CONSTRAINT FK_clinical_observation_datasets_Container FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) @@ -171,22 +171,22 @@ GO ALTER TABLE snprc_ehr.clinical_observation_datasets ADD objectid uniqueidentifier not null default newid(); CREATE TABLE snprc_ehr.validAccounts( - account varchar(16) NOT NULL, - accountStatus varchar(1) NOT NULL, - date DATETIME NOT NULL, - endDate DATETIME NULL, - description VARCHAR(100) NULL, - accountGroup VARCHAR(20) NOT NULL, - userName VARCHAR(128) NOT NULL, - entryDateTm DATETIME NOT NULL, - Container entityId NOT NULL, - Created DATETIME, + account varchar(16) NOT NULL, + accountStatus varchar(1) NOT NULL, + date DATETIME NOT NULL, + endDate DATETIME NULL, + description VARCHAR(100) NULL, + accountGroup VARCHAR(20) NOT NULL, + userName VARCHAR(128) NOT NULL, + entryDateTm DATETIME NOT NULL, + Container entityId NOT NULL, + Created DATETIME, CreatedBy USERID, Modified DATETIME, ModifiedBy USERID, - objectid NVARCHAR(4000) + objectid NVARCHAR(4000) - CONSTRAINT [PK_VALID_ACCOUNTS] PRIMARY KEY CLUSTERED ( account ASC ) + CONSTRAINT [PK_VALID_ACCOUNTS] PRIMARY KEY CLUSTERED (account ASC ) ); GO @@ -221,7 +221,7 @@ CREATE TABLE snprc_ehr.lab_tests ( CreatedBy USERID, Modified DATETIME, ModifiedBy USERID, - Container entityId NOT NULL, + Container entityId NOT NULL, CONSTRAINT PK_snprc_lab_tests PRIMARY KEY (rowid), CONSTRAINT FK_snprc_lab_tests FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) @@ -266,7 +266,7 @@ CREATE TABLE snprc_ehr.labwork_services ( CreatedBy USERID, Modified DATETIME, ModifiedBy USERID, - Container entityId NOT NULL, + Container entityId NOT NULL, CONSTRAINT PK_snprc_labwork_services PRIMARY KEY (servicename), CONSTRAINT FK_snprc_labwork_services FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) @@ -307,7 +307,7 @@ CREATE TABLE snprc_ehr.labwork_services ( diModified DATETIME, diCreatedBy USERID, diModifiedBy USERID, - Container entityId NOT NULL, + Container entityId NOT NULL, CONSTRAINT PK_snprc_labwork_services PRIMARY KEY (rowId), CONSTRAINT FK_snprc_labwork_services FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) @@ -345,7 +345,7 @@ CREATE TABLE snprc_ehr.labwork_services ( [DiModified] [DATETIME] NULL, [DiCreatedBy] [dbo].[USERID] NULL, [DiModifiedBy] [dbo].[USERID] NULL, - Container entityId NOT NULL, + Container entityId NOT NULL, CONSTRAINT PK_snprc_labwork_services PRIMARY KEY (ServiceId), CONSTRAINT FK_snprc_labwork_services_container FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) @@ -372,7 +372,7 @@ CREATE TABLE snprc_ehr.validInstitutions ( CreatedBy USERID, Modified DATETIME, ModifiedBy USERID, - Container entityId NOT NULL, + Container entityId NOT NULL, CONSTRAINT PK_snprc_valid_institutions PRIMARY KEY (institution_id), CONSTRAINT FK_snprc_valid_institutions FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) @@ -400,7 +400,7 @@ CREATE TABLE snprc_ehr.validVets ( CreatedBy USERID, Modified DATETIME, ModifiedBy USERID, - Container entityId NOT NULL, + Container entityId NOT NULL, CONSTRAINT PK_snprc_validVets PRIMARY KEY (vetId), CONSTRAINT FK_snprc_validVets FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) @@ -426,7 +426,7 @@ CREATE TABLE snprc_ehr.valid_bd_status ( CreatedBy USERID, Modified DATETIME, ModifiedBy USERID, - Container entityId NOT NULL, + Container entityId NOT NULL, CONSTRAINT PK_snprc_valid_bd_status PRIMARY KEY (value), CONSTRAINT FK_snprc_valid_bd_status FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) @@ -446,7 +446,7 @@ CREATE TABLE snprc_ehr.valid_birth_code ( CreatedBy USERID, Modified DATETIME, ModifiedBy USERID, - Container entityId NOT NULL, + Container entityId NOT NULL, CONSTRAINT PK_snprc_valid_birth_code PRIMARY KEY (value), CONSTRAINT FK_snprc_valid_birth_code FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) @@ -468,7 +468,7 @@ CREATE TABLE snprc_ehr.valid_death_code ( CreatedBy USERID, Modified DATETIME, ModifiedBy USERID, - Container entityId NOT NULL, + Container entityId NOT NULL, CONSTRAINT PK_snprc_valid_death_code PRIMARY KEY (value), CONSTRAINT FK_snprc_valid_death_code FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) @@ -501,7 +501,7 @@ CREATE TABLE snprc_ehr.animal_group_categories( diModified DATETIME, diCreatedBy USERID, diModifiedBy USERID, - Container entityId NOT NULL, + Container entityId NOT NULL, CONSTRAINT PK_animal_group_categories PRIMARY KEY (category_code), CONSTRAINT FK_animal_group_categories FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) @@ -531,7 +531,7 @@ CREATE TABLE snprc_ehr.animal_groups( diModified DATETIME, diCreatedBy USERID, diModifiedBy USERID, - Container entityId NOT NULL, + Container entityId NOT NULL, CONSTRAINT PK_snprc_animal_groups PRIMARY KEY (code, category_code), CONSTRAINT FK_snprc_animal_groups FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) @@ -562,7 +562,7 @@ CREATE TABLE snprc_ehr.labwork_types ( [DiModified] [DATETIME] NULL, [DiCreatedBy] [dbo].[USERID] NULL, [DiModifiedBy] [dbo].[USERID] NULL, - Container entityId NOT NULL, + Container entityId NOT NULL, CONSTRAINT PK_snprc_labwork_types PRIMARY KEY (ServiceType), CONSTRAINT FK_snprc_labwork_types_container FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) @@ -742,7 +742,7 @@ CREATE TABLE [snprc_ehr].[FeeSchedule]( [CreatedBy] [dbo].[USERID] NULL, [Modified] [DATETIME] NULL, [ModifiedBy] [dbo].[USERID] NULL, - Container entityId NOT NULL + Container entityId NOT NULL CONSTRAINT PK_snprc_fee_schedule PRIMARY KEY ([RowId]) CONSTRAINT FK_snprc_fee_Schedule_container FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) @@ -790,9 +790,9 @@ CREATE TABLE [snprc_ehr].[LocationTemperature]( [user_name] [VARCHAR](128) NOT NULL, [entry_date_tm] [DATETIME] NOT NULL, [Container] [entityID] NOT NULL, - [Created] DATETIME, + [Created] DATETIME, [CreatedBy] USERID, - [Modified] DATETIME, + [Modified] DATETIME, [ModifiedBy] USERID CONSTRAINT [PK_LocationTemperature] PRIMARY KEY CLUSTERED ([Room] ASC,[Date] ASC) @@ -869,12 +869,12 @@ CREATE TABLE snprc_ehr.ValidDiet( [StartDate] [datetime] NOT NULL, [StopDate] [datetime] NULL, [SnomedCode] [nvarchar](7) NULL, - [DietId] [INTEGER] NOT NULL, + [DietId] [INTEGER] NOT NULL, --ObjectId] UNIQUEIDENTIFIER NOT NULL DEFAULT NEWID(), --[Container] [entityID] NOT NULL, - [Created] DATETIME, + [Created] DATETIME, [CreatedBy] USERID, - [Modified] DATETIME, + [Modified] DATETIME, [ModifiedBy] USERID, [diCreated] [datetime] NULL, [diModified] [datetime] NULL, @@ -916,12 +916,12 @@ CREATE TABLE snprc_ehr.ValidDiet( [StartDate] [datetime] NOT NULL, [StopDate] [datetime] NULL, [SnomedCode] [nvarchar](7) NULL, - [DietCode] [INTEGER] NOT NULL, + [DietCode] [INTEGER] NOT NULL, --ObjectId] UNIQUEIDENTIFIER NOT NULL DEFAULT NEWID(), --[Container] [entityID] NOT NULL, - [Created] DATETIME, + [Created] DATETIME, [CreatedBy] USERID, - [Modified] DATETIME, + [Modified] DATETIME, [ModifiedBy] USERID, [diCreated] [datetime] NULL, [diModified] [datetime] NULL, @@ -1535,7 +1535,7 @@ GO CREATE NONCLUSTERED INDEX [IDX_HL7_OBX_OBR_OBJ_ID] ON [snprc_ehr].[HL7_OBX] ( - [OBR_OBJECT_ID] ASC + [OBR_OBJECT_ID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]; GO @@ -1578,7 +1578,7 @@ GO CREATE NONCLUSTERED INDEX [IDX_HL7_NTE_OBR_OBJ_ID] ON [snprc_ehr].[HL7_NTE] ( - [OBR_OBJECT_ID] ASC + [OBR_OBJECT_ID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]; GO @@ -1632,8 +1632,8 @@ GO CREATE NONCLUSTERED INDEX [IDX_HL7_OBR_ID_DATE] ON [snprc_ehr].[HL7_OBR] ( - [ANIMAL_ID] ASC, - [OBSERVATION_DATE_TM] ASC + [ANIMAL_ID] ASC, + [OBSERVATION_DATE_TM] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]; GO @@ -1693,7 +1693,7 @@ GO CREATE NONCLUSTERED INDEX [IDX_HL7_PID_ID] ON [snprc_ehr].[HL7_PID] ( - [PATIENT_ID_EXTERNAL] ASC + [PATIENT_ID_EXTERNAL] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]; GO @@ -2138,15 +2138,15 @@ ALTER TABLE snprc_ehr.therapy_resolutions WITH CHECK ADD CONSTRAINT FK_therapy_r GO -- ========================================================================== --- Author: Terry Hawkins +-- Author: Terry Hawkins -- Create date: 2/28/14 --- Description: Returns 1 if the value is numeric, 0 if value is not numeric --- 6/19/2015 added additional criteria based on the current datasets. tjh --- 2/29/2016 fixed file formatting. Fixed bug in patindex call (removed). tjh +-- Description: Returns 1 if the value is numeric, 0 if value is not numeric +-- 6/19/2015 added additional criteria based on the current datasets. tjh +-- 2/29/2016 fixed file formatting. Fixed bug in patindex call (removed). tjh -- ========================================================================== CREATE FUNCTION [snprc_ehr].[f_isNumeric] ( - @value VARCHAR(MAX) + @value VARCHAR(MAX) ) RETURNS INT AS From ec2ee17b4422b23c188cd00016e7c215b0db0355 Mon Sep 17 00:00:00 2001 From: Adam Rauch Date: Wed, 11 Feb 2026 11:52:14 -0800 Subject: [PATCH 06/11] Whitespace --- .../sqlserver/snprc_ehr-0.000-25.000.sql | 36 +++++++++---------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/snprc_ehr/resources/schemas/dbscripts/sqlserver/snprc_ehr-0.000-25.000.sql b/snprc_ehr/resources/schemas/dbscripts/sqlserver/snprc_ehr-0.000-25.000.sql index 853d2438..baabea0b 100644 --- a/snprc_ehr/resources/schemas/dbscripts/sqlserver/snprc_ehr-0.000-25.000.sql +++ b/snprc_ehr/resources/schemas/dbscripts/sqlserver/snprc_ehr-0.000-25.000.sql @@ -656,7 +656,7 @@ ALTER TABLE [snprc_ehr].[MhcData] ADD CONSTRAINT [AK_ID_Haplotype] UNIQUE NONCLU ( [Id] ASC, [Haplotype] ASC - )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON); + ) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON); GO CREATE TABLE [snprc_ehr].[ValidChargeBySpecies]( @@ -1472,7 +1472,7 @@ CREATE TABLE [snprc_ehr].[HL7_IMPORT_LOG]( CONSTRAINT [PK_HL7_IMPORT_LOG] PRIMARY KEY CLUSTERED ( [TID] ASC -)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) +) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ); GO @@ -1520,7 +1520,7 @@ CREATE TABLE [snprc_ehr].[HL7_OBX]( CONSTRAINT [PK_HL7_OBX] PRIMARY KEY CLUSTERED ( [OBJECT_ID] -)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) +) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ); GO @@ -1536,7 +1536,7 @@ GO CREATE NONCLUSTERED INDEX [IDX_HL7_OBX_OBR_OBJ_ID] ON [snprc_ehr].[HL7_OBX] ( [OBR_OBJECT_ID] ASC -)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]; +) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]; GO ALTER TABLE [snprc_ehr].[HL7_OBX] WITH CHECK ADD CONSTRAINT [FK_HL7_OBX_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); @@ -1560,7 +1560,7 @@ CREATE TABLE [snprc_ehr].[HL7_NTE]( ( [OBJECT_ID] ASC -)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) +) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ); GO @@ -1579,7 +1579,7 @@ GO CREATE NONCLUSTERED INDEX [IDX_HL7_NTE_OBR_OBJ_ID] ON [snprc_ehr].[HL7_NTE] ( [OBR_OBJECT_ID] ASC -)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]; +) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]; GO EXEC core.fn_dropifexists @objname = 'HL7_OBR',@objschema = 'snprc_ehr', @objtype = 'TABLE'; @@ -1610,8 +1610,8 @@ CREATE TABLE [snprc_ehr].[HL7_OBR]( [TIMESTAMP] [TIMESTAMP] NULL, CONSTRAINT [PK_HL7_OBR] PRIMARY KEY CLUSTERED ( -[OBJECT_ID] -)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) + [OBJECT_ID] +) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ); GO @@ -1634,7 +1634,7 @@ CREATE NONCLUSTERED INDEX [IDX_HL7_OBR_ID_DATE] ON [snprc_ehr].[HL7_OBR] ( [ANIMAL_ID] ASC, [OBSERVATION_DATE_TM] ASC -)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]; +) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]; GO ALTER TABLE [snprc_ehr].[HL7_OBR] WITH CHECK ADD CONSTRAINT [FK_HL7_OBR_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); @@ -1676,9 +1676,9 @@ CREATE TABLE [snprc_ehr].[HL7_PID]( [TIMESTAMP] [TIMESTAMP] NULL, CONSTRAINT [PK_HL7_PID] PRIMARY KEY CLUSTERED ( -[MESSAGE_ID] ASC, -[IDX] -)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) + [MESSAGE_ID] ASC, + [IDX] +) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ); GO @@ -1694,7 +1694,7 @@ GO CREATE NONCLUSTERED INDEX [IDX_HL7_PID_ID] ON [snprc_ehr].[HL7_PID] ( [PATIENT_ID_EXTERNAL] ASC -)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]; +) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]; GO ALTER TABLE [snprc_ehr].[HL7_PID] WITH CHECK ADD CONSTRAINT [FK_HL7_PID_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); @@ -1720,8 +1720,8 @@ CREATE TABLE [snprc_ehr].[HL7_PV1]( CONSTRAINT [PK_HL7_PV1] PRIMARY KEY CLUSTERED ( [MESSAGE_ID] ASC, -[IDX] -)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) + [IDX] +) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ); GO @@ -1760,8 +1760,8 @@ CREATE TABLE [snprc_ehr].[HL7_ORC]( CONSTRAINT [PK_HL7_ORC] PRIMARY KEY CLUSTERED ( [MESSAGE_ID] ASC, -[IDX] -)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) + [IDX] +) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ); GO @@ -1798,7 +1798,7 @@ CREATE TABLE [snprc_ehr].[HL7_MSH]( CONSTRAINT [PK_HL7_MSH] PRIMARY KEY CLUSTERED ( [MESSAGE_ID] ASC -)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) +) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ); GO From 32fd8d1324db6a6fed6e716a9b3d678f87956afb Mon Sep 17 00:00:00 2001 From: Adam Rauch Date: Wed, 11 Feb 2026 15:31:03 -0800 Subject: [PATCH 07/11] Clean up --- .../sqlserver/snprc_ehr-0.000-25.000.sql | 1064 ++--------------- 1 file changed, 119 insertions(+), 945 deletions(-) diff --git a/snprc_ehr/resources/schemas/dbscripts/sqlserver/snprc_ehr-0.000-25.000.sql b/snprc_ehr/resources/schemas/dbscripts/sqlserver/snprc_ehr-0.000-25.000.sql index baabea0b..3b3e0f0a 100644 --- a/snprc_ehr/resources/schemas/dbscripts/sqlserver/snprc_ehr-0.000-25.000.sql +++ b/snprc_ehr/resources/schemas/dbscripts/sqlserver/snprc_ehr-0.000-25.000.sql @@ -1,19 +1,3 @@ -/* - * Copyright (c) 2018-2019 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - CREATE SCHEMA snprc_ehr; GO @@ -22,64 +6,57 @@ CREATE TABLE snprc_ehr.package ( name NVARCHAR(100), description NVARCHAR(MAX), Container entityId NOT NULL, + Created DATETIME, + CreatedBy USERID, + Modified DATETIME, + ModifiedBy USERID, + diCreated DATETIME, + diModified DATETIME, + diCreatedBy USERID, + diModifiedBy USERID, + objectid uniqueidentifier not null default newid(), + pkgType NVARCHAR(1) not null default 'U', CONSTRAINT PK_packages PRIMARY KEY (id), CONSTRAINT FK_packages_Container FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) ); -ALTER TABLE snprc_ehr.package ADD Created DATETIME; -ALTER TABLE snprc_ehr.package ADD CreatedBy USERID; -ALTER TABLE snprc_ehr.package ADD Modified DATETIME; -ALTER TABLE snprc_ehr.package ADD ModifiedBy USERID; - -ALTER TABLE snprc_ehr.package ADD objectid nvarchar(4000); - -ALTER TABLE snprc_ehr.package ADD diCreated DATETIME; -ALTER TABLE snprc_ehr.package ADD diModified DATETIME; -ALTER TABLE snprc_ehr.package ADD diCreatedBy USERID; -ALTER TABLE snprc_ehr.package ADD diModifiedBy USERID; - -ALTER TABLE snprc_ehr.package DROP COLUMN objectid; -ALTER TABLE snprc_ehr.package ADD objectid uniqueidentifier not null default newid(); - CREATE UNIQUE INDEX idx_package_objectid ON snprc_ehr.package (objectid); -ALTER TABLE snprc_ehr.package ADD pkgType NVARCHAR(1) not null default 'U'; - CREATE TABLE snprc_ehr.package_category ( id int not null, - name NVARCHAR(100), description NVARCHAR(MAX), Container entityId NOT NULL, + Created DATETIME, + CreatedBy USERID, + Modified DATETIME, + ModifiedBy USERID, + diCreated DATETIME, + diModified DATETIME, + diCreatedBy USERID, + diModifiedBy USERID, + objectid uniqueidentifier not null default newid(), CONSTRAINT PK_package_categories PRIMARY KEY (id), CONSTRAINT FK_package_categories_Container FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) ); GO -ALTER TABLE snprc_ehr.package_category DROP COLUMN name; - -ALTER TABLE snprc_ehr.package_category ADD Created DATETIME; -ALTER TABLE snprc_ehr.package_category ADD CreatedBy USERID; -ALTER TABLE snprc_ehr.package_category ADD Modified DATETIME; -ALTER TABLE snprc_ehr.package_category ADD ModifiedBy USERID; - -ALTER TABLE snprc_ehr.package_category ADD objectid nvarchar(4000); - -ALTER TABLE snprc_ehr.package_category ADD diCreated DATETIME; -ALTER TABLE snprc_ehr.package_category ADD diModified DATETIME; -ALTER TABLE snprc_ehr.package_category ADD diCreatedBy USERID; -ALTER TABLE snprc_ehr.package_category ADD diModifiedBy USERID; - -ALTER TABLE snprc_ehr.package_category DROP COLUMN objectid; -ALTER TABLE snprc_ehr.package_category ADD objectid uniqueidentifier not null default newid(); - CREATE UNIQUE INDEX idx_package_category_objectid ON snprc_ehr.package_category (objectid); CREATE TABLE snprc_ehr.package_category_junction ( rowId int not null, packageId int not null, categoryId int not null, + Created DATETIME, + CreatedBy USERID, + Modified DATETIME, + ModifiedBy USERID, + diCreated DATETIME, + diModified DATETIME, + diCreatedBy USERID, + diModifiedBy USERID, + objectid uniqueidentifier not null default newid(), CONSTRAINT PK_package_category_junction PRIMARY KEY (rowId), CONSTRAINT FK_package_category_junction_packageId FOREIGN KEY (packageId) REFERENCES snprc_ehr.package(id), @@ -88,24 +65,6 @@ CREATE TABLE snprc_ehr.package_category_junction ( GO CREATE UNIQUE INDEX IDX_package_category_junction ON snprc_ehr.package_category_junction(categoryId, packageId); - -ALTER TABLE snprc_ehr.package_category_junction ADD Created DATETIME; -ALTER TABLE snprc_ehr.package_category_junction ADD CreatedBy USERID; -ALTER TABLE snprc_ehr.package_category_junction ADD Modified DATETIME; -ALTER TABLE snprc_ehr.package_category_junction ADD ModifiedBy USERID; - -ALTER TABLE snprc_ehr.package_category_junction ADD objectid nvarchar(4000); - -GO - -ALTER TABLE snprc_ehr.package_category_junction ADD diCreated DATETIME; -ALTER TABLE snprc_ehr.package_category_junction ADD diModified DATETIME; -ALTER TABLE snprc_ehr.package_category_junction ADD diCreatedBy USERID; -ALTER TABLE snprc_ehr.package_category_junction ADD diModifiedBy USERID; - -ALTER TABLE snprc_ehr.package_category_junction DROP COLUMN objectid; -ALTER TABLE snprc_ehr.package_category_junction ADD objectid uniqueidentifier not null default newid(); - CREATE UNIQUE INDEX idx_package_category_junction_objectid ON snprc_ehr.package_category_junction (objectid); CREATE TABLE snprc_ehr.species @@ -119,40 +78,24 @@ CREATE TABLE snprc_ehr.species blood_draw_interval FLOAT, dateDisabled DATETIME NULL, cites_code NVARCHAR(200), - species_code NVARCHAR(3), - arc_species_code NVARCHAR(3), - objectid NVARCHAR(4000), + species_code NVARCHAR(3) NOT NULL, + arc_species_code NVARCHAR(3) NOT NULL, tid INT, + diCreated DATETIME, + diModified DATETIME, + diCreatedBy USERID, + diModifiedBy USERID, + primate VARCHAR(1), + objectid uniqueidentifier not null default newid(), + Created DATETIME, + Modified DATETIME, + CreatedBy USERID, + ModifiedBy USERID, - CONSTRAINT pk_species PRIMARY KEY (common) + CONSTRAINT pk_species PRIMARY KEY (species_code) ); --- change primary key to species_code column - -ALTER TABLE snprc_ehr.species ALTER COLUMN species_code NVARCHAR(3) NOT NULL; -ALTER TABLE snprc_ehr.species ALTER COLUMN arc_species_code NVARCHAR(3) NOT NULL; -ALTER TABLE snprc_ehr.species DROP CONSTRAINT pk_species; -ALTER TABLE snprc_ehr.species ADD CONSTRAINT pk_species PRIMARY KEY (species_code); - -ALTER TABLE snprc_ehr.species ADD diCreated DATETIME; -ALTER TABLE snprc_ehr.species ADD diModified DATETIME; -ALTER TABLE snprc_ehr.species ADD diCreatedBy USERID; -ALTER TABLE snprc_ehr.species ADD diModifiedBy USERID; - -ALTER TABLE snprc_ehr.species ADD primate VARCHAR(1); - --- DROP the object id column --- ADD the objectid back as a uniqueidentifier - -ALTER TABLE snprc_ehr.species DROP COLUMN objectid; -ALTER TABLE snprc_ehr.species ADD objectid uniqueidentifier not null default newid(); - --- create a unique index on the objectid CREATE UNIQUE INDEX idx_species_objectid ON snprc_ehr.species (objectid); -ALTER TABLE snprc_ehr.species ADD Created DATETIME; -ALTER TABLE snprc_ehr.species ADD Modified DATETIME; -ALTER TABLE snprc_ehr.species ADD CreatedBy USERID; -ALTER TABLE snprc_ehr.species ADD ModifiedBy USERID; CREATE TABLE snprc_ehr.clinical_observation_datasets ( @@ -161,15 +104,13 @@ CREATE TABLE snprc_ehr.clinical_observation_datasets category_name NVARCHAR(255) NOT NULL, sort_order Int NULL, Container entityId NOT NULL, + objectid uniqueidentifier not null default newid(), CONSTRAINT pk_clinical_observation_datasets PRIMARY KEY (rowId), CONSTRAINT FK_clinical_observation_datasets_Container FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) ); - GO -ALTER TABLE snprc_ehr.clinical_observation_datasets ADD objectid uniqueidentifier not null default newid(); - CREATE TABLE snprc_ehr.validAccounts( account varchar(16) NOT NULL, accountStatus varchar(1) NOT NULL, @@ -177,128 +118,7 @@ CREATE TABLE snprc_ehr.validAccounts( endDate DATETIME NULL, description VARCHAR(100) NULL, accountGroup VARCHAR(20) NOT NULL, - userName VARCHAR(128) NOT NULL, - entryDateTm DATETIME NOT NULL, - Container entityId NOT NULL, - Created DATETIME, - CreatedBy USERID, - Modified DATETIME, - ModifiedBy USERID, - objectid NVARCHAR(4000) - - CONSTRAINT [PK_VALID_ACCOUNTS] PRIMARY KEY CLUSTERED (account ASC ) -); -GO - -ALTER TABLE snprc_ehr.validAccounts ADD diCreated DATETIME; -ALTER TABLE snprc_ehr.validAccounts ADD diModified DATETIME; -ALTER TABLE snprc_ehr.validAccounts ADD diCreatedBy USERID; -ALTER TABLE snprc_ehr.validAccounts ADD diModifiedBy USERID; - -ALTER TABLE snprc_ehr.validAccounts DROP COLUMN entryDateTm; -ALTER TABLE snprc_ehr.validAccounts DROP COLUMN userName; - -ALTER TABLE snprc_ehr.validAccounts DROP COLUMN objectid; -ALTER TABLE snprc_ehr.validAccounts ADD objectid uniqueidentifier not null default newid(); - -CREATE UNIQUE INDEX idx_validAccounts_objectid ON snprc_ehr.validAccounts (objectid); - -CREATE TABLE snprc_ehr.lab_tests ( - rowid int identity(1,1), - type varchar(100), - testid varchar(100) NOT NULL, - name varchar(100), - units varchar(100), - aliases varchar(1000), - alertOnAbnormal bit, - alertOnAny bit, - includeInPanel bit, - sort_order int, - userName VARCHAR(128) NOT NULL, - entryDateTm DATETIME NOT NULL, - objectid nvarchar(4000), - Created DATETIME, - CreatedBy USERID, - Modified DATETIME, - ModifiedBy USERID, - Container entityId NOT NULL, - - CONSTRAINT PK_snprc_lab_tests PRIMARY KEY (rowid), - CONSTRAINT FK_snprc_lab_tests FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) -); - -GO - -CREATE INDEX IDX_snprc_lab_tests_test_id ON snprc_ehr.lab_tests (testid); -GO - -ALTER TABLE snprc_ehr.lab_tests ADD diCreated DATETIME; -ALTER TABLE snprc_ehr.lab_tests ADD diModified DATETIME; -ALTER TABLE snprc_ehr.lab_tests ADD diCreatedBy USERID; -ALTER TABLE snprc_ehr.lab_tests ADD diModifiedBy USERID; - -ALTER TABLE snprc_ehr.lab_tests DROP COLUMN entryDateTm; -ALTER TABLE snprc_ehr.lab_tests DROP COLUMN userName; - -ALTER TABLE snprc_ehr.lab_tests DROP COLUMN objectid; -ALTER TABLE snprc_ehr.lab_tests ADD objectid uniqueidentifier not null default newid(); - -CREATE UNIQUE INDEX idx_lab_tests_objectid ON snprc_ehr.lab_tests (objectid); --- drop existing tables -DROP TABLE snprc_ehr.lab_tests; -GO - -CREATE TABLE snprc_ehr.labwork_services ( - servicename varchar(200) NOT NULL, - serviceid varchar(200) NOT NULL, - dataset varchar(200), - chargetype varchar(200), - collectionmethod varchar(500), - alertOnComplete bit, - tissue varchar(100), - outsidelab bit, - datedisabled datetime, - method varchar(100), - userName VARCHAR(128) NOT NULL, - entryDateTm DATETIME NOT NULL, - objectid nvarchar(4000), - Created DATETIME, - CreatedBy USERID, - Modified DATETIME, - ModifiedBy USERID, Container entityId NOT NULL, - - CONSTRAINT PK_snprc_labwork_services PRIMARY KEY (servicename), - CONSTRAINT FK_snprc_labwork_services FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) -); - -GO - -ALTER TABLE snprc_ehr.labwork_services ADD diCreated DATETIME; -ALTER TABLE snprc_ehr.labwork_services ADD diModified DATETIME; -ALTER TABLE snprc_ehr.labwork_services ADD diCreatedBy USERID; -ALTER TABLE snprc_ehr.labwork_services ADD diModifiedBy USERID; - -ALTER TABLE snprc_ehr.labwork_services DROP COLUMN entryDateTm; -ALTER TABLE snprc_ehr.labwork_services DROP COLUMN userName; - --- Need to change the primary key - recreate labwork_services table - The table will need to be repopulated using the ETL process - -DROP TABLE snprc_ehr.labwork_services; - -CREATE TABLE snprc_ehr.labwork_services ( - rowId int identity, - serviceName varchar(200) NOT NULL, - serviceId varchar(200) NOT NULL, - dataset varchar(200), - chargeType varchar(200), - collectionMethod varchar(500), - alertOnComplete bit, - tissue varchar(100), - outsideLab bit, - dateDisabled datetime, - method varchar(100), - objectid UNIQUEIDENTIFIER not null default newid(), Created DATETIME, CreatedBy USERID, Modified DATETIME, @@ -307,20 +127,13 @@ CREATE TABLE snprc_ehr.labwork_services ( diModified DATETIME, diCreatedBy USERID, diModifiedBy USERID, - Container entityId NOT NULL, + objectid uniqueidentifier not null default newid(), - CONSTRAINT PK_snprc_labwork_services PRIMARY KEY (rowId), - CONSTRAINT FK_snprc_labwork_services FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) + CONSTRAINT [PK_VALID_ACCOUNTS] PRIMARY KEY CLUSTERED (account ASC ) ); +GO -CREATE UNIQUE INDEX idx_labwork_services_serviceName ON snprc_ehr.labwork_services (serviceName); -CREATE UNIQUE INDEX idx_labwork_services_serviceId ON snprc_ehr.labwork_services (serviceId); -CREATE UNIQUE INDEX idx_labwork_services_objectid ON snprc_ehr.labwork_services (objectid); - -DROP TABLE snprc_ehr.labwork_services; -go - --- labwork_services +CREATE UNIQUE INDEX idx_validAccounts_objectid ON snprc_ehr.validAccounts (objectid); CREATE TABLE snprc_ehr.labwork_services ( RowId [INT] IDENTITY(1,1) NOT NULL, @@ -336,7 +149,7 @@ CREATE TABLE snprc_ehr.labwork_services ( Method varchar(100), Active INT, Bench varchar(20), - ObjectId nvarchar(4000), + ObjectId uniqueidentifier NOT NULL DEFAULT NEWID(), [Created] [DATETIME] NULL, [CreatedBy] [dbo].[USERID] NULL, [Modified] [DATETIME] NULL, @@ -353,9 +166,6 @@ CREATE TABLE snprc_ehr.labwork_services ( GO -ALTER TABLE [snprc_ehr].[labwork_services] ADD DEFAULT (NEWID()) FOR [ObjectId]; -GO - CREATE UNIQUE INDEX idx_labwork_services_serviceId ON [snprc_ehr].[labwork_services](ServiceId); GO @@ -367,27 +177,22 @@ CREATE TABLE snprc_ehr.validInstitutions ( state varchar(20) NOT NULL, affiliate varchar(50) NULL, web_site varchar(200) NULL, - objectid nvarchar(4000) NOT NULL, Created DATETIME, CreatedBy USERID, Modified DATETIME, ModifiedBy USERID, Container entityId NOT NULL, + diCreated DATETIME, + diModified DATETIME, + diCreatedBy USERID, + diModifiedBy USERID, + objectid uniqueidentifier not null default newid(), CONSTRAINT PK_snprc_valid_institutions PRIMARY KEY (institution_id), CONSTRAINT FK_snprc_valid_institutions FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) ); - GO -ALTER TABLE snprc_ehr.validInstitutions ADD diCreated DATETIME; -ALTER TABLE snprc_ehr.validInstitutions ADD diModified DATETIME; -ALTER TABLE snprc_ehr.validInstitutions ADD diCreatedBy USERID; -ALTER TABLE snprc_ehr.validInstitutions ADD diModifiedBy USERID; - -ALTER TABLE snprc_ehr.validInstitutions DROP COLUMN objectid; -ALTER TABLE snprc_ehr.validInstitutions ADD objectid uniqueidentifier not null default newid(); - CREATE UNIQUE INDEX idx_validInstitutions_objectid ON snprc_ehr.validInstitutions (objectid); CREATE TABLE snprc_ehr.validVets ( @@ -395,93 +200,40 @@ CREATE TABLE snprc_ehr.validVets ( displayName varchar(128) NOT NULL , emailAddress varchar(128) NULL, status varchar(10) NOT NULL, - objectid nvarchar(4000) NOT NULL, Created DATETIME, CreatedBy USERID, Modified DATETIME, ModifiedBy USERID, Container entityId NOT NULL, + diCreated DATETIME, + diModified DATETIME, + diCreatedBy USERID, + diModifiedBy USERID, + objectid uniqueidentifier not null default newid(), CONSTRAINT PK_snprc_validVets PRIMARY KEY (vetId), CONSTRAINT FK_snprc_validVets FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) ); - GO -ALTER TABLE snprc_ehr.validVets ADD diCreated DATETIME; -ALTER TABLE snprc_ehr.validVets ADD diModified DATETIME; -ALTER TABLE snprc_ehr.validVets ADD diCreatedBy USERID; -ALTER TABLE snprc_ehr.validVets ADD diModifiedBy USERID; - -ALTER TABLE snprc_ehr.validVets DROP COLUMN objectid; -ALTER TABLE snprc_ehr.validVets ADD objectid uniqueidentifier not null default newid(); - CREATE UNIQUE INDEX idx_validVets_objectid ON snprc_ehr.validVets (objectid); CREATE TABLE snprc_ehr.valid_bd_status ( value integer NOT NULL, description varchar(128) NOT NULL , - objectid nvarchar(4000) NULL, Created DATETIME, CreatedBy USERID, Modified DATETIME, ModifiedBy USERID, Container entityId NOT NULL, + objectid uniqueidentifier not null default newid(), CONSTRAINT PK_snprc_valid_bd_status PRIMARY KEY (value), CONSTRAINT FK_snprc_valid_bd_status FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) ); - GO -ALTER TABLE snprc_ehr.valid_bd_status DROP COLUMN objectid; -ALTER TABLE snprc_ehr.valid_bd_status ADD objectid uniqueidentifier not null default newid(); - CREATE UNIQUE INDEX idx_valid_bd_status_objectid ON snprc_ehr.valid_bd_status (objectid); -CREATE TABLE snprc_ehr.valid_birth_code ( - value integer NOT NULL, - description varchar(128) NOT NULL , - objectid nvarchar(4000) NULL, - Created DATETIME, - CreatedBy USERID, - Modified DATETIME, - ModifiedBy USERID, - Container entityId NOT NULL, - - CONSTRAINT PK_snprc_valid_birth_code PRIMARY KEY (value), - CONSTRAINT FK_snprc_valid_birth_code FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) -); - -GO - -ALTER TABLE snprc_ehr.valid_birth_code DROP COLUMN objectid; -ALTER TABLE snprc_ehr.valid_birth_code ADD objectid uniqueidentifier not null default newid(); - -CREATE UNIQUE INDEX idx_valid_birth_code_objectid ON snprc_ehr.valid_birth_code (objectid); -EXEC core.fn_dropifexists 'valid_birth_code','snprc_ehr', 'TABLE'; - -CREATE TABLE snprc_ehr.valid_death_code ( - value integer NOT NULL, - description varchar(128) NOT NULL , - objectid nvarchar(4000) NULL, - Created DATETIME, - CreatedBy USERID, - Modified DATETIME, - ModifiedBy USERID, - Container entityId NOT NULL, - - CONSTRAINT PK_snprc_valid_death_code PRIMARY KEY (value), - CONSTRAINT FK_snprc_valid_death_code FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) -); - -GO - -ALTER TABLE snprc_ehr.valid_death_code DROP COLUMN objectid; -ALTER TABLE snprc_ehr.valid_death_code ADD objectid uniqueidentifier not null default newid(); - -CREATE UNIQUE INDEX idx_valid_death_code_objectid ON snprc_ehr.valid_death_code (objectid); -EXEC core.fn_dropifexists 'valid_death_code','snprc_ehr', 'TABLE'; - CREATE TABLE snprc_ehr.animal_group_categories( category_code int NOT NULL, description varchar(128) NULL, @@ -492,7 +244,6 @@ CREATE TABLE snprc_ehr.animal_group_categories( enforce_exclusivity char(1) NOT NULL, allow_future_date char(1) NOT NULL, sort_order int NULL, - objectid nvarchar(4000) NULL, Created DATETIME, CreatedBy USERID, Modified DATETIME, @@ -502,27 +253,23 @@ CREATE TABLE snprc_ehr.animal_group_categories( diCreatedBy USERID, diModifiedBy USERID, Container entityId NOT NULL, + objectid uniqueidentifier not null default newid(), CONSTRAINT PK_animal_group_categories PRIMARY KEY (category_code), CONSTRAINT FK_animal_group_categories FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) ); - GO -ALTER TABLE snprc_ehr.animal_group_categories DROP COLUMN objectid; -ALTER TABLE snprc_ehr.animal_group_categories ADD objectid uniqueidentifier not null default newid(); - CREATE UNIQUE INDEX idx_animal_group_categories_objectid ON snprc_ehr.animal_group_categories (objectid); CREATE TABLE snprc_ehr.animal_groups( code INT NOT NULL, category_code INT NOT NULL, - description VARCHAR(128) NOT NULL, + name VARCHAR(128) NOT NULL, -- Renamed from description date DATE NOT NULL, enddate DATE NULL, comment VARCHAR(MAX) NULL, sort_order INT NULL, - objectid nvarchar(4000) NULL, Created DATETIME, CreatedBy USERID, Modified DATETIME, @@ -532,28 +279,20 @@ CREATE TABLE snprc_ehr.animal_groups( diCreatedBy USERID, diModifiedBy USERID, Container entityId NOT NULL, + objectid uniqueidentifier not null default newid(), CONSTRAINT PK_snprc_animal_groups PRIMARY KEY (code, category_code), CONSTRAINT FK_snprc_animal_groups FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) ); - GO -EXEC sp_rename 'snprc_ehr.animal_groups.description', 'name', 'COLUMN'; -GO - -ALTER TABLE snprc_ehr.animal_groups DROP COLUMN objectid; -ALTER TABLE snprc_ehr.animal_groups ADD objectid uniqueidentifier not null default newid(); - CREATE UNIQUE INDEX idx_animal_groups_objectid ON snprc_ehr.animal_groups (objectid); --- add unique index on code column in snprc_ehr.animal_groups CREATE UNIQUE INDEX idx_animal_groups_code ON snprc_ehr.animal_groups (code); --- labwork_types CREATE TABLE snprc_ehr.labwork_types ( RowId [INT] IDENTITY(1,1) NOT NULL, ServiceType varchar(100) NOT NULL, - ObjectId nvarchar(4000), + ObjectId uniqueidentifier NOT NULL DEFAULT NEWID(), [Created] [DATETIME] NULL, [CreatedBy] [dbo].[USERID] NULL, [Modified] [DATETIME] NULL, @@ -567,10 +306,6 @@ CREATE TABLE snprc_ehr.labwork_types ( CONSTRAINT PK_snprc_labwork_types PRIMARY KEY (ServiceType), CONSTRAINT FK_snprc_labwork_types_container FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) ); - -GO - -ALTER TABLE [snprc_ehr].[labwork_types] ADD DEFAULT (NEWID()) FOR [ObjectId]; GO ALTER TABLE [snprc_ehr].[labwork_services] WITH CHECK ADD CONSTRAINT [FK_snprc_labwork_panels_dataset] FOREIGN KEY([Dataset]) REFERENCES [snprc_ehr].[labwork_types] ([ServiceType]); @@ -578,8 +313,6 @@ GO ALTER TABLE [snprc_ehr].[labwork_services] CHECK CONSTRAINT [FK_snprc_labwork_panels_dataset]; GO --- labwork_panels - CREATE TABLE [snprc_ehr].[labwork_panels]( RowId [INT] IDENTITY(1,1) NOT NULL, [ServiceId] INT NOT NULL, @@ -600,7 +333,7 @@ CREATE TABLE [snprc_ehr].[labwork_panels]( [DiModified] [DATETIME] NULL, [DiCreatedBy] [dbo].[USERID] NULL, [DiModifiedBy] [dbo].[USERID] NULL, - [ObjectId] [UNIQUEIDENTIFIER] NOT NULL, + [ObjectId] [UNIQUEIDENTIFIER] NOT NULL DEFAULT NEWID(), CONSTRAINT [PK_snprc_labwork_panels] PRIMARY KEY CLUSTERED ( [RowId] ASC @@ -609,9 +342,6 @@ CREATE TABLE [snprc_ehr].[labwork_panels]( ) ON [PRIMARY]; GO -ALTER TABLE [snprc_ehr].[labwork_panels] ADD DEFAULT (NEWID()) FOR [objectid]; -GO - ALTER TABLE [snprc_ehr].[labwork_panels] WITH CHECK ADD CONSTRAINT [FK_snprc_labwork_panels_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); GO @@ -631,7 +361,7 @@ CREATE TABLE [snprc_ehr].[MhcData]( [OcId] [NVARCHAR](128) NULL, [MhcValue] [nvarchar](128) NULL, [DataFileSource] [nvarchar](4000) NULL, - [ObjectId] nvarchar(128), + [ObjectId] uniqueidentifier NOT NULL DEFAULT NEWID(), [Created] [DATETIME] NULL, [CreatedBy] [dbo].[USERID] NULL, [Modified] [DATETIME] NULL, @@ -648,10 +378,6 @@ CREATE TABLE [snprc_ehr].[MhcData]( go - -ALTER TABLE [snprc_ehr].[MhcData] ADD DEFAULT (NEWID()) FOR [ObjectId]; -GO - ALTER TABLE [snprc_ehr].[MhcData] ADD CONSTRAINT [AK_ID_Haplotype] UNIQUE NONCLUSTERED ( [Id] ASC, @@ -663,7 +389,7 @@ CREATE TABLE [snprc_ehr].[ValidChargeBySpecies]( [Project] INTEGER NOT NULL, [Species] NVARCHAR(2) NOT NULL, [Purpose] NVARCHAR (2) NOT NULL, - [ObjectId] nvarchar(128), + [ObjectId] uniqueidentifier NOT NULL DEFAULT NEWID(), [Created] [DATETIME] NULL, [CreatedBy] [dbo].[USERID] NULL, [Modified] [DATETIME] NULL, @@ -672,59 +398,15 @@ CREATE TABLE [snprc_ehr].[ValidChargeBySpecies]( [DiModified] [DATETIME] NULL, [DiCreatedBy] [dbo].[USERID] NULL, [DiModifiedBy] [dbo].[USERID] NULL, - Container entityId NOT NULL + Container entityId NOT NULL, + startDate DATETIME NOT NULL DEFAULT GETDATE(), + stopDate DATETIME, - CONSTRAINT PK_snprc_ValidChargeBySpecies PRIMARY KEY ([Project]) + CONSTRAINT PK_snprc_ValidChargeBySpecies PRIMARY KEY CLUSTERED (Project, Species), CONSTRAINT FK_snprc_ValidChargeBySpecies_container FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) ); - -go - -ALTER TABLE [snprc_ehr].[ValidChargeBySpecies] ADD DEFAULT (NEWID()) FOR [ObjectId]; -GO - --- adding species to the PK -ALTER TABLE snprc_ehr.ValidChargeBySpecies - DROP CONSTRAINT PK_snprc_ValidChargeBySpecies; -GO - -ALTER TABLE snprc_ehr.ValidChargeBySpecies ADD CONSTRAINT - PK_snprc_ValidChargeBySpecies PRIMARY KEY CLUSTERED -( - Project, - Species -); - GO -ALTER TABLE snprc_ehr.ValidChargeBySpecies ADD startDate DATETIME NOT NULL DEFAULT GETDATE(); -ALTER TABLE snprc_ehr.ValidChargeBySpecies ADD stopDate DATETIME; - -EXEC core.fn_dropifexists 'FeeSchedule','snprc_ehr', 'TABLE'; -GO - -CREATE TABLE [snprc_ehr].[FeeSchedule]( - [RowId] [bigint] IDENTITY(1,1) NOT NULL, - [ActivityId] INTEGER NOT NULL, - [Species] NVARCHAR(128) NOT NULL, - [Description] NVARCHAR (256) NOT NULL, - [BudgetYear] NVARCHAR (256) NOT NULL, - [Cost] NUMERIC (9,2) NOT NULL, - [FileName] NVARCHAR (256) NOT NULL, - [ObjectId] UNIQUEIDENTIFIER NOT NULL DEFAULT NEWID(), - [Created] [DATETIME] NULL, - [CreatedBy] [dbo].[USERID] NULL, - [Modified] [DATETIME] NULL, - [ModifiedBy] [dbo].[USERID] NULL, - Container entityId NOT NULL - - CONSTRAINT PK_snprc_fee_schedule PRIMARY KEY ([RowId]) - CONSTRAINT FK_snprc_fee_Schedule_container FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) -); - -CREATE UNIQUE INDEX idx_snprc_fee_schedule_objectid ON snprc_ehr.feeSchedule (objectid); -CREATE UNIQUE INDEX idx_snprc_fee_schedule_activityId_budgetYear ON snprc_ehr.FeeSchedule (ActivityId, BudgetYear); - EXEC core.fn_dropifexists 'FeeSchedule','snprc_ehr', 'TABLE'; CREATE TABLE [snprc_ehr].[FeeSchedule]( @@ -744,7 +426,7 @@ CREATE TABLE [snprc_ehr].[FeeSchedule]( [ModifiedBy] [dbo].[USERID] NULL, Container entityId NOT NULL - CONSTRAINT PK_snprc_fee_schedule PRIMARY KEY ([RowId]) + CONSTRAINT PK_snprc_fee_schedule PRIMARY KEY ([RowId]), CONSTRAINT FK_snprc_fee_Schedule_container FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) ); @@ -765,7 +447,7 @@ CREATE TABLE [snprc_ehr].[FeeScheduleSpeciesLookup] ( [ModifiedBy] [dbo].[USERID] NULL, [Container] [dbo].[ENTITYID] NOT NULL - CONSTRAINT [PK_FeeScheduleSpeciesLookup] PRIMARY KEY CLUSTERED ([FsSpecies], [SpeciesCode]) + CONSTRAINT [PK_FeeScheduleSpeciesLookup] PRIMARY KEY CLUSTERED ([FsSpecies], [SpeciesCode]), CONSTRAINT [FK_FeeScheduleSpeciesLookup_container] FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) ); GO @@ -773,48 +455,6 @@ GO EXEC core.fn_dropifexists 'LocationTemperature','snprc_ehr', 'TABLE'; GO -/************************************* -ObjectId should be populated before insert. - - -srr 02.25.2019 -*************************************/ - -CREATE TABLE [snprc_ehr].[LocationTemperature]( - [Room] [varchar](100) NOT NULL, - [Date] [DATETIME] NOT NULL, - [LowTemperature] [NUMERIC](6, 2) NULL, - [HighTemperature] [NUMERIC](6, 2) NULL, - [Notify] [VARCHAR](18) NULL, - [ObjectId] UNIQUEIDENTIFIER NOT NULL DEFAULT NEWID(), - [user_name] [VARCHAR](128) NOT NULL, - [entry_date_tm] [DATETIME] NOT NULL, - [Container] [entityID] NOT NULL, - [Created] DATETIME, - [CreatedBy] USERID, - [Modified] DATETIME, - [ModifiedBy] USERID - - CONSTRAINT [PK_LocationTemperature] PRIMARY KEY CLUSTERED ([Room] ASC,[Date] ASC) - CONSTRAINT FK_snprc_LocationTemperature_container FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) -); -GO - - -CREATE UNIQUE INDEX idx_snprc_LocationTemperature_objectid ON snprc_ehr.LocationTemperature (ObjectId); -CREATE UNIQUE INDEX idx_snprc_LocationTemperature_Room ON snprc_ehr.LocationTemperature (Room); -GO - -EXEC core.fn_dropifexists 'LocationTemperature','snprc_ehr', 'TABLE'; - -GO -/************************************* -ObjectId should be populated before insert. - - -srr 02.25.2019 ori -srr 02.27.2019 19.11 version -*************************************/ CREATE TABLE [snprc_ehr].[LocationTemperature]( [Room] [varchar](100) NOT NULL, @@ -831,9 +471,9 @@ CREATE TABLE [snprc_ehr].[LocationTemperature]( [diCreatedBy] [dbo].[USERID] NULL, [diModifiedBy] [dbo].[USERID] NULL, [Container] [dbo].[ENTITYID] NOT NULL, - [objectid] [uniqueidentifier] NOT NULL + [objectid] [uniqueidentifier] NOT NULL DEFAULT NEWID(), - CONSTRAINT [PK_LocationTemperature] PRIMARY KEY CLUSTERED ([Room] ASC,[Date] ASC) + CONSTRAINT [PK_LocationTemperature] PRIMARY KEY CLUSTERED ([Room] ASC,[Date] ASC), CONSTRAINT FK_snprc_LocationTemperature_container FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) ); GO @@ -842,36 +482,15 @@ CREATE UNIQUE INDEX idx_snprc_LocationTemperature_objectid ON snprc_ehr.Location CREATE INDEX idx_snprc_LocationTemperature_Date ON snprc_ehr.LocationTemperature (Date, Room); GO --- Version 12 is replaced by version 13 srr - EXEC core.fn_dropifexists 'ValidDiet','snprc_ehr', 'TABLE'; ---GO; -/*************************************************** -Note: ArcSpeciesCode is null for most rows - therefore not included in PK - PK is composite of Diet and StartDate - - Currently: In legacy table, SnomedCode is - generated using a identity (tid). - - This was refactored to an integer - DietId. - May refactor out or to a counter - value at a later date. - -srr 03.11.2019 ori -***************************************************/ - CREATE TABLE snprc_ehr.ValidDiet( [Diet] [nvarchar](20) NOT NULL, [ArcSpeciesCode] [nvarchar](2) NULL, [StartDate] [datetime] NOT NULL, [StopDate] [datetime] NULL, [SnomedCode] [nvarchar](7) NULL, - [DietId] [INTEGER] NOT NULL, - --ObjectId] UNIQUEIDENTIFIER NOT NULL DEFAULT NEWID(), - --[Container] [entityID] NOT NULL, + [DietCode] [INTEGER] NOT NULL, -- Renamed from DietId [Created] DATETIME, [CreatedBy] USERID, [Modified] DATETIME, @@ -881,92 +500,16 @@ CREATE TABLE snprc_ehr.ValidDiet( [diCreatedBy] [dbo].[USERID] NULL, [diModifiedBy] [dbo].[USERID] NULL, [Container] [dbo].[ENTITYID] NOT NULL, - [objectid] [uniqueidentifier] NOT NULL - CONSTRAINT [PK_ValidDiet] PRIMARY KEY CLUSTERED ([Diet] ASC,[StartDate] ASC) -); - -go - -EXEC core.fn_dropifexists 'ValidDiet','snprc_ehr', 'TABLE'; - -/***************************************************************** -Note: ArcSpeciesCode is null for most rows -therefore not included in PK -PK is composite of Diet and StartDate + [objectid] [uniqueidentifier] NOT NULL DEFAULT NEWID(), -Currently: In legacy table, SnomedCode is -generated using a identity (tid). -As of 03.18.2019 column is now DietCode. - -This was refactored to an integer -DietId. -May refactor out or to a counter -value at a later date. - -srr 03.11.2019 ori -srr 03.18.2019 To agree w/ naming conventions elsewhere -refactored DietId to DietCode - - -******************************************************************/ - -CREATE TABLE snprc_ehr.ValidDiet( - [Diet] [nvarchar](20) NOT NULL, - [ArcSpeciesCode] [nvarchar](2) NULL, - [StartDate] [datetime] NOT NULL, - [StopDate] [datetime] NULL, - [SnomedCode] [nvarchar](7) NULL, - [DietCode] [INTEGER] NOT NULL, - --ObjectId] UNIQUEIDENTIFIER NOT NULL DEFAULT NEWID(), - --[Container] [entityID] NOT NULL, - [Created] DATETIME, - [CreatedBy] USERID, - [Modified] DATETIME, - [ModifiedBy] USERID, - [diCreated] [datetime] NULL, - [diModified] [datetime] NULL, - [diCreatedBy] [dbo].[USERID] NULL, - [diModifiedBy] [dbo].[USERID] NULL, - [Container] [dbo].[ENTITYID] NOT NULL, - [objectid] [uniqueidentifier] NOT NULL - CONSTRAINT [PK_ValidDiet] PRIMARY KEY CLUSTERED ([Diet] ASC,[StartDate] ASC) + CONSTRAINT [PK_ValidDiet] PRIMARY KEY CLUSTERED (Diet) -- Changed primary key ); --- will need to be changed if we begin to use Diet instead of SnomedCode srr CREATE UNIQUE INDEX idx_ValidDiet_SnomedCode_StartStopDate ON snprc_ehr.ValidDiet(SnomedCode, StartDate, StopDate); go -/****************************************************** -Change ValidDiet PK -Script generated by SSMS -srr 06.16.2020 -******************************************************/ -ALTER TABLE snprc_ehr.ValidDiet DROP CONSTRAINT PK_ValidDiet; -GO - -ALTER TABLE snprc_ehr.ValidDiet ADD CONSTRAINT PK_ValidDiet PRIMARY KEY CLUSTERED -( - Diet -); -GO - -ALTER TABLE snprc_ehr.ValidDiet SET (LOCK_ESCALATION = TABLE); -GO - -/********************************************************* -Valids for diagnosis (DX) taken from legacy DB. - Likely needs refactoring. - Will no do now. - srr - -*********************************************************/ - - - EXEC core.fn_dropifexists 'ValidDXGroup','snprc_ehr', 'TABLE'; ---srr 07.17.19 - CREATE TABLE snprc_ehr.ValidDXGroup ( DXGroup VARCHAR(30) NOT NULL, @@ -979,7 +522,7 @@ CREATE TABLE snprc_ehr.ValidDXGroup diCreatedBy dbo.USERID NULL, diModifiedBy dbo.USERID NULL, Container dbo.ENTITYID NOT NULL, - objectid uniqueidentifier NOT NULL, + objectid uniqueidentifier NOT NULL DEFAULT NEWID(), CONSTRAINT PK_ValidDXGroup PRIMARY KEY CLUSTERED (DXGroup ASC) ); @@ -1001,7 +544,7 @@ CREATE TABLE snprc_ehr.ValidDXList diCreatedBy dbo.USERID NULL, diModifiedBy dbo.USERID NULL, Container dbo.ENTITYID NOT NULL, - objectid uniqueidentifier NOT NULL, + objectid uniqueidentifier NOT NULL DEFAULT NEWID(), CONSTRAINT PK_ValidDXList PRIMARY KEY CLUSTERED (DXGroup ASC, DX ASC) ); @@ -1022,235 +565,11 @@ CREATE TABLE snprc_ehr.ValidVaccines diCreatedBy dbo.USERID NULL, diModifiedBy dbo.USERID NULL, Container dbo.ENTITYID NOT NULL, - objectid uniqueidentifier NOT NULL, + objectid uniqueidentifier NOT NULL DEFAULT NEWID(), CONSTRAINT PK_ValidVaccine PRIMARY KEY CLUSTERED (Vaccine ASC) ); -/******************************************************* -New table to load data from new animal wizard. - Data will be ETLed back down to animal database - -srr 01.28.2020 - - May not use all columns. - I defaulted to nvarchar(400) if unsure of datatype. - May need to change databypes to match those in lookup tables. - -*******************************************************/ - -EXEC core.fn_dropifexists 'NewAnimalData','snprc_ehr', 'TABLE'; - -CREATE TABLE snprc_ehr.NewAnimalData -( - Id NVARCHAR(32) NOT NULL, - BirthDate DATETIME NULL, - AcquisitionType INT NULL, - AcqDate DATETIME NULL, -- Will use for all start dates in this dataset - Gender NVARCHAR(10) NULL, --gender nvarchar(4000) - Sire NVARCHAR(32) NULL, - Dam NVARCHAR(32) NULL, - Species NVARCHAR(3) NULL, -- species, nvarchar(4000) - Colony NVARCHAR(400) NULL, - AnimalAccount NVARCHAR(400) NULL, - OwnerInstitution INT NULL, -- lookup snprc_ehr.validInstitutions - ResponsibleInstitution INT NULL, -- likely same as owner - Location NVARCHAR(400) NULL, - Diet NVARCHAR(400) NULL, - Pedigree NVARCHAR(400) NULL, - IACUC NVARCHAR(400) NULL, - Created DATETIME NULL, - CreatedBy dbo.USERID NULL, - Modified DATETIME NULL, - ModifiedBy dbo.USERID NULL, - DiCreated DATETIME NULL, - DiModified DATETIME NULL, - DiCreatedBy dbo.USERID NULL, - DiModifiedBy dbo.USERID NULL, - Container ENTITYID NOT NULL, - objectid UNIQUEIDENTIFIER NOT NULL, - - CONSTRAINT PK_snprc_NEWANIMALDATA PRIMARY KEY (Id) -); -/******************************************************* -New table to load data from new animal wizard. - Data will be ETLed back down to animal database - -srr 01.28.2020 - - May not use all columns. - I defaulted to nvarchar(400) if unsure of datatype. - May need to change databypes to match those in lookup tables. - -srr 03.09.2020 version 20.003 -Changed to ints for values that have a dropdown. - No Real data, therefore dropping table and re-recreating. -*******************************************************/ - -EXEC core.fn_dropifexists 'NewAnimalData','snprc_ehr', 'TABLE'; - -CREATE TABLE [snprc_ehr].[NewAnimalData]( - [Id] [nvarchar](32) NOT NULL, - [BirthDate] [datetime] NULL, - [AcquisitionType] [int] NULL, - [AcqDate] [datetime] NULL, - [Gender] [nvarchar](10) NULL, - [Sire] [nvarchar](32) NULL, - [Dam] [nvarchar](32) NULL, - [Species] [nvarchar](3) NULL, - [Colony] [int] NULL, - [AnimalAccount] [int] NULL, - [OwnerInstitution] [int] NULL, - [ResponsibleInstitution] [int] NULL, - [Room] [int] NULL, - [Cage] [int] NULL, - [Diet] [int] NULL, - [Pedigree] [int] NULL, - [IACUC] [int] NULL, - [Created] [datetime] NULL, - [CreatedBy] [dbo].[USERID] NULL, - [Modified] [datetime] NULL, - [ModifiedBy] [dbo].[USERID] NULL, - [Container] [dbo].[ENTITYID] NOT NULL, - [objectid] [uniqueidentifier] NOT NULL, - - CONSTRAINT PK_snprc_NEWANIMALDATA PRIMARY KEY (Id) -); - -/******************************************************* -New table to load data from new animal wizard. - Data will be ETLed back down to animal database - -srr 01.28.2020 - - May not use all columns. - I defaulted to nvarchar(400) if unsure of datatype. - May need to change datatypes to match those in lookup tables. - -srr 03.09.2020 version 20.003 - Changed to ints for values that have a dropdown. - No Real data, therefore dropping table and re-recreating. -srr 06.08.2020 version 20.007 - Added column for BirthCode. - 1 DOB accurate - 2 Month-Year accurate - 3 Year accurate - No Real data, therefore dropping table and re-recreating. -*******************************************************/ - -EXEC core.fn_dropifexists 'NewAnimalData','snprc_ehr', 'TABLE'; - -CREATE TABLE snprc_ehr.NewAnimalData -( - Id nvarchar(32) NOT NULL, - BirthDate datetime NULL, - BirthCode int NULL, - AcquisitionType int NULL, - AcqDate datetime NULL, - Gender nvarchar(10) NULL, - Sire nvarchar(32) NULL, - Dam nvarchar(32) NULL, - Species nvarchar(3) NULL, - Colony int NULL, - AnimalAccount int NULL, - OwnerInstitution int NULL, - ResponsibleInstitution int NULL, - Room int NULL, - Cage int NULL, - Diet int NULL, - Pedigree int NULL, - IACUC int NULL, - Created datetime NULL, - CreatedBy dbo.USERID NULL, - Modified datetime NULL, - ModifiedBy dbo.USERID NULL, - Container dbo.ENTITYID NOT NULL, - objectid uniqueidentifier NOT NULL, - - CONSTRAINT PK_snprc_NEWANIMALDATA PRIMARY KEY (Id) -); - -/******************************************************* -New table to load data from new animal wizard. - Data will be ETLed back down to animal database - -srr 01.28.2020 - - May not use all columns. - I defaulted to nvarchar(400) if unsure of datatype. - May need to change datatypes to match those in lookup tables. - -srr 03.09.2020 version 20.003 - Changed to ints for values that have a dropdown. - No Real data, therefore dropping table and re-recreating. -srr 06.08.2020 version 20.007 - Added column for BirthCode. - 1 DOB accurate - 2 Month-Year accurate - 3 Year accurate - No Real data, therefore dropping table and re-recreating. - - srr 06.24.2020 - Changed Diet, AnimalAccount and IACUC to strings -*******************************************************/ - -EXEC core.fn_dropifexists 'NewAnimalData','snprc_ehr', 'TABLE'; - -CREATE TABLE snprc_ehr.NewAnimalData -( - Id nvarchar(32) NOT NULL, - BirthDate datetime NULL, - BirthCode int NULL, - AcquisitionType int NULL, - AcqDate datetime NULL, - Gender nvarchar(10) NULL, - Sire nvarchar(32) NULL, - Dam nvarchar(32) NULL, - Species nvarchar(3) NULL, - Colony int NULL, - AnimalAccount nvarchar(16) NULL, - OwnerInstitution int NULL, - ResponsibleInstitution int NULL, - Room int NULL, - Cage int NULL, - Diet nvarchar(20) NULL, - Pedigree int NULL, - IACUC nvarchar(200) NULL, - Created datetime NULL, - CreatedBy dbo.USERID NULL, - Modified datetime NULL, - ModifiedBy dbo.USERID NULL, - Container dbo.ENTITYID NOT NULL, - objectid uniqueidentifier NOT NULL, - - CONSTRAINT PK_snprc_NEWANIMALDATA PRIMARY KEY (Id) -); - -/******************************************************* -New table to load data from new animal wizard. - Data will be ETLed back down to animal database - -srr 01.28.2020 - - May not use all columns. - I defaulted to nvarchar(400) if unsure of datatype. - May need to change datatypes to match those in lookup tables. - -srr 03.09.2020 version 20.003 - Changed to ints for values that have a dropdown. - No Real data, therefore dropping table and re-recreating. -srr 06.08.2020 version 20.007 - Added column for BirthCode. - 1 DOB accurate - 2 Month-Year accurate - 3 Year accurate - No Real data, therefore dropping table and re-recreating. - - srr 06.24.2020 - Changed Diet, AnimalAccount and IACUC to strings - srr 04012021 version 21.000 -*******************************************************/ - EXEC core.fn_dropifexists 'NewAnimalData','snprc_ehr', 'TABLE'; CREATE TABLE snprc_ehr.NewAnimalData @@ -1279,46 +598,11 @@ CREATE TABLE snprc_ehr.NewAnimalData Modified datetime NULL, ModifiedBy dbo.USERID NULL, Container dbo.ENTITYID NOT NULL, - objectid uniqueidentifier NOT NULL, + objectid uniqueidentifier NOT NULL DEFAULT NEWID(), CONSTRAINT PK_snprc_NEWANIMALDATA PRIMARY KEY (Id) ); --- generated w/o issue from SSMS srr 04.10.20 -EXEC core.fn_dropifexists 'BehaviorNotificationComment','snprc_ehr', 'TABLE'; - -CREATE TABLE snprc_ehr.BehaviorNotificationComment -( - NotificationNumber INT NOT NULL, - NotificationDateTm DATETIME NOT NULL, - BehaviorId INT NOT NULL, - NotificationStatus INT NOT NULL, - CaseNumber INT NULL, - NotificationComments VARCHAR(255) NULL, - SuspiciousBehavior CHAR(1) NOT NULL, - Sib CHAR(1) NOT NULL, - HousingType INT NULL, - Behavior VARCHAR(30) NOT NULL, - AbnormalFlag CHAR(1) NOT NULL, - BehaviorDescription VARCHAR(200) NOT NULL, - BehaviorCategory VARCHAR(40) NULL, - BehaviorComments VARCHAR(200) NULL, - Container ENTITYID NOT NULL, - Created DATETIME NULL, - CreatedBy USERID NULL, - ModifiedBy USERID NULL, - Modified DATETIME NULL, - DiCreatedBy USERID NULL, - DiCreated DATETIME NULL, - DiModifiedBy USERID NULL, - DiModified DATETIME NULL, - ObjectId UNIQUEIDENTIFIER NULL, - - CONSTRAINT PK_BehaviorNotiComment PRIMARY KEY (NotificationNumber) -); - --- generated w/o issue from SSMS srr 04.10.20 --- changed pk to tid identity EXEC core.fn_dropifexists 'BehaviorNotificationComment','snprc_ehr', 'TABLE'; CREATE TABLE snprc_ehr.BehaviorNotificationComment @@ -1347,7 +631,7 @@ CREATE TABLE snprc_ehr.BehaviorNotificationComment DiModifiedBy USERID NULL, DiModified DATETIME NULL, tid INT IDENTITY, - objectid UNIQUEIDENTIFIER NULL, + objectid UNIQUEIDENTIFIER NULL DEFAULT NEWID(), CONSTRAINT PK_BehaviorNotiComment_oid PRIMARY KEY (tid) ); @@ -1370,17 +654,11 @@ CREATE TABLE snprc_ehr.validDefaultIACUC DiCreated DATETIME NULL, DiModifiedBy USERID NULL, DiModified DATETIME NULL, - ObjectId UNIQUEIDENTIFIER NOT NULL, + ObjectId UNIQUEIDENTIFIER NOT NULL DEFAULT NEWID(), CONSTRAINT PK_ValidDefaultIACUC PRIMARY KEY (WorkingIacuc) ); -/******************************************************* -Counters table for SNPRC_EHRSequencer - Creator: thawkins - Date: 08/21/2020 -*******************************************************/ - CREATE TABLE snprc_ehr.Counters ( RowId INT IDENTITY(1,1) NOT NULL, @@ -1396,10 +674,6 @@ GO CREATE UNIQUE INDEX idx_snprc_container_NameValue ON snprc_ehr.Counters (Container, Name, Value); GO -/* - * New table to track number of animals allowed and assigned to IACUC protocols - * 9/25/2020 tjh - */ EXEC core.fn_dropifexists 'IacucAssignmentStats','snprc_ehr', 'TABLE'; CREATE TABLE snprc_ehr.IacucAssignmentStats @@ -1424,10 +698,6 @@ CREATE TABLE snprc_ehr.IacucAssignmentStats CONSTRAINT FK_IacucAssignmentsStats_container FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) ); -/* - * New table to configure external reports - * - */ EXEC core.fn_dropifexists 'ExternalReports','snprc_ehr', 'TABLE'; CREATE TABLE snprc_ehr.ExternalReports @@ -1447,10 +717,6 @@ CREATE TABLE snprc_ehr.ExternalReports CONSTRAINT PK_ExternalReports PRIMARY KEY CLUSTERED ( Id ASC) ); -/* - Drop tables if they already exist -*/ - EXEC core.fn_dropifexists @objname = 'HL7_IMPORT_LOG',@objschema = 'snprc_ehr', @objtype = 'TABLE'; CREATE TABLE [snprc_ehr].[HL7_IMPORT_LOG]( @@ -1465,32 +731,18 @@ CREATE TABLE [snprc_ehr].[HL7_IMPORT_LOG]( [HL7_MESSAGE_TEXT] [VARCHAR](MAX) NULL, [IMPORT_TEXT] [VARCHAR](MAX) NULL, [Container] [dbo].[ENTITYID] NOT NULL, - [OBJECT_ID] [UNIQUEIDENTIFIER] NOT NULL, - [USER_NAME] [VARCHAR](128) NOT NULL, - [ENTRY_DATE_TM] [DATETIME] NOT NULL, + [OBJECT_ID] [UNIQUEIDENTIFIER] NOT NULL DEFAULT NEWID(), + [USER_NAME] [VARCHAR](128) NOT NULL DEFAULT USER_NAME(), + [ENTRY_DATE_TM] [DATETIME] NOT NULL DEFAULT GETDATE(), [TIMESTAMP] [TIMESTAMP] NULL, CONSTRAINT [PK_HL7_IMPORT_LOG] PRIMARY KEY CLUSTERED ( [TID] ASC -) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) +) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON), + CONSTRAINT [CKC_HL7_IMPORT_LOG_OBSERVATION_DATE] CHECK (([OBSERVATION_DATE_TM] IS NULL OR [OBSERVATION_DATE_TM]<=GETDATE())) ); GO -ALTER TABLE [snprc_ehr].[HL7_IMPORT_LOG] ADD DEFAULT (USER_NAME()) FOR [USER_NAME]; -GO - -ALTER TABLE [snprc_ehr].[HL7_IMPORT_LOG] ADD DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM]; -GO - -ALTER TABLE [snprc_ehr].[HL7_IMPORT_LOG] ADD CONSTRAINT [DF_HL7_IMPROT_LOG_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID]; -GO - -ALTER TABLE [snprc_ehr].[HL7_IMPORT_LOG] WITH CHECK ADD CONSTRAINT [CKC_HL7_IMPORT_LOG_OBSERVATION_DATE] CHECK (([OBSERVATION_DATE_TM] IS NULL OR [OBSERVATION_DATE_TM]<=GETDATE())); -GO - -ALTER TABLE [snprc_ehr].[HL7_IMPORT_LOG] CHECK CONSTRAINT [CKC_HL7_IMPORT_LOG_OBSERVATION_DATE]; -GO - ALTER TABLE [snprc_ehr].[HL7_IMPORT_LOG] WITH CHECK ADD CONSTRAINT [FK_HL7_IMPORT_LOG_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); GO @@ -1513,9 +765,9 @@ CREATE TABLE [snprc_ehr].[HL7_OBX]( [ABNORMAL_FLAGS] [VARCHAR](10) NULL, [RESULT_STATUS] [VARCHAR](10) NULL, [Container] [dbo].[ENTITYID] NOT NULL, - [OBJECT_ID] [UNIQUEIDENTIFIER] NOT NULL, - [USER_NAME] [VARCHAR](128) NOT NULL, - [ENTRY_DATE_TM] [DATETIME] NOT NULL, + [OBJECT_ID] [UNIQUEIDENTIFIER] NOT NULL DEFAULT NEWID(), + [USER_NAME] [VARCHAR](128) NOT NULL DEFAULT USER_NAME(), + [ENTRY_DATE_TM] [DATETIME] NOT NULL DEFAULT GETDATE(), [TIMESTAMP] [TIMESTAMP] NULL, CONSTRAINT [PK_HL7_OBX] PRIMARY KEY CLUSTERED ( @@ -1524,15 +776,6 @@ CREATE TABLE [snprc_ehr].[HL7_OBX]( ); GO -ALTER TABLE [snprc_ehr].[HL7_OBX] ADD CONSTRAINT [DF_HL7_OBX_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID]; -GO - -ALTER TABLE [snprc_ehr].[HL7_OBX] ADD CONSTRAINT [DF_HL7_OBX_USER] DEFAULT (USER_NAME()) FOR [USER_NAME]; -GO - -ALTER TABLE [snprc_ehr].[HL7_OBX] ADD CONSTRAINT [DF_HL7_OBX_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM]; -GO - CREATE NONCLUSTERED INDEX [IDX_HL7_OBX_OBR_OBJ_ID] ON [snprc_ehr].[HL7_OBX] ( [OBR_OBJECT_ID] ASC @@ -1552,9 +795,9 @@ CREATE TABLE [snprc_ehr].[HL7_NTE]( [OBR_SET_ID] [VARCHAR](20) NOT NULL, [COMMENT] [VARCHAR](MAX) NULL, [Container] [dbo].[ENTITYID] NOT NULL, - [OBJECT_ID] [UNIQUEIDENTIFIER] NOT NULL, - [USER_NAME] [VARCHAR](128) NOT NULL, - [ENTRY_DATE_TM] [DATETIME] NOT NULL, + [OBJECT_ID] [UNIQUEIDENTIFIER] NOT NULL DEFAULT NEWID(), + [USER_NAME] [VARCHAR](128) NOT NULL DEFAULT USER_NAME(), + [ENTRY_DATE_TM] [DATETIME] NOT NULL DEFAULT GETDATE(), [TIMESTAMP] [TIMESTAMP] NULL, CONSTRAINT [PK_HL7_NTE] PRIMARY KEY CLUSTERED ( @@ -1564,15 +807,6 @@ CREATE TABLE [snprc_ehr].[HL7_NTE]( ); GO -ALTER TABLE [snprc_ehr].[HL7_NTE] ADD CONSTRAINT [DF_HL7_NTE_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID]; -GO - -ALTER TABLE [snprc_ehr].[HL7_NTE] ADD CONSTRAINT [DF_HL7_NTE_USER] DEFAULT (USER_NAME()) FOR [USER_NAME]; -GO - -ALTER TABLE [snprc_ehr].[HL7_NTE] ADD CONSTRAINT [DF_HL7_NTE_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM]; -GO - ALTER TABLE [snprc_ehr].[HL7_NTE] WITH CHECK ADD CONSTRAINT [FK_HL7_NTE_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); GO @@ -1597,39 +831,25 @@ CREATE TABLE [snprc_ehr].[HL7_OBR]( [SET_ID] [VARCHAR](20) NOT NULL, [SPECIMEN_NUM] [VARCHAR](50) NULL, [PROCEDURE_ID] [VARCHAR](20) NULL, - [PROCEDURE_NAME] [VARCHAR](50) NULL, + [PROCEDURE_NAME] [VARCHAR](200) NULL, -- Increased size from VARCHAR(50) [PRIORITY] [VARCHAR](10) NULL, [RESULT_STATUS] [VARCHAR](10) NULL, [TECHNICIAN_FIRST_NAME] [VARCHAR](50) NULL, [TECHNICIAN_LAST_NAME] [VARCHAR](50) NULL, [CHARGE_ID] [INT] NULL, [Container] [dbo].[ENTITYID] NOT NULL, - [OBJECT_ID] [UNIQUEIDENTIFIER] NOT NULL, - [USER_NAME] [VARCHAR](128) NOT NULL, - [ENTRY_DATE_TM] [DATETIME] NOT NULL, + [OBJECT_ID] [UNIQUEIDENTIFIER] NOT NULL DEFAULT NEWID(), + [USER_NAME] [VARCHAR](128) NOT NULL DEFAULT USER_NAME(), + [ENTRY_DATE_TM] [DATETIME] NOT NULL DEFAULT GETDATE(), [TIMESTAMP] [TIMESTAMP] NULL, CONSTRAINT [PK_HL7_OBR] PRIMARY KEY CLUSTERED ( [OBJECT_ID] -) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) +) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON), + CONSTRAINT [CKC_ENTRY_DATE_TM_HL7_OBR_OBR] CHECK (([ENTRY_DATE_TM]<=GETDATE())) ); GO -ALTER TABLE [snprc_ehr].[HL7_OBR] ADD CONSTRAINT [DF_HL7_OBR_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID]; -GO - -ALTER TABLE [snprc_ehr].[HL7_OBR] ADD CONSTRAINT [DF_HL7_OBR_USER] DEFAULT (USER_NAME()) FOR [USER_NAME]; -GO - -ALTER TABLE [snprc_ehr].[HL7_OBR] ADD CONSTRAINT [DF_HL7_OBR_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM]; -GO - -ALTER TABLE [snprc_ehr].[HL7_OBR] WITH CHECK ADD CONSTRAINT [CKC_ENTRY_DATE_TM_HL7_OBR_OBR] CHECK (([ENTRY_DATE_TM]<=GETDATE())); -GO - -ALTER TABLE [snprc_ehr].[HL7_OBR] CHECK CONSTRAINT [CKC_ENTRY_DATE_TM_HL7_OBR_OBR]; -GO - CREATE NONCLUSTERED INDEX [IDX_HL7_OBR_ID_DATE] ON [snprc_ehr].[HL7_OBR] ( [ANIMAL_ID] ASC, @@ -1640,9 +860,6 @@ GO ALTER TABLE [snprc_ehr].[HL7_OBR] WITH CHECK ADD CONSTRAINT [FK_HL7_OBR_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); GO --- Increase procedure name size in OBR table -ALTER TABLE snprc_ehr.HL7_OBR ALTER COLUMN PROCEDURE_NAME VARCHAR(200) NULL; - ALTER TABLE [snprc_ehr].[HL7_OBX] WITH CHECK ADD CONSTRAINT [FK_OBX_REF_OBR] FOREIGN KEY([OBR_OBJECT_ID]) REFERENCES [snprc_ehr].[HL7_OBR] ([OBJECT_ID]); GO @@ -1670,9 +887,9 @@ CREATE TABLE [snprc_ehr].[HL7_PID]( [ACCOUNT_NUMBER] [VARCHAR] (50) NULL, --F18_C1 [DEATH_DATE] [VARCHAR] (50) NULL, -- F29_C1 [Container] [dbo].[ENTITYID] NOT NULL, - [OBJECT_ID] [UNIQUEIDENTIFIER] NOT NULL, - [USER_NAME] [VARCHAR](128) NOT NULL, - [ENTRY_DATE_TM] [DATETIME] NOT NULL, + [OBJECT_ID] [UNIQUEIDENTIFIER] NOT NULL DEFAULT NEWID(), + [USER_NAME] [VARCHAR](128) NOT NULL DEFAULT USER_NAME(), + [ENTRY_DATE_TM] [DATETIME] NOT NULL DEFAULT GETDATE(), [TIMESTAMP] [TIMESTAMP] NULL, CONSTRAINT [PK_HL7_PID] PRIMARY KEY CLUSTERED ( @@ -1682,15 +899,6 @@ CREATE TABLE [snprc_ehr].[HL7_PID]( ); GO -ALTER TABLE [snprc_ehr].[HL7_PID] ADD CONSTRAINT [DF_HL7_PID_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID]; -GO - -ALTER TABLE [snprc_ehr].[HL7_PID] ADD CONSTRAINT [DF_HL7_PID_USER] DEFAULT (USER_NAME()) FOR [USER_NAME]; -GO - -ALTER TABLE [snprc_ehr].[HL7_PID] ADD CONSTRAINT [DF_HL7_PID_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM]; -GO - CREATE NONCLUSTERED INDEX [IDX_HL7_PID_ID] ON [snprc_ehr].[HL7_PID] ( [PATIENT_ID_EXTERNAL] ASC @@ -1713,9 +921,9 @@ CREATE TABLE [snprc_ehr].[HL7_PV1]( [CHARGE_NUMBER] [VARCHAR] (20) NULL, -- F22_C1 (Courtesy Code) [ADMIT_DATE] [DATETIME] NULL, --F44_C1 [Container] [dbo].[ENTITYID] NOT NULL, - [OBJECT_ID] [UNIQUEIDENTIFIER] NOT NULL, - [USER_NAME] [VARCHAR](128) NOT NULL, - [ENTRY_DATE_TM] [DATETIME] NOT NULL, + [OBJECT_ID] [UNIQUEIDENTIFIER] NOT NULL DEFAULT NEWID(), + [USER_NAME] [VARCHAR](128) NOT NULL DEFAULT USER_NAME(), + [ENTRY_DATE_TM] [DATETIME] NOT NULL DEFAULT GETDATE(), [TIMESTAMP] [TIMESTAMP] NULL, CONSTRAINT [PK_HL7_PV1] PRIMARY KEY CLUSTERED ( @@ -1725,15 +933,6 @@ CREATE TABLE [snprc_ehr].[HL7_PV1]( ); GO -ALTER TABLE [snprc_ehr].[HL7_PV1] ADD CONSTRAINT [DF_HL7_PV1_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID]; -GO - -ALTER TABLE [snprc_ehr].[HL7_PV1] ADD CONSTRAINT [DF_HL7_PV1_USER] DEFAULT (USER_NAME()) FOR [USER_NAME]; -GO - -ALTER TABLE [snprc_ehr].[HL7_PV1] ADD CONSTRAINT [DF_HL7_PV1_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM]; -GO - ALTER TABLE [snprc_ehr].[HL7_PV1] WITH CHECK ADD CONSTRAINT [FK_HL7_PV1_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); GO @@ -1753,9 +952,9 @@ CREATE TABLE [snprc_ehr].[HL7_ORC]( [CALLBACK_EMAIL] [VARCHAR](50) NULL, -- F14_C3 [ORDER_DATE] [DATETIME] NULL, -- F15_C1 [Container] [dbo].[ENTITYID] NOT NULL, - [OBJECT_ID] [UNIQUEIDENTIFIER] NOT NULL, - [USER_NAME] [VARCHAR](128) NOT NULL, - [ENTRY_DATE_TM] [DATETIME] NOT NULL, + [OBJECT_ID] [UNIQUEIDENTIFIER] NOT NULL DEFAULT NEWID(), + [USER_NAME] [VARCHAR](128) NOT NULL DEFAULT USER_NAME(), + [ENTRY_DATE_TM] [DATETIME] NOT NULL DEFAULT GETDATE(), [TIMESTAMP] [TIMESTAMP] NULL, CONSTRAINT [PK_HL7_ORC] PRIMARY KEY CLUSTERED ( @@ -1765,15 +964,6 @@ CREATE TABLE [snprc_ehr].[HL7_ORC]( ); GO -ALTER TABLE [snprc_ehr].[HL7_ORC] ADD CONSTRAINT [DF_HL7_ORC_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID]; -GO - -ALTER TABLE [snprc_ehr].[HL7_ORC] ADD CONSTRAINT [DF_HL7_ORC_USER] DEFAULT (USER_NAME()) FOR [USER_NAME]; -GO - -ALTER TABLE [snprc_ehr].[HL7_ORC] ADD CONSTRAINT [DF_HL7_ORC_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM]; -GO - ALTER TABLE [snprc_ehr].[HL7_ORC] WITH CHECK ADD CONSTRAINT [FK_HL7_ORC_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); GO @@ -1791,9 +981,9 @@ CREATE TABLE [snprc_ehr].[HL7_MSH]( [MESSAGE_CONTROL_ID] [VARCHAR](50) NULL, [MESSAGE_DATE_TM] [DATETIME] NULL, [Container] [dbo].[ENTITYID] NOT NULL, - [OBJECT_ID] [UNIQUEIDENTIFIER] NOT NULL, - [USER_NAME] [VARCHAR](128) NOT NULL, - [ENTRY_DATE_TM] [DATETIME] NOT NULL, + [OBJECT_ID] [UNIQUEIDENTIFIER] NOT NULL DEFAULT NEWID(), + [USER_NAME] [VARCHAR](128) NOT NULL DEFAULT USER_NAME(), + [ENTRY_DATE_TM] [DATETIME] NOT NULL DEFAULT GETDATE(), [TIMESTAMP] [TIMESTAMP] NULL, CONSTRAINT [PK_HL7_MSH] PRIMARY KEY CLUSTERED ( @@ -1802,15 +992,6 @@ CREATE TABLE [snprc_ehr].[HL7_MSH]( ); GO -ALTER TABLE [snprc_ehr].[HL7_MSH] ADD CONSTRAINT [DF_HL7_MSH_OBJECT_ID] DEFAULT (NEWID()) FOR [OBJECT_ID]; -GO - -ALTER TABLE [snprc_ehr].[HL7_MSH] ADD CONSTRAINT [DF_HL7_MSH_USER] DEFAULT (USER_NAME()) FOR [USER_NAME]; -GO - -ALTER TABLE [snprc_ehr].[HL7_MSH] ADD CONSTRAINT [DF_HL7_MSH_ENTRY] DEFAULT (GETDATE()) FOR [ENTRY_DATE_TM]; -GO - ALTER TABLE [snprc_ehr].[HL7_MSH] WITH CHECK ADD CONSTRAINT [FK_HL7_MSH_container] FOREIGN KEY([Container]) REFERENCES [core].[Containers] ([EntityId]); GO @@ -1977,7 +1158,7 @@ CREATE TABLE snprc_ehr.SndSuperPackageStaging Modified DATETIME NOT NULL, ModifiedBy USERID NOT NULL, diModified DATETIME NOT NULL, - ObjectId UNIQUEIDENTIFIER NOT NULL + ObjectId UNIQUEIDENTIFIER NOT NULL DEFAULT NEWID() CONSTRAINT PK_SndSuperPackageStaging PRIMARY KEY CLUSTERED ( TopLevelPkgId, SuperPkgId) ); @@ -1999,7 +1180,7 @@ CREATE TABLE snprc_ehr.SndPackageStaging ModifiedBy USERID NOT NULL, Modified DATETIME NOT NULL, diModified DATETIME NOT NULL, - ObjectId UNIQUEIDENTIFIER NOT NULL + ObjectId UNIQUEIDENTIFIER NOT NULL DEFAULT NEWID() CONSTRAINT PK_SndPackageStaging PRIMARY KEY CLUSTERED (PkgId) ); @@ -2026,7 +1207,7 @@ CREATE TABLE snprc_ehr.SndPackageAttributeStaging CreatedBy USERID NOT NULL, Modified DATETIME NOT NULL, ModifiedBy USERID NOT NULL, - ObjectId UNIQUEIDENTIFIER NOT NULL + ObjectId UNIQUEIDENTIFIER NOT NULL DEFAULT NEWID() CONSTRAINT pk_SndPackagesAttributeStaging PRIMARY KEY CLUSTERED (AttributeId) ); @@ -2049,7 +1230,7 @@ CREATE TABLE snprc_ehr.therapy_formulary( CreatedBy dbo.USERID NULL, Modified DATETIME NULL, ModifiedBy dbo.USERID NULL, - ObjectId UNIQUEIDENTIFIER NOT NULL + ObjectId UNIQUEIDENTIFIER NOT NULL DEFAULT NEWID() CONSTRAINT PK_therapy_formulary PRIMARY KEY CLUSTERED (RowId) ); @@ -2069,7 +1250,7 @@ CREATE TABLE snprc_ehr.therapy_frequency( CreatedBy dbo.USERID NULL, Modified DATETIME NULL, ModifiedBy dbo.USERID NULL, - ObjectId UNIQUEIDENTIFIER NOT NULL + ObjectId UNIQUEIDENTIFIER NOT NULL DEFAULT NEWID() CONSTRAINT PK_therapy_frequency PRIMARY KEY CLUSTERED (RowId) ); @@ -2089,7 +1270,7 @@ CREATE TABLE snprc_ehr.therapy_routes( CreatedBy dbo.USERID NULL, Modified DATETIME NULL, ModifiedBy dbo.USERID NULL, - ObjectId UNIQUEIDENTIFIER NULL + ObjectId UNIQUEIDENTIFIER NULL DEFAULT NEWID() CONSTRAINT PK_therapy_routes PRIMARY KEY CLUSTERED (RowId) ); @@ -2109,7 +1290,7 @@ CREATE TABLE snprc_ehr.therapy_units( CreatedBy dbo.USERID NULL, Modified DATETIME NULL, ModifiedBy dbo.USERID NULL, - ObjectId UNIQUEIDENTIFIER NULL + ObjectId UNIQUEIDENTIFIER NULL DEFAULT NEWID() CONSTRAINT PK_therapy_units PRIMARY KEY CLUSTERED (RowId) ); @@ -2129,7 +1310,7 @@ CREATE TABLE snprc_ehr.therapy_resolutions CreatedBy dbo.USERID NULL, Modified DATETIME NULL, ModifiedBy dbo.USERID NULL, - ObjectId UNIQUEIDENTIFIER NULL, + ObjectId UNIQUEIDENTIFIER NULL DEFAULT NEWID(), CONSTRAINT PK_therapy_resolutions PRIMARY KEY CLUSTERED (RowId) ); @@ -2137,13 +1318,6 @@ CREATE TABLE snprc_ehr.therapy_resolutions ALTER TABLE snprc_ehr.therapy_resolutions WITH CHECK ADD CONSTRAINT FK_therapy_resolutions FOREIGN KEY(Container) REFERENCES core.Containers (EntityId); GO --- ========================================================================== --- Author: Terry Hawkins --- Create date: 2/28/14 --- Description: Returns 1 if the value is numeric, 0 if value is not numeric --- 6/19/2015 added additional criteria based on the current datasets. tjh --- 2/29/2016 fixed file formatting. Fixed bug in patindex call (removed). tjh --- ========================================================================== CREATE FUNCTION [snprc_ehr].[f_isNumeric] ( @value VARCHAR(MAX) From ea5d2ee17c7d9d54652d8532f698eb7c6e057186 Mon Sep 17 00:00:00 2001 From: Adam Rauch Date: Wed, 11 Feb 2026 16:07:03 -0800 Subject: [PATCH 08/11] Semicolons, tabs, whitespace --- .../sqlserver/snprc_r24-0.000-25.000.sql | 196 +++++++++--------- 1 file changed, 98 insertions(+), 98 deletions(-) diff --git a/snprc_r24/resources/schemas/dbscripts/sqlserver/snprc_r24-0.000-25.000.sql b/snprc_r24/resources/schemas/dbscripts/sqlserver/snprc_r24-0.000-25.000.sql index c93834cf..8f7eec68 100644 --- a/snprc_r24/resources/schemas/dbscripts/sqlserver/snprc_r24-0.000-25.000.sql +++ b/snprc_r24/resources/schemas/dbscripts/sqlserver/snprc_r24-0.000-25.000.sql @@ -18,138 +18,138 @@ CREATE SCHEMA snprc_r24; GO CREATE TABLE [snprc_R24].[Biomarkers]( - [RowId] [bigint] IDENTITY(1,1) NOT NULL, - [SampleId] [NVARCHAR](32) NOT NULL, - [Lab] [nvarchar](128) NULL, - [Analyte] [nvarchar](128) NOT NULL, - [ObjectId] nvarchar(128), - [Value] numeric(6,2), - [Created] [DATETIME] NULL, - [CreatedBy] [dbo].[USERID] NULL, - [Modified] [DATETIME] NULL, - [ModifiedBy] [dbo].[USERID] NULL, - [DiCreated] [DATETIME] NULL, - [DiModified] [DATETIME] NULL, - [DiCreatedBy] [dbo].[USERID] NULL, - [DiModifiedBy] [dbo].[USERID] NULL, - Container entityId NOT NULL - - - CONSTRAINT PK_snprc_r24_Biomarkers PRIMARY KEY ([SampleId], [Analyte]) - CONSTRAINT FK_snprc_r24_Biomarkers_container FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) ); + [RowId] [bigint] IDENTITY(1,1) NOT NULL, + [SampleId] [NVARCHAR](32) NOT NULL, + [Lab] [nvarchar](128) NULL, + [Analyte] [nvarchar](128) NOT NULL, + [ObjectId] nvarchar(128), + [Value] numeric(6,2), + [Created] [DATETIME] NULL, + [CreatedBy] [dbo].[USERID] NULL, + [Modified] [DATETIME] NULL, + [ModifiedBy] [dbo].[USERID] NULL, + [DiCreated] [DATETIME] NULL, + [DiModified] [DATETIME] NULL, + [DiCreatedBy] [dbo].[USERID] NULL, + [DiModifiedBy] [dbo].[USERID] NULL, + Container entityId NOT NULL, + + CONSTRAINT PK_snprc_r24_Biomarkers PRIMARY KEY ([SampleId], [Analyte]), + CONSTRAINT FK_snprc_r24_Biomarkers_container FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) +); go ALTER TABLE [snprc_r24].[Biomarkers] ADD DEFAULT (NEWID()) FOR [ObjectId] GO -/* snprc_r24-17.10-17.20.sql */ - CREATE TABLE [snprc_r24].[SampleInventory]( - [RowId] [bigint] IDENTITY(1,1) NOT NULL, - [AnimalId] [NVARCHAR](32) NOT NULL, - [Date] [DATETIME] NOT NULL, - [SampleId] [NVARCHAR](32) NOT NULL, - [Aim] [NVARCHAR](128) NULL, - [SampleType] [NVARCHAR](128) NOT NULL, - [ObjectId] nvarchar(128) NULL, - [Created] [DATETIME] NULL, - [CreatedBy] [dbo].[USERID] NULL, - [Modified] [DATETIME] NULL, - [ModifiedBy] [dbo].[USERID] NULL, - [DiCreated] [DATETIME] NULL, - [DiModified] [DATETIME] NULL, - [DiCreatedBy] [dbo].[USERID] NULL, - [DiModifiedBy] [dbo].[USERID] NULL, - Container entityId NOT NULL - - CONSTRAINT [pk_snprc_r24_sampleinventory] PRIMARY KEY ( [SampleId] ASC) - CONSTRAINT [fk_snprc_r24_sampleinventory_container] FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) ); + [RowId] [bigint] IDENTITY(1,1) NOT NULL, + [AnimalId] [NVARCHAR](32) NOT NULL, + [Date] [DATETIME] NOT NULL, + [SampleId] [NVARCHAR](32) NOT NULL, + [Aim] [NVARCHAR](128) NULL, + [SampleType] [NVARCHAR](128) NOT NULL, + [ObjectId] nvarchar(128) NULL, + [Created] [DATETIME] NULL, + [CreatedBy] [dbo].[USERID] NULL, + [Modified] [DATETIME] NULL, + [ModifiedBy] [dbo].[USERID] NULL, + [DiCreated] [DATETIME] NULL, + [DiModified] [DATETIME] NULL, + [DiCreatedBy] [dbo].[USERID] NULL, + [DiModifiedBy] [dbo].[USERID] NULL, + Container entityId NOT NULL, + + CONSTRAINT [pk_snprc_r24_sampleinventory] PRIMARY KEY ([SampleId] ASC), + CONSTRAINT [fk_snprc_r24_sampleinventory_container] FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) +); GO -ALTER TABLE [snprc_r24].[SampleInventory] ADD DEFAULT (NEWID()) FOR [ObjectId] +ALTER TABLE [snprc_r24].[SampleInventory] ADD DEFAULT (NEWID()) FOR [ObjectId]; GO CREATE TABLE [snprc_r24].[lookupSets]( - [RowId] [bigint] IDENTITY(1,1) NOT NULL, - [SetName] [NVARCHAR](32) NOT NULL, - [Label] [NVARCHAR](32) NOT NULL, - [ObjectId] nvarchar(128) NULL, - [Created] [DATETIME] NULL, - [CreatedBy] [dbo].[USERID] NULL, - [Modified] [DATETIME] NULL, - [ModifiedBy] [dbo].[USERID] NULL, - [DiCreated] [DATETIME] NULL, - [DiModified] [DATETIME] NULL, - [DiCreatedBy] [dbo].[USERID] NULL, - [DiModifiedBy] [dbo].[USERID] NULL, - Container entityId NOT NULL - - CONSTRAINT [pk_snprc_r24_lookupsets] PRIMARY KEY ( [RowId] ASC) - CONSTRAINT [fk_snprc_r24_lookupsets_container] FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) ); + [RowId] [bigint] IDENTITY(1,1) NOT NULL, + [SetName] [NVARCHAR](32) NOT NULL, + [Label] [NVARCHAR](32) NOT NULL, + [ObjectId] nvarchar(128) NULL, + [Created] [DATETIME] NULL, + [CreatedBy] [dbo].[USERID] NULL, + [Modified] [DATETIME] NULL, + [ModifiedBy] [dbo].[USERID] NULL, + [DiCreated] [DATETIME] NULL, + [DiModified] [DATETIME] NULL, + [DiCreatedBy] [dbo].[USERID] NULL, + [DiModifiedBy] [dbo].[USERID] NULL, + Container entityId NOT NULL, + + CONSTRAINT [pk_snprc_r24_lookupsets] PRIMARY KEY ([RowId] ASC), + CONSTRAINT [fk_snprc_r24_lookupsets_container] FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) +); GO -CREATE UNIQUE NONCLUSTERED INDEX [idx_snprc_r24_lookupSets_setname] ON [snprc_r24].[lookupSets] ( [SetName] ASC ) +CREATE UNIQUE NONCLUSTERED INDEX [idx_snprc_r24_lookupSets_setname] ON [snprc_r24].[lookupSets] ( [SetName] ASC ); GO -ALTER TABLE [snprc_r24].[LookupSets] ADD DEFAULT (NEWID()) FOR [ObjectId] +ALTER TABLE [snprc_r24].[LookupSets] ADD DEFAULT (NEWID()) FOR [ObjectId]; GO CREATE TABLE [snprc_r24].[lookups]( - [RowId] [bigint] IDENTITY(1,1) NOT NULL, - [SetName] [NVARCHAR](32) NOT NULL, - [Value] [NVARCHAR](128) NOT NULL, - [SortOrder] [INTEGER] NULL, - [DateDisabled] [datetime] NULL, - [ObjectId] nvarchar(128) NULL, - [Created] [DATETIME] NULL, - [CreatedBy] [dbo].[USERID] NULL, - [Modified] [DATETIME] NULL, - [ModifiedBy] [dbo].[USERID] NULL, - [DiCreated] [DATETIME] NULL, - [DiModified] [DATETIME] NULL, - [DiCreatedBy] [dbo].[USERID] NULL, - [DiModifiedBy] [dbo].[USERID] NULL, - Container entityId NOT NULL - - CONSTRAINT [pk_snprc_r24_lookups] PRIMARY KEY ( [RowId] ASC), - CONSTRAINT [fk_snprc_r24_lookups_SetName] FOREIGN KEY (SetName) REFERENCES snprc_r24.LookupSets (SetName), - CONSTRAINT [fk_snprc_r24_lookups_container] FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) ); + [RowId] [bigint] IDENTITY(1,1) NOT NULL, + [SetName] [NVARCHAR](32) NOT NULL, + [Value] [NVARCHAR](128) NOT NULL, + [SortOrder] [INTEGER] NULL, + [DateDisabled] [datetime] NULL, + [ObjectId] nvarchar(128) NULL, + [Created] [DATETIME] NULL, + [CreatedBy] [dbo].[USERID] NULL, + [Modified] [DATETIME] NULL, + [ModifiedBy] [dbo].[USERID] NULL, + [DiCreated] [DATETIME] NULL, + [DiModified] [DATETIME] NULL, + [DiCreatedBy] [dbo].[USERID] NULL, + [DiModifiedBy] [dbo].[USERID] NULL, + Container entityId NOT NULL, + + CONSTRAINT [pk_snprc_r24_lookups] PRIMARY KEY ([RowId] ASC), + CONSTRAINT [fk_snprc_r24_lookups_SetName] FOREIGN KEY (SetName) REFERENCES snprc_r24.LookupSets (SetName), + CONSTRAINT [fk_snprc_r24_lookups_container] FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) +); GO -CREATE UNIQUE NONCLUSTERED INDEX [idx_snprc_r24_lookups_setname] ON [snprc_r24].[lookups] ( [SetName] ASC, [VALUE] ASC) +CREATE UNIQUE NONCLUSTERED INDEX [idx_snprc_r24_lookups_setname] ON [snprc_r24].[lookups] ( [SetName] ASC, [VALUE] ASC); GO -ALTER TABLE [snprc_r24].[Lookups] ADD DEFAULT (NEWID()) FOR [ObjectId] +ALTER TABLE [snprc_r24].[Lookups] ADD DEFAULT (NEWID()) FOR [ObjectId]; GO -/* snprc_r24-18.10-18.20.sql */ - ALTER TABLE snprc_r24.SampleInventory ADD SampleWeight NUMERIC(7,2) NULL; ALTER TABLE snprc_r24.SampleInventory ADD SampleAmount NUMERIC(7,2) NULL; CREATE TABLE [snprc_r24].[RowsToDelete]( -[ObjectId] [dbo].[EntityId] NOT NULL, -[Modified] [DATETIME] NOT NULL -CONSTRAINT [pk_snprc_r24_RowsToDelete] PRIMARY KEY ( [ObjectId] ASC) ); + [ObjectId] [dbo].[EntityId] NOT NULL, + [Modified] [DATETIME] NOT NULL, + + CONSTRAINT [pk_snprc_r24_RowsToDelete] PRIMARY KEY ([ObjectId] ASC) +); GO CREATE TABLE [snprc_r24].[WeightStaging] ( -[AnimalId] [NVARCHAR](32) NOT NULL, -[Date] [DATETIME] NOT NULL, -[Weight] [NUMERIC](7,4) NOT NULL, -[ObjectId] [dbo].EntityId NOT NULL, -[Created] [DATETIME] NULL, -[CreatedBy] [dbo].[USERID] NULL, -[Modified] [DATETIME] NULL, -[ModifiedBy] [dbo].[USERID] NULL - -CONSTRAINT [pk_snprc_r24_weight_staging] PRIMARY KEY ( [ObjectId] ASC) ); + [AnimalId] [NVARCHAR](32) NOT NULL, + [Date] [DATETIME] NOT NULL, + [Weight] [NUMERIC](7,4) NOT NULL, + [ObjectId] [dbo].EntityId NOT NULL, + [Created] [DATETIME] NULL, + [CreatedBy] [dbo].[USERID] NULL, + [Modified] [DATETIME] NULL, + [ModifiedBy] [dbo].[USERID] NULL, + + CONSTRAINT [pk_snprc_r24_weight_staging] PRIMARY KEY ([ObjectId] ASC) +); GO -/* 24.xxx SQL scripts */ - -ALTER TABLE snprc_r24.WeightStaging ALTER COLUMN Weight FLOAT \ No newline at end of file +ALTER TABLE snprc_r24.WeightStaging ALTER COLUMN Weight FLOAT; From d21dced1220c0cefe8892f88295d8b2dfd96ec8b Mon Sep 17 00:00:00 2001 From: Adam Rauch Date: Wed, 11 Feb 2026 16:24:36 -0800 Subject: [PATCH 09/11] Reorder --- .../schemas/dbscripts/sqlserver/snprc_r24-0.000-25.000.sql | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/snprc_r24/resources/schemas/dbscripts/sqlserver/snprc_r24-0.000-25.000.sql b/snprc_r24/resources/schemas/dbscripts/sqlserver/snprc_r24-0.000-25.000.sql index 8f7eec68..b3d3267d 100644 --- a/snprc_r24/resources/schemas/dbscripts/sqlserver/snprc_r24-0.000-25.000.sql +++ b/snprc_r24/resources/schemas/dbscripts/sqlserver/snprc_r24-0.000-25.000.sql @@ -70,6 +70,9 @@ GO ALTER TABLE [snprc_r24].[SampleInventory] ADD DEFAULT (NEWID()) FOR [ObjectId]; GO +ALTER TABLE snprc_r24.SampleInventory ADD SampleWeight NUMERIC(7,2) NULL; +ALTER TABLE snprc_r24.SampleInventory ADD SampleAmount NUMERIC(7,2) NULL; + CREATE TABLE [snprc_r24].[lookupSets]( [RowId] [bigint] IDENTITY(1,1) NOT NULL, [SetName] [NVARCHAR](32) NOT NULL, @@ -125,9 +128,6 @@ GO ALTER TABLE [snprc_r24].[Lookups] ADD DEFAULT (NEWID()) FOR [ObjectId]; GO -ALTER TABLE snprc_r24.SampleInventory ADD SampleWeight NUMERIC(7,2) NULL; -ALTER TABLE snprc_r24.SampleInventory ADD SampleAmount NUMERIC(7,2) NULL; - CREATE TABLE [snprc_r24].[RowsToDelete]( [ObjectId] [dbo].[EntityId] NOT NULL, [Modified] [DATETIME] NOT NULL, From 56ee307b63607cce04a245316a5e1cd6192aeb59 Mon Sep 17 00:00:00 2001 From: Adam Rauch Date: Wed, 11 Feb 2026 16:31:29 -0800 Subject: [PATCH 10/11] Clean up script --- .../sqlserver/snprc_r24-0.000-25.000.sql | 29 +++++-------------- 1 file changed, 7 insertions(+), 22 deletions(-) diff --git a/snprc_r24/resources/schemas/dbscripts/sqlserver/snprc_r24-0.000-25.000.sql b/snprc_r24/resources/schemas/dbscripts/sqlserver/snprc_r24-0.000-25.000.sql index b3d3267d..e3e44abd 100644 --- a/snprc_r24/resources/schemas/dbscripts/sqlserver/snprc_r24-0.000-25.000.sql +++ b/snprc_r24/resources/schemas/dbscripts/sqlserver/snprc_r24-0.000-25.000.sql @@ -22,7 +22,7 @@ CREATE TABLE [snprc_R24].[Biomarkers]( [SampleId] [NVARCHAR](32) NOT NULL, [Lab] [nvarchar](128) NULL, [Analyte] [nvarchar](128) NOT NULL, - [ObjectId] nvarchar(128), + [ObjectId] nvarchar(128) DEFAULT (NEWID()) NULL, [Value] numeric(6,2), [Created] [DATETIME] NULL, [CreatedBy] [dbo].[USERID] NULL, @@ -40,9 +40,6 @@ CREATE TABLE [snprc_R24].[Biomarkers]( go -ALTER TABLE [snprc_r24].[Biomarkers] ADD DEFAULT (NEWID()) FOR [ObjectId] -GO - CREATE TABLE [snprc_r24].[SampleInventory]( [RowId] [bigint] IDENTITY(1,1) NOT NULL, [AnimalId] [NVARCHAR](32) NOT NULL, @@ -50,7 +47,7 @@ CREATE TABLE [snprc_r24].[SampleInventory]( [SampleId] [NVARCHAR](32) NOT NULL, [Aim] [NVARCHAR](128) NULL, [SampleType] [NVARCHAR](128) NOT NULL, - [ObjectId] nvarchar(128) NULL, + [ObjectId] nvarchar(128) DEFAULT (NEWID()) NULL, [Created] [DATETIME] NULL, [CreatedBy] [dbo].[USERID] NULL, [Modified] [DATETIME] NULL, @@ -60,6 +57,8 @@ CREATE TABLE [snprc_r24].[SampleInventory]( [DiCreatedBy] [dbo].[USERID] NULL, [DiModifiedBy] [dbo].[USERID] NULL, Container entityId NOT NULL, + SampleWeight NUMERIC(7,2) NULL, + SampleAmount NUMERIC(7,2) NULL, CONSTRAINT [pk_snprc_r24_sampleinventory] PRIMARY KEY ([SampleId] ASC), CONSTRAINT [fk_snprc_r24_sampleinventory_container] FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) @@ -67,17 +66,11 @@ CREATE TABLE [snprc_r24].[SampleInventory]( GO -ALTER TABLE [snprc_r24].[SampleInventory] ADD DEFAULT (NEWID()) FOR [ObjectId]; -GO - -ALTER TABLE snprc_r24.SampleInventory ADD SampleWeight NUMERIC(7,2) NULL; -ALTER TABLE snprc_r24.SampleInventory ADD SampleAmount NUMERIC(7,2) NULL; - CREATE TABLE [snprc_r24].[lookupSets]( [RowId] [bigint] IDENTITY(1,1) NOT NULL, [SetName] [NVARCHAR](32) NOT NULL, [Label] [NVARCHAR](32) NOT NULL, - [ObjectId] nvarchar(128) NULL, + [ObjectId] nvarchar(128) DEFAULT (NEWID()) NULL, [Created] [DATETIME] NULL, [CreatedBy] [dbo].[USERID] NULL, [Modified] [DATETIME] NULL, @@ -96,16 +89,13 @@ GO CREATE UNIQUE NONCLUSTERED INDEX [idx_snprc_r24_lookupSets_setname] ON [snprc_r24].[lookupSets] ( [SetName] ASC ); GO -ALTER TABLE [snprc_r24].[LookupSets] ADD DEFAULT (NEWID()) FOR [ObjectId]; -GO - CREATE TABLE [snprc_r24].[lookups]( [RowId] [bigint] IDENTITY(1,1) NOT NULL, [SetName] [NVARCHAR](32) NOT NULL, [Value] [NVARCHAR](128) NOT NULL, [SortOrder] [INTEGER] NULL, [DateDisabled] [datetime] NULL, - [ObjectId] nvarchar(128) NULL, + [ObjectId] nvarchar(128) DEFAULT (NEWID()) NULL, [Created] [DATETIME] NULL, [CreatedBy] [dbo].[USERID] NULL, [Modified] [DATETIME] NULL, @@ -125,9 +115,6 @@ GO CREATE UNIQUE NONCLUSTERED INDEX [idx_snprc_r24_lookups_setname] ON [snprc_r24].[lookups] ( [SetName] ASC, [VALUE] ASC); GO -ALTER TABLE [snprc_r24].[Lookups] ADD DEFAULT (NEWID()) FOR [ObjectId]; -GO - CREATE TABLE [snprc_r24].[RowsToDelete]( [ObjectId] [dbo].[EntityId] NOT NULL, [Modified] [DATETIME] NOT NULL, @@ -140,7 +127,7 @@ GO CREATE TABLE [snprc_r24].[WeightStaging] ( [AnimalId] [NVARCHAR](32) NOT NULL, [Date] [DATETIME] NOT NULL, - [Weight] [NUMERIC](7,4) NOT NULL, + [Weight] [FLOAT] NOT NULL, [ObjectId] [dbo].EntityId NOT NULL, [Created] [DATETIME] NULL, [CreatedBy] [dbo].[USERID] NULL, @@ -151,5 +138,3 @@ CREATE TABLE [snprc_r24].[WeightStaging] ( ); GO - -ALTER TABLE snprc_r24.WeightStaging ALTER COLUMN Weight FLOAT; From 1a6df22aa47b25275d720de7fb2a4ec9920dc292 Mon Sep 17 00:00:00 2001 From: Adam Rauch Date: Thu, 12 Feb 2026 11:13:23 -0800 Subject: [PATCH 11/11] Support PostgreSQL --- snprc_genetics/module.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/snprc_genetics/module.properties b/snprc_genetics/module.properties index d41cfed2..ed88888a 100644 --- a/snprc_genetics/module.properties +++ b/snprc_genetics/module.properties @@ -1,5 +1,5 @@ ModuleClass: org.labkey.snprc_genetics.SNPRC_GeneticsModule -SupportedDatabases: mssql +SupportedDatabases: mssql, pgsql License: Apache 2.0 LicenseURL: http://www.apache.org/licenses/LICENSE-2.0 ManageVersion: true