Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

adres-plus-tabel.sql : gebruik VIEW provincie_gemeenteactueelbestaand gebaseerd op extract_datum() #339

Open
justb4 opened this issue Jan 3, 2022 · 1 comment
Labels
Milestone

Comments

@justb4
Copy link
Contributor

justb4 commented Jan 3, 2022

PR #336 heeft de functie extract_datum() geïntroduceerd. De extract datum wordt namelijk uit de BAG leverings-metadata ingelezen in de nlx_bag_info tabel.

Hierdoor kan een BAG levering van een willekeurige datum ingelezen worden waarbij de gemeente_provincie koppeling ook de status van die datum heeft. Herindelingen kunnen op een willekeurig moment ingaan (viz Weesp bij A'dam ergens in 2022)

De VIEW provincie_gemeenteactueel in adres-plus-tabel.sql maakt nog geen gebruik van extract_datum(). Dit zou veranderd kunnen worden met de volgende definitie:

CREATE OR REPLACE VIEW provincie_gemeenteactueel AS
       SELECT
              provinciecode,
              provincienaam,
              gemeentecode,
              gemeentenaam,
              begindatum,
              einddatum
              FROM bagactueel.provincie_gemeente
              WHERE begindatum <= extract_datum() AND (einddatum IS NULL OR einddatum >= extract_datum());

Feitelijk zou adres-plus-tabel.sql gewoon de bestaande VIEW provincie_gemeenteactueelbestaand kunnen gebruiken. Deze heeft dezelfde definitie als hierboven provincie_gemeenteactueel.

Benieuwd hoe @PeeWeeOSM en @sebastic hier tegenaan kijken...

@justb4 justb4 added this to the Versie 1.5.4 milestone Jan 3, 2022
@sebastic
Copy link
Contributor

sebastic commented Jan 3, 2022

Disclaimer: De adres-plus tabel gebruik ik persoonlijk niet.

Uit adres-tabel-plus.sql:

--  In de view provincie_gemeenteactueebestaand ontbreken begin van het jaar de gemeentes die ophouden te bestaan op de eerste van het jaar. Als dit script gedraaid wordt begin januari gebaseerd op een postgis dump van december
-- dan ontbreken opeens die gemeentes. Om dat te voorkomen maak ik een view provincie_gemeenteactueel

Dit is oplost met de changes in #336, dus de provincie_gemeenteactueel VIEW kan verwijderd worden en het gebruik daarvan vervangen door de gebruikelijke provincie_gemeenteactueelbestaand VIEW.

Deze patch is waarschijnlijk voldoende:

diff --git a/bagv2/etl/sql/adres/adres-tabel-plus.sql b/bagv2/etl/sql/adres/adres-tabel-plus.sql
index 797a8827..3adab10c 100644
--- a/bagv2/etl/sql/adres/adres-tabel-plus.sql
+++ b/bagv2/etl/sql/adres/adres-tabel-plus.sql
@@ -131,17 +131,6 @@ COMMIT;
 
 
 BEGIN;
---  In de view provincie_gemeenteactueebestaand ontbreken begin van het jaar de gemeentes die ophouden te bestaan op de eerste van het jaar. Als dit script gedraaid wordt begin januari gebaseerd op een postgis dump van december
--- dan ontbreken opeens die gemeentes. Om dat te voorkomen maak ik een view provincie_gemeenteactueel
-SELECT PRINT_NOTICE('start: 2 provincie_gemeenteactueel: '||current_time);
-DROP VIEW IF EXISTS provincie_gemeenteactueel cascade;
-CREATE OR REPLACE VIEW provincie_gemeenteactueel as
-select a.* from (
- SELECT
-   -- 20210129: RANK functie vervangen door row_num
-    pg.*,     row_number() OVER (PARTITION BY gemeentecode ORDER BY  pg.einddatum desc nulls first) as Rangorde
-    FROM provincie_gemeente pg) A
-   where Rangorde =1;
 /*
 --- Per woonplaats, gemeente en provincie een aantal gegevens vaststellen die we later voor adres gegevens.
 --- de lon. lat bepalen adhv  gemiddelde per VBO. Dit omdat de centroid van een geovlak nog wel eens in de zee c.q. markermeer wil belanden.
@@ -162,7 +151,7 @@ FROM
   openbareruimteactueelbestaand OBR,
   verblijfsobjectactueelbestaand VBO,
   gemeente_woonplaatsactueelbestaand GEM_WPL,
-  provincie_gemeenteactueel  PRV,
+  provincie_gemeenteactueelbestaand PRV,
   woonplaatsactueelbestaand WPL
 WHERE
   NAD.gerelateerdeopenbareruimte = OBR.identificatie AND

@justb4 justb4 modified the milestones: Versie 1.5.4, Versie 1.6.0 Jan 9, 2023
@justb4 justb4 modified the milestones: Versie 1.5.5, Versie 1.6.0 Nov 17, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants