-
Notifications
You must be signed in to change notification settings - Fork 0
Database
NEU*** (EMPFOHLEN/AKTUELLER PROZESS) Kochrezept zum Aktualisieren der Datenbestände in MariaDB auf heiCloud-Rechner
- Neue Einträge und Änderungen im Google Sheet vornehmen
- dabei kann das Tab »hgv« in folgendem Sheet als Vorlage benutzt werden, indem man den Inhalt löscht, die Formeln jedoch behält und gegebenfalls durch »Herunterziehen« auf weitere Zeilen überträgt https://docs.google.com/spreadsheets/d/12z4_rcNBrg-azyKu8DLfYbbOmr9tXrZMjZW2md7e2X4/edit#gid=63283008
- in dem Sheet finden sich im Tab »Bedienungsanleitung« Hinweise zur Bedeutugn der Kopfzeilen sowie zur Handhabung der Felder
- folgende Felder werden vom Import berücksichtigt
- tm_id / hgv_letter / multiple_letter / hgv_id_long
- hgv_id (entspricht primary key der Tabelle hgv)
- publication_long / publication / volume / volume_extra / number / number_extra / side
- material
- date_1 / date_2
- day_1 / month_1 / year_1 / century_1 / extra_1
- day_2 / month_2 / year_2 / century_2 / extra_2
- uncertain
- chron_minimum / chron_maximum / chron_global
- original_title / content
- provenance / provenance_type (noch nicht) / place_name (noch nicht) / nome (noch nicht) / province (noch nicht) / region (noch nicht)
- other_publication / published_photo / translations
- notes
- mentioned_dates
- image_link
- place (noch nicht) / collection (noch nicht) / inventory_number
- ddb_collection_hybrid / ddb_volume_number / ddb_document_number
- created
- Daten aus Google Sheet exportieren
eine mögliche Vorgehensweise, um ein Google Sheet in FODS-Format zu überführen bei minimaler Parametrierarbeit (z.B. anstatt die Datenzeile anzugeben, einfach und alle fortfolgenden Spalten als Daten interpretiert werden dürfen, oder anstatt bei Import den Tab-Namen anzugeben, einfach das Tab hgv nennen):
- Google Sheet öffnen, darauf achten, dass alle relevanten Datenfelder ausgefüllt wurden
- Sheet exportieren über Menübefehl
File > Download > Comma Separated File (.csv) - heruntergeladene Datei mit LibreOffice öffnen, und über den Menübefehl
File > Save As… > Flat XML ODF Spreadsheet (.fods)imdata-Ordner des Aquila-Projekts unter dem Namenhgv.fodsablegen; für einfacheres Handling beim Import dabei folgende Konventionen beachten:- den Tab mit den Daten in
hgvumbenennen (zumeist der einzige Tab) - die erste Zeile sollte die Spaltenüberschriften enthalten (also
tm_id,material,provenance, usw.) - die Daten sollten ab Zeile 2 beginnen (Leerzeilen erlaubt)
- den Tab mit den Daten in
- Exportierte XML-Daten auf dem Server speichern
scp hgv.fods ubuntu@123.456.789.012:/var/www/aquila/data/
scp hgv.fods ubuntu@123.456.789.012:/var/www/aquila_dev/data/
- Importskript über die Kommandozeile aufrufen
Die Import-Datei wird unter dem Namen hgv.fods im Verzeichnis /var/www/aquila_dev/data bzw. /var/www/aquila/data erwartet. Das Verzeichis data steht nicht unter git-Versionskontrolle. Um die Datei zu importieren, aus einem Uni-Netz oder durch einen VPN-Tunnel per ssh auf dem Server einwählen, in das Verzeichnis für die HGV-Webseite wechseln und das Importskrip starten:
ssh ubuntu@123.456.789.012
cd /var/www/aquila_dev
cd /var/www/aquila
bin/console app:update-records dry-run
bin/console app:update-recordsBasismodul ausführen (lediglich Auflistung der verfügbaren Felder, kein Import)
bin/console app:read-fodsNEU*** (ABER VOM PROZESS HER SCHON WIEDER VERALTET) Kochrezept zum Aktualisieren der Datenbestände in MariaDB auf heiCloud-Rechner
- Änderungen in der FileMaker 12 Datenbank durchführen
- Beim Ändern der Datensätze darauf achten, dass das Feld _lastModified gesetzt wird. Dies geschieht bei händischen Korrekturen automatisch. Nach einem Datenabgleich oder nach einem Import (z.B. über das Menü Datei→Ablage→Daten importieren→Datei…) muss es jedoch von Hand gesetzt werden (z.B. 24.06.2015).
- Daten aus FileMaker 12 Datenbank exportieren
- geänderte Datensätze Aufrufen, z.B. mit einer Suche nach allen Datensätzen mit einem bestimmten Wert im Feld _lastModified
- in Layout Web wechseln
- im Menü Ablage→Exportieren klicken
- im Dateidialog hgvUpdate.xml als Dateiname angeben and XML als Exporttyp wählen (FMPXMLRESULT - auf Fortsetzen klicken)
- im Exportfeldfolge-Dialog Aktuelles Layout ("Web") und Unicode (UTF-8) auswählen, anschließend alle Felder kopieren und Exportieren klicken
- Exportierte XML-Daten auf dem Server speichern
scp hgvUpdate.xml ubuntu@123.456.789.012:/var/www/aquila/data/
scp hgvUpdate.xml ubuntu@123.456.789.012:/var/www/aquila_dev/data/
- Importskript über die Kommandozeile aufrufen
Die Import-Datei wird unter dem Namen hgvUpdate.xml im Verzeichnis /var/www/aquila_dev/data bzw. /var/www/aquila/data erwartet. Das Verzeichis data steht nicht unter git-Versionskontrolle. Um die Datei zu importieren, per ssh auf dem Server einwählen, in das Verzeichnis für die HGV-Webseite wechseln und das Importskrip starten:
ssh ubuntu@123.456.789.012
cd /var/www/aquila_dev
cd /var/www/aquila
bin/console app:update-databaseBasismodul ausführen (lediglich Auflistung der verfügbaren Felder, kein Import)
bin/console app:parse-hgv-fmp- zu löschende Daten in einer CSV-Datei namens hgvDelete.csv sammeln
Es wird die vollständige HGV-Id benötigt,also die TexIDLang, die aus TM-Nr., TexLett und Mehrfachkennung besteht, z.B.
14073
40601a
40601b X
40601b Y
14074 X
14074 Y- CSV-Datei auf dem Server speichern
Mit dem Server verbinden und die Datei unter /var/www/aquila/data ablegen.
scp hgvDelete.csv ubuntu@123.456.789.012:/var/www/aquila/data/
scp hgvDelete.csv ubuntu@123.456.789.012:/var/www/aquila_dev/data/
- Löschskript über die Kommandozeile aufrufen
Auf dem Server per ssh einwählen in das Verzeichnis für die HGV-Webseite wechseln und Löschskript starten:
ssh ubuntu@123.456.789.012
cd /var/www/aquila_dev
cd /var/www/aquila
bin/console app:delete-recordsWorkflow für die Kommandozeile, um erst dev und anschließend prod zu aktualisieren unter der Vorraussetzung, dass hgvUpdate.xml und hgvDelete.csv bereits auf dem Server im data-Verzeichnis der dev environment gespeichert wurden (/var/www/aquila_dev/data):
ssh ubuntu@123.456.789.012
cd /var/www/aquila_dev
sudo bin/console app:delete-records
sudo bin/console app:update-database
sudo cp data/hgvUpdate.xml data/hgvDelete.csv ../aquila/data/
cd ../aquila
sudo bin/console app:delete-records
sudo bin/console app:update-database