From 97c3a3d78f27a5c571c12525c9f7c1894efc0aa5 Mon Sep 17 00:00:00 2001 From: Ohsudev <76500320+Ohsudev@users.noreply.github.com> Date: Sat, 6 Apr 2024 01:29:42 -0700 Subject: [PATCH] Modified Compliance Xcel formatting reports. --- .../EmployeeAssignedStatus.query.xml | 12 ++ .../EmployeeAssignedStatus.sql | 4 + .../EmployeeToLocationXcel.query.xml | 10 + .../EmployeeToLocationXcel.sql | 12 ++ .../EmployeeToRequirementsXcel.query.xml | 10 + .../EmployeeToRequirementsXcel.sql | 8 + .../Employee_Assigned_Location.query.xml | 53 +++++ .../Employee_Reference_Data.query.xml | 40 ++++ .../employeeTraining.query.xml | 93 ++++++++ .../onprc_ehr_compliancedb-24.005-24.006.sql | 184 ++++++++++++++++ .../schemas/onprc_ehr_compliancedb.xml | 203 ++++++++++++++++++ .../ONPRC_EHR_ComplianceDBModule.java | 2 +- 12 files changed, 630 insertions(+), 1 deletion(-) create mode 100644 ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeAssignedStatus.query.xml create mode 100644 ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeAssignedStatus.sql create mode 100644 ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeToLocationXcel.query.xml create mode 100644 ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeToLocationXcel.sql create mode 100644 ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeToRequirementsXcel.query.xml create mode 100644 ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeToRequirementsXcel.sql create mode 100644 ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/Employee_Assigned_Location.query.xml create mode 100644 ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/Employee_Reference_Data.query.xml create mode 100644 ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/employeeTraining.query.xml create mode 100644 ONPRC_EHR_ComplianceDB/resources/schemas/dbscripts/sqlserver/onprc_ehr_compliancedb-24.005-24.006.sql diff --git a/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeAssignedStatus.query.xml b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeAssignedStatus.query.xml new file mode 100644 index 000000000..6e5b2d1f1 --- /dev/null +++ b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeAssignedStatus.query.xml @@ -0,0 +1,12 @@ + + + + + Employee Assigned Status + + + +
+
+
+
\ No newline at end of file diff --git a/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeAssignedStatus.sql b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeAssignedStatus.sql new file mode 100644 index 000000000..9bf3300d7 --- /dev/null +++ b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeAssignedStatus.sql @@ -0,0 +1,4 @@ + +Select value from ehr_compliancedb.employee_Reference_Data +Where columnname = 'training_status' + And endDate is null diff --git a/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeToLocationXcel.query.xml b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeToLocationXcel.query.xml new file mode 100644 index 000000000..866eb336f --- /dev/null +++ b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeToLocationXcel.query.xml @@ -0,0 +1,10 @@ + + + + + Employee To Training Location PIVOT + +
+
+
+
diff --git a/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeToLocationXcel.sql b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeToLocationXcel.sql new file mode 100644 index 000000000..0bbb165e1 --- /dev/null +++ b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeToLocationXcel.sql @@ -0,0 +1,12 @@ +select + + coalesce(jj.location, '') as location, + + jj.employeeid as employeeid + + +from ehr_compliancedb.employee_assigned_location jj + +group by jj.employeeid, jj.location + + PIVOT location by employeeid \ No newline at end of file diff --git a/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeToRequirementsXcel.query.xml b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeToRequirementsXcel.query.xml new file mode 100644 index 000000000..8786133e6 --- /dev/null +++ b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeToRequirementsXcel.query.xml @@ -0,0 +1,10 @@ + + + + + Employee To Requirement Name PIVOT + +
+
+
+
diff --git a/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeToRequirementsXcel.sql b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeToRequirementsXcel.sql new file mode 100644 index 000000000..f5bd02e94 --- /dev/null +++ b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeToRequirementsXcel.sql @@ -0,0 +1,8 @@ +select + jj.employeeid as employeeid, + coalesce(jj.requirementname, '') as requirementname +from ehr_compliancedb.employeeTraining jj where + jj.employeeid in (select ss.employeeid from ehr_compliancedb.Employees ss where ss.MajorUDDS = 'OPS - ASB') + +group by jj.employeeid, jj.Requirementname + PIVOT requirementname by employeeid diff --git a/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/Employee_Assigned_Location.query.xml b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/Employee_Assigned_Location.query.xml new file mode 100644 index 000000000..b31c69aa6 --- /dev/null +++ b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/Employee_Assigned_Location.query.xml @@ -0,0 +1,53 @@ + + + + + Employee Assigned Areas + + + + + ehr_compliancedb + employees + employeeId + + + + + + ehr_compliancedb + employees + employeeId + + + + + + ehr_compliancedb + employeeAssignedStatus + value + + + + true + + + + true + + + + ehr + tasks + taskid + rowid + + + + true + + +
+
+
+
\ No newline at end of file diff --git a/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/Employee_Reference_Data.query.xml b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/Employee_Reference_Data.query.xml new file mode 100644 index 000000000..48b277933 --- /dev/null +++ b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/Employee_Reference_Data.query.xml @@ -0,0 +1,40 @@ + + + + + Employee Reference Data + + + + true + + + Host Name + + + End Date + + + true + + + Column Name + + + + + + + + + true + + + + true + + +
+
+
+
diff --git a/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/employeeTraining.query.xml b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/employeeTraining.query.xml new file mode 100644 index 000000000..55a0f2115 --- /dev/null +++ b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/employeeTraining.query.xml @@ -0,0 +1,93 @@ + + + + + Employee Requirement Details + + + + + ehr_compliancedb + employees + employeeId + + + + + + true + + + + true + + + true + + + Assigned_Status + + ehr_compliancedb + employeeAssignedStatus + value + + + + + + + 9FE2BF + + + + + + 6495ED + + + + + + FFBF00 + + + + + + CD5C5C + + + + + + 1F618D + + + + + Unit + + /ONPRC/Admin/Compliance + ehr_compliancedb + unit_names + unit + + + + Category + + /ONPRC/Admin/Compliance + ehr_compliancedb + employeecategory + categoryname + + + + true + + +
+
+
+
+ diff --git a/ONPRC_EHR_ComplianceDB/resources/schemas/dbscripts/sqlserver/onprc_ehr_compliancedb-24.005-24.006.sql b/ONPRC_EHR_ComplianceDB/resources/schemas/dbscripts/sqlserver/onprc_ehr_compliancedb-24.005-24.006.sql new file mode 100644 index 000000000..64cc8ac02 --- /dev/null +++ b/ONPRC_EHR_ComplianceDB/resources/schemas/dbscripts/sqlserver/onprc_ehr_compliancedb-24.005-24.006.sql @@ -0,0 +1,184 @@ + + + +-- Author: R. Blasa +-- Created: 3-21-2024 +-- Description: Stored procedure program process SciShield INitial Data +CREATE TABLE onprc_ehr_compliancedb.EmployeeTraining_Details +( + rowId INT IDENTITY(100,1) NOT NULL, + EmployeeId nvarchar(255) not null, + [requirementname] [nvarchar](3000) NULL, + [datecompleted] [datetime] NULL, + [next_training] [nvarchar](50) NULL, + [next_training_date] [datetime] NULL, + [required_training] [nchar](10) NULL, + [objectid] [dbo].[ENTITYID] NULL, + [comments] [char](500) NULL, + Container ENTITYID NOT NULL, + CreatedBy USERID, + Created datetime, + ModifiedBy USERID, + Modified datetime, + taskid entityid, + unit nvarchar(1000), + category nvarchar(1000) + + + + CONSTRAINT PK_EmployeeTraining PRIMARY KEY (rowId) + ); + +CREATE TABLE onprc_ehr_compliancedb.Employee_Reference_Data +( + rowId int identity(1,1), + label varchar(250) NULL, + value varchar(255) , + columnName varchar(255) NOT NULL, + sort_order integer null, + endDate datetime NULL, + objectid entityid + + CONSTRAINT pk_compliance_employee + + PRIMARY KEY (value) + +); + + +CREATE TABLE onprc_ehr_compliancedb.Employee_Assigned_Location +( + rowId int identity(1,1), + location varchar(500) NULL, + employeeid varchar(255), + status varchar(255) , + endDate datetime NULL, + comments varchar(500) NULL, + Container ENTITYID NOT NULL, + CreatedBy USERID, + Created datetime, + ModifiedBy USERID, + Modified datetime, + taskid entityid, + sort_order integer null, + objectid entityid + + CONSTRAINT pk_employee_location + + PRIMARY KEY (objectid) + +); + + + +-- Author: R. Blasa +-- Created: 2-10-2024 + +/* +** +** Created by +** Blasa 1-25-2024 Import process from ScieShield To Prime Compliance Module +** +** Processed codes: Null ---Not Processed +** 1 ------ Successfully posted +** 2 --------- invalid Employeeid +** 3 --------- Undefined Requirement Name +** 4--------- Already exists Compliance module +** +** +** +*/ + +CREATE Procedure onprc_ehr_compliancedb.[p_SciShieldToPrimeProcess] + + +AS + + +DECLARE + @SearchKey Int, + @TempsearchKey Int, + + +BEGIN + + ---- Reset temp table + + Delete onprc_ehr_compliancedb.SciShieldTemp + + + If @@Error <> 0 + GoTo Err_Proc + + +IF exists (Select count(*) from onprc_ehr_compliancedb.Employeetraining_Details) = 0 +BEGIN + + Insert into onprc_ehr_compliancedb.Employeetraining_Details + (employeeid, + requirementname, + datecompleted, + required_training, + objectid, + container, + unit, + category, + comments, + createdby, + created, + modifiedby, + modified + ) + +select + e.employeeid, + + + b.requirementname, + + + (select max(zz.date) from ehr_compliancedb.completiondates zz where zz.requirementname = b.requirementname and zz.employeeid= e.employeeid ) as completiondate, + + 'yes' as required_training, + + newid() as objectid, + + 'CD170458-C55F-102F-9907-5107380A54BE' as container, + + string_agg(e.unit, char(10)) , + + string_agg( e.category, char(10)) , + + + (select string_agg( k.comment, char(10)) from ehr_compliancedb.completiondates k where k.requirementname = b.requirementname and k.employeeid = e.employeeid + And k.date in (select max(zz.date) from ehr_compliancedb.completiondates zz where zz.requirementname = b.requirementname and zz.employeeid= e.employeeid )) as comments, + 1007, ------ createdby + getdate(), ------ created + 1007, + getdate() + + +from ehr_compliancedb.requirementspercategory b, ehr_compliancedb.employeeperUnit e +Where (b.category = e.category or b.unit = e.unit ) + And e.employeeid in (select distinct kk.employeeid from ehr_compliancedb.Employees kk where kk.enddate is null) + + group by e.employeeid, b.requirementname + + If @@Error <> 0 + GoTo Err_Proc + +END + +No_Records: + + RETURN 0 + + +Err_Proc: + -------Error Generated, Transfer process stopped + RETURN 1 + + +END + +GO \ No newline at end of file diff --git a/ONPRC_EHR_ComplianceDB/resources/schemas/onprc_ehr_compliancedb.xml b/ONPRC_EHR_ComplianceDB/resources/schemas/onprc_ehr_compliancedb.xml index 3e14b18cc..28f6afc69 100644 --- a/ONPRC_EHR_ComplianceDB/resources/schemas/onprc_ehr_compliancedb.xml +++ b/ONPRC_EHR_ComplianceDB/resources/schemas/onprc_ehr_compliancedb.xml @@ -157,5 +157,208 @@ + + DETAILED + + Employee Requirement Details + rowid + + + true + true + true + Key + + + Employee Id + + ehr_compliancedb + employees + employeeid + + + + Date Completed + + + + Training Status + + ehr_compliancedb + Employee_Reference_Data + value + + + + Next Training Date + + + Required Training + + + true + + + Comments + + + false + true + + core + containers + entityid + + + + true + + + true + + + + true + + + true + + + true + + + Unit + + ehr_compliancedb + unit_names + unit + + + + Category + + ehr_compliancedb + employeecategory + categoryname + + + + + Requirement Name + + ehr_compliancedb + requirements + requirementname + + + + +
+ + + DETAILED + + Compliance Reference Data + rowid + + + true + true + Key + + + true + Label + + + Value + true + + + Column Name + + + true + Sort Order + + + End Date + + + true + + +
+ + + DETAILED + + Employee Assigned Locations + rowid + + + true + true + true + Key + + + Employee Id + + ehr_compliancedb + employees + employeeid + + + + Assigned Locations + + + + Training Status + + ehr_compliancedb + Employee_Reference_Data + value + + + + + true + + + true + + + Comments + + + false + true + + core + containers + entityid + + + + true + + + true + + + + true + + + true + + + true + + + +
diff --git a/ONPRC_EHR_ComplianceDB/src/org/labkey/ONPRCEHR_ComplianceDB/ONPRC_EHR_ComplianceDBModule.java b/ONPRC_EHR_ComplianceDB/src/org/labkey/ONPRCEHR_ComplianceDB/ONPRC_EHR_ComplianceDBModule.java index 1bcde4100..b5233cb03 100644 --- a/ONPRC_EHR_ComplianceDB/src/org/labkey/ONPRCEHR_ComplianceDB/ONPRC_EHR_ComplianceDBModule.java +++ b/ONPRC_EHR_ComplianceDB/src/org/labkey/ONPRCEHR_ComplianceDB/ONPRC_EHR_ComplianceDBModule.java @@ -55,7 +55,7 @@ public String getName() @Override public Double getSchemaVersion() { - return 24.002; + return 24.006; } @Override