Sei sulla pagina 1di 12

User & Role detail

Login application with user name & Password

Go to Tool

Click Report & Analysis


Click to create a new data model for Role & Responsibilities

Click on + Icon
Create your query to extract data from Fusion DB .

This query will paste in that region

select papf.person_number "PersonNumber",


ppnf_emp.full_name "PersonName",
pu_emp.user_start_date "UserAccountStartDate",
pu_emp.user_end_date "UserAccountEndDate",
pu_emp.is_user_account_active "UserAccountStatus",
pu_emp.username "UserAccountName",
pu_emp.is_user_account_suspended "IsUserAccountSuspended",
pu_emp.user_distinguished_name "UserAccountInternalName",
pur_emp.method_code "RoleProvisioningMethod",
pur_emp.is_user_role_active "IsUserRoleActive",
pur_emp.is_user_role_terminated "IsUserRoleTerminated",
Case
When (pur_emp.is_user_role_active = 'Yes' AND pur_emp.is_user_role_terminated = 'No' ) Then 'Active'
When (pur_emp.is_user_role_active = 'No' AND pur_emp.is_user_role_terminated = 'No') Then
'NeitherActiveNorTerminated'
When (pur_emp.is_user_role_active = 'Yes' AND pur_emp.is_user_role_terminated = 'Yes') Then
'ActiveAndTerminated'
When (pur_emp.is_user_role_active = 'No' AND pur_emp.is_user_role_terminated = 'Yes' ) Then
'InactiveAndNotTerminated'
End as "UserRoleStatus",
pur_emp.role_start_date "UserRoleStartDate",
pur_emp.role_end_date "UserRoleEndDate",
prd_emp.abstract_role "IsRoleAAbstractRole",
prd_emp.job_role "IsRoleAJobRole",
prd_emp.data_role "IsRoleADataRole",
prd_emp.is_role_active "IsRoleActive",
Case
When (prd_emp.abstract_role = 'Y' AND prd_emp.job_role = 'N' AND prd_emp.data_role = 'N' ) Then
'Abstract Role'
When (prd_emp.abstract_role = 'N' AND prd_emp.job_role = 'Y' AND prd_emp.data_role = 'N' ) Then 'Job
Role'
When (prd_emp.abstract_role = 'N' AND prd_emp.job_role = 'N' AND prd_emp.data_role = 'Y' ) Then
'Data Role'
When (prd_emp.abstract_role is NULL AND prd_emp.job_role is NULL AND prd_emp.data_role is NULL
) Then '--NA--'
End as "UserRoleType",
prd_emp.role_common_name "RoleCommonName",
prd_emp.multitenancy_common_name "MultitenancyCommonName",
prd_emp.role_distinguished_name "IsRoleDistinguishedName",
prdt_emp.role_name "UserRoleName",
prdt_emp.RoleDescription
FROM per_all_people_f papf
JOIN
(
SELECT ppnf.full_name,
ppnf.person_id
FROM per_person_names_f ppnf
WHERE ppnf.name_type = 'GLOBAL'
AND TRUNC(SYSDATE) BETWEEN ppnf.effective_start_date AND ppnf.effective_end_date
) ppnf_emp
ON (
ppnf_emp.person_id = papf.person_id
AND TRUNC(SYSDATE) BETWEEN papf.effective_start_date AND papf.effective_end_date
)
LEFT OUTER JOIN
(
SELECT pu.person_id,
pu.user_id,
pu.username,
to_char(pu.start_date,'DD-MM-RRRR') user_start_date,
to_char(pu.end_date,'DD-MM-RRRR') user_end_date,
DECODE(pu.active_flag,'N','Inactive','Y','Active') is_user_account_active,
DECODE(pu.suspended,'N','No','Y','Yes') is_user_account_suspended,
pu.user_distinguished_name
FROM per_users pu
) pu_emp
ON(pu_emp.person_id = papf.person_id AND TRUNC(SYSDATE) BETWEEN papf.effective_start_date
AND
papf.effective_end_date)
LEFT OUTER JOIN
(
SELECT pur.user_id,
pur.role_id,
pur.role_guid,
DECODE(pur.method_code,'A','Automatic','M','Manually','E','Externally Provisioned') method_code,
DECODE(pur.active_flag,'N','No','Y','Yes') is_user_role_active,
DECODE(pur.terminated_flag,'N','No','Y','Yes') is_user_role_terminated,
to_char(pur.start_date,'DD-MM-RRRR') role_start_date,
to_char(pur.end_date,'DD-MM-RRRR') role_end_date
FROM per_user_roles pur
) pur_emp
ON (pu_emp.user_id = pur_emp.user_id)
JOIN
(
SELECT prd.role_id,
prd.role_guid,
prd.abstract_role,
prd.job_role,
prd.data_role,
DECODE(prd.active_flag,'N','No','Y','Yes') is_role_active,
prd.role_common_name,
prd.multitenancy_common_name,
prd.role_distinguished_name
FROM per_roles_dn prd
) prd_emp
ON (pur_emp.role_id = prd_emp.role_id AND pur_emp.role_guid = prd_emp.role_guid)
JOIN
(
SELECT prdt.role_id, prdt.role_name,
prdt.description RoleDescription,
prdt.source_lang
FROM per_roles_dn_tl prdt
) prdt_emp
ON (prd_emp.role_id = prdt_emp.role_id AND pur_emp.role_id = prdt_emp.role_id AND
prdt_emp.source_lang = 'US' )
WHERE papf.person_number = nvl(:pn_person_number, papf.person_number)
AND TRUNC (SYSDATE) BETWEEN papf.effective_start_date AND papf.effective_end_date
Click OK

Click on Data
These are sample data output from data model
Create report from data model

Set layout &

Click on next
Drag & Drop Columns
Click on finish

Save the report and run

XML formate report is as

Hyperlink

loading.html

you may export data in Excel


Report will be export in Excel format you may further apply formatting as per your requirement,

Hyperlink

Final Siri Report_Final Siri Report.xlsx

Best Regards

Munir Ahmed

Potrebbero piacerti anche