Hallo zusammen.
Das Thema ist ja nicht neu und tauchte auch bei unseren Kunden auf. Luwosoft verweist Kunden darauf, dass OBME eine Softwarelösung dafür habe. Das ist so nicht ganz richtig. Wir haben einen Workaround, den wir jeweils modifiziert nach Bedarf einsetzen. Wir wollen euch diesen hier als Denkanstoß oder kleine Blaupause zur Verfügung stellen. Die ganze Beschreibung ist jetzt nicht komplett ausgeführt. Man sollte die Grundmaterie also schon vorher verstanden haben. Das Ganze läuft allerdings so perfomant, dass wir es auch auf 12 " Windows Tablets mit 2 - 4 GB Ram ohne Weiteres laufen haben. Viel Erfolg damit. Denkt bitte daran, wir können zeitlich dafür dafür keinen Support übernehmen. Deshalb auch die Veröffentlichung.
(Wer Fehler findet, darf Sie behalten oder posten, dann korrigier ich sie. Die Anleitung wurde immer mal wieder umgeschrieben und es kann sein, das Korrekturen da nicht eingeflossen sind)
Inhalt:
Mobile Kasse ohne Datenbankverbindung.
Kassenabgleich. 2
Vorlagen für
Ameise aus Hauptwawi (EXP)
Vorlagen für Ameise aus Kassenwawi (IMP)
Wawi Exportvorlage Aufträge.
Datentauschscripte:
Workflow / Auftrag/angelegt auf Hauptserver:
Grobe Anleitung für den Betrieb einer Offline Kasse von Luwosoft
Das Ganze basiert darauf, das die Wawi auf einer mobilen Kasse über die Datenbankverwaltung in zwei Systemen steht. Einmal in der Hauptwawi (auf die sie nur mit WLan Verbindung zugreifen kann) und local in der eigenen Datenbank der Kasse. Die Kasse fährt dabei Ihre eigenen Nummernkreise für Bons.
Die Ameisenscripte sind dann immer entsprechend ausgelegt (beim einen holen und dem anderen geben).
Es gibt hier zwei beschriebene Wege (gibt garantiert mehr aber die zwei sind eben beschrieben):
1. Kasse für sich alleine ohne Einzelauftragsbuchung in der Wawi. Dabei geht es nur um den Abgleich der Artikel, Bestände und Gesamtsummen eines Tages. Hier kann man über das Hinzufügen oder weglassen der Beträge auch entscheiden ob man manuell am Abend in der Hauptwawi einen Kassenauftrag manuell setzt oder den Sammelauftrag aus der Kasse übernimmt. In jedem Falle werden die Artikel aus dem Lager ausgebucht.
(Auftragsexport Vorlage 1)
2. Einzelübertrag aller Einzelaufträge als Kassenaufträge (Auftragsexport Vorlage 2)
1. Eigenen SQL Server Express auf Kasse installieren (Minimal)
2. Wawi Instanz auf SQL einrichten
3. Standardlager auf Kasse Einrichten
4. Barkunde auf Wawi/Kasse einrichten (Bsp: 100000K)
Entscheidung treffen ob Kasse eigenes Lager führen soll und je nachdem extra Lager in Hauptwawi und Kassenwawi einrichten (dann auch gleich benennen).
Entscheiden ob alle Artikel der Wawi in Kasse verwendet werden sollen. Wenn nicht, dann über Warengruppe, Freifeld (Checkbox:Kasse ja/nein) oder Kategorie vorbereiten.
Entscheidung treffen ob Kasse generell auf einen Kassenkunden buchen soll, oder auch auf Stammkunden.
Kassenwawi einstellen auf – POS Aufträge anzeigen
Auf Kasse und Wawiserver einen Datentausch Ordner anlegen mit folgendem Schema:
Kassenabgleich
- Artikeldaten
- Artikelbilder
- Scripte (nur auf Kasse)
- Auftraege
- Archiv (wenn man es archivieren mag)
Vorlagen für Ameise aus Hauptwawi (EXP)
1. Artikel anlegen in Kasse (Bsp: EXP 1)
- Artikelnummer
- EAN (oder was auch immer scanbar ist)
- Artikelname
- VKs der richtigen Kundengruppe
- Steuersatz
- Einheit etc
- Bestand (in Hauptlager, wenn Kasse ohne eigenes Bestandslager – wenn eigenes Lager, dann den Bestand aus diesem Lager)
2. Artikelbilder (Bsp: EXP 2)
- wie gehabt
3. (wenn mit eigenem Lager dann auch einen für Lagerbestand des Kassenlagers) (Bsp: EXP 3)
4. Wenn Stammkunden übernommen werden sollen, dann auch Exportvorlage für Kunden mit oder Ohne Einschränkung „Kassenkunde“ (Bsp: EXP 4)
Vorlagen für Ameise aus Kassenwawi (IMP)
1. Importmapping auf EXP 1 (Bsp: IMP 10)
2. Importmapping auf EXP 2 (Bsp: IMP 11)
3. Importmapping auf EXP 3 (aber nur bei Bedarf) (Bsp: IMP 12)
4. Importmapping auf EXP 4 (aber nur bei Bedarf) (Bsp: IMP 13)
Wawi Exportvorlage Aufträge
Kassenwawi - (
Druckvorlagen/Auftrag) (Bsp. Geht nur auf Buchungen mit einem Kassenkunden ein)
Neues Vorlagenset erstellen und umbenennen in: Kassenaufträge
Vorlage hinzufügen bei „exportieren“ – einfach CSV
Vorlage ändern in
Bsp: Für
Vorlage 1 (Gesamtbuchung aller Kassenumsätze)
Dateiname: C.\Kassenabgleich\Auftraege\Kasse1_{{ Datum.Gestartet | Datum: 'ddMMyyyy' | AlsDateiname }}.csv
Aktion bei vorhandener Date: anhängen
Code:
{% assign Trennzeichen = ';' %}{% comment %}Gibt das Trennzeichen an{% endcomment -%}
{% comment -%}
{% for position in Vorgang.Positionen -%}
{{ Datum.Gestartet| Datum:'dd-mm-yyyy'}}-K{{Trennzeichen}}\
100000K{{Trennzeichen}}\
Barkunde Vorname{{Trennzeichen}}\
Barkunde Nachname{{Trennzeichen}}\
Barkunde Str.{{Trennzeichen}}\
Barkunde PLZ{{Trennzeichen}}\
Barkunde Ort {{Trennzeichen}}\
{{ position.Artikelnummer | Trim | Quote }}{{Trennzeichen}}\
{{ position.Bezeichnung | Trim | Quote }}{{Trennzeichen}}\
{{ position.Menge | Nummer: 'N2','en-US' }}{{Trennzeichen}}\
{{ position.Einheit | Trim | Quote }}{{Trennzeichen}}\
{{ position.NettopreisEinzel | Nummer: 'N2','en-US' }}{{Trennzeichen}}\
{{ position.BruttopreisEinzel | Nummer: 'N2','en-US' }}{{Trennzeichen}}\
{{ position.MwStEinzel | Nummer: 'N2','en-US' }}{{Trennzeichen}}\
{{ position.RabattProzent | Nummer: 'N2','en-US' }}
{% endfor %}
Das Script erzeigt für jeden über die Kasse verkauften Artikel eine Zeile die dann in der Hauptwawi ausgebucht werden. In einer Vorgängerversion der Wawi war es so, dass der Auftrag mangels Gesamtsumme nur die POS übernommen hatte. Hier genügte es den Auftrag aus der Kasse bei der Kontrolle einmal zu öffnen, einen kleinen Wert zu ändern und zu schließen um die Summen zu berechnen.
Bsp: Für Vorlage 2 (Einzelbuchung aller Kassenumsätze z.B. auch bei Stammkunden)
Dateiname:
C.\Kassenabgleich\Auftraege\Kasse1_{{ Datum.Gestartet | Datum: 'ddMMyyyy' | AlsDateiname }}.csv
Aktion bei vorhandener Date: anhängen (Ja, auch hier nur eine Datei pro Abgleich – wer mag, kann ja nach Auftrag aufteilen aber es geht auch so sehr gut.)
Code:
{% assign Trennzeichen = ';' %}{% comment %}Gibt das Trennzeichen an{% endcomment -%}
{% comment -%}
{% for position in Vorgang.Positionen -%}
{{ Vorgang.Belegnummer | Trim | Quote }}-K{{Trennzeichen}}\
{{ Vorgang.Währung }}{{Trennzeichen}}\
{{ Vorgang.Gesamtbetrag | Nummer: 'N2','en-US' }}{{Trennzeichen}}\
{{ Vorgang.Gutschein | Nummer: 'N2', 'en-US' }}{{Trennzeichen}}\
{{ Vorgang.Zahlungsart.Name | Trim | Quote }}{{Trennzeichen}}\
K-{{ Datum.Gestartet| Datum:'dd-mm-yyyy'}}{{Trennzeichen}}\
{{ Vorgang.Kunde.Kundennummer }}{{Trennzeichen}}\
{{ Vorgang.Kunde.Vorname }}{{Trennzeichen}}\
{{ Vorgang.Kunde.Name }}{{Trennzeichen}}\
{{ Vorgang.Kunde.Straße }}{{Trennzeichen}}\
{{ Vorgang.Kunde.PLZ }}{{Trennzeichen}}\
{{ Vorgang.Kunde.Ort }}{{Trennzeichen}}\
{{ position.Bezeichnung | Trim | Quote }}{{Trennzeichen}}\
{{ position.Artikelnummer | Trim | Quote }}{{Trennzeichen}}\
{{ position.Artikel.EAN | Trim | Quote }}{{Trennzeichen}}\
{{ position.Einheit | Trim | Quote }}{{Trennzeichen}}\
{{ position.NettopreisEinzel | Nummer: 'N2','en-US' }}{{Trennzeichen}}\
{{ position.BruttopreisEinzel | Nummer: 'N2','en-US' }}{{Trennzeichen}}\
{{ position.MwStEinzel | Nummer: 'N2','en-US' }}{{Trennzeichen}}\
{{ position.Menge | Nummer: 'N2','en-US' }}{{Trennzeichen}}\
{{ position.RabattProzent | Nummer: 'N2','en-US' }}
{% endfor %}
Auf Kassenrechner einen automatischen Workflow einrichten, der bei „Auftrag angelegt“ (kann auf der Kassenwawi ja fast nur Kassenbuchung sein (wenn nicht einschränken auf POS) ) die Ausgabe dieser Exportvorlage anstößt.
Importvorlage Server für Aufträge in Ameise Hauptserver:
Erstellen einer je nach CSV gemappten Auftragsimportvorlage zur Verarbeitung der Auftragsdateien der Kasse: Kasse1_{{ Datum.Gestartet | Datum: 'ddMMyyyy' | AlsDateiname }}.csv