Wendelin Exanalytics Libre

WENDELIN combines Scikit Learn machine learning and NEO distributed storage for out-of-core data analytics in python

Table of Contents

ERP5 Explained

ERP5 is a free software ERP written in Python and Zope. It's using an object database as storage and MariaDB for indexing. ERP5 consists of a core that is extended by installing business templates to add specific functionalities such as accounting or trade.

The key difference to other system is the generic nature of ERP5. It is using only five abstract classes defined in the Unified Business Model to model all processes in an organization. This way ERP5 utilizes only about 20 tables compared to thousands usually found in other systems.

An example would be using the same ticket-class across sale opportunities, customer support requests, meetings or bugs. This allows to inherit functionalities while providing a familiar user interface but also translates to effort for abstracting individual processes to the generic model.

ERP5 Technical Overview

ERP5 groups objects into modules (eg person module). Objects are by default viewable as list of objects or single object. They have properties defined via property sheets (address fields for person), relations to other objects (person-organization) and can be categorized (function:staff). Objects are stateful and use workflow actions to change from state to state (person:draft->person:validated). Security can be defined dynamically based on assignments (eg person+location), context (eg project+task) or directly on a module, object or workflow basis. ERP5 is an activity-based system and provides complete history on all objects and modifications. For more details, please check the developer basics technical introduction.

ERP5 Implementations

Due to its generic nature, ERP5 has been implemented across various industries over the past 15 years ranging from pharmaceuticals to tolling covering topics from manufacturing to international finance and trade.

Projects are normally highly customized as the idea of ERP5 is to be built around company requirements instead of providing an industry solution to which to adapt. The standard ERP5 installation therefore is more of a starting point to develop a custom solution versus a ready-to-use system.

Is ERP5 for me?

Developing an ERP5 solution requires investing time - either your own, including at least a year to learn the ins and outs - or Nexedis for providing you a system according to your specifications and along our standard implementation process.

Implementing ERP5 also requires you to understand your business, because the system is being built around it instead of giving you a solution how to run it. The implementation process means constant decision making to actively drive development, providing feedback and compromising on prioritizing features. It's a lot of work one has to dedicate to.

ERP5 Stack

Nexedi provides a number of additional free software solutions geared towards use with ERP5 and normally working unisono, which include:

  • SlapOS - cloud infrastructure management and deployment
  • NEO - distributed, transactional NoSQL Database used in ERP5
  • Re6st - resilient mesh for network optimization
  • Wendelin - extensions for working with Big Data/Machine Learning in ERP5
  • renderjs/jio - JS frameworks for offline-capable/synchronizing ERP5 web apps

Using the above tools allows to build advanced, yet simple solutions such as a web-app for reporting KPIs from remote locations across several countries with some modules being made available offline or the management of the Teralab Big Data computation platform which uses ERP5 to set security permissions for both users and data maintained within the same cloud infrastructure but for multiple organizations.