From 52d10492f13093724406834608da6480fb590237 Mon Sep 17 00:00:00 2001 From: Oliver Lehmann Date: Wed, 4 Apr 1990 11:56:20 +0000 Subject: [PATCH] ING_DB --- .../ingres/dbs/demo/form/k_lieferung.x | 279 ++++++++++++++++++ WEGA/contrib/ingres/dbs/demo/form/k_teile.x | 276 +++++++++++++++++ 2 files changed, 555 insertions(+) create mode 100644 WEGA/contrib/ingres/dbs/demo/form/k_lieferung.x create mode 100644 WEGA/contrib/ingres/dbs/demo/form/k_teile.x diff --git a/WEGA/contrib/ingres/dbs/demo/form/k_lieferung.x b/WEGA/contrib/ingres/dbs/demo/form/k_lieferung.x new file mode 100644 index 0000000..35b6520 --- /dev/null +++ b/WEGA/contrib/ingres/dbs/demo/form/k_lieferung.x @@ -0,0 +1,279 @@ +## shared dt + +# define NF ((int (*)()) 0) /* null function */ +# define FIELD 22 + + int key = 1; + char *text = " KEIN AKTUELLER SATZ VORHANDEN "; + +/* vars of relation lieferung */ +# define BNUM 4 +## i2 bnum; + +# define TNUM 3 +## i2 tnum; + +# define LNUM 3 +## i2 lnum; + char v_lnum[LNUM + 1]; + +# define LIEFDAT 8 +## char liefdat[21]; + char v_liefdat[LIEFDAT + 1]; + +# define MENGE 4 +## i2 menge; + char v_menge[MENGE + 1]; + + +f_init(frame) +register char *frame; +{ + lnum = 0; + liefdat[0] = 0; + menge = 0; + MMclr_value(frame); + MMvalue(frame); +} + +f_bnum(frame) +register char *frame; +{ + if (bnum < 0 || bnum > 9999) + { + MMerror(" BNUM FALSCH "); + return (0); + } + return (1); +} + +f_tnum(frame) +register char *frame; +{ + if (tnum <= 0 || tnum > 999) + { + MMerror(" TNUM FALSCH "); + return (0); + } + return (1); +} + +f_lnum(frame) +register char *frame; +{ + if (lnum <= 0 || lnum > 999) + { + MMerror(" LNUM FALSCH "); + return (0); + } + return (1); +} + +f_menge(frame) +register char *frame; +{ + if (menge <= 0 || menge > 9999) + { + MMerror(" MENGE FALSCH "); + return (0); + } + return (1); +} + +f_retrieve(frame) +register char *frame; +{ + register int cnt; + + key++; + f_init(frame); + cnt = 0; + +## use (shared lieferung) +## retrieve lieferung $bnum == bnum and $tnum == tnum +## ( +## lnum = $lnum, +## liefdat = $liefdat, +## menge = $menge +## ) +## { + cnt++; + key = 0; + MMset_value(frame, &lnum, 0); + MMset_value(frame, liefdat, 0); + MMset_value(frame, &menge, 0); + MMvalue(frame); +## endretrieve +## } +## commit + + if (!cnt) + MMerror(" SATZ NICHT VORHANDEN "); +} + +f_append(frame) +register char *frame; +{ + register int cnt; + +## use (exclusive lieferung) + cnt = 0; +## retrieve lieferung $bnum == bnum and $tnum == tnum +## { + cnt++; +## endretrieve +## } + if (!cnt) + { + key = 0; +## append lieferung +## ( +## $bnum = bnum, +## $tnum = tnum, +## $lnum = lnum, +## $liefdat = liefdat, +## $menge = menge +## ) +## commit + } + + MMerror(cnt? " SATZ VORHANDEN ": " SATZ ANGEFUEGT "); +} + +f_delete(frame) +register char *frame; +{ + register int cnt; + + if (key) + { + MMerror(text); + return; + } + +## use (exclusive lieferung) +## retrieve lieferung $bnum == bnum and $tnum == tnum +## { + cnt++; +## delete +## endretrieve +## } +## commit + + MMerror(cnt? " SATZ GELOESCHT ": " SATZ NICHT GELOESCHT "); + key++; + f_init(frame); +} + +f_replace(frame) +register char *frame; +{ + register int cnt; + if (key) + { + MMerror(text); + return; + } + +## use (exclusive lieferung) + cnt = 0; +## retrieve lieferung $bnum == bnum and $tnum == tnum +## { + cnt++; +## replace +## ( +## $lnum = lnum, +## $liefdat = liefdat, +## $menge = menge +## ) +## endretrieve +## } +## commit + + MMerror(cnt? " SATZ ERSETZT ": " SATZ NICHT ERSETZT "); +} + +amx(argc, argv) +int argc; +char *argv[]; +{ + register char *form; + char *frame; + extern char *MMalloc(); + + + MMinit_form(1); + + frame = (char *) 0; + form = MMalloc(&frame, 2, 1, 71, (char *) 0); + MMout_field(form, "----------------------------------------------------- L I E F E R U N G"); + + form = MMalloc(&frame, 3, 1, 4, (char *) 0); + MMout_field(form, "BNUM"); + + form = MMalloc(&frame, 3, FIELD, BNUM, (char *) 0); + MMin_field(form, f_bnum, NF, 0); + MMvari2(form, &bnum, "%d"); + + form = MMalloc(&frame, 4, 1, 4, (char *) 0); + MMout_field(form, "TNUM"); + + form = MMalloc(&frame, 4, FIELD, TNUM, (char *) 0); + MMin_field(form, f_tnum, NF, 0); + MMvari2(form, &tnum, "%d"); + + form = MMalloc(&frame, 6, 1, 4, (char *) 0); + MMout_field(form, "LNUM"); + + form = MMalloc(&frame, 6, FIELD, LNUM, v_lnum); + MMval_field(form, NF); + MMvari2(form, &lnum, "%d"); + form = MMalloc(&frame, 6, FIELD, LNUM, v_lnum); + MMin_field(form, f_lnum, NF, 0); + MMvari2(form, &lnum, "%d"); + + form = MMalloc(&frame, 7, 1, 7, (char *) 0); + MMout_field(form, "LIEFDAT"); + + form = MMalloc(&frame, 7, FIELD, LIEFDAT, v_liefdat); + MMval_field(form, NF); + MMvarc(form, liefdat, (char *) 0); + form = MMalloc(&frame, 7, FIELD, LIEFDAT, v_liefdat); + MMin_field(form, NF, NF, 0); + MMvarc(form, liefdat, (char *) 0); + + form = MMalloc(&frame, 8, 1, 5, (char *) 0); + MMout_field(form, "MENGE"); + + form = MMalloc(&frame, 8, FIELD, MENGE, v_menge); + MMval_field(form, NF); + MMvari2(form, &menge, "%d"); + form = MMalloc(&frame, 8, FIELD, MENGE, v_menge); + MMin_field(form, f_menge, NF, 0); + MMvari2(form, &menge, "%d"); + + form = MMalloc(&frame, 24, 2, 4, (char *) 0); + MMout_field(form, "SATZ"); + + form = MMalloc(&frame, 24, 13, 10, (char *) 0); + MMmen_field(form, f_retrieve, NF, " ANZEIGEN "); + + form = MMalloc(&frame, 24, 28, 10, (char *) 0); + MMmen_field(form, f_append, NF, " ANFUEGEN "); + + form = MMalloc(&frame, 24, 43, 10, (char *) 0); + MMmen_field(form, f_delete, NF, " LOESCHEN "); + + form = MMalloc(&frame, 24, 58, 10, (char *) 0); + MMmen_field(form, f_replace, NF, " ERSETZEN "); + +## open lieferung + + MMform(frame); + +## close lieferung + + MMfree(&frame); + MMexit_form(1); + return (0); +} diff --git a/WEGA/contrib/ingres/dbs/demo/form/k_teile.x b/WEGA/contrib/ingres/dbs/demo/form/k_teile.x new file mode 100644 index 0000000..08dc738 --- /dev/null +++ b/WEGA/contrib/ingres/dbs/demo/form/k_teile.x @@ -0,0 +1,276 @@ +## shared dt + +# define NF ((int (*)()) 0) /* null function */ +# define FIELD 22 + + int key = 1; + char *text = " KEIN AKTUELLER SATZ VORHANDEN "; + +/* vars of relation teile */ +# define TNUM 3 +## i2 tnum; + +# define TNAME 20 +## char tname[21]; + char v_tname[TNAME + 1]; + +# define FARBE 8 +## char farbe[9]; + char v_farbe[FARBE + 1]; + +# define GEWICHT 3 +## i2 gewicht; + char v_gewicht[GEWICHT + 1]; + +# define MENGE 3 +## i2 menge; + char v_menge[MENGE + 1]; + + +f_init(frame) +register char *frame; +{ + tname[0] = 0; + farbe[0] = 0; + gewicht = 0; + menge = 0; + MMclr_value(frame); + MMvalue(frame); +} + +f_tnum(frame) +register char *frame; +{ + if (tnum <= 0 || tnum > 999) + { + MMerror(" TNUM FALSCH "); + return (0); + } + return (1); +} + +f_gewicht(frame) +register char *frame; +{ + if (gewicht < 0 || gewicht > 999) + { + MMerror(" GEWICHT FALSCH "); + return (0); + } + return (1); +} + +f_menge(frame) +register char *frame; +{ + if (menge <= 0 || menge > 999) + { + MMerror(" MENGE FALSCH "); + return (0); + } + return (1); +} + +f_retrieve(frame) +register char *frame; +{ + register int cnt; + + key++; + f_init(frame); + cnt = 0; + +## use (shared teile) +## retrieve teile $tnum == tnum +## ( +## tname = $tname, +## farbe = $farbe, +## gewicht = $gewicht, +## menge = $menge +## ) +## { + cnt++; + key = 0; + MMset_value(frame, tname, 0); + MMset_value(frame, farbe, 0); + MMset_value(frame, &gewicht, 0); + MMset_value(frame, &menge, 0); + MMvalue(frame); +## endretrieve +## } +## commit + + if (!cnt) + MMerror(" SATZ NICHT VORHANDEN "); +} + +f_append(frame) +register char *frame; +{ + register int cnt; + +## use (exclusive teile) + cnt = 0; +## retrieve teile $tnum == tnum +## { + cnt++; +## endretrieve +## } + if (!cnt) + { + key = 0; +## append teile +## ( +## $tnum = tnum, +## $tname = tname, +## $farbe = farbe, +## $gewicht = gewicht, +## $menge = menge +## ) +## commit + } + + MMerror(cnt? " SATZ VORHANDEN ": " SATZ ANGEFUEGT "); +} + +f_delete(frame) +register char *frame; +{ + register int cnt; + + if (key) + { + MMerror(text); + return; + } + +## use (exclusive teile) +## retrieve teile $tnum == tnum +## { + cnt++; +## delete +## endretrieve +## } +## commit + + MMerror(cnt? " SATZ GELOESCHT ": " SATZ NICHT GELOESCHT "); + key++; + f_init(frame); +} + +f_replace(frame) +register char *frame; +{ + register int cnt; + if (key) + { + MMerror(text); + return; + } + +## use (exclusive teile) + cnt = 0; +## retrieve teile $tnum == tnum +## { + cnt++; +## replace +## ( +## $tname = tname, +## $farbe = farbe, +## $gewicht = gewicht, +## $menge = menge +## ) +## endretrieve +## } +## commit + + MMerror(cnt? " SATZ ERSETZT ": " SATZ NICHT ERSETZT "); +} + +amx(argc, argv) +int argc; +char *argv[]; +{ + register char *form; + char *frame; + extern char *MMalloc(); + + + MMinit_form(1); + + frame = (char *) 0; + form = MMalloc(&frame, 2, 1, 71, (char *) 0); + MMout_field(form, "------------------------------------------------------------- T E I L E"); + + form = MMalloc(&frame, 3, 1, 4, (char *) 0); + MMout_field(form, "TNUM"); + + form = MMalloc(&frame, 3, FIELD, TNUM, (char *) 0); + MMin_field(form, f_tnum, NF, 0); + MMvari2(form, &tnum, "%d"); + + form = MMalloc(&frame, 5, 1, 5, (char *) 0); + MMout_field(form, "TNAME"); + + form = MMalloc(&frame, 5, FIELD, TNAME, v_tname); + MMval_field(form, NF); + MMvarc(form, tname, (char *) 0); + form = MMalloc(&frame, 5, FIELD, TNAME, v_tname); + MMin_field(form, NF, NF, 0); + MMvarc(form, tname, (char *) 0); + + form = MMalloc(&frame, 6, 1, 5, (char *) 0); + MMout_field(form, "FARBE"); + + form = MMalloc(&frame, 6, FIELD, FARBE, v_farbe); + MMval_field(form, NF); + MMvarc(form, farbe, (char *) 0); + form = MMalloc(&frame, 6, FIELD, FARBE, v_farbe); + MMin_field(form, NF, NF, 0); + MMvarc(form, farbe, (char *) 0); + + form = MMalloc(&frame, 7, 1, 7, (char *) 0); + MMout_field(form, "GEWICHT"); + + form = MMalloc(&frame, 7, FIELD, GEWICHT, v_gewicht); + MMval_field(form, NF); + MMvari2(form, &gewicht, "%d"); + form = MMalloc(&frame, 7, FIELD, GEWICHT, v_gewicht); + MMin_field(form, f_gewicht, NF, 0); + MMvari2(form, &gewicht, "%d"); + + form = MMalloc(&frame, 8, 1, 5, (char *) 0); + MMout_field(form, "MENGE"); + + form = MMalloc(&frame, 8, FIELD, MENGE, v_menge); + MMval_field(form, NF); + MMvari2(form, &menge, "%d"); + form = MMalloc(&frame, 8, FIELD, MENGE, v_menge); + MMin_field(form, f_menge, NF, 0); + MMvari2(form, &menge, "%d"); + + form = MMalloc(&frame, 24, 2, 4, (char *) 0); + MMout_field(form, "SATZ"); + + form = MMalloc(&frame, 24, 13, 10, (char *) 0); + MMmen_field(form, f_retrieve, NF, " ANZEIGEN "); + + form = MMalloc(&frame, 24, 28, 10, (char *) 0); + MMmen_field(form, f_append, NF, " ANFUEGEN "); + + form = MMalloc(&frame, 24, 43, 10, (char *) 0); + MMmen_field(form, f_delete, NF, " LOESCHEN "); + + form = MMalloc(&frame, 24, 58, 10, (char *) 0); + MMmen_field(form, f_replace, NF, " ERSETZEN "); + +## open teile + + MMform(frame); + +## close teile + + MMfree(&frame); + MMexit_form(1); + return (0); +}