Datenmodell des Budgets¶
Diese Seite beschreibt, wie KANAP Budgetdaten organisiert: die Objekte, ihre Beziehungen, die Felder, die einen Datensatz identifizieren, und die Dateien, mit denen jedes Objekt ein- und ausgeht. Sie richtet sich an Controller und Budgetadministratoren, die einen Umstieg von Tabellenkalkulationen oder einem anderen Werkzeug vorbereiten, und an das technische Team, das ein BI-Werkzeug an eine On-Premise-Installation anbindet.
Die hier beschriebenen Dateien sind der Vertrag, auf den Sie sich stützen. Ihre Spalten sind in diesem Handbuch dokumentiert und werden beim Import geprüft. Ändert sich ein Aufbau, lehnt ein Import eine Datei im alten Aufbau ab und nennt den Grund. Die Datenbanktabellen dahinter sind intern: Sie ändern sich, wenn KANAP sich weiterentwickelt. Stützen Sie einen Umstieg von einem anderen Werkzeug und jede Integration auf die Dateien.
Die Objekte im Überblick¶
| Objekt | Was es enthält | Wo Sie es verwalten |
|---|---|---|
| OPEX-Zeile | Laufende Kosten, von Jahr zu Jahr fortgeführt | Budgetverwaltung > Budgetzeilen |
| CAPEX-Zeile | Eine Investition, von Jahr zu Jahr fortgeführt | Budgetverwaltung > Budgetzeilen |
| Budgetspalten | Die fünf Betragsspalten, die jede Budgetzeile für jedes Jahr hat | Budgetverwaltung > Administration > Budgetspalten |
| Zeilen unter Menge und Preis | Die Zeilen, aus denen eine Spalte berechnet werden kann | Der Tab Budget einer Budgetzeile |
| Zuordnung | Wie die Kosten eines Jahres einer Budgetzeile auf Unternehmen oder Abteilungen verteilt werden | Der Tab Zuordnungen einer Budgetzeile |
| Unternehmen | Eine juristische Person, die zahlt, mit ihren jährlichen Kennzahlen | Stammdaten > Unternehmen |
| Abteilung | Eine Einheit eines Unternehmens, mit ihrer jährlichen Mitarbeiterzahl | Stammdaten > Abteilungen |
| Kontenplan und Konto | Die Konten, auf die ein Unternehmen seine Budgetzeilen bucht | Stammdaten > Kontenpläne |
| Kostenstelle | Wer die Ausgabe verantwortet, in einem Baum aus Gruppen | Stammdaten > Kostenstellen |
| Lieferant | Wer bezahlt wird | Stammdaten > Lieferanten |
| Analysedimension und Wert | Freie Klassifizierungen für das Reporting | Stammdaten > Analysedimensionen |
| Arbeitstagekalender | Arbeitstage pro Monat und Jahr, für Preise pro Tag | Stammdaten > Arbeitstagekalender |
| Benutzer | IT- und Fachverantwortliche, Budgetverantwortliche | Administration > Benutzer |
| Währungen | Erlaubte Währungen, Reportingwährung, Wechselkurse | Budgetverwaltung > Administration > Währungen |
Wie die Objekte zusammenhängen¶
| Objekt | Verweist auf | Wie viele |
|---|---|---|
| OPEX- oder CAPEX-Zeile | Zahlendes Unternehmen | Eines |
| Konto, aus dem Kontenplan des zahlenden Unternehmens | Eines | |
| Währung, aus den erlaubten Währungen | Eine | |
| Kostenstelle | Keine oder eine. Eine Gruppe ist nicht verwendbar | |
| Lieferant | Keiner oder einer | |
| Wert jeder aktiven Analysedimension | Keiner oder einer pro Dimension. Einer auf einer neuen Zeile für eine erforderliche Dimension | |
| IT-Verantwortlicher und Fachverantwortlicher (Benutzer) | Je keiner oder einer | |
| Budgetjahre | Eines pro Jahr | |
| Budgetjahr einer Budgetzeile | Budgetspalten | Fünf, jede mit zwölf Monatsbeträgen |
| Zeilen unter Menge und Preis | Bis zu 50 pro Spalte | |
| Zuordnung | Eine Methode, mit ihren Unternehmen oder Abteilungen | |
| Zeile unter Menge und Preis mit Preis pro Tag | Arbeitstagekalender | Einer |
| Kostenstelle | Unternehmen | Eines |
| Budgetverantwortlicher (Benutzer) | Keiner oder einer | |
| Übergeordnete Gruppe | Keine oder eine | |
| Gruppe von Kostenstellen | Übergeordnete Gruppe | Keine oder eine. Eine Gruppe hat kein Unternehmen |
| Unternehmen | Kontenplan | Einer. Ein Unternehmen ohne eigenen Kontenplan verwendet den Kontenplan, der Standard für andere Länder ist |
| Land und Basiswährung | Je eines | |
| Kennzahlen: Mitarbeiterzahl, IT-Benutzer, Umsatz | Ein Satz pro Jahr | |
| Abteilung | Unternehmen | Eines |
| Konto | Kontenplan | Einer |
| Analysewert | Analysedimension | Eine |
Eine Budgetzeile ist außerdem mit Projekten, Anfragen, Anwendungen, Assets, Verträgen, Kontakten, Aufgaben, Websites und Anhängen verknüpft. Siehe Verknüpfungen mit anderen Objekten.
Budgetzeilen¶
OPEX- und CAPEX-Zeilen¶
Eine Budgetzeile lebt über mehrere Jahre: Eine Lizenz über drei Jahre ist eine Budgetzeile mit drei Budgetjahren. KANAP vergibt jeder Budgetzeile beim Anlegen eine Nummer, ihre Referenz BL-12, in derselben Reihe für OPEX und CAPEX. Die Liste, der Arbeitsbereich und die Seitenadresse zeigen sie. Budgetzeilen, die vor dieser Reihe angelegt wurden, hatten zusätzlich eine Nummer OPX-12 oder CPX-3: Links, Suchen und die Budgetdatei finden eine Budgetzeile weiterhin darüber. In einer Datei ohne Spalte nature behält eine bloße Zahl ihre frühere Bedeutung (CPX-3, wenn die Liste auf CAPEX gefiltert ist). Siehe Referenzen.
| Feld | Spalte der Budgetdatei | Erforderlich | Hinweise |
|---|---|---|---|
| Art | nature |
Ja | opex oder capex. Eine Datei ändert die Art einer bestehenden Budgetzeile nicht (siehe Den Typ einer Budgetzeile ändern). Eine Datei ohne diese Spalte wird als OPEX-Zeilen gelesen, oder als CAPEX-Zeilen, wenn die Liste auf CAPEX gefiltert ist |
| Nummer | item_number |
Von KANAP vergeben | BL-12. Leer in der Datei: legt eine Budgetzeile an |
| Titel | name |
Ja | Die Spalte Produktname der Liste |
| Beschreibung | description |
Nein | |
| Zahlendes Unternehmen | company_name |
Ja | Wird von der Kostenstelle übernommen, wenn nur die Kostenstelle angegeben ist |
| Lieferant | supplier_name, supplier_erp_id |
Nein | |
| Konto | account_number |
Ja | Im Kontenplan des zahlenden Unternehmens |
| Kostenstelle | cost_center_code |
Nein | Eine Gruppe wird abgelehnt |
| Run oder Build | run_build |
Nein | run oder build |
| Analysewerte | analytics:<code> |
Bei einer erforderlichen Dimension | Eine Spalte pro aktiver Dimension. Eine Budgetzeile nimmt nur in den Dimensionen ihrer Art Werte an. Eine erforderliche Dimension braucht einen Wert auf einer neuen Budgetzeile ihrer Art. Ein neuer Arbeitsbereich beginnt mit den empfohlenen Dimensionen, von denen keine erforderlich ist |
| IT-Verantwortlicher, Fachverantwortlicher | owner_it_email, owner_business_email |
Nein | Aktive Benutzer |
| Projekt | project |
Nein | Eine Projektnummer, zum Beispiel PRJ-3 |
| Währung | currency |
Ja | ISO-Code mit drei Buchstaben |
| Gültig ab | effective_start |
Ja | In einer Datei der 1. Januar des ersten Jahres mit einem Betrag in der Zeile, sonst des laufenden Jahres |
| Ende der Gültigkeit | end_of_validity |
Nein | Das einzige Enddatum einer Budgetzeile |
| Notizen | notes |
Nein |
Eine Budgetzeile hat keinen eigenen Status zum Laden. Sie ist aktiv bis zum Ende ihrer Gültigkeit und wird danach innerhalb einer Stunde deaktiviert. Der auf einer Budgetzeile angezeigte Budgetverantwortliche kommt aus ihrer Kostenstelle und wird nicht auf der Budgetzeile gespeichert.
Den Typ einer Budgetzeile ändern¶
Eine Budgetzeile wechselt in ihrem Arbeitsbereich von OPEX zu CAPEX oder zurück (Typ ändern... im Menü ..., siehe Typ ändern). Eine Budgetdatei ändert den Typ nie. Die Änderung beginnt am 1. Januar eines Jahres:
- Ab dem ersten Jahr der Zeile ändert die Budgetzeile selbst ihren Typ. Sie behält ihre
BL-Nummer, ihre Budgetjahre, Zuordnungen, Verknüpfungen, Anhänge und Aufgaben - Ab einem späteren Jahr endet die Budgetzeile am 31. Dezember des Vorjahres und behält ihre früheren Budgetjahre. Eine neue Budgetzeile des anderen Typs mit eigener
BL-Nummer übernimmt die späteren Budgetjahre, die Kontakte und die Verknüpfungen zu Anwendungen, Assets, Verträgen, Projekten und Anfragen. Die neue Budgetzeile verzeichnet die Budgetzeile, auf die sie folgt, und jede der beiden Budgetzeilen zeigt die andere an
Eine Budgetzeile wird durch höchstens eine Budgetzeile ersetzt. Die Änderung wird abgelehnt, solange eine eingefrorene Spalte Beträge der Budgetzeile in den betroffenen Jahren enthält.
Budgetjahre¶
Jede Budgetzeile hat ein Budget pro Jahr. Der Tab Budget zeigt das laufende Jahr, die zwei Jahre davor und die zwei Jahre danach. Eine Budgetdatei kann bis zu zwölf Jahre auf einmal exportieren.
Ein Budgetjahr enthält die fünf Budgetspalten mit ihren Monatsbeträgen, die Zeilen unter Menge und Preis jeder Spalte und die Zuordnung des Jahres.
Budgetspalten¶
Jede Budgetzeile hat für jedes Jahr dieselben fünf Spalten. Sie werden einmal für die ganze Organisation festgelegt, für OPEX und CAPEX gleichermaßen.
| Position | Standardname | Name in Dateien |
|---|---|---|
| 1 | Budget | budget |
| 2 | Revision | revision |
| 3 | Prognose (standardmäßig ausgeblendet) | forecast |
| 4 | Ist-Werte | actual |
| 5 | Erwarteter Endwert | landing |
- Ein Budgetadministrator kann eine Spalte umbenennen (bis zu 40 Zeichen), ausblenden und die Standardspalte wählen. Der Name in Dateien bleibt gleich, eine Datei funktioniert also auch nach einer Umbenennung. Siehe Budgetspalten.
- Eine ausgeblendete Spalte behält ihre Beträge und nimmt weiterhin Importe an.
- Spalten werden pro Jahr, pro Spalte und pro Typ (OPEX oder CAPEX) eingefroren. Eine eingefrorene Spalte lehnt Bearbeitungen, Importe, Kopien und Zurücksetzungen ab. Siehe Daten einfrieren / auftauen.
Eine sechste Spalte gibt es nicht. Um mehrere Budgetrunden aufzubewahren, verwenden Sie eine Spalte pro Runde, oder kopieren Sie eine Spalte in ein anderes Jahr oder eine andere Spalte mit Budgetspalten kopieren.
Monatsbeträge¶
Jede Spalte eines Budgetjahres enthält zwölf Monatsbeträge mit zwei Dezimalstellen, in der Währung der Budgetzeile. Die Jahressumme ist die Summe der Monate. Eine Datei kann die Jahressumme oder die zwölf Monate einer Spalte enthalten: Eine Jahressumme wird über den Zeitraum der Spalte verteilt, wie im Tab Budget.
Jede Spalte speichert außerdem ihren Zeitraum innerhalb des Jahres und die Herkunft ihrer Beträge: eine Verteilung, eine Kopie, eine Eingabe von Hand oder ihre Zeilen unter Menge und Preis. Berichte rechnen die Beträge mit den Wechselkursen des Jahres in die Reportingwährung um. Siehe Währungseinstellungen.
Zeilen unter Menge und Preis¶
Eine Spalte kann aus Zeilen berechnet werden, jede eine Menge mal ein Stückpreis. Jede Zeile hat eine Beschreibung (bis zu 200 Zeichen), eine Menge (bis zu 3 Dezimalstellen), eine Einheit (Personen, Tage oder Stück), einen Stückpreis (bis zu 4 Dezimalstellen), eine Häufigkeit, einen Zeitraum oder ein Datum und einen Arbeitstagekalender, wenn der Preis pro Tag gilt. Die VZÄ der Spalte ergeben sich aus den Zeilen. Siehe Menge und Preis.
Diese Zeilen werden im Tab Budget erfasst. Keine Datei enthält sie. Eine Budgetdatei schreibt die Monatsbeträge einer Spalte, und die Zeilen bleiben als Referenz bei ihr.
Zuordnungen¶
Jedes Budgetjahr einer Budgetzeile hat eine Zuordnungsmethode:
| Methode | Verteilt nach |
|---|---|
| Standard | Der Standard der Organisation für das Jahr, festgelegt unter Standard-Zuordnungsmethode |
| Mitarbeiterzahl, IT-Benutzer, Umsatz | Den Kennzahlen der Unternehmen für das Jahr |
| Manuell nach Unternehmen | Einer Kennzahl, über die Unternehmen, die Sie auswählen |
| Manuell nach Abteilung | Der Mitarbeiterzahl der Abteilungen, die Sie auswählen |
| Manuelle Prozentsätze | Den Prozentsätzen, die Sie eingeben, zusammen 100 % |
Zuordnungen speisen die Berichte zur Leistungsverrechnung, für OPEX- und CAPEX-Zeilen. Keine Datei importiert sie. Budgetspalten kopieren überträgt sie von einem Jahr ins nächste, und die Berichte zur Leistungsverrechnung exportieren ihre Tabellen als CSV. Siehe Berichte.
Verknüpfungen mit anderen Objekten¶
| Verknüpfung | Wo sie angelegt wird | In einer Datei |
|---|---|---|
| Projekte | Der Tab Verknüpfungen der Budgetzeile oder des Projekts | Die Budgetdatei enthält ein Projekt pro Budgetzeile in project. Die Verknüpfungen des Tabs Verknüpfungen sind nicht in der Datei. Die Listen zeigen beides |
| Anfragen | Der Tab Verknüpfungen der Anfrage | Nein |
| Anwendungen | Der Tab Verknüpfungen der Budgetzeile oder der Anwendung | Nein |
| Assets | Der Tab Verknüpfungen des Assets | Nein |
| Verträge | Der Tab Verknüpfungen der Budgetzeile oder des Vertrags | Nein |
| Kontakte, Websites, Anhänge | Der Tab Verknüpfungen der Budgetzeile | Nein |
| Aufgaben | Der Tab Übersicht der Budgetzeile | Nein |
Stammdaten¶
Die Budgetdatei findet Stammdaten über fachliche Kennungen. Laden Sie die Stammdaten zuerst. Die Budgetdatei legt fehlende Lieferanten an, wenn Fehlende Lieferanten anlegen angehakt ist, sowie fehlende Analysewerte. Sonst legt sie nichts an.
| Objekt | In Dateien identifiziert über | Erforderlich | Auf einer Budgetzeile |
|---|---|---|---|
| Unternehmen | name |
Name, Land, Basiswährung. Die Oberfläche verlangt außerdem einen Ort | company_name |
| Abteilung | company_name und name |
Unternehmen, Name | Von Zuordnungen verwendet |
| Kontenplan | Seinen Code (coa_code in der Kontendatei) |
Code, Name, Geltungsbereich | Über das zahlende Unternehmen |
| Konto | account_number innerhalb seines Kontenplans (coa_code in der globalen Datei) |
Nummer, Name | account_number |
| Kostenstelle | code, unabhängig von der Groß- und Kleinschreibung |
Code, Name, Typ, und das Unternehmen einer Kostenstelle | cost_center_code |
| Lieferant | name |
Name | supplier_erp_id, dann supplier_name |
| Analysedimension | Ihren Code | Code | Die Spaltenüberschrift analytics:<code> |
| Analysewert | axis_code und name |
Name | Die Zelle der Spalte seiner Dimension |
| Arbeitstagekalender | code, unabhängig von der Groß- und Kleinschreibung |
Code, Name | Von Zeilen unter Menge und Preis verwendet |
| Benutzer | email |
E-Mail-Adresse | owner_it_email, owner_business_email |
Worauf es ankommt, wenn Sie ein anderes Werkzeug auf KANAP abbilden:
- Unternehmen tragen ihre Mitarbeiterzahl, ihre IT-Benutzer und ihren Umsatz pro Jahr. Der Umsatz wird in Millionen der Basiswährung des Unternehmens angegeben. Zuordnungen nach Mitarbeiterzahl, IT-Benutzern oder Umsatz brauchen die Kennzahlen des Jahres.
- Konten gehören zu einem Kontenplan, und ein Unternehmen verwendet einen Kontenplan. Eine Kontonummer ist eine ganze Zahl, eindeutig innerhalb ihres Kontenplans. Das Konto einer Budgetzeile muss im Kontenplan ihres zahlenden Unternehmens existieren, und jedes Konto legt fest, ob es für OPEX-Zeilen, CAPEX-Zeilen oder beides dient. Siehe Kontenpläne und Kontenverwaltung.
- Kostenstellen bilden einen Baum. Eine Gruppe fasst Kostenstellen und andere Gruppen zusammen und kann mehrere Unternehmen umfassen. Eine Kostenstelle gehört zu einem Unternehmen, hat keine Kinder und ist der einzige Knoten, den eine Budgetzeile verwenden kann. Ihr Budgetverantwortlicher erscheint auf jeder Budgetzeile, die sie trägt. Siehe Kostenstellen.
- Lieferanten werden in ihrer eigenen Datei über den Namen zugeordnet. Die Budgetdatei ordnet sie zuerst über die ERP-ID zu, dann über den Namen: Füllen Sie die ERP-ID, wenn Ihr ERP eine hat.
- Analysedimensionen werden auf ihrer Seite angelegt, jede mit einem Code. Eine Budgetzeile hat höchstens einen Wert pro Dimension. Siehe Analysedimensionen.
- Arbeitstagekalender sind Standardkalender (sie folgen den Feiertagen eines Landes) oder benutzerdefinierte Kalender. Sie enthalten die Arbeitstage jedes Monats, Jahr für Jahr. Siehe Arbeitstagekalender.
- Währungen sind ISO-Codes mit drei Buchstaben. Die erlaubten Währungen, die Reportingwährung und die Wechselkurse werden in der Oberfläche festgelegt und haben keine Datei.
Austauschformate¶
Jede der folgenden Dateien wird auf der Seite exportiert und importiert, die das Objekt verwaltet. Importe laufen in zwei Schritten: eine Prüfung, die nichts schreibt, dann ein Laden. Mit Ausnahme der Vertragsdatei teilen sie die Regeln zu Kodierung, Trennzeichen, Datumsangaben und Beträgen sowie die Größengrenze, die unter CSV-Dateien beschrieben sind.
| Objekt | Export | Import | Zugeordnet über | Details |
|---|---|---|---|---|
| OPEX- und CAPEX-Zeilen und ihre Beträge | Ja | Ja | item_number (BL-12) |
Ein Budget aus einer Tabellenkalkulation laden |
| Unternehmen und ihre Kennzahlen | Ja | Ja | name |
Unternehmen |
| Abteilungen | Ja | Ja | company_name und name |
Abteilungen |
| Konten | Ja | Ja | account_number innerhalb des Kontenplans |
Kontenpläne und Kontenverwaltung |
| Kontenpläne | Nein | Nein | Auf der Seite oder aus einer Vorlage angelegt. Siehe Kontenpläne und Kontenverwaltung | |
| Kostenstellen | Ja | Ja | code |
Kostenstellen |
| Lieferanten | Ja | Ja | name |
Lieferanten |
| Analysewerte | Ja | Ja | axis_code und name |
Analysedimensionen |
| Arbeitstagekalender | Ja | Ja | code, eine Zeile pro Kalender und Jahr |
Arbeitstagekalender |
| Benutzer | Ja | Ja | email |
CSV-Datei der Benutzer |
| Verträge | Ja | Ja | name und supplier_name |
Verträge. Die Datei enthält nicht die Verknüpfungen zu Budgetzeilen |
| Zuordnungen | Aus den Berichten zur Leistungsverrechnung | Nein | Berichte | |
| Zeilen unter Menge und Preis, Einstellungen der Budgetspalten, Einfrierungen, Währungen | Nein | Nein | In der Oberfläche festgelegt |
Die Budgetdatei liest und schreibt die Beträge jeder Spalte und jedes Jahres, als Jahressummen oder Monate, mit den Details der Budgetzeile in derselben Zeile. Sie ist der Weg hinein für ein anderswo erstelltes Budget und der Weg hinaus zu einer Tabellenkalkulation oder einem BI-Werkzeug. Eine Datei enthält beide Arten von Budgetzeilen, ihre Spalte nature gibt die Art an. Budgetverwaltung > Budgetzeilen exportiert die angezeigten Budgetzeilen beider Typen und importiert eine Datei mit beiden Arten, mit der Administratorstufe auf Budget.
Ein Budget nach KANAP übernehmen¶
- Bilden Sie jedes Objekt Ihres bisherigen Werkzeugs auf die Tabellen oben ab, und seine Kennungen auf die Spalte Zugeordnet über.
- Laden Sie die Stammdaten in der Reihenfolge aus Ein ganzes Budget laden.
- Exportieren Sie die Budgetdatei aus der Liste, um die Kopfzeile Ihrer Organisation zu erhalten, mit einer Spalte pro Analysedimension. Eine Liste ohne Budgetzeile exportiert nur die Kopfzeile.
- Füllen Sie eine Zeile pro Budgetzeile mit ihrer
nature, mit leereritem_number, mit einer Betragsspalte pro Budgetspalte und Jahr (budget_2027) oder pro Monat (budget_2027_03). - Importieren Sie die Datei. Die Prüfung meldet die Fehler nach Zeile der Datei, und nichts wird geschrieben, bevor Sie laden.
Ein stimmiger Satz von Beispieldateien, mit einem fiktiven Unternehmen und seinen Stammdaten, liegt im KANAP-Repository.
Die Daten direkt lesen¶
Bei einer On-Premise-Installation gehört die PostgreSQL-Datenbank Ihnen: KANAP läuft auf der Datenbank, die Sie bereitstellen. Sie können sie lesen, sichern und Werkzeuge daran anbinden.
Bevor Sie das tun, beachten Sie drei Punkte.
Die Sicherheit auf Zeilenebene filtert jedes Lesen. KANAP verbindet sich mit einer eigenen Anwendungsrolle, die die Sicherheit auf Zeilenebene nicht umgehen kann. Mit einer Superuser-Rolle oder einer Rolle, die sie umgeht, startet KANAP nicht. Jede Tabelle mit Ihren Daten zeigt ihre Zeilen nur einer Sitzung, die den gelesenen Arbeitsbereich angegeben hat. Eine Sitzung ohne diese Angabe erhält leere Ergebnisse, ohne Fehlermeldung.
Die Tabellen sind intern. Ihre Namen, Spalten und Speicherung ändern sich von Version zu Version, durch die Migrationen, die bei jedem Update laufen. Die Spaltennamen in der Datenbank sind Speicherschlüssel und weichen von den Namen in der Oberfläche und in den Dateien ab. Eine Abfrage auf die heutigen Tabellen kann nach einem Update falsche oder leere Ergebnisse liefern.
Ihre Objekte können ein Update blockieren. PostgreSQL verweigert das Ändern oder Löschen einer Spalte, von der eine View abhängt. Eine View auf KANAP-Tabellen kann ein Update scheitern lassen. Halten Sie Ihre Abfragen im BI-Werkzeug oder in einer separaten Reporting-Datenbank.
Für ein BI-Werkzeug nutzen Sie zuerst die Exporte. Die Budgetdatei und die Stammdatendateien enthalten fachliche Namen und Kennungen, die in diesem Handbuch dokumentiert sind.
Wenn ein Werkzeug die Datenbank lesen muss, geben Sie ihm eine eigene Rolle mit reinem Lesezugriff. Verwenden Sie nie die Anwendungsrolle. Zum Beispiel als PostgreSQL-Administrator, mit kanap als Anwendungsrolle und Datenbank:
-- The workspace of this installation
SELECT id FROM tenants;
CREATE ROLE kanap_bi LOGIN PASSWORD 'change-me' NOSUPERUSER NOBYPASSRLS;
GRANT CONNECT ON DATABASE kanap TO kanap_bi;
GRANT USAGE ON SCHEMA public TO kanap_bi;
GRANT SELECT ON spend_items, companies, accounts TO kanap_bi;
ALTER ROLE kanap_bi IN DATABASE kanap SET app.current_tenant = '<id from the first query>';
Vergeben Sie SELECT nur auf die Tabellen, die Ihre Berichte brauchen. Die Datenbank enthält auch Benutzerkonten, Anmeldedaten und Einstellungen, die ein Reporting-Werkzeug nicht braucht. Prüfen Sie die Rechte und die Abfragen nach jedem Update.