SGGR#87834 View/rapport fac_v_lcrap_fe_vs_key aangepast zdd de telling cf de settings worden getoond alsmede de verschillen
svn path=/Database/trunk/; revision=68684
This commit is contained in:
231
FAC/FAC_VIE.SRC
231
FAC/FAC_VIE.SRC
@@ -983,92 +983,89 @@ AS
|
||||
WHERE imp_log_applicatie = '$PutOrders$' AND imp_log_datum > SYSDATE - 10;
|
||||
|
||||
CREATE_VIEW (fac_v_lcrap_fe_vs_key_data, 0)
|
||||
(
|
||||
prs_perslid_key
|
||||
, naam
|
||||
, usertype
|
||||
, oslogin
|
||||
, last_login
|
||||
, key_user
|
||||
)
|
||||
AS
|
||||
SELECT x.prs_perslid_key,
|
||||
naam,
|
||||
usertype,
|
||||
oslogin,
|
||||
last_login,
|
||||
a.key_user,
|
||||
b.xd_user
|
||||
FROM (SELECT p.prs_perslid_key,
|
||||
(SELECT prs_perslid_naam_full
|
||||
FROM prs_v_perslid_fullnames_all pf
|
||||
WHERE pf.prs_perslid_key = p.prs_perslid_key)
|
||||
naam,
|
||||
'user'
|
||||
usertype,
|
||||
COALESCE (p.prs_perslid_oslogin, p.prs_perslid_oslogin2)
|
||||
oslogin,
|
||||
p.prs_perslid_login
|
||||
last_login
|
||||
FROM prs_v_aanwezigperslid p
|
||||
WHERE ( prs_perslid_oslogin IS NULL
|
||||
OR prs_perslid_oslogin NOT IN ('_FACILITOR', '_PUTORDERS', '_HMAIL'))
|
||||
AND EXISTS -- op basis van groep + rechten
|
||||
(SELECT 1
|
||||
FROM fac_v_webgebruiker
|
||||
WHERE prs_perslid_key = p.prs_perslid_key)
|
||||
UNION ALL
|
||||
SELECT p.prs_perslid_key,
|
||||
(SELECT prs_perslid_naam_full
|
||||
FROM prs_v_perslid_fullnames_all pf
|
||||
WHERE pf.prs_perslid_key = p.prs_perslid_key)
|
||||
naam,
|
||||
'user'
|
||||
usertype,
|
||||
COALESCE (p.prs_perslid_oslogin, p.prs_perslid_oslogin2)
|
||||
oslogin,
|
||||
NULL
|
||||
last_login -- geen login (lees zonder rechten), dus telt als nooit recent ingelogd!
|
||||
FROM prs_v_aanwezigperslid p
|
||||
WHERE NOT EXISTS -- g<EFBFBD><EFBFBD>n groep + rechten!
|
||||
(SELECT 1
|
||||
FROM fac_v_webgebruiker gg
|
||||
WHERE gg.prs_perslid_key = p.prs_perslid_key)
|
||||
AND ( fac.getsetting ('mld_allow_for_others') = 1
|
||||
OR EXISTS
|
||||
(SELECT 1
|
||||
FROM bes_disc_params dp, bes_discipline bd
|
||||
WHERE dp.bes_disc_params_for_others = 1
|
||||
AND bd.ins_discipline_key = dp.bes_ins_discipline_key
|
||||
AND bd.ins_discipline_verwijder IS NULL))
|
||||
UNION ALL -- FSN#27315: En ook eventuele "sensorusers" meetellen!
|
||||
SELECT NULL prs_perslid_key,
|
||||
sd.ins_srtdeel_omschrijving naam,
|
||||
'sensorobject' usertype,
|
||||
ins_deel_omschrijving oslogin,
|
||||
ins_deel_statedate last_login -- recent actief dus tellen als recent
|
||||
FROM ins_v_aanwezigdeel d, ins_srtdeel sd
|
||||
WHERE d.ins_srtdeel_key = sd.ins_srtdeel_key AND NVL(sd.ins_srtdeel_sensortype,0) <> 0) x
|
||||
LEFT JOIN -- 1=user heeft schrijfrechten op key-codes=notFE-codes
|
||||
(SELECT DISTINCT prs_perslid_key, 1 key_user
|
||||
FROM (SELECT g.prs_perslid_key, 1 key_user
|
||||
FROM fac_v_webgebruiker g, fac_functie f
|
||||
WHERE g.fac_functie_key = f.fac_functie_key
|
||||
AND f.fac_functie_groep IN (1, 2)
|
||||
AND g.fac_gebruiker_prs_level_write < 9
|
||||
AND g.fac_gebruiker_alg_level_write < 9
|
||||
UNION
|
||||
SELECT p.prs_perslid_key, 1 key_user
|
||||
FROM fac_groep fg, fac_gebruikersgroep fgg, prs_perslid p
|
||||
WHERE fac_groep_collega = 1
|
||||
AND fg.fac_groep_key = fgg.fac_groep_key
|
||||
AND p.prs_perslid_key = fgg.prs_perslid_key
|
||||
AND p.prs_perslid_verwijder IS NULL
|
||||
AND fg.fac_groep_key IN ( SELECT fac_groep_key
|
||||
FROM fac_gebruikersgroep
|
||||
GROUP BY fac_groep_key
|
||||
HAVING COUNT (prs_perslid_key) > 9))) a
|
||||
ON x.prs_perslid_key = a.prs_perslid_key
|
||||
LEFT JOIN -- FSN#30404: 1=user is cross-domain (xd) user
|
||||
(SELECT p.prs_perslid_key, 1 xd_user
|
||||
FROM prs_v_aanwezigperslid p, prs_v_afdeling_boom ab
|
||||
WHERE p.prs_afdeling_key = ab.prs_afdeling_key
|
||||
AND p.prs_perslid_apikey IS NOT NULL
|
||||
AND ab.prs_bedrijf_key =
|
||||
fac.safe_to_number (fac.getsetting ('xd_primary_bedrijfkey'))) b
|
||||
ON x.prs_perslid_key = b.prs_perslid_key;
|
||||
SELECT x.prs_perslid_key
|
||||
, naam
|
||||
, usertype
|
||||
, oslogin
|
||||
, last_login
|
||||
, a.key_user
|
||||
FROM (SELECT p.prs_perslid_key
|
||||
, (SELECT prs_perslid_naam_full
|
||||
FROM prs_v_perslid_fullnames_all pf
|
||||
WHERE pf.prs_perslid_key = p.prs_perslid_key)
|
||||
naam
|
||||
, 'user'
|
||||
usertype
|
||||
, COALESCE (p.prs_perslid_oslogin, p.prs_perslid_oslogin2)
|
||||
oslogin
|
||||
, p.prs_perslid_login
|
||||
last_login
|
||||
FROM prs_v_aanwezigperslid p
|
||||
WHERE ( prs_perslid_oslogin IS NULL
|
||||
OR prs_perslid_oslogin NOT IN ('_FACILITOR'
|
||||
, '_PUTORDERS'
|
||||
, '_HMAIL'
|
||||
, '_SYSTEEM'))
|
||||
AND EXISTS -- op basis van groep + rechten
|
||||
(SELECT 1
|
||||
FROM fac_v_webgebruiker
|
||||
WHERE prs_perslid_key = p.prs_perslid_key)
|
||||
UNION ALL
|
||||
SELECT p.prs_perslid_key
|
||||
, (SELECT prs_perslid_naam_full
|
||||
FROM prs_v_perslid_fullnames_all pf
|
||||
WHERE pf.prs_perslid_key = p.prs_perslid_key)
|
||||
naam
|
||||
, 'user'
|
||||
usertype
|
||||
, COALESCE (p.prs_perslid_oslogin, p.prs_perslid_oslogin2)
|
||||
oslogin
|
||||
, NULL
|
||||
last_login -- geen login (lees zonder rechten), dus telt als nooit recent ingelogd!
|
||||
FROM prs_v_aanwezigperslid p
|
||||
WHERE NOT EXISTS -- g<><67>n groep + rechten!
|
||||
(SELECT 1
|
||||
FROM fac_v_webgebruiker gg
|
||||
WHERE gg.prs_perslid_key = p.prs_perslid_key)
|
||||
AND ( fac.getsetting ('mld_allow_for_others') = 1
|
||||
OR EXISTS
|
||||
(SELECT 1
|
||||
FROM bes_disc_params dp, bes_discipline bd
|
||||
WHERE dp.bes_disc_params_for_others = 1 AND bd.ins_discipline_key = dp.bes_ins_discipline_key AND bd.ins_discipline_verwijder IS NULL))
|
||||
UNION ALL -- FSN#27315: En ook eventuele "sensorusers" meetellen!
|
||||
SELECT NULL prs_perslid_key
|
||||
, sd.ins_srtdeel_omschrijving naam
|
||||
, 'sensorobject' usertype
|
||||
, ins_deel_omschrijving oslogin
|
||||
, ins_deel_statedate last_login -- recent actief dus tellen als recent
|
||||
FROM ins_v_aanwezigdeel d, ins_srtdeel sd
|
||||
WHERE d.ins_srtdeel_key = sd.ins_srtdeel_key AND NVL (sd.ins_srtdeel_sensortype, 0) <> 0) x
|
||||
LEFT JOIN -- 1=user heeft schrijfrechten op key-codes=notFE-codes
|
||||
(SELECT DISTINCT prs_perslid_key, 1 key_user
|
||||
FROM (SELECT g.prs_perslid_key, 1 key_user
|
||||
FROM fac_v_webgebruiker g, fac_functie f
|
||||
WHERE g.fac_functie_key = f.fac_functie_key AND f.fac_functie_groep IN (1, 2) AND g.fac_gebruiker_prs_level_write < 9 AND g.fac_gebruiker_alg_level_write < 9
|
||||
UNION
|
||||
SELECT p.prs_perslid_key, 1 key_user
|
||||
FROM fac_groep fg, fac_gebruikersgroep fgg, prs_perslid p
|
||||
WHERE fac_groep_collega = 1
|
||||
AND fg.fac_groep_key = fgg.fac_groep_key
|
||||
AND p.prs_perslid_key = fgg.prs_perslid_key
|
||||
AND p.prs_perslid_verwijder IS NULL
|
||||
AND fg.fac_groep_key IN ( SELECT fac_groep_key
|
||||
FROM fac_gebruikersgroep
|
||||
GROUP BY fac_groep_key
|
||||
HAVING COUNT (prs_perslid_key) > 9))) a
|
||||
ON x.prs_perslid_key = a.prs_perslid_key;
|
||||
|
||||
-- Dit gaan we hanteren om API-users te tellen (zijn dan geen normale keyusers meer)
|
||||
CREATE_VIEW (fac_v_lcrap_apiusers, 0)
|
||||
@@ -1097,37 +1094,43 @@ AS
|
||||
-- personen zonder rechten worden als passive_user toegevoegd
|
||||
CREATE_VIEW (fac_v_lcrap_fe_vs_key, 0)
|
||||
(
|
||||
tijdstip,
|
||||
all_users,
|
||||
fe_users,
|
||||
key_users,
|
||||
devices,
|
||||
passive_users,
|
||||
xdkey_users,
|
||||
recent_login
|
||||
tijdstip
|
||||
, licensed_fe_users
|
||||
, licensed_key_users
|
||||
, licensed_device_users
|
||||
, licensed_passive_users
|
||||
, fe_users
|
||||
, key_users
|
||||
, devices
|
||||
, passive_users
|
||||
, all_users
|
||||
, recent_login
|
||||
, licensed_delta_fe
|
||||
, licensed_delta_key
|
||||
, licensed_delta_device
|
||||
, licensed_delta_passive
|
||||
)
|
||||
BEQUEATH DEFINER
|
||||
AS
|
||||
SELECT tijdstip,
|
||||
all_users,
|
||||
fe_users,
|
||||
key_users,
|
||||
NVL (system_users, 0),
|
||||
NVL (passive_users, 0),
|
||||
xdkey_users,
|
||||
recent_login
|
||||
FROM (SELECT SYSDATE
|
||||
tijdstip,
|
||||
COUNT (*)
|
||||
all_users,
|
||||
COUNT (*) - SUM (DECODE (x.key_user, NULL, DECODE (x.xd_user, NULL, 0, 1), 1))
|
||||
fe_users,
|
||||
SUM (DECODE (x.key_user, NULL, 0, DECODE (x.xd_user, NULL, 1, 0)))
|
||||
key_users,
|
||||
SUM (DECODE (x.key_user, NULL, 0, DECODE (x.xd_user, NULL, 0, 1)))
|
||||
xdkey_users,
|
||||
SUM (CASE WHEN x.last_login > SYSDATE - 100 THEN 1 ELSE 0 END)
|
||||
recent_login
|
||||
SELECT tijdstip
|
||||
, fac.getsetting ('licensed_fe_users') licensed_fe_users
|
||||
, fac.getsetting ('licensed_key_users') licensed_key_users
|
||||
, fac.getsetting ('licensed_device_users') licensed_device_users
|
||||
, fac.getsetting ('licensed_passive_users') licensed_passive_users
|
||||
, fe_users
|
||||
, key_users
|
||||
, NVL (system_users, 0)
|
||||
, NVL (passive_users, 0)
|
||||
, all_users
|
||||
, recent_login
|
||||
, fac.safe_to_number (fac.getsetting ('licensed_fe_users')) - fe_users delta_fe
|
||||
, fac.safe_to_number (fac.getsetting ('licensed_key_users')) - key_users delta_key
|
||||
, fac.safe_to_number (fac.getsetting ('licensed_device_users')) - NVL (system_users, 0) delta_device
|
||||
, fac.safe_to_number (fac.getsetting ('licensed_passive_users')) - NVL (passive_users, 0) delta_passive
|
||||
FROM (SELECT SYSDATE tijdstip
|
||||
, COUNT (*) all_users
|
||||
, COUNT (*) - SUM (DECODE (x.key_user, NULL, DECODE (x.xd_user, NULL, 0, 1), 1)) fe_users
|
||||
, SUM (DECODE (x.key_user, NULL, 0, DECODE (x.xd_user, NULL, 1, 0))) key_users
|
||||
, SUM (CASE WHEN x.last_login > SYSDATE - 100 THEN 1 ELSE 0 END) recent_login
|
||||
FROM fac_v_lcrap_fe_vs_key_data x
|
||||
WHERE x.usertype = 'user') a
|
||||
LEFT JOIN (SELECT COUNT (*) system_users
|
||||
|
||||
Reference in New Issue
Block a user