Remove duplication for digital reporting
This commit is contained in:
parent
582c52957d
commit
a4a6c95cb6
@ -1,9 +1,76 @@
|
||||
config {
|
||||
type: "table",
|
||||
schema: "pphe_five9_gold",
|
||||
tags: ["daily"],
|
||||
uniqueKey: ["SESSION_GUID"],
|
||||
assertions: {
|
||||
uniqueKey: ["SESSION_GUID"],
|
||||
nonNull: ["SESSION_GUID", "AGENT_GROUP_ID", "MEDIA_TYPE_ID", "SKILL_ID"],
|
||||
rowConditions: [
|
||||
'DISPOSITION_GROUP <> "NOT_MAPPED"',
|
||||
'CAMPAIGN_GROUP <> "NOT_MAPPED"',
|
||||
'DISPOSITION_ID <> 0',
|
||||
'DISPOSITION_GROUP_ID <> 0',
|
||||
'CAMPAIGN_ID <> 0',
|
||||
'CAMPAIGN_GROUP_ID <> 0',
|
||||
]
|
||||
},
|
||||
tags: ["digital_report"],
|
||||
description: "Exporting last 7 days of DIGITAL table."
|
||||
}
|
||||
|
||||
select *
|
||||
from ${ref("stg_digital_report")}
|
||||
--Extraction and transformation of fields that are used in Board load further. Contains last 7 days
|
||||
select d.SESSION_GUID,
|
||||
d.TIMESTAMP,
|
||||
date(d.TIMESTAMP) DATE,
|
||||
EXTRACT(HOUR FROM d.TIMESTAMP) HOUR,
|
||||
EXTRACT(MONTH FROM d.TIMESTAMP) MONTH,
|
||||
EXTRACT(YEAR FROM d.TIMESTAMP) YEAR,
|
||||
d.STATUS,
|
||||
p.BOARD_PROPERTY_GROUP,
|
||||
d.AGENT_ID,
|
||||
d.AGENT_NAME,
|
||||
a.LANGUAGES,
|
||||
a.CODE LANGUAGE_ID,
|
||||
a.AGENT_GROUP_ID,
|
||||
d.AGENT_GROUP,
|
||||
COALESCE(dis.DISPOSITION_ID, 0) as DISPOSITION_ID,
|
||||
d.DISPOSITION,
|
||||
COALESCE(dis.DISPOSITION_GROUP_ID, 0) as DISPOSITION_GROUP_ID,
|
||||
COALESCE(dis.DISPOSITION_GROUP, 'NOT_MAPPED') as DISPOSITION_GROUP,
|
||||
d.MEDIA_TYPE,
|
||||
m.MEDIA_TYPE_ID,
|
||||
COALESCE(c.CAMPAIGN_ID, 0) as CAMPAIGN_ID,
|
||||
d.CAMPAIGN,
|
||||
COALESCE(c.CAMPAIGN_GROUP_ID, 0) as CAMPAIGN_GROUP_ID,
|
||||
COALESCE(c.CAMPAIGN_GROUP, 'NOT_MAPPED') as CAMPAIGN_GROUP,
|
||||
d.SKILL,
|
||||
s.SKILL_ID,
|
||||
d.HANDLE_TIME,
|
||||
d.HANDLE_TIME_FORMATTED,
|
||||
d.TRANSFERS_TO_SKILL,
|
||||
d.INTERACTIONS,
|
||||
d.QUEUE_TIME,
|
||||
d.QUEUE_TIME_FORMATTED,
|
||||
case
|
||||
when d.AGENT_ID = '0' and d.DISPOSITION = '[Not Defined]'
|
||||
then 1
|
||||
else 0
|
||||
end QUEUE,
|
||||
d.END_TIME,
|
||||
d.AFTER_CHAT_WORK,
|
||||
d.AFTER_CHAT_WORK_FORMATTED,
|
||||
from ${ref("stg_digital")} d
|
||||
left join ${ref("stg_AGENT")} a
|
||||
on d.AGENT_ID = a.AGENT_ID
|
||||
left join ${ref("stg_DISPOSITION")} dis
|
||||
on d.DISPOSITION = dis.DISPOSITION
|
||||
left join ${ref("stg_CAMPAIGN")} c
|
||||
on d.CAMPAIGN = c.CAMPAIGN
|
||||
left join ${ref("MAPPING_PROPERTY_DIGITAL")} p
|
||||
on c.CAMPAIGN_ID = p.CAMPAIGN_ID
|
||||
left join ${ref("MAPPING_SKILL")} s
|
||||
on d.SKILL = s.SKILL
|
||||
left join ${ref("MAPPING_MEDIA_TYPE")} m
|
||||
on d.MEDIA_TYPE = m.MEDIA_TYPE
|
||||
where date(d.TIMESTAMP) >= DATE_SUB(CURRENT_DATE(), INTERVAL 7 DAY)
|
||||
and date(d.TIMESTAMP) < CURRENT_DATE()
|
||||
@ -1,76 +0,0 @@
|
||||
config {
|
||||
type: "table",
|
||||
uniqueKey: ["SESSION_GUID"],
|
||||
schema: "pphe_five9_stg",
|
||||
assertions: {
|
||||
uniqueKey: ["SESSION_GUID"],
|
||||
nonNull: ["SESSION_GUID", "AGENT_GROUP_ID", "MEDIA_TYPE_ID", "SKILL_ID"],
|
||||
rowConditions: [
|
||||
'DISPOSITION_GROUP <> "NOT_MAPPED"',
|
||||
'CAMPAIGN_GROUP <> "NOT_MAPPED"',
|
||||
'DISPOSITION_ID <> 0',
|
||||
'DISPOSITION_GROUP_ID <> 0',
|
||||
'CAMPAIGN_ID <> 0',
|
||||
'CAMPAIGN_GROUP_ID <> 0',
|
||||
]
|
||||
},
|
||||
tags: ["digital_report"],
|
||||
description: "Main digital data for report"
|
||||
}
|
||||
|
||||
--Extraction and transformation of fields that are used in Board load further. Contains last 7 days
|
||||
select d.SESSION_GUID,
|
||||
d.TIMESTAMP,
|
||||
date(d.TIMESTAMP) DATE,
|
||||
EXTRACT(HOUR FROM d.TIMESTAMP) HOUR,
|
||||
EXTRACT(MONTH FROM d.TIMESTAMP) MONTH,
|
||||
EXTRACT(YEAR FROM d.TIMESTAMP) YEAR,
|
||||
d.STATUS,
|
||||
p.BOARD_PROPERTY_GROUP,
|
||||
d.AGENT_ID,
|
||||
d.AGENT_NAME,
|
||||
a.LANGUAGES,
|
||||
a.CODE LANGUAGE_ID,
|
||||
a.AGENT_GROUP_ID,
|
||||
d.AGENT_GROUP,
|
||||
COALESCE(dis.DISPOSITION_ID, 0) as DISPOSITION_ID,
|
||||
d.DISPOSITION,
|
||||
COALESCE(dis.DISPOSITION_GROUP_ID, 0) as DISPOSITION_GROUP_ID,
|
||||
COALESCE(dis.DISPOSITION_GROUP, 'NOT_MAPPED') as DISPOSITION_GROUP,
|
||||
d.MEDIA_TYPE,
|
||||
m.MEDIA_TYPE_ID,
|
||||
COALESCE(c.CAMPAIGN_ID, 0) as CAMPAIGN_ID,
|
||||
d.CAMPAIGN,
|
||||
COALESCE(c.CAMPAIGN_GROUP_ID, 0) as CAMPAIGN_GROUP_ID,
|
||||
COALESCE(c.CAMPAIGN_GROUP, 'NOT_MAPPED') as CAMPAIGN_GROUP,
|
||||
d.SKILL,
|
||||
s.SKILL_ID,
|
||||
d.HANDLE_TIME,
|
||||
d.HANDLE_TIME_FORMATTED,
|
||||
d.TRANSFERS_TO_SKILL,
|
||||
d.INTERACTIONS,
|
||||
d.QUEUE_TIME,
|
||||
d.QUEUE_TIME_FORMATTED,
|
||||
case
|
||||
when d.AGENT_ID = '0' and d.DISPOSITION = '[Not Defined]'
|
||||
then 1
|
||||
else 0
|
||||
end QUEUE,
|
||||
d.END_TIME,
|
||||
d.AFTER_CHAT_WORK,
|
||||
d.AFTER_CHAT_WORK_FORMATTED,
|
||||
from ${ref("stg_digital")} d
|
||||
left join ${ref("stg_AGENT")} a
|
||||
on d.AGENT_ID = a.AGENT_ID
|
||||
left join ${ref("stg_DISPOSITION")} dis
|
||||
on d.DISPOSITION = dis.DISPOSITION
|
||||
left join ${ref("stg_CAMPAIGN")} c
|
||||
on d.CAMPAIGN = c.CAMPAIGN
|
||||
left join ${ref("MAPPING_PROPERTY_DIGITAL")} p
|
||||
on c.CAMPAIGN_ID = p.CAMPAIGN_ID
|
||||
left join ${ref("MAPPING_SKILL")} s
|
||||
on d.SKILL = s.SKILL
|
||||
left join ${ref("MAPPING_MEDIA_TYPE")} m
|
||||
on d.MEDIA_TYPE = m.MEDIA_TYPE
|
||||
where date(d.TIMESTAMP) >= DATE_SUB(CURRENT_DATE(), INTERVAL 7 DAY)
|
||||
and date(d.TIMESTAMP) < CURRENT_DATE()
|
||||
Loading…
Reference in New Issue
Block a user