erste version der DB dateien erstellt

This commit is contained in:
2026-04-08 16:23:02 +02:00
parent 8a5a44886d
commit a31dfc03ff
11 changed files with 1154 additions and 10 deletions

View File

@@ -1,7 +1,7 @@
# Plan: PCK_NET_STORAGE
**Stand:** 2026-04-07
**Status:** Planung abgeschlossen — bereit zur Implementierung
**Stand:** 2026-04-08
**Status:** Implementiert
---
@@ -18,14 +18,22 @@ Wird in Oracle APEX für einen Dateimanager genutzt (Browse, Upload, Download, R
tables/
lg_app_log.tab
types/
t_net_storage_row.typ ← Schema-Level Type (siehe Hinweis)
t_net_storage_tab.typ ← Nested Table von t_net_storage_row
packages/
pck_log.pkh
pck_log.pkb
pck_net_storage.pkh
pck_net_storage.pkb
pck_log.pkh / pck_log.pkb
pck_net_storage.pkh / pck_net_storage.pkb
pck_auto_import.pkh / pck_auto_import.pkb
ords/
net_storage_process_incoming.sql
```
Keine Schema-Level Types.
**Hinweis Schema-Level Types:** `TABLE()` in SQL erfordert in Oracle schema-level Types.
`t_net_storage_row` / `t_net_storage_tab` werden ausschließlich intern für den
`sys_refcursor` von `f_list_objects` benötigt — keine Auswirkung auf die öffentliche API.
---
@@ -155,7 +163,7 @@ Bucket nicht erreichbar → -20003 via `f_make_request`
### OCI-Struktur
n8n legt Dateien in einem Unterordner ab, der nach der ZIP-Datei benannt ist.
Der Quarkus Automaton legt Dateien in einem Unterordner ab, der nach der ZIP-Datei benannt ist.
Unterordner innerhalb der ZIP werden beibehalten:
```
@@ -166,14 +174,14 @@ eingang/<zip-name>/_READY_FOR_DB_PROCESSING_ ← Marker
### Marker-Datei
n8n legt nach erfolgreichem Upload aller Dateien eine leere Marker-Datei ab:
Der Quarkus Automaton legt nach erfolgreichem Upload aller Dateien eine leere Marker-Datei ab:
`eingang/<zip-name>/_READY_FOR_DB_PROCESSING_`
Die DB verarbeitet einen Unterordner **ausschließlich wenn der Marker vorhanden ist.**
Der Marker wird erst gelöscht wenn **alle** Dateien des Unterordners erfolgreich
verarbeitet wurden — so werden fehlgeschlagene Dateien beim nächsten Lauf erneut versucht.
### Prozedur `p_process_incoming_files` (in separatem Fachpackage, nicht in pck_net_storage)
### Prozedur `p_process_incoming_files` (in `pck_auto_import`, nicht in pck_net_storage)
```
1. Unterordner von eingang/ auflisten (f_list_objects mit delimiter='/')