The Constructor is the core of OBS ERP. It is a web interface, which allows the users to customize the software in accordance with their business needs.

All modules in OBS ERP are created through the Constructor.


1. Creating new modules -
the Constructor allows you to create custom modules to address specific business needs.
- you can create a module for storing detailed, searchable information about all vehicles in your organisation;
- or a module for storing product information connected with your web site through the OBS ERP API;
- or a module storing information about a manufacturing process within your organisation. Every step of the manufacturing process can trigger specific function ( notification, document creation, project initiation, etc. )
Full - featured Constructor including the OBS ERP API is available in the on-premises version.

2. Modifying the structure of the existing modules. The Constructor allows you to:
  • add new fields - supported data types:
* text - opens up html editor
* varchar - input field accepting text strings
* numeric - input field accepting only numeric values
* date - date field
* timestamp without time zone
* timestamp with time zone
* slider - slider accepting all integer values between two integers
* integer
* integer referring to another module - creates a drop down menu or live search input box. The contents are loaded from the referred module
* boolean - YES/NO (ON/OFF) switch
Navigate to Top bar -> Admin -> Constructor -> Edit Module -> Fields to add a new field. You need to amend the module (button "Amend Module") to apply the changes
  • allow file uploads
  • link a work flow to a field - in a separate module, you can define the steps that can be triggered when the value of a field is changed. For example: send a notification when a status of a task is completed, or create a project when a contract is signed, or disable access for a particular group after approval

  • enable journalling - forces OBS ERP to track all changes in a specific module in a log
  • move a module from one menu to another
  • enable multi - language support
  • set up recurrent tasks within a module - reminders and specific functions ( catalogue of functions provided by OBS )
  • select user interface - table, calendar, vcard, profile, report
  • enable filters - filters allow the user to find information in a module based on a search criteria. The following filters are supported ( depending of the data type )
* multiple select - allows choosing more than one option from a list
* YES/NO drop down list
* input - search by specific value
* range (from - to)
  • change the insertion form layout - grouping fields in named field sets. Defining new field sets. Changing the names of the fields
  • mail client integration - allows you to convert a record in PDF and send it via email to a recipient.
  • add field level constraints - mandatory value, unique value, read only
  • rename a field

Advanced table filters:
Navigate to Constructor -> Edit a module -> Click Filters.
  • Table - the contents of the selected table will be loaded as pick options.
  • Interface - what type of filter option you would like to have.
  • Source table - this is the table where the data we are looking for is searched.
  • Source Column - The column in the source table where the data is located.
1. In module Expenses, you might want to search for products in sub module Expense items. In this case you can configure the following: module Constructor -> Edit Expenses -> Filter
  • Table - products
  • Interface - multiple select
  • Source table - expense_items
  • Source Column - product_id
2. Search income by country.
Constructor -> Edit Invoices -> Filter
  • Table - countries
  • Interface - multiple select
  • Source table - ->companies->country_id Note: this is the relation between module invoice and the country
  • Source Column - company_id
3. Search contacts by business relation written in module companies.
  • Table - b2b_relations
  • Interface - multiple select
  • Source table - contacts_companies->company_id->companies->__related__->companies_b2b_relations_relation->b2b_relations
  • Source Column - record_id

Date of last change 15.06.2017