Open mSupply represents our most recent advancement in the Logistics Management Information System (LMIS), expanding on more than two decades of development inherited from the well-established legacy of the original mSupply.
Is your feature request related to a problem? Please describe π
Global prefs are a useful feature to allow system admins to control how the system operates nationally (store prefs do a similar thing at a store level)
Side Note: Before adding a global prefes, we should consider what makes a good global vs store pref, and/or if a plugin might be more appropriate for each use cases.
We need the ability to easily create and manage store prefs for Open mSupply Specific stores.
We also need to consider how, or if it interacts with mSupply Global Prefs (do they both existing in open-mSupply?)
Describe the solution you'd like π
From @andreievg ...
I played around a little bit with the translation structure, considering that global preference is stored in a table with key = preference type and value = json. In the use case of the requisition line column visibility some columns might be added via plugin, so they won't be strictly typed, but other should be I think, structure below should allow for it.
Above can go all the way through to graphql and typescript layer i think.
I would also imagine that we access each preference type separately, and have a seperate method for each serialisation and mapping, although I played around with some generic preference types, not sure how they would work across all of the layers:
Is your feature request related to a problem? Please describe π
Global prefs are a useful feature to allow system admins to control how the system operates nationally (store prefs do a similar thing at a store level)
We need the ability to easily create and manage store prefs for Open mSupply Specific stores. We also need to consider how, or if it interacts with mSupply Global Prefs (do they both existing in open-mSupply?)
Describe the solution you'd like π
From @andreievg ...
I played around a little bit with the translation structure, considering that global preference is stored in a table with key = preference type and value = json. In the use case of the requisition line column visibility some columns might be added via plugin, so they won't be strictly typed, but other should be I think, structure below should allow for it.
Above can go all the way through to graphql and typescript layer i think.
I would also imagine that we access each preference type separately, and have a seperate method for each serialisation and mapping, although I played around with some generic preference types, not sure how they would work across all of the layers:
Describe alternatives you've considered π
Additional context π
Moneyworks Jobcode π§°
OMS:DDSP