Database
invoiceR stores its data in a Microsoft SQL Server database. The tables are grouped into schemas by purpose. This helps you judge which tables grow with the number of documents, where the configuration lives and where surrounding systems deliver data.
Schemas
Section titled “Schemas”| Schema | Content |
|---|---|
biz | Business data. Documents (biz.IrCases), lines, tasks, history, approvals, file references. invoiceR creates and changes this data itself. The tables grow with the number of documents. |
conf | Configuration. Processes, workflow steps, storages, recurring jobs, folder watching, accounting settings. Few, rather static entries, independent of the number of documents. Part of it has a user interface; enio maintains the rest with SQL. |
imp | Import data. Surrounding systems write new documents or order references here, for example with a simple INSERT. A job checks the tables regularly and takes over new entries. |
exp | Export data. Data for surrounding systems, for example the queue for handing booked documents over to the ERP. |
Mstr | Master data. Cost centres, accounts, suppliers, projects, exchange rates. Usually imported from the ERP and kept in sync. |
Order | Purchase orders for matching invoices with orders. |
ai | Data for AI features. |
dbo | Standard platform tables, for example users, roles, permissions, settings and logs. |
HangFire | Data of the Hangfire job control: scheduled, running and completed jobs. |
A selection of important tables with their columns is listed under Database tables.
Delivering documents through the database
Section titled “Delivering documents through the database”Surrounding systems (for example a scanning service) can deliver new documents by writing a row to
imp.IrCaseImports. The path to the PDF goes into DocFilePath, the recognized values into the other columns.
Shortly afterwards invoiceR creates a document from it. Details and an example are under
Database tables.
