The module described in this article has been marked as a legacy module. This means the following:
We don't create new features for this module or fix any bugs.
The module is not available anymore in Xentral instances (demo or licensed) created after 28-Sep-2022. If you as a new user have special requirements that could only be fulfilled by this module, please contact our customer support team to discuss a solution.
For more information, see also Why is Xentral deprecating some modules (Legacy modules) and what does this mean for you?
Central app for many customizations to Xentral is the Xentral Customizing Suite (XCS). Here, existing data structures can be extended and new, custom data structures can be created. In addition, XCS provides options for managing customizations. This area will be greatly expanded in the near future.
For example, new tables can be quickly used as data containers for customizations, if a dynamic list of postal codes or shipping methods is to be created, which then enables a decision to be made in the process for one shipping type per postal code. This would be then - with suitable programming - by the user directly without having to restart the programming. Any number of tables can be tables, so the storage of such lists can also be done in several tables. The tables are easily addressable in the code with the prefix xcs_.
Table name in XCS: custom_table
Table name in database: xcs_custom_table
Existing system tables can be extended with the help of custom columns. These are initially extended only in the database, an Effect on the user interface does not arise automatically. Columns can be inserted into own or already existing database tables.
Example: Extension of the table order by additional column 'Rejection reason'.
The overview of the tables is the entry point for editing the definition and the data in the tables.
The following functions are available:
pen icon: To edit the table definition
Curved arrow: To edit the contents of the table (see below)
X: To delete the table and all stored data
Database tables can be created by clicking + NEW.
Only the information for the table name and an optional description must be entered. A change of the table name leads to a change of the name in the database.
In the columns tab, all available columns of all tables can be edited. Please note that when changing column definitions, the contents of the columns in the database may be deleted.
Best Practise: Final definition and creation of tables and columns before first use or filling with data.
New columns can be created by clicking + New Entry.
Example of creating an integer column:
The type Integer is important here. If a text is to be saved in the column, select Text as the type.
If you click on the arrow icon, the contents of the table can be edited. New contents (rows) can be created by clicking on + NEW.
The displayed dialog uses the stored technical column names and is therefore only conditionally suitable for editing by untrained end-users.
The added lines will be displayed as usual and can be edited via the pen icon or deleted via the X.
New columns can also be added to existing system tables. This method should be used sparingly, in part because of the maximum restriction on row size in MySQL/MariaDB, especially when using InnoDB (see the MySQL documentation for row size limits). The extension of system tables could lead to page effects within other areas of the software.
Best practice: Create a new table and extend the system table merely to include a reference to the new table. To do this, a check mark must be set for Extend xentral table.
The following system tables can be expanded:
quote and quote_item
order and order_item
invoice and invoice_item
credit_note and credit_note_item
delivery_note and delivery_note_item
order and order_item
production and production_item
In the SQL viewer tab, all database tables of the own system can be accessed live. There, for performance reasons, a reduced view is available in some cases of the tables (not all rows or columns).
For more information on how to deal with the database (including XAMPP for local testing). can be found at Report Scripts.