# Stammdaten Anleitungen zur Administration, Integration und Verwendung von Stammdaten. # Stammdaten Stammdaten dienen in Squeeze zur Erkennung und Plausiblisierung von Merkmalen auf den jeweiligen Dokumententypen. Stammdaten werden in Squeeze in der Datenbank als Tabelle angelegt. Dabei können beliebig viele unterschiedliche Spalten konfiguriert werden. Es können unbegrenzt viele Stammdatentabellen angelegt werden. **Klassische Beispiele für Stammdatentabellen:** - Kreditoren - Bestellnummern - Mandanten - Auftragsnummern - Vertragsnummern - ... Squeeze kann die auf dem Dokument gefundenen Merkmale in den Stammdaten plausiblisieren und / oder auf zugehörige Werte umsetzen. **Die Stammdaten können auf verschiedene Art und Weise aktualisiert / gepflegt werden:** - Mittels File Upload - Mittels HTTP-Schnittstelle - Über die Benutzeroberfläche In Sonderfällen ist auch der Import mittels Datenbank-Skript möglich, allerdings nicht im Standard-Cloudbetrieb. # Anlegen einer neuen Stammdatentabelle im Webclient Das Anlegen einer neuen Stammdatentabelle in Squeeze muss initial via CSV-Upload aus dem Webclient erfolgen. [](https://docs.squeeze.one/uploads/images/gallery/2022-04/image-1649060596506.png) Beim Klick auf den Reiter Stammdaten öffnet sich der Dialog für die Stammdatenkonfiguration. Die Oben aufgeführten Stammdatentabellen werden aktuell mit dem Invoice Template ausgeliefert. [](https://docs.squeeze.one/uploads/images/gallery/2022-04/image-1649060706716.png) Eine neue Stammdatentabelle wird über das Symbol "Neuer Eintrag" angelegt. Im nächsten Dialog wird der technische Name und der Anzeigenamen angegeben. [](https://docs.squeeze.one/uploads/images/gallery/2022-04/image-1649060750960.png) # Konfiguration und Initialisieren einer neuen Stammdatentabelle via CSV-Upload Im Webclient wird die Konfiguration der Spalten für diese Stammdatentabelle durchgeführt. ### Stammdateneigenschaften
Eigenschaft | Beschreibung |
Name | Technischer Name für der Datenbankspalte |
Beschreibung | Anzeigenamen für der Datenbankspalte |
Quelle | externer Spaltenname (z.B. die Spaltenüberschrift in einer CSV-Datei) |
Jede Stammdatentabelle in Squeeze benötigt mindestens eine ID-Spalte.
Es können dann beliebig viele eigene Spalten definiert werden. Test-Tabelle mit id-Spalte + 2 weitere Spalten: [](https://docs.squeeze.one/uploads/images/gallery/2022-04/image-1649061129272.png)Nachdem die Spalten konfiguriert sind, wird eine CSV-Datei benötigt um die Tabelle auf dem Datenbankserver initial zu erstellen.
Die CSV Datei muss die selben Überschriften enthalten, wie in der Spaltenkonfiguration unter Quelle angegeben worden ist. Die Reihenfolge der Überschriften spielt keine Rolle.
WICHTIG: die Schreibweise der Spaltenüberschriften in der CSV-Datei ist case-sensitive. Das bedeutet Groß-Kleinschreibung ist relevant.
**CSV-Datei Beispiel für die obige Tabelle:** [](https://docs.squeeze.one/uploads/images/gallery/2020-03/image-1583510696508.png) Für die Werte-Zeilen müssen keine ID´s angegeben werden. Die ID Spalte ist eine Auto-Inkrement Spalte und erzeugt eigene fortlaufende ID´s beim Upload. Nachdem die CSV-Datei erstellt wurde kann die Initialisierung der neuen Stammdatentabelle erfolgen mit einem Klick auf den Reiter Upload. [](https://docs.squeeze.one/uploads/images/gallery/2022-04/image-1649061188375.png) Die übergeben Werte können mit einem Klick auf den Reiter Daten geprüft werden. [](https://docs.squeeze.one/uploads/images/gallery/2022-04/image-1649062298131.png) ### Daten hinzufügen Mit dem Webclient können manuell mit dem Symbol "NeuerEintrag" weitere Werte hinzugefügt werden. [](https://docs.squeeze.one/uploads/images/gallery/2022-04/image-1649062378547.png) Den neuen Datensatz mit dem Speichern Button bestätigen. [](https://docs.squeeze.one/uploads/images/gallery/2022-04/image-1649062412805.png)**Disclaimer:** Diese Dokumentation ist veraltet und enthält zum einen veraltete Beispiele und ist zum anderen zu spezifisch für Windows geschrieben. Daher ist die Seite aktuell "versteckt" eingerichtet. Diese Seite benötigt folgende Anpassungen: - Aktuelles Skript-Beispiel - Klare Unterscheidung zwischen Linux & Windows Stack (Auf Linux verwenden wir idr das Jobsystem, keine cronjobs)
Die Daten in Stammdatentabellen können jederzeit via CSV-Upload upgedatet werden. Im Hintergrund wird dabei eine neue Stammdatentabelle erstellt wodurch während der Aktualisierung die Ursprungstabelle weiterhin zur Verfügung steht. Zum Ende der Aktualisierung wird die Ursprungstabelle durch die aktualisierte Tabelle ersetzt. **Einrichtung einer neuen Windows-Aufgabe für den PHP-Job RefreshMasterData im Verzeichnis htdocs\\jobs** Der Job MasterDataRefresh ruft die Datei MasterDataRefresh.php auf. Die Datei MasterDataRefresh muss im folgenden Verzeichnis liegen: ...\\Squeeze\\repository\\jobs Ein Beispiel für diese Datei wird im Folgenden gezeigt: ```PHP Falls für eine on-premise Installation eine derartige Integration notwendig ist, müsste das als Sonderanpassung umgesetzt werden.Falls sie vor Squeeze Stammdatentabellen entweder auf ihre eigenen SQL Tabellen- und Views oder produktinterne Tabellen eingerichtet haben, berücksichtigen Sie, dass ein Update auf Squeeze > 2.5 mit Support-Aufwänden verbunden sein kann.
### Systeminterne Stammdatentabellen Squeeze hat ein paar Stammdatentabellen die Teil des Systems selbst sind, also nicht erst durch manuelle Konfiguration oder das Invoices-Paket erstellt werden. Diese Daten werden als Stammdaten bereitgestellt, damit man mit den existierenden Mechanismen auf die Daten zugreifen kann. Insbesondere kann man per UI die Daten Pflegen und DB-Link Lokatoren auf diesen Daten erstellen. Da interne Abhängigkeiten auf die Struktur dieser Daten besteht, sind diese Tabellen ab Squeeze 2.5 geschützt. Modifikationen der Struktur werden daher vom System nicht mehr zugelassen. Betroffen sind hiervon die folgenden Tabellen: - creditorsettings - emailattachmentfilters - emailbodyconversion - emailsenderwhitelist - emailsubjectsblacklist - taxrates