summaryrefslogtreecommitdiff
path: root/app/baisy/2.2.1-schulis/src/db reorganisation manager
diff options
context:
space:
mode:
Diffstat (limited to 'app/baisy/2.2.1-schulis/src/db reorganisation manager')
-rw-r--r--app/baisy/2.2.1-schulis/src/db reorganisation manager15
1 files changed, 15 insertions, 0 deletions
diff --git a/app/baisy/2.2.1-schulis/src/db reorganisation manager b/app/baisy/2.2.1-schulis/src/db reorganisation manager
new file mode 100644
index 0000000..c26715d
--- /dev/null
+++ b/app/baisy/2.2.1-schulis/src/db reorganisation manager
@@ -0,0 +1,15 @@
+PACKET dbreorganisationmanagerDEFINES dbreorganisationmanager:INT VAR order;
+DATASPACE VAR ds;TASK VAR ordertask;BOOL VAR reorgok;INT VAR returncode;LET
+ack=0,nak=1;LET reorganisieren=1;LET dbname="EUMELbase.schulis";PROC
+dbreorganisationmanager:setautonom;disablestop;break;REP warteaufauftrag;
+fuehreaus;meldezurueckPER .warteaufauftrag:wait(ds,order,ordertask).fuehreaus
+:reorgok:=TRUE ;IF order=reorganisierenTHEN datenbankreorganisieren(reorgok);
+IF reorgokTHEN returncode:=ackELSE returncode:=nakFI ;FI .meldezurueck:forget
+(ds);ds:=nilspace;send(ordertask,returncode,ds).END PROC
+dbreorganisationmanager;PROC datenbankreorganisieren(BOOL VAR ok):
+commanddialogue(FALSE );forget(all);commanddialogue(TRUE );ok:=TRUE ;postfix(
+"");fetchdb(dbname);BOOL VAR b:=dbopen(dbname);reorgdb;IF iserrorTHEN ok:=
+FALSE ;clearerrorFI ;IF okTHEN restoredb(dbname)FI ;commanddialogue(FALSE );
+forget(all);commanddialogue(TRUE );END PROC datenbankreorganisierenEND
+PACKET dbreorganisationmanager
+