Datenbank-Tabellen
Diese Seite beschreibt eine Auswahl von Tabellen, die bei Analyse, Support und Anbindung von Umsystemen
häufig gebraucht werden. Die Übersicht über die Schemas steht unter Datenbank. Alle Tabellen
haben eine Spalte Id; die meisten zusätzlich TenantId für den Mandanten.
biz.IrCases
Abschnitt betitelt „biz.IrCases“Ein Eintrag pro Beleg mit den Kopfdaten der Rechnung.
| Spalte | Bedeutung |
|---|---|
ExternalId | Belegnummer oder Barcode für die Benutzer. Muss technisch nicht eindeutig sein. |
ProcessId | Prozess des Belegs (conf.Processes), zum Beispiel Gemeinkosten oder Materialwirtschaft. |
CurrencyCode | Währung. Für jede verwendete Währung sollte ein Wechselkurs in Mstr.CurrencyExchangeRates bestehen. |
DocDate | Rechnungsdatum. |
ImportDate | Zeitpunkt des Imports. |
SupplierId | Lieferant (Mstr-Stammdaten). |
GrossAmountTotal | Bruttobetrag total. |
EsrAccount, EsrReference, EsrCodeLine | Konto, Referenz und Codierzeile eines Einzahlungsscheins. Bei QR-Rechnungen stehen die Daten in PaymentReference und QrCodeContent. |
LastInitializedNodeId | Aktueller Workflow-Schritt. |
biz.IrTasks
Abschnitt betitelt „biz.IrTasks“Aufgaben im Workflow. Jede Aufgabe gehört zu einem Beleg und ist einem Benutzer oder einer Rolle zugewiesen.
biz.IrItemLines
Abschnitt betitelt „biz.IrItemLines“Positionen (Kontierungszeilen) eines Belegs mit Konto, Kostenstelle und Betrag.
biz.IrHistory
Abschnitt betitelt „biz.IrHistory“Verlauf eines Belegs: wer wann welchen Schritt ausgeführt hat.
biz.IrMessages
Abschnitt betitelt „biz.IrMessages“Nachrichten und Kommentare zu einem Beleg (Spalten Message, IrCaseId, CreatedUserId, CreatedDateUtc).
biz.VisaRecord und biz.VisaReject
Abschnitt betitelt „biz.VisaRecord und biz.VisaReject“Erteilte beziehungsweise abgelehnte Visa pro Position (IrItemLineId), mit Benutzer (UserId), Stufe und
bei Ablehnungen dem Grund (Reason).
biz.OutOfOffice
Abschnitt betitelt „biz.OutOfOffice“Abwesenheiten der Benutzer (UserId, StartDateUtc, EndDateUtc).
biz.IrEmail
Abschnitt betitelt „biz.IrEmail“Warteschlange der E-Mails, die der invoiceR versendet (ReceiverEmail, Subject, SentDate). Ist SentDate
leer, wurde die E-Mail noch nicht verschickt.
biz.IrSynonyms
Abschnitt betitelt „biz.IrSynonyms“Alternative Schreibweisen (SourceText, AlternativeText), zum Beispiel für die Erkennung von Begriffen.
biz.Documents
Abschnitt betitelt „biz.Documents“Ein Eintrag pro Dokument, das der invoiceR abgelegt hat. Das PDF selbst liegt in der Ablage, nicht in der Datenbank.
| Spalte | Bedeutung |
|---|---|
FileName | Ursprünglicher Dateiname beim Hochladen. |
RepositoryHandle | Kennung des Dokuments in der Ablage, zum Beispiel Dateipfad oder Dokument-ID des Archivs. |
DocumentType | 1 Rechnung, 2 Beilage, 3 Report, 4 Dokument. |
DocumentRepositoryId | Verwendete Ablage (conf.DocumentRepositories). |
IrCaseId | Zugehöriger Beleg. |
Die Spalten Name, MimeType, Description, FileSize und IconType werden derzeit nicht ausgewertet.
biz.DocumentRecognitionStates
Abschnitt betitelt „biz.DocumentRecognitionStates“Ein Eintrag pro Dokument, das an eine Texterkennung (zum Beispiel Parashift) geschickt wird.
| Spalte | Bedeutung |
|---|---|
State | 1 vorgemerkt, 2 in Bearbeitung, 3 abgeschlossen, 4 Fehler. |
DocumentRecogniserId | Verwendete Texterkennung (conf.DocumentRecognisers). |
ServiceHandle | Kennung des Dokuments beim Erkennungsdienst, für spätere Statusabfragen. |
LastLog | Letzte Meldung zur Erkennung. |
StartTimeUtc, EndTimeUtc | Beginn und Ende der Erkennung. |
IrCaseId | Zugehöriger Beleg. |
biz.IrCaseReadRights
Abschnitt betitelt „biz.IrCaseReadRights“Legt fest, welcher Benutzer welchen Beleg im Archiv öffnen darf. Gibt es für Benutzer und Beleg einen
Eintrag, ist das Öffnen erlaubt. Die Tabelle kann sehr gross werden. Die Einträge berechnet ein
wiederkehrender Job mit der Stored Procedure dbo.CalculateCaseReadRightsForUser.
| Spalte | Bedeutung |
|---|---|
IrCaseId | Beleg. |
UserId | Benutzer. |
IrCaseReadRightType | Grund des Eintrags: 1 Verlauf, 2 Aufgaben-Inhaber, 3 Ziel der Zuweisung, 4 Ziel des Visums. Die Standard-Prozedur setzt immer 1. |
CreatorId, Context | Optional, zur Unterscheidung verschiedener Quellen. Werden derzeit nicht ausgewertet. |
conf.DocumentRepositories
Abschnitt betitelt „conf.DocumentRepositories“Angebundene Ablagen und Archive. Beschreibung unter Dokumentablage und Archiv.
conf.IrRecurringJobs
Abschnitt betitelt „conf.IrRecurringJobs“Wiederkehrende Jobs. Beschreibung unter Wiederkehrende Jobs.
conf.IrReport
Abschnitt betitelt „conf.IrReport“Erfassungs-Karten auf der Seite Reporte. Beschreibung unter Beleg-Erfassung einrichten.
conf.IrManagers
Abschnitt betitelt „conf.IrManagers“Konfiguration von Hintergrund-Komponenten als JSON in Configuration, zum Beispiel für den E-Mail-Import
(siehe Postfach-Anbindung).
conf.FolderWatchers
Abschnitt betitelt „conf.FolderWatchers“Ordner, aus denen der invoiceR Dateien als neue Belege importiert (WatchPath, Enabled). Weitere Spalten
legen Vorgabewerte für die Belege fest (DefaultMandatorCode, DefaultProcessType, DefaultInvoiceType,
DefaultSupplierCode) und ob Dokumente aufgeteilt werden. Für das Aufteilen eines PDFs in mehrere Belege
anhand von Trennseiten enthält DocumentSplitting ein JSON:
{ "SplitDocuments": true, "DocumentSeparators": [ "InvoiceR" ]}conf.AccountingFieldButtons
Abschnitt betitelt „conf.AccountingFieldButtons“Zusätzliche Schaltflächen bei einzelnen Feldern im Kontierungs-Formular (Name, Location, OptsIcon,
OptsOnClick, AccountingFieldId, EnabledPermission).
imp.IrCaseImports
Abschnitt betitelt „imp.IrCaseImports“Schnittstelle für Umsysteme, die neue Belege anliefern. Das Umsystem schreibt eine Zeile, der invoiceR übernimmt sie kurz darauf als Beleg.
IndexedDateundProcessedDatebleiben beim Einfügen leer (NULL). Der invoiceR setztIndexedDate, wenn er den Import startet, undProcessedDate, wenn der Beleg erfolgreich angelegt ist. BleibtProcessedDateauch nach einigen Minuten leer, steht der Grund im Protokoll des Import-Jobs im Hangfire Dashboard.- Nicht erkannte Werte als
NULLübergeben, nicht als leere Zeichenfolge.
| Spalte | Bedeutung |
|---|---|
TenantId | Mandant, in der Regel 1. |
ExternalId | Belegnummer. In Absprache mit enio auch leer, dann vergibt die Datenbank eine Nummer. |
MandatorCode | Buchungskreis oder Mandant im ERP. |
ProcessType | GK für Gemeinkosten (Standard), MM für Rechnungen mit Bestellbezug. |
DocFilePath | Ort des PDFs: Dateipfad, UNC-Pfad oder Adresse mit Schema wie https://…. |
DocDate, ImportDate | Rechnungsdatum und Importzeitpunkt. |
CurrencyCode | Währung, zum Beispiel CHF. |
SupplierCode | Lieferantennummer. |
GrossAmountTotal | Bruttobetrag total. Genügt, wenn keine Mehrwertsteuer ausgewiesen werden muss. |
GrossAmount1…4, NetAmount1…4, VatAmount1…4, VatRate1…4 | Beträge pro Mehrwertsteuersatz. Bei einem Satz nur die Felder mit 1 füllen, bei zwei Sätzen zusätzlich 2 und so weiter. |
InvoiceType | R für Rechnung. |
OrderNumbers, DeliveryNumbers | Bei MM: erkannte Bestell- und Liefernummern als JSON-Array, zum Beispiel ["B-2910","B-1001"]. |
INSERT INTO imp.IrCaseImports (TenantId, ExternalId, MandatorCode, ProcessType, DocFilePath, CurrencyCode, DocDate, ImportDate, SupplierCode, GrossAmount1, NetAmount1, VatAmount1, VatRate1, GrossAmountTotal, InvoiceType)VALUES (1, N'2026-000123', N'100', N'GK', N'\\<server>\Import\rechnung-123.pdf', N'CHF', '2026-05-28', CURRENT_TIMESTAMP, N'10020', 108.10, 100.00, 8.10, 8.1, 108.10, N'R');imp.IrOrderImports
Abschnitt betitelt „imp.IrOrderImports“Bestell- und Lieferbezüge aus einem Umsystem (ExternalIrCaseId, ExternalOrderId, OrderDate,
ExternalDeliveryId, DeliveryDate). ProcessedDateUtc setzt der invoiceR nach der Übernahme.
