From 33861282858cf493bbf105f62f0d8b87923a5a85 Mon Sep 17 00:00:00 2001
From: Mark Prins <1165786+mprins@users.noreply.github.com>
Date: Tue, 3 Dec 2024 11:06:47 +0100
Subject: [PATCH] [BRMO-389] Verwijder BRK-1 (materialized) views
---
.build/ci/oracle-execute-upgrade-extras.sh | 17 +-
.build/ci/pgsql-execute-upgrade-extras.sh | 13 +-
brmo-dist/assembly.xml | 7 +
datamodel/datamodel.xsl | 2 +-
.../extra_scripts/oracle/207_brk_views.sql | 862 +-----------------
.../oracle/301_drop_brk1_tabellen.sql | 48 +
.../postgresql/207_brk_views.sql | 854 +----------------
.../postgresql/301_drop_brk1_tabellen.sql | 18 +
datamodel/generated_scripts/datamodel.xml | 2 +-
.../brmo/datamodel/DatabaseUpgradeTest.java | 17 +-
.../brmo/datamodel/MaterializedViewsTest.java | 8 -
.../4.0.0-5.0.0/oracle/rsgb.sql | 1 +
.../4.0.0-5.0.0/postgresql/rsgb.sql | 3 +-
13 files changed, 94 insertions(+), 1758 deletions(-)
create mode 100644 datamodel/extra_scripts/oracle/301_drop_brk1_tabellen.sql
create mode 100644 datamodel/extra_scripts/postgresql/301_drop_brk1_tabellen.sql
diff --git a/.build/ci/oracle-execute-upgrade-extras.sh b/.build/ci/oracle-execute-upgrade-extras.sh
index 7bfc69894a..c0e4e9cd15 100755
--- a/.build/ci/oracle-execute-upgrade-extras.sh
+++ b/.build/ci/oracle-execute-upgrade-extras.sh
@@ -10,18 +10,11 @@ export SQLPATH=./.build/ci
if [ $CURSNAPSHOT = "5.0.0-SNAPSHOT" ] && [ $1 = "rsgb" ]
then
- continue # nog geen extra scripts voor rsgb
-# docker exec -i oracle_brmo sqlplus -l -S jenkins_$1/jenkins_$1@//localhost:1521/FREE < ./datamodel/utility_scripts/oracle/202_delete_bag_brondocumenten.sql
+# docker exec -i oracle_brmo sqlplus -l -S jenkins_$1/jenkins_$1@//localhost:1521/FREE < ./datamodel/utility_scripts/oracle/205_delete_brk_brondocumenten.sql
+ docker exec -i oracle_brmo sqlplus -l -S jenkins_$1/jenkins_$1@//localhost:1521/FREE < ./datamodel/extra_scripts/oracle/301_drop_brk1_tabellen.sql
fi
-if [ $CURSNAPSHOT = "5.0.0-SNAPSHOT" ] && [ $1 = "staging" ]
-then
- continue # nog geen extra scripts voor staging
+#if [ $CURSNAPSHOT = "5.0.0-SNAPSHOT" ] && [ $1 = "staging" ]
+#then
# docker exec -i oracle_brmo sqlplus -l -S jenkins_$1/jenkins_$1@//localhost:1521/FREE < ./datamodel/utility_scripts/oracle/1000_delete_bag_berichten.sql
-fi
-
-if [ $CURSNAPSHOT = "5.0.0-SNAPSHOT" ] && [ $1 = "topnl" ]
-then
- continue # nog geen extra scripts voor topnl
-# docker exec -i oracle_brmo sqlplus -l -S sys/oracle@//localhost:1521/XE < ./datamodel/upgrade_scripts/3.0.2-4.0.0/oracle/topnl.sql
-fi
\ No newline at end of file
+#fi
diff --git a/.build/ci/pgsql-execute-upgrade-extras.sh b/.build/ci/pgsql-execute-upgrade-extras.sh
index 6d2a76a764..8d53a97f16 100755
--- a/.build/ci/pgsql-execute-upgrade-extras.sh
+++ b/.build/ci/pgsql-execute-upgrade-extras.sh
@@ -7,14 +7,11 @@ echo "Verwerk extra upgrade scripts voor: " $1
if [ $CURSNAPSHOT = "5.0.0-SNAPSHOT" ] && [ $1 = "rsgb" ]
then
- continue # nog geen extra scripts voor rsgb
-# psql -U postgres -h localhost -d $1 -f ./datamodel/utility_scripts/postgresql/202_delete_bag_brondocumenten.sql
-# psql -U postgres -h localhost -d $1 -f ./datamodel/extra_scripts/postgresql/300_drop_bag_tabellen.sql
+# psql -U postgres -h localhost -d $1 -f ./datamodel/utility_scripts/postgresql/205_delete_brk_brondocumenten.sql
+ psql -U postgres -h localhost -d $1 -f ./datamodel/extra_scripts/postgresql/301_drop_brk1_tabellen.sql
fi
-if [ $CURSNAPSHOT = "5.0.0-SNAPSHOT" ] && [ $1 = "staging" ]
-then
- continue # nog geen extra scripts voor staging
+#if [ $CURSNAPSHOT = "5.0.0-SNAPSHOT" ] && [ $1 = "staging" ]
+#then
# docker exec -i oracle_brmo sqlplus -l -S jenkins_$1/jenkins_$1@//localhost:1521/XE < ./datamodel/utility_scripts/postgresql/1000_delete_bag_berichten.sql
-fi
-
+#fi
diff --git a/brmo-dist/assembly.xml b/brmo-dist/assembly.xml
index 11ec97c149..2632edd5c0 100644
--- a/brmo-dist/assembly.xml
+++ b/brmo-dist/assembly.xml
@@ -152,6 +152,13 @@
**/300_*.sql
+
+ ../${project.basedir}/datamodel/extra_scripts/
+ db/upgrade_scripts/4.0.0-5.0.0
+
+ **/301_*.sql
+
+
../${project.basedir}/datamodel/extra_scripts/
db/utility_scripts/3.0.2-4.0.0
diff --git a/datamodel/datamodel.xsl b/datamodel/datamodel.xsl
index e4f91d392f..1dcc039d64 100644
--- a/datamodel/datamodel.xsl
+++ b/datamodel/datamodel.xsl
@@ -49,8 +49,8 @@
-
+
diff --git a/datamodel/extra_scripts/oracle/207_brk_views.sql b/datamodel/extra_scripts/oracle/207_brk_views.sql
index 89a0e6bc55..16348998bd 100644
--- a/datamodel/extra_scripts/oracle/207_brk_views.sql
+++ b/datamodel/extra_scripts/oracle/207_brk_views.sql
@@ -1,861 +1 @@
-/*
-Views for visualizing the BRK data.
-versie 2.2
-16-5-2019
-*/
-CREATE MATERIALIZED VIEW mb_subject (
- objectid,
- subject_identif,
- soort,
- geslachtsnaam,
- voorvoegsel,
- voornamen,
- aand_naamgebruik,
- geslachtsaand,
- naam,
- woonadres,
- geboortedatum,
- geboorteplaats,
- overlijdensdatum,
- bsn,
- organisatie_naam,
- rechtsvorm,
- statutaire_zetel,
- rsin,
- kvk_nummer
-)
- BUILD DEFERRED
- REFRESH
- ON DEMAND
-AS
- SELECT
- CAST(ROWNUM AS INTEGER) AS objectid,
- s.identif AS subject_identif,
- s.clazz AS soort,
- np.nm_geslachtsnaam AS geslachtsnaam,
- np.nm_voorvoegsel_geslachtsnaam AS voorvoegsel,
- np.nm_voornamen AS voornamen,
- np.aand_naamgebruik,
- CASE
- WHEN ( ( np.geslachtsaand ) = '1' ) THEN CAST('M' AS CHARACTER VARYING(1) )
- WHEN ( ( np.geslachtsaand ) = '2' ) THEN CAST('V' AS CHARACTER VARYING(1) )
- WHEN ( ( np.geslachtsaand ) = '3' ) THEN CAST('X' AS CHARACTER VARYING(1) )
- ELSE np.geslachtsaand
- END AS geslachtsaand,
- CASE
- WHEN ( nnp.naam IS NOT NULL ) THEN CAST(nnp.naam AS CHARACTER VARYING(1000) )
- ELSE CAST( REPLACE(
- coalesce(np.nm_voornamen, CAST('' AS CHARACTER VARYING(1) ) ) || ' '
- || coalesce(np.nm_voorvoegsel_geslachtsnaam, CAST('' AS CHARACTER VARYING(1) ) ) || ' '
- || coalesce(np.nm_geslachtsnaam, CAST('' AS CHARACTER VARYING(1) ) )
- ,' ',' ') AS CHARACTER VARYING(1000)
- )
- END AS naam,
- inp.va_loc_beschrijving AS woonadres,
- CASE
- WHEN ( ( ( s.clazz ) = 'INGESCHREVEN NATUURLIJK PERSOON' )
- AND length(inp.gb_geboortedatum) = 8 ) THEN CAST(substr(TO_CHAR(inp.gb_geboortedatum,'99999999'),2,4)
- || '-'
- || substr(TO_CHAR(inp.gb_geboortedatum,'99999999'),6,2)
- || '-'
- || substr(TO_CHAR(inp.gb_geboortedatum,'99999999'),8,2) AS
- VARCHAR(10) )
- WHEN ( ( ( s.clazz ) = 'ANDER NATUURLIJK PERSOON' )
- AND length(anp.geboortedatum) = 8 ) THEN CAST(substr(TO_CHAR(anp.geboortedatum,'99999999'),2,4)
- || '-'
- || substr(TO_CHAR(anp.geboortedatum,'99999999'),6,2)
- || '-'
- || substr(TO_CHAR(anp.geboortedatum,'99999999'),8,2) AS VARCHAR
- (10) )
- WHEN ( ( ( s.clazz ) = 'INGESCHREVEN NATUURLIJK PERSOON' )
- AND length(inp.gb_geboortedatum) = 5 ) THEN CAST('0001-01-01' AS VARCHAR(10) )
- WHEN ( ( ( s.clazz ) = 'ANDER NATUURLIJK PERSOON' )
- AND length(anp.geboortedatum) = 5 ) THEN CAST('0001-01-01' AS VARCHAR(10) )
- ELSE CAST(NULL AS VARCHAR(10) )
- END AS geboortedatum,
- inp.gb_geboorteplaats AS geboorteplaats,
- CASE
- WHEN ( ( ( s.clazz ) = 'INGESCHREVEN NATUURLIJK PERSOON' )
- AND length(inp.ol_overlijdensdatum) = 8 ) THEN CAST(substr(TO_CHAR(inp.ol_overlijdensdatum,'99999999'),2,4)
- || '-'
- || substr(TO_CHAR(inp.ol_overlijdensdatum,'99999999')
- ,6,2)
- || '-'
- || substr(TO_CHAR(inp.ol_overlijdensdatum,'99999999')
- ,8,2) AS VARCHAR(10) )
- WHEN ( ( ( s.clazz ) = 'ANDER NATUURLIJK PERSOON' )
- AND length(anp.overlijdensdatum) = 8 ) THEN CAST(substr(TO_CHAR(anp.overlijdensdatum,'99999999'),2,4)
- || '-'
- || substr(TO_CHAR(anp.overlijdensdatum,'99999999'),6,2)
- || '-'
- || substr(TO_CHAR(anp.overlijdensdatum,'99999999'),8,2) AS
- VARCHAR(10) )
- WHEN ( ( ( s.clazz ) = 'INGESCHREVEN NATUURLIJK PERSOON' )
- AND length(inp.ol_overlijdensdatum) = 5 ) THEN CAST('0001-01-01' AS VARCHAR(10) )
- WHEN ( ( ( s.clazz ) = 'ANDER NATUURLIJK PERSOON' )
- AND length(anp.overlijdensdatum) = 5 ) THEN CAST('0001-01-01' AS VARCHAR(10) )
- ELSE CAST(NULL AS VARCHAR(10) )
- END AS overlijdensdatum,
- inp.bsn,
- nnp.naam AS organisatie_naam,
- innp.rechtsvorm,
- innp.statutaire_zetel,
- innp.rsin,
- s.kvk_nummer
- FROM
- ( ( ( ( ( subject s
- LEFT JOIN nat_prs np ON ( ( ( s.identif ) = ( np.sc_identif ) ) ) ) left
- JOIN ingeschr_nat_prs inp ON ( ( ( inp.sc_identif ) = ( np.sc_identif ) ) ) ) left
- JOIN ander_nat_prs anp ON ( ( ( anp.sc_identif ) = ( np.sc_identif ) ) ) ) left
- JOIN niet_nat_prs nnp ON ( ( ( nnp.sc_identif ) = ( s.identif ) ) ) ) left
- JOIN ingeschr_niet_nat_prs innp ON ( ( ( innp.sc_identif ) = ( nnp.sc_identif ) ) ) );
-
-CREATE UNIQUE INDEX mb_subject_objectid ON mb_subject ( objectid ASC );
-CREATE INDEX mb_subject_identif ON mb_subject ( subject_identif ASC );
-
-COMMENT ON MATERIALIZED VIEW mb_subject
-IS 'commentaar view mb_subject:
-samenvoeging alle soorten subjecten: natuurlijk en niet-natuurlijk.
-beschikbare kolommen:
-* objectid: uniek id bruikbaar voor geoserver/arcgis,
-* subject_identif: natuurlijke id van subject
-* soort: soort subject zoals natuurlijk, niet-natuurlijk enz.
-* geslachtsnaam: -
-* voorvoegsel: -
-* voornamen: -
-* aand_naamgebruik:
-- E (= Eigen geslachtsnaam)
-- N (= Geslachtsnaam echtgenoot/geregistreerd partner na eigen geslachtsnaam)
-- P (= Geslachtsnaam echtgenoot/geregistreerd partner)
-- V (= Geslachtsnaam evhtgenoot/geregistreerd partner voor eigen geslachtsnaam)
-* geslachtsaand: M/V
-* naam: samengestelde naam bruikbaar voor natuurlijke en niet-natuurlijke subjecten
-* woonadres: meegeleverd adres buiten BAG koppeling om
-* geboortedatum: -
-* geboorteplaats: -
-* overlijdensdatum: -
-* bsn: -
-* organisatie_naam: naam niet natuurlijk subject
-* rechtsvorm: -
-* statutaire_zetel: -
-* rsin: -
-* kvk_nummer: -';
-
-CREATE MATERIALIZED VIEW mb_avg_subject (
- objectid,
- subject_identif,
- soort,
- geslachtsnaam,
- voorvoegsel,
- voornamen,
- aand_naamgebruik,
- geslachtsaand,
- naam,
- woonadres,
- geboortedatum,
- geboorteplaats,
- overlijdensdatum,
- bsn,
- organisatie_naam,
- rechtsvorm,
- statutaire_zetel,
- rsin,
- kvk_nummer
-)
- BUILD DEFERRED
- REFRESH
- ON DEMAND
-AS
- SELECT
- s.objectid,
- s.subject_identif AS subject_identif,
- s.soort,
- CAST(NULL AS CHARACTER VARYING(1) ) AS geslachtsnaam,
- CAST(NULL AS CHARACTER VARYING(1) ) AS voorvoegsel,
- CAST(NULL AS CHARACTER VARYING(1) ) AS voornamen,
- CAST(NULL AS CHARACTER VARYING(1) ) AS aand_naamgebruik,
- CAST(NULL AS CHARACTER VARYING(1) ) AS geslachtsaand,
- s.organisatie_naam AS naam,
- CAST(NULL AS CHARACTER VARYING(1) ) AS woonadres,
- CAST(NULL AS CHARACTER VARYING(1) ) AS geboortedatum,
- CAST(NULL AS CHARACTER VARYING(1) ) AS geboorteplaats,
- CAST(NULL AS CHARACTER VARYING(1) ) AS overlijdensdatum,
- CAST(NULL AS CHARACTER VARYING(1) ) AS bsn,
- s.organisatie_naam,
- s.rechtsvorm,
- s.statutaire_zetel,
- s.rsin,
- s.kvk_nummer
- FROM
- mb_subject s;
-
-CREATE UNIQUE INDEX mb_avg_subject_objectid ON mb_avg_subject ( objectid ASC );
-CREATE INDEX mb_avg_subject_identif ON mb_avg_subject ( subject_identif ASC );
-
-COMMENT ON MATERIALIZED VIEW mb_avg_subject
-IS 'commentaar view mb_avg_subject:
-volledig subject (natuurlijk en niet natuurlijk) geschoond voor avg
-beschikbare kolommen:
-* objectid: uniek id bruikbaar voor geoserver/arcgis,
-* subject_identif: natuurlijke id van subject
-* soort: soort subject zoals natuurlijk, niet-natuurlijk enz.
-* geslachtsnaam: NULL (avg)
-* voorvoegsel: NULL (avg)
-* voornamen: NULL (avg)
-* aand_naamgebruik: NULL (avg)
-* geslachtsaand:NULL (avg)
-* naam: gelijk aan organisatie_naam
-* woonadres: NULL (avg)
-* geboortedatum: NULL (avg)
-* geboorteplaats: NULL (avg)
-* overlijdensdatum: NULL (avg)
-* bsn: NULL (avg)
-* organisatie_naam: naam niet natuurlijk subject
-* rechtsvorm: -
-* statutaire_zetel: -
-* rsin: -
-* kvk_nummer: -';
-
-CREATE OR REPLACE VIEW vb_util_app_re_splitsing AS
- SELECT
- b1.ref_id AS child_identif,
- MIN(b2.ref_id) AS parent_identif
- FROM
- brondocument b1
- JOIN brondocument b2 ON b2.identificatie = b1.identificatie
- WHERE
- ( b2.omschrijving = 'betrokkenBij Ondersplitsing'
- OR b2.omschrijving = 'betrokkenBij HoofdSplitsing'
- OR b2.omschrijving = 'betrokkenBij SplitsingAfkoopErfpacht')
- AND ( b1.omschrijving = 'ontstaanUit Ondersplitsing'
- OR b1.omschrijving = 'ontstaanUit HoofdSplitsing'
- OR b1.omschrijving = 'ontstaanUit SplitsingAfkoopErfpacht')
- GROUP BY
- b1.ref_id;
-
-CREATE OR REPLACE VIEW vb_util_app_re_parent_3 AS
- SELECT
- CAST(re.sc_kad_identif AS CHARACTER VARYING(50) ) AS app_re_identif,
- MIN(sp.parent_identif) AS parent_identif
- FROM
- app_re re
- LEFT JOIN vb_util_app_re_splitsing sp ON re.sc_kad_identif = CAST (sp.child_identif AS numeric)
- GROUP BY
- CAST(re.sc_kad_identif AS CHARACTER VARYING(50) );
-
-CREATE OR REPLACE VIEW vb_util_app_re_parent_2 AS
- SELECT
- u1.app_re_identif,
- CASE
- WHEN sp.parent_identif IS NULL THEN u1.parent_identif
- ELSE sp.parent_identif
- END AS parent_identif
- FROM
- vb_util_app_re_parent_3 u1
- LEFT JOIN vb_util_app_re_splitsing sp ON u1.parent_identif = sp.child_identif;
-
-CREATE OR REPLACE VIEW vb_util_app_re_parent AS
- SELECT
- u2.app_re_identif,
- CASE
- WHEN sp.parent_identif IS NULL THEN u2.parent_identif
- ELSE sp.parent_identif
- END AS parent_identif
- FROM
- vb_util_app_re_parent_2 u2
- LEFT JOIN vb_util_app_re_splitsing sp ON u2.parent_identif = sp.child_identif;
-
-CREATE MATERIALIZED VIEW mb_util_app_re_kad_perceel
- BUILD DEFERRED
- REFRESH
- ON DEMAND
-AS
- SELECT
- u1.app_re_identif,
- kp.sc_kad_identif AS perceel_identif
- FROM
- vb_util_app_re_parent u1
- JOIN kad_perceel kp ON cast( u1.parent_identif as numeric) = kp.sc_kad_identif
- GROUP BY
- u1.app_re_identif,
- kp.sc_kad_identif;
-
-CREATE INDEX mb_util_app_re_kad_perceel_id ON mb_util_app_re_kad_perceel ( app_re_identif );
-
-COMMENT ON MATERIALIZED VIEW mb_util_app_re_kad_perceel
-IS 'commentaar view mb_util_app_re_kad_perceel:
-utility view, niet bedoeld voor direct gebruik, met lijst van appartementsrechten met bijbehorend grondperceel
-beschikbare kolommen:
-* app_re_identif: natuurlijk id van appartementsrecht,
-* perceel_identif: natuurlijk id van grondperceel';
-
-
-CREATE MATERIALIZED VIEW mb_percelenkaart
- BUILD DEFERRED
- REFRESH
- ON DEMAND
-AS
- SELECT
- CAST(ROWNUM AS INTEGER) AS objectid,
- qry.identif AS koz_identif,
- koz.dat_beg_geldh AS begin_geldigheid,
- TO_DATE(koz.dat_beg_geldh,'YYYY-MM-DD') AS begin_geldigheid_datum,
- qry.type,
- ( coalesce(qry.ka_sectie,'')
- || ' '
- || coalesce(qry.ka_perceelnummer,'') ) AS aanduiding,
- ( coalesce(qry.ka_kad_gemeentecode,'')
- || ' '
- || coalesce(qry.ka_sectie,'')
- || ' '
- || coalesce(qry.ka_perceelnummer,'')
- || ' ' ) AS aanduiding2,
- qry.ka_sectie AS sectie,
- qry.ka_perceelnummer AS perceelnummer,
- qry.ka_kad_gemeentecode AS gemeentecode,
- qry.aand_soort_grootte,
- CAST(qry.grootte_perceel AS INTEGER) AS grootte_perceel,
- CASE
- WHEN qry.begrenzing_perceel.get_gtype() IS NOT NULL THEN sdo_geom.sdo_area(qry.begrenzing_perceel,0.1)
- ELSE NULL
- END AS oppervlakte_geom,
- b.datum AS verkoop_datum,
- koz.cu_aard_cultuur_onbebouwd AS aard_cultuur_onbebouwd,
- CAST(koz.ks_bedrag AS INTEGER) AS bedrag,
- koz.ks_koopjaar AS koopjaar,
- koz.ks_meer_onroerendgoed AS meer_onroerendgoed,
- koz.ks_valutasoort AS valutasoort,
- aant.aantekeningen AS aantekeningen,
- CASE
- WHEN qry.begrenzing_perceel.get_gtype() IS NOT NULL THEN sdo_cs.transform(sdo_geom.sdo_centroid(qry.begrenzing_perceel
- ,0.1),4326).sdo_point.x
- ELSE NULL
- END AS lon,
- CASE
- WHEN qry.begrenzing_perceel.get_gtype() IS NOT NULL THEN sdo_cs.transform(sdo_geom.sdo_centroid(qry.begrenzing_perceel
- ,0.1),4326).sdo_point.y
- END AS lat,
- qry.begrenzing_perceel
- FROM
- (
- SELECT
- p.sc_kad_identif AS identif,
- 'perceel' AS type,
- p.ka_sectie,
- p.ka_perceelnummer,
- p.ka_kad_gemeentecode,
- p.aand_soort_grootte,
- p.grootte_perceel,
- p.begrenzing_perceel
- FROM
- kad_perceel p
- ) qry
- JOIN kad_onrrnd_zk koz ON koz.kad_identif = qry.identif
- LEFT JOIN (
- SELECT
- brondocument.ref_id,
- MAX(brondocument.datum) AS datum
- FROM
- brondocument
- WHERE
- brondocument.omschrijving = 'Akte van Koop en Verkoop'
- GROUP BY
- brondocument.ref_id
- ) b ON koz.kad_identif = b.ref_id
- LEFT JOIN (
- SELECT
- fk_4koz_kad_identif,
- LISTAGG('id: '
- || coalesce(koza.kadaster_identif_aantek,'')
- || ', '
- || 'aard: '
- || coalesce(koza.aard_aantek_kad_obj,'')
- || ', '
- || 'begin: '
- || coalesce(koza.begindatum_aantek_kad_obj,'')
- || ', '
- || 'beschrijving: '
- || coalesce(koza.beschrijving_aantek_kad_obj,'')
- || ', '
- || 'eind: '
- || coalesce(koza.eindd_aantek_kad_obj,'')
- || ', '
- || 'koz-id: '
- || coalesce(koza.fk_4koz_kad_identif,0)
- || ', '
- || 'subject-id: '
- || coalesce(koza.fk_5pes_sc_identif,'')
- || '; ',' & ' ON OVERFLOW TRUNCATE WITH COUNT) WITHIN GROUP(
- ORDER BY
- koza.fk_4koz_kad_identif
- ) AS aantekeningen
- FROM
- kad_onrrnd_zk_aantek koza
- GROUP BY
- fk_4koz_kad_identif
- ) aant ON koz.kad_identif = aant.fk_4koz_kad_identif;
-
-CREATE UNIQUE INDEX mb_percelenkaart_objectid ON mb_percelenkaart ( objectid ASC );
-CREATE INDEX mb_percelenkaart_identif ON mb_percelenkaart ( koz_identif ASC );
-INSERT INTO user_sdo_geom_metadata VALUES ( 'MB_PERCELENKAART', 'BEGRENZING_PERCEEL', mdsys.sdo_dim_array(mdsys.sdo_dim_element('X',12000,280000,.1),mdsys.sdo_dim_element('Y',304000,620000,.1) ), 28992);
-CREATE INDEX mb_percelenkaart_bgrgpidx ON mb_percelenkaart ( begrenzing_perceel ) INDEXTYPE IS mdsys.spatial_index;
-
-COMMENT ON MATERIALIZED VIEW mb_percelenkaart
-IS 'commentaar view mb_percelenkaart:
-alle kadastrale onroerende zaken (perceel en appartementsrecht) met opgezochte verkoop datum, objectid voor geoserver/arcgis
-beschikbare kolommen:
-* objectid: uniek id bruikbaar voor geoserver/arcgis,
-* koz_identif: natuurlijke id van perceel of appartementsrecht
-* begin_geldigheid: datum wanneer dit object geldig geworden is (ontstaat of bijgewerkt),
-* begin_geldigheid_datum: datum wanneer dit object geldig geworden is (ontstaat of bijgewerkt),
-* type: perceel of appartement,
-* aanduiding: sectie perceelnummer,
-* aanduiding2: kadgem sectie perceelnummer appartementsindex,
-* sectie: -,
-* perceelnummer: -,
-* gemeentecode: -,
-* aand_soort_grootte: -,
-* grootte_perceel: -,
-* oppervlakte_geom: oppervlakte berekend uit geometrie, hoort gelijk te zijn aan grootte_perceel,
-* verkoop_datum: laatste datum gevonden akten van verkoop,
-* aard_cultuur_onbebouwd: -,
-* bedrag: -,
-* koopjaar: -,
-* meer_onroerendgoed: -,
-* valutasoort: -,
-* aantekeningen: -,
-* lon: coordinaat als WSG84,
-* lon: coordinaat als WSG84,
-* begrenzing_perceel: perceelvlak';
-
-CREATE OR REPLACE VIEW vb_util_zk_recht (
- zr_identif,
- ingangsdatum_recht,
- aandeel,
- ar_teller,
- ar_noemer,
- subject_identif,
- koz_identif,
- indic_betrokken_in_splitsing,
- omschr_aard_verkregenr_recht,
- fk_3avr_aand,
- aantekeningen
-) AS
- SELECT
- zr.kadaster_identif AS zr_identif,
- zr.ingangsdatum_recht,
- ( CAST( (coalesce(CAST(zr.ar_teller AS CHARACTER VARYING(7) ), ('0') )
- || ('/')
- || coalesce(CAST(zr.ar_noemer AS CHARACTER VARYING(7) ), ('0') ) ) AS CHARACTER VARYING(20) ) ) AS aandeel,
- zr.ar_teller,
- zr.ar_noemer,
- zr.fk_8pes_sc_identif AS subject_identif,
- zr.fk_7koz_kad_identif AS koz_identif,
- zr.indic_betrokken_in_splitsing,
- avr.omschr_aard_verkregenr_recht,
- zr.fk_3avr_aand,
- (
- SELECT
- LISTAGG( ('id: '
- || coalesce(zra.kadaster_identif_aantek_recht,'')
- || ', '
- || 'aard: '
- || coalesce(zra.aard_aantek_recht,'')
- || ', '
- || 'begin: '
- || coalesce(zra.begindatum_aantek_recht,'')
- || ', '
- || 'beschrijving: '
- || coalesce(zra.beschrijving_aantek_recht,'')
- || ', '
- || 'eind: '
- || coalesce(zra.eindd_aantek_recht,'')
- || ', '
- || 'zkr-id: '
- || coalesce(zra.fk_5zkr_kadaster_identif,'')
- || ', '
- || 'subject-id: '
- || coalesce(zra.fk_6pes_sc_identif,'')
- || '; '),'&& ' ON OVERFLOW TRUNCATE WITH COUNT) WITHIN GROUP(
- ORDER BY
- zra.fk_5zkr_kadaster_identif
- ) AS aantekeningen
- FROM
- zak_recht_aantek zra
- WHERE
- zra.fk_5zkr_kadaster_identif = zr.kadaster_identif
- ) AS aantekeningen
- FROM
- zak_recht zr
- JOIN aard_verkregen_recht avr ON zr.fk_3avr_aand = avr.aand;
-
-COMMENT ON TABLE vb_util_zk_recht
-IS 'commentaar view vb_util_zk_recht:
-zakelijk recht met opgezocht aard recht en berekend aandeel
-beschikbare kolommen:
-* zr_identif: natuurlijke id van zakelijk recht
-* ingangsdatum_recht: -
-* aandeel: samenvoeging van teller en noemer (1/2),
-* ar_teller: teller van aandeel,
-* ar_noemer: noemer van aandeel,
-* subject_identif: natuurlijk id van subject (natuurlijk of niet natuurlijk) welke rechthebbende is,
-* koz_identif: natuurlijk id van kadastrale onroerende zaak (perceel of appratementsrecht) dat gekoppeld is,
-* indic_betrokken_in_splitsing: -,
-* omschr_aard_verkregen_recht: tekstuele omschrijving aard recht,
-* fk_3avr_aand: code aard recht,
-* aantekeningen: samenvoeging van alle aantekening op dit recht';
-
-CREATE MATERIALIZED VIEW mb_zr_rechth
- (
- objectid,
- zr_identif,
- ingangsdatum_recht,
- subject_identif,
- koz_identif,
- aandeel,
- omschr_aard_verkregenr_recht,
- indic_betrokken_in_splitsing,
- aantekeningen,
- soort,
- geslachtsnaam,
- voorvoegsel,
- voornamen,
- aand_naamgebruik,
- geslachtsaand,
- naam,
- woonadres,
- geboortedatum,
- geboorteplaats,
- overlijdensdatum,
- bsn,
- organisatie_naam,
- rechtsvorm,
- statutaire_zetel,
- rsin,
- kvk_nummer
- )
-BUILD DEFERRED
-REFRESH ON DEMAND
-AS
-SELECT
- CAST(ROWNUM AS INTEGER) AS objectid,
- uzr.zr_identif as zr_identif,
- uzr.ingangsdatum_recht,
- uzr.subject_identif,
- uzr.koz_identif,
- uzr.aandeel,
- uzr.omschr_aard_verkregenr_recht,
- uzr.indic_betrokken_in_splitsing,
- uzr.aantekeningen,
- vs.soort,
- vs.geslachtsnaam,
- vs.voorvoegsel,
- vs.voornamen,
- vs.aand_naamgebruik,
- vs.geslachtsaand,
- vs.naam,
- vs.woonadres,
- vs.geboortedatum,
- vs.geboorteplaats,
- vs.overlijdensdatum,
- vs.bsn,
- vs.organisatie_naam,
- vs.rechtsvorm,
- vs.statutaire_zetel,
- vs.rsin,
- vs.kvk_nummer
-FROM
- vb_util_zk_recht uzr
-JOIN
- mb_subject vs
-ON
- uzr.subject_identif = vs.subject_identif;
-
-CREATE UNIQUE INDEX MB_ZR_RECHTH_OBJECTID ON MB_ZR_RECHTH(OBJECTID ASC);
-CREATE INDEX MB_ZR_RECHTH_IDENTIF ON MB_ZR_RECHTH(ZR_IDENTIF ASC);
-
-COMMENT ON MATERIALIZED VIEW mb_zr_rechth
-IS 'commentaar view mb_zr_rechth:
-alle zakelijke rechten met rechthebbenden en referentie naar kadastraal onroerende zaak (perceel of appartementsrecht)
-beschikbare kolommen:
-* objectid: uniek id bruikbaar voor geoserver/arcgis,
-* zr_identif: natuurlijke id van zakelijk recht,
-* ingangsdatum_recht: -
-* subject_identif: natuurlijk id van subject (natuurlijk of niet natuurlijk) welke rechthebbende is,
-* koz_identif: natuurlijk id van kadastrale onroerende zaak (perceel of appratementsrecht) dat gekoppeld is,
-* aandeel: samenvoeging van teller en noemer (1/2),
-* omschr_aard_verkregen_recht: tekstuele omschrijving aard recht,
-* indic_betrokken_in_splitsing: -,
-* aantekeningen: samenvoeging van alle rechten voor dit recht,
-* soort: soort subject zoals natuurlijk, niet-natuurlijk enz.
-* geslachtsnaam: -
-* voorvoegsel: -
-* voornamen: -
-* aand_naamgebruik:
-- E (= Eigen geslachtsnaam)
-- N (=Geslachtsnaam echtgenoot/geregistreerd partner na eigen geslachtsnaam)
-- P (= Geslachtsnaam echtgenoot/geregistreerd partner)
-- V (= Geslachtsnaam evhtgenoot/geregistreerd partner voor eigen geslachtsnaam)
-* geslachtsaand: M/V/X
-* naam: samengestelde naam bruikbaar voor natuurlijke en niet-natuurlijke subjecten
-* woonadres: meegeleverd adres buiten BAG koppeling om
-* geboortedatum: -
-* geboorteplaats: -
-* overlijdensdatum: -
-* bsn: -
-* organisatie_naam: naam niet natuurlijk subject
-* rechtsvorm: -
-* statutaire_zetel: -
-* rsin: -
-* kvk_nummer: -';
-
-CREATE MATERIALIZED VIEW mb_avg_zr_rechth (
- objectid,
- zr_identif,
- ingangsdatum_recht,
- subject_identif,
- koz_identif,
- aandeel,
- omschr_aard_verkregenr_recht,
- indic_betrokken_in_splitsing,
- aantekeningen,
- soort,
- geslachtsnaam,
- voorvoegsel,
- voornamen,
- aand_naamgebruik,
- geslachtsaand,
- naam,
- woonadres,
- geboortedatum,
- geboorteplaats,
- overlijdensdatum,
- bsn,
- organisatie_naam,
- rechtsvorm,
- statutaire_zetel,
- rsin,
- kvk_nummer
-)
- BUILD DEFERRED
- REFRESH
- ON DEMAND
-AS
- SELECT
- CAST(ROWNUM AS INTEGER) AS objectid,
- uzr.zr_identif AS zr_identif,
- uzr.ingangsdatum_recht,
- uzr.subject_identif,
- uzr.koz_identif,
- uzr.aandeel,
- uzr.omschr_aard_verkregenr_recht,
- uzr.indic_betrokken_in_splitsing,
- uzr.aantekeningen,
- vs.soort,
- vs.geslachtsnaam,
- vs.voorvoegsel,
- vs.voornamen,
- vs.aand_naamgebruik,
- vs.geslachtsaand,
- vs.naam,
- vs.woonadres,
- vs.geboortedatum,
- vs.geboorteplaats,
- vs.overlijdensdatum,
- vs.bsn,
- vs.organisatie_naam,
- vs.rechtsvorm,
- vs.statutaire_zetel,
- vs.rsin,
- vs.kvk_nummer
- FROM
- vb_util_zk_recht uzr
- JOIN mb_avg_subject vs ON uzr.subject_identif = vs.subject_identif;
-
-CREATE UNIQUE INDEX mb_avg_zr_rechth_objectid ON mb_avg_zr_rechth(objectid ASC);
-CREATE INDEX mb_avg_zr_rechth_identif ON mb_avg_zr_rechth(zr_identif ASC);
-
-COMMENT ON MATERIALIZED VIEW mb_avg_zr_rechth
-IS 'commentaar view mb_avg_zr_rechth:
-alle zakelijke rechten met voor avg geschoonde rechthebbenden en referentie naar kadastraal onroerende zaak (perceel of appartementsrecht)
-beschikbare kolommen:
-* objectid: uniek id bruikbaar voor geoserver/arcgis,
-* zr_identif: natuurlijke id van zakelijk recht,
-* ingangsdatum_recht: -,
-* subject_identif: natuurlijk id van subject (natuurlijk of niet natuurlijk) welke rechthebbende is,
-* koz_identif: natuurlijk id van kadastrale onroerende zaak (perceel of appratementsrecht) dat gekoppeld is,
-* aandeel: samenvoeging van teller en noemer (1/2),
-* omschr_aard_verkregen_recht: tekstuele omschrijving aard recht,
-* indic_betrokken_in_splitsing: -,
-* aantekeningen: samenvoeging van alle aantekeningen van dit recht
-* soort: soort subject zoals natuurlijk, niet-natuurlijk enz.
-* geslachtsnaam: NULL (avg)
-* voorvoegsel: NULL (avg)
-* voornamen: NULL (avg)
-* aand_naamgebruik: NULL (avg)
-* geslachtsaand:NULL (avg)
-* naam: gelijk aan organisatie_naam
-* woonadres: NULL (avg)
-* geboortedatum: NULL (avg)
-* geboorteplaats: NULL (avg)
-* overlijdensdatum: NULL (avg)
-* bsn: NULL (avg)
-* organisatie_naam: naam niet natuurlijk subject
-* rechtsvorm: -
-* statutaire_zetel: -
-* rsin: -
-* kvk_nummer: -';
-
-
-CREATE MATERIALIZED VIEW MB_KAD_ONRRND_ZK_ARCHIEF
- (
- objectid,
- koz_identif,
- begin_geldigheid,
- begin_geldigheid_datum,
- eind_geldigheid,
- eind_geldigheid_datum,
- type,
- aanduiding,
- aanduiding2,
- sectie,
- perceelnummer,
- appartementsindex,
- gemeentecode,
- aand_soort_grootte,
- grootte_perceel,
- deelperceelnummer,
- omschr_deelperceel,
- aard_cultuur_onbebouwd,
- bedrag,
- koopjaar,
- meer_onroerendgoed,
- valutasoort,
- loc_omschr,
- overgegaan_in,
- begrenzing_perceel
- )
-BUILD DEFERRED REFRESH ON DEMAND AS
-SELECT
- CAST(ROWNUM AS INTEGER) AS objectid,
- qry.identif as koz_identif,
- koza.dat_beg_geldh AS begin_geldigheid,
- to_date(koza.dat_beg_geldh, 'YYYY-MM-DD') AS begin_geldigheid_datum,
- koza.datum_einde_geldh AS eind_geldigheid,
- to_date(koza.datum_einde_geldh, 'YYYY-MM-DD') AS eind_geldigheid_datum,
- qry.type,
- (((COALESCE(qry.ka_sectie, '')) || ' ') || (COALESCE
- (qry.ka_perceelnummer, ''))) AS aanduiding,
- (((((((COALESCE(qry.ka_kad_gemeentecode, '')) || ' ') ||
- (COALESCE(qry.ka_sectie, ''))) || ' ') || (COALESCE
- (qry.ka_perceelnummer, ''))) || ' ') || (COALESCE
- (qry.ka_appartementsindex, ''))) AS aanduiding2,
- qry.ka_sectie AS sectie,
- qry.ka_perceelnummer AS perceelnummer,
- qry.ka_appartementsindex AS appartementsindex,
- qry.ka_kad_gemeentecode AS gemeentecode,
- qry.aand_soort_grootte,
- qry.grootte_perceel,
- qry.ka_deelperceelnummer AS deelperceelnummer,
- qry.omschr_deelperceel,
- koza.cu_aard_cultuur_onbebouwd AS aard_cultuur_onbebouwd,
- koza.ks_bedrag AS bedrag,
- koza.ks_koopjaar AS koopjaar,
- koza.ks_meer_onroerendgoed AS meer_onroerendgoed,
- koza.ks_valutasoort AS valutasoort,
- koza.lo_loc__omschr AS loc_omschr,
- kozhr.fk_sc_lh_koz_kad_identif AS overgegaan_in,
- qry.begrenzing_perceel
-FROM
- (
- SELECT
- pa.sc_kad_identif AS identif,
- pa.sc_dat_beg_geldh AS dat_beg_geldh,
- 'perceel' AS type,
- pa.ka_sectie,
- pa.ka_perceelnummer,
- CAST(NULL AS CHARACTER VARYING(4)) AS ka_appartementsindex,
- pa.ka_kad_gemeentecode,
- pa.aand_soort_grootte,
- pa.grootte_perceel,
- pa.ka_deelperceelnummer,
- pa.omschr_deelperceel,
- pa.begrenzing_perceel
- FROM
- kad_perceel_archief pa
- UNION ALL
- SELECT
- ara.sc_kad_identif AS identif,
- ara.sc_dat_beg_geldh AS dat_beg_geldh,
- 'appartement' AS type,
- ara.ka_sectie,
- ara.ka_perceelnummer,
- ara.ka_appartementsindex,
- ara.ka_kad_gemeentecode,
- CAST(NULL AS CHARACTER VARYING(2)) AS aand_soort_grootte,
- CAST(NULL as NUMERIC(8,0)) AS grootte_perceel,
- CAST(NULL AS CHARACTER VARYING(4)) AS ka_deelperceelnummer,
- CAST(NULL AS CHARACTER VARYING(1120)) AS omschr_deelperceel,
- NULL AS begrenzing_perceel
- FROM
- app_re_archief ara ) qry
-JOIN
- kad_onrrnd_zk_archief koza
-ON
- koza.kad_identif = qry.identif
-AND qry.dat_beg_geldh = koza.dat_beg_geldh
-JOIN
- (
- SELECT
- ikoza.kad_identif,
- MAX(ikoza.dat_beg_geldh) bdate
- FROM
- kad_onrrnd_zk_archief ikoza
- GROUP BY
- ikoza.kad_identif ) nqry
-ON
- nqry.kad_identif = koza.kad_identif
-AND nqry.bdate = koza.dat_beg_geldh
-LEFT JOIN
- kad_onrrnd_zk_his_rel kozhr
-ON
- (
- kozhr.fk_sc_rh_koz_kad_identif = koza.kad_identif);
-
-CREATE UNIQUE INDEX MB_KAD_ONRRND_ZK_A_OBJIDX ON MB_KAD_ONRRND_ZK_ARCHIEF(OBJECTID ASC);
-CREATE INDEX MB_KAD_ONRRND_ZK_A_IDENTIF ON MB_KAD_ONRRND_ZK_ARCHIEF(KOZ_IDENTIF ASC);
-INSERT INTO USER_SDO_GEOM_METADATA VALUES ('MB_KAD_ONRRND_ZK_ARCHIEF', 'BEGRENZING_PERCEEL', MDSYS.SDO_DIM_ARRAY(MDSYS.SDO_DIM_ELEMENT('X', 12000, 280000, .1),MDSYS.SDO_DIM_ELEMENT('Y', 304000, 620000, .1)), 28992);
-CREATE INDEX MB_KAD_ONRRND_ZK_A_BGRGPIDX ON MB_KAD_ONRRND_ZK_ARCHIEF (BEGRENZING_PERCEEL) INDEXTYPE IS MDSYS.SPATIAL_INDEX;
-
-
-COMMENT ON MATERIALIZED VIEW MB_KAD_ONRRND_ZK_ARCHIEF
-IS 'commentaar materialized view MB_KAD_ONRRND_ZK_ARCHIEF:
-Nieuwste gearchiveerde versie van ieder kadastrale onroerende zaak (perceel en appartementsrecht) met objectid voor geoserver/arcgis en historische relatie
-beschikbare kolommen:
-* objectid: uniek id bruikbaar voor geoserver/arcgis,
-* koz_identif: natuurlijke id van perceel of appartementsrecht
-* begin_geldigheid: datum wanneer dit object geldig geworden is (ontstaat of bijgewerkt),
-* eind_geldigheid: datum wanneer dit object ongeldig geworden is,
-* benoemdobj_identif: koppeling met BAG object,
-* type: perceel of appartement,
-* sectie: -,
-* aanduiding: sectie perceelnummer,
-* aanduiding2: kadgem sectie perceelnummer appartementsindex,
-* perceelnummer: -,
-* appartementsindex: -,
-* gemeentecode: -,
-* aand_soort_grootte: -,
-* grootte_perceel: -,
-* deelperceelnummer: -,
-* omschr_deelperceel: -,
-* aard_cultuur_onbebouwd: -,
-* bedrag: -,
-* koopjaar: -,
-* meer_onroerendgoed: -,
-* valutasoort: -,
-* loc_omschr: adres buiten BAG om meegegeven,
-* overgegaan_in: natuurlijk id van kadastrale onroerende zaak waar dit object in is overgegaan,
-* begrenzing_perceel: perceelvlak';
-
-
-CREATE INDEX mb_kad_onrr_z_ar_overgeg_idx ON mb_kad_onrrnd_zk_archief (overgegaan_in);
+-- BRK 1 is verwijderd in versie 5.0.0
diff --git a/datamodel/extra_scripts/oracle/301_drop_brk1_tabellen.sql b/datamodel/extra_scripts/oracle/301_drop_brk1_tabellen.sql
new file mode 100644
index 0000000000..b658458c39
--- /dev/null
+++ b/datamodel/extra_scripts/oracle/301_drop_brk1_tabellen.sql
@@ -0,0 +1,48 @@
+-- verwijder alle BRK1 1.0 tabellen en eventueel views die daarvan gebruik maken
+-- in versie 5.0.0 is de BRK 1 ondersteuning verwijderd
+-- de BRK 1.0 tabellen en views zijn niet meer nodig en kunnen verwijderd worden
+BEGIN
+ FOR i IN (SELECT column_value
+ FROM table (SYS.DBMS_DEBUG_VC2COLL('MB_KAD_ONRRND_ZK_ARCHIEF',
+ 'MB_AVG_ZR_RECHTH',
+ 'MB_ZR_RECHTH',
+ 'MB_PERCELENKAART',
+ 'MB_UTIL_APP_RE_KAD_PERCEEL',
+ 'MB_AVG_SUBJECT',
+ 'MB_SUBJECT'))
+ )
+ LOOP
+ BEGIN
+ EXECUTE IMMEDIATE 'DELETE FROM user_sdo_geom_metadata WHERE table_name =''' || i.column_value || '''';
+ EXECUTE IMMEDIATE 'DROP MATERIALIZED VIEW ' || i.column_value;
+ EXCEPTION
+ WHEN OTHERS THEN
+ IF SQLCODE != -12003 THEN
+ RAISE;
+ END IF;
+ END;
+ END LOOP;
+END;
+/
+
+BEGIN
+ FOR i IN (SELECT column_value
+ FROM table (SYS.DBMS_DEBUG_VC2COLL('VB_UTIL_ZK_RECHT',
+ 'VB_UTIL_APP_RE_PARENT',
+ 'VB_UTIL_APP_RE_PARENT_2',
+ 'VB_UTIL_APP_RE_PARENT_3',
+ 'VB_UTIL_APP_RE_SPLITSING',))
+ )
+ LOOP
+ BEGIN
+ EXECUTE IMMEDIATE 'DELETE FROM user_sdo_geom_metadata WHERE table_name =''' || i.column_value || '''';
+ EXECUTE IMMEDIATE 'DROP VIEW ' || i.column_value || ' CASCADE CONSTRAINTS';
+ EXCEPTION
+ WHEN OTHERS THEN
+ IF SQLCODE != -942 THEN
+ RAISE;
+ END IF;
+ END;
+ END LOOP;
+END;
+/
diff --git a/datamodel/extra_scripts/postgresql/207_brk_views.sql b/datamodel/extra_scripts/postgresql/207_brk_views.sql
index b5d21627db..40a731887e 100644
--- a/datamodel/extra_scripts/postgresql/207_brk_views.sql
+++ b/datamodel/extra_scripts/postgresql/207_brk_views.sql
@@ -1,853 +1 @@
-/*
-Views for visualizing the BRK data.
-versie 2
-30-8-2019
-*/
-CREATE MATERIALIZED VIEW mb_subject
- (
- objectid,
- subject_identif,
- soort,
- geslachtsnaam,
- voorvoegsel,
- voornamen,
- aand_naamgebruik,
- geslachtsaand,
- naam,
- woonadres,
- geboortedatum,
- geboorteplaats,
- overlijdensdatum,
- bsn,
- organisatie_naam,
- rechtsvorm,
- statutaire_zetel,
- rsin,
- kvk_nummer
- ) AS
-SELECT
- (row_number() OVER ())::INTEGER AS objectid,
- s.identif as subject_identif,
- s.clazz AS soort,
- np.nm_geslachtsnaam AS geslachtsnaam,
- np.nm_voorvoegsel_geslachtsnaam AS voorvoegsel,
- np.nm_voornamen AS voornamen,
- np.aand_naamgebruik,
- CASE
- WHEN ((np.geslachtsaand)::text = '1'::text)
- THEN 'M'::CHARACTER VARYING(1)
- WHEN ((np.geslachtsaand)::text = '2'::text)
- THEN 'V'::CHARACTER VARYING(1)
- WHEN ((np.geslachtsaand)::text = '3'::text)
- THEN 'X'::CHARACTER VARYING(1)
- ELSE np.geslachtsaand
- END AS geslachtsaand,
- CASE
- WHEN (nnp.naam IS NOT NULL)
- THEN (nnp.naam)::CHARACTER VARYING(1000)
- ELSE ((REPLACE(COALESCE(np.nm_voornamen, ''::character varying)::text || ' '::text ||
- COALESCE(np.nm_voorvoegsel_geslachtsnaam, '') || ' ' ,' ',' ') ||
- COALESCE(np.nm_geslachtsnaam, ''::character varying)::text))::character varying(1000)
- END AS naam,
- inp.va_loc_beschrijving AS woonadres,
- CASE
- WHEN ((s.clazz)::text = 'INGESCHREVEN NATUURLIJK PERSOON'::text)
- AND LENGTH(inp.gb_geboortedatum::text)=8
- THEN (
- SUBSTRING(TO_CHAR(inp.gb_geboortedatum,'99999999'),2,4) || '-' ||
- SUBSTRING(TO_CHAR(inp.gb_geboortedatum,'99999999'),6,2) || '-' ||
- SUBSTRING(TO_CHAR(inp.gb_geboortedatum,'99999999'),8,2)
- )::VARCHAR(10)
- WHEN ((s.clazz)::text = 'ANDER NATUURLIJK PERSOON'::text)
- AND LENGTH(anp.geboortedatum::text)=8
- THEN (
- SUBSTRING(TO_CHAR(anp.geboortedatum, '99999999'),2,4) || '-' ||
- SUBSTRING(TO_CHAR(anp.geboortedatum, '99999999'),6,2) || '-' ||
- SUBSTRING(TO_CHAR(anp.geboortedatum, '99999999'),8,2)
- )::VARCHAR(10)
- WHEN ((s.clazz)::text = 'INGESCHREVEN NATUURLIJK PERSOON'::text)
- AND LENGTH(inp.gb_geboortedatum::text)=5
- THEN '0001-01-01'::VARCHAR(10)
- WHEN ((s.clazz)::text = 'ANDER NATUURLIJK PERSOON'::text)
- AND LENGTH(anp.geboortedatum::text)=5
- THEN '0001-01-01'::VARCHAR(10)
- ELSE NULL::VARCHAR(10)
- END AS geboortedatum,
- inp.gb_geboorteplaats AS geboorteplaats,
- CASE
- WHEN ((s.clazz)::text = 'INGESCHREVEN NATUURLIJK PERSOON'::text)
- AND LENGTH(inp.ol_overlijdensdatum::text)=8
- THEN (
- SUBSTRING(TO_CHAR(inp.ol_overlijdensdatum,'99999999'),2,4) || '-' ||
- SUBSTRING(TO_CHAR(inp.ol_overlijdensdatum,'99999999'),6,2) || '-' ||
- SUBSTRING(TO_CHAR(inp.ol_overlijdensdatum,'99999999'),8,2)
- )::VARCHAR(10)
- WHEN ((s.clazz)::text = 'ANDER NATUURLIJK PERSOON'::text)
- AND LENGTH(anp.overlijdensdatum::text)=8
- THEN (
- SUBSTRING(TO_CHAR(anp.overlijdensdatum, '99999999'),2,4) || '-' ||
- SUBSTRING(TO_CHAR(anp.overlijdensdatum, '99999999'),6,2) || '-' ||
- SUBSTRING(TO_CHAR(anp.overlijdensdatum, '99999999'),8,2)
- )::VARCHAR(10)
- WHEN ((s.clazz)::text = 'INGESCHREVEN NATUURLIJK PERSOON'::text)
- AND LENGTH(inp.ol_overlijdensdatum::text)=5
- THEN '0001-01-01'::VARCHAR(10)
- WHEN ((s.clazz)::text = 'ANDER NATUURLIJK PERSOON'::text)
- AND LENGTH(anp.overlijdensdatum::text)=5
- THEN '0001-01-01'::VARCHAR(10)
- ELSE NULL::VARCHAR(10)
- END AS overlijdensdatum,
- inp.bsn::INTEGER,
- nnp.naam AS organisatie_naam,
- innp.rechtsvorm,
- innp.statutaire_zetel,
- innp.rsin::INTEGER,
- s.kvk_nummer::INTEGER
-FROM
- (((((subject s
-LEFT JOIN
- nat_prs np
-ON
- (((
- s.identif)::text = (np.sc_identif)::text)))
-LEFT JOIN
- ingeschr_nat_prs inp
-ON
- (((
- inp.sc_identif)::text = (np.sc_identif)::text)))
-LEFT JOIN
- ander_nat_prs anp
-ON
- (((
- anp.sc_identif)::text = (np.sc_identif)::text)))
-LEFT JOIN
- niet_nat_prs nnp
-ON
- (((
- nnp.sc_identif)::text = (s.identif)::text)))
-LEFT JOIN
- ingeschr_niet_nat_prs innp
-ON
- (((
- innp.sc_identif)::text = (nnp.sc_identif)::text))) WITH NO DATA;
-
-CREATE UNIQUE INDEX mb_subject_objectid ON mb_subject USING btree (objectid);
-CREATE INDEX mb_subject_identif ON mb_subject USING btree (subject_identif);
-
-COMMENT ON MATERIALIZED VIEW mb_subject
-IS
- 'commentaar view mb_subject:
-samenvoeging alle soorten subjecten: natuurlijk en niet-natuurlijk.
-
-beschikbare kolommen:
-* objectid: uniek id bruikbaar voor geoserver/arcgis,
-* subject_identif: natuurlijke id van subject
-* soort: soort subject zoals natuurlijk, niet-natuurlijk enz.
-* geslachtsnaam: -
-* voorvoegsel: -
-* voornamen: -
-* aand_naamgebruik:
-- E (= Eigen geslachtsnaam)
-- N (= Geslachtsnaam echtgenoot/geregistreerd partner na eigen geslachtsnaam)
-- P (= Geslachtsnaam echtgenoot/geregistreerd partner)
-- V (= Geslachtsnaam evhtgenoot/geregistreerd partner voor eigen geslachtsnaam)
-* geslachtsaand: M/V/X
-* naam: samengestelde naam bruikbaar voor natuurlijke en niet-natuurlijke subjecten
-* woonadres: meegeleverd adres buiten BAG koppeling om
-* geboortedatum: -
-* geboorteplaats: -
-* overlijdensdatum: -
-* bsn: -
-* organisatie_naam: naam niet natuurlijk subject
-* rechtsvorm: -
-* statutaire_zetel: -
-* rsin: -
-* kvk_nummer: -
-'
- ;
-
-CREATE MATERIALIZED VIEW mb_avg_subject
- (
- objectid,
- subject_identif,
- soort,
- geslachtsnaam,
- voorvoegsel,
- voornamen,
- aand_naamgebruik,
- geslachtsaand,
- naam,
- woonadres,
- geboortedatum,
- geboorteplaats,
- overlijdensdatum,
- bsn,
- organisatie_naam,
- rechtsvorm,
- statutaire_zetel,
- rsin,
- kvk_nummer
- ) AS
-SELECT
- s.objectid,
- s.subject_identif as subject_identif,
- s.soort,
- NULL::text AS geslachtsnaam,
- NULL::text AS voorvoegsel,
- NULL::text AS voornamen,
- NULL::text AS aand_naamgebruik,
- NULL::text AS geslachtsaand,
- s.organisatie_naam AS naam,
- NULL::text AS woonadres,
- NULL::text AS geboortedatum,
- NULL::text AS geboorteplaats,
- NULL::text AS overlijdensdatum,
- NULL::text AS bsn,
- s.organisatie_naam,
- s.rechtsvorm,
- s.statutaire_zetel,
- s.rsin::INTEGER,
- s.kvk_nummer::INTEGER
-FROM
- mb_subject s WITH NO DATA;
-
-CREATE UNIQUE INDEX mb_avg_subject_objectid ON mb_avg_subject USING btree (objectid);
-CREATE INDEX mb_avg_subject_identif ON mb_avg_subject USING btree (subject_identif);
-
-COMMENT ON MATERIALIZED VIEW mb_avg_subject
-IS
- 'commentaar view mb_avg_subject:
-volledig subject (natuurlijk en niet natuurlijk) geschoond voor avg
-beschikbare kolommen:
-* objectid: uniek id bruikbaar voor geoserver/arcgis,
-* subject_identif: natuurlijke id van subject
-* soort: soort subject zoals natuurlijk, niet-natuurlijk enz.
-* geslachtsnaam: NULL (avg)
-* voorvoegsel: NULL (avg)
-* voornamen: NULL (avg)
-* aand_naamgebruik: NULL (avg)
-* geslachtsaand:NULL (avg)
-* naam: gelijk aan organisatie_naam
-* woonadres: NULL (avg)
-* geboortedatum: NULL (avg)
-* geboorteplaats: NULL (avg)
-* overlijdensdatum: NULL (avg)
-* bsn: NULL (avg)
-* organisatie_naam: naam niet natuurlijk subject
-* rechtsvorm: -
-* statutaire_zetel: -
-* rsin: -
-* kvk_nummer: -
-'
- ;
-
---drop view vb_util_app_re_splitsing cascade;
-CREATE OR REPLACE VIEW
- vb_util_app_re_splitsing AS
-SELECT
- b1.ref_id AS child_identif,
- min(b2.ref_id) AS parent_identif
-FROM
- brondocument b1
-JOIN
- brondocument b2
-ON
- b2.identificatie = b1.identificatie
-WHERE
- (
- b2.omschrijving = 'betrokkenBij Ondersplitsing'
- OR b2.omschrijving = 'betrokkenBij HoofdSplitsing'
- OR b2.omschrijving = 'betrokkenBij SplitsingAfkoopErfpacht')
-AND (
- b1.omschrijving = 'ontstaanUit Ondersplitsing'
- OR b1.omschrijving = 'ontstaanUit HoofdSplitsing'
- OR b1.omschrijving = 'ontstaanUit SplitsingAfkoopErfpacht')
-GROUP BY
- b1.ref_id;
-
---drop view vb_util_app_re_parent_3 cascade;
-CREATE OR REPLACE VIEW
- vb_util_app_re_parent_3 AS
-SELECT
- re.sc_kad_identif::text AS app_re_identif,
- min(sp.parent_identif) AS parent_identif
-FROM
- app_re re
-LEFT JOIN
- vb_util_app_re_splitsing sp
-ON
- re.sc_kad_identif = sp.child_identif::numeric
-GROUP BY
- re.sc_kad_identif::text,
- sp.parent_identif;
-
---drop view vb_util_app_re_parent_2 cascade;
-CREATE OR REPLACE VIEW
- vb_util_app_re_parent_2 AS
-SELECT
- u1.app_re_identif,
- CASE
- WHEN sp.parent_identif IS NULL
- THEN u1.parent_identif
- ELSE sp.parent_identif
- END AS parent_identif
-FROM
- vb_util_app_re_parent_3 u1
-LEFT JOIN
- vb_util_app_re_splitsing sp
-ON
- u1.parent_identif = sp.child_identif;
-
---drop view vb_util_app_re_parent cascade;
-CREATE OR REPLACE VIEW
- vb_util_app_re_parent AS
-SELECT
- u2.app_re_identif,
- CASE
- WHEN sp.parent_identif IS NULL
- THEN u2.parent_identif
- ELSE sp.parent_identif
- END AS parent_identif
-FROM
- vb_util_app_re_parent_2 u2
-LEFT JOIN
- vb_util_app_re_splitsing sp
-ON
- u2.parent_identif = sp.child_identif;
-
-CREATE MATERIALIZED VIEW mb_util_app_re_kad_perceel AS
-SELECT
- u1.app_re_identif,
- kp.sc_kad_identif AS perceel_identif
-FROM vb_util_app_re_parent u1
-JOIN kad_perceel kp ON u1.parent_identif::numeric = kp.sc_kad_identif
-GROUP BY u1.app_re_identif, kp.sc_kad_identif WITH NO DATA;
-
-CREATE INDEX mb_util_app_re_kad_perceel_identif ON mb_util_app_re_kad_perceel USING btree (app_re_identif);
-
-COMMENT ON MATERIALIZED VIEW mb_util_app_re_kad_perceel
-IS 'commentaar view mb_util_app_re_kad_perceel:
-utility view, niet bedoeld voor direct gebruik, met lijst van appartementsrechten met bijbehorend grondperceel
-beschikbare kolommen:
-* app_re_identif: natuurlijk id van appartementsrecht,
-* perceel_identif: natuurlijk id van grondperceel';
-
-
-CREATE MATERIALIZED VIEW mb_percelenkaart AS
- SELECT row_number() OVER ()::integer AS objectid,
- qry.identif AS koz_identif,
- koz.dat_beg_geldh AS begin_geldigheid,
- to_date(koz.dat_beg_geldh, 'YYYY-MM-DD'::text) AS begin_geldigheid_datum,
- qry.type,
- (COALESCE(qry.ka_sectie, ''::character varying)::text || ' '::text) || COALESCE(qry.ka_perceelnummer, ''::character varying)::text AS aanduiding,
- (((((COALESCE(qry.ka_kad_gemeentecode, ''::character varying)::text || ' '::text) || COALESCE(qry.ka_sectie, ''::character varying)::text) || ' '::text) || COALESCE(qry.ka_perceelnummer, ''::character varying)::text) || ' '::text) AS aanduiding2,
- qry.ka_sectie AS sectie,
- qry.ka_perceelnummer AS perceelnummer,
- qry.ka_kad_gemeentecode AS gemeentecode,
- qry.aand_soort_grootte,
- qry.grootte_perceel::INTEGER,
- st_area(qry.begrenzing_perceel) AS oppervlakte_geom,
- b.datum AS verkoop_datum,
- koz.cu_aard_cultuur_onbebouwd AS aard_cultuur_onbebouwd,
- koz.ks_bedrag::INTEGER AS bedrag,
- koz.ks_koopjaar AS koopjaar,
- koz.ks_meer_onroerendgoed AS meer_onroerendgoed,
- koz.ks_valutasoort AS valutasoort,
- array_to_string(
- (SELECT array_agg(('id: '::text || COALESCE(koza.kadaster_identif_aantek, ''::character varying)::text || ', '::text ||
- 'aard: '::text || COALESCE(koza.aard_aantek_kad_obj, ''::character varying)::text || ', '::text ||
- 'begin: '::text || COALESCE(koza.begindatum_aantek_kad_obj, ''::character varying)::text || ', '::text ||
- 'beschrijving: '::text || COALESCE(koza.beschrijving_aantek_kad_obj, ''::character varying)::text || ', '::text ||
- 'eind: '::text || COALESCE(koza.eindd_aantek_kad_obj, ''::character varying)::text || ', '::text ||
- 'koz-id: '::text || COALESCE(koza.fk_4koz_kad_identif, 0::NUMERIC(15,0))::NUMERIC(15,0) || ', '::text ||
- 'subject-id: '::text || COALESCE(koza.fk_5pes_sc_identif, ''::character varying)::text || '; '::text))
- FROM kad_onrrnd_zk_aantek koza
- WHERE koza.fk_4koz_kad_identif = koz.kad_identif), ' & ') as aantekeningen,
- st_x(st_transform(st_setsrid(st_centroid(qry.begrenzing_perceel), 28992), 4326)) AS lon,
- st_y(st_transform(st_setsrid(st_centroid(qry.begrenzing_perceel), 28992), 4326)) AS lat,
- qry.begrenzing_perceel
- FROM ( SELECT p.sc_kad_identif AS identif,
- 'perceel'::character varying(11) AS type,
- p.ka_sectie,
- p.ka_perceelnummer,
- p.ka_kad_gemeentecode,
- p.aand_soort_grootte,
- p.grootte_perceel,
- p.begrenzing_perceel
- FROM kad_perceel p
- ) qry
- JOIN kad_onrrnd_zk koz ON koz.kad_identif = qry.identif
- LEFT JOIN ( SELECT brondocument.ref_id,
- max(brondocument.datum) AS datum
- FROM brondocument
- WHERE brondocument.omschrijving::text = 'Akte van Koop en Verkoop'::text
- GROUP BY brondocument.ref_id) b ON koz.kad_identif::text = b.ref_id::text
- WITH NO DATA;
-
-CREATE UNIQUE INDEX mb_percelenkaart_objectid ON mb_percelenkaart USING btree (objectid);
-CREATE INDEX mb_percelenkaart_identif ON mb_percelenkaart USING btree (koz_identif);
-CREATE INDEX mb_percelenkaart_begrenzing_perceel_idx ON mb_percelenkaart USING gist (begrenzing_perceel);
-
-COMMENT ON MATERIALIZED VIEW mb_percelenkaart
-IS
- 'commentaar view mb_percelenkaart:
-alle kadastrale onroerende zaken (perceel en appartementsrecht) met opgezochte verkoop datum, objectid voor geoserver/arcgis
-
-beschikbare kolommen:
-* objectid: uniek id bruikbaar voor geoserver/arcgis,
-* koz_identif: natuurlijke id van perceel of appartementsrecht
-* begin_geldigheid: datum wanneer dit object geldig geworden is (ontstaat of bijgewerkt),
-* begin_geldigheid_datum: datum wanneer dit object geldig geworden is (ontstaat of bijgewerkt),
-* type: perceel of appartement,
-* aanduiding: sectie perceelnummer,
-* aanduiding2: kadgem sectie perceelnummer appartementsindex,
-* sectie: -,
-* perceelnummer: -,
-* gemeentecode: -,
-* aand_soort_grootte: -,
-* grootte_perceel: -,
-* oppervlakte_geom: oppervlakte berekend uit geometrie, hoort gelijk te zijn aan grootte_perceel,
-* verkoop_datum: laatste datum gevonden akten van verkoop,
-* aard_cultuur_onbebouwd: -,
-* bedrag: -,
-* koopjaar: -,
-* meer_onroerendgoed: -,
-* valutasoort: -,
-* aantekeningen: -,
-* lon: coordinaat als WSG84,
-* lon: coordinaat als WSG84,
-* begrenzing_perceel: perceelvlak
-'
- ;
-
---drop view vb_util_zk_recht cascade;
-CREATE OR REPLACE VIEW
- vb_util_zk_recht
- (
- zr_identif,
- ingangsdatum_recht,
- aandeel,
- ar_teller,
- ar_noemer,
- subject_identif,
- koz_identif,
- indic_betrokken_in_splitsing,
- omschr_aard_verkregen_recht,
- fk_3avr_aand,
- aantekeningen
- ) AS
-SELECT
- zr.kadaster_identif AS zr_identif,
- zr.ingangsdatum_recht,
- ((COALESCE((zr.ar_teller)::text, ('0'::CHARACTER VARYING)::text) || ('/'::CHARACTER VARYING)::
- text) || COALESCE((zr.ar_noemer)::text, ('0'::CHARACTER VARYING)::text))::CHARACTER VARYING(20) AS aandeel,
- zr.ar_teller::INTEGER,
- zr.ar_noemer::INTEGER,
- zr.fk_8pes_sc_identif AS subject_identif,
- zr.fk_7koz_kad_identif AS koz_identif,
- zr.indic_betrokken_in_splitsing,
- avr.omschr_aard_verkregenr_recht,
- zr.fk_3avr_aand,
- array_to_string(
- (SELECT array_agg(('id: '::text || COALESCE(zra.kadaster_identif_aantek_recht, ''::character varying)::text || ', '::text ||
- 'aard: '::text || COALESCE(zra.aard_aantek_recht, ''::character varying)::text || ', '::text ||
- 'begin: '::text || COALESCE(zra.begindatum_aantek_recht, ''::character varying)::text || ', '::text ||
- 'beschrijving: '::text || COALESCE(zra.beschrijving_aantek_recht, ''::character varying)::text || ', '::text ||
- 'eind: '::text || COALESCE(zra.eindd_aantek_recht, ''::character varying)::text || ', '::text ||
- 'zkr-id: '::text || COALESCE(zra.fk_5zkr_kadaster_identif, ''::character varying)::text || ', '::text ||
- 'subject-id: '::text || COALESCE(zra.fk_6pes_sc_identif, ''::character varying)::text || '; '::text))
- FROM zak_recht_aantek zra
- WHERE zra.fk_5zkr_kadaster_identif = zr.kadaster_identif), '&& ') as aantekeningen
-FROM
- (zak_recht zr
-JOIN
- aard_verkregen_recht avr
-ON
- (((
- zr.fk_3avr_aand)::text = (avr.aand)::text)));
-
-COMMENT ON VIEW vb_util_zk_recht
-IS
- 'commentaar view vb_util_zk_recht:
-zakelijk recht met opgezocht aard recht en berekend aandeel
-
-beschikbare kolommen:
-* zr_identif: natuurlijke id van zakelijk recht
-* ingangsdatum_recht: -
-* aandeel: samenvoeging van teller en noemer (1/2),
-* ar_teller: teller van aandeel,
-* ar_noemer: noemer van aandeel,
-* subject_identif: natuurlijk id van subject (natuurlijk of niet natuurlijk) welke rechthebbende is,
-* koz_identif: natuurlijk id van kadastrale onroerende zaak (perceel of appratementsrecht) dat gekoppeld is,
-* indic_betrokken_in_splitsing: -,
-* omschr_aard_verkregen_recht: tekstuele omschrijving aard recht,
-* fk_3avr_aand: code aard recht,
-* aantekeningen: samenvoeging van alle aantekening op dit recht
-'
- ;
-
-CREATE MATERIALIZED VIEW mb_zr_rechth
- (
- objectid,
- zr_identif,
- ingangsdatum_recht,
- subject_identif,
- koz_identif,
- aandeel,
- omschr_aard_verkregen_recht,
- indic_betrokken_in_splitsing,
- aantekeningen,
- soort,
- geslachtsnaam,
- voorvoegsel,
- voornamen,
- aand_naamgebruik,
- geslachtsaand,
- naam,
- woonadres,
- geboortedatum,
- geboorteplaats,
- overlijdensdatum,
- bsn,
- organisatie_naam,
- rechtsvorm,
- statutaire_zetel,
- rsin,
- kvk_nummer
- ) AS
-SELECT
- (row_number() OVER ())::INTEGER AS objectid,
- uzr.zr_identif as zr_identif,
- uzr.ingangsdatum_recht,
- uzr.subject_identif,
- uzr.koz_identif,
- uzr.aandeel,
- uzr.omschr_aard_verkregen_recht,
- uzr.indic_betrokken_in_splitsing,
- uzr.aantekeningen,
- vs.soort,
- vs.geslachtsnaam,
- vs.voorvoegsel,
- vs.voornamen,
- vs.aand_naamgebruik,
- vs.geslachtsaand,
- vs.naam,
- vs.woonadres,
- vs.geboortedatum,
- vs.geboorteplaats,
- vs.overlijdensdatum,
- vs.bsn::INTEGER,
- vs.organisatie_naam,
- vs.rechtsvorm,
- vs.statutaire_zetel,
- vs.rsin::INTEGER,
- vs.kvk_nummer::INTEGER
-FROM
- (vb_util_zk_recht uzr
-JOIN
- mb_subject vs
-ON
- (((
- uzr.subject_identif)::text = (vs.subject_identif)::text))) WITH NO DATA;
-
-CREATE UNIQUE INDEX mb_zr_rechth_objectid ON mb_zr_rechth USING btree (objectid);
-CREATE INDEX mb_zr_rechth_identif ON mb_zr_rechth USING btree (zr_identif);
-
-COMMENT ON MATERIALIZED VIEW mb_zr_rechth
-IS
- 'commentaar view mb_zr_rechth:
-alle zakelijke rechten met rechthebbenden en referentie naar kadastraal onroerende zaak (perceel of appartementsrecht)
-
-beschikbare kolommen:
-* objectid: uniek id bruikbaar voor geoserver/arcgis,
-* zr_identif: natuurlijke id van zakelijk recht,
-* ingangsdatum_recht: -
-* subject_identif: natuurlijk id van subject (natuurlijk of niet natuurlijk) welke rechthebbende is,
-* koz_identif: natuurlijk id van kadastrale onroerende zaak (perceel of appratementsrecht) dat gekoppeld is,
-* aandeel: samenvoeging van teller en noemer (1/2),
-* omschr_aard_verkregen_recht: tekstuele omschrijving aard recht,
-* indic_betrokken_in_splitsing: -,
-* aantekeningen: samenvoeging van alle rechten voor dit recht,
-* soort: soort subject zoals natuurlijk, niet-natuurlijk enz.
-* geslachtsnaam: -
-* voorvoegsel: -
-* voornamen: -
-* aand_naamgebruik:
-- E (= Eigen geslachtsnaam)
-- N (=Geslachtsnaam echtgenoot/geregistreerd partner na eigen geslachtsnaam)
-- P (= Geslachtsnaam echtgenoot/geregistreerd partner)
-- V (= Geslachtsnaam evhtgenoot/geregistreerd partner voor eigen geslachtsnaam)
-* geslachtsaand: M/V/X
-* naam: samengestelde naam bruikbaar voor natuurlijke en niet-natuurlijke subjecten
-* woonadres: meegeleverd adres buiten BAG koppeling om
-* geboortedatum: -
-* geboorteplaats: -
-* overlijdensdatum: -
-* bsn: -
-* organisatie_naam: naam niet natuurlijk subject
-* rechtsvorm: -
-* statutaire_zetel: -
-* rsin: -
-* kvk_nummer: -
-'
- ;
-
-CREATE MATERIALIZED VIEW mb_avg_zr_rechth
- (
- objectid,
- zr_identif,
- ingangsdatum_recht,
- subject_identif,
- koz_identif,
- aandeel,
- omschr_aard_verkregen_recht,
- indic_betrokken_in_splitsing,
- aantekeningen,
- soort,
- geslachtsnaam,
- voorvoegsel,
- voornamen,
- aand_naamgebruik,
- geslachtsaand,
- naam,
- woonadres,
- geboortedatum,
- geboorteplaats,
- overlijdensdatum,
- bsn,
- organisatie_naam,
- rechtsvorm,
- statutaire_zetel,
- rsin,
- kvk_nummer
- ) AS
-SELECT
- (row_number() OVER ())::INTEGER AS objectid,
- uzr.zr_identif as zr_identif,
- uzr.ingangsdatum_recht,
- uzr.subject_identif,
- uzr.koz_identif,
- uzr.aandeel,
- uzr.omschr_aard_verkregen_recht,
- uzr.indic_betrokken_in_splitsing,
- uzr.aantekeningen,
- vs.soort,
- vs.geslachtsnaam,
- vs.voorvoegsel,
- vs.voornamen,
- vs.aand_naamgebruik,
- vs.geslachtsaand,
- vs.naam,
- vs.woonadres,
- vs.geboortedatum,
- vs.geboorteplaats,
- vs.overlijdensdatum,
- vs.bsn,
- vs.organisatie_naam,
- vs.rechtsvorm,
- vs.statutaire_zetel,
- vs.rsin::INTEGER,
- vs.kvk_nummer::INTEGER
-FROM
- (vb_util_zk_recht uzr
-JOIN
- mb_avg_subject vs
-ON
- (((
- uzr.subject_identif)::text = (vs.subject_identif)::text))) WITH NO DATA;
-
-CREATE UNIQUE INDEX mb_avg_zr_rechth_objectid ON mb_avg_zr_rechth USING btree (objectid);
-CREATE INDEX mb_avg_zr_rechth_identif ON mb_avg_zr_rechth USING btree (zr_identif);
-
-COMMENT ON MATERIALIZED VIEW mb_avg_zr_rechth
-IS
- 'commentaar view mb_avg_zr_rechth:
-alle zakelijke rechten met voor avg geschoonde rechthebbenden en referentie naar kadastraal onroerende zaak (perceel of appartementsrecht)
-
-beschikbare kolommen:
-* objectid: uniek id bruikbaar voor geoserver/arcgis,
-* zr_identif: natuurlijke id van zakelijk recht,
-* ingangsdatum_recht: -,
-* subject_identif: natuurlijk id van subject (natuurlijk of niet natuurlijk) welke rechthebbende is,
-* koz_identif: natuurlijk id van kadastrale onroerende zaak (perceel of appratementsrecht) dat gekoppeld is,
-* aandeel: samenvoeging van teller en noemer (1/2),
-* omschr_aard_verkregen_recht: tekstuele omschrijving aard recht,
-* indic_betrokken_in_splitsing: -,
-* aantekeningen: samenvoeging van alle aantekeningen van dit recht
-* soort: soort subject zoals natuurlijk, niet-natuurlijk enz.
-* geslachtsnaam: NULL (avg)
-* voorvoegsel: NULL (avg)
-* voornamen: NULL (avg)
-* aand_naamgebruik: NULL (avg)
-* geslachtsaand:NULL (avg)
-* naam: gelijk aan organisatie_naam
-* woonadres: NULL (avg)
-* geboortedatum: NULL (avg)
-* geboorteplaats: NULL (avg)
-* overlijdensdatum: NULL (avg)
-* bsn: NULL (avg)
-* organisatie_naam: naam niet natuurlijk subject
-* rechtsvorm: -
-* statutaire_zetel: -
-* rsin: -
-* kvk_nummer: -
-
-'
- ;
-
-create materialized view mb_kad_onrrnd_zk_archief
- (
- objectid,
- koz_identif,
- begin_geldigheid,
- begin_geldigheid_datum,
- eind_geldigheid,
- eind_geldigheid_datum,
- type,
- aanduiding,
- aanduiding2,
- sectie,
- perceelnummer,
- appartementsindex,
- gemeentecode,
- aand_soort_grootte,
- grootte_perceel,
- deelperceelnummer,
- omschr_deelperceel,
- aard_cultuur_onbebouwd,
- bedrag,
- koopjaar,
- meer_onroerendgoed,
- valutasoort,
- loc_omschr,
- overgegaan_in,
- begrenzing_perceel
- ) AS
-SELECT
- (row_number() OVER ())::INTEGER AS objectid,
- qry.identif as koz_identif,
- koza.dat_beg_geldh AS begin_geldigheid,
- to_date(koza.dat_beg_geldh, 'YYYY-MM-DD'::text) AS begin_geldigheid_datum,
- koza.datum_einde_geldh AS eind_geldigheid,
- to_date(koza.datum_einde_geldh, 'YYYY-MM-DD'::text) AS eind_geldigheid_datum,
- qry.type,
- (((COALESCE(qry.ka_sectie, ''::CHARACTER VARYING))::text || ' '::text) || (COALESCE
- (qry.ka_perceelnummer, ''::CHARACTER VARYING))::CHARACTER VARYING(6)) AS aanduiding,
- (((((((COALESCE(qry.ka_kad_gemeentecode, ''::CHARACTER VARYING))::text || ' '::text) ||
- (COALESCE(qry.ka_sectie, ''::CHARACTER VARYING))::text) || ' '::text) || (COALESCE
- (qry.ka_perceelnummer, ''::CHARACTER VARYING))::text) || ' '::text) || (COALESCE
- (qry.ka_appartementsindex, ''::CHARACTER VARYING))::CHARACTER VARYING(20)) AS aanduiding2,
- qry.ka_sectie AS sectie,
- qry.ka_perceelnummer AS perceelnummer,
- qry.ka_appartementsindex AS appartementsindex,
- qry.ka_kad_gemeentecode AS gemeentecode,
- qry.aand_soort_grootte,
- qry.grootte_perceel::INTEGER,
- qry.ka_deelperceelnummer AS deelperceelnummer,
- qry.omschr_deelperceel,
- koza.cu_aard_cultuur_onbebouwd AS aard_cultuur_onbebouwd,
- koza.ks_bedrag::INTEGER AS bedrag,
- koza.ks_koopjaar AS koopjaar,
- koza.ks_meer_onroerendgoed AS meer_onroerendgoed,
- koza.ks_valutasoort AS valutasoort,
- koza.lo_loc__omschr AS loc_omschr,
- kozhr.fk_sc_lh_koz_kad_identif AS overgegaan_in,
- qry.begrenzing_perceel::geometry(MULTIPOLYGON,28992)
-FROM
- (
- SELECT
- pa.sc_kad_identif AS identif,
- pa.sc_dat_beg_geldh AS dat_beg_geldh,
- 'perceel'::CHARACTER VARYING(11) AS type,
- pa.ka_sectie,
- pa.ka_perceelnummer,
- NULL::CHARACTER VARYING(4) AS ka_appartementsindex,
- pa.ka_kad_gemeentecode,
- pa.aand_soort_grootte,
- pa.grootte_perceel,
- pa.ka_deelperceelnummer,
- pa.omschr_deelperceel,
- pa.begrenzing_perceel
- FROM
- kad_perceel_archief pa
- UNION ALL
- SELECT
- ara.sc_kad_identif AS identif,
- ara.sc_dat_beg_geldh AS dat_beg_geldh,
- 'appartement'::CHARACTER VARYING(11) AS type,
- ara.ka_sectie,
- ara.ka_perceelnummer,
- ara.ka_appartementsindex,
- ara.ka_kad_gemeentecode,
- NULL::CHARACTER VARYING(2) AS aand_soort_grootte,
- NULL::NUMERIC(8,0) AS grootte_perceel,
- NULL::CHARACTER VARYING(4) AS ka_deelperceelnummer,
- NULL::CHARACTER VARYING(1120) AS omschr_deelperceel,
- NULL AS begrenzing_perceel
- FROM
- app_re_archief ara ) qry
-JOIN
- kad_onrrnd_zk_archief koza
-ON
- koza.kad_identif = qry.identif
-AND qry.dat_beg_geldh = koza.dat_beg_geldh
-JOIN
- (
- SELECT
- ikoza.kad_identif,
- MAX(ikoza.dat_beg_geldh) bdate
- FROM
- kad_onrrnd_zk_archief ikoza
- GROUP BY
- ikoza.kad_identif ) nqry
-ON
- nqry.kad_identif = koza.kad_identif
-AND nqry.bdate = koza.dat_beg_geldh
-LEFT JOIN
- kad_onrrnd_zk_his_rel kozhr
-ON
- (
- kozhr.fk_sc_rh_koz_kad_identif = koza.kad_identif) WITH NO DATA;
-
-CREATE UNIQUE INDEX mb_kad_onrrnd_zk_archief_objectid ON mb_kad_onrrnd_zk_archief USING btree (objectid);
-CREATE INDEX mb_kad_onrrnd_zk_archief_identif ON mb_kad_onrrnd_zk_archief USING btree (koz_identif);
-CREATE INDEX mb_kad_onrrnd_zk_archief_begrenzing_perceel_idx ON mb_kad_onrrnd_zk_archief USING gist (begrenzing_perceel);
-
-
-COMMENT ON MATERIALIZED VIEW mb_kad_onrrnd_zk_archief
-IS
- 'commentaar view mb_kad_onrrnd_zk_archief:
-Nieuwste gearchiveerde versie van ieder kadastrale onroerende zaak (perceel en appartementsrecht) met objectid voor geoserver/arcgis en historische relatie
-
-beschikbare kolommen:
-* objectid: uniek id bruikbaar voor geoserver/arcgis,
-* koz_identif: natuurlijke id van perceel of appartementsrecht
-* begin_geldigheid: datum wanneer dit object geldig geworden is (ontstaat of bijgewerkt),
-* begin_geldigheid_datum: datum wanneer dit object geldig geworden is (ontstaat of bijgewerkt),
-* eind_geldigheid: datum wanneer dit object ongeldig geworden is,
-* eind_geldigheid_datum: datum wanneer dit object ongeldig geworden is,
-* benoemdobj_identif: koppeling met BAG object,
-* type: perceel of appartement,
-* sectie: -,
-* aanduiding: sectie perceelnummer,
-* aanduiding2: kadgem sectie perceelnummer appartementsindex,
-* perceelnummer: -,
-* appartementsindex: -,
-* gemeentecode: -,
-* aand_soort_grootte: -,
-* grootte_perceel: -,
-* deelperceelnummer: -,
-* omschr_deelperceel: -,
-* aard_cultuur_onbebouwd: -,
-* bedrag: -,
-* koopjaar: -,
-* meer_onroerendgoed: -,
-* valutasoort: -,
-* loc_omschr: adres buiten BAG om meegegeven,
-* overgegaan_in: natuurlijk id van kadastrale onroerende zaak waar dit object in is overgegaan,
-* begrenzing_perceel: perceelvlak
-'
- ;
-
-
-CREATE INDEX mb_kad_onrrnd_zak_archief_overgegaan_in_idx ON mb_kad_onrrnd_zk_archief USING btree (overgegaan_in);
\ No newline at end of file
+-- BRK 1 is verwijderd in versie 5.0.0
\ No newline at end of file
diff --git a/datamodel/extra_scripts/postgresql/301_drop_brk1_tabellen.sql b/datamodel/extra_scripts/postgresql/301_drop_brk1_tabellen.sql
new file mode 100644
index 0000000000..eb5776d97c
--- /dev/null
+++ b/datamodel/extra_scripts/postgresql/301_drop_brk1_tabellen.sql
@@ -0,0 +1,18 @@
+-- verwijder alle BRK1 1.0 tabellen en eventueel views die daarvan gebruik maken
+-- in versie 5.0.0 is de BRK 1 ondersteuning verwijderd
+-- de BRK 1.0 tabellen en views zijn niet meer nodig en kunnen verwijderd worden
+-- verwijderen van BRK 1 gerelateerde views
+set search_path = public;
+
+drop materialized view if exists mb_kad_onrrnd_zk_archief cascade;
+drop materialized view if exists mb_avg_zr_rechth cascade;
+drop materialized view if exists mb_zr_rechth cascade;
+drop view if exists vb_util_zk_recht cascade;
+drop materialized view if exists mb_percelenkaart cascade;
+drop materialized view if exists mb_util_app_re_kad_perceel cascade;
+drop view if exists vb_util_app_re_parent cascade;
+drop view if exists vb_util_app_re_parent_2 cascade;
+drop view if exists vb_util_app_re_parent_3 cascade;
+drop view if exists vb_util_app_re_splitsing cascade;
+drop materialized view if exists mb_avg_subject cascade;
+drop materialized view if exists mb_subject cascade;
\ No newline at end of file
diff --git a/datamodel/generated_scripts/datamodel.xml b/datamodel/generated_scripts/datamodel.xml
index 23ae29637e..04e570a6fc 100644
--- a/datamodel/generated_scripts/datamodel.xml
+++ b/datamodel/generated_scripts/datamodel.xml
@@ -5259,7 +5259,7 @@
-
+
diff --git a/datamodel/src/test/java/nl/b3p/brmo/datamodel/DatabaseUpgradeTest.java b/datamodel/src/test/java/nl/b3p/brmo/datamodel/DatabaseUpgradeTest.java
index 2ecdbf88b4..9bcc4d3763 100644
--- a/datamodel/src/test/java/nl/b3p/brmo/datamodel/DatabaseUpgradeTest.java
+++ b/datamodel/src/test/java/nl/b3p/brmo/datamodel/DatabaseUpgradeTest.java
@@ -73,8 +73,8 @@ public static void getEnvironment() {
LOG.debug("release patch is: " + patch);
previousRelease = nextRelease.substring(0, nextRelease.lastIndexOf(".")) + "." + (patch - 1);
// HACK voor bump
- if (nextRelease.equalsIgnoreCase("4.0.0")) {
- previousRelease = "3.0.2";
+ if (nextRelease.equalsIgnoreCase("5.0.0")) {
+ previousRelease = "4.0.0";
}
LOG.debug("vorige release is: " + previousRelease);
@@ -159,17 +159,8 @@ public void testBasisMViews() throws Exception {
List viewsFound = ViewUtils.listAllMaterializedViews(ds);
assertNotNull(viewsFound, "Geen materialized views gevonden");
- List views =
- Stream.of(
- // brk 1
- "mb_subject",
- "mb_avg_subject",
- "mb_util_app_re_kad_perceel",
- "mb_percelenkaart",
- "mb_zr_rechth",
- "mb_avg_zr_rechth",
- "mb_kad_onrrnd_zk_archief")
- .collect(Collectors.toList());
+ List views = new ArrayList<>();
+
if (this.isPostgis) {
views.addAll(
diff --git a/datamodel/src/test/java/nl/b3p/brmo/datamodel/MaterializedViewsTest.java b/datamodel/src/test/java/nl/b3p/brmo/datamodel/MaterializedViewsTest.java
index 7a353af395..0bace6842b 100644
--- a/datamodel/src/test/java/nl/b3p/brmo/datamodel/MaterializedViewsTest.java
+++ b/datamodel/src/test/java/nl/b3p/brmo/datamodel/MaterializedViewsTest.java
@@ -135,14 +135,6 @@ public void testBasisMViews() throws SQLException {
List views =
Stream.of(
- // brk in rsgb/public
- "mb_subject",
- "mb_avg_subject",
- "mb_util_app_re_kad_perceel",
- "mb_percelenkaart",
- "mb_zr_rechth",
- "mb_avg_zr_rechth",
- "mb_kad_onrrnd_zk_archief",
// bag 2
"mb_adres_bag",
"mb_adresseerbaar_object_geometrie_bag",
diff --git a/datamodel/upgrade_scripts/4.0.0-5.0.0/oracle/rsgb.sql b/datamodel/upgrade_scripts/4.0.0-5.0.0/oracle/rsgb.sql
index 9bab31f4de..f57ea370b6 100644
--- a/datamodel/upgrade_scripts/4.0.0-5.0.0/oracle/rsgb.sql
+++ b/datamodel/upgrade_scripts/4.0.0-5.0.0/oracle/rsgb.sql
@@ -5,6 +5,7 @@
WHENEVER SQLERROR EXIT SQL.SQLCODE
+
-- onderstaande dienen als laatste stappen van een upgrade uitgevoerd
INSERT INTO brmo_metadata (naam,waarde) SELECT 'upgrade_4.0.0_naar_5.0.0','vorige versie was ' || waarde FROM brmo_metadata WHERE naam='brmoversie';
-- versienummer update
diff --git a/datamodel/upgrade_scripts/4.0.0-5.0.0/postgresql/rsgb.sql b/datamodel/upgrade_scripts/4.0.0-5.0.0/postgresql/rsgb.sql
index db5a4ddbd1..4bad56fd41 100644
--- a/datamodel/upgrade_scripts/4.0.0-5.0.0/postgresql/rsgb.sql
+++ b/datamodel/upgrade_scripts/4.0.0-5.0.0/postgresql/rsgb.sql
@@ -2,7 +2,8 @@
-- upgrade PostgreSQL RSGB datamodel van 4.0.0 naar 5.0.0
--
-set search_path = public,bag,brk;
+set search_path = public;
+
-- onderstaande dienen als laatste stappen van een upgrade uitgevoerd