Der BusinessPlanner Journalimport erfordert zusätzliche Schritte bei der Einrichtung und ggf. die Erstellung eines angepassten Datenbankplugins für die entsprechende Buchhaltung.
Wir empfehlen ausdrücklich, die Installation mit unserer Unterstützung vorzunehmen.
Einrichtung des Journalimportes
Installation
- Server: Datenbank für das Buchungsjournal einrichten "Accounting"
- Clients: Setup auf den Clients ausführen und die "Anbindung für das Buchungsjournal" installieren
- Clients: CONFIG-Dateien anpassen auf den Clients und den ConnectionString für die Journaldatenbank ggf. anpassen
- Server: Ggf. Setup auch auf dem Server ausführen, um dort die Anbindung zu installieren (für die automatisierte tägliche Ausführung)
- Clients: Datenimport-Plugins für das Buchungsjournal in die Plugins-Ordner kopieren
Details zu den einzelnen Schritten siehe Installationsanleitung:
https://www.businessplanner.at/downloads/supportcenter/BusinessPlanner_Journal_Installation.pdf
Einrichtung der Datenimporte
Einrichtung des Datenimportes im "Buchungsjournal Import"
Bei der Spaltenzuordnung ist zu beachten, dass folgende Spalten unbedingt zugeordnet werden müssen:
- Belegnummer (über die Belegnummer sucht der BP zusammengehörige Buchungen in der Ansicht)
- Satznummer (diese sollte pro Wirtschaftsjahr möglichst eindeutig sein, um Probleme beim Import zu vermeiden)
- Buchungsperiode
- Konto
- Kontoname
- Saldo
Weitere Informationen siehe Tabelle mit den Spalten unten.
Einrichtung des Datenimportes im BusinessPlanner
Es muss zunächst ein Datenimport als Datenquelle "BPA Buchungsjournal" eingerichtet werden:
Als Benutzername und Passwort den User "BusinessPlannerUser" mit dem Passwort (siehe CONFIG-Datei) verwenden und den Haken bei "Integrierte Security verwenden" rausnehmen. Ansonsten versucht er, mit dem angemeldeten Windows-User sich anzumelden, der in der Regel keine Berechtigung auf der Reporting-Datenbank hat.
Dann muss in den Planeigenschaften für entsprechende Mandantennummer (im Beispiel oben "100") eingetragen werden. Das ist wichtig, damit man über die Datenherkunft die Buchungen anzeigen lassen kann:
Verwendung des Buchungsjournales im BusinessPlanner
Um im BusinessPlanner die Einzelbuchungen aufzurufen, muss man einen Doppelklick auf die Werte in der Datenherkunft machen.
Dann werden die Buchungen hinter dem Wert angezeigt:
FAQ
Wie geht der Journalimport damit um, wenn EB-Werte in der Buchhaltung nicht neu gebucht werden, sondern durch laufende Fortschreibung der Altjahre entstehen?
Die EB-Werte müssen beim Einlesen in das Buchungsjournal als Buchung "erzeugt" werden, sofern sie nicht selbst schon als Buchung im Quellsystem vorhanden sind (z.B. DATEV).
Diese Buchungen zu erzeugen wird vom Datenimport-Plugin übernommen und kann/muss vom Anwender nicht gesteuert werden.
Werden beim Journalimport die bereits importierten Journaldaten immer wieder mit den neuen Daten überschrieben?
Ja, das Verhalten ist vergleichbar mit dem "Initialisieren" beim Import in den BusinessPlanner.
Wenn zum Beispiel Daten für einen Zeitraum 01/2023 bis 12/2023 in das Buchungsjournal eingelesen werden, dann wird darauf geachtet, dass ggf. vorhandene Altdaten in der Datenbank aus dem Zeitraum beim Import entfernt werden.
Kann ich den Journalimport zusätzlich zu meinem normalen Import via ODBC verwenden?
Ja, das ist kein Problem. Ein bestehender Datenimport kann weiterverwendet werden. Der Journalimport könnte dann zusätzlich täglich automatisiert im Hintergrund laufen und die Detaildaten bereitstellen für die Datenherkunft.
Der Vorteil dieser Trennung liegt darin, dass man auch tagsüber im Bedarfsfall Datenimporte machen kann, ohne vorher das Journal aktualisieren zu müssen. Gleichzeitig hat man aber den Komfort der Datenherkunft auf Belegebene.
Der Nachteil liegt darin, dass sich die Datenstände zwischen Journalimport und dem Import in den BusinessPlanner unterscheiden könnten.
Technische Hintergründe
Informationen zu Spalten im Journalimport
Spalte in der Datenbank | Spalte im Importer | Typ | Pflichtspalte | Sichtbar im BusinessPlanner | Beschreibung |
---|---|---|---|---|---|
Mandant | Mandant | Text - Länge: 32 | Nein | Optional | Diese Spalte wird aus dem Feld "Mandant" im Datenimport oben rechts befüllt. Sie sollte beim Datenimport nicht einer Spalte zugeordnet werden. |
BelegNr | Belegnummer | Text - Länge: 48 | Ja | Optional | Spalte muss eindeutig sein |
SatzNr | Satznummer | Text - Länge: 32 | Nein (Datenbank Ja) | Optional | |
Konto | Konto | Text - Länge: 32 | Ja | Standard (Detailansicht) | |
BKZ | Text - Länge: 3 | Nein | Nein | Standardwert: I | |
BelegName | Belegbezeichnung | Text - Länge: max | Nein | Standard | |
RechnungsNr | Rechnungsnummer | Text - Länge: max | Nein | Nein | |
KontoName | Kontoname | Text - Länge: max | Nein | Standard (Detailansicht) | |
PersonenKonto | Personenkonto | Text - Länge: 32 | Nein | Standard | |
PersonenKontoName | Personenkonto-Name | Text - Länge: max | Nein | Standard (Detailansicht) | |
KKZ | Kontokennzeichen | Text - Länge: 3 | Nein | Nein | |
Partner | Partner | Text - Länge: max | Nein | Nein | |
Belegdatum | Belegdatum | Datum | Nein (Datenbank Ja) | Standard | Sollte importiert werden |
Buchungsperiode | Periode | Datum | Ja | Optional | |
Monat | Bedeutung unklar | ||||
Buchungstext | Buchungstext | Text - Länge: max | Nein | Standard | |
Saldo | Betrag | Zahl | Ja | Standard | |
OriginalSaldo | Ursprungswert | Zahl | Nein | Optional | Betrag in Fremdwährung |
Waehrung | Währung | Text - Länge: max | Nein | Optional | |
Dimension | Dimension1..6 | Text - Länge: max | Nein | Optional | |
BelegLink | Beleglink | Text - Länge: max | Nein | Nein |
Schlüssel: Mandant, Konto, Buchungsdatum, Belegnummer, Dimension
Datenbank-Tabellen (Version 3.9)
Tabellenname | Beschreibung | |
---|---|---|
AccountingImports | Definition der Buchungsjournalimporte | |
AccountingProperties | Zusätzliche Eigenschaften der Buchungsjournalimporte, insb. für Datenquellen | |
Accountings | Importierte Buchungen | |
AccountingsTmp | Hilfstabelle für den Datenimport | |
ExchangeRatesTmp | Hilfstabelle für den Datenimport | |
GeneralLedger | Summen- und Saldenliste | Wird automatisch nach dem Import erzeugt |
ICAccountings | Importierte IC-Buchungen | |
KontenTmp | Hilfstabelle für den Datenimport | |
MandantenTmp | Hilfstabelle für den Datenimport | |
PartnerZuordnungen | ||
Waehrungen | Liste der Währungen | Wird aus dem BusinessPlanner importiert über den Klick auf einen Button in der Oberfläche des Importers |
Informationen zu speziellen Plugins
CSV
Im Excel Import im Buchungsjournal Datei auswählen und dann dort die zweite Option „Alle Text Dateien“ auswählen:
Es springt dann auch die GUI um mit Trennzeichen:
ODBC / SQL
Automatischer Job
Bei ODBC-Verbindungen muss bei einem automatischen Job auf folgendes geachtet werden:
- DSN muss auf den Clients und Server gleich eingerichtet werden, insb. den Namen.
- System DSN verwenden: Das liegt daran, dass der tägliche Job auf dem Server mit einen gesonderten User läuft. Der kann einen "Benutzer DSN" nicht verwenden.
Timeout
Eine ODBC-Abfrage bricht automatisch nach 30 Sekunden ab (Timeout).
Wenn eine Abfrage länger läuft, kann bei einer ODBC-Abfrage die BusinessPlanner.Client.Accounting.exe.config wie folgt angepasst werden. Das geht nur bei ODBC, beim Abfragetyp "SQL" gilt immer ein Timeout von 30 Sekunden!
<?xml version="1.0" encoding="utf-8"?> <configuration> <configSections> <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" /> <sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> <section name="BusinessPlanner.Accounting.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" /> <section name="BusinessPlanner.Client.Accounting.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" /> <section name="BusinessPlanner.Client.Common.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> </sectionGroup> </configSections> <applicationSettings> <!-- DataAccess settings --> <BusinessPlanner.Client.Accounting.Properties.Settings> ... </BusinessPlanner.Client.Accounting.Properties.Settings> <BusinessPlanner.Accounting.Properties.Settings>
<setting name="CommandTimeout" serializeAs="String">
<value>300</value>
</setting>
</BusinessPlanner.Accounting.Properties.Settings> <!-- BusinessPlanner.Client.Common Settings --> <BusinessPlanner.Client.Common.Properties.Settings> ... </BusinessPlanner.Client.Common.Properties.Settings> </applicationSettings>
DATEV
Die BusinessPlanner.Client.Accounting.exe.config muss angepasst werden:
<?xml version="1.0" encoding="utf-8"?> <configuration> <configSections> <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" /> <sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> <section name="BusinessPlanner.Plugin.Accounting.DATEV.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
<section name="BusinessPlanner.Accounting.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" /> <section name="BusinessPlanner.Client.Accounting.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" /> <section name="BusinessPlanner.Client.Common.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> </sectionGroup> </configSections> <applicationSettings> <!-- DataAccess settings --> <BusinessPlanner.Client.Accounting.Properties.Settings> ... </BusinessPlanner.Client.Accounting.Properties.Settings> <BusinessPlanner.Plugin.Accounting.DATEV.Properties.Settings>
<setting name="RequestTimeout" serializeAs="String">
<value>6000</value>
</setting>
</BusinessPlanner.Plugin.Accounting.DATEV.Properties.Settings> <BusinessPlanner.Accounting.Properties.Settings>
<setting name="CommandTimeout" serializeAs="String">
<value>300</value>
</setting>
</BusinessPlanner.Accounting.Properties.Settings> <!-- BusinessPlanner.Client.Common Settings --> <BusinessPlanner.Client.Common.Properties.Settings> ... </BusinessPlanner.Client.Common.Properties.Settings> </applicationSettings>
Die DATEV API muss auf dem DATEV-Server wie folgt eingerichtet werden:
Installation des "ASP NET Core 6 Hosting Bundles":
Kopieren der Anwendung in folgenden Ordner:
Anpassung der KRExport-Settings in "appsettings.json":
Einrichtung der Anwendung als Windows-Dienst:
- Download NSSM (Non-Sucking Service Manager): https://nssm.cc/builds
- ZIP-Datei entpacken und die Datei "nssm.exe" im Ordner "win64" in den Programmordner "DATEV Importer REST API" kopieren.
- Starten der Eingabeaufforderung als Administrator und dann in das Programmverzeichnis "DATEV Importer REST API" gehen.
- Dienst erstellen mit folgendem Befehl: nssm install BPDATEVImporter
- Folgende Einstellungen verwenden:
- Path: C:\Program Files\BusinessPlanner Advisory\DATEV Importer REST API\DATEVImporter.exe
- Startup Directory: C:\Program Files\BusinessPlanner Advisory\DATEV Importer REST API
- Dann in "Dienste" wechseln und den Dienst starten.
Der Port ist standardmäßig auf "5000" eingestellt. Über die "appsettings.json" kann es auf einen anderen Port umgestellt werden:
Parameter in appsettings.json
Bei den DATEV-Parametern gibt es (ab 08.07.24) jetzt noch folgende Parameter:
"Rechnungslegungszweck": "0,05" ---- nicht unbedingt erforderlich, da es 0 und 50 die Defaultwerte sind.
"WeitereParameter": " -abc:50" ---- hier müsste man den vollständigen Parameter mit Name und Wert angeben.
Datenimport in Buchungsjournal einrichten
URL für den Webservice - Lokal am Server:
http://localhost:8080/api/datev
URL für den Webservice - Wenn der Webservice auf einem anderen Server (mit installierten DATEV) läuft - zum Beispiel:
http://datevserver:8080/api/datev