Warehouse Management Tool
Under construction...
Introduction (Einleitung)
English version:
I have a large number of electronic components and devices.
The quantity of items is so large that I no longer have an overview of what I own and where it is stored.
For this reason, a warehouse management tool will be developed with the following benefits:
- Overview of registered items
- Easy and quick retrieval of items
- Alerts for expiration dates (e.g., food, batteries, rechargeable batteries need to be charged)
- Datasheets, manuals, receipts, links, images, and other data related to the item are available
- Learning various tools and deepening knowledge during or for the realization
Deutsche Version:
Ich habe sehr viele Elektronikbauteile und Geräte.
Die Menge an Artikeln ist so groß, dass ich keine Übersicht mehr habe, was ich alles habe und wo es ist.
Aus diesem Grund soll ein Lagerverwaltungstool mit entstehen, mit folgenden Vorteilen:
- Übersicht der erfassten Artikel
- Leichtes und schnelles Auffinden der Artikel
- Warnungen bei Verfallsdaten (z. B. Lebensmittel, Batterien, Akkus, die geladen werden müssen)
- Datenblätter, Anleitungen, Quittungen, Links, Bilder, und weitere Daten über den Artikel sind vorhanden
- Lernen verschiedener Tools und Vertiefen von Kenntnissen während oder für die Realisierung
Project Planning (Projektplanung)
Collection of all required, correct English and German terms (Erfassung aller benötigten, korrekten englischen und deutschen Begriffe)
English version:
The goal is to define all terms in English and German to ensure consistency.
Multiple terms for the same item should be avoided.
Deutsche Version:
Ziel ist es, alle Begriffe in Englisch und Deutsch festzulegen, um Konsistenz zu gewährleisten.
Es sollen nicht mehrere Begriffe für denselben Artikel verwendet werden.
Defining the Data Structure (Datenstruktur definieren)
English version:
It must be defined in what format and where the data and information will be stored.
Considerations should include: backup, testing, and distribution.
Deutsche Version:
Es muss definiert werden, in welcher Form und wo die Daten und Informationen gespeichert werden.
Dabei sollen folgende Aspekte berücksichtigt werden: Backup, Testing und Distribution.
Tests tbd
English version:
Testing whether the data structure works as planned and how users can interact with the system.
Deutsche Version:
Es soll getestet werden, ob die Datenstruktur wie geplant funktioniert und wie Benutzer mit dem System interagieren können.
Terms (Begriffe)
English version:
Define terms in English and German to ensure consistency and accuracy.
Multiple terms for the same item should be avoided.
Deutsche Version:
Begriffe in Englisch und Deutsch festlegen, um Konsistenz und korrekte Ausdrücke zu gewährleisten.
Es sollen nicht mehrere Begriffe für denselben Artikel verwendet werden.
| English | Deutsch | Description |
|---|---|---|
| Stock | Lagerbestand, Vorrat | The quantity of items available in storage (not the storage location). |
| Storage | Speicherung, Lagerung | A general term for the act of storing items or the place where items are stored. |
| Storage Entity | Aufbewahrungseinheit | General term for any storage unit (e.g., warehouse, room, rack, box, ESD bag). |
| Warehouse | Lagerhaus | A large building for storing goods and materials. |
| Storage Facility | Lagereinrichtung | A facility designed for storing items, often larger and more complex. |
| Rack | Gestell | An open frame with multiple shelves, usually without doors. |
| Cabinet | Schrank | A closed storage unit with doors. |
| Drawer Stack | Schubladenstock | A set of stacked drawers, often part of a larger furniture piece. |
| Chest of Drawers | Kommode | A furniture piece with multiple drawers, typically used for clothing or small items. |
| Shelf | Tablar | A flat surface on which items are placed, usually part of a rack. |
| Compartment | Fach | A subdivision of a shelf or container. |
| Storage Container | Aufbewahrungsbehälter | A container for organizing and storing items. |
| Box | Schachtel | A small container for storing items. |
| Bag / ESD Bag | Beutel / ESD-Beutel | A flexible container for storing items; ESD bags protect against static electricity. |
| Drawer | Schublade | A sliding compartment within furniture for storing items. |
| Item | Artikel | A single piece of equipment or material. |
| Part | Teil, Ersatzteil | An individual component or piece that can be part of a larger assembly or used as a replacement. |
Data Structure, Data Flow, Data Storage (Datenstruktur, Datenfluss, Datenablagen)
English version:
The final data structure will evolve during application development and testing.
However, this chapter outlines some key points to consider during implementation.
Deutsche Version:
Die finale Datenstruktur wird sich im Laufe der Anwendung und während der Tests entwickeln.
In diesem Kapitel werden jedoch einige Punkte aufgeführt, die bei der Umsetzung berücksichtigt werden sollten.
Existing Data (Bereits vorhanden Daten)
English version:
Some items have already been recorded, but in different structures that need to be migrated into the final inventory management system:
- JSON File: Contains various items, item descriptions, inventory quantities, and storage information (rooms, racks, storage containers).
- Temporary Google Spreadsheet: Categorizes items (e.g., OpAmp, resistor, LDR) and specifies their storage locations.
- Directories: Contain datasheets, product information, receipts, and other relevant details.
Deutsche Version:
Einige Artikel sind bereits erfasst, allerdings in unterschiedlichen Strukturen, welche aber in die finale Lagerverwaltung überführt werden sollen:
- JSON Datei: Enthält diverse Artikel, Artikelbeschreibungen, Lagerbestände sowie Lagerinformationen (Zimmer, Gestelle, Aufbewahrungsbehälter).
- Temporäre Google Tabelle:Kategorisiert Artikel (z. B. OpAmp, Widerstand, LDR) und gibt an, wo sich diese Artikel befinden.
- Verzeichnisse: Datenblätter, Produktinformationen, Quittungen und weitere Informationen.
General Data and Directory Structure (Allgemeine Daten- und Verzeichnisstruktur)
English version:
- Data Storage: Store data in a JSON file.
- Additional Files: Datasheets, user manuals, photos, and other information are organized in separate directories.
- Program Logic and Data Processing:
Primarily implemented with PHP
Supplemented with JavaScript where necessary
Deutsche Version:
- Datenablage: Speicherung der Daten in einer JSON-Datei.
- Zusätzliche Dateien: Datenblätter, Bedienungsanleitungen, Fotos und weitere Informationen werden in separaten Verzeichnissen organisiert.
- Programmsteuerung und Datenverarbeitung:
Primär mit PHP umgesetzt
Ergänzend mit JavaScript, falls erforderlich
tbd (Verwaltung der Artikel)
- Internal ID
- Name
- Description
- Storage Location
- Stock
- Min. Stock
- Average Price
- Additional Details
- Labels?
- Batches
- Inventory numbers
Internal ID
English version:
The Internal ID is a globally unique, sequential number used to identify entities such as inventory items, storage locations, batches, or other records in the system.
Each ID is unique across all types – for example, the same ID will never refer to both an item and a location at the same time.
To keep ID lengths short even as the number of entries grows, a custom Base-32 encoding system called ClearBase32 was developed.
This system uses digits 0–9 and 22 carefully selected uppercase letters, avoiding characters that could be visually confused.
The letters I, O, S, and Z were intentionally excluded due to their similarity to 1, 0, 5, and 2, especially in handwriting or certain fonts.
The result is a compact and human-friendly representation of large numeric values.
Allowed characters:
0123456789ABCDEFGHJKLMNPQRTUVWXY
Deutsche Version:
Die Internal-ID ist eine fortlaufende, systemweit eindeutige Nummer, mit der Objekte wie Lagerartikel, Lagerorte, Batches oder andere Einträge eindeutig identifiziert werden.
Jede ID ist einmalig – es gibt niemals doppelte IDs, selbst wenn es sich um unterschiedliche Objekttypen handelt.
Zum Beispiel wird eine bestimmte ID entweder einem Artikel oder einem Lagerort zugewiesen – aber nie gleichzeitig beidem.
Um die Länge der IDs bei steigender Anzahl kompakt zu halten, wurde ein eigenes Zahlensystem auf Basis 32 entwickelt – ClearBase32.
Dieses System verwendet die Ziffern 0–9 und 22 bewusst ausgewählte Großbuchstaben, wobei Zeichen ausgeschlossen wurden, die leicht verwechselt werden können.
Die Buchstaben I, O, S und Z wurden ausgelassen, da sie mit 1, 0, 5 und 2 verwechselt werden könnten – z. B. bei Handschrift oder bestimmten Schriftarten.
Das Ergebnis ist eine kompakte und benutzerfreundliche Darstellung auch sehr großer Zahlenwerte.
Verwendete Zeichen:
0123456789ABCDEFGHJKLMNPQRTUVWXY
Python Code Example:
# ClearBase32 character set (32 characters)
CLEARBASE32 = "0123456789ABCDEFGHJKLMNPQRTUVWXY"
def encode_clearbase32(number):
"""Convert decimal to ClearBase32 string."""
if number == 0:
return CLEARBASE32[0]
result = ""
while number > 0:
number, rem = divmod(number, 32)
result = CLEARBASE32[rem] + result
return result
def decode_clearbase32(code):
"""Convert ClearBase32 string to decimal."""
number = 0
for char in code:
value = CLEARBASE32.index(char)
number = number * 32 + value
return number
# Example usage:
print(encode_clearbase32(12345)) # Output: C31
print(decode_clearbase32("C31")) # Output: 12345
Data Types used in the JSON File (Benutzte Datentypen in der JSON Datei)
| English | Deutsch | Description |
|---|---|---|
| Item | Artikel |
English: Individual items or objects managed in the inventory, such as resistors, measuring devices, or other components. Deutsch: Einzelne Artikel oder Objekte, die im Lager verwaltet werden, z. B. Widerstände, Messgeräte oder andere Bauteile. |
| Storage Entity | Physisches Lager |
English: Physical storage locations, such as rooms, racks, storage containers, or cabinets. Deutsch: Physische Lagerorte, wie Räume, Regale, Aufbewahrungsbehälter oder Schränke. |
| Category | Kategorie |
English: A hierarchical structure to classify items, e.g., Electronics → Passive Components → Resistors. Deutsch: Eine hierarchische Struktur zur Klassifikation von Artikeln, z. B. Elektronik → Passive Bauteile → Widerstände. |
tbd (Werkzeuge und Verfahren)
English version:
Summary tbd
Deutsche Version:
tbd
tbd
- php
- Selenium
- tbd