Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reports-versioning: Select the right version of a report to include #4791

Open
Tracked by #4668 ...
fergie-nz opened this issue Sep 15, 2024 · 0 comments · May be fixed by #5533
Open
Tracked by #4668 ...

Reports-versioning: Select the right version of a report to include #4791

fergie-nz opened this issue Sep 15, 2024 · 0 comments · May be fixed by #5533
Assignees
Labels
enhancement New feature or request feature: reports Priority: Must Have The product will not work without this Team Ruru 🦉 Andrei, Roxy, Chris, Ferg
Milestone

Comments

@fergie-nz
Copy link
Contributor

fergie-nz commented Sep 15, 2024

Is your feature request related to a problem? Please describe 👀

When omSupply requests available reports, the available reports will follow these rules

found_report = find report with this code

if not found_report {
    upsert report
    return
}

if found_report.version >= this report.version {
    return
}

upsert report

code is a new field that identifies the same report for different versions

version follows omSupply major and minor version, for omSupply to select correct report version for current omSupply instance, and patch identifies any updates to current report version

When omSupply generates report it will select report based on version with the follow rules

After narrowing down on report by context and sub context, and then by code

report_versions = all reports for code

if report_versions have custom reports {
    report_versions = only custom reports
}

// Report selection logic will be such to satisfy the following use cases (path version is ignored)
report_version = [2.3.0, 2.3.5, 2.8.2, 2.8.3, 3.0.1, 3.5.1]
if omSupply.version = 2.3 selected report = 2.3.5
if omSupply.version = 2.4 selected report = 2.3.5
if omSupply.version = 2.8 selected report = 2.8.3
if omSupply.version = 3.2 selected report = 3.0.1
if omSupply.version = 4.5 selected report = 3.5.1

This will allow us to update existing report through open-mSupply Central without upgrading remote sites, for current and previous versions of omSupply. When omSupply is deployed are remote sites, it's not that easy to update them to later versions, but patching existing versions can be done through report configurations. Also custom reports would still be used instead of standard reports, where needed.

Describe the solution you'd like 🎁

Describe alternatives you've considered 💭

Additional context 💌

Moneyworks Jobcode 🧰

@fergie-nz fergie-nz added enhancement New feature or request needs triage labels Sep 15, 2024
@jmbrunskill jmbrunskill changed the title Reports-versioning Reports-versioning: Select the right version of a report to include Sep 16, 2024
@fergie-nz fergie-nz mentioned this issue Sep 16, 2024
12 tasks
@jmbrunskill jmbrunskill added the Team Ruru 🦉 Andrei, Roxy, Chris, Ferg label Sep 16, 2024
@jmbrunskill jmbrunskill removed their assignment Sep 16, 2024
@fergie-nz fergie-nz self-assigned this Sep 23, 2024
@fergie-nz fergie-nz removed their assignment Sep 30, 2024
@roxy-dao roxy-dao mentioned this issue Oct 9, 2024
41 tasks
@andreievg andreievg added the Priority: Must Have The product will not work without this label Nov 21, 2024
@andreievg andreievg added this to the V2.4.0-RC3 milestone Nov 21, 2024
@fergie-nz fergie-nz self-assigned this Nov 21, 2024
@roxy-dao roxy-dao modified the milestones: V2.4.0-RC3, V2.4.0-RC4 Nov 22, 2024
@fergie-nz fergie-nz linked a pull request Nov 22, 2024 that will close this issue
3 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request feature: reports Priority: Must Have The product will not work without this Team Ruru 🦉 Andrei, Roxy, Chris, Ferg
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants