<?xml version="1.0" encoding="utf-8"?>
<!-- generator="FeedCreator 1.7.2-ppt DokuWiki" -->
<?xml-stylesheet href="http://sig.cenlr.org/lib/exe/css.php?s=feed" type="text/css"?>
<rss version="2.0">
    <channel>
        <title>Présentation du&lt;br/&gt;&lt;br/&gt;Système d'Information creation_bdd:fonctions</title>
        <description></description>
        <link>http://sig.cenlr.org/</link>
        <lastBuildDate>Sun, 26 Apr 2026 11:03:35 +0200</lastBuildDate>
        <generator>FeedCreator 1.7.2-ppt DokuWiki</generator>
        <image>
            <url>http://sig.cenlr.org/lib/images/favicon.ico</url>
            <title>Présentation du&lt;br/&gt;&lt;br/&gt;Système d'Information</title>
            <link>http://sig.cenlr.org/</link>
        </image>
        <item>
            <title>creation_bdd:fonctions:cendiffnodes</title>
            <link>http://sig.cenlr.org/creation_bdd/fonctions/cendiffnodes</link>
            <description>&lt;div class=&quot;tags&quot;&gt;&lt;span&gt;
	&lt;a href=&quot;http://sig.cenlr.org/tag/postgis?do=showtag&amp;amp;tag=PostGIS&quot; class=&quot;wikilink1&quot; title=&quot;tag:postgis&quot; rel=&quot;tag&quot;&gt;PostGIS&lt;/a&gt;,
	&lt;a href=&quot;http://sig.cenlr.org/tag/plpgsql?do=showtag&amp;amp;tag=plpgsql&quot; class=&quot;wikilink1&quot; title=&quot;tag:plpgsql&quot; rel=&quot;tag&quot;&gt;plpgsql&lt;/a&gt;,
	&lt;a href=&quot;http://sig.cenlr.org/tag/dblink?do=showtag&amp;amp;tag=dblink&quot; class=&quot;wikilink1&quot; title=&quot;tag:dblink&quot; rel=&quot;tag&quot;&gt;dblink&lt;/a&gt;,
	&lt;a href=&quot;http://sig.cenlr.org/tag/topologie?do=showtag&amp;amp;tag=topologie&quot; class=&quot;wikilink1&quot; title=&quot;tag:topologie&quot; rel=&quot;tag&quot;&gt;topologie&lt;/a&gt;
&lt;/span&gt;&lt;/div&gt;

&lt;h1 class=&quot;sectionedit1&quot;&gt;&lt;a name=&quot;affichage_des_nœuds_non_communs_entre_2_geometries&quot; id=&quot;affichage_des_nœuds_non_communs_entre_2_geometries&quot;&gt;Affichage des nœuds non communs entre 2 géométries&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT1 SECTION &quot;Affichage des nœuds non communs entre 2 géométries&quot; [42-110] --&gt;
&lt;h3 class=&quot;sectionedit2&quot;&gt;&lt;a name=&quot;problematique&quot; id=&quot;problematique&quot;&gt;Problèmatique&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;

Une table de la base de données contient des périmètres ZNIEFF, de type 1 et de type type 2.
Les périmètres de type 1 peuvent être inclus dans une znieff de type 2. Si cette inclusion existe, elle est forcément totale.
&lt;/p&gt;

&lt;p&gt;
Le problème rencontré est la nécessité de corriger les géométries des znieff de type 1 qui devraient être jointives sur une partie de leur contour avec une type 2.
&lt;/p&gt;

&lt;p&gt;
La requête ci dessous permet d&amp;#039;afficher les nœuds de la géométrie de la znieff de type 1 non communs avec les nœuds de la géométrie de la ZNIEFF de type 2.
&lt;/p&gt;

&lt;p&gt;
La version de PostGIS de la base de données utilisée en production ne propose pas certaines fonctions que nous souhaitons utiliser. C&amp;#039;est pourquoi nous utilisons dblink, afin d&amp;#039;utiliser les données de la base de productiona avec la base en développement (PostGIS 1.5).
&lt;/p&gt;

&lt;p&gt;
Intégrer cette fonctionnalité à une fonction :

&lt;/p&gt;
&lt;pre class=&quot;code sql&quot;&gt;&lt;span class=&quot;kw1&quot;&gt;TRUNCATE&lt;/span&gt; point_a_corriger;
&lt;span class=&quot;kw1&quot;&gt;INSERT&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;INTO&lt;/span&gt; point_a_corriger 
&amp;nbsp;
&lt;span class=&quot;coMULTI&quot;&gt;/* affiche tous les points non communs entre deux géométrie et distant de moins de x mètre de la seconde */&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;kw1&quot;&gt;SELECT&lt;/span&gt; row_number&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; over&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt; geom &lt;span class=&quot;kw1&quot;&gt;AS&lt;/span&gt; geometrie
&lt;span class=&quot;kw1&quot;&gt;FROM&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;
&lt;span class=&quot;kw1&quot;&gt;SELECT&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;ST_DumpPoints&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;geometrie&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.*&lt;/span&gt;
&lt;span class=&quot;kw1&quot;&gt;FROM&lt;/span&gt; dblink&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'dbname=znieff port=5432 host=192.168.1.40 user=dba password=dbroot'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;'select id_znieff, geometrie from znieff_validees where id_znieff=1081'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
&lt;span class=&quot;kw1&quot;&gt;AS&lt;/span&gt; znieff&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;id integer&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt; geometrie geometry&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; sub
&lt;span class=&quot;kw1&quot;&gt;WHERE&lt;/span&gt; ST_ASText&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;geom&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;NOT&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;IN&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;
&lt;span class=&quot;kw1&quot;&gt;SELECT&lt;/span&gt; ST_ASText&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;geom&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;AS&lt;/span&gt; a
&lt;span class=&quot;kw1&quot;&gt;FROM&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;
&lt;span class=&quot;kw1&quot;&gt;SELECT&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;ST_DumpPoints&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;geometrie&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.*&lt;/span&gt;
&lt;span class=&quot;kw1&quot;&gt;FROM&lt;/span&gt; dblink&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'dbname=znieff port=5432 host=192.168.1.40 user=dba password=dbroot'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;'select id_znieff, geometrie from znieff_validees where id_znieff=930'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
&lt;span class=&quot;kw1&quot;&gt;AS&lt;/span&gt; znieff&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;id integer&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt; geometrie geometry&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; sub2&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT2 SECTION &quot;Problèmatique&quot; [111-] --&gt;</description>
        <category>PostGIS</category>
        <category>plpgsql</category>
        <category>dblink</category>
        <category>topologie</category>
            <pubDate>Sun, 07 Aug 2011 20:14:56 +0200</pubDate>
        </item>
        <item>
            <title>creation_bdd:fonctions:ceninsertionligneflore</title>
            <link>http://sig.cenlr.org/creation_bdd/fonctions/ceninsertionligneflore</link>
            <description></description>
        <category>creation_bdd:fonctions</category>
            <pubDate>Sat, 06 Feb 2010 13:21:45 +0200</pubDate>
        </item>
        <item>
            <title>creation_bdd:fonctions:ceninsertionperimetrefaune</title>
            <link>http://sig.cenlr.org/creation_bdd/fonctions/ceninsertionperimetrefaune</link>
            <description></description>
        <category>creation_bdd:fonctions</category>
            <pubDate>Sat, 06 Feb 2010 13:21:45 +0200</pubDate>
        </item>
        <item>
            <title>creation_bdd:fonctions:ceninsertionperimetreflore</title>
            <link>http://sig.cenlr.org/creation_bdd/fonctions/ceninsertionperimetreflore</link>
            <description></description>
        <category>creation_bdd:fonctions</category>
            <pubDate>Sat, 06 Feb 2010 13:21:46 +0200</pubDate>
        </item>
        <item>
            <title>creation_bdd:fonctions:ceninsertionperimetrehabitat</title>
            <link>http://sig.cenlr.org/creation_bdd/fonctions/ceninsertionperimetrehabitat</link>
            <description></description>
        <category>creation_bdd:fonctions</category>
            <pubDate>Sat, 06 Feb 2010 13:21:46 +0200</pubDate>
        </item>
        <item>
            <title>creation_bdd:fonctions:ceninsertionpointfaune</title>
            <link>http://sig.cenlr.org/creation_bdd/fonctions/ceninsertionpointfaune</link>
            <description></description>
        <category>creation_bdd:fonctions</category>
            <pubDate>Sat, 06 Feb 2010 13:21:46 +0200</pubDate>
        </item>
        <item>
            <title>creation_bdd:fonctions:ceninsertionpointflore</title>
            <link>http://sig.cenlr.org/creation_bdd/fonctions/ceninsertionpointflore</link>
            <description></description>
        <category>creation_bdd:fonctions</category>
            <pubDate>Sat, 06 Feb 2010 13:21:46 +0200</pubDate>
        </item>
        <item>
            <title>creation_bdd:fonctions:ceninsertionpointhabitat</title>
            <link>http://sig.cenlr.org/creation_bdd/fonctions/ceninsertionpointhabitat</link>
            <description></description>
        <category>creation_bdd:fonctions</category>
            <pubDate>Sat, 06 Feb 2010 13:21:46 +0200</pubDate>
        </item>
        <item>
            <title>creation_bdd:fonctions:cenlistestructureauteurese</title>
            <link>http://sig.cenlr.org/creation_bdd/fonctions/cenlistestructureauteurese</link>
            <description></description>
        <category>creation_bdd:fonctions</category>
            <pubDate>Sat, 06 Feb 2010 13:21:46 +0200</pubDate>
        </item>
        <item>
            <title>creation_bdd:fonctions:cenlistestructurefinanceetude</title>
            <link>http://sig.cenlr.org/creation_bdd/fonctions/cenlistestructurefinanceetude</link>
            <description></description>
        <category>creation_bdd:fonctions</category>
            <pubDate>Sat, 06 Feb 2010 13:21:47 +0200</pubDate>
        </item>
        <item>
            <title>creation_bdd:fonctions:code_taxon_europeen</title>
            <link>http://sig.cenlr.org/creation_bdd/fonctions/code_taxon_europeen</link>
            <description>&lt;div class=&quot;tags&quot;&gt;&lt;span&gt;
	&lt;a href=&quot;http://sig.cenlr.org/tag/postgresql?do=showtag&amp;amp;tag=PostgreSQL&quot; class=&quot;wikilink1&quot; title=&quot;tag:postgresql&quot; rel=&quot;tag&quot;&gt;PostgreSQL&lt;/a&gt;,
	&lt;a href=&quot;http://sig.cenlr.org/tag/plpython?do=showtag&amp;amp;tag=plpython&quot; class=&quot;wikilink1&quot; title=&quot;tag:plpython&quot; rel=&quot;tag&quot;&gt;plpython&lt;/a&gt;,
	&lt;a href=&quot;http://sig.cenlr.org/tag/inspire?do=showtag&amp;amp;tag=INSPIRE&quot; class=&quot;wikilink1&quot; title=&quot;tag:inspire&quot; rel=&quot;tag&quot;&gt;INSPIRE&lt;/a&gt;,
	&lt;a href=&quot;http://sig.cenlr.org/tag/soap?do=showtag&amp;amp;tag=SOAP&quot; class=&quot;wikilink1&quot; title=&quot;tag:soap&quot; rel=&quot;tag&quot;&gt;SOAP&lt;/a&gt;,
	&lt;a href=&quot;http://sig.cenlr.org/tag/species?do=showtag&amp;amp;tag=species&quot; class=&quot;wikilink1&quot; title=&quot;tag:species&quot; rel=&quot;tag&quot;&gt;species&lt;/a&gt;
&lt;/span&gt;&lt;/div&gt;

&lt;h1 class=&quot;sectionedit3&quot;&gt;&lt;a name=&quot;connaitre_le_code_europeen_d_un_taxon&quot; id=&quot;connaitre_le_code_europeen_d_un_taxon&quot;&gt;Connaitre le code européen d&amp;#039;un taxon&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;div class=&quot;box round red&quot; style=&quot;width: 100%; &quot;&gt;
  &lt;b class='xtop'&gt;&lt;b class='xb1'&gt;&lt;/b&gt;&lt;b class='xb2'&gt;&lt;/b&gt;&lt;b class='xb3'&gt;&lt;/b&gt;&lt;b class='xb4'&gt;&lt;/b&gt;&lt;/b&gt;
  &lt;div class='xbox'&gt;
&lt;div class='box_content'&gt;
&lt;strong&gt;Merci à tous de partager les améliorations que vous apporteriez sur cette fonction&lt;/strong&gt;
&lt;/div&gt;
  &lt;/div&gt;
  &lt;b class='xbottom'&gt;&lt;b class='xb4'&gt;&lt;/b&gt;&lt;b class='xb3'&gt;&lt;/b&gt;&lt;b class='xb2'&gt;&lt;/b&gt;&lt;b class='xb1'&gt;&lt;/b&gt;&lt;/b&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Service &lt;acronym title=&quot;Simple Object Access Protocol&quot;&gt;SOAP&lt;/acronym&gt; utilisé : &lt;a href=&quot;http://www.eu-nomen.eu/portal/soap.php&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.eu-nomen.eu/portal/soap.php&quot;  rel=&quot;nofollow&quot;&gt;http://www.eu-nomen.eu/portal/soap.php&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Conditions d&amp;#039;utilisation : non mentionnées par le fournisseur du service&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT3 SECTION &quot;Connaitre le code européen d'un taxon&quot; [50-364] --&gt;
&lt;h3 class=&quot;sectionedit4&quot;&gt;&lt;a name=&quot;creation_de_la_fonction_dans_le_schema_outils&quot; id=&quot;creation_de_la_fonction_dans_le_schema_outils&quot;&gt;Création de la fonction dans le schéma &amp;quot;outils&amp;quot;&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;pre class=&quot;code sql&quot;&gt;&lt;span class=&quot;kw1&quot;&gt;CREATE&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;OR&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;FUNCTION&lt;/span&gt; outils&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;eu_nomen_taxa_code&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;scientific_name&amp;quot;&lt;/span&gt; text&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
  RETURNS text &lt;span class=&quot;kw1&quot;&gt;AS&lt;/span&gt;
$BODY$
import urllib2;
import httplib;
&lt;span class=&quot;kw1&quot;&gt;FROM&lt;/span&gt; urllib import urlencode
&lt;span class=&quot;kw1&quot;&gt;FROM&lt;/span&gt; urllib2 import Request&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt; urlopen
&amp;nbsp;
# définition de l&lt;span class=&quot;st0&quot;&gt;'URL du service
url = '&lt;/span&gt;http:&lt;span class=&quot;sy0&quot;&gt;//&lt;/span&gt;www&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;eu&lt;span class=&quot;sy0&quot;&gt;-&lt;/span&gt;nomen&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;eu&lt;span class=&quot;sy0&quot;&gt;/&lt;/span&gt;portal&lt;span class=&quot;sy0&quot;&gt;/&lt;/span&gt;soap&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;php&lt;span class=&quot;st0&quot;&gt;'
&amp;nbsp;
# les données SOAP à poster au service
postdata='&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;&amp;lt;&lt;/span&gt;?xml version&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;1.0&amp;quot;&lt;/span&gt; encoding&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;UTF-8&amp;quot;&lt;/span&gt; standalone&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;yes&amp;quot;&lt;/span&gt;?&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&amp;lt;&lt;/span&gt;soap:Envelope  xmlns:soap&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;http://schemas.xmlsoap.org/soap/envelope/&amp;quot;&lt;/span&gt; soap:encodingStyle&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;http://www.w3.org/2001/12/soap-encoding&amp;quot;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&amp;lt;&lt;/span&gt;soap:Header&lt;span class=&quot;sy0&quot;&gt;/&amp;gt;&amp;lt;&lt;/span&gt;soap:Body&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&amp;lt;&lt;/span&gt;getGUID xmlns&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;http://PESI/v0.1&amp;quot;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&amp;lt;&lt;/span&gt;scientificname&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'+scientific_name+'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;&amp;lt;/&lt;/span&gt;scientificname&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&amp;lt;/&lt;/span&gt;getGUID&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&amp;lt;&lt;/span&gt;soap:Fault&lt;span class=&quot;sy0&quot;&gt;/&amp;gt;&amp;lt;/&lt;/span&gt;soap:Body&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&amp;lt;/&lt;/span&gt;soap:Envelope&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'
&amp;nbsp;
# l'&lt;/span&gt;entête
headers &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Content-Type'&lt;/span&gt;: &lt;span class=&quot;st0&quot;&gt;'application/soap+xml; charset=utf-8'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Content-Type'&lt;/span&gt;: &lt;span class=&quot;st0&quot;&gt;'text/xml; charset=utf-8'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Content-Length'&lt;/span&gt;: str&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;len&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;postdata&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
req &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; Request&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;url&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt; postdata&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt; headers&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
reponse &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; urlopen&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;req&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
text &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; reponse&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;READ&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
&amp;nbsp;
rv &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; plpy&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;execute&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;SELECT ((xpath('//SOAP-ENV:Envelope/SOAP-ENV:Body/ns1:getGUIDResponse/return/text()', '&amp;quot;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;+&lt;/span&gt;text&lt;span class=&quot;sy0&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;'::xml, ARRAY[ARRAY['SOAP-ENV','http://schemas.xmlsoap.org/soap/envelope/'],ARRAY['SOAP-ENC','http://schemas.xmlsoap.org/soap/encoding/'],ARRAY['xsd','http://www.w3.org/2001/XMLSchema'],ARRAY['xsi','http://www.w3.org/2001/XMLSchema-instance'],ARRAY['ns1','http://PESI/v0.1']]))[1])::text AS code_taxon&amp;quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
eu_nomen_code &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; rv&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'code_taxon'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;
&lt;span class=&quot;kw1&quot;&gt;RETURN&lt;/span&gt; eu_nomen_code
&amp;nbsp;
&lt;span class=&quot;kw1&quot;&gt;RETURN&lt;/span&gt; text
$BODY$
  &lt;span class=&quot;kw1&quot;&gt;LANGUAGE&lt;/span&gt; plpythonu VOLATILE
  COST &lt;span class=&quot;nu0&quot;&gt;100&lt;/span&gt;;
&lt;span class=&quot;kw1&quot;&gt;ALTER&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;FUNCTION&lt;/span&gt; outils&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;eu_nomen_taxa_code&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;scientific_name&amp;quot;&lt;/span&gt; text&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; OWNER &lt;span class=&quot;kw1&quot;&gt;TO&lt;/span&gt; dba;
&lt;span class=&quot;kw1&quot;&gt;SELECT&lt;/span&gt; outils&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;eu_nomen_taxa_code&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'passer domesticus'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
COMMENT &lt;span class=&quot;kw1&quot;&gt;ON&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;FUNCTION&lt;/span&gt; outils&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;eu_nomen_taxa_code&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;scientific_name&amp;quot;&lt;/span&gt; text&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;IS&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;'Retourne le code européen d'&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'un taxon dont le nom d'&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'espèce (sans auteur est passé en paramètre).
Un grand merci à Dorian pour son micro cours sur SOAP!'&lt;/span&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT4 SECTION &quot;Création de la fonction dans le schéma outils&quot; [365-2275] --&gt;
&lt;h3 class=&quot;sectionedit5&quot;&gt;&lt;a name=&quot;utilisation&quot; id=&quot;utilisation&quot;&gt;Utilisation&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;pre class=&quot;code sql&quot;&gt;&lt;span class=&quot;kw1&quot;&gt;SELECT&lt;/span&gt; outils&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;eu_nomen_taxa_code&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'passer domestcus'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;/pre&gt;

&lt;p&gt;
Retourne : &lt;strong&gt;&lt;a href=&quot;http://www.eu-nomen.eu/portal/taxon.php?GUID=urn:lsid:faunaeur.org:taxname:97437&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.eu-nomen.eu/portal/taxon.php?GUID=urn:lsid:faunaeur.org:taxname:97437&quot;  rel=&quot;nofollow&quot;&gt;urn:lsid:faunaeur.org:taxname:97437&lt;/a&gt;&lt;/strong&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT5 SECTION &quot;Utilisation&quot; [2276-] --&gt;</description>
        <category>PostgreSQL</category>
        <category>plpython</category>
        <category>INSPIRE</category>
        <category>SOAP</category>
        <category>species</category>
            <pubDate>Sun, 07 Aug 2011 13:42:24 +0200</pubDate>
        </item>
        <item>
            <title>creation_bdd:fonctions:elevation</title>
            <link>http://sig.cenlr.org/creation_bdd/fonctions/elevation</link>
            <description>&lt;div class=&quot;tags&quot;&gt;&lt;span&gt;
	&lt;a href=&quot;http://sig.cenlr.org/tag/postgis?do=showtag&amp;amp;tag=PostGIS&quot; class=&quot;wikilink1&quot; title=&quot;tag:postgis&quot; rel=&quot;tag&quot;&gt;PostGIS&lt;/a&gt;,
	&lt;a href=&quot;http://sig.cenlr.org/tag/plpython?do=showtag&amp;amp;tag=plpython&quot; class=&quot;wikilink1&quot; title=&quot;tag:plpython&quot; rel=&quot;tag&quot;&gt;plpython&lt;/a&gt;,
	&lt;a href=&quot;http://sig.cenlr.org/tag/webservcies?do=showtag&amp;amp;tag=WebServcies&quot; class=&quot;wikilink1&quot; title=&quot;tag:webservcies&quot; rel=&quot;tag&quot;&gt;WebServcies&lt;/a&gt;,
	&lt;a href=&quot;http://sig.cenlr.org/tag/elevation?do=showtag&amp;amp;tag=elevation&quot; class=&quot;wikilink1&quot; title=&quot;tag:elevation&quot; rel=&quot;tag&quot;&gt;elevation&lt;/a&gt;,
	&lt;a href=&quot;http://sig.cenlr.org/tag/sh?do=showtag&amp;amp;tag=sh&quot; class=&quot;wikilink1&quot; title=&quot;tag:sh&quot; rel=&quot;tag&quot;&gt;sh&lt;/a&gt;
&lt;/span&gt;&lt;/div&gt;

&lt;h1 class=&quot;sectionedit6&quot;&gt;&lt;a name=&quot;connaitre_l_altitude_d_un_point_grace_a_ses_coordonnees&quot; id=&quot;connaitre_l_altitude_d_un_point_grace_a_ses_coordonnees&quot;&gt;Connaitre l&amp;#039;altitude d&amp;#039;un point grâce à ses coordonnées&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;div class=&quot;box round red&quot; style=&quot;width: 100%; &quot;&gt;
  &lt;b class='xtop'&gt;&lt;b class='xb1'&gt;&lt;/b&gt;&lt;b class='xb2'&gt;&lt;/b&gt;&lt;b class='xb3'&gt;&lt;/b&gt;&lt;b class='xb4'&gt;&lt;/b&gt;&lt;/b&gt;
  &lt;div class='xbox'&gt;
&lt;div class='box_content'&gt;
&lt;strong&gt;Merci à tous de partager les améliorations que vous apporteriez sur cette fonction&lt;/strong&gt;
&lt;/div&gt;
  &lt;/div&gt;
  &lt;b class='xbottom'&gt;&lt;b class='xb4'&gt;&lt;/b&gt;&lt;b class='xb3'&gt;&lt;/b&gt;&lt;b class='xb2'&gt;&lt;/b&gt;&lt;b class='xb1'&gt;&lt;/b&gt;&lt;/b&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Service utilisé : &lt;a href=&quot;http://www.earthtools.org/webservices.htm#height&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.earthtools.org/webservices.htm#height&quot;  rel=&quot;nofollow&quot;&gt;http://www.earthtools.org/webservices.htm#height&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Données utilisées : &lt;a href=&quot;http://www.earthtools.org/aboutdata.htm&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.earthtools.org/aboutdata.htm&quot;  rel=&quot;nofollow&quot;&gt;http://www.earthtools.org/aboutdata.htm&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Conditions d&amp;#039;utilisation : &lt;a href=&quot;http://www.earthtools.org/webservices.htm#usage&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.earthtools.org/webservices.htm#usage&quot;  rel=&quot;nofollow&quot;&gt;http://www.earthtools.org/webservices.htm#usage&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT6 SECTION &quot;Connaitre l'altitude d'un point grâce à ses coordonnées&quot; [50-456] --&gt;
&lt;h3 class=&quot;sectionedit7&quot;&gt;&lt;a name=&quot;creation_de_la_fonction_dans_le_schema_outils&quot; id=&quot;creation_de_la_fonction_dans_le_schema_outils&quot;&gt;Création de la fonction dans le schéma &amp;quot;outils&amp;quot;&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;pre class=&quot;code sql&quot;&gt;&lt;span class=&quot;kw1&quot;&gt;CREATE&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;OR&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;FUNCTION&lt;/span&gt; outils&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;elevation&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;long&amp;quot;&lt;/span&gt; double precision&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt; lat double precision&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
  RETURNS double precision &lt;span class=&quot;kw1&quot;&gt;AS&lt;/span&gt;
$BODY$
import urllib;
page&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;urllib&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;urlopen&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'http://www.earthtools.org/height/'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;+&lt;/span&gt;str&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;lat&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'/'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;+&lt;/span&gt;str&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;long&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
result_xml &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; page&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;READ&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
rv &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; plpy&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;execute&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;SELECT ((xpath('//height/meters/text()', '&amp;quot;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;+&lt;/span&gt;result_xml&lt;span class=&quot;sy0&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;'::xml))[1])::text::float AS elevation&amp;quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
foo &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; rv&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'elevation'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;
&lt;span class=&quot;kw1&quot;&gt;RETURN&lt;/span&gt; foo
$BODY$
  &lt;span class=&quot;kw1&quot;&gt;LANGUAGE&lt;/span&gt; plpythonu;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT7 SECTION &quot;Création de la fonction dans le schéma outils&quot; [457-966] --&gt;
&lt;h3 class=&quot;sectionedit8&quot;&gt;&lt;a name=&quot;creation_d_un_script_de_mise_a_jour_d_une_table_d_observation&quot; id=&quot;creation_d_un_script_de_mise_a_jour_d_une_table_d_observation&quot;&gt;Création d&amp;#039;un script de mise à jour d&amp;#039;une table d&amp;#039;observation&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;pre class=&quot;code bash&quot;&gt;&lt;span class=&quot;co0&quot;&gt;#!/bin/sh&lt;/span&gt;
&lt;span class=&quot;kw1&quot;&gt;for&lt;/span&gt; a &lt;span class=&quot;kw1&quot;&gt;in&lt;/span&gt; &lt;span class=&quot;sy0&quot;&gt;`&lt;/span&gt;&lt;span class=&quot;kw2&quot;&gt;seq&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;20000&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;`&lt;/span&gt;; &lt;span class=&quot;kw1&quot;&gt;do&lt;/span&gt;
psql &lt;span class=&quot;re5&quot;&gt;-c&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&amp;quot;UPDATE saisie.saisie_observation SET elevation = outils.elevation(st_x(st_transform(geometrie, 4326)), st_y(st_transform(geometrie, 4326))) WHERE id_entite IN (SELECT id_entite FROM saisie.saisie_observation WHERE elevation IS NULL AND GeometryType(geometrie) = 'POINT' ORDER BY id_entite LIMIT 1)&amp;quot;&lt;/span&gt; &lt;span class=&quot;re5&quot;&gt;-h&lt;/span&gt; 192.168.1.230 &lt;span class=&quot;re5&quot;&gt;-U&lt;/span&gt; nom_utilisateur nom_base_de_donnee
&amp;nbsp;
&lt;span class=&quot;co0&quot;&gt;# respect des conditions d'utilisation du service &lt;/span&gt;
&lt;span class=&quot;co0&quot;&gt;# interdisant plus d'une requête par seconde&lt;/span&gt;
&lt;span class=&quot;kw2&quot;&gt;sleep&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt;;
&lt;span class=&quot;co0&quot;&gt;# echo &amp;quot;Élévation mise à jour&amp;quot;&lt;/span&gt;
&lt;span class=&quot;kw1&quot;&gt;done&lt;/span&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT8 SECTION &quot;Création d'un script de mise à jour d'une table d'observation&quot; [967-] --&gt;</description>
        <category>PostGIS</category>
        <category>plpython</category>
        <category>WebServcies</category>
        <category>elevation</category>
        <category>sh</category>
            <pubDate>Sun, 07 Aug 2011 20:11:23 +0200</pubDate>
        </item>
        <item>
            <title>creation_bdd:fonctions:fonctioncenattributionauteurpointfaune</title>
            <link>http://sig.cenlr.org/creation_bdd/fonctions/fonctioncenattributionauteurpointfaune</link>
            <description></description>
        <category>creation_bdd:fonctions</category>
            <pubDate>Sat, 06 Feb 2010 13:21:47 +0200</pubDate>
        </item>
        <item>
            <title>creation_bdd:fonctions:fonctioncenattributionauteurpointflore</title>
            <link>http://sig.cenlr.org/creation_bdd/fonctions/fonctioncenattributionauteurpointflore</link>
            <description></description>
        <category>creation_bdd:fonctions</category>
            <pubDate>Sat, 06 Feb 2010 13:21:47 +0200</pubDate>
        </item>
        <item>
            <title>creation_bdd:fonctions:fonctioncenattributionhabitatpointhabitat</title>
            <link>http://sig.cenlr.org/creation_bdd/fonctions/fonctioncenattributionhabitatpointhabitat</link>
            <description></description>
        <category>creation_bdd:fonctions</category>
            <pubDate>Sat, 06 Feb 2010 13:21:47 +0200</pubDate>
        </item>
        <item>
            <title>creation_bdd:fonctions:fonctioncenattributionstructureauteurpointfaune</title>
            <link>http://sig.cenlr.org/creation_bdd/fonctions/fonctioncenattributionstructureauteurpointfaune</link>
            <description></description>
        <category>creation_bdd:fonctions</category>
            <pubDate>Sat, 06 Feb 2010 13:21:47 +0200</pubDate>
        </item>
        <item>
            <title>creation_bdd:fonctions:fonctioncenlisteobservateursespece</title>
            <link>http://sig.cenlr.org/creation_bdd/fonctions/fonctioncenlisteobservateursespece</link>
            <description>
&lt;h2 class=&quot;sectionedit9&quot;&gt;&lt;a name=&quot;liste_formatee_des_observateurs_d_une_espece&quot; id=&quot;liste_formatee_des_observateurs_d_une_espece&quot;&gt;Liste formatée des observateurs d&amp;#039;une espèce&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;

Cette fonction retourne pour l&amp;#039;espèce passée en paramètre (cd_noom) la liste des Observateurs classés par ordre alphabétique..
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT9 SECTION &quot;Liste formatée des observateurs d'une espèce&quot; [1-192] --&gt;
&lt;h3 class=&quot;sectionedit10&quot;&gt;&lt;a name=&quot;nom_de_la_fonction&quot; id=&quot;nom_de_la_fonction&quot;&gt;Nom de la fonction&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;strong&gt;md.liste_noms_observateurs_espece(text)&lt;/strong&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT10 SECTION &quot;Nom de la fonction&quot; [193-264] --&gt;
&lt;h3 class=&quot;sectionedit11&quot;&gt;&lt;a name=&quot;parametres&quot; id=&quot;parametres&quot;&gt;Paramètres&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
le code du taxon (attribut cd_nom)
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT11 SECTION &quot;Paramètres&quot; [265-320] --&gt;
&lt;h3 class=&quot;sectionedit12&quot;&gt;&lt;a name=&quot;resultat_retourne&quot; id=&quot;resultat_retourne&quot;&gt;Résultat retourné&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
La liste des Observateurs classés par ordre alphabétique
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT12 SECTION &quot;Résultat retourné&quot; [321-408] --&gt;
&lt;h3 class=&quot;sectionedit13&quot;&gt;&lt;a name=&quot;script_plpgsql&quot; id=&quot;script_plpgsql&quot;&gt;Script pl/pgsql&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;pre class=&quot;code sql&quot;&gt;&lt;span class=&quot;kw1&quot;&gt;CREATE&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;OR&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;FUNCTION&lt;/span&gt; md&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;liste_noms_observateurs_espece&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;text&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
  RETURNS text &lt;span class=&quot;kw1&quot;&gt;AS&lt;/span&gt;
$BODY$
DECLARE
	myrec RECORD;
	var_cd_nom ALIAS &lt;span class=&quot;kw1&quot;&gt;FOR&lt;/span&gt; $&lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt;;
	var_liste_nom_observateur character varying &lt;span class=&quot;kw1&quot;&gt;DEFAULT&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;''&lt;/span&gt;;
BEGIN
&lt;span class=&quot;kw1&quot;&gt;FOR&lt;/span&gt; myrec &lt;span class=&quot;kw1&quot;&gt;IN&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;SELECT&lt;/span&gt; TRIM&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;COALESCE&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;nom&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;''&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;||&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;' '&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;||&lt;/span&gt;COALESCE&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;prenom&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;''&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;AS&lt;/span&gt; nom_prenom &lt;span class=&quot;kw1&quot;&gt;FROM&lt;/span&gt; md&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;personne &lt;span class=&quot;kw1&quot;&gt;WHERE&lt;/span&gt; code_personne &lt;span class=&quot;kw1&quot;&gt;IN&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;SELECT&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;DISTINCT&lt;/span&gt; regexp_split_to_table&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;observateur&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt; E&lt;span class=&quot;st0&quot;&gt;'&lt;span class=&quot;es0&quot;&gt;\&amp;amp;&lt;/span&gt;'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;FROM&lt;/span&gt; saisie&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;saisie_observation &lt;span class=&quot;kw1&quot;&gt;WHERE&lt;/span&gt; cd_nom &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; var_cd_nom&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;ORDER&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;BY&lt;/span&gt; TRIM&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;COALESCE&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;nom&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;''&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;||&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;' '&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;||&lt;/span&gt;COALESCE&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;prenom&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;''&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;ASC&lt;/span&gt;
	LOOP
		var_liste_nom_observateur:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;var_liste_nom_observateur&lt;span class=&quot;sy0&quot;&gt;||&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;', '&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;||&lt;/span&gt;myrec&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;nom_prenom;
	END LOOP;
&lt;span class=&quot;kw1&quot;&gt;RETURN&lt;/span&gt; substring&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_liste_nom_observateur &lt;span class=&quot;kw1&quot;&gt;FROM&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;3&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;FOR&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;length&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_liste_nom_observateur&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;::integer&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
END;
$BODY$
  &lt;span class=&quot;kw1&quot;&gt;LANGUAGE&lt;/span&gt; plpgsql VOLATILE
  COST &lt;span class=&quot;nu0&quot;&gt;100&lt;/span&gt;;
&lt;span class=&quot;kw1&quot;&gt;ALTER&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;FUNCTION&lt;/span&gt; md&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;liste_noms_observateurs_espece&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;text&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; OWNER &lt;span class=&quot;kw1&quot;&gt;TO&lt;/span&gt; dba;
&amp;nbsp;
&lt;span class=&quot;kw1&quot;&gt;SELECT&lt;/span&gt; md&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;liste_noms_observateurs_espece&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'65254'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT13 SECTION &quot;Script pl/pgsql&quot; [409-] --&gt;</description>
        <category>creation_bdd:fonctions</category>
            <pubDate>Wed, 20 Jul 2011 17:16:06 +0200</pubDate>
        </item>
        <item>
            <title>creation_bdd:fonctions:fonctioncenlistepersonneauteurese</title>
            <link>http://sig.cenlr.org/creation_bdd/fonctions/fonctioncenlistepersonneauteurese</link>
            <description>
&lt;h1 class=&quot;sectionedit14&quot;&gt;&lt;a name=&quot;liste_formatee_des_auteurs_d_une_donnee&quot; id=&quot;liste_formatee_des_auteurs_d_une_donnee&quot;&gt;Liste formatée des auteurs d&amp;#039;une donnée&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;

Cette fonction retourne pour l&amp;#039;entité passée en paramètre la liste des codes des auteurs séparés par le caractère “$”.
&lt;/p&gt;

&lt;p&gt;
Les auteurs d&amp;#039;une ese sont stockés dans la table &lt;strong&gt;“personne_est_auteur_donnee”&lt;/strong&gt; par 3 attributs clefs primaires :
- l&amp;#039;identifiant de la donnée :&lt;strong&gt;“id_entite”&lt;/strong&gt;
- le code de l&amp;#039;observateur : &lt;strong&gt;“code_personne”&lt;/strong&gt;
- l&amp;#039;ordre de cet observateur : &lt;strong&gt;“ordre”&lt;/strong&gt;
&lt;/p&gt;

&lt;p&gt;
Or, traditionnellement, les auteurs sont présentés à la suite les un des autres, dans une colonne auteur. Notamment dans les fichiers SIG traditionnels et les tableurs. Le stockage “en colonne” de ces auteurs rend pourtont l&amp;#039;exploitation de cette métadonnée importante difficile. 
Cette fonction reproduit pour chaque donnée la liste de ses auteurs qu&amp;#039;elle sépare par le caractère &lt;strong&gt;“$”&lt;/strong&gt;.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT14 SECTION &quot;Liste formatée des auteurs d'une donnée&quot; [1-837] --&gt;
&lt;h3 class=&quot;sectionedit15&quot;&gt;&lt;a name=&quot;nom_de_la_fonction&quot; id=&quot;nom_de_la_fonction&quot;&gt;-	Nom de la fonction&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;strong&gt;cen_liste_personne_auteur_ese(integer)&lt;/strong&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT15 SECTION &quot;-	Nom de la fonction&quot; [838-912] --&gt;
&lt;h3 class=&quot;sectionedit16&quot;&gt;&lt;a name=&quot;parametres&quot; id=&quot;parametres&quot;&gt;-	Paramètres&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
l&amp;#039;identifiant de l&amp;#039;ese (&lt;strong&gt;entier&lt;/strong&gt;)
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT16 SECTION &quot;-	Paramètres&quot; [913-973] --&gt;
&lt;h3 class=&quot;sectionedit17&quot;&gt;&lt;a name=&quot;resulat_retourne&quot; id=&quot;resulat_retourne&quot;&gt;-	Résulat retourné&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
La liste des codes d&amp;#039;auteurs (séparés par des “$”) de l&amp;#039;ese considérée (&lt;strong&gt;text&lt;/strong&gt;)
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT17 SECTION &quot;-	Résulat retourné&quot; [974-1091] --&gt;
&lt;h3 class=&quot;sectionedit18&quot;&gt;&lt;a name=&quot;script_plpgsql&quot; id=&quot;script_plpgsql&quot;&gt;-	Script pl/pgsql&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;pre class=&quot;code sql&quot;&gt;&lt;span class=&quot;kw1&quot;&gt;CREATE&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;FUNCTION&lt;/span&gt; cen_liste_personne_auteur_ese&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;integer&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; RETURNS text
    &lt;span class=&quot;kw1&quot;&gt;AS&lt;/span&gt; $_$
DECLARE
	id_entite alias &lt;span class=&quot;kw1&quot;&gt;FOR&lt;/span&gt; $&lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt;;
	myrec RECORD;
	var_code_personne character varying&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;5&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_liste_auteur character varying&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;50&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;DEFAULT&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;''&lt;/span&gt;;
BEGIN
	&lt;span class=&quot;kw1&quot;&gt;FOR&lt;/span&gt; myrec &lt;span class=&quot;kw1&quot;&gt;IN&lt;/span&gt; 
		&lt;span class=&quot;kw1&quot;&gt;SELECT&lt;/span&gt; id_entite&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt; code_personne&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt; ordre 
		&lt;span class=&quot;kw1&quot;&gt;FROM&lt;/span&gt; personne_est_auteur_donnee
		&lt;span class=&quot;kw1&quot;&gt;WHERE&lt;/span&gt; personne_est_auteur_donnee&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;id_entite&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;id_entite
		&lt;span class=&quot;kw1&quot;&gt;ORDER&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;BY&lt;/span&gt; ordre &lt;span class=&quot;kw1&quot;&gt;ASC&lt;/span&gt;
	LOOP
		var_code_personne:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;myrec&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;code_personne; 		
		var_liste_auteur:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;var_liste_auteur&lt;span class=&quot;sy0&quot;&gt;||&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'$'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;||&lt;/span&gt;var_code_personne;
        END LOOP;
	&lt;span class=&quot;kw1&quot;&gt;RETURN&lt;/span&gt; ltrim&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_liste_auteur&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'$'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
&amp;nbsp;
END;
$_$
&lt;span class=&quot;kw1&quot;&gt;LANGUAGE&lt;/span&gt; plpgsql;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT18 SECTION &quot;-	Script pl/pgsql&quot; [1092-] --&gt;</description>
        <category>creation_bdd:fonctions</category>
            <pubDate>Thu, 11 Aug 2011 11:26:37 +0200</pubDate>
        </item>
        <item>
            <title>creation_bdd:fonctions:no_html_special_char</title>
            <link>http://sig.cenlr.org/creation_bdd/fonctions/no_html_special_char</link>
            <description>
&lt;h1 class=&quot;sectionedit19&quot;&gt;&lt;a name=&quot;fonction_de_remplacement_des_code_html_des_caracteres_speciaux_par_les_caracteres&quot; id=&quot;fonction_de_remplacement_des_code_html_des_caracteres_speciaux_par_les_caracteres&quot;&gt;Fonction de remplacement des code HTML des caractères spéciaux par les caractères&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;pre class=&quot;code sql&quot;&gt;&lt;span class=&quot;kw1&quot;&gt;CREATE&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;OR&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;FUNCTION&lt;/span&gt; no_html_specials_chars&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;text&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
  RETURNS text &lt;span class=&quot;kw1&quot;&gt;AS&lt;/span&gt;
$BODY$
DECLARE
	var_texte ALIAS &lt;span class=&quot;kw1&quot;&gt;FOR&lt;/span&gt; $&lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt;;
	var_chaine text;
BEGIN
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;var_texte;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;quot;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;quot;'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;amp;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;euro;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'€'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;lt;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;lt;'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;gt;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;gt;'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;oelig;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'œ'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;''&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'z'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;Yuml;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Y'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;nbsp;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Space'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;iexcl;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'¡'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;cent;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'¢'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;pound;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'£'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;curren;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'¤'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;yen'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'¥'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;brvbar;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'¦'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;sect;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'§'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;uml;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'¨'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;copy;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'©'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;ordf;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'ª'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;laquo;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'«'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;not;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'¬'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;shy;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'­'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;reg;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'®'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;masr;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'¯'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;deg;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'°'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;plusmn;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'±'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;sup2;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'²'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;sup3;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'³'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;acute;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;''&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;''&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;micro;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'µ'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;para;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'¶'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;middot;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'·'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;cedil;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'¸'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;sup1;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'¹'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;ordm;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'º'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;raquo;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'»'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;frac14;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'¼'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;frac12;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'½'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;frac34;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'¾'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;iquest;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'¿'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;Agrave;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'À'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;Aacute;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Á'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;Acirc;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Â'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;Atilde;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Ã'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;Auml;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Ä'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;Aring;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Å'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;Aelig'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Æ'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;Ccedil;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Ç'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;Egrave;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'È'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;Eacute;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'É'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;Ecirc;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Ê'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;Euml;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Ë'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;Igrave;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Ì'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;Iacute;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Í'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;Icirc;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Î'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;Iuml;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Ï'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;eth;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Ð'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;Ntilde;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Ñ'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;Ograve;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Ò'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;Oacute;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Ó'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;Ocirc;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Ô'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;Otilde;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Õ'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;Ouml;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Ö'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;times;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'×'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;Oslash;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Ø'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;Ugrave;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Ù'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;Uacute;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Ú'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;Ucirc;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Û'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;Uuml;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Ü'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;Yacute;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Ý'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;thorn;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'Þ'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;szlig;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'ß'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;agrave;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'à'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;aacute;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'á'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;acirc;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'â'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;atilde;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'ã'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;auml;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'ä'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;aring;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'å'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;aelig;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'æ'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;ccedil;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'ç'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;egrave;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'è'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;eacute;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'é'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;ecirc;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'ê'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;euml;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'ë'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;igrave;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'ì'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;iacute;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'í'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;icirc;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'î'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;iuml;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'ï'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;eth;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'ð'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;ntilde;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'ñ'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;ograve;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'ò'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;oacute;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'ó'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;ocirc;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'ô'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;otilde;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'õ'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;ouml;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'ö'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;divide;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'÷'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;oslash;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'ø'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;ugrave;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'ù'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;uacute;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'ú'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;ucirc;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'û'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;uuml;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'ü'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;yacute;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'ý'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;thorn;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'þ'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	var_chaine:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_chaine&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'&amp;amp;yuml;'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'ÿ'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
	&lt;span class=&quot;kw1&quot;&gt;RETURN&lt;/span&gt; var_chaine;
END;
$BODY$
  &lt;span class=&quot;kw1&quot;&gt;LANGUAGE&lt;/span&gt; plpgsql VOLATILE
  COST &lt;span class=&quot;nu0&quot;&gt;100&lt;/span&gt;;
&lt;span class=&quot;kw1&quot;&gt;ALTER&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;FUNCTION&lt;/span&gt; no_html_specials_chars&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;text&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; OWNER &lt;span class=&quot;kw1&quot;&gt;TO&lt;/span&gt; dba;&lt;/pre&gt;

&lt;/div&gt;
</description>
        <category>creation_bdd:fonctions</category>
            <pubDate>Thu, 02 Dec 2010 12:59:00 +0200</pubDate>
        </item>
        <item>
            <title>creation_bdd:fonctions:suiv_operation_sur_table</title>
            <link>http://sig.cenlr.org/creation_bdd/fonctions/suiv_operation_sur_table</link>
            <description>
&lt;h1 class=&quot;sectionedit20&quot;&gt;&lt;a name=&quot;tracer_et_suivre_les_modifications_apportees_aux_donnees_d_une_table&quot; id=&quot;tracer_et_suivre_les_modifications_apportees_aux_donnees_d_une_table&quot;&gt;Tracer et suivre les modifications apportées aux données d&amp;#039;une table&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
&lt;strong&gt;Tiré de &lt;a href=&quot;http://www.postgresonline.com/journal/archives/87-PostgreSQL-8.3-PLPGSQL-Cheatsheet-Overview.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.postgresonline.com/journal/archives/87-PostgreSQL-8.3-PLPGSQL-Cheatsheet-Overview.html&quot;  rel=&quot;nofollow&quot;&gt;http://www.postgresonline.com/journal/archives/87-PostgreSQL-8.3-PLPGSQL-Cheatsheet-Overview.html&lt;/a&gt;&lt;/strong&gt;

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT20 SECTION &quot;Tracer et suivre les modifications apportées aux données d'une table&quot; [1-196] --&gt;
&lt;h2 class=&quot;sectionedit21&quot;&gt;&lt;a name=&quot;objectifs&quot; id=&quot;objectifs&quot;&gt;Objectifs&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Savoir qui fait quoi et quand sur quelle donnée d&amp;#039;une table, garder l&amp;#039;historique de ces modifications

&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT21 SECTION &quot;Objectifs&quot; [197-321] --&gt;
&lt;h2 class=&quot;sectionedit22&quot;&gt;&lt;a name=&quot;point_de_depart&quot; id=&quot;point_de_depart&quot;&gt;Point de départ&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; une table “ma_table” avec 4 attributs id_data, attr_1, attr_2 et attr_3&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;code sql&quot;&gt;&lt;span class=&quot;kw1&quot;&gt;CREATE&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;TABLE&lt;/span&gt; ma_table
&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;
  id_data serial &lt;span class=&quot;kw1&quot;&gt;NOT&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;NULL&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;PRIMARY&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;KEY&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;
  attr_1 character varying&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;
  attr_2 character varying&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;
  attr_3 character varying
&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT22 SECTION &quot;Point de départ&quot; [322-594] --&gt;
&lt;h2 class=&quot;sectionedit23&quot;&gt;&lt;a name=&quot;mise_en_œuvre&quot; id=&quot;mise_en_œuvre&quot;&gt;Mise en œuvre&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT23 SECTION &quot;Mise en œuvre&quot; [595-621] --&gt;
&lt;h3 class=&quot;sectionedit24&quot;&gt;&lt;a name=&quot;creation_d_une_table_pour_faire_ce_suivi&quot; id=&quot;creation_d_une_table_pour_faire_ce_suivi&quot;&gt;création d&amp;#039;une table pour faire ce suivi&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; elle contiendra les même colonnes que la table à suivre&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; plus 3 attributs qui stockeront:&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; le nom du rôle qui effectue l&amp;#039;opération&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; le type d&amp;#039;opération : insert, update ou delete&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; la date et l&amp;#039;heure de l&amp;#039;opération&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;code sql&quot;&gt;&lt;span class=&quot;kw1&quot;&gt;CREATE&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;TABLE&lt;/span&gt; suivi_ma_table
&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;
  operation character&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;6&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;
  date_operation timestamp without time zone &lt;span class=&quot;kw1&quot;&gt;NOT&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;NULL&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;
  utilisateur character varying &lt;span class=&quot;kw1&quot;&gt;NOT&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;NULL&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;
  id_data integer&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;
  attr_1 character varying&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;
  attr_2 character varying&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;
  attr_3 character varying
&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT24 SECTION &quot;création d'une table pour faire ce suivi&quot; [622-1192] --&gt;
&lt;h3 class=&quot;sectionedit25&quot;&gt;&lt;a name=&quot;creation_de_la_fonction_trigger_qui_se_chargera_de_ce_suivi&quot; id=&quot;creation_de_la_fonction_trigger_qui_se_chargera_de_ce_suivi&quot;&gt;Création de la fonction trigger qui se chargera de ce suivi&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;pre class=&quot;code sql&quot;&gt;&lt;span class=&quot;kw1&quot;&gt;CREATE&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;OR&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;FUNCTION&lt;/span&gt; alimente_suivi_ma_table&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
  RETURNS &lt;span class=&quot;kw1&quot;&gt;TRIGGER&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;AS&lt;/span&gt;
$BODY$
    BEGIN
        &lt;span class=&quot;co1&quot;&gt;--&lt;/span&gt;
        &lt;span class=&quot;co1&quot;&gt;-- Crée une ligne dans la table suivi qui reflète l'opération effectuées sur la table &amp;quot;ma_table&amp;quot;,&lt;/span&gt;
        &lt;span class=&quot;co1&quot;&gt;-- utilise la variable spéciale TG_OP qui décrit l'opération courante&lt;/span&gt;
        &lt;span class=&quot;co1&quot;&gt;--&lt;/span&gt;
        &lt;span class=&quot;kw1&quot;&gt;IF&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;TG_OP &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;'DELETE'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; THEN
        &lt;span class=&quot;co1&quot;&gt;-- en cas de suppression on stocke la ligne supprimée&lt;/span&gt;
            &lt;span class=&quot;kw1&quot;&gt;INSERT&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;INTO&lt;/span&gt; suivi_ma_table &lt;span class=&quot;kw1&quot;&gt;SELECT&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;'DELETE'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt; now&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt; user&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt; OLD&lt;span class=&quot;sy0&quot;&gt;.*&lt;/span&gt;;
            &lt;span class=&quot;kw1&quot;&gt;RETURN&lt;/span&gt; OLD;
        ELSIF &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;TG_OP &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;'UPDATE'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; THEN
        &lt;span class=&quot;co1&quot;&gt;-- en cas de mise à jour on stocke la ligne dans son état &amp;quot;après mise à jour&amp;quot; &lt;/span&gt;
            &lt;span class=&quot;kw1&quot;&gt;INSERT&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;INTO&lt;/span&gt; suivi_ma_table &lt;span class=&quot;st0&quot;&gt;'UPDATE'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt; now&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt; user&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt; NEW&lt;span class=&quot;sy0&quot;&gt;.*&lt;/span&gt;;
            &lt;span class=&quot;kw1&quot;&gt;RETURN&lt;/span&gt; NEW;
        ELSIF &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;TG_OP &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;'INSERT'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; THEN
        &lt;span class=&quot;co1&quot;&gt;-- en cas d'insertion on stocke la ligne insérée&lt;/span&gt;
            &lt;span class=&quot;kw1&quot;&gt;INSERT&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;INTO&lt;/span&gt; suivi_ma_table &lt;span class=&quot;kw1&quot;&gt;SELECT&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;'INSERT'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt; now&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt; user&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt; NEW&lt;span class=&quot;sy0&quot;&gt;.*&lt;/span&gt;;
            &lt;span class=&quot;kw1&quot;&gt;RETURN&lt;/span&gt; NEW;
        END &lt;span class=&quot;kw1&quot;&gt;IF&lt;/span&gt;;
        &lt;span class=&quot;kw1&quot;&gt;RETURN&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;NULL&lt;/span&gt;; 
    END;
$BODY$
  &lt;span class=&quot;kw1&quot;&gt;LANGUAGE&lt;/span&gt; plpgsql VOLATILE
  COST &lt;span class=&quot;nu0&quot;&gt;100&lt;/span&gt;;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT25 SECTION &quot;Création de la fonction trigger qui se chargera de ce suivi&quot; [1193-2297] --&gt;
&lt;h3 class=&quot;sectionedit26&quot;&gt;&lt;a name=&quot;creation_du_trigger&quot; id=&quot;creation_du_trigger&quot;&gt;Création du trigger&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;pre class=&quot;code sql&quot;&gt;&lt;span class=&quot;kw1&quot;&gt;CREATE&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;TRIGGER&lt;/span&gt; suivi_saisie_observation
  AFTER &lt;span class=&quot;kw1&quot;&gt;INSERT&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;OR&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;UPDATE&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;OR&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;DELETE&lt;/span&gt;
  &lt;span class=&quot;kw1&quot;&gt;ON&lt;/span&gt; ma_table
  &lt;span class=&quot;kw1&quot;&gt;FOR&lt;/span&gt; EACH ROW
  EXECUTE PROCEDURE alimente_suivi_ma_table&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT26 SECTION &quot;Création du trigger&quot; [2298-2498] --&gt;
&lt;h2 class=&quot;sectionedit27&quot;&gt;&lt;a name=&quot;creation_d_un_flux_rss_pour_ce_suivi&quot; id=&quot;creation_d_un_flux_rss_pour_ce_suivi&quot;&gt;Création d&amp;#039;un flux rss pour ce suivi&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
le rôle de connexion “rss” aura les droit de select sur la table “ma_table”

&lt;/p&gt;
&lt;pre class=&quot;code php&quot;&gt;&lt;span class=&quot;kw2&quot;&gt;&amp;lt;?php&lt;/span&gt;
&lt;a target=&quot;_blank&quot; href=&quot;http://www.php.net/header&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;header&lt;/span&gt;&lt;/a&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;Content-Type: application/xml; charset=ISO-8859-1&amp;quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;re0&quot;&gt;$dbcon&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;&lt;a target=&quot;_blank&quot; href=&quot;http://www.php.net/pg_connect&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;pg_connect&lt;/span&gt;&lt;/a&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;host=192.168.1.210 dbname=test user=rss password=rss&amp;quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;;&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;kw1&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;a target=&quot;_blank&quot; href=&quot;http://www.php.net/isset&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;isset&lt;/span&gt;&lt;/a&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$_GET&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st_h&quot;&gt;'operation'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$_GET&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st_h&quot;&gt;'operation'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;!=&lt;/span&gt;&lt;span class=&quot;st_h&quot;&gt;''&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$where&lt;/span&gt; &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;st_h&quot;&gt;'lower(operation)=\''&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;$_GET&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;operation&amp;quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt; &lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;st_h&quot;&gt;'\''&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;re0&quot;&gt;$query&lt;/span&gt; &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;st_h&quot;&gt;'
  SELECT operation, date_operation, utilisateur, id_data, attr_1, attr_2, attr_3
  FROM suivi_ma_table
  ORDER BY date_operation DESC
  LIMIT 20;
'&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;co1&quot;&gt;//echo $query;&lt;/span&gt;
&lt;span class=&quot;re0&quot;&gt;$item&lt;/span&gt; &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;st_h&quot;&gt;'&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;ISO-8859-1&amp;quot; ?&amp;gt;&lt;/span&gt;
&amp;lt;rss version=&amp;quot;2.0&amp;quot;&amp;gt;
&amp;lt;channel&amp;gt;
		&amp;lt;title&amp;gt;Ma table - dernières modificationa appoertées&amp;lt;/title&amp;gt;
		&amp;lt;link&amp;gt;http://www.google.fr&amp;lt;/link&amp;gt;
		&amp;lt;description&amp;gt;Suivi de modifications apportées à la table ma_table&amp;lt;/description&amp;gt;
		&amp;lt;language&amp;gt;Français&amp;lt;/language&amp;gt;';
$result = pg_query($dbcon,$query);
while($row = pg_fetch_array($result))
{
			$item.= '
&amp;lt;item&amp;gt;
	&amp;lt;title&amp;gt;'. utf8_decode($row[&amp;quot;nom_complet&amp;quot;]) .'&amp;lt;/title&amp;gt;
	&amp;lt;link&amp;gt;http://url_a_definir.org'&amp;lt;/link&amp;gt;
	&amp;lt;description&amp;gt;&amp;lt;![CDATA['.utf8_decode($row[&amp;quot;operation&amp;quot;]) .' par '. utf8_decode($row[&amp;quot;utilisateur&amp;quot;]) . ' - &amp;lt;em&amp;gt;donnée n°' . utf8_decode($row[&amp;quot;id_data&amp;quot;]) . '&amp;lt;/em&amp;gt;]]&amp;gt;&amp;lt;/description&amp;gt;
&amp;lt;/item&amp;gt;';
}
$item.='&amp;lt;/channel&amp;gt;&amp;lt;/rss&amp;gt;';
echo $item;
?&amp;gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT27 SECTION &quot;Création d'un flux rss pour ce suivi&quot; [2499-] --&gt;</description>
        <category>creation_bdd:fonctions</category>
            <pubDate>Tue, 22 Mar 2011 13:14:10 +0200</pubDate>
        </item>
        <item>
            <title>creation_bdd:fonctions:taxon_fils</title>
            <link>http://sig.cenlr.org/creation_bdd/fonctions/taxon_fils</link>
            <description>&lt;div class=&quot;tags&quot;&gt;&lt;span&gt;
	&lt;a href=&quot;http://sig.cenlr.org/tag/postgesql?do=showtag&amp;amp;tag=PostgeSQL&quot; class=&quot;wikilink1&quot; title=&quot;tag:postgesql&quot; rel=&quot;tag&quot;&gt;PostgeSQL&lt;/a&gt;,
	&lt;a href=&quot;http://sig.cenlr.org/tag/plpgsql?do=showtag&amp;amp;tag=plpgsql&quot; class=&quot;wikilink1&quot; title=&quot;tag:plpgsql&quot; rel=&quot;tag&quot;&gt;plpgsql&lt;/a&gt;,
	&lt;a href=&quot;http://sig.cenlr.org/tag/inpn?do=showtag&amp;amp;tag=INPN&quot; class=&quot;wikilink1&quot; title=&quot;tag:inpn&quot; rel=&quot;tag&quot;&gt;INPN&lt;/a&gt;,
	&lt;a href=&quot;http://sig.cenlr.org/tag/taxref?do=showtag&amp;amp;tag=TAXREF&quot; class=&quot;wikilink1&quot; title=&quot;tag:taxref&quot; rel=&quot;tag&quot;&gt;TAXREF&lt;/a&gt;
&lt;/span&gt;&lt;/div&gt;

&lt;h1 class=&quot;sectionedit28&quot;&gt;&lt;a name=&quot;connaitre_tous_les_taxons_situes_sous_un_nœud_de_l_arbre_taxonomique&quot; id=&quot;connaitre_tous_les_taxons_situes_sous_un_nœud_de_l_arbre_taxonomique&quot;&gt;Connaitre tous les taxons situés sous un nœud de l&amp;#039;arbre taxonomique&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;pre class=&quot;code sql&quot;&gt;&lt;span class=&quot;kw1&quot;&gt;CREATE&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;OR&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;FUNCTION&lt;/span&gt; inpn&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;taxons_fils&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;character varying&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
  RETURNS SETOF character varying &lt;span class=&quot;kw1&quot;&gt;AS&lt;/span&gt;
$BODY$
DECLARE
	var_cd_nom alias &lt;span class=&quot;kw1&quot;&gt;FOR&lt;/span&gt; $&lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt;;
BEGIN
          &lt;span class=&quot;kw1&quot;&gt;RETURN&lt;/span&gt; QUERY
		&lt;span class=&quot;kw1&quot;&gt;WITH&lt;/span&gt; RECURSIVE genealogie &lt;span class=&quot;kw1&quot;&gt;AS&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;
		&lt;span class=&quot;kw1&quot;&gt;SELECT&lt;/span&gt; cd_nom&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt; cd_taxsup&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt; lb_nom &lt;span class=&quot;kw1&quot;&gt;FROM&lt;/span&gt; inpn&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;taxref &lt;span class=&quot;kw1&quot;&gt;WHERE&lt;/span&gt; cd_nom&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;lower&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;var_cd_nom&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
		&lt;span class=&quot;kw1&quot;&gt;UNION&lt;/span&gt;
		&lt;span class=&quot;kw1&quot;&gt;SELECT&lt;/span&gt; inpn&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;taxref&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;cd_nom&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt; inpn&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;taxref&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;cd_taxsup&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt; inpn&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;taxref&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;lb_nom &lt;span class=&quot;kw1&quot;&gt;FROM&lt;/span&gt; inpn&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;taxref &lt;span class=&quot;kw1&quot;&gt;JOIN&lt;/span&gt; genealogie &lt;span class=&quot;kw1&quot;&gt;ON&lt;/span&gt; inpn&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;taxref&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;cd_taxsup &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; genealogie&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;cd_nom
		&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
		&lt;span class=&quot;kw1&quot;&gt;SELECT&lt;/span&gt; cd_nom &lt;span class=&quot;kw1&quot;&gt;FROM&lt;/span&gt; genealogie;
END;
$BODY$
  &lt;span class=&quot;kw1&quot;&gt;LANGUAGE&lt;/span&gt; plpgsql VOLATILE SECURITY DEFINER
  COST &lt;span class=&quot;nu0&quot;&gt;100&lt;/span&gt;;
&lt;span class=&quot;kw1&quot;&gt;ALTER&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;FUNCTION&lt;/span&gt; inpn&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;taxons_fils&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;character varying&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; OWNER &lt;span class=&quot;kw1&quot;&gt;TO&lt;/span&gt; dba;&lt;/pre&gt;

&lt;p&gt;
Exemple : lister tous les odonates
&lt;/p&gt;
&lt;pre class=&quot;code sql&quot;&gt;&lt;span class=&quot;kw1&quot;&gt;SELECT&lt;/span&gt; inpn&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;taxons_fils&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'185356'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT28 SECTION &quot;Connaitre tous les taxons situés sous un nœud de l'arbre taxonomique&quot; [38-] --&gt;</description>
        <category>PostgeSQL</category>
        <category>plpgsql</category>
        <category>INPN</category>
        <category>TAXREF</category>
            <pubDate>Mon, 08 Aug 2011 09:10:15 +0200</pubDate>
        </item>
        <item>
            <title>creation_bdd:fonctions:utilitaires_de_date</title>
            <link>http://sig.cenlr.org/creation_bdd/fonctions/utilitaires_de_date</link>
            <description>
&lt;h1 class=&quot;sectionedit29&quot;&gt;&lt;a name=&quot;fonctions_utiles_pour_les_dates&quot; id=&quot;fonctions_utiles_pour_les_dates&quot;&gt;Fonctions utiles pour les dates&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT29 SECTION &quot;Fonctions utiles pour les dates&quot; [1-46] --&gt;
&lt;h2 class=&quot;sectionedit30&quot;&gt;&lt;a name=&quot;fonction_de_verification_de_l_existence_d_une_date&quot; id=&quot;fonction_de_verification_de_l_existence_d_une_date&quot;&gt;Fonction de vérification de l&amp;#039;existence d&amp;#039;une date&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code sql&quot;&gt;&lt;span class=&quot;kw1&quot;&gt;CREATE&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;OR&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;FUNCTION&lt;/span&gt; cenlr_date_est_valide&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;integer&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt; integer&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt; integer&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
  RETURNS &lt;span class=&quot;kw1&quot;&gt;BOOLEAN&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;AS&lt;/span&gt;
$BODY$
DECLARE
	jour alias &lt;span class=&quot;kw1&quot;&gt;FOR&lt;/span&gt; $&lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt;;
	mois alias &lt;span class=&quot;kw1&quot;&gt;FOR&lt;/span&gt; $&lt;span class=&quot;nu0&quot;&gt;2&lt;/span&gt;;
	annee alias &lt;span class=&quot;kw1&quot;&gt;FOR&lt;/span&gt; $&lt;span class=&quot;nu0&quot;&gt;3&lt;/span&gt;;
	var_result &lt;span class=&quot;kw1&quot;&gt;BOOLEAN&lt;/span&gt;;
   BEGIN
        &lt;span class=&quot;kw1&quot;&gt;IF&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;mois &lt;span class=&quot;kw1&quot;&gt;IN&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;3&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;5&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;7&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;8&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;10&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;12&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;AND&lt;/span&gt; jour &lt;span class=&quot;sy0&quot;&gt;&amp;lt;=&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;31&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; THEN
            var_result &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; true;
            &lt;span class=&quot;kw1&quot;&gt;RETURN&lt;/span&gt; var_result;
        ELSIF &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;mois &lt;span class=&quot;kw1&quot;&gt;IN&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;4&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;6&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;9&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;11&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;AND&lt;/span&gt; jour &lt;span class=&quot;sy0&quot;&gt;&amp;lt;=&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;30&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; THEN
            var_result &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; true;
            &lt;span class=&quot;kw1&quot;&gt;RETURN&lt;/span&gt; var_result;
        ELSIF &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;mois &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;AND&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;annee % &lt;span class=&quot;nu0&quot;&gt;4&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;0&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;AND&lt;/span&gt; jour &lt;span class=&quot;sy0&quot;&gt;&amp;lt;=&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;29&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;OR&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;mois &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;AND&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;annee % &lt;span class=&quot;nu0&quot;&gt;4&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;sy0&quot;&gt;&amp;lt;&amp;gt;&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;0&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;AND&lt;/span&gt; jour &lt;span class=&quot;sy0&quot;&gt;&amp;lt;=&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;28&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; THEN
            var_result &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; true;
            &lt;span class=&quot;kw1&quot;&gt;RETURN&lt;/span&gt; var_result;
        ELSE var_result &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; false;
            &lt;span class=&quot;kw1&quot;&gt;RETURN&lt;/span&gt; var_result;
        END &lt;span class=&quot;kw1&quot;&gt;IF&lt;/span&gt;;
        &lt;span class=&quot;kw1&quot;&gt;RETURN&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;NULL&lt;/span&gt;;
    END;
&amp;nbsp;
$BODY$
  &lt;span class=&quot;kw1&quot;&gt;LANGUAGE&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;'plpgsql'&lt;/span&gt; VOLATILE
  COST &lt;span class=&quot;nu0&quot;&gt;100&lt;/span&gt;;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT30 SECTION &quot;Fonction de vérification de l'existence d'une date&quot; [47-907] --&gt;
&lt;h2 class=&quot;sectionedit31&quot;&gt;&lt;a name=&quot;fonction_de_nommage_du_jour_passe_en_parametre&quot; id=&quot;fonction_de_nommage_du_jour_passe_en_parametre&quot;&gt;Fonction de nommage du jour passé en paramètre&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code sql&quot;&gt;&lt;span class=&quot;kw1&quot;&gt;CREATE&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;OR&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;REPLACE&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;FUNCTION&lt;/span&gt; day_name&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;date&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
  RETURNS text &lt;span class=&quot;kw1&quot;&gt;AS&lt;/span&gt;
$BODY$
DECLARE
	date_test alias &lt;span class=&quot;kw1&quot;&gt;FOR&lt;/span&gt; $&lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt;;
	var_result text;
	myrec RECORD;
   BEGIN
        &lt;span class=&quot;kw1&quot;&gt;FOR&lt;/span&gt; myrec &lt;span class=&quot;kw1&quot;&gt;IN&lt;/span&gt; 
		&lt;span class=&quot;kw1&quot;&gt;SELECT&lt;/span&gt; CASE extract&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;isodow &lt;span class=&quot;kw1&quot;&gt;FROM&lt;/span&gt; date_test&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
WHEN &lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt; then &lt;span class=&quot;st0&quot;&gt;'lundi'&lt;/span&gt;
WHEN &lt;span class=&quot;nu0&quot;&gt;2&lt;/span&gt; THEN &lt;span class=&quot;st0&quot;&gt;'mardi'&lt;/span&gt;
WHEN &lt;span class=&quot;nu0&quot;&gt;3&lt;/span&gt; THEN &lt;span class=&quot;st0&quot;&gt;'mercredi'&lt;/span&gt;
WHEN &lt;span class=&quot;nu0&quot;&gt;4&lt;/span&gt; THEN &lt;span class=&quot;st0&quot;&gt;'jeudi'&lt;/span&gt;
WHEN &lt;span class=&quot;nu0&quot;&gt;5&lt;/span&gt; THEN &lt;span class=&quot;st0&quot;&gt;'vendredi'&lt;/span&gt;
WHEN &lt;span class=&quot;nu0&quot;&gt;6&lt;/span&gt; THEN &lt;span class=&quot;st0&quot;&gt;'samedi'&lt;/span&gt;
WHEN &lt;span class=&quot;nu0&quot;&gt;7&lt;/span&gt; THEN &lt;span class=&quot;st0&quot;&gt;'dimanche'&lt;/span&gt;
END &lt;span class=&quot;kw1&quot;&gt;AS&lt;/span&gt; jour
	LOOP
		var_result:&lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt;myrec&lt;span class=&quot;sy0&quot;&gt;.&lt;/span&gt;jour;
	END LOOP;
	&lt;span class=&quot;kw1&quot;&gt;RETURN&lt;/span&gt; var_result;
    END;
$BODY$
  &lt;span class=&quot;kw1&quot;&gt;LANGUAGE&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;'plpgsql'&lt;/span&gt; VOLATILE
  COST &lt;span class=&quot;nu0&quot;&gt;100&lt;/span&gt;;&lt;/pre&gt;
&lt;pre class=&quot;code sql&quot;&gt;$&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;SELECT&lt;/span&gt; day_name&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'2010-02-07'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
$&lt;span class=&quot;sy0&quot;&gt;&amp;gt;&lt;/span&gt; dimanche&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT31 SECTION &quot;Fonction de nommage du jour passé en paramètre&quot; [908-] --&gt;</description>
        <category>creation_bdd:fonctions</category>
            <pubDate>Sun, 07 Feb 2010 19:23:59 +0200</pubDate>
        </item>
    </channel>
</rss>
