Endo Compliance_Updated RA heatmap SQL
Endo Compliance_Updated RA heatmap SQL
"Country Group",
"Entity",
"Monitoring Year",
"Activity Type",
Round(Avg(yy."Risk sum"), 1) AS "Risk Sum Final",
Round(Avg(yy."Control sum"),1) AS "Control Sum Final"
FROM (
SELECT "Business Unit",
"Country Group",
"Entity",
"Monitoring Year",
"Activity Type",
"Risk Override",
"Risk Rating",
CASE
WHEN "Risk Override" IS NULL
OR "Risk Override" = '' THEN "Risk_Attributes_Sum"
AS "Activity Type",
1* Cast(Split_part(TRANSACTION->>'SD', '-', 1) AS NUMERIC) + 1*
Cast(Split_part(TRANSACTION->>'VF', '-', 1) AS NUMERIC)
+3 * Cast(Split_part(TRANSACTION->>'EER', '-', 1) AS NUMERIC)
+2*Cast(Split_part(TRANSACTION->>'TPI', '-', 1) AS NUMERIC) +
1* Cast(Split_part(TRANSACTION->>'OR', '-', 1) AS NUMERIC) AS
"Risk_Attributes_Sum",
UNION ALL
SELECT "Business Unit",
"Country Group",
"Entity",
"Monitoring Year",
"Activity Type",
Round(Avg(yy."Risk sum"), 1) AS "Risk Sum Final",
Round(Avg(yy."Control sum"),1) AS "Control Sum Final"
FROM (
SELECT "Business Unit",
"Country Group",
"Entity",
"Monitoring Year",
"Activity Type",
"Risk Override",
"Risk Rating",
CASE
WHEN "Risk Override" IS NULL
OR "Risk Override" = '' THEN "Risk_Attributes_Sum"
WHEN "Risk Override" = 'Yellow - Moderate'
AND Cast( "Risk Rating" AS NUMERIC) BETWEEN 10 AND 25 THEN Round(((26 - Cast(
xx."Risk Rating" AS NUMERIC))/2 + Cast( xx."Risk_Attributes_Sum" AS NUMERIC)), 1)
WHEN "Risk Override" = 'Green - Low'
AND Cast( "Risk Rating" AS NUMERIC) BETWEEN 26 AND 35 THEN Round(((25 - Cast(
xx."Risk Rating" AS NUMERIC))/2 + Cast( xx."Risk_Attributes_Sum" AS NUMERIC)), 1)
WHEN "Risk Override" = 'Orange - High'
AND Cast( "Risk Rating" AS NUMERIC) BETWEEN 26 AND 35 THEN Round(((36 - Cast(
xx."Risk Rating" AS NUMERIC))/2 + Cast( xx."Risk_Attributes_Sum" AS NUMERIC)), 1)
WHEN "Risk Override" = 'Yellow - Moderate'
AND Cast( "Risk Rating" AS NUMERIC) BETWEEN 36 AND 50 THEN Round(((35 - Cast(
xx."Risk Rating" AS NUMERIC))/2 + Cast( xx."Risk_Attributes_Sum" AS NUMERIC)), 1)
END AS "Risk sum",
CASE
WHEN "Risk Override" IS NULL
OR "Risk Override" = '' THEN "Control_Attributes_Sum"
WHEN "Risk Override" = 'Yellow - Moderate'
AND Cast( "Risk Rating" AS NUMERIC) BETWEEN 10 AND 25 THEN Round(((26 - Cast(
xx."Risk Rating" AS NUMERIC))/2 + Cast( xx."Control_Attributes_Sum" AS NUMERIC)),
1)
WHEN "Risk Override" = 'Green - Low'
AND Cast( "Risk Rating" AS NUMERIC) BETWEEN 26 AND 35 THEN Round(((25 - Cast(
xx."Risk Rating" AS NUMERIC))/2 + Cast( xx."Control_Attributes_Sum" AS NUMERIC)),
1)
WHEN "Risk Override" = 'Orange - High'
AND Cast( "Risk Rating" AS NUMERIC) BETWEEN 26 AND 35 THEN Round(((36 - Cast(
xx."Risk Rating" AS NUMERIC))/2 + Cast( xx."Control_Attributes_Sum" AS NUMERIC)),
1)
WHEN "Risk Override" = 'Yellow - Moderate'
AND Cast( "Risk Rating" AS NUMERIC) BETWEEN 36 AND 50 THEN Round(((35 - Cast(
xx."Risk Rating" AS NUMERIC))/2 + Cast( xx."Control_Attributes_Sum" AS NUMERIC)),
1)
END AS "Control sum"
FROM (
SELECT a.id
AS "Transaction_id",
d.cluster_name
AS "Business Unit",
e.country_group_name
AS "Country Group",
f.entity_name
AS "Entity",
TRANSACTION->>'YR'
AS "Monitoring Year",
TRANSACTION->>'RR'
AS "Risk Rating",
TRANSACTION->>'RO'
AS "Risk Override",
TRANSACTION->>'AT'
AS "Activity Type",
Cast(Split_part(TRANSACTION->>'SD', '-', 1) AS NUMERIC) +
Cast(Split_part(TRANSACTION->>'VF', '-', 1) AS NUMERIC)
+Cast(Split_part(TRANSACTION->>'EER', '-', 1) AS NUMERIC) +
Cast(Split_part(TRANSACTION->>'IS', '-', 1) AS NUMERIC)
+Cast(Split_part(TRANSACTION->>'OR', '-', 1) AS NUMERIC) AS "Risk_Attributes_Sum",
Cast(Split_part(TRANSACTION->>'PPT', '-', 1) AS NUMERIC) +
Cast(Split_part(TRANSACTION->>'ST', '-', 1) AS NUMERIC)
+Cast(Split_part(TRANSACTION->>'TPI', '-', 1) AS NUMERIC) +
Cast(Split_part(TRANSACTION->>'BLM', '-', 1) AS NUMERIC)
+Cast(Split_part(TRANSACTION->>'MA', '-', 1) AS NUMERIC) AS
"Control_Attributes_Sum"
FROM "prestage".TRANSACTION a
INNER JOIN "prestage".datasource b
ON a.datasource_id = b.id
LEFT OUTER JOIN "prestage".cluster d
ON a.cluster_id = d.id
LEFT OUTER JOIN "prestage".country_group e
ON a.country_group_id = e.id
LEFT OUTER JOIN "prestage".entity f
ON a.entity_id = f.id
WHERE datasource_name ilike 'Risk_Assessment_Template%' AND TRANSACTION-
>>'YR' <= '2024'
AND transaction_status!='0')xx)yy
GROUP BY "Activity Type",
yy."Business Unit",
yy."Country Group",
yy."Entity",
yy."Monitoring Year"