Kasse: Unterschied zwischen den Versionen

Aus OrgaMon Wiki
Zur Navigation springen Zur Suche springen
Zeile 49: Zeile 49:
=== OLAP Skript für aktuelle Kassen-Preise ===
=== OLAP Skript für aktuelle Kassen-Preise ===


<code>
  --
  --
  -- Generiert aus dem aktuellen ARTIKEL / SORTIMENT  
  -- Generiert aus dem aktuellen ARTIKEL / SORTIMENT  
Zeile 56: Zeile 55:
  --
  --
   
   
select
select
KASSE,  
  KASSE,  
TITEL,  
  TITEL,  
CAST(EURO*100 as BIGINT) as PREIS  
  CAST(EURO*100 as BIGINT) as PREIS  
from  
from  
ARTIKEL  
  ARTIKEL  
where  
where  
(KASSE is not null) and (KASSE not like '%''%')  
  (KASSE is not null) and (KASSE not like '%''%')  
   
   
append  
append  
   
   
select
select
ARTIKEL_AA.KASSE,
  ARTIKEL_AA.KASSE,
ARTIKEL.TITEL||' ['||AUSGABEART.NAME||']' as TITEL,
  ARTIKEL.TITEL||' ['||AUSGABEART.NAME||']' as TITEL,
CAST(ARTIKEL_AA.EURO*100 as BIGINT) as PREIS
  CAST(ARTIKEL_AA.EURO*100 as BIGINT) as PREIS
from  
from  
ARTIKEL_AA
  ARTIKEL_AA
join
join
ARTIKEL
  ARTIKEL
on
on
(ARTIKEL_AA.ARTIKEL_R=ARTIKEL.RID)
  (ARTIKEL_AA.ARTIKEL_R=ARTIKEL.RID)
join
join
AUSGABEART
  AUSGABEART
on
on
(ARTIKEL_AA.AUSGABEART_R=AUSGABEART.RID)     
  (ARTIKEL_AA.AUSGABEART_R=AUSGABEART.RID)     
where
where
ARTIKEL_AA.KASSE is not null  
  ARTIKEL_AA.KASSE is not null  
   
   
sort
sort
numeric KASSE
numeric KASSE
-
-
   
   
list
list
   
   
numeric KASSE
numeric KASSE
TITEL
TITEL
numeric PREIS
numeric PREIS
-
-
   
   
nop
nop
nop
nop
nop
nop
   
 
select
  select
BEZEICHNUNG
  BEZEICHNUNG
from  
from  
SORTIMENT
  SORTIMENT
where
where
  (ZOLLCODE is not null)  
  (ZOLLCODE is not null)  
order by  
order by  
cast(ZOLLCODE as INTEGER)
  cast(ZOLLCODE as INTEGER)
   
   
list
list
   
   
BEZEICHNUNG
BEZEICHNUNG
-
-
   
   
select  
select  
CAST(CURRENT_TIMESTAMP as VARCHAR(30)) as ERZEUGT,
  CAST(CURRENT_TIMESTAMP as VARCHAR(30)) as ERZEUGT,
'*/' as KOMMENTAR
  '*/' as KOMMENTAR
from  
from  
RDB$$DATABASE
  RDB$$DATABASE
   
   
add
add
   
   
Code=new Array $1;
Code=new Array $1;
Titel=new Array $2;
Titel=new Array $2;
Preis=new Array $3;
Preis=new Array $3;
Sortiment=new Array $4;/*
Sortiment=new Array $4;/*
-  
-  
   
   
html kasse
html kasse
   
   
save W:\Kasse\index.html
save W:\Kasse\index.html
-
-
   
   
return
return
   
   
-
-
   
   
excel
excel
   
   
open
open
-
-
</code>


== Verarbeitung des Ereignis 17 ==
== Verarbeitung des Ereignis 17 ==

Version vom 1. Dezember 2014, 12:49 Uhr

  • Eine mobile Kassenanwendung kann an den OrgaMon angebunden werden. Die Anzahl der mobilen Kassen ist beliebig. Die Kassenanwendung selbst ist so portierbar programmiert dass Sie sorgar auf einem Handy funktioniert.
  • Der Bereich Ihrer Mobilität ist nicht auf ihr WLAN im Firmengebäude beschränkt!! Der Aussendienst bedient die Kasse über das Internet, die Belege werden in der Zentrale gedruckt.
  • Die Kasse ist direkt an den OrgaMon gekoppelt. In Sache Speicherung / Ausdruck / Buchung besteht kein Unterschied zur "Schnellen Rechnung". Alle Kassenbelege sind ganz normal auf jedem laufenden OrgaMon einsehbar änderbar.
  • Die erstellte "Schnelle Rechnung" kann später einem Kunden direkt zugeordnet werden - oder Sie drucken den Kassenbeleg direkt aus. Der Ausdruck wird selbstverständlich von Ihrer mobilen Kasse aus angestossen.
  • Die Kasse kennt 100 ihrer meistverkauften Artikel, diese werden über Zahlencodes abgerufen. Eine Rechnung mit 5 Positionen erstellen Sie in weniger als 7 Sekunden.

Konkret läuft die Kasse auf jedem JavaScript-fähigen Browser und ist eine typische Web 2.0 Anwendung. Getestet sind Nokia N83, Nintendo Wii, Nintendo DSi, alle Webkit basierten Geräte, Internet-Explorer, Firefox, Crome, Safari ... Sämtliche "Web Tablets" sollten die Kasse ausführen können, wir rechnen mit WebTablets für 200 Euro bis Ende 2011.

verwandte Themen

Kasse3

Bedienung

Bedienungsinfo

  • Mit Hilfe von Zahlencodes kennt die Kasse die 100 häufigsten Artikel die im OrgaMon verwendet werden. Wenn Sie eine Ziffernfolge ohne Komma und danach "+" drücken wird die Kasse versuchen die Eingabe in einen Artikel umzuwandeln.
  • Direkte Preiseingaben sind möglich, indem Sie ein Komma in der Eingabe verwenden - schreiben Sie für 10 Euro "10," für 20 Cent ",2"
  • Direkte Preiseingaben beziehen sich immer auf das aktuell gewählte Sortiment
  • Durch "SOR" lässt sich das Sortiment umschalten
  • Durch Zifferneingabe unf folgendes "SOR" lässt sich direkt ein Sortiment auswählen
  • Durch "Bar" und "EC" wird der aktuelle Kassenzettel gebucht (als schnelle Rechnung) und gedruckt
  • Durch "C" werden alle Eingaben gelöscht
  • Durch "<-" werden einzelne Zeichen gelöscht, sind keine mehr da wird die zuletzt eingegebene Position gelöscht

Eingabe Beispiel

[2] [,] [+]       2,00 Euro im Standard Sortiment (1)
[1] [2] [+]       Artikel mit dem Code 12
[+]               nochmal (also Menge=2)
[+]               nochmal (also Menge=3)
4 [SOR]           Umschalten auf das Sortiment (4), es soll wieder ein manueller Preis angegeben werden
[,] [8] [+]       0,80 Euro im Sortiment (4)
[,] [9] [9] [+]   0,99 Euro im Sortiment (4)
[<-]              die letzte Eingabe zurücknehmen (also die 99 cent)
[BAR]             Ende und Buchen, der Kassenzettel wird gedruckt

technische Info

  • Benötigt wird ein Webserver zum Hosting der "index.html" und der "up.php5".
  • Es muss ein (c)XMLRPC zur Verfügung stehen. Es wird nur "BasePlug" genutzt.
  • Es muss des weiteren ein OrgaMon laufen der den Kassen-Job übernimmt. Das up.php5 erzeugt in der Datenbank das Ereignis "17" (eT_Kasse) mit dem Gesamten-POST-Text der Kassenanwendung.
  • In den .\HTML Vorlagen muss die Datei kasse.html gespeichert werden
  • Im System-OLAP Verzeichnis muss sich die Datei Tagwache.Kasse-JavaScript.OLAP.txt befinden

OLAP Skript für aktuelle Kassen-Preise

--
-- Generiert aus dem aktuellen ARTIKEL / SORTIMENT 
-- Datenbestand die Java-Script Konstanten
-- (c) 08.2010 Andreas Filsinger 
--

select
 KASSE, 
 TITEL, 
 CAST(EURO*100 as BIGINT) as PREIS 
from 
 ARTIKEL 
where 
 (KASSE is not null) and (KASSE not like '%%') 

append 

select
 ARTIKEL_AA.KASSE,
 ARTIKEL.TITEL||' ['||AUSGABEART.NAME||']' as TITEL,
 CAST(ARTIKEL_AA.EURO*100 as BIGINT) as PREIS
from 
 ARTIKEL_AA
join
 ARTIKEL
on
 (ARTIKEL_AA.ARTIKEL_R=ARTIKEL.RID)
join
 AUSGABEART
on
 (ARTIKEL_AA.AUSGABEART_R=AUSGABEART.RID)    
where
 ARTIKEL_AA.KASSE is not null 

sort
numeric KASSE
-

list

numeric KASSE
TITEL
numeric PREIS
-

nop
nop
nop
 
select
 BEZEICHNUNG
from 
 SORTIMENT
where
(ZOLLCODE is not null) 
order by 
 cast(ZOLLCODE as INTEGER)

list

BEZEICHNUNG
-

select 
 CAST(CURRENT_TIMESTAMP as VARCHAR(30)) as ERZEUGT,
 '*/' as KOMMENTAR
from 
 RDB$$DATABASE

add

Code=new Array $1;
Titel=new Array $2;
Preis=new Array $3;
Sortiment=new Array $4;/*
- 

html kasse

save W:\Kasse\index.html
-

return

-

excel

open
-

Verarbeitung des Ereignis 17

  • DoKasse(EREIGNIS_R)
    • e_w_BelegNeuAusKasse: Erstellen des Beleges
    • e_w_BelegBuchen: Summe Bilden, Forderung schreiben
    • printhtmlOK: Drucken des Beleges

eingesetzte Hardware

http://www.nokia.de/service-und-software/produktservice/nokia-n810

empfohlene Hardware

http://www.tomshardware.com/de/Camangi-Webstation-Android,news-243770.html

Firefox im Kiosk-Mode

die zoom Geschichte dauerhaft speichern

  • Type about:config in the Location Bar. Search or filter for browser.zoom.siteSpecific preference name, then double click on the preference to change its value to false (by default is “true”).
  • Man sollte die Kasse als Startseite einrichten, und nicht als Adresse in der Commandozeile. Dann werden auch die Zoom-Settings gespeichert.

das Kiosk-Plugin Verwenden

der Save-Mode