Dieses Update enthält Qualitätsverbesserungen für das Data Warehouse und macht die Übertragung der Daten in die Zieldatenbank zuverlässiger.
- Ablauf
- Der Installer ermittelt die installierte Lexware-Version und lädt das passende Paket. Voraussetzung ist Lexware ab Version 26.70 mit PostgreSQL-Datenbank.
- Zielsystem
- Windows, Installation auf dem Lexware-Server
- Signatur
- Authenticode, CO-ORGA Organisationsgesellschaft mit beschränkter Haftung
Was der Betrieb voraussetzt, steht unter Systemvoraussetzungen.
Versionsverlauf
Sortiert nach der LX-Connect-Version, neueste zuerst. Zu jeder Version steht, ab welcher Lexware-Version sie läuft. Welche Lexware-Version installiert ist, steht in Lexware im Menü ? › Info in der ersten Zeile.
Fehlerbehebungen.
- Musterfirma gelöscht: Wurde in Lexware die Musterfirma (Firma 1) gelöscht, ließ sich in LX Connect kein neuer Exportjob mehr anlegen – es erschien nur „Unerwarteter Fehler“. LX Connect arbeitet jetzt mit jeder vorhandenen Firma, unabhängig davon, welche Firmen in Lexware angelegt sind.
- Verständliche Hinweise: Kann LX Connect beim Anlegen eines Exportjobs oder in der Datenvorschau die verfügbaren Tabellen nicht ermitteln, erscheint jetzt ein Hinweis mit dem Grund statt „Unerwarteter Fehler“.
- Kein Neustart mehr nach kurzen Störungen: War Lexware beim Start des Servers kurzzeitig nicht erreichbar, blieb LX Connect teilweise gestört, bis der Dienst neu gestartet wurde. LX Connect versucht es jetzt selbstständig erneut.
- Mehrere Firmen: Kundengruppen lassen sich über die Schnittstelle jetzt in allen Firmen anlegen, nicht nur in der ersten.
- Zeitpläne: Zeitpläne wie „jeden zweiten Tag ab Montag“ werden wieder angenommen.
- Sicherheit und Stabilität: Aktuelle Sicherheits- und Stabilitätsverbesserungen sind enthalten.
Fehlerbehebungen.
- Lexware financial office Pro: Installer, Anwendung und Dienst erkennen Lexware financial office Pro jetzt in allen Fällen genauso wie Premium. Bisher konnte eine Pro-Installation in seltenen Fällen als „andere Produktlinie” gelten. Die Prüfung, ob Registry und Programmdateien denselben Lexware-Stand melden, findet jetzt auch bei Pro statt. Meldet der Dienst beim Start eine nicht unterstützte Lexware, nennt die Meldung jetzt den Grund (keine Lexware gefunden, andere Produktlinie oder Version nicht lesbar) statt pauschal „keine Lexware”.
- Lexware verweigert den Zugriff auf die Lexware-API: Nahm Lexware die Anmeldung an, verweigerte aber danach den Zugriff auf die Lexware-API, blieb die Installationskennung unter „Lizenzierung” unlesbar und Schnittstelle und Data Warehouse blieben ohne erkennbaren Grund gesperrt. Anmeldung und Start erkennen diesen Fall jetzt und zeigen „Lexware verweigert den Zugriff auf die Lexware-API.” mit einem Support-Code an. Dieser Code genügt dem Co-Orga-Support zur Einordnung. Das hinterlegte Passwort bleibt dabei gespeichert; nach der Klärung genügt „Erneut versuchen”.
- Erster Start vor der Anmeldung: Solange die Anmeldung bei Lexware noch aussteht, fragt LX Connect die Installationskennung nicht mehr vergeblich ab. Die Lizenzprüfung folgt direkt nach erfolgreicher Anmeldung, ohne dass der Dienst neu gestartet werden muss.
- Datenübernahme nach Modelländerungen: Entfiel mit einer neuen Version eine Spalte aus dem Datenmodell, die in einer bestehenden Zieldatenbank als Pflichtfeld angelegt war, brach die Datenübernahme der betroffenen Tabelle bei jedem Lauf ab. Solche nicht mehr benötigten Pflichtspalten werden jetzt beim Abgleich automatisch als optional geführt; ihre bisherigen Inhalte bleiben erhalten. Spalten, an denen eigene Indizes hängen, bleiben unverändert und werden protokolliert. In der internen Lesekopie werden solche Spalten entfernt.
Neue Funktionen in der Schreib-Schnittstelle.
- Lieferanten anlegen:
POST /api/Lieferantlegt einen Lieferanten mit Bestellanschrift an und auf Wunsch in einem Aufruf auch Lieferanschrift, Bankverbindung, Freifelder und Kontaktpersonen. Die Antwort (201) enthält die Kennung des Lieferanten; einetransaktionIdschützt vor doppelter Anlage. Scheitert nach der Anlage einer der weiteren Schritte, bleibt der Lieferant bestehen, und die Antwort422nennt seine Kennung und die bereits erledigten Schritte. Gelesen wird wie bisher über OData (Lieferanten,LieferantKontaktpersonen,Kontaktpersonen). - Lieferanten pflegen:
PUT /api/Lieferant/{id}ändert Matchcode, Lieferantennummer, Zahlungsart, Einzugsermächtigung und das Kennzeichen „inaktiv”;PUT …/bestellanschrift,PUT …/bankverbindungundPUT …/freifelderändern die jeweiligen Angaben.POST …/lieferanschriftlegt eine Lieferanschrift an,PUT …/lieferanschriftändert sie und legt sie an, falls noch keine besteht.POST …/kontaktpersonenundPUT …/kontaktpersonen/{kontaktpersonId}legen Kontaktpersonen an bzw. ändern sie. Alle Änderungen betreffen nur die mitgeschickten Felder. - Kreditorenkonto bei der Lieferantenanlage:
POST /api/Lieferantlegt standardmäßig ein Kreditorenkonto mit an (kreditorkontoAnlegen, Standardtrue). Ohne Angabe eines Kontos erhält es die Lieferantennummer als Kontonummer — beilieferantenNr: AUTOdie nächste Nummer des Lieferanten-Nummernkreises. Überkreditorenkontolässt sich stattdessen ein vorhandenes Konto zuordnen oder ein Konto mit eigener Nummer anlegen. Existiert das Konto zur Lieferantennummer bereits, wird die Anlage abgelehnt. Das Konto lässt sich nur bei der Anlage festlegen; eine spätere Änderung der Lieferantennummer lässt es unverändert. - Bestellanschrift heißt beim Lesen Rechnungsanschrift: Die Anschrift, die beim Schreiben
bestellanschriftheißt, steht in OData in den FeldernLieferanten.Rechnungsanschrift…— es sind dieselben Daten. - Inaktiv gilt für den ganzen Lieferanten: Das Kennzeichen
inaktivwird an den Stammdaten gesetzt (POSTundPUT /api/Lieferant), nicht an einer Anschrift, und stellt den gesamten Lieferanten inaktiv. - Kennung der Kontaktperson: In
…/kontaktpersonen/{kontaktpersonId}gehört der WertKontaktpersonIdausLieferantKontaktpersonen— nicht derenId, die die Zuordnung selbst bezeichnet. - Tags an Kunden und Lieferanten:
PUT /api/Kunde/{id}/tags/{tagId}bzw.PUT /api/Lieferant/{id}/tags/{tagId}ordnet einen Tag zu,DELETEauf derselben Adresse entfernt ihn wieder. Beide Aufrufe kommen ohne Rumpf aus, antworten mit204und sind wiederholbar: Ein bereits zugeordneter Tag wird nicht doppelt zugeordnet, das Entfernen eines nicht zugeordneten Tags ist kein Fehler. Existiert der Kunde, der Lieferant oder der Tag nicht, antwortet die Schnittstelle mit400. Die vorhandenen Tags und ihre Zuordnungen sind wie bisher über OData lesbar (Tags,TagZuordnungen). Neue Tags legtPOST /api/Tagan (s. u.). - Lagerbuchungen:
POST /api/Artikel/{id}/lagerbuchungenbucht einen manuellen Zugang oder Abgang eines Lagerartikels in einem Lager; das Vorzeichen dermengegibt die Richtung an (positiv = Zugang, negativ = Abgang). Die Antwort (201) nennt den neuen Bestand. Diebeschreibung(höchstens 80 Zeichen) erscheint in Lexware als „Manueller Zugang:” bzw. „Manueller Abgang: ”. Eine transaktionIdschützt vor doppelter Buchung. - Lagerbuchungen mit Chargen und Seriennummern:
POST …/lagerbuchungen/chargennummernbucht Zugänge auf neue oder bestehende Chargen oder Abgänge von Chargen,POST …/lagerbuchungen/seriennummernZugänge neuer oder Abgänge bestehender Seriennummern. Ein Aufruf enthält entwederzugaengeoderabgaengeund wird ganz oder gar nicht gebucht. Die Antwort nennt den neuen Bestand und die Liste aller Chargen bzw. Seriennummern des Artikels in diesem Lager mit ihrer Kennung; neue Nummern findet man darin über ihren Namen. Gelesen werden Buchungen, Bestände und Nummern über OData (Lagerbuchungen,Lagerbestaende,SerienChargenNummern,LagerbuchungSerienChargenNummern). - Tags an Artikeln:
PUT /api/Artikel/{id}/tags/{tagId}ordnet einen Tag zu,DELETEentfernt ihn — wie bei Kunden und Lieferanten ohne Rumpf, mit204und wiederholbar. - Warengruppen anlegen:
POST /api/Warengruppelegt eine Warengruppe mit Bezeichnung, Kurzbezeichnung und optional übergeordneter Warengruppe an. Ohne Angabe vonkontenerhält sie die Standardkonten der Firma. Gelesen wird über OData (Warengruppen). - Webshop-Produktgruppen anlegen:
POST /api/Produktgruppelegt eine Produktgruppe für den Webshop an (keine Warengruppe). Ihre Kennung aus der Antwort ist alsproduktgruppeIdder Webshop-Daten eines Artikels verwendbar. - Lohnleistungen anlegen und ändern:
POST /api/Lohnleistunglegt eine Lohnleistung an; mitlohnleistungNr: AUTO(Standard) vergibt LX Connect die nächste freie Nummer, die Antwort nennt Kennung und Nummer.PUT /api/Lohnleistung/{id}ändert nur die mitgeschickten Felder. Diebeschreibungdarf höchstens 5000 Zeichen lang sein; ein Zeilenumbruch zählt dabei als zwei Zeichen, gespeichert und gelesen wird er als CRLF. Gelesen werden Lohnleistungen über OData (Lohnleistungen). - Nebenleistungen anlegen und ändern:
POST /api/Nebenleistunglegt eine Nebenleistung (etwa Porto, Fracht oder Verpackung) mit Bezeichnung, Kurzbezeichnung und Preis an; die Antwort (201) nennt ihre Kennung, einetransaktionIdschützt vor doppelter Anlage. Pflicht sind Bezeichnung (höchstens 100 Zeichen, in der Firma eindeutig ohne Unterscheidung von Groß- und Kleinschreibung) und Kurzbezeichnung (höchstens 20 Zeichen); ohne Preis gilt 0. Ohne Angabe vonkontenerhält sie die Standardkonten der Firma.PUT /api/Nebenleistung/{id}ändert nur die mitgeschickten Felder (Bezeichnung, Kurzbezeichnung, Preis); die Konten lassen sich nach der Anlage nicht mehr ändern. Die Kennung ist alsnebenleistungIdeiner Belegposition vom Typ Nebenleistung verwendbar. Löschen lässt sich eine Nebenleistung nicht. Gelesen wird über OData (Nebenleistungen); nach einer Änderung über die Schnittstelle sind dortErstelltAmundErstelltVonleer undGeaendertVonsteht auf0. - Projekte anlegen:
POST /api/Projektlegt ein Projekt an; mitprojektNr: AUTO(Standard) vergibt LX Connect die nächste freie Projektnummer, die Antwort (201) nennt Kennung und Nummer. Pflicht ist die Bezeichnung; die Projektnummer vergibt LX Connect mitAUTO(Standard) oder sie wird selbst angegeben. Kunde, Kundenkonditionen, Zahlungsbedingung, Lieferart, Preisgruppe, Kostenstelle, Kostenträger, Rabatt, Kreditrahmen und Projektlaufzeit lassen sich mitgeben; die Laufzeit nimmt reine Kalendertage, ohne Angabe setzt Lexware den Anlagezeitpunkt. Eine unbekannte oder stillgelegte Angabe wird mit400und dem betroffenen Feld abgelehnt; einetransaktionIdschützt vor doppelter Anlage. Gelesen wird über OData (Projekte), an Belegen verweistBelege.ProjektIdauf das Projekt. Ändern oder Löschen lässt sich ein Projekt über die Schnittstelle nicht. - Preisaktionen anlegen und ändern:
POST /api/Preisaktionlegt eine zeitlich befristete Preisaktion mit Aktionspreisen (und bis zu drei Staffelpreisen) je Artikel an; die Antwort (201) nennt ihre Kennung, einetransaktionIdschützt vor doppelter Anlage. Pflicht sind Bezeichnung, Kurzbezeichnung und die Laufzeit (datumVon,datumBisals reine Kalendertage bis höchstens 31.12.2039, beide Tage eingeschlossen). Ein Artikel darf nicht zugleich in einer anderen Preisaktion mit überschneidender Laufzeit stehen — die Ablehnung (400) nennt die betroffene Position.PUT /api/Preisaktion/{id}ändert nur die mitgeschickten Kopfangaben (Bezeichnung, Kurzbezeichnung, Beschreibung, Laufzeit, Sperre, Druck der Beschreibung auf Aufträgen); eine verschobene Laufzeit wird ebenfalls auf Überschneidungen geprüft. Die Preise lassen sich nach der Anlage nicht mehr ändern, Kunden lassen sich über die Schnittstelle nicht zuordnen; ohne Zuordnung gilt die Aktion für alle Kunden. Löschen lässt sich eine Preisaktion nicht; eine gesperrte Preisaktion wirkt nicht auf Preise, auch wenn sie erst nachträglich gesperrt wird. Gelesen wird über OData (Preisaktionen, die Preise überSonderpreise). - Tags anlegen und ändern:
POST /api/Taglegt ein Tag an (optional mit Farbe ausTagFarben),PUT /api/Tag/{id}benennt es um oder ändert die Farbe; gelesen wird über OData (Tags). Die Antwort (201) nennt die Kennung, die sich direkt für die Zuordnung an Kunden, Lieferanten, Artikel und Belege verwenden lässt; einetransaktionIdschützt vor doppelter Anlage. Die Bezeichnung ist Pflicht, höchstens 50 Zeichen lang (führende und folgende Leerzeichen werden entfernt) und in der Firma eindeutig ohne Unterscheidung von Groß- und Kleinschreibung und Umlauten („ü” gilt wie „u”, „ß” wie „ss”). Ohne Farbe istTagFarbeIdleer undFarbezeigt die Standardfarbe.PUTändert nur die mitgeschickten Felder; eine Farbe lässt sich nicht entfernen, und jede Änderung setztGeaendertAmneu. Löschen bietet Lexware nicht an. - Tags an Belegen zuordnen und entfernen:
PUT /api/Beleg/{id}/tags/{tagId}ordnet einem Beleg einen Tag zu,DELETE /api/Beleg/{id}/tags/{tagId}entfernt ihn; je Aufruf ein Tag, Antwort204ohne Inhalt. Ein unbekannter Tag wird mit400und dem FeldTagIdabgelehnt, ein unbekannter Beleg mit400. Doppeltes Zuordnen und Entfernen ohne Zuordnung bleiben ohne Wirkung. Auch an obsoleten Belegen möglich. Gelesen wird über OData (TagZuordnungen, FilterBelegId). - Noch nicht lesbar: Webshop-Produktgruppen sind über OData nicht abrufbar; ihre Kennung steht nur
in der Antwort der Anlage. An Belegpositionen steht die Kennung einer Lohn- oder Nebenleistung noch nicht
als eigenes Feld. Bei Projekten steht der Verweis auf die Lieferart
nur als
LieferartNrinProjekte(derselbe Wert wieLieferarten.Id), ein FeldLieferartIdfehlt noch. Bei Preisaktionen das KennzeichenbeschreibungAufAuftragDrucken.
Fehlerbehebungen.
- Erster Start nach einem Update: Wurde die Anwendung gestartet, während der Dienst nach einem Update noch hochfuhr, blieb sie dauerhaft bei „Verbindung wiederhergestellt — App wird geladen …” stehen und ließ sich nur durch einen Neustart der Anwendung laden. Sie lädt jetzt selbständig, sobald der Dienst bereit ist. Solange der Dienst noch hochfährt, wartet die Anwendung bis zu zwei Minuten und zeigt dabei den jeweiligen Startschritt an, statt nach 30 Sekunden eine Fehlermeldung anzuzeigen.
- Dienststart nach der Installation: Auf manchen Rechnern beendete sich der Dienst LX Connect direkt nach der Installation mit der Meldung „Keine installierte Lexware-Version gefunden”, obwohl der Installer die Lexware erkannt und LX Connect installiert hatte. Der Dienst erkennt die installierte Lexware jetzt auf demselben Weg wie der Installer.
- Neuere Lexware-Versionen: Die Übernahme der Lexware-Daten verlangte bisher genau die Lexware-Version, gegen die LX Connect gebaut ist, und hätte mit einer neueren Lexware beim ersten Zugriff abgebrochen. Sie verlangt jetzt — wie der Start des Dienstes — mindestens Lexware 26.70.
- Zeitstempel im Lesemodell: Zeitstempel (z. B.
ErstelltAm/GeaendertAm, Zahlungsdatum, Projektlaufzeit) werden jetzt als exakter Zeitpunkt in UTC (Z) ausgegeben; bisher war die Uhrzeit um 1–2 Stunden verschoben und reine Tagesangaben erschienen als Vortag. Filter auf diese Felder ($filter) vergleichen ebenfalls den exakten Zeitpunkt, gleich in welcher Zeitzone das Literal angegeben ist. Zeitstempel enden jetzt aufZ; eigene Korrekturen des bisherigen Versatzes sind zu entfernen. Ausnahme: Ergebnisse von$apply/groupbyliefern Zeitstempel ebenfalls in UTC, aber noch ohneZ. Wer einen gelesenen Zeitstempel als Datum an die Schreib-Schnittstelle zurückgibt, rechnet ihn vorher in Ortszeit um und gibt den Kalendertag in Ortszeit an — wer nur das Datum abschneidet, schreibt bei z. B.2026-11-01T23:00:00Zden 1. statt den 2. November.
Neue Funktionen in der Schreib-Schnittstelle.
- Buchungen übergeben: Der neue Endpunkt
POST /api/Buchungübergibt Buchungen an die Lexware Buchhaltung. Die Verarbeitung ist asynchron: Lexware legt die Buchung zunächst in einer Warteschlange ab, in Stapel oder Journal erscheint sie erst, wenn der Import in Lexware buchhaltung manuell angestoßen wurde (Menüleiste Ansicht → Import Buchungsdaten). Beim Aufruf prüft Lexware nur Feldlängen sowie Kostenstelle und Kostenträger. - Debitorenkonto bei der Kundenanlage:
POST /api/Kundelegt standardmäßig ein Debitorenkonto mit an (debitorkontoAnlegen, Standardtrue). Ohne Angabe eines Kontos erhält es die Kundennummer als Kontonummer — beikundenNr: AUTOdie nächste Nummer des Kunden-Nummernkreises. Überdebitorenkontolässt sich stattdessen ein vorhandenes Konto zuordnen oder ein Konto mit eigener Nummer anlegen. Existiert das Konto zur Kundennummer bereits, wird die Anlage abgelehnt. Die Zuordnung ist nur bei der Anlage möglich und nachträglich über die Schnittstelle nicht änderbar. - Geänderte Antworten beim Anlegen: Alle Anlage-Antworten der Schreib-Schnittstelle (
201) kommen ohneLocation-Header. Er verwies bisher auf Adressen, die es nicht gibt. Die Kennung des angelegten Datensatzes steht unverändert im Antwortrumpf; gelesen wird weiterhin über OData.
Wartungsversion.
- Wurde beim Anlegen eines Exportjobs ein Tabellenpräfix vergeben (z. B. „MF_”), erhielten die Tabellen in der Zieldatenbank das Präfix doppelt („MF_MF_Artikel” statt „MF_Artikel”) und der Export schlug fehl. Das Präfix wird jetzt korrekt einmal angewendet.
- Ist eine nicht unterstützte Lexware-Produktlinie installiert (z. B. buchhaltung plus), meldet der Installer das jetzt verständlich und nennt Produkt und Version — statt fälschlich „keine Lexware installiert”.
- Der Installer wurde aufgeräumt: Die Support-Adresse (support@lxconnect.de) ist jetzt immer sichtbar, der überflüssige Detailbereich entfällt.
Wartungsversion.
- Einem bestehenden Exportjob lassen sich weitere Tabellen hinzufügen, ohne dass der nächste Lauf fehlschlägt.
- Verweist eine bereits exportierte Tabelle auf eine neu gewählte, wird sie automatisch neu aufgebaut und vollständig befüllt.
- Ein Exportjob wird nicht mehr fälschlich als fehlerhaft angezeigt, wenn die Daten bereits übertragen wurden.
- Erfolgsmeldungen blenden nach kurzer Zeit von selbst aus.
- API-Schlüssel lassen sich in der Liste und in der Detailansicht per Klick kopieren; die Detailansicht zeigt den vollständigen Schlüssel und einen Beispielaufruf.
- Im Assistenten für API-Schlüssel lässt sich der nächste Schritt direkt anklicken; gibt es nur eine Firma, ist sie vorausgewählt.
- Beim ersten Besuch weist ein Hinweis auf das Info-Symbol neben der Überschrift hin; in den Einstellungen lässt sich das zurücksetzen.
- Einheitliche Begriffe: Aktionen und Laufphasen sprechen durchgängig vom Exportieren.
Wartungsversion.
- Exportjobs starten nicht mehr unnötig immer wieder neu.
- Laufende Exporte lassen sich zuverlässig abbrechen.
- Nach einem Neustart des Dienstes verbindet sich die Anwendung von selbst wieder.
- Änderungen an einem Zielsystem werden sofort übernommen.
- Fehlende Berechtigungen am Datenbankserver werden schon beim Anlegen eines Exportjobs angezeigt und verständlich erklärt.
- Wurde die Zieldatenbank gelöscht, legt LX Connect sie beim nächsten Lauf neu an.
- Der Status zeigt an, wann die Datenbankstruktur eingerichtet wird.
Wartungsversion.
- Die im Zielsystem gewählte Anmeldeart wird beim Export zuverlässig verwendet.
- Fehlermeldungen des SQL Servers werden verständlich erklärt.
Wartungsversion.
- Der Dienst startet zuverlässig, auch auf langsameren Systemen.
Wartungsversion.
- Die Installation läuft schneller und zuverlässiger durch.
- Die OData- und REST-Schnittstelle ist ohne eigene Einstellung jetzt dauerhaft unter Port 5080 erreichbar.
Erste öffentliche Version von LX Connect.
LX Connect stellt die Daten einer lokalen Lexware-Installation als eigene Datenbank und über eine OData- und REST-Schnittstelle bereit. Voraussetzung ist Lexware ab Version 26.70 mit PostgreSQL-Datenbank.
Bis zum 1. Januar 2027 ist LX Connect in vollem Umfang kostenlos nutzbar. Am Datenmodell und an den Schnittstellen sind bis dahin noch Änderungen möglich.