process_incoming prozedur sprechender benannt
This commit is contained in:
@@ -26,9 +26,6 @@ packages/
|
|||||||
pck_log.pkh / pck_log.pkb
|
pck_log.pkh / pck_log.pkb
|
||||||
pck_net_storage.pkh / pck_net_storage.pkb
|
pck_net_storage.pkh / pck_net_storage.pkb
|
||||||
pck_auto_import.pkh / pck_auto_import.pkb
|
pck_auto_import.pkh / pck_auto_import.pkb
|
||||||
|
|
||||||
ords/
|
|
||||||
net_storage_process_incoming.sql
|
|
||||||
```
|
```
|
||||||
|
|
||||||
**Hinweis Schema-Level Types:** `TABLE()` in SQL erfordert in Oracle schema-level Types.
|
**Hinweis Schema-Level Types:** `TABLE()` in SQL erfordert in Oracle schema-level Types.
|
||||||
@@ -181,7 +178,7 @@ Die DB verarbeitet einen Unterordner **ausschließlich wenn der Marker vorhanden
|
|||||||
Der Marker wird erst gelöscht wenn **alle** Dateien des Unterordners erfolgreich
|
Der Marker wird erst gelöscht wenn **alle** Dateien des Unterordners erfolgreich
|
||||||
verarbeitet wurden — so werden fehlgeschlagene Dateien beim nächsten Lauf erneut versucht.
|
verarbeitet wurden — so werden fehlgeschlagene Dateien beim nächsten Lauf erneut versucht.
|
||||||
|
|
||||||
### Prozedur `p_process_incoming_files` (in `pck_auto_import`, nicht in pck_net_storage)
|
### Prozedur `p_process_incoming_ba_data` (in `pck_auto_import`, nicht in pck_net_storage)
|
||||||
|
|
||||||
```
|
```
|
||||||
1. Unterordner von eingang/ auflisten (f_list_objects mit delimiter='/')
|
1. Unterordner von eingang/ auflisten (f_list_objects mit delimiter='/')
|
||||||
@@ -210,8 +207,8 @@ Kein Verhalten wird aus `lg_app_log` abgeleitet — es dient ausschließlich dem
|
|||||||
|
|
||||||
### ORDS-Endpunkt
|
### ORDS-Endpunkt
|
||||||
|
|
||||||
`POST /ords/.../net_storage/process_incoming` → ruft `p_process_incoming_files` auf.
|
`POST /ords/.../net_storage/process_incoming_ba_data` → ruft `p_process_incoming_ba_data` auf.
|
||||||
Wird von n8n nach erfolgreichem Upload aufgerufen.
|
Wird von automaton nach erfolgreichem Upload aufgerufen.
|
||||||
Schlägt der Aufruf fehl: APEX Automation greift beim nächsten Stundenlauf.
|
Schlägt der Aufruf fehl: APEX Automation greift beim nächsten Stundenlauf.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|||||||
@@ -1,32 +0,0 @@
|
|||||||
-- ORDS-Endpunkt: POST /ords/{schema}/net_storage/process_incoming
|
|
||||||
-- Wird vom Dateieingang Service nach erfolgreichem Upload aufgerufen.
|
|
||||||
-- Bei Fehler greift die APEX Automation beim nächsten Stundenlauf.
|
|
||||||
--
|
|
||||||
-- Hinweis: Das ORDS-Modul 'net_storage' wird angelegt falls nicht vorhanden.
|
|
||||||
-- Bei bestehendem Modul schlägt define_module fehl — dann auskommentieren.
|
|
||||||
|
|
||||||
begin
|
|
||||||
ords.define_module(
|
|
||||||
p_module_name => 'net_storage'
|
|
||||||
,p_base_path => '/net_storage/'
|
|
||||||
,p_is_published => true
|
|
||||||
);
|
|
||||||
|
|
||||||
ords.define_template(
|
|
||||||
p_module_name => 'net_storage'
|
|
||||||
,p_pattern => 'process_incoming'
|
|
||||||
);
|
|
||||||
|
|
||||||
ords.define_handler(
|
|
||||||
p_module_name => 'net_storage'
|
|
||||||
,p_pattern => 'process_incoming'
|
|
||||||
,p_method => 'POST'
|
|
||||||
,p_source_type => ords.source_type_plsql
|
|
||||||
,p_source => q'[begin
|
|
||||||
pck_auto_import.p_process_incoming_files;
|
|
||||||
end;]'
|
|
||||||
);
|
|
||||||
|
|
||||||
commit;
|
|
||||||
end;
|
|
||||||
/
|
|
||||||
@@ -28,7 +28,7 @@ create or replace package body pck_auto_import as
|
|||||||
null;
|
null;
|
||||||
end p_import_file;
|
end p_import_file;
|
||||||
|
|
||||||
procedure p_process_incoming_files
|
procedure p_process_incoming_ba_data
|
||||||
/*Kopf------------------------------------------------------------------------------------------------
|
/*Kopf------------------------------------------------------------------------------------------------
|
||||||
-- Beschreibung: Verarbeitet alle fertigen Eingangs-Batches aus dem OCI Eingangsordner.
|
-- Beschreibung: Verarbeitet alle fertigen Eingangs-Batches aus dem OCI Eingangsordner.
|
||||||
-- Wird von ORDS-Endpunkt und APEX Automation aufgerufen.
|
-- Wird von ORDS-Endpunkt und APEX Automation aufgerufen.
|
||||||
@@ -79,6 +79,8 @@ create or replace package body pck_auto_import as
|
|||||||
continue;
|
continue;
|
||||||
end if;
|
end if;
|
||||||
|
|
||||||
|
-- Der Marker ist eine Datei mit speziellem Namen, welche vom quarkus automaton in einen entpackten zip-ordner gelegt wird um zu signalisieren, dass alle Dateien des ZIPs erfolgreich in den ordner gelegt wurden.
|
||||||
|
-- Das verhindert die verarbeitung von unvollständig entpackten zips
|
||||||
l_marker_key := l_folder_name || c_marker;
|
l_marker_key := l_folder_name || c_marker;
|
||||||
|
|
||||||
-- Marker prüfen: -20001 = nicht vorhanden → Upload noch nicht abgeschlossen
|
-- Marker prüfen: -20001 = nicht vorhanden → Upload noch nicht abgeschlossen
|
||||||
@@ -201,7 +203,7 @@ create or replace package body pck_auto_import as
|
|||||||
if l_file_cursor%isopen then close l_file_cursor; end if;
|
if l_file_cursor%isopen then close l_file_cursor; end if;
|
||||||
if l_check_cursor%isopen then close l_check_cursor; end if;
|
if l_check_cursor%isopen then close l_check_cursor; end if;
|
||||||
raise;
|
raise;
|
||||||
end p_process_incoming_files;
|
end p_process_incoming_ba_data;
|
||||||
|
|
||||||
end pck_auto_import;
|
end pck_auto_import;
|
||||||
/
|
/
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
create or replace package pck_auto_import as
|
create or replace package pck_auto_import as
|
||||||
|
|
||||||
procedure p_process_incoming_files;
|
procedure p_process_incoming_ba_data;
|
||||||
|
|
||||||
end pck_auto_import;
|
end pck_auto_import;
|
||||||
/
|
/
|
||||||
|
|||||||
Reference in New Issue
Block a user