Author | Andrei Makaranka | ||||||||
---|---|---|---|---|---|---|---|---|---|
JIRA task |
| ||||||||
Business Requirements | |||||||||
Architects Review |
| ||||||||
PO review |
|
...
Version | Date | Owner | Description | Reason |
---|---|---|---|---|
v1.0 | 06.14.2022 | Andrei Makaranka | Initial version | |
v2.0 | 06.22.2022 | Schema changed and WBS added | ||
v2.1 | 06.30.2022 | Status for preview added | ||
v3.0 | 07.07.2020 | Andrei Makaranka | Redesign and rollover logs functionality added | Requirements changed |
Overview
Allow user to generate a rollover report that will tell the user what errors may occur if rolling over with current data.
...
- Ledger Fiscal Year Rollover already implemented.
- It is likely that we will be creating upwards of 75000 - 100000 encumbrances during this process. (statistics from Library).
- Prepare report with Unpaid invoices is UI responsibility.
...
Create duplicate of the Budget schema
New schema name : preview_rollover_budget
Schema should be copy of ramls/acq-models/mod-finance/schemas/budget.json where all amounts are "persistent"(remove readOnly flag from all amounts).
Create new table "
...
ledger_fiscal_year_rollover_budgets"
Schema for the table "preview_ledger_fiscal_year_rollover_budgets"
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
{ "$schema": "http://json-schema.org/draft-04/schema#", "description": "PreviewContains ledger fiscal year rollover", "type": "object", "properties": { "id": { "description": "The unique ida list of thisbudgets category",generated "$ref": "../../common/schemas/uuid.json" }, "ledgerFiscalYearRollover": { "description": "Fiscal year rollover", "type": "object", "$ref": "ledger_fiscal_year_rollover.json" }, "previewResult": { "description": "Result of preview run", during the rollover. Also budgets include all calculated mounts", "type": "object", "$ref": "preview_ledger_fiscal_year_rollover_result.json" }, "totalRecords": { "description": "The number of records contained in this collection", "type": "integer", "minimum": 0 } }, "additionalProperties": false, "required": [ "ledgerFiscalYearRollover", "totalRecords" ] } |
Schema for the preview result "preview_ledger_fiscal_year_rollover_result"
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
{ "$schema": "http://json-schema.org/draft-04/schema#", "description": "Preview ledger fiscal year rollover result", "type": "object", "properties": { "statusbudgets": { "description": "Progress of the preview rollover process : Not Started, In Progress, Error, Success", "type": "object", "$ref": "../../mod-finance/schemas/rollover_status.json" }, "errors": { "description": "The list of fiscal year rollover errors", "type": "array", "items": { "$ref": "ledger_fiscal_year_rollover_error.json" } }, "budgets": { "description": "The list of planned budgets", "type": "array", "items": { "$ref": "preview_rollover_budget.json" } }, "totalRecords": { "description": "The number of records contained in this collection", "type": "integer", "minimum": 0 } }, "additionalProperties": false, "required": [ "budgets", "totalRecords" ] } |
APIs
...
Ledger Rollover Budgets snapshot Business API
Ledger Rollover Budgets snapshot Storage API
Ledger Rollover Logs Business API
Method | Path | Request | Response | Description | Interface | Notes | POST | /finance/ledger-rollovers/previews | ramls/acq-models/mod-finance/schemas/ledger_fiscal_year_rollover.json | preview_ledger_fiscal_year_rollover | Run preview of the ledger fiscal year rollovers | finance.ledger-rollovers.previews.collection.post | Status : 201
---|---|---|---|---|---|---|---|---|---|---|---|---|
GET | /finance/ledger-rollovers/previewslogs/{id} | NA | preview_ledger_fiscal_year_rollover | GET preview logs of the ledger fiscal year rollover by id | finance.ledger-rollovers.previewslogs.item.get | Status : 200 | ||||||
GET | /finance/ledger-rollovers/previewslogs | NA | preview_ledger_fiscal_year_rollover_collection | GET previews logs of the ledger fiscal year rollovers | finance.ledger-rollovers.previewslogs.collection.get | Status : 200DELETE | /finance-storage/ledger-rollovers/previews/{id} | NA | NA | DELETE preview of the ledger fiscal year rollover by id | finance.ledger-rollovers.previews.item.delete | Status : 204 |
Preview Ledger Rollover Storage API
Method | Path | Request | Response | Description | Interface | Notes | POST | /finance-storage/ledger-rollovers/previews | ramls/acq-models/mod-finance/schemas/ledger_fiscal_year_rollover.json | preview_ledger_fiscal_year_rollover | POST previews of the ledger fiscal year rollovers | finance-storage.ledger-rollovers.previews.collection.post | Status : 201|
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
GET | /finance-storage/ledger-rollovers/previewslogs/{id} | NA | preview_ledger_fiscal_year__logs_rollover | GET preview logs of the ledger fiscal year rollover by id | finance-storage.ledger-rollovers.previewslogs.item.get | Status : 200 | |||||||
GET | /finance-storage/ledger-rollovers/previewslogs | NA | preview_ledger_fiscal_year_rollover__logs_collection | GET previews logs of the ledger fiscal year rollovers | finance-storage.ledger-rollovers.previewslogs.collection.get | Status : 200 | DELETE | /finance-storage/ledger-rollovers/previews/{id} | NA | NA | DELETE previews of the ledger fiscal year rollover by id | finance-storage.ledger-rollovers.previews.item.delete | Status : 204
Design
Work Breakdown Structure
...