Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

GeoDataDays 2025

#1 Fri 27 September 2024 12:04

p.robledo
Juste Inscrit !
Date d'inscription: 28 Sep 2009
Messages: 7

Reconstituer numéro de parcelle cadastrale dans Sitadel

Bonjour,

Je cherche à reconstituer les identifiants de parcelles au sein de la table Sitadel / logements, pour effectuer ensuite une jointure avec le parcellaire cadastral.

Ci-après la requête SQL qui fonctionne mais à la jointure je perds 40% des lignes du fichier Sitadel, donc je dois mal paramétrer la concaténation...

Si quelqu'un s'y est essayé avec succès, je suis bien preneur de la requête et des éventuelles explications qui vont avec smile

Grand merci,

Paul

--

UPDATE table_sitadel
SET
    idpar1 = CASE
        WHEN sec_cadastre1 IS NULL OR sec_cadastre1 = '' THEN ''
        ELSE CONCAT("Code de la commune du lieu des travaux", '000', sec_cadastre1,
                     CASE
                         WHEN RIGHT(num_cadastre1, 1) ~ '[A-Za-z]' THEN
                             RIGHT(LPAD(num_cadastre1, 5, '0'), 5)  -- 5 derniers caractères si termine par une lettre
                         ELSE
                             RIGHT(LPAD(num_cadastre1, 4, '0'), 4)   -- 4 derniers caractères si ne termine pas par une lettre
                     END
                    )
    END,
   
    idpar2 = CASE -- il y a jusqu'à trois parcelles concernées par une autorisation d'urbanisme dans Sitadel
        WHEN sec_cadastre2 IS NULL OR sec_cadastre2 = '' THEN ''
        ELSE CONCAT("Code de la commune du lieu des travaux", '000', sec_cadastre2,
                     CASE
                         WHEN RIGHT(num_cadastre2, 1) ~ '[A-Za-z]' THEN
                             RIGHT(LPAD(num_cadastre2, 5, '0'), 5)  -- 5 derniers caractères si termine par une lettre
                         ELSE
                             RIGHT(LPAD(num_cadastre2, 4, '0'), 4)   -- 4 derniers caractères si ne termine pas par une lettre
                     END
                    )
    END,
   
    idpar3 = CASE
        WHEN sec_cadastre3 IS NULL OR sec_cadastre3 = '' THEN ''
        ELSE CONCAT("Code de la commune du lieu des travaux", '000', sec_cadastre3,
                     CASE
                         WHEN RIGHT(num_cadastre3, 1) ~ '[A-Za-z]' THEN
                             RIGHT(LPAD(num_cadastre3, 5, '0'), 5)  -- 5 derniers caractères si termine par une lettre
                         ELSE
                             RIGHT(LPAD(num_cadastre3, 4, '0'), 4)   -- 4 derniers caractères si ne termine pas par une lettre
                     END
                    )
    END
;

Dernière modification par p.robledo (Fri 27 September 2024 12:06)

Hors ligne

 

#2 Fri 27 September 2024 13:22

AlineC
Membre du bureau
Lieu: AVIGNON
Date d'inscription: 5 Sep 2005
Messages: 2204
Site web

Re: Reconstituer numéro de parcelle cadastrale dans Sitadel

Bonjour,

-Est ce que tu peux extraire quelques exemples d'éléments issus de Sitadel ? cuex qui jointent, ceux qui jointent pas ?
-Est ce que ce n'est pas lié à des codes sections qui ne seraient pas sur 2 caractères ?
-Avec quelles données tu jointe ? (majic d'origine ?) et pareil quelques exemples d'id parcelles ?

Je ne comprend pas cette partie ?  RIGHT(LPAD(num_cadastre3, 4, '0'), 4)   -- 4 derniers caractères si ne termine pas par une lettre ?

A +

Hors ligne

 

#3 Tue 08 October 2024 17:24

p.robledo
Juste Inscrit !
Date d'inscription: 28 Sep 2009
Messages: 7

Re: Reconstituer numéro de parcelle cadastrale dans Sitadel

Bonjour Aline,

Merci pour ta réponse. J'ai pris le temps d'analyser les différents cas de figure quant aux modalités de renseignement des sections et numéros de parcelles dans la base Sitadel (des codes sections à 1 caractère notamment, en effet), et en "normalisant" (corrigeant) au maximum, je récupère après jointure avec les Fichiers fonciers 70% de Sitadel logement et 80% de Sitadel locaux. Je vais essayer de peaufiner encore davantage sans garantie de résultat.

Paul

Hors ligne

 

#4 Wed 09 October 2024 08:46

AlineC
Membre du bureau
Lieu: AVIGNON
Date d'inscription: 5 Sep 2005
Messages: 2204
Site web

Re: Reconstituer numéro de parcelle cadastrale dans Sitadel

Coucou Paul,
Peut-être serait il intéressant d'avoir une idée des différents types de cas où la jointure ne se fait ?
A +

Hors ligne

 

#5 Fri 15 November 2024 14:38

p.robledo
Juste Inscrit !
Date d'inscription: 28 Sep 2009
Messages: 7

Re: Reconstituer numéro de parcelle cadastrale dans Sitadel

Bonjour Aline,
Navré pour la réponse tardive :
Voici la requête qui fait apparaitre les différentes corrections lors de la concaténation de l'identifiant parcellaire. Je ne suis pas certain d'avoir repéré tous les cas de figures mais ça couvre déjà pas mal.
A +
Paul

--

CONCAT("Code de la commune du lieu des travaux", '000',
                     CASE
                         -- Inverser si sec_cadastre1 a 2 caractères (lettre et zéro) et num_cadastre1 contient 4 chiffres et éventuellement une lettre
                         WHEN LENGTH(sec_cadastre1) = 2
                              AND LEFT(sec_cadastre1, 1) ~ '[A-Za-z]'
                              AND RIGHT(sec_cadastre1, 1) = '0'
                              AND LENGTH(num_cadastre1) >= 4
                              AND num_cadastre1 ~ '^[0-9]{4}([A-Za-z])?$' THEN
                             CONCAT('0',LEFT(sec_cadastre1, 1))  -- Inverser les caractères
                         -- Inverser si sec_cadastre1 a 2 caractères (un zéro et une lettre)
                         WHEN LENGTH(sec_cadastre1) = 2
                              AND LEFT(sec_cadastre1, 1) = '0'
                              AND RIGHT(sec_cadastre1, 1) ~ '[A-Za-z]' THEN
                             CONCAT(RIGHT(sec_cadastre1, 1), '0')  -- Inverser les caractères
                         -- Ajouter un zéro si un seul caractère
                         WHEN LENGTH(sec_cadastre1) = 1 THEN CONCAT('0', sec_cadastre1)
                         ELSE sec_cadastre1
                     END,
                     CASE
                         WHEN RIGHT(num_cadastre1, 1) ~ '[A-Za-z]' THEN
                             RIGHT(LPAD(num_cadastre1, 5, '0'), 5)  -- 5 derniers caractères si termine par une lettre
                         ELSE
                             RIGHT(LPAD(num_cadastre1, 4, '0'), 4)   -- 4 derniers caractères si ne termine pas par une lettre
                     END
                    )

Hors ligne

 

#6 Fri 15 November 2024 16:57

AlineC
Membre du bureau
Lieu: AVIGNON
Date d'inscription: 5 Sep 2005
Messages: 2204
Site web

Re: Reconstituer numéro de parcelle cadastrale dans Sitadel

Coucou,
pourrais-tu rajouter des exemples ou la jointure ne se fait pas ?

Hors ligne

 

#7 Fri 15 November 2024 17:29

tumasgiu
Membre
Lieu: Ajaccio
Date d'inscription: 5 Jul 2010
Messages: 1201

Re: Reconstituer numéro de parcelle cadastrale dans Sitadel

Salut,

de ce que je vois en utilisant l'api ( https://www.statistiques.developpement- … 50f974446a ), les colonnes relatives aux réferences cadastrales n'ont pas de contrainte à la saisie, j'ai par exemple trouvé des lignes ou la section est renseignée "000" et se trouve en fait dans le numero de parcelle.

Je vous conseille de réaliser une requête du genre :

Code:

SELECT 
    sec, num, count(*)
FROM (
    SELECT sec_cadastre1, num_cadastre1
    FROM table_sitadel
    UNION 
    SELECT sec_cadastre2, num_cadastre2
    FROM table_sitadel
    UNION
    SELECT sec_cadastre3, num_cadastre3
    FROM table_sitadel
) t(sec,num)
GROUP BY 
   sec, num
order by sec, num
;

Ainsi vous aurez une occurence de chaque combinaison des colonnes section et numero, ce qui vous permettra d'essayer de traiter tous les cas (pas sûr) .
Il ne faut pas prendre en compte également le millésime de vos données cadastrales : des parcelles mentionnées au fichier sitadel peuvent avoir disparues (regroupement de parcelles, divisions...)

Hors ligne

 

#8 Fri 15 November 2024 17:38

AlineC
Membre du bureau
Lieu: AVIGNON
Date d'inscription: 5 Sep 2005
Messages: 2204
Site web

Re: Reconstituer numéro de parcelle cadastrale dans Sitadel

je viens de faire un essai sur mon territoire (test sur le vaucluse) et c'est plutôt bien rempli
dans mon cas j'aurais juste à faire : CONCAT (SEC_CADASTRE1,LPAD(NUM_CADASTRE1,4,'0")) ou quelque chose s'approchant

je ne vois pas l'intérêt d'inverser la section cadastrale s'il y a un zéro, il peut tout à fait y avoir un zéro en début

si je sais sur quel échantillon de données tu travaille je pourrais peut-être un peu plus t'aider ?

Hors ligne

 

#9 Fri 15 November 2024 17:49

tumasgiu
Membre
Lieu: Ajaccio
Date d'inscription: 5 Jul 2010
Messages: 1201

Re: Reconstituer numéro de parcelle cadastrale dans Sitadel

Apparemment, il y aurait des cas ou la section est du genre "A0".
Pour simplifier le code on peut écrire

Code:

lpad(rtrim(sec_cadastre1, '0'), 2, '0')

Pour avoir une section normalisée sur deux caractères, même si les colonnes de section sont censées pouvoir en avoir 3 (?) selon la documentation.

Hors ligne

 

#10 Fri 15 November 2024 17:51

tumasgiu
Membre
Lieu: Ajaccio
Date d'inscription: 5 Jul 2010
Messages: 1201

Re: Reconstituer numéro de parcelle cadastrale dans Sitadel

Il y a meme des section du type A01 : https://data.statistiques.developpement … ontains:A0

Ce qui peut peut être indiquer :  Section A feuille de plan 1

Dernière modification par tumasgiu (Fri 15 November 2024 17:53)

Hors ligne

 

#11 Fri 15 November 2024 18:25

AlineC
Membre du bureau
Lieu: AVIGNON
Date d'inscription: 5 Sep 2005
Messages: 2204
Site web

Re: Reconstituer numéro de parcelle cadastrale dans Sitadel

A mon sens ia section ne peut être que sur 2 caractères
Mais oui il peut y avoir un préfixe de section que je ne rencontre pas sur mon territoire parce qu'il n'y a pas eu de fusions de communes notamment.
Je me réfère toujours à ce récap que j'avais rédigé avec l'aide de jean-michel sur parcell'air :
https://blog.georezo.net/parcellair/201 … tre-suite/

Dans ton exemple Tumasgiu le préfixe serait après, bizarre !
peut-être faudrait il d'abord rassemble tout pour le redécouper ...

En tous cas pour approfondir, je pense que la seule solution est de vérifier avec quelques exemples en essayant de trouver la "bonne" référence parcellaire avec différents cas de figure

Hors ligne

 

#12 Fri 15 November 2024 18:43

AlineC
Membre du bureau
Lieu: AVIGNON
Date d'inscription: 5 Sep 2005
Messages: 2204
Site web

Re: Reconstituer numéro de parcelle cadastrale dans Sitadel

Dans les exemples que tu a repéré Tumasgiu, en cherchant sur le cadastre ils sont tous présentés en A (sans complément) et le chiffre
Donc je retiendrais quand il y a trois caractères les 2 premiers ... à tester

Hors ligne

 

#13 Mon 18 November 2024 11:00

tumasgiu
Membre
Lieu: Ajaccio
Date d'inscription: 5 Jul 2010
Messages: 1201

Re: Reconstituer numéro de parcelle cadastrale dans Sitadel

AlineC a écrit:

Dans ton exemple Tumasgiu le préfixe serait après, bizarre !


Non je ne pense pas que ce soit le prefixe de section (code de commune fusionnée) mais le numéro de la planche cadastrale.

Hors ligne

 

#14 Mon 18 November 2024 16:51

ChristopheV
Membre
Lieu: Ajaccio
Date d'inscription: 7 Sep 2005
Messages: 3210
Site web

Re: Reconstituer numéro de parcelle cadastrale dans Sitadel

Bonjour,

Le codage des références cadastrales dans SITADEL est aléatoire et ne respecte pas la "norme".

La norme qui est :
code insee sur trois caractères
Code de commune fusionnée : trois caractère default : '000'
Deux lettre de section soit '0A' pour les simple lettre ou zéro || A (et pas un O la lettre)
Pas de numéro de feuille (01, 02 etc)
Numéro de parcelle sur 4 digits : soit '0001' à '9999'

Après même la DGFiP dans ses propres données ne respecte pas toujours cette norme.

Vous me rétorquerez aussi que pour les nouveaux DA dans le géofoncier on demande le numéro de feuille dans la section, ce qui est une aberration, mais nous ne sommes plus à une bêtise près.

La norme que je cite est celle de la désignation d'un bien immeuble dans un acte destiné à la publication au SPF. (Décret sur la publicité foncière de juin 1955).


Christophe
L'avantage d'être une île c'est d'être une terre topologiquement close

Hors ligne

 

#15 Mon 30 June 2025 14:29

Elise
Participant assidu
Lieu: Argentat (19)
Date d'inscription: 16 Oct 2005
Messages: 574
Site web

Re: Reconstituer numéro de parcelle cadastrale dans Sitadel

Bonjour,

J'ai cherché à faire la même chose que Paul : reconstituer un identifiant "parcelle" dans les fichiers sitadel pour créer une jointure avec le cadastre de la dgfip.
Ne maitrisant pas du tout l'écriture des requêtes, voici comment j'ai procédé :

- pour les données sitadel, j'ai reconstitué une colonne 'id' dans le fichier tableur téléchargé qui comprend [code insee de la commune]+[4 caractères pour la section]+[4 caractères pour le numéro de parcelle]
- j'ai corrigé manuellement les numéros de parcelle : lettres en minuscule en fin de chaine supprimées et remplacées par un "0" en début de chaine
- j'ai remplacé partout les lettres "O" dans les numéros de sections par le chiffre "0" (il n'y à pas de lettre "O" dans les fichiers de la dgfip (enfin, il me semble!)

- pour le cadastre dgfip, j'ai reconstitué ce même identifiant en recréant 4 colonnes pour avoir de manière indépendante : [5 caractères pour le code insee de la commune]+[4 caractères pour la section]+[4 caractères pour le numéro de parcelle] et 1 colonne id qui concatène les 3 précédentes (comm, sec_eh, parc_eh et id).

Dans mon exemple, j'ai 652 lignes pour des logements dans mon fichier sitadel (je fais ensuite la même chose pour les locaux et les démolitions), malheureusement, la jointure ne permets de reconnaitre que 468 PC ou PA. Et pour le locaux, 195 ont été reconnus sur 238.

Je n'ai pas encore regardé les lignes de PC/PA qui n'ont pas été prises en compte, mais sans doute qu'une bonne partie viens du fait que les parcelles ont pu être redécoupées et donc que je n'ai pas le bon numéro de parcelle dans la dernière version que j'utilise des fichiers dgfip (pourtant du 1/4/2025).

Pour s'inspirer ou pour proposer des améliorations dans la démarche, mes tables sont ici : https://geoscope.fr/nextcloud/index.php … ejyEARfWJ8

Bonne journée.


Géoscope

Hors ligne

 

#16 Mon 30 June 2025 16:48

christian
Participant assidu
Lieu: Isère
Date d'inscription: 20 Sep 2005
Messages: 208
Site web

Re: Reconstituer numéro de parcelle cadastrale dans Sitadel

Elise a écrit:

Je n'ai pas encore regardé les lignes de PC/PA qui n'ont pas été prises en compte, mais sans doute qu'une bonne partie viens du fait que les parcelles ont pu être redécoupées et donc que je n'ai pas le bon numéro de parcelle dans la dernière version que j'utilise des fichiers dgfip (pourtant du 1/4/2025).


Les references parcellaires d'urbanisme
1) peuvent être des réferences qui n'existeront jamais (cas d'une demande de division qui n'aboutira pas) ou pas encore (non validés par la ex-conservation des hypothèque)
2) peuvent être des références qui n'existent plus parfois depuis des decennies surtout avant la modification du code de l'urbanisme de 2016

et ce, même quand elles sont codifiées d'ue manière compréhensible ou sans coquille (un D se transformant en 0, un S en 5 ...)

bon courage si vous n'avez pas un historique parcellaire mais pas que wink

Hors ligne

 

#17 Mon 30 June 2025 17:10

Elise
Participant assidu
Lieu: Argentat (19)
Date d'inscription: 16 Oct 2005
Messages: 574
Site web

Re: Reconstituer numéro de parcelle cadastrale dans Sitadel

christian a écrit:

bon courage si vous n'avez pas un historique parcellaire mais pas que wink


Merci pour l'éclairage, je comprends !
La seule solution, dans mon cas, c'est... à la mano :-(
Ce que je fais de tout façon dans un second temps pour "fabriquer" ma couche "consommation d'espace" de manière à ce qu'elle soit la plus proche de la réalité (ajout/suppression d'emprise). Le croisement sitadel, c'est quand même un premier gain de temps.

Bien cordialement.


Géoscope

Hors ligne

 

#18 Wed 02 July 2025 07:32

Bruno
Membre du bureau
Lieu: Toulouse
Date d'inscription: 22 Jun 2005
Messages: 12239
Site web

Re: Reconstituer numéro de parcelle cadastrale dans Sitadel

Bonjour Elise,

Ce fournisseur de systèmes semble avoir fait le tour d'un certain nombre de limites dans les usages des données SITADEL:
https://www.sogefi-sig.com/la-donnee-ge … e/sitadel/

Bonne journée!

Hors ligne

 

Pied de page des forums

Copyright Association GeoRezo