Projects:Masterdata Creation Management/Specs
Contents |
Goal
The main goal of this project is to handle the creation of master data model elements from the WebPOS within the new IndexedDB Infrastructure. In particular, the developed solution will be applied to handle the Business Partner model.
Functional Requirements
The functional requirements are focused on the Business Partner model. When a Business Partner is created in the WebPOS:
- It should be sent to the backoffice to be stored
- It should be saved in the terminal masterdata, i.e., in the BusinessPartner IndexedDB object store.
Technical Specs
The idea is to improve and generalize the current infrastructure that handles the master data creation in the WebPOS.
Endpoint Definition
We are going to define the endpoint concept, this is an entity that the terminals can communicate with. Each endpoint will be in charge of coordinating its online/offline status. And at the same time, the endpoints will be coordinated by the Synchronization Buffer.
With this project we are going to introduce two brand new endpoints:
- Backoffice: the endpoint that represents the Openbravo backend.
- Masterdata: a local endpoint that will use the MasterdataController to handle the master data locally. Its status will be always online as it is present in the browser.
Note that the MasterdataController was designed to be used as a read only component. Currently it only inserts data with full/incremental refreshes. So most probably it will be reviewed to relax this read only constraint.
The idea is to leave the endpoint definition open to register custom endpoints that will allow communication with external systems.
Global Action
A new global action will be defined. The specs for this action are:
- It is executed when a new Business Partner is created in the WebPOS.
- The action is in charge of creating two messages to be synchronized by the Synchronization Buffer that will deliver them to the corresponding enpoints:
- One message will be sent to the backoffice endpoint. In case this endpoint is offline, it should take care of sending the data once it gets back in online mode again.
- The other message will be sen to to the local Masterdata endpoint
- No data transformation will be applied.