Administration

Bulk field update

dolixmasse · version 1.0.4

You change a field across a series of records without writing an SQL query.

Price
€25 excl. VAT
Dolibarr
19.0 minimum
Version
1.0.4
Licence
GPL v3+
Languages
French, English

€25 excl. VAT.

Ordering, payment, invoicing and download are handled by the DoliStore.

Buy on the DoliStore — €25 excl. VAT
The preview: twelve records found, the old value struck through, the new one in green, and two rows unticked by hand.
The preview: twelve records found, the old value struck through, the new one in green, and two rows unticked by hand. Screenshot of the French-language interface.
01

What the module does

  • Third parties: customer / prospect status (all four values), supplier yes or no, status enabled or disabled.
  • Contacts and addresses: status enabled or disabled.
  • Two optional filters: the field's current value, and a search on the name or email.
  • Beforeafter preview for each record, with a checkbox to untick to exclude it.
  • Closed list of fields and values: the module can only write what is declared in its registry.
  • Transactional write, adjustable cap (1 000 records by default) and history of operations.
02

Who it is for

You need to switch a series of third parties from customer to prospect, and the interface can only do it one record at a time.

You want to switch a hundred customers back to prospects, disable a series of third parties that no longer order, or mark as suppliers some companies imported without that flag. Dolibarr lets you do it record by record. The only other route is an UPDATE in the database: quick, and with no way back if the condition is badly written.

Who it is for: Databases that have aged: file takeovers, commercial requalification, the annual clean-out of inactive third parties. Useful as soon as the same correction has to be applied to more than ten records.

03

What the module does not do

This section appears on all 12 module pages, without exception.

  • Only four fields, on two objects: third parties and contacts. No products, quotes, invoices or projects.
  • Does not change complementary attributes, categories, prices or contact details.
  • One field at a time. Two fields to change, two operations.
  • The update is written directly to the database: Dolibarr's triggers are not run and no event is created in the agenda. The operation is recorded in Dolibarr's logs and in the module's history.
  • There is no one-click undo afterwards. The history says what was done, it does not undo it.
04

How it works

The module changes one field, on several records, in one controlled operation.

You choose the object (third parties or contacts), the field, the new value. You narrow things down if you wish, with a filter on the current value and a search on the name or email. The module then displays each record concerned, with the old value struck through and the new one beside it. You untick what you want to exclude, then you apply.

The fields that can be changed are written into the module, in a closed list. No other column of your database can be reached, whatever value the form sends.

Supported fields

Object Field Possible values
Third parties Customer / prospect status Neither customer nor prospect · Customer · Prospect · Customer and prospect
Third parties Supplier Yes · No
Third parties Status Enabled · Disabled
Contacts and addresses Status Enabled · Disabled

The screen fits on one page, under Third partiesBulk update.

A first block, “What do you want to change?”, runs through five rows: object, field to update, new value, filter on current value, filter by name or email. The lists adjust to one another: choosing “Contacts” leaves only the fields that exist on contacts.

The Preview button displays a banner such as “9 ‘Third parties’ record(s) to update: field ‘Customer / prospect status’ will be set to ‘Prospect’.”, then the table of records, each with its selection checkbox and its change shown in plain text.

The setup page brings together the two settings and the history of operations.

Targeting: the object, the field, the new value, the current value to filter on, and a filter by name or email.
Targeting: the object, the field, the new value, the current value to filter on, and a filter by name or email. Screenshot of the French-language interface.
The module also works on contacts. When you change object, the list of fields adjusts: for a contact, there is only the status.
The module also works on contacts. When you change object, the list of fields adjusts: for a contact, there is only the status. Screenshot of the French-language interface.
The same before/after preview, on contacts.
The same before/after preview, on contacts. Screenshot of the French-language interface.
05

Settings

Setting Default Effect
Maximum records per operation 1 000 Above this, applying is blocked and the filters must be refined.
Keep an operation history enabled Logs each change: date, user, object, field, filter, new value, number of records.
The two settings, and the history: every past operation, with its date, its author, the field changed and the number of records updated.
The two settings, and the history: every past operation, with its date, its author, the field changed and the number of records updated. Screenshot of the French-language interface.
06

Security and safeguards

  • Closed list of objects, fields and values. The module can only write what is declared in its registry; an unexpected value is refused before any database read.
  • A dedicated permission, “Use bulk field update”.
  • Dolibarr’s standard permissions on top: the module checks that you have the permission to create and modify third parties, or contacts, depending on the object concerned.
  • Mandatory preview and confirmation before writing.
  • Transactional write: at the first error, the whole thing is cancelled.
  • Multi-company: every read and every write is limited to the authorised entities.
  • External users: an account linked to a third party only sees its own record and its own contacts.
  • Every change is written to Dolibarr’s logs.
Above the safety limit, applying is blocked: the module asks you to refine your filters.
Above the safety limit, applying is blocked: the module asks you to refine your filters. Screenshot of the French-language interface.
07

What you get

What the module writes to your installation
Database tables createdOne table: llx_dolixmasse_log. It records the history of operations (date, user, object, field, filter applied, new value, number of records changed, entity). No business data is stored in it.
PermissionsOne permission: “Use bulk field update”. The module also requires Dolibarr's standard write permission on the object concerned: create/modify third parties, or create/modify contacts.
Uninstalling
  • Disable the module in SetupModules/Applications. The menu disappears.
  • Values already changed stay as they are: they are data in your database.
  • The llx_dolixmasse_log history table and the module's settings are not deleted. Nothing is erased from your database without your intervention.
  • One table is added: llx_dolixmasse_log. It only contains the history of operations. No business data is copied into it.
  • The only data changed are the field you chose, on the records you left ticked.
  • A record that already has the target value is neither offered nor touched.
  • No outgoing connection: nothing is sent anywhere.
08

Compatibility

The module descriptor only declares a minimum version. No upper bound is written in the code: the versions below are those on which the module has actually been run.

Compatibility of the Bulk field update module
Dolibarr versionsDolibarr 19.0 minimum. Installed and run on 23.0.4 and 24.0.0.
Minimum PHP7.4
Dolibarr modules to enableThird Parties
LicenceGPL v3 or later, full source code
LanguagesFrench, English
MenuThird parties menu“Bulk update”.
09

Installation

  1. Get the module from the DoliStore and download the zip file.
  2. In Dolibarr: HomeSetupModules/Applications“Deploy/install external app/module” tab, then upload the zip. Otherwise, unzip the dolixmasse folder into htdocs/custom/.
  3. Enable “Bulk field update” in the list of modules. The history table is created at that point.
  4. Grant the “Use bulk field update” permission to the users concerned, in Users & Groups. Check that they also have the permission to modify third parties or contacts.
  5. Set the cap on records per operation and the history in the module's setup page.

The details — permissions on the custom folder, shared hosting, upgrades, uninstalling — are on the page Installation and upgrades.

10

Frequently asked questions

Which Dolibarr versions does this module work on?

The descriptor requires Dolibarr 19.0 minimum and PHP 7.4 minimum. The screenshots were taken on 24.0.0. If you are on an older version and have any doubt, write before buying.

Exactly which fields can be changed?

On third parties: the customer / prospect status, the supplier flag, the enabled or disabled status. On contacts: the enabled or disabled status. Nothing else. The list is written in the module; it can be neither configured nor bypassed through the form.

Does it touch my database?

Yes, only on the records you left ticked and only on the field you chose. The module also adds a table, llx_dolixmasse_log, which only contains the history of operations.

What happens if the operation fails halfway through?

Nothing is saved. The writes are made in a transaction: at the first error, the whole thing is cancelled and a message reports it.

What if I uninstall?

The menu disappears. Changes already applied remain. The history table and the settings remain in the database: you can delete them yourself if you wish.

Who handles support, and how do updates work?

Support is provided by the person who wrote the module, at support@dolix.fr. Ordering, payment, the invoice and the download are handled by the DoliStore, where new versions are published.

11

Version history

Taken from the module’s ChangeLog.md file: a single source.

1.0.410 September 2026

Display fix: after a preview, the “New value” selector fell back to the first option instead of the requested value, and could contradict the preview banner. It is now set back to the submitted value.

1.0.310 September 2026

Technical: the anti-CSRF token check function now has a name prefixed by the module, so that a function of the same name added to Dolibarr one day cannot prevent the page from opening. An empty token is explicitly refused.

1.0.210 September 2026

Fix: the setup screen returned a 500 error on saving, because Dolibarr's settings-writing function was called without its library being loaded. Settings now save normally.

1.0.19 September 2026

Security fix: an external user, that is an account linked to a third party, now only sees and changes its own record and its contacts, both in the preview and when applying.

1.0.09 September 2026

First version: bulk update of one field on third parties and contacts, wizard with preview and filters, transactional apply, adjustable safeguard, history and setup page.

12

Support for this module

Write to support@dolix.fr. The person who wrote the module is the one who replies.

Reply within two working days. This is not an on-call service.

To include in your message

  • The exact Dolibarr version.
  • The module concerned and its version — here dolixmasse 1.0.4.
  • What you did, and what you expected.
  • The error message copied exactly, or a screenshot.
  • How Dolibarr is installed, if you know.

This module is on sale on the DoliStore.

Ordering, payment, invoicing and download are handled by the DoliStore.

Buy on the DoliStore — €25 excl. VAT
Also

The other modules