Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
devel:documentation:modules_reports [2020/03/11 11:14]
doischert
devel:documentation:modules_reports [2024/05/03 11:44] (current)
sourek
Line 1: Line 1:
-<- .:modules_rpt |  ^ .:start | Documentation ^ .:modules_crt |   ->+<- .:modules_rpt | ^ .:start | Documentation ^ .:modules_crt | 
  
 {{tag> report}} {{tag> report}}
Line 5: Line 5:
 ====== Modules - Implemented reports [reports] ====== ====== Modules - Implemented reports [reports] ======
  
-The main purpose of reports is to create a snapshot of current data in IdM which can then be downloaded as a CSV or XLSX file. This is often useful for audits or other cases when an overview of a large amount of data in IdM is needed. The reports module gives the basic [[devel:documentation:modules_rpt|rpt module]] true power because it contains implemented reports for many use-cases. The module evolves often since new reports are added on a regular basis. +The main purpose of reports is to create a snapshot of current data in IdM which can then be downloaded as a CSV or XLSX file. This is often useful for audits or other cases when an overview of a large amount of data in IdM is needed. The reports module gives the basic [[.:modules_rpt|rpt module]] true power because it contains implemented reports for many use-cases. The module evolves often since new reports are added on a regular basis.
  
-{{ :devel:documentation:rpt.png | [reports] and [rpt] modules}}+{{  .:rpt.png  | [reports] and [rpt] modules}}
  
-The module is fully dependent on [[devel:documentation:modules_rpt|reports [rpt]]] module and only contains implemented reports, not the logic of creating reports in general.+The module is fully dependent on the [[.:modules_rpt|reports [rpt]]] module and only contains implemented reports, not the logic of creating reports in general.
  
 ====== Overview of implemented reports ====== ====== Overview of implemented reports ======
Line 15: Line 15:
 ==== Identities and their roles ==== ==== Identities and their roles ====
  
-This report allows you to export the list of identities together with their assigned roles. [[devel:documentation:modules_reports:reports:identities_and_their_roles|Learn more]]+This report allows you to export the list of identities together with their assigned roles. [[.:modules_reports:reports:identities_and_their_roles|Learn more]] 
 + 
 +==== Identities, their roles and contract ==== 
 + 
 +This report is similar to the one above but contains more information. The generated XLSX file has a clear separation between attributes of identity, contract, and role. [[.:modules_reports:reports:identity_role_complex_report|Learn more]]
  
 ==== Roles and their identities ==== ==== Roles and their identities ====
  
-This report allows you to export the list of roles and their holders. [[devel:documentation:modules_reports:reports:roles_and_their_identities|Learn more]]+This report allows you to export the list of roles and their holders. [[.:modules_reports:reports:roles_and_their_identities|Learn more]]
  
 ==== Identities, their main contract and their roles ==== ==== Identities, their main contract and their roles ====
  
-This report allows you to export the list of identities (with information about their contracts, incl. one contract EAV) together with their assigned roles. [[devel:documentation:modules_reports:reports:identities_their_main_contract_and_their_roles|Learn more]]+This report allows you to export the list of identities (with information about their contracts, incl. one contract EAV) together with their assigned roles (and values of role attributes). [[.:modules_reports:reports:identities_their_main_contract_and_their_roles|Learn more]]
  
-===== Developing and releasing ===== +==== Identities and their assigned roles changes ====
-How to develop a new feature in reports:+
  
-  - Create a specification page in private section and consult it with module owner and other colleagues (on Slack). Specification page should contain: +This report allows you to export all changes in assigned roles for users in a given time period. You can use filter to only show changes caused by automatic roles (both by position and attribute). [[.:modules_reports:reports:identities_and_their_automatically_assigned_roles_changes|Learn more]]
-   - Usecases - which data should the report contain, what problem does it solve, which client needs it? +
-   - Functional specification - how should it work, edge cases +
-  - Ask a module owner, if this feature can be a part of the module and in which version it will be published +
-  - Create ticket in product Redmine with final requirements and with correct target version +
-  - Implement the feature in a separate GIT branch +
-  - Create merge request to develop +
-  - Get someone from the product team, or the module owner to review your changes +
-  - After successful review, ask module owner to merge you code+
  
-Rules for code review: +==== Identities and their password changes on system ====
-  * There are [[tutorial:dev:create_report|tests]] (test coverage of 80% for reports is hard to achieve but do your best) +
-  * All features are documented - the report is mentioned above and has dedicated page describing its use and configuration +
-  * Changelog is updated+
  
-<note important>If your code does not meet the requirements mentioned aboveit may be rejected.</note>+This report allows you to export all password changes in end systems. You can filter by systemtime period, and success of the change. [[.:modules_reports:reports:identities_and_their_password_changes_on_a_system|Learn more]]
  
-  * When developing, use our standard gitflow: +==== Identities and their system account (state) changes ====
-    * Branch per feature. Branch naming as usual. +
-    * Develop on top of the ''develop''+
-    * Master branch contains tagged releases. +
-    * The **only** way for code to get into master is by pull request ''develop -> master''.+
  
-  * Release process +This report allows you to export all account changes in end systems of the type CREATEDELETE and ENABLE. You can filter by systemtime period, type of operation,and success of the change[[.:modules_reports:reports:identities_and_their_system_account_changes|Learn more]] 
-    - After merging all features wanted for the releaseone (selected) developer builds the develop. If it builds fine and tests are also OK, the developer edits module version in the ''pom.xml'' file and sets it to ''X.Y.Z''+ 
-    - Developer creates pull request on GitHub to merge ''develop -> master''+==== Virtual system archived request report ==== 
-    - Repo admin (or any other authorized userreviews the pull request, can request changes if necessaryUnresolved TODOs, missing comments, bad codestyle or documentation, suspected bugs, etc. - all those things can be grounds for change request+ 
-    - If the pull request is OKrepo admin merges it+This report allows you to export all archived (realized or rejectedrequests on virtual systemsYou can filter by time period[[.:modules_reports:reports:vs_archived_requests|Learn more]] 
-    - Repo admin creates a new release in GitHub interfaceversion is set to ''X.Y.Z'' to correspond with version set in project sources+ 
-    - After release, repo admin makes changes on the ''develop'' branch: upps module version to ''X(+1).Y(+1).Z(+1)-SNAPSHOT'' in the ''pom.xml'' and ''package.json''. What the next version of the module will be is up to discussion preceding the release.+==== Identity complex report ==== 
 + 
 +This report allows you to export complex information about userstheir contract and their identity form values (EAVs)[[.:modules_reports:reports:identities_complex|Learn more]] 
 + 
 +==== Complex report of identitiestheir roles and contracts attributes ==== 
 + 
 +This report allows you to export complex information about users, their contract and their assigned roles[[.:modules_reports:reports:identity_role_complex_report|Learn more]] 
 + 
 +==== SQL Universal report ==== 
 + 
 +This report allows you to export complex information based on table/view name or custom SQL query[[.:modules_reports:reports:sql_universal_report|Learn more]] 
 + 
 +==== Account attribute changes report ==== 
 + 
 +This report displays changes provisioned to specified systems [[.:modules_reports:reports:account_attribute_changes_report|Learn more]]
  
 ====== Read more ====== ====== Read more ======
  
 ===== Admin tutorials ===== ===== Admin tutorials =====
-  * [[tutorial:adm:modules_reports| Reports module [rpt] - How to create a report]]+ 
 +  * [[:tutorial:adm:modules_reports|Reports module [rpt] - How to create a report]] 
 ===== Devel guide ===== ===== Devel guide =====
-  * [[devel:documentation:modules_rpt:dev:report_manager|How reports work]] + 
-  * [[devel:documentation:modules_rpt:dev:attachment_manager|Attachment manager]]+  * [[.:modules_reports:developing_and_releasing|Developing and releasing in the module reports]] 
 +  * [[.:modules_rpt:dev:report_manager|How reports work]] 
 +  * [[.:modules_rpt:dev:attachment_manager|]] 
 ===== Devel tutorials ===== ===== Devel tutorials =====
-  * [[ tutorial:dev:create_report | Create a report ]]+ 
 +  * [[:tutorial:dev:create_report|Create a report ]] 
 + 
  • by doischert