eperusteetamosaa
.public
Tables
(current)
Columns
Constraints
Relationships
Orphan Tables
Anomalies
Routines
upsert_julkaistu_opetussuunnitelma_data_view(p_data_id bigint, p_ops_id bigint)
Parameters
Name
Type
Mode
p_data_id
bigint
IN
p_ops_id
bigint
IN
Definition
begin insert into julkaistu_opetussuunnitelma_data_view ( id, nimi, koulutustoimija, peruste, "oppilaitosTyyppiKoodiUri", tyyppi, opintokokonaisuudet, paikallistasisaltoa, koulutustyyppi, "voimaantulo", "voimassaoloLoppuu", jotpatyyppi, julkaisukielet ) select d.data->'id', d.data->'nimi', d.data->'koulutustoimija', d.data->'peruste', d.data->>'oppilaitosTyyppiKoodiUri', d.data->>'tyyppi', d.data->'opintokokonaisuudet', exists ( select 1 from jsonb_array_elements(coalesce(d.data->'tutkinnonOsat', '[]'::jsonb)) elem where elem->'tosa'->>'tyyppi' = 'oma' ), coalesce(d.data->>'koulutustyyppi', o.koulutustyyppi), d.data->>'voimaantulo', d.data->>'voimassaoloLoppuu', d.data->>'jotpatyyppi', d.data->'julkaisukielet' from julkaisu_data d inner join opetussuunnitelma o on o.id = p_ops_id where d.id = p_data_id and o.tila != 'POISTETTU' on conflict (id) do update set nimi = excluded.nimi, koulutustoimija = excluded.koulutustoimija, peruste = excluded.peruste, "oppilaitosTyyppiKoodiUri" = excluded."oppilaitosTyyppiKoodiUri", tyyppi = excluded.tyyppi, opintokokonaisuudet = excluded.opintokokonaisuudet, paikallistasisaltoa = excluded.paikallistasisaltoa, koulutustyyppi = excluded.koulutustyyppi, "voimaantulo" = excluded."voimaantulo", "voimassaoloLoppuu" = excluded."voimassaoloLoppuu", jotpatyyppi = excluded.jotpatyyppi, julkaisukielet = excluded.julkaisukielet; end;