Database maintenance
A module you enter rarely — and always for a reason. There is no daily work here: this is the engine room of the system, where you can see what the other modules hide, and where the operations live that can rebuild whole layers of the accounting.
It consists of two very different halves. The first is the service registers: open invoices, serial balances, item history, payment history, transaction records. The system keeps them itself, and normal work never touches them — each has its own human-facing report. The second is the heavy services: FIFO recalculation, rebuilding the balance store, deleting a company in cascade. These are the tools you cure the database with, and the same tools can break it.
The route: when people come here
Something does not add up in the reports
↓
Document integrity check — are there references to deleted records
↓
Look at the primary source: item history · transactions · payment history
↓
Cause found → the targeted service:
order statuses · FIFO recalculation · rebuild the balance store · search field
↓
Check the result with the same report you started from
- Document integrity check — the place to start: are there documents referring to a deleted item, a vanished customer, another company's location.
- Service registers as the primary source: item history answers where a cost came from, transactions show what a document actually did in the books, payment history and prepayments histories show where the money went.
- Targeted recalculations: statuses of sales orders and purchase orders, fixed assets statuses, the full search text.
- Heavy operations: FIFO recalculation carries the cost of posted shipments into invoices (it does not recalculate the stock batches themselves), Rebuild Object Values reassembles the monthly balance store from which the Nominal Ledger Report and the Analytical Balance take the opening balance (it does not change the postings themselves).
- One-off and dangerous: import of initial data into a new company (in a company already set up it leaves the filled-in settings alone but adds the set's records the company lacks, sample items and contacts included), and delete company (cascade), the most dangerous operation in the system.
What is worth understanding
Service registers are not for editing. They exist so the system can answer "how much is owed" or "where is this serial number" quickly, and documents fill them. Correcting something in them by hand means parting company with the documents that produced them.
Every service register has a human twin. Receivables are read with a report, not in open invoices; balances come from stock reports, not from serial balance. You come here when the report itself has stopped adding up.
Heavy services rebuild the past. FIFO recalculation changes the cost in the rows of past invoices, Rebuild Object Values the reports' opening balances. This is not "refresh the screen": figures in reports can change afterwards, so they are run on a copy or out of hours, by someone who knows what they are curing.
Deleting a company in cascade is irreversible. It erases the company along with every document, reference, balance and history record. Before running it there must be a fresh backup of the database and of the file storage (attachments are not in a database backup) — not "there was one somewhere", but a verified one.
Diagnosis first, medicine second. The order "integrity check → primary source → targeted service" saves days: most discrepancies are cured by a narrow status recalculation rather than a heavy service.
Bank responses and SMS reports live here too. The system does not fill Vendor Payment Bank Responses itself — there is no bank integration: the records are entered by hand to compare a payment's details with what the bank returned. SMS Reports is the log of the mailings sent under SMS Notification, with the operator's statuses; service order SMS are not recorded there.
Where to start
The module needs no setup — it has no settings at all. The order of work when something does not add up:
- Document integrity check — rule out broken references.
- The primary source — item history, transactions, payment history.
- A narrow service for the cause you found.
- A backup — before any of the heavy operations.
- Repeat the report that raised the question.
Common tasks
| You need | Where to go |
|---|---|
| find documents with broken references | Document integrity check |
| understand where a cost came from | Item history |
| see what a document did in the books | Transactions |
| find a particular serial number | Serial balance · service serial balance |
| sort out prepayments | Open Prepayments · prepayments histories |
| fix order statuses | Sales orders statuses · purchase orders statuses recalculation |
| carry shipment costs into invoices | Recalculate FIFO |
| the Nominal Ledger opening balance disagrees with the movements | Rebuild Object Values |
| fix the search in lists | Update Full Search Text |
| migrate data from an old system | Xlsx Import |
| fill a new company with the starter settings | Import Initial Data (leaves the company's filled-in settings alone and skips records whose code already exists) |
| compare a payment's details with what the bank returned | Vendor Payment Bank Responses — entered by hand |
| check the delivery of an SMS mailing | SMS Reports |
Everything in the module
Service registers — money: open invoices · open vendor's invoices · open prepayments · open vendor prepayments · prepayments histories · vendor prepayments history · payments history · transactions · vendor payment bank responses
Service registers — goods: item histories · serial balance · item statuses · units
Service registers — service and the rest: open service orders · service item histories · service serial balance · service item statuses · service payments · contact links · fixed assets status · SMS reports
Reports: document integrity check
Maintenance: recalculate FIFO · Rebuild Object Values · sales orders statuses · purchase orders statuses recalculation · recalculate fixed assets statuses · fill payments history · open vendor invoices fix · waybill status · update full search text · fill JSON objects in transactions and balances · import initial data · send Telegram log · delete company (cascade) · XLSX import · XLSX export
Where to look next
- System — companies, closed periods, correction history.
- Nominal ledger — the reports the questions usually start from.
- Stock — the cost that FIFO recalculation rebuilds.