/* Lösung zu A11 in MiniPHP von FA */ VAR ersatzlehrer, sql : STRING; i, k, l, anzahlkursstunden, anzahllehrer : INTEGER; // und strukturierte Variable für die Ergebnisse BEGIN db := opendb ('stundenplan') sql := 'SELECT lehr.lang FROM `llg-lehrer`as lehr' + ' inner join `llg-fach` as fach on (lehr.fach1 = fach.fid) or (lehr.fach2 = fach.fid) or (lehr.fach3 = fach.fid)' + ' WHERE (left(fach.kurz, 2)="BI") or (left(fach.kurz, 2)="BI") or (left(fach.kurz, 2)="BI" '; lehrer := query(sql); anzahllehrer := numRows (lehrer); sql := ' SELECT stupl.tagstd_id, from `llg-stuplan` as stupl' + ' inner join `llg-kurs` as kurs on stupl.kurs_id = kurs.kuid' + ' where left(kurs.tmp_kurs, 3) = "Bi2" '; kursstunden := query(sql); anzahlkursstunden := numRows (kursstunden) i := 1; WHILE (ersatzlehrer = '' ) AND (i < anzahllehrer) DO BEGIN sql := 'SELECT stupl.tagstd_id from `llg-stuplan` as stupl' + ' inner join `llg-lehrer` as lehrer on stupl.lehrer_id = lehrer.lid ' + ' where left(lehrer.kurz, 2) = left(result (lehrer, i, llg-lehrer.kurz), 2) ' ; stunden := query (sql); FOR k := 1 TO anzahlkursstunden do FOR l := 1 TO numRows (stunden) do BEGIN IF result (stunden, l, llg-stupl.tagstd_id) <> result (kurstunden, kl, llg-stupl.tagstd_id) THEN ersatzlehrer := result (lehrer, i, llg-lehrer.kurz) ELSE ersatzlehrer := '' END; INC (i); END; END; If erstzlehrer='' then zeige ('kein Ersatzlehrer verfügbar') ELSE zeige ('Der Ersatzlehrer ist ersatzlehrer')