Neue Statistik
This commit is contained in:
64
webroot/files/übermittlungsstatistik.sql
Normal file
64
webroot/files/übermittlungsstatistik.sql
Normal file
@@ -0,0 +1,64 @@
|
||||
SET feedback OFF verify OFF heading OFF pagesize 0
|
||||
--SET feedback ON
|
||||
SET linesize 1000;
|
||||
ALTER SESSION SET NLS_DATE_FORMAT = 'DD.MM.YYYY';
|
||||
SET serveroutput ON;
|
||||
|
||||
DECLARE
|
||||
schuljahr CONSTANT VARCHAR2(4) := '2020';
|
||||
eh_typ CONSTANT VARCHAR2(2) := 'US';
|
||||
eh_datum varchar2(200);
|
||||
date_format CONSTANT VARCHAR2(200) := 'yyyy-mm-dd';
|
||||
|
||||
cursor schule IS
|
||||
(
|
||||
select * from
|
||||
(SELECT
|
||||
dsttyp.wl_kurz_bezeichnung as dienststellentyp,
|
||||
nvl(mb.dst_kurz,'N/A') as mb,
|
||||
nvl(reg.dst_kurz,'N/A') as reg,
|
||||
nvl(samt.dst_kurz,'N/A') as samt,
|
||||
sart.wl_kurz_bezeichnung as sart,
|
||||
dst.DST_SCHLUESSEL || ' ' || sst.sst_name_offiziell AS schule,
|
||||
es.ES_ERZ_DATUM as datum,
|
||||
sta.ss_kurz_bezeichnung as status,
|
||||
count(*) over () as tot_rows
|
||||
FROM asd.ASD_ERHEBUNGSSTATUS es
|
||||
JOIN asd.ASD_DIENSTSTELLE dst ON es.ES_DST_DIENSTSTELLE_ID = dst.DST_DIENSTSTELLE_ID
|
||||
join asd.asd_schulstelle sst on sst.sst_schulstellen_id = dst.dst_sst_hauptstelle_id
|
||||
join asd.asd_sd_werteliste dsttyp on dsttyp.wl_werteliste_id = dst.dst_wl_dsttyp_id
|
||||
left outer join asd.asd_dienststelle mb on mb.dst_dienststelle_id = dst.dst_dst_mb_bezirk_id
|
||||
left outer join asd.asd_dienststelle reg on reg.dst_dienststelle_id = dst.dst_dst_regierung_id
|
||||
left outer join asd.asd_dienststelle samt on samt.dst_dienststelle_id = dst.dst_dst_schulamt_id
|
||||
join asd.asd_sd_werteliste sart on sart.wl_werteliste_id = dst.dst_wl_schulart_id
|
||||
JOIN asd.ASD_SD_SCHULJAHR sja ON es.ES_WL_SCHULJAHR_ID = sja.SJA_SCHULJAHR_ID
|
||||
JOIN asd.ASD_SD_WERTELISTE eht ON es.ES_WL_ERHEBUNGSTYP_ID = eht.WL_WERTELISTE_ID
|
||||
JOIN asd.ASD_SD_STATISTIK_STATUS sta ON es.ES_WL_STATUS_ID = sta.SS_STATISTIK_STATUS_ID
|
||||
LEFT OUTER JOIN asd.ASD_SST_AUFTRAG aft ON es.ES_AFT_AUFTRAG_ID = aft.AFT_AUFTRAG_ID
|
||||
LEFT OUTER JOIN asd.ASD_SST_LIEFERUNG lfg ON aft.AFT_LIEFERUNG_ID = lfg.LFG_LIEFERUNG_ID
|
||||
WHERE sja.SJA_SCHLUESSEL = schuljahr
|
||||
AND eht.WL_KUERZEL = eh_typ
|
||||
AND (es.ES_STATUS_AKT_ID IN
|
||||
(select max(es_status_akt_id)
|
||||
from asd.ASD_erhebungsstatus es
|
||||
join asd.ASD_SD_SCHULJAHR sja on es.ES_WL_SCHULJAHR_ID = sja.SJA_SCHULJAHR_ID
|
||||
join asd.ASD_SD_WERTELISTE eht on es.ES_WL_ERHEBUNGSTYP_ID = eht.WL_WERTELISTE_ID
|
||||
where sja.SJA_SCHLUESSEL = schuljahr
|
||||
and eht.WL_KUERZEL = eh_typ
|
||||
group by es_dst_dienststelle_id
|
||||
)
|
||||
)
|
||||
order by dst.DST_SCHLUESSEL asc )
|
||||
);
|
||||
|
||||
begin
|
||||
dbms_output.put('[');
|
||||
for rec in schule loop
|
||||
dbms_output.put('{"Dienststellentyp":"' || rec.dienststellentyp || '","MB_Bezirk":"' || rec.mb || '","Regierung":"' || rec.reg || '","Schulamt":"' || rec.samt || '","Schulart":"' || rec.sart || '","Übermittlungsstatus":"' || rec.status || '","Schule":"' || rec.schule || '","Datum":"' || TO_CHAR(rec.datum,'dd.mm.yyyy HH24:MI') || '"}');
|
||||
if schule%rowcount != rec.tot_rows then
|
||||
dbms_output.put_line(',');
|
||||
end if;
|
||||
end loop;
|
||||
dbms_output.put_line(']');
|
||||
end;
|
||||
/
|
||||
Reference in New Issue
Block a user