Projects:IndexedDB In Openbravo
Since 20Q4 release, Openbravo uses IndexedDB to store all information required by the frontend application to support offline operation, including:
- Masterdata information (products, prices, discounts, ...).
- Transactional state information (tickets, cashup information, document sequences)
- Offline login support
- Data synchronisation information
IndexedDB is used extensively through the application, using specialised APIs which allow the developers to define new data models and logic, and which are inherently extensible so developers can also add new models and logic to existing models, using modules.
This document consolidates all API specifications, how-tos and guides specifically related to IndexedDB.
In previous versions, Openbravo used WebSQL for the same purposes as IndexedDB. However, WebSQL has been abandoned as the technology is currently being phased out by modern browsers. In this document you will also find guides designed to help developers migrate out of the old WebSQL-based Openbravo APIs and into the new IndexedDB-based ones.
- General IndexedDB migration guide
- How to migrate masterdata code to IndexedDB
- MasterdataController API specification
- StateController API specification