Difference between revisions of "Changelog 2015"

From LISApedia
Jump to: navigation, search
Line 22: Line 22:
  
 
Wegen einer hohen internen Serverauslastung war LISA heute für mehrere Stunden gestört und hat teilweise nur langsam oder gar nicht reagiert. Die Ursache ist mir noch nicht ganz klar, aber alles deutet darauf hin, dass nach der Ausgliederung des SNK-Shops aus der SNK-Website beim Zugriff durch Crawler-Bots unbestimmte Zustände auftreten können, die ein Speicherleck zur Folge haben. Mehrere Webserver-Prozesse hängen sich auf und nehmen jeweils etwa 2 Gigabyte Hauptspeicher und 0.9 Load mit mit sich, bis der Server komplett lahm liegt. Das Problem lässt sich nur schwer eingrenzen. Ich habe ein paar Umleitungen eingebaut und andere Maßnahmen ergriffen und bin zuversichtlich, das Problem gelöst zu haben.
 
Wegen einer hohen internen Serverauslastung war LISA heute für mehrere Stunden gestört und hat teilweise nur langsam oder gar nicht reagiert. Die Ursache ist mir noch nicht ganz klar, aber alles deutet darauf hin, dass nach der Ausgliederung des SNK-Shops aus der SNK-Website beim Zugriff durch Crawler-Bots unbestimmte Zustände auftreten können, die ein Speicherleck zur Folge haben. Mehrere Webserver-Prozesse hängen sich auf und nehmen jeweils etwa 2 Gigabyte Hauptspeicher und 0.9 Load mit mit sich, bis der Server komplett lahm liegt. Das Problem lässt sich nur schwer eingrenzen. Ich habe ein paar Umleitungen eingebaut und andere Maßnahmen ergriffen und bin zuversichtlich, das Problem gelöst zu haben.
 +
Update: Die Ursache des Problems ist nun bestätigt - es waren Webcrawler im alten SNK-Shopsystem. Alles ist repariert.
  
  

Revision as of 21:10, 1 August 2015

Auf dieser Seite werden die Änderungen an LISA im Jahr 2015 angezeigt. Um andere Jahre zu sehen, suche bitte nach "Changelog".


30.07.2015 Webshop: Updates

  • Auch in Artikel-Auflistungen lässt sich jetzt die Information einbauen, welche Stückzahl eines Artikels sich in offenen Bestellungen des Kunden befindet. In den Webshops des Süd-Nord Kontors und der F.A.I.R.E. wurde dies bereits durchgeführt.
  • Posten in offenen Bestellungen lassen sich löschen, solange keine Reservierung vorgenommen wurde und die Bestellung nicht bearbeitet wird.

Es gab auch ein paar Rückmeldungen zum neuen Webshop.


27.07.2015 Website

Der neue Webshop kommt jetzt auch (wieder) mit eingebauter Website. Bei Bedarf bitte mit mir sprechen ;)

  • Die Reports sind nun von der Website entkoppelt. An ihre Stelle treten die "News".
  • Das alte Website-System wurde deaktiviert.
  • Seitentexte und News werden von der TimeMachine überwacht.


17.07.2015 Störung

Wegen einer hohen internen Serverauslastung war LISA heute für mehrere Stunden gestört und hat teilweise nur langsam oder gar nicht reagiert. Die Ursache ist mir noch nicht ganz klar, aber alles deutet darauf hin, dass nach der Ausgliederung des SNK-Shops aus der SNK-Website beim Zugriff durch Crawler-Bots unbestimmte Zustände auftreten können, die ein Speicherleck zur Folge haben. Mehrere Webserver-Prozesse hängen sich auf und nehmen jeweils etwa 2 Gigabyte Hauptspeicher und 0.9 Load mit mit sich, bis der Server komplett lahm liegt. Das Problem lässt sich nur schwer eingrenzen. Ich habe ein paar Umleitungen eingebaut und andere Maßnahmen ergriffen und bin zuversichtlich, das Problem gelöst zu haben. Update: Die Ursache des Problems ist nun bestätigt - es waren Webcrawler im alten SNK-Shopsystem. Alles ist repariert.


17.07.2015 Erzeugung von Preislisten

Da das Erzeugen von Preislisten meist sehr lange dauert, wird in den Kunden-Optionen künftig eine Prozentzahl angezeigt, die den Fortschritt anzeigt.


16.07.2015 Bugfix: Verschwundene LHQ-Artikelbilder

Ein Fauxpas bei der Programmierung hat dazu geführt, dass ein Lieferant seine LHQ-Einstellungen verloren hat, wenn die Stammdaten des Lieferanten bearbeitet und gespeichert wurden. Die Artikel des Lieferanten haben auf diese Weise den Kontakt zu ihren Bildern verloren, so dass keine Bilder mehr angezeigt werden konnten. Das Problem wurde behoben und die Bilder neu gepuffert.


10.07.2015 Identifizierung eines Artikels bei der Bestell-Annahme

Angenommen, Artikel A wurde aus dem Sortiment genommen und durch einen recht ähnlichen Artikel B ersetzt, der als Suchbegriff die Artikelnummer von A erhielt. Gab man nun die Artikelnummer von A in eine Bestellung ein, fand man Artikel B, erwartete jedoch möglicherweise Artikel A. Es war nicht auf den ersten Blick zu unterscheiden, ob man durch Eingabe einer Artikelnummer auch einen Artikel mit dieser Artikelnummer gefunden hatte. Dazu musste man die Artikelnummern oder andere Details vergleichen.

Nun wird LISA Artikel mit grünem Hintergrund anzeigen, sofern Artikelnummer oder EAN-Nummer mit dem angegebenen Suchbegriff übereinstimmen. Artikel B wird mit der Artikelnummer von A zwar weiterhin gefunden, bekommt aber keinen grünen Hintergrund. Wenn man sich erst einmal daran gewöhnt hat, wird hoffentlich auf den ersten Blick ersichtlich sein, ob man gerade den gewünschten Artikel aufgerufen hat.


07.07.2015 Bugfix: Verfälschte Bestandsanzeigen

Beim Hinzufügen der neuen Funktionen zum Bestandsexport habe ich LISAs Bestandslogistik umstrukturiert und einen klitzekleinen Fehler eingebaut, der dazu führte, dass erledigte Posten den Bestand scheinbar nicht verändert haben, so dass es zu falschen Bestandsanzeigen kam. Der Fehler ist nun behoben, und alle Bestände werden neu gepuffert. Sorry für das Missgeschick.


06.07.2015 Viele Anweisungen an die Datenbank

Seit sehr langer Zeit habe ich mir mal wieder angesehen, welche Anweisungen LISA der Datenbank schickt, um zum Beispiel eine Kundenseite vollständig zu laden. Ich rechnete mit etwa 150 Anweisungen, fand aber stattdessen etwa 2500 vor, was eine ganze Menge ist. Allein, um diese Anweisungen zu lesen, bräuchte ich wahrscheinlich über zwei Stunden, und die Datenbank muss sie auch noch ausführen und Ergebnisse liefern, die LISA wiederum interpretieren und anzeigen muss. Ich werde wohl demnächst etwas Zeit damit verbringen, diesen Aspekt zu optimieren.


02.07.2015 Bestandsexport

Ab sofort können unter Verwaltung -> Artikel-Bestände -> Bestands-Export Bestände zu jedem Zeitpunkt exportiert werden, das heißt, man kann zum Beispiel die Bestände von vor 2 Monaten exportieren. Außerdem lässt sich optional ein Vergleichs-Zeitpunkt angeben. Ausgehend von diesem Vergleich wird dann eine Differenz berechnet.


02.07.2015 Artikel mit bestimmtem Logo

Unter Verwaltung -> Logos können die Artikel mit dem ausgewählten Logo angezeigt werden.


02.07.2015 Bestandsbuchungen in der Zukunft

Wer einen Lieferschein mit einem in der Zukunft liegenden Wareneingangsdatum anlegt, kann so dafür sorgen, dass die entsprechenden Buchungen erst in der Zukunft aktiv werden.


02.07.2015 Bugfix: Logos auf Etiketten

LISA hat transparente Logos im PNG-Format auf Etiketten als schwarze Rechtecke angezeigt. Dieser Fehler ist nun behoben, es können weiterhin transparente Logos eingesetzt werden.


02.07.2015 In eigener Sache: Fehler

Ich weiß, dass es manchmal "gehäuft" zu Fehlern in LISA kommt, und möchte kurz etwas klarstellen, um Missverständnisse zu vermeiden:

Wenn in LISA etwas nicht mehr funktioniert, was vorher schon einmal ging, liegt es nicht daran, dass in LISA selbst ein Fehler entstanden ist, sondern daran, dass ich LISA umgebaut habe und sich diese Umbauten an Stellen im Programm auswirken, die ich nicht berücksichtigt habe. Der Programmcode ändert sich letztlich nicht von selbst, und LISA produziert von selbst keine neuen Fehler. Also: Wenn es innerhalb der Wochen, Monate und Jahre, die man LISA benutzt, manchmal den Anschein haben sollte, dass es an einigen Stellen bröckelt und knirscht, sind diese Reibungspunkte stets Nebenwirkungen von Verbesserungen.

Wie an diesem Changelog zu sehen ist, entstehen in LISA innerhalb kurzer Zeit mehr neue Funktionen und Verbesserungen als in den meisten anderen Anwendungen, und dies ist nur möglich, weil ich einen Kompromiss zwischen Fehlerprüfung und Programmierung eingehe, bei dem mir einige kleine Fehlerchen durch die Lappen gehen. Ich bitte in solchen Fällen natürlich um Verständnis und Rückmeldung und behebe die Probleme schnellstmöglich. Danke für die Aufmerksamkeit ;)


28.06.2015 Updates

  • Unter Verwaltung -> Artikel-Bestände -> Inventur kann der gesamte Bestand auf Null gesetzt werden. Dabei werden ein Lieferschein und die nötigen Korrekturbuchungen erzeugt.
  • Die letzten Sendungen unter Journal -> Speditionen und in der #SD-Suche sind blätterbar.
  • Buchungen mit Schlüssel lassen sich löschen.
  • Unter Verwaltung -> Finanzbuchhaltung -> Forderungen wird wieder die Summe der Forderungen angezeigt.


28.06.2015 Artikelbezeichnungen pro Kunde

Unter Verwaltung -> Artikelbezeichnungen können pro Kunde abweichende Artikelbezeichnungen angelegt werden. Geplant sind außerdem abweichende Artikelbezeichnungen pro Sprache im Webshop.


22.06.2015 LISA ohne Puffer

Die Abschaltung des zeitgesteuerten Puffersystems hat offenbar wie erwartet einen nachhaltigen Performancegewinn zur Folge. Die Kernwarteschlange des Servers konnte von durchschnittlich 0.55 auf 0.15, also weniger als ein Drittel, gesenkt werden. Teile des neuen, ereignisgesteuerten Puffers sind noch nicht ganz fertig, aber dieser wird LISA nicht mehr messbar belasten. Insofern kann dies als recht großer Erfolg betrachtet werden.

Ich möchte nicht sagen, dass die Maßnahme direkt in LISA spürbar ist, aber sie hat definitiv einen positiven Einfluss auf den Auslastungszustand des Servers.


21.06.2015 Umsatzauswertung

In der Umsatzauswertung kann ausgewählt werden, ob Rechnungen oder abgeschlossene Bestellungen als Berechnungsbasis dienen sollen. Auf diese Weise können auch Posten ausgewertet werden, die nicht mit LISA berechnet werden. Nebenbei konnte auch die Ausführung der Auswertungen leicht beschleunigt werden.

Details wie Artikel- und Benutzerumsätze stehen für die Berechnungsbasis "Bestellungen" noch nicht zur Verfügung.


15.06.2015 Puffersystem

Das Puffersystem funktioniert soweit zwar gut, fordert bei der Datenbank jedoch viel zu viel Performance an. Ich habe den regelmäßigen Puffer nun abgeschaltet, so dass zum Beispiel nicht mehr alle Artikel innerhalb von einer oder zwei Stunden komplett durchgepuffert werden, sondern LISA wird intelligenter einschätzen, wann eine Pufferung nötig ist. Leider ist dies sehr komplex, es ist daher zu erwarten, dass in den nächsten Wochen kleinere Unstimmigkeiten im Puffersystem auftreten. Es sollten jedoch keine wesentlichen Bestandteile von LISA darunter leiden.


14.06.2015 MySQL-Replikation

Nach dem letzten erfolglosen Ansatz, eine effiziente MySQL-Replikation aufzusetzen, kommt nun der nächste Versuch, insbesondere in Hinblick auf einen möglicherweise gewünschten Endverbraucher-Shop. Aber auch ohne EV-Shop könnte die MySQL-Replikation den Server entlasten, indem Sicherungen der Datenbank auf einem Replikations-Client ausgeführt werden.


29.05.2015 Webshop-Tracking

Sofern der Browser eines Besuchers Cookies akzeptiert, können diesen Cookies fortan Namen zugewiesen werden. Dazu klickt man auf die Details eines Besuchs und dort hinter dem Besuchernamen auf "Ändern". Mit dem eingegebenen Namen kann nun der Browser des Besuchers identifiziert werden. Falls man sich zum Beispiel im Betrieb als ein bestimmter Kunde anmeldet, möchte man vielleicht vermeiden, dass es so aussieht, als hätte sich der Kunde selbst angemeldet. Man kann dazu als Name des Cookies den eigenen Firmennamen angeben, um diese Art der Verwechslung zu vermeiden.


29.05.2015 Serverprobleme

Im Rechenzentrum gab es ein Problem: Einige virtuelle Maschinen auf dem ESXi-Virtualisierungsserver hatten von etwa 02:00 Uhr bis 10:40 Uhr keine Verbindung zum Internet, unter anderem auch LISA. Ein Techniker musste das Problem auf dem Virtualisierungsserver beheben. Es sind keine Datenverluste aufgetreten. Die Ursache des Problems war ein Absturz der Firewall auf dem Virtualisierungsserver, vermutlich hervorgerufen durch einen Bug in der ARP-Kommunikationsschicht der Firewall. Ein Update der Firewall soll nun dafür sorgen, dass dieses Problem nicht mehr auftritt. Ich entschuldige mich für den Ausfall.


28.05.2015 Bugfix: Bestellungen zusammenfassen

Beim Zusammenfassen von Bestellungen konnte es vorkommen, dass es hinterher keine aktive Bestellung mehr gab, weil die aktive Bestellung im Zuge der Zusammenführung gelöscht wurde. Dies kann nun nicht mehr passieren.


22.05.2015 Bestellungen zusammenfassen

Insbesondere als Vorbereitung auf den neuen Webshop, in dem bei jeder Bestellung auch wirklich eine neue LISA-Bestellung generiert wird, bietet LISA die Möglichkeit, jeweils zwei Bestellungen eines Kunden zusammenzufassen. Oben im "Container" einer Bestellung wird ein entsprechender Text angezeigt, falls sich Bestellungen verlustfrei zusammenfassen lassen. Wird kein derartiger Text angezeigt, hat LISA gravierende Unterschiede in den Bestellungen vorgefunden und bietet diese Funktion sicherheitshalber nicht an. Solche Unterschiede können Flags, Zieltermine und dergleichen sein. In diesem Fall müssten die Posten, falls gewünscht, wie bisher manuell umgebucht werden.


22.05.2015 Bugfix: Bestandsbewegungen

Ein Fehler in der Berechnung der Bestandsbewegungen sorgte unter bestimmten Umständen dafür, dass die Bewegungen erst ab der letzten Einbuchung des Artikels angezeigt wurden. Auch die resultierende "übrige Stückzahl" wich vom Lagerbestand ab. Nun werden alle Bewegungen ab der letzten Korrektur angezeigt. Seltsam, dass dies niemandem aufgefallen zu sein scheint.


20.05.2015 Bugfix: Ladeliste

So genannte Lagerort-Details (also zum Beispiel Regalböden) werden auf der Ladeliste richtig einsortiert. So sollte Lagerort 1-4 nun zuverlässig nach Lagerort 1-1 angezeigt werden.


18.05.2015 Transparente Logos

LISA wird sich alle Mühe geben, transparente Logos unter Erhaltung der Transparenz weiterzuverarbeiten. Webshops mit nicht-weißem Hintergrund können von durchsichtigen Logos profitieren - ich empfehle den Gebrauch transparenter PNG-Dateien für diesen Zweck, GIFs sind schwieriger zu handhaben, so dass das Ergebnis nicht immer optimal ist.


18.05.2015 Webshop: Lieferanten

Die Sichtbarkeit von Lieferanten in der "Suche verfeinern"-Funktion ist gekoppelt an die Sichtbarkeit der Artikel-Liste des Lieferanten.


18.05.2015 Lagerorte sortieren

Lagerorte lassen sich nach Artikelnummern oder Artikelbezeichnungen durchsortieren, indem man auf das entsprechende Symbol in der Kopfzeile des Lagerortes klickt.


16.05.2015 Forderungen

Die Forderungen lassen sich leichter verwalten, weil LISA nicht bei jeder Aktion die Seite neu lädt, sondern dort bleibt, wo man gerade gearbeitet hat.


14.05.2015 Webshop: Tracking

Das Tracking für den neuen Webshop wurde komplett neu programmiert und sollte nun übersichtlich Aufschluss darüber geben, wann welche Seiten des Shops abgerufen wurden. Das alte Tracking wurde entfernt.


12.05.2015 Artikeldokumente

Der Download von Artikeldokumenten wurde überarbeitet, um mit allen Browsern kompatibel zu sein. PDF-Dokumente werden "inline", also direkt im Browser angezeigt, wenn möglich, alle anderen Dokumente werden zum Download freigegeben. Sonderzeichen im Dateinamen werden dabei vereinfacht oder entfernt. Ich bitte um Rückmeldung, falls es noch Probleme gibt.


11.05.2015 Konfiguration

"Verwaltung -> Konfiguration" wurde etwas umgebaut, um das Management für mich zu erleichtern. Einige alte Werte wurden entfernt, einige sind neu dazugekommen. Nach der Umstellung auf den neuen Webshop werden noch einmal ein paar Werte verschwinden.


06.05.2015 PDFs drucken in Chrome

Der in Google Chrome integrierte PDF-Viewer hat unter Umständen Probleme beim Ausdrucken bestimmter PDF-Typen. In der Druckvorschau ist noch alles normal, doch auf dem Papier fehlt dann jeglicher Text, es sind nur Grafiken zu sehen.

Sollte dies der Fall sein, lässt sich der Adobe Reader folgendermaßen nutzen:

  • "about:flags" in der Adresszeile eingeben
  • Den Punkt "NPAPI aktivieren" suchen und aktivieren
  • Chrome komplett schließen und neu starten
  • "about:plugins" aufrufen
  • "Chrome PDF Viewer" deaktivieren
  • "Adobe Reader" aktivieren (möglicherweise ist es schon aktiviert) und das Häkchen "Ausführung immer erlauben" anklicken.


06.05.2015 Designs

Die Verarbeitung von Designs wurde stark vereinfacht, um die Bereitstellung neuer Designs zu beschleunigen. Es ist nun sehr viel weniger kompliziert, ein neues Design an den Start zu bringen.


01.05.2015 Designs

Es gibt neue Designs unter Zentrale -> Designs zur Auswahl:

  • Mediterran
  • Green Harmony
  • SNK (nur für das Süd-Nord Kontor)
  • Krümelmonster
  • Blue Squares
  • Ornament 1
  • Apricot

Aus den alten Designs wurden das Zebra und etwaige störende Textelemente entfernt. Das Suchfeld und die anderen Elemente der Menüzeile wurden etwas höher angelegt.


29.04.2015 Bugfix: Umsätze auf der Artikelseite

Auf der Artikelseite unter "Umsätze und Agenten" wurde die Berechnungsgrundlage für die grafischen Statistiken geändert. Das für diesen Zweck sehr aufwendig entworfene, aber nie so richtig funktionierende Puffersystem wurde entfernt, und die Werte werden direkt dem laufenden System entnommen. Es sollten an dieser Stelle nun keine Fehler mehr auftreten. Manchmal ist weniger anscheinend mehr...


20.04.2015 Webshop

Es gibt eine grundsätzliche Unterstützung für verschiedene Filterkriterien, die Artikel-Auflistungen vorgeschaltet werden können. Die bisherige Umsetzung von Filtermöglichkeiten wurde komplett verworfen und in der neuen Artikel-Ergebnisseite zusammengefasst. Die neuen Filter sind flexibler und besser erweiterbar, übersichtlicher und teilweise komfortabler zu bedienen. Insofern bietet der Webshop nun sogar Funktionen, die LISA nicht zur Verfügung stellt.

Artikel-Auflistungen können gefiltert werden nach Suchbegriffen, Artikel-Listen und Verfügbarkeitsstatus, geplant sind außerdem noch Logos. Die Funktion befindet sich (wie der übrige Shop auch) im BETA-Stadium.


16.04.2015 Rechnungen und Rechnungskorrekturen

Für Bestellungen, zu denen es eine gültige (nicht korrigierte) Rechnung gibt, gelten folgende Einschränkungen:

  • Es ist nicht mehr möglich, sie zu löschen.
  • Bugfix: Es ist nicht mehr möglich, sie über das Optionsmenü versehentlich mehrfach zu fakturieren.
  • Es ist nicht mehr möglich, sie auf andere Kunden umzubuchen.
  • Es ist nicht mehr möglich, Posten davon auf andere Kunden umzubuchen.
  • Es ist nicht mehr möglich, Posten dazu aufzunehmen.
  • Es ist nicht mehr möglich, Posten darauf zu verändern.
  • Es ist nicht mehr möglich, Posten darauf zu löschen.

Diese Änderungen wurden aus Sicherheitsgründen vorgenommen, um Fehler im Umgang mit Rechnungskorrekturen weitgehend zu vermeiden. Generell gilt, dass eine erledigte Bestellung nur dann verändert werden kann, wenn entweder noch keine Rechnung dazu geschrieben wurde oder wenn es eine gültige Rechnungskorrektur gibt. Also: Erst eine Rechnungskorrektur erzeugen, dann die Bestellung verändern und neu berechnen.


14.04.2015 Webshop

Wählt man im Shop eine Artikel-Liste aus, zeigt LISA als Filterkriterien weitere Artikel-Listen an. So kann man zum Beispiel nur Neuheiten eines bestimmten Lieferanten oder einer bestimmten Warengruppe anzeigen.


12.04.2015 Artikel-Listen

Beim Bearbeiten von Artikel-Listen können auch Suchbegriffe angegeben werden. Mit diesen Begriffen werden Artikel gefunden, die sich in diesen Artikel-Listen befinden.


08.04.2015 Webshop

  • Die Passwort-vergessen-Abwicklung lässt sich auch dann durchführen, wenn der Shop zur Benutzung eine Anmeldung erfordert. Es erfolgt keine Rückführung mehr auf die Startseite.
  • Probleme mit Zeichenkodierungen in den Namen der Artikeldokumente sind behoben.
  • Der Shop unterstützt nun auch die Sprachenumschaltung.


07.04.2015 LHQ

Nun können auch einzelne Artikelbilder mit dem LHQ abgeglichen werden, ohne dass der Lieferant des Artikels für die LHQ-Anbindung konfiguriert sein muss. In den Artikelstammdaten gibt es zwei neue Felder "LHQ-Lieferant" und "LHQ-Artikelnummer", die den Artikel im LHQ exakt spezifizieren können.


06.03.2015 Transportkonditionen

LISA wird künftig außer der Masse und dem Speditionsflag der Ware eine weitere Möglichkeit bereitstellen, zu ermitteln, ob es sich um Speditionsgut handelt oder nicht. Dazu kann jedem Artikel eine Stückzahl zugeordnet werden, ab der der Artikel per Spedition ausgeliefert werden muss. Wenn beispielsweise Kaffee ab 100 Stück per Spedition ausgeliefert werden muss und Wein ab 10 Stück, und wenn ein Kunde 8 Flaschen Wein und 40 Stück Kaffee bestellt, wird LISA die folgende Berechnung anstellen:

Speditionsfaktor Wein = 8 / 10 = 0.8

Speditionsfaktor Kaffee = 40 / 100 = 0.4

Speditionsfaktor gesamt = 0.8 + 0.4 = 1.2

Sobald der Speditionsfaktor bei oder über 1 liegt, wird LISA den Speditionsweg vorschlagen. Insgesamt wird LISA auf diese Weise voraussichtlich in den meisten Fällen ermitteln können, ob die Ware per Paket oder per Spedition transportiert werden soll. Die Maßnahme erfolgt auch in Hinblick auf die Transportkostenberechnung im Webshop.

Die Berechnungsfunktion ist schon integriert und wird die bisherige Berechnung ersetzen, aber die Zuverlässigkeit wird noch getestet, bevor ich den Hebel umlege.


06.03.2015 Ladeliste

Auf der Ladeliste wird in Klammern hinter der Artikelbezeichnung auch der Bestand angezeigt. Ist der Bestand niedriger als das Doppelte der Posten-Stückzahl, erscheint er in fett. Dies soll eine Hilfe sein, um einschätzen zu können, ob man den Artikel in voller Stückzahl vorfinden sollte oder nicht.


04.03.2015 Lieferscheine

Lieferscheine können wahlweise mit oder ohne EVP angelegt werden.


01.03.2015 Lieferscheine

LISA kann Lieferscheine zu erledigten Bestellungen generieren. Die Anlage von Lieferscheinen erfordert einen eigenen Nummernkreis, daher muss mir die erste Lieferschein-Nummer, die LISA übernehmen soll, mitgeteilt werden, bevor die Funktion genutzt werden kann.

Lieferscheine sind an den Warenempfänger gerichtet und beinhalten, wenn abweichend, die Rechnungsanschrift sowie eine Aufstellung der gelieferten Posten ohne Preisangaben.

Update: Posten mit negativen oder Null-Mengen tauchen nicht auf Lieferscheinen auf.


01.03.2015 Time-Machine

Ich sehe die Einführung der neuen Time-Machine vor etwa einem Monat als Erfolg auf ganzer Linie an. Sie unterzieht alle relevanten Artikel- und Kundenstammdaten durch die tiefe Integration in LISAs Datenbankschnittstelle einer völlig lückenlosen Beobachtung und bietet so eine zuverlässige Hilfe, um herauszufinden, wer wann welche Informationen geändert hat.

Ich bin sehr zufrieden und werde diese Art der Protokollierung trotz des Anfallens Zehntausender Datensätze in kurzer Zeit beibehalten. Die Evaluationsphase ist abgeschlossen.


27.02.2015 Webshop-Update

Da der Webshop sich nun in der Beta-Phase befindet und sich weniger schnell weiterentwickeln wird, gibt es an dieser Stelle künftig wieder Informationen zu den Änderungen. Statistisch signifikante Rückmeldungen gibt es derzeit noch nicht.

  • Neue Artikel werden nun in Artikel-Auflistungen und auf der Artikel-Seite optisch durch ein Neu-Icon hervorgehoben, so dass Kunden sofort erkennen können, welche Produkte neu im Sortiment sind. Ein alternatives Neu-Icon kann mir im PNG-Format in ausreichender Auflösung zugeschickt werden.
  • Die Zutaten werden auf der Artikelseite angezeigt, sofern verfügbar.


27.02.2015 Bildgenerierung

LISA wird so umgebaut, dass es nicht mehr nötig sein soll, Miniaturansichten von Artikelbildern neu zu puffern, da sie mit einem Hash-Stempel des Originalbildes versehen sein werden. Bei jedem Bildaufruf wird zunächst ein Wert ermittelt, der das Originalbild eindeutig identifiziert (egal, ob es sich im Ordner des Lizenznehmers oder im LHQ befindet), und dann nach einem Miniaturbild mit diesem Wert gesucht. Insofern werden Miniaturbilder nur angezeigt, wenn sie wirklich eine verkleinerte Form des Originalbildes sind. Unstimmigkeiten sollten so nicht mehr vorkommen.


26.02.2015 Bilder im Webshop

Dem Webshop wurde eine Unterstützung für Bilder einprogrammiert. Es können eigene Bilder genutzt oder Bilder auf anderen Webseiten eingebunden werden. Auch die Anzeigegröße der Bilder kann angepasst werden. Eine Kurzanleitung findet man auf der Seite "Verwaltung -> Webshop -> Langvars".


25.02.2015 LHQ-Artikel-Bilder

Mit einer neuen Regelung sind nun alle Bilder geschützt: Lädt jemand ein neues Artikelbild ins LHQ hoch und überschreibt das dort vorhandene Bild, wird das vorhandene Bild zuerst lokal (im Ordner "original_id") bei allen anderen Lizenznehmern gespeichert, bevor es im LHQ überschrieben wird. Alle Lizenznehmer behalten also alle ihre Bilder, auch wenn diese aus dem LHQ stammen und dort überschrieben werden. Die LISA-Benutzer müssen alle LHQ-Bilder manuell übernehmen. Dies macht zwar mehr Arbeit, sorgt aber für mehr Sicherheit im Umgang mit den Bildern. Sollte diese Regelung generell nicht gewünscht sein, werde ich sie wieder ändern.


24.02.2015 Bugfixes

  • Beim Erledigen von Bestellungen mit mehr als 333 Posten wurden wegen einer fehlerhaften Konfiguration des Servers jeweils nur die ersten 333 Posten erledigt, die anderen verblieben unerledigt. Fortan sollte dieses Problem nicht mehr auftauchen, und LISA sollte auch Bestellungen mit viel mehr Posten ohne Probleme erledigen.
  • LISAs Puffer hatte vergessen, Artikel in die richtigen Lieferanten-Artikel-Listen einzusortieren. Dies funktioniert nun wieder.


22.02.2015 Serversicherheit

Ich habe einen Systemdienst konfiguriert, der mir jedesmal, wenn sich jemand über SSH (also die übliche Art, einen Server zu administrieren) auf dem Server anmeldet, eine Push-Notification sendet. Zusammen mit der MySQL-Injection-Absicherung, die ich vor ein paar Wochen vorgenommen habe, ist es nun eher unwahrscheinlich, dass jemand den Server fernsteuern kann, ohne dass ich es mitbekomme.


18.02.2015 Backup-Server

Ich habe einen neuen Backup-Server in Betrieb genommen, um LISA sicherer und performanter zu machen. Durch die gute Anbindung kann LISA mit dem V-Server bei Strato in Deutschland schnellere Backups durchführen als mit meinem eigenen NAS, und die Backups sind durch eine weitere Redundanzstufe noch sicherer.

Ein längerfristiges Ziel ist es, den V-Server auch einige Pufferaufgaben übernehmen zu lassen, um LISA weiter zu entlasten. Außerdem werde ich einen weiteren Versuch starten, eine MySQL-Replikation einzurichten, damit auch die Datenbanken mit einer weiteren Redundanzstufe gesichert werden können. Ob das möglich und sinnvoll ist, muss sich noch zeigen.


16.02.2015 Dynamische Artikel-Listen

Dynamische Artikel-Listen lassen sich jetzt direkt aus allen Artikel-Auflistungen (also Artikel-Listen, Suchergebnissen, Favoriten...) erzeugen. Mit einem Klick auf das entsprechende Icon (welches ich wahrscheinlich noch ändern werde) wird eine neue dynamische Liste erzeugt und sofort angezeigt. Auf diese Weise stehen sozusagen auch den regulären Artikel-Listen alle Optionen der dynamischen Artikel-Listen offen, weil leicht dynamische Listen daraus erzeugt werden können.


14.02.2015 Artikelbilder

Im Rahmen der LHQ-Umstellung habe ich viele Tausend Artikelbilder gesichtet, miteinander verglichen und manuell und automatisch gelöscht. Das LHQ ist nun "scharf geschaltet" und kann vollautomatisch Artikelbilder mit der LHQ-Datenbasis in beide Richtungen austauschen. Duplikate werden automatisch gelöscht. Die Lizenznehmer haben von dieser Aktion schon jetzt profitiert, indem sie von allen verfügbaren Bildern die besten erhalten haben. Vor allem aber müssen in Zukunft die Artikelbilder bestimmter Lieferanten nur noch einmal hochgeladen werden, um vollautomatisch für alle verfügbar zu sein.


13.02.2015 LHQ Bildverwaltung

Auf der Artikelseite gibt es einen neuen Tab "LHQ", in dem man die eigenen Artikelbilder ins LHQ hochladen kann. Dies sollte natürlich nur mit der angemessenen Vorsicht gemacht werden. Grundsätzlich sollte natürlich das aktuellere, größere, höher auflösende und schönere Bild übernommen werden, wenn davon ausgegangen werden kann, dass andere Lizenznehmer das auch so sehen.

Außerdem gibt es eine neue System-Artikel-Liste, in der sich alle Artikel befinden, deren Bilder vom LHQ abweichen. So kann man unproblematisch bei Gelegenheit das LHQ updaten oder die eigenen Bilder aus dem LHQ beziehen, indem man die lokalen Bilder löscht.


12.02.2015 LHQ

Das "LISA-Hauptquartier" LHQ wurde ins Leben gerufen, um Daten zu verwalten, die für mehrere Lizenznehmer interessant sein könnten. In dieser frühen Phase wurden zunächst Funktionalitäten eingebaut, die es ermöglichen, eine gemeinsame Artikelbilder-Basis zu nutzen. LISA wurde so umgebaut, dass es keinen Unterschied macht, ob ein Artikelbild aus dem LHQ oder dem Bilderbestand des Lizenznehmers abgerufen wird. LISA kann dadurch Speicherplatz sparen und die Lizenznehmer zentral mit frischen Bildern versorgen. Der Abgleich eines Artikelbildes erfolgt nach dem "Opt-Out"-Prinzip, was bedeutet, dass jedem Artikel, dessen Lieferant für den Abgleich mit LHQ konfiguriert ist und dessen Bild nicht mit LHQ abgeglichen werden soll, das entsprechende Flag zugeordnet werden muss.

Sollte die Artikelnummer des Lieferanten von der in LISA hinterlegten Artikelnummer abweichen, wird LISA auch die Artikelnummer beim Lieferanten berücksichtigen, sofern diese eingetragen ist.

Um überhaupt sehen zu können, woher das jeweilige Artikelbild stammt, habe ich diese Information in den "Weitere Informationen"-Container auf der Artikelseite aufgenommen. Ansonsten wird LISA keinen Unterschied erkennen lassen.

LHQ ist bereits aktiv, funktioniert und befindet sich in einer Testphase. Nach der Initialisierung konnten den Lizenznehmern etwa 120 zusätzliche Artikelbilder aus dem LHQ zur Verfügung gestellt werden. Im Anschluss an die Testphase sollen diejenigen Artikelbilder im "lokalen" Verzeichnis der Lizenznehmer, die es auch im LHQ gibt, gelöscht werden, so dass die entsprechenden Bilder nur noch aus dem LHQ geliefert werden. Aber das traue ich mich noch nicht ;)


10.02.2015 Umsatz-Auswertungen

Es ist jetzt auch möglich, in der Umsatzauswertung dynamische Artikel-Listen auszuwählen.


10.02.2015 Time-Machine im Journal

Alle Änderungen an Artikel- und Kundendaten können über Journal -> Time-Machine nachverfolgt werden. Auch auf Artikel- und Kundenseiten steht die neue Ansicht der Time-Machine zur Verfügung und kann für die Kontrolle und Wiederherstellung alter Daten genutzt werden. Inzwischen kann sich die Darstellung auch sehen lassen und ist viel hilfreicher als die alte Time-Machine.


09.02.2015 Neue Artikel

Seit jeher hatte LISA Probleme mit dem Neu-ab-Datum, welches bestimmt, ob ein Artikel im Webshop als neu erscheinen soll. Ich habe nun nach bestem Wissen und Gewissen allen Artikeln ein Neu-ab-Datum zugeordnet und dafür gesorgt, dass dieses zukünftig automatisch bei der Artikelanlage gespeichert wird, auch wenn man keines eingibt. In diesem Fall wird das aktuelle Datum gespeichert. Um zu verhindern, dass ein soeben angelegter Artikel als neu angesehen wird, muss man ihm nun ein zurückliegendes Datum verpassen.


08.02.2015 Angriff

Es wurde um 19:58 Uhr ein Angriff auf den LISA-Server gestartet, ausgehend von einer IP-Adresse aus Russland. Der Angreifer beabsichtigte, sich unter anderem mit der SQL-Injection-Methode über den SNK-Webshop Vollzugriff auf die Datenbank zu verschaffen und durch diese wiederum vermutlich Vollzugriff auf den Rootserver. Der Server wurde binnen weniger Minuten mit vielen tausend Einbruchsversuchen überzogen. Dank der neuen Sicherheitsmaßnahmen wurde ich sofort per Push informiert und habe erstmal den Webserver gestoppt. Um 20:20 Uhr habe ich ihn dann wieder eingeschaltet, und der Angriff war abgebrochen worden. Insgesamt war LISA zu keinem Zeitpunkt gefährdet. Wahrscheinlich handelte es sich um einen ungerichteten automatischen Scriptkiddie-Angriff.


07.02.2015 Bugfixes

  • Bestandsbuchungen lassen sich auch aus der Artikelseite heraus löschen.


02.02.2015 Bugfix: Zahl der Elemente in Artikel- und Kunden-Listen

Die Ermittlung der Zahl der Elemente in Artikel- und Kunden-Listen wurde korrigiert und sollte nun bei allen Listen die richtige Zahl anzeigen.


30.01.2015 Webshop-Besuche

Die Sitzungen der Besucher des neuen Webshops können unter Verwaltung -> Webshop -> Besuche angesehen werden.


30.01.2015 Verwaiste Konditionen

In regelmäßigen Abständen werden alle Konditionen auf ihre Gültigkeit überprüft. Bezieht sich eine Kondition zum Beispiel auf eine Artikel-Liste, die in der Zwischenzeit gelöscht wurde, so wird auch die betreffende Kondition gelöscht.


28.01.2015 Weiterleitung der Benutzer beim Login

Es wurde ein neuer Algorithmus entwickelt, um die Benutzer nach dem Login wieder dorthin zu bringen, wo sie LISA verlassen haben. Speziell nach einem Logout wird man bei der nächsten Anmeldung nicht wie vorher unvermutet auf der Benutzerverwaltung-Seite landen, sondern irgendwo dort, wo man LISA tatsächlich verlassen hat.


28.01.2015 Bestellungs-Optionen

Die folgenden Optionen einer Bestellung sind von nun an im Optionsmenü der Bestellung zu finden (und nicht in der Bestellung-verändern-Seite):

  • Bearbeiter der Bestellung auswählen
  • Lieferadresse auswählen
  • Posten umbuchen und löschen
  • Bestellung umbuchen


27.01.2015 Bugfixes

Es wurden einige Fehler behoben. Bei Abholungen wird nicht mehr an Frachtkosten erinnert, Webshop-Besucher können nicht mehr mit Lesezeichen auf unsichtbare Artikel-Listen zugreifen und derlei Dinge mehr.


26.01.2015 Aktive und inaktive Bestellungen

Sobald der neue Webshop die beiden alten ablöst, wird es keine aktiven und inaktiven Bestellungen mehr geben. Alle nicht gesperrten Bestellungen werden aufgeklappt sein und sich ohne Probleme erledigen und löschen lassen. Dieses Verhalten ist bereits fertig vorbereitet.


25.01.2015 Neuer Webshop: LangVars

Für Lizenznehmer, die den neuen Webshop nutzen werden, wurde unter Verwaltung -> Webshop eine Möglichkeit zur Anpassung der Webshop-Texte eingerichtet. Wie gewohnt können dort alle Textausgaben des Webshops konfiguriert werden. Auch die Vorbereitungen für die Mehrsprachigkeit können vorgenommen werden, die Übersetzungen obliegen jedoch ganz den Lizenznehmern.


23.01.2015 Artikelseite und Bestandsbewegungen

Die Artikelseite wurde in Tabs unterteilt, damit sie schneller lädt. Ab heute gibt es auch eine komfortablere Möglichkeit, die Bestandsänderungen eines Artikels nachzuvollziehen. Auf der Artikelseite gibt es einen neuen Container "Bestandsbewegungen", der alle Bestandsbewegungen auflistet sowie die jeweilige übrige Stückzahl zu jeder Bewegung darstellt. Damit sollte sich eindeutig ermitteln lassen, wie sich der Bestand wann verändert hat und warum er so ist, wie er ist.


22.01.2015 Server-Performance

In den letzten Wochen hat mir die Performance etwas Sorgen bereitet. Ich habe mich intensiv damit befasst, was genau der Server in Zeiten hoher Auslastung tut, und bin dahinter gekommen, dass er offenbar Probleme mit der Sessionverwaltung hatte. Aus Gründen der Bequemlichkeit hatte ich eingestellt, dass Sitzungen bis in alle Ewigkeiten gespeichert werden, damit man sich nie neu anmelden muss, wenn man an seinen Arbeitsplatz zurückkehrt. Was dazu führte, dass Session-Dateien jahrelang auf dem Server gespeichert blieben und ich das Verzeichnis, in dem die dazugehörigen Dateien gespeichert waren, nicht einmal mehr öffnen konnte, weil dort zu viele Dateien vorhanden waren.

Ab sofort sind die Sitzungen nur noch 30 Tage gültig, danach wird man hochkant hinausgeworfen und muss sich neu anmelden. Für den normalen LISA-Benutzer werden dadurch keine Unannehmlichkeiten entstehen. Im Gegenteil - der Server braucht nicht mehr so eine unglaubliche Masse an winzigen Dateien zu verwalten und geht deutlich frischer aus dieser Aufräum-Aktion hervor.


22.01.2015 Bearbeiten von Artikel- und Kunden-Listen

Das Bearbeiten, Anlegen und Löschen von Artikel- und Kunden-Listen ist nun übersichtlicher dargestellt. Die Bearbeitungssymbole haben sich nicht geändert, doch der nachfolgende Dialog ("Soll die Liste wirklich gelöscht werden?"...) ist nun sauber und aufgeräumt.


20.01.2015 Time-Machine

Eine neue Version der Time-Machine geht an den Start. Nachdem mir bewusst geworden war, dass die bestehende Time-Machine nicht genug Möglichkeiten bot, alle Veränderungen an wichtigen Stammdaten nachzuvollziehen, habe ich mich entschlossen, ein anderes Konzept auszuprobieren. Die neue Time-Machine wird Artikel- und Kundenstammdaten nicht nur dann speichern, wenn der Benutzer auf der Stammdaten-ändern-Seite war, sondern jeden Speichervorgang überwachen, sei er durch einen Importvorgang oder Systemereignisse wie Cronjobs hervorgerufen worden. Ziel ist es, ein völlig lückenloses Bild aller Änderungen zu erhalten, falls bei der Stammdatenpflege mal etwas schief geht oder Fragen auftauchen.

Das neue System ist bereits aktiv und wird über die nächsten Wochen getestet. Es ist mit der alten Time-Machine allerdings wegen des größeren Umfang gespeicherter Daten nicht kompatibel, so dass die alten Einträge nicht ohne Probleme ins neue Format überführt werden können. Ich werde daher zunächst beide Systeme parallel betreiben und mich in einigen Wochen oder Monaten nochmal damit befassen, sie möglichst verlustfrei zu verschmelzen.


16.01.2015 Agenten

Ich habe so genannte Kern-Artikellisten (z.B. Lebensmittel; Handwerk; Bücher) definiert, die von Agenten genutzt werden können, um irrelevante Artikellisten in Auswertungen auszublenden. Außerdem gibt es nun eine Aufstellung der Umsätze nach Lieferanten. Des weiteren konnte ich durch einen Puffer erreichen, dass Agenten, die Artikellisten abrufen, eine kürzere Ladezeit haben.


16.01.2015 Bugfix: Neue Artikel

Durch eine Unachtsamkeit im Puffersystem wurden nur solche Artikel als neu angesehen, die innerhalb der letzten X Tage angelegt wurden. Nun werden - wie erwartet - Artikel als neu betrachtet, deren "Neu ab"-Datum den betreffenden Anforderungen entspricht.


15.01.2015 Aufräumarbeiten

Ich konnte mich nicht beherrschen, ca. 20 Tabellen in LISAs Datenbank zu löschen, deren Daten entweder nicht mehr genutzt werden oder direkt im Programmcode besser aufgehoben sind. Es resultierten daraus einige Probleme, die in der Zwischenzeit aber eigentlich gelöst sein sollten. Tut mir leid für die kurzzeitigen Störungen, aber nun ist LISA übersichtlicher und besser wartbar.


15.01.2015 Export von Agenten

Die meisten Agentendaten können nun auch ins CSV-Format exportiert werden.


13.01.2015 Sicherheitsvorkehrungen

Vor allem in den Webshops (alt und neu), aber auch in LISA selbst wurden Vorkehrungen zum Verhindern eines SQL-Injection-Angriffs vorgenommen. Sollte ein derartiger Angriffsversuch erfolgen, werde ich benachrichtigt und kann zur Sicherheit noch einmal nachsehen, ob alles in Ordnung ist. SQL-Injection-Angriffe sind die am häufigsten genutzten Angriffe auf Webserver. Mit ihrer Hilfe kann es Angreifern gelingen, beliebige Daten aus der Datenbank abzurufen oder zu zerstören oder beliebigen PHP-Befehlscode auf dem Server auszuführen, daher ist ein besonderer Schutz erforderlich.

Den alltäglichen Betrieb der Shop-Systeme sollten diese Maßnahmen nicht beeinträchtigen.


07.01.2015 Bugfix: Posten ohne Berechnung

Posten ohne Berechnung tauchten nicht in der Rechnungs-Notification auf, die LISA nach dem Erledigen einer Bestellung anzeigt. Befanden sich auf einer erledigten Bestellung zwei Posten, von denen einer berechnet werden sollte und der andere nicht, behauptete die Notification also, dass nur ein Posten berechnet werden müsste. Auf der Rechnung hingegen erschien auch der zweite Posten mit Preis 0. Sollte aber keiner der Posten einer erledigten Bestellung berechnet werden, erschien überhaupt keine Notification.

Fortan wird die Notification auch diejenigen Posten voll berücksichtigen, die nicht berechnet werden sollen. Den Umständen entsprechend kann dann auch eine Rechnung mit Summe 0 erstellt werden.


06.01.2015 Veränderbare Werte in Agenten

Das Agentensystem wurde so angepasst, dass nun auch veränderbare Werte wie Jahresangaben möglich sind. Im Falle der Jahresangaben kann sich der Benutzer nun einfach durch die verschiedenen Jahre klicken. Die zugrundeliegende Infrastruktur erlaubt potenziell auch andere Benutzereingaben.

Außerdem wurden Agenten für Artikel-Listen hinzugefügt.


05.01.2015 Kundensuche nach Land und Bundesland

Kunden können nun auch nach Land und Bundesland gesucht werden.


05.01.2015 Farbige Kundenzeilen

In den Suchergebnissen werden die Namen der Kunden nun farbig dargestellt:

  • Blau, wenn der Kunde ein aktiver Kunde ist und in einem bestimmten Zeitraum Einkäufe getätigt hat.
  • Grün, wenn es für diesen Kunden offene Posten gibt.

Ich hoffe, dass dies mehr Klarheit als Verwirrung stiftet, denn so lässt sich der gesuchte Kunde unter Umständen schneller auffinden.


02.01.2015 Agenten

Die Agenten wurden noch etwas aufbereitet. Für Kunden- und Artikelseite gibt es nun jeweils eine vorgeschaltete Agentenliste, damit die Benutzer nicht auf das Laden der einzelnen Agenten warten müssen. Agenten sind zwar schnell, aber es gibt eben auch sehr komplexe Abfragen, die eine längere Rechenzeit benötigen. "Verwaltung --> Favoriten" wurde in "Verwaltung --> Favoriten und Agenten" umbenannt.