Skip to content

Einfaches Programm das es Kunden ermöglicht Informationen zu einem Artikel über den Barcode und der JTL Datenbank zu bekommen und einem Webserver zur Überwachung und dem Auslesen von Statistiken.

License

Notifications You must be signed in to change notification settings

M4RKUS-11111/Feinkost-Barcode-Scanner

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Barcode-Scanner-Feinkost-

Mit diesem Programm sollen Kunden des Innkaufhauses durch das Scannen eines Barcodes von Produkten zusätzliche Informationen zu diesen erhalten. Die Informationen werden dabei aus der Datenbank des Warenwirtschaftssystems von JTL (JTL Wawi) abgefragt.

Installation mit Installer

https://github.com/M4RKUS28/FeinkostBarcodeScannerInstaller

Installation durch:

wget -O /tmp/fkbc_install.sh https://raw.githubusercontent.com/M4RKUS28/FeinkostBarcodeScannerInstaller/main/install.sh; sudo chmod +x /tmp/fkbc_install.sh; sudo /tmp/fkbc_install.sh

Deinstallation mit:

wget -O /tmp/fkbc_uninstall.sh https://raw.githubusercontent.com/M4RKUS28/FeinkostBarcodeScannerInstaller/main/uninstall.sh; sudo chmod +x /tmp/fkbc_uninstall.sh; sudo /tmp/fkbc_uninstall.sh

Manuelle Installation

Autostart:

tee /home/pi/.config/autostart/feinkostbarcodescanner.desktop "
[Desktop Entry]
Name=FeinkostBarcodeScanner
Type=Application
Exec=/usr/bin/python /home/pi/FeinkostBarcodeScanner/src/main.py
Terminal=false"

Aktiviere Herunterfahren & Neustarten über Web

sudo visudo

Und füge folgende Zeile hinzu:

user_name ALL=(ALL) NOPASSWD: /sbin/reboot, /sbin/shutdown

Installation

Neben der Installation der Abhängigkeiten muss zu dem die Datei src/constants.py-template.txt zu src/constants.py umbenannt werden. In dieser Datei können grundlegende Einstellungen wie z.B. der Webserverport festgelegt werden.

WICHTIG:

Diese Datei wird bei Updates ignoriert! Sollte ein Hauptupdate (erste Stelle einer Version verändert sich) vorliegen, so muss die Datei src/constants.py-template.txt eigenständig von Github heruntergeladen werden und erneut umbenannt und die Einstallungen übertragen werden!

Abhängigkeiten Installation zusammengefasst:

Durch folgenden Bash-Code sollten alle benötigten Abhängigkeiten installiert werden. Sollten dabei Probleme auftreten, werden darauffolgend noch einmal alle Schritte detaillierter aufgeführt.

# 1. Driver
sudo apt install tdsodbc freetds-dev freetds-bin unixodbc-dev

# Save driver Location for Driver Loader
sudo tee -a "/etc/odbcinst.ini" "[FreeTDS]
Description=FreeTDS Driver
Driver=/usr/lib/arm-linux-gnueabihf/odbc/libtdsodbc.so
Setup=/usr/lib/arm-linux-gnueabihf/odbc/libtdsS.so"

# 2. Driver Loader, 3. Graphics, 4. Python-modules:
sudo apt install python3-pyodbc python3-PySide2.*

Abhängigkeiten Schritt für Schritt installieren:

Da es viele Pakete nur in älteren Version gibt, wird Python 3.7 empfohlen

1. MS SQL Open Source Driver:

sudo apt install tdsodbc freetds-dev freetds-bin unixodbc-dev

Getestet mit:
tdsodbc/oldstable,now 1.00.104-1+deb10u1 armhf
ODBC driver for connecting to MS SQL and Sybase SQL servers

Einrichten des Drivers nach der Installation:

Connect to MSSQL using FreeTDS / ODBC in Python. - Github
What's causing 'unable to connect to data source' for pyodbc? - Stackoverflow

Mit sudo nano /etc/odbcinst.ini folgenden Text einfügen:

einfügen und ggf. Pfade ändern (manchmal auch unter /usr/lib/odbc/):

[FreeTDS]
Description=FreeTDS Driver
Driver=/usr/lib/arm-linux-gnueabihf/odbc/libtdsodbc.so
Setup=/usr/lib/arm-linux-gnueabihf/odbc/libtdsS.so

Dadurch kann pyodbc den Driver finden. Weitere Informationen unter
FreeTDS.support.Microsoft
bzw. Informationen zur Protokollversion unter
ChoosingTdsProtocol

Oder Driver offiziell von Mircosoft

(Kein Support für ArmV8-Architektur! -> Funktioniert nicht auf dem Raspberry-Pi)

Microsoft Download Seite zu odbc-driver-for-sql

2. Zum Laden des Datenbank Drivers pyodbc:

sudo apt install python3-pyodbc

Getestet mit:
python3-pyodbc/oldstable,now 4.0.22-1+b1 armhf
Python3 module for ODBC database access

3. Für die Grafik: PyQt bzw. hier Pyside2 Bibliotheken:

sudo apt install python3-PySide2.*

About

Einfaches Programm das es Kunden ermöglicht Informationen zu einem Artikel über den Barcode und der JTL Datenbank zu bekommen und einem Webserver zur Überwachung und dem Auslesen von Statistiken.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 72.2%
  • HTML 22.5%
  • CSS 3.6%
  • JavaScript 1.7%