batch/old/testCptsPub.php

785 lines
52 KiB
PHP
Raw Permalink Normal View History

2012-07-28 14:21:05 +02:00
#!/usr/bin/php -c/var/www/batch/config/php_batch_sd.ini
<?php
include_once(FWK_PATH.'common/curl.php');
include_once(FWK_PATH.'common/class.htmlParser.php');
include_once(INCLUDE_PATH.'insee/classMInsee.php');
include_once(INCLUDE_PATH.'scores/classMRatios.php');
$modeDebug=$noTimer=false;
$strInfoScript='Usage : '.basename($argv[0]). " <option>
2013-06-19 10:24:49 +02:00
Mise <EFBFBD> jour des tribunaux comp<EFBFBD>tents pour les codes insee des communes depuis le site du minist<EFBFBD>re de la justice.
/**@todo : Il faudrait penser <20> mettre <20> jour en automatique la liste des communes depuis le site de l'insee !!!**/
2012-07-28 14:21:05 +02:00
Options :
2013-06-19 10:24:49 +02:00
-d Mode debug (Verbosit<EFBFBD> au maximum et fonctionnement sans timer ni contraintes temporelles)
2012-07-28 14:21:05 +02:00
-t Pas de timer du tout
2013-06-19 10:24:49 +02:00
-n=XXX Nombre de mill<EFBFBD>simes <EFBFBD> r<EFBFBD>cup<EFBFBD>rer
2012-07-28 14:21:05 +02:00
-r Afficher les ratios
";/* -i:XXXXX Reprendre au code commune Insee XXXXX
";*/
$argv=$_SERVER['argv'];
$tabComIn=array();
$ratio=false;
$nbMillesime=999;
for ($i=1,$j=0; isset($argv[$i]); $i++) {
if (substr($argv[$i],0,1)=='-') {
switch (substr($argv[$i],1,1)) {
case 'd': $modeDebug=true; break;
case 't': $noTimer=true; break;
case 'n': $nbMillesime=substr($argv[$i],3); break;
case 'r': $ratio=true; break;
case '-':
case '?': die($strInfoScript); break;
default: die('Option '. $argv[$i] . " inconnue !\n");
}
} else $tabComIn[]=$argv[$i];
}
/** URL = http://www.justice.gouv.fr/recherche-juridictions/popup.php?insee=01053&type=all
** referer = http://www.justice.gouv.fr/recherche-juridictions/consult.php
**
** URL = http://www.insee.fr/fr/nom_def_met/nomenclatures/cog/cog.telechargement.annee.asp?annee=2007
**/
2013-06-19 10:24:49 +02:00
echo date ('Y/m/d - H:i:s')." - D<>but de la mise <20> jour des juridictions par communes...".EOL;
2012-07-28 14:21:05 +02:00
$referer='http://www.justice.gouv.fr/recherche-juridictions/consult.php';
$iDb=new WDB();
$iInsee=new MInsee();
$tabVilles=$tabTri=array();
$table='bilansM14';
$tabZones=array(
'millesime'=>'<td align="center" colspan="4">ANALYSE DES EQUILIBRES FINANCIERS FONDAMENTAUX</td><td align="right">(.*)</td></tr>',
'depLib'=>'<tr class="bleu"><td colspan="2" class="libellepetit">DEPARTEMENT : (.*)</td>',
'comLib'=>'DEPARTEMENT : (?:.*)<td align="center" class="G" colspan="2">(.*)</td>',
2013-06-19 10:24:49 +02:00
'popLeg'=>'Population l<>gale en vigueur au 1er janvier de l\'exercice : (.*)habitants',
2012-07-28 14:21:05 +02:00
'popInf'=>'communes de(.*)hab<br>',
'fiscalite'=>'communes de(?:.*)hab<br>(.*)</th>',
'R01a'=>'<td class="montantpetit G">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)TOTAL DES PRODUITS DE FONCTIONNEMENT = A</td>',
'R01b'=>'<td class="montantpetit G">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)TOTAL DES PRODUITS DE FONCTIONNEMENT = A</td>',
'R01c'=>'<td class="montantpetit G">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)TOTAL DES PRODUITS DE FONCTIONNEMENT = A</td>',
2013-06-19 10:24:49 +02:00
'R02a'=>'<td class="montantpetit">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)dont : Imp<6D>ts Locaux</td>(?:.*)</td>(?:.*)</td>',
'R02b'=>'<td class="montantpetit">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)dont : Imp<6D>ts Locaux</td>(?:.*)</td>(?:.*)</td>',
'R02c'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)dont : Imp<6D>ts Locaux</td>(?:.*)</td>(?:.*)</td>',
'R02d'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)dont : Imp<6D>ts Locaux</td>(.*)</td>(?:.*)</td>',
'R02e'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)dont : Imp<6D>ts Locaux</td>(?:.*)</td>(.*)</td>',
'R03a'=>'Imp<6D>ts Locaux(?:.*)</tr>(?:.*)<td class="montantpetit">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Autres imp<6D>ts et taxes</td>(?:.*)</td>(?:.*)</td>',
'R03b'=>'Imp<6D>ts Locaux(?:.*)</tr>(?:.*)<td class="montantpetit">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Autres imp<6D>ts et taxes</td>(?:.*)</td>(?:.*)</td>',
'R03c'=>'Imp<6D>ts Locaux(?:.*)</tr>(?:.*)<td class="montantpetit">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Autres imp<6D>ts et taxes</td>(?:.*)</td>(?:.*)</td>',
'R03d'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Autres imp<6D>ts et taxes</td>(.*)</td>(?:.*)</td>',
'R03e'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Autres imp<6D>ts et taxes</td>(?:.*)</td>(.*)</td>',
'R04a'=>'Autres imp<6D>ts et taxes(?:.*)</tr>(?:.*)<td class="montantpetit">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Dotation globale de fonctionnement</td>(?:.*)</td>(?:.*)</td>',
'R04b'=>'Autres imp<6D>ts et taxes(?:.*)</tr>(?:.*)<td class="montantpetit">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Dotation globale de fonctionnement</td>(?:.*)</td>(?:.*)</td>',
'R04c'=>'Autres imp<6D>ts et taxes(?:.*)</tr>(?:.*)<td class="montantpetit">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Dotation globale de fonctionnement</td>(?:.*)</td>(?:.*)</td>',
2012-07-28 14:21:05 +02:00
'R04d'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Dotation globale de fonctionnement</td>(.*)</td>(?:.*)</td>',
'R04e'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Dotation globale de fonctionnement</td>(?:.*)</td>(.*)</td>',
'R05a'=>'Dotation globale de fonctionnement(?:.*)</tr>(?:.*)<td class="montantpetit G">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)TOTAL DES CHARGES DE FONCTIONNEMENT = B</td>',
'R05b'=>'Dotation globale de fonctionnement(?:.*)</tr>(?:.*)<td class="montantpetit G">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)TOTAL DES CHARGES DE FONCTIONNEMENT = B</td>',
'R05c'=>'Dotation globale de fonctionnement(?:.*)</tr>(?:.*)<td class="montantpetit G">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)TOTAL DES CHARGES DE FONCTIONNEMENT = B</td>',
'R06a'=>'CHARGES DE FONCTIONNEMENT(?:.*)</tr>(?:.*)<td class="montantpetit">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)dont : Charges de personnel</td>(?:.*)</td>(?:.*)</td>',
'R06b'=>'CHARGES DE FONCTIONNEMENT(?:.*)</tr>(?:.*)<td class="montantpetit">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)dont : Charges de personnel</td>(?:.*)</td>(?:.*)</td>',
'R06c'=>'CHARGES DE FONCTIONNEMENT(?:.*)</tr>(?:.*)<td class="montantpetit">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)dont : Charges de personnel</td>(?:.*)</td>(?:.*)</td>',
'R06d'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)dont : Charges de personnel</td>(.*)</td>(?:.*)</td>',
'R06e'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)dont : Charges de personnel</td>(?:.*)</td>(.*)</td>',
'R07a'=>'Charges de personnel(?:.*)</tr>(?:.*)<td class="montantpetit">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Achats et charges externes</td>(?:.*)</td>(?:.*)</td>',
'R07b'=>'Charges de personnel(?:.*)</tr>(?:.*)<td class="montantpetit">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Achats et charges externes</td>(?:.*)</td>(?:.*)</td>',
'R07c'=>'Charges de personnel(?:.*)</tr>(?:.*)<td class="montantpetit">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Achats et charges externes</td>(?:.*)</td>(?:.*)</td>',
'R07d'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Achats et charges externes</td>(.*)</td>(?:.*)</td>',
'R07e'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Achats et charges externes</td>(?:.*)</td>(.*)</td>',
2013-06-19 10:24:49 +02:00
'R08a'=>'Achats et charges externes(?:.*)</tr>(?:.*)<td class="montantpetit">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Charges financi<63>res</td>(?:.*)</td>(?:.*)</td>',
'R08b'=>'Achats et charges externes(?:.*)</tr>(?:.*)<td class="montantpetit">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Charges financi<63>res</td>(?:.*)</td>(?:.*)</td>',
'R08c'=>'Achats et charges externes(?:.*)</tr>(?:.*)<td class="montantpetit">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Charges financi<63>res</td>(?:.*)</td>(?:.*)</td>',
'R08d'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Charges financi<63>res</td>(.*)</td>(?:.*)</td>',
'R08e'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Charges financi<63>res</td>(?:.*)</td>(.*)</td>',
2012-07-28 14:21:05 +02:00
2013-06-19 10:24:49 +02:00
'R09a'=>'Charges financi<63>res(?:.*)</tr>(?:.*)<td class="montantpetit">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Contingents</td>(?:.*)</td>(?:.*)</td>',
'R09b'=>'Charges financi<63>res(?:.*)</tr>(?:.*)<td class="montantpetit">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Contingents</td>(?:.*)</td>(?:.*)</td>',
'R09c'=>'Charges financi<63>res(?:.*)</tr>(?:.*)<td class="montantpetit">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Contingents</td>(?:.*)</td>(?:.*)</td>',
2012-07-28 14:21:05 +02:00
'R09d'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Contingents</td>(.*)</td>(?:.*)</td>',
'R09e'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Contingents</td>(?:.*)</td>(.*)</td>',
2013-06-19 10:24:49 +02:00
'R10a'=>'Contingents(?:.*)</tr>(?:.*)<td class="montantpetit">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Subventions vers<72>es</td>(?:.*)</td>(?:.*)</td>',
'R10b'=>'Contingents(?:.*)</tr>(?:.*)<td class="montantpetit">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Subventions vers<72>es</td>(?:.*)</td>(?:.*)</td>',
'R10c'=>'Contingents(?:.*)</tr>(?:.*)<td class="montantpetit">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Subventions vers<72>es</td>(?:.*)</td>(?:.*)</td>',
'R10d'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Subventions vers<72>es</td>(.*)</td>(?:.*)</td>',
'R10e'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Subventions vers<72>es</td>(?:.*)</td>(.*)</td>',
2012-07-28 14:21:05 +02:00
2013-06-19 10:24:49 +02:00
'R11a'=>'Subventions vers<72>es(?:.*)</tr>(?:.*)<td class="montantpetit G">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)RESULTAT COMPTABLE = A - B = R</td>',
'R11b'=>'Subventions vers<72>es(?:.*)</tr>(?:.*)<td class="montantpetit G">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)RESULTAT COMPTABLE = A - B = R</td>',
'R11c'=>'Subventions vers<72>es(?:.*)</tr>(?:.*)<td class="montantpetit G">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)RESULTAT COMPTABLE = A - B = R</td>',
2012-07-28 14:21:05 +02:00
'R12a'=>'RESULTAT COMPTABLE = A - B = R(?:.*)</tr>(?:.*)<td class="montantpetit G">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)TOTAL DES RESSOURCES D\'INVESTISSEMENT = C</td>',
'R12b'=>'RESULTAT COMPTABLE = A - B = R(?:.*)</tr>(?:.*)<td class="montantpetit G">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)TOTAL DES RESSOURCES D\'INVESTISSEMENT = C</td>',
'R12c'=>'RESULTAT COMPTABLE = A - B = R(?:.*)</tr>(?:.*)<td class="montantpetit G">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)TOTAL DES RESSOURCES D\'INVESTISSEMENT = C</td>',
2013-06-19 10:24:49 +02:00
'R13a'=>'TOTAL DES RESSOURCES D\'INVESTISSEMENT = C(?:.*)</tr>(?:.*)<td class="montantpetit">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)dont : Emprunts bancaires et dettes assimil<69>es</td>(?:.*)</td>(?:.*)</td>',
'R13b'=>'TOTAL DES RESSOURCES D\'INVESTISSEMENT = C(?:.*)</tr>(?:.*)<td class="montantpetit">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)dont : Emprunts bancaires et dettes assimil<69>es</td>(?:.*)</td>(?:.*)</td>',
'R13c'=>'TOTAL DES RESSOURCES D\'INVESTISSEMENT = C(?:.*)</tr>(?:.*)<td class="montantpetit">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)dont : Emprunts bancaires et dettes assimil<69>es</td>(?:.*)</td>(?:.*)</td>',
'R13d'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)dont : Emprunts bancaires et dettes assimil<69>es</td>(.*)</td>(?:.*)</td>',
'R13e'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)dont : Emprunts bancaires et dettes assimil<69>es</td>(?:.*)</td>(.*)</td>',
2012-07-28 14:21:05 +02:00
2013-06-19 10:24:49 +02:00
'R14a'=>'dont : Emprunts bancaires et dettes assimil<69>es(?:.*)</tr>(?:.*)<td class="montantpetit">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Subventions re<72>ues</td>(?:.*)</td>(?:.*)</td>',
'R14b'=>'dont : Emprunts bancaires et dettes assimil<69>es(?:.*)</tr>(?:.*)<td class="montantpetit">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Subventions re<72>ues</td>(?:.*)</td>(?:.*)</td>',
'R14c'=>'dont : Emprunts bancaires et dettes assimil<69>es(?:.*)</tr>(?:.*)<td class="montantpetit">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Subventions re<72>ues</td>(?:.*)</td>(?:.*)</td>',
'R14d'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Subventions re<72>ues</td>(.*)</td>(?:.*)</td>',
'R14e'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Subventions re<72>ues</td>(?:.*)</td>(.*)</td>',
2012-07-28 14:21:05 +02:00
2013-06-19 10:24:49 +02:00
'R15a'=>'Subventions re<72>ues(?:.*)</tr>(?:.*)<td class="montantpetit">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)FCTVA</td>(?:.*)</td>(?:.*)</td>',
'R15b'=>'Subventions re<72>ues(?:.*)</tr>(?:.*)<td class="montantpetit">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)FCTVA</td>(?:.*)</td>(?:.*)</td>',
'R15c'=>'Subventions re<72>ues(?:.*)</tr>(?:.*)<td class="montantpetit">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)FCTVA</td>(?:.*)</td>(?:.*)</td>',
2012-07-28 14:21:05 +02:00
'R15d'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)FCTVA</td>(.*)</td>(?:.*)</td>',
'R15e'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)FCTVA</td>(?:.*)</td>(.*)</td>',
2013-06-19 10:24:49 +02:00
'R16a'=>'FCTVA(?:.*)</tr>(?:.*)<td class="montantpetit">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Retour de biens affect<63>s, conc<6E>d<EFBFBD>s, ...</td>(?:.*)</td>(?:.*)</td>',
'R16b'=>'FCTVA(?:.*)</tr>(?:.*)<td class="montantpetit">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Retour de biens affect<63>s, conc<6E>d<EFBFBD>s, ...</td>(?:.*)</td>(?:.*)</td>',
'R16c'=>'FCTVA(?:.*)</tr>(?:.*)<td class="montantpetit">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Retour de biens affect<63>s, conc<6E>d<EFBFBD>s, ...</td>(?:.*)</td>(?:.*)</td>',
'R16d'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Retour de biens affect<63>s, conc<6E>d<EFBFBD>s, ...</td>(.*)</td>(?:.*)</td>',
'R16e'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Retour de biens affect<63>s, conc<6E>d<EFBFBD>s, ...</td>(?:.*)</td>(.*)</td>',
'R17a'=>'Retour de biens affect<63>s, conc<6E>d<EFBFBD>s, ...(?:.*)</tr>(?:.*)<td class="montantpetit G">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)TOTAL DES EMPLOIS D\'INVESTISSEMENT = D</td>',
'R17b'=>'Retour de biens affect<63>s, conc<6E>d<EFBFBD>s, ...(?:.*)</tr>(?:.*)<td class="montantpetit G">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)TOTAL DES EMPLOIS D\'INVESTISSEMENT = D</td>',
'R17c'=>'Retour de biens affect<63>s, conc<6E>d<EFBFBD>s, ...(?:.*)</tr>(?:.*)<td class="montantpetit G">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)TOTAL DES EMPLOIS D\'INVESTISSEMENT = D</td>',
'R18a'=>'TOTAL DES EMPLOIS D\'INVESTISSEMENT = D(?:.*)</tr>(?:.*)<td class="montantpetit">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)dont : D<>penses d\'<27>quipement</td>(?:.*)</td>(?:.*)</td>',
'R18b'=>'TOTAL DES EMPLOIS D\'INVESTISSEMENT = D(?:.*)</tr>(?:.*)<td class="montantpetit">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)dont : D<>penses d\'<27>quipement</td>(?:.*)</td>(?:.*)</td>',
'R18c'=>'TOTAL DES EMPLOIS D\'INVESTISSEMENT = D(?:.*)</tr>(?:.*)<td class="montantpetit">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)dont : D<>penses d\'<27>quipement</td>(?:.*)</td>(?:.*)</td>',
'R18d'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)dont : D<>penses d\'<27>quipement</td>(.*)</td>(?:.*)</td>',
'R18e'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)dont : D<>penses d\'<27>quipement</td>(?:.*)</td>(.*)</td>',
2012-07-28 14:21:05 +02:00
2013-06-19 10:24:49 +02:00
'R19a'=>'dont : D<>penses d\'<27>quipement(?:.*)</tr>(?:.*)<td class="montantpetit">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Remboursement d\'emprunts et dettes assimil<69>es</td>(?:.*)</td>(?:.*)</td>',
'R19b'=>'dont : D<>penses d\'<27>quipement(?:.*)</tr>(?:.*)<td class="montantpetit">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Remboursement d\'emprunts et dettes assimil<69>es</td>(?:.*)</td>(?:.*)</td>',
'R19c'=>'dont : D<>penses d\'<27>quipement(?:.*)</tr>(?:.*)<td class="montantpetit">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Remboursement d\'emprunts et dettes assimil<69>es</td>(?:.*)</td>(?:.*)</td>',
'R19d'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Remboursement d\'emprunts et dettes assimil<69>es</td>(.*)</td>(?:.*)</td>',
'R19e'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Remboursement d\'emprunts et dettes assimil<69>es</td>(?:.*)</td>(.*)</td>',
'R20a'=>'Remboursement d\'emprunts et dettes assimil<69>es(?:.*)</tr>(?:.*)<td class="montantpetit">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Charges <20> r<>partir</td>(?:.*)</td>(?:.*)</td>',
'R20b'=>'Remboursement d\'emprunts et dettes assimil<69>es(?:.*)</tr>(?:.*)<td class="montantpetit">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Charges <20> r<>partir</td>(?:.*)</td>(?:.*)</td>',
'R20c'=>'Remboursement d\'emprunts et dettes assimil<69>es(?:.*)</tr>(?:.*)<td class="montantpetit">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Charges <20> r<>partir</td>(?:.*)</td>(?:.*)</td>',
'R20d'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Charges <20> r<>partir</td>(.*)</td>(?:.*)</td>',
'R20e'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Charges <20> r<>partir</td>(?:.*)</td>(.*)</td>',
2012-07-28 14:21:05 +02:00
2013-06-19 10:24:49 +02:00
'R21a'=>'Charges <20> r<>partir(?:.*)</tr>(?:.*)<td class="montantpetit">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Immobilisations affect<63>es, conc<6E>d<EFBFBD>es, ...</td>(?:.*)</td>(?:.*)</td>',
'R21b'=>'Charges <20> r<>partir(?:.*)</tr>(?:.*)<td class="montantpetit">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Immobilisations affect<63>es, conc<6E>d<EFBFBD>es, ...</td>(?:.*)</td>(?:.*)</td>',
'R21c'=>'Charges <20> r<>partir(?:.*)</tr>(?:.*)<td class="montantpetit">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Immobilisations affect<63>es, conc<6E>d<EFBFBD>es, ...</td>(?:.*)</td>(?:.*)</td>',
'R21d'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Immobilisations affect<63>es, conc<6E>d<EFBFBD>es, ...</td>(.*)</td>(?:.*)</td>',
'R21e'=>'<td class="montantpetit">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Immobilisations affect<63>es, conc<6E>d<EFBFBD>es, ...</td>(?:.*)</td>(.*)</td>',
'R22a'=>'Immobilisations affect<63>es, conc<6E>d<EFBFBD>es, ...(?:.*)</tr>(?:.*)<td class="montantpetit G">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Besoin ou capacit<69> de financement R<>siduel de la section d\'investissement = D - C</td>',
'R22b'=>'Immobilisations affect<63>es, conc<6E>d<EFBFBD>es, ...(?:.*)</tr>(?:.*)<td class="montantpetit G">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Besoin ou capacit<69> de financement R<>siduel de la section d\'investissement = D - C</td>',
'R22c'=>'Immobilisations affect<63>es, conc<6E>d<EFBFBD>es, ...(?:.*)</tr>(?:.*)<td class="montantpetit G">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Besoin ou capacit<69> de financement R<>siduel de la section d\'investissement = D - C</td>',
'R23a'=>'Besoin ou capacit<69> de financement R<>siduel de la section d\'investissement = D - C(?:.*)</tr>(?:.*)<td class="montantpetit">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)+ Solde des op<6F>rations pour le compte de tiers</td>',
'R23b'=>'Besoin ou capacit<69> de financement R<>siduel de la section d\'investissement = D - C(?:.*)</tr>(?:.*)<td class="montantpetit">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)+ Solde des op<6F>rations pour le compte de tiers</td>',
'R23c'=>'Besoin ou capacit<69> de financement R<>siduel de la section d\'investissement = D - C(?:.*)</tr>(?:.*)<td class="montantpetit">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)+ Solde des op<6F>rations pour le compte de tiers</td>',
'R24a'=>'Solde des op<6F>rations pour le compte de tiers(?:.*)</tr>(?:.*)<td class="montantpetit G">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)= Besoin ou capacit<69> de financement de la section d\'investissement = E</td>',
'R24b'=>'Solde des op<6F>rations pour le compte de tiers(?:.*)</tr>(?:.*)<td class="montantpetit G">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)= Besoin ou capacit<69> de financement de la section d\'investissement = E</td>',
'R24c'=>'Solde des op<6F>rations pour le compte de tiers(?:.*)</tr>(?:.*)<td class="montantpetit G">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)= Besoin ou capacit<69> de financement de la section d\'investissement = E</td>',
'R25a'=>'Besoin ou capacit<69> de financement de la section d\'investissement = E(?:.*)</tr>(?:.*)<td class="montantpetit G">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)R<>sultat d\'ensemble = R - E</td>',
'R25b'=>'Besoin ou capacit<69> de financement de la section d\'investissement = E(?:.*)</tr>(?:.*)<td class="montantpetit G">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)R<>sultat d\'ensemble = R - E</td>',
'R25c'=>'Besoin ou capacit<69> de financement de la section d\'investissement = E(?:.*)</tr>(?:.*)<td class="montantpetit G">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)R<>sultat d\'ensemble = R - E</td>',
'R26a'=>'R<>sultat d\'ensemble = R - E(?:.*)</tr>(?:.*)<td class="montantpetita">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Exc<78>dent brut de fonctionnement</td>(?:.*)</td>(?:.*)</td>',
'R26b'=>'R<>sultat d\'ensemble = R - E(?:.*)</tr>(?:.*)<td class="montantpetita">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Exc<78>dent brut de fonctionnement</td>(?:.*)</td>(?:.*)</td>',
'R26c'=>'R<>sultat d\'ensemble = R - E(?:.*)</tr>(?:.*)<td class="montantpetita">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Exc<78>dent brut de fonctionnement</td>(?:.*)</td>(?:.*)</td>',
'R26d'=>'<td class="montantpetita">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Exc<78>dent brut de fonctionnement</td>(.*)</td>(?:.*)</td>',
'R26e'=>'<td class="montantpetita">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Exc<78>dent brut de fonctionnement</td>(?:.*)</td>(.*)</td>',
'R27a'=>'Exc<78>dent brut de fonctionnement(?:.*)</tr>(?:.*)<td class="montantpetita">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Capacit<69> d\'autofinancement = CAF</td>(?:.*)</td>(?:.*)</td>',
'R27b'=>'Exc<78>dent brut de fonctionnement(?:.*)</tr>(?:.*)<td class="montantpetita">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Capacit<69> d\'autofinancement = CAF</td>(?:.*)</td>(?:.*)</td>',
'R27c'=>'Exc<78>dent brut de fonctionnement(?:.*)</tr>(?:.*)<td class="montantpetita">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Capacit<69> d\'autofinancement = CAF</td>(?:.*)</td>(?:.*)</td>',
'R27d'=>'<td class="montantpetita">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Capacit<69> d\'autofinancement = CAF</td>(.*)</td>(?:.*)</td>',
'R27e'=>'<td class="montantpetita">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Capacit<69> d\'autofinancement = CAF</td>(?:.*)</td>(.*)</td>',
'R28a'=>'Capacit<69> d\'autofinancement = CAF(?:.*)</tr>(?:.*)<td class="montantpetita">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)CAF nette du remboursement en capital des emprunts</td>(?:.*)</td>(?:.*)</td>',
'R28b'=>'Capacit<69> d\'autofinancement = CAF(?:.*)</tr>(?:.*)<td class="montantpetita">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)CAF nette du remboursement en capital des emprunts</td>(?:.*)</td>(?:.*)</td>',
'R28c'=>'Capacit<69> d\'autofinancement = CAF(?:.*)</tr>(?:.*)<td class="montantpetita">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)CAF nette du remboursement en capital des emprunts</td>(?:.*)</td>(?:.*)</td>',
2012-07-28 14:21:05 +02:00
'R28d'=>'<td class="montantpetita">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)CAF nette du remboursement en capital des emprunts</td>(.*)</td>(?:.*)</td>',
'R28e'=>'<td class="montantpetita">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)CAF nette du remboursement en capital des emprunts</td>(?:.*)</td>(.*)</td>',
'R29a'=>'CAF nette du remboursement en capital des emprunts(?:.*)</tr>(?:.*)<td class="montantpetitd">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Encours total de la dette au 31/12/N</td>(?:.*)</td>(?:.*)</td>',
'R29b'=>'CAF nette du remboursement en capital des emprunts(?:.*)</tr>(?:.*)<td class="montantpetitd">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Encours total de la dette au 31/12/N</td>(?:.*)</td>(?:.*)</td>',
'R29c'=>'CAF nette du remboursement en capital des emprunts(?:.*)</tr>(?:.*)<td class="montantpetitd">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Encours total de la dette au 31/12/N</td>(?:.*)</td>(?:.*)</td>',
'R29d'=>'<td class="montantpetitd">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Encours total de la dette au 31/12/N</td>(.*)</td>(?:.*)</td>',
'R29e'=>'<td class="montantpetitd">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Encours total de la dette au 31/12/N</td>(?:.*)</td>(.*)</td>',
2013-06-19 10:24:49 +02:00
'R30a'=>'Encours total de la dette au 31/12/N(?:.*)</tr>(?:.*)<td class="montantpetitd">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Annuit<69> de la dette</td>(?:.*)</td>(?:.*)</td>',
'R30b'=>'Encours total de la dette au 31/12/N(?:.*)</tr>(?:.*)<td class="montantpetitd">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Annuit<69> de la dette</td>(?:.*)</td>(?:.*)</td>',
'R30c'=>'Encours total de la dette au 31/12/N(?:.*)</tr>(?:.*)<td class="montantpetitd">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Annuit<69> de la dette</td>(?:.*)</td>(?:.*)</td>',
'R30d'=>'<td class="montantpetitd">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Annuit<69> de la dette</td>(.*)</td>(?:.*)</td>',
'R30e'=>'<td class="montantpetitd">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Annuit<69> de la dette</td>(?:.*)</td>(.*)</td>',
2012-07-28 14:21:05 +02:00
2013-06-19 10:24:49 +02:00
'R31a'=>'Annuit<69> de la dette(?:.*)</tr>(?:.*)<td class="montantpetitd">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Avances du Tr<54>sor au 31/12/N</td>(?:.*)</td>(?:.*)</td>',
'R31b'=>'Annuit<69> de la dette(?:.*)</tr>(?:.*)<td class="montantpetitd">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Avances du Tr<54>sor au 31/12/N</td>(?:.*)</td>(?:.*)</td>',
'R31c'=>'Annuit<69> de la dette(?:.*)</tr>(?:.*)<td class="montantpetitd">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Avances du Tr<54>sor au 31/12/N</td>(?:.*)</td>(?:.*)</td>',
'R31d'=>'<td class="montantpetitd">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Avances du Tr<54>sor au 31/12/N</td>(.*)</td>(?:.*)</td>',
'R31e'=>'<td class="montantpetitd">(?:.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Avances du Tr<54>sor au 31/12/N</td>(?:.*)</td>(.*)</td>',
2012-07-28 14:21:05 +02:00
2013-06-19 10:24:49 +02:00
'R32a'=>'(?:Avances du Tr<54>sor|Annuit<69> de la dette)(?:.*)</tr>(?:.*)<td class="montantpetitd G">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)FONDS DE ROULEMENT</tH>',
'R32b'=>'(?:Avances du Tr<54>sor|Annuit<69> de la dette)(?:.*)</tr>(?:.*)<td class="montantpetitd G">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)FONDS DE ROULEMENT</tH>',
'R32c'=>'(?:Avances du Tr<54>sor|Annuit<69> de la dette)(?:.*)</tr>(?:.*)<td class="montantpetitd G">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)FONDS DE ROULEMENT</tH>',
2012-07-28 14:21:05 +02:00
'R33a'=>'ELEMENTS DE FISCALITE DIRECTE LOCALE(?:.*)<td class="montantpetit">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Taxe d\'habitation',
'R33b'=>'ELEMENTS DE FISCALITE DIRECTE LOCALE(?:.*)<td class="montantpetit">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Taxe d\'habitation',
'R33c'=>'ELEMENTS DE FISCALITE DIRECTE LOCALE(?:.*)<td class="montantpetit">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Taxe d\'habitation',
'R33d'=>'Taxe d\'habitation(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)</td>',
'R33e'=>'Taxe d\'habitation(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)</td>',
'R33f'=>'Taxe d\'habitation(?:.*)</td>(?:.*)</td>(?:.*)</td>(.*)</td>',
2013-06-19 10:24:49 +02:00
'R34a'=>'Taxe d\'habitation(?:.*)<td class="montantpetit">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Taxe fonci<63>re sur les propri<72>t<EFBFBD>s b<>ties',
'R34b'=>'Taxe d\'habitation(?:.*)<td class="montantpetit">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Taxe fonci<63>re sur les propri<72>t<EFBFBD>s b<>ties',
'R34c'=>'Taxe d\'habitation(?:.*)<td class="montantpetit">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Taxe fonci<63>re sur les propri<72>t<EFBFBD>s b<>ties',
'R34d'=>'Taxe fonci<63>re sur les propri<72>t<EFBFBD>s b<>ties</td>(.*)</td>(?:.*)</td>(?:.*)</td>',
'R34e'=>'Taxe fonci<63>re sur les propri<72>t<EFBFBD>s b<>ties</td>(?:.*)</td>(.*)</td>(?:.*)</td>',
'R34f'=>'Taxe fonci<63>re sur les propri<72>t<EFBFBD>s b<>ties</td>(?:.*)</td>(?:.*)</td>(.*)</td>',
'R35a'=>'Taxe fonci<63>re sur les propri<72>t<EFBFBD>s b<>ties(?:.*)<td class="montantpetit">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Taxe fonci<63>re sur les propri<72>t<EFBFBD>s non b<>ties',
'R35b'=>'Taxe fonci<63>re sur les propri<72>t<EFBFBD>s b<>ties(?:.*)<td class="montantpetit">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Taxe fonci<63>re sur les propri<72>t<EFBFBD>s non b<>ties',
'R35c'=>'Taxe fonci<63>re sur les propri<72>t<EFBFBD>s b<>ties(?:.*)<td class="montantpetit">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Taxe fonci<63>re sur les propri<72>t<EFBFBD>s non b<>ties',
'R35d'=>'Taxe fonci<63>re sur les propri<72>t<EFBFBD>s non b<>ties</td>(.*)</td>(?:.*)</td>(?:.*)</td>',
'R35e'=>'Taxe fonci<63>re sur les propri<72>t<EFBFBD>s non b<>ties</td>(?:.*)</td>(.*)</td>(?:.*)</td>',
'R35f'=>'Taxe fonci<63>re sur les propri<72>t<EFBFBD>s non b<>ties</td>(?:.*)</td>(?:.*)</td>(.*)</td>',
'R36a'=>'Taxe fonci<63>re sur les propri<72>t<EFBFBD>s non b<>ties(?:.*)<td class="montantpetit">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Cotisation fonci<63>re des entreprises',
'R36b'=>'Taxe fonci<63>re sur les propri<72>t<EFBFBD>s non b<>ties(?:.*)<td class="montantpetit">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Cotisation fonci<63>re des entreprises',
'R36c'=>'Taxe fonci<63>re sur les propri<72>t<EFBFBD>s non b<>ties(?:.*)<td class="montantpetit">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Cotisation fonci<63>re des entreprises',
'R36d'=>'Cotisation fonci<63>re des entreprises(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)</td>',
'R36e'=>'Cotisation fonci<63>re des entreprises(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)</td>',
'R36f'=>'Cotisation fonci<63>re des entreprises(?:.*)</td>(?:.*)</td>(?:.*)</td>(.*)</td>',
'R37a'=>'Taxe fonci<63>re sur les propri<72>t<EFBFBD>s non b<>ties(?:.*)<td class="montantpetit">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Taxe professionnelle',
'R37b'=>'Taxe fonci<63>re sur les propri<72>t<EFBFBD>s non b<>ties(?:.*)<td class="montantpetit">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Taxe professionnelle',
'R37c'=>'Taxe fonci<63>re sur les propri<72>t<EFBFBD>s non b<>ties(?:.*)<td class="montantpetit">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Taxe professionnelle',
2012-07-28 14:21:05 +02:00
'R37d'=>'Taxe professionnelle(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)</td>',
'R37e'=>'Taxe professionnelle(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)</td>',
'R37f'=>'Taxe professionnelle(?:.*)</td>(?:.*)</td>(?:.*)</td>(.*)</td>',
2013-06-19 10:24:49 +02:00
'R38a'=>'Les taux et les produits de la fiscalit<69> directe locale(?:.*)<td class="montantpetitf">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Taxe d\'habitation',
'R38b'=>'Les taux et les produits de la fiscalit<69> directe locale(?:.*)<td class="montantpetitf">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Taxe d\'habitation',
'R38c'=>'Les taux et les produits de la fiscalit<69> directe locale(?:.*)<td class="montantpetitf">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Taxe d\'habitation',
'R38d'=>'Produits des imp<6D>ts locaux(?:.*)Taxe d\'habitation(?:.*)</td>(.*)</td>(?:.*)</td>',
'R38e'=>'Produits des imp<6D>ts locaux(?:.*)Taxe d\'habitation(?:.*)</td>(?:.*)</td>(.*)</td>',
'R39a'=>'Produits des imp<6D>ts locaux(?:.*)Taxe d\'habitation(?:.*)<td class="montantpetit">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Taxe fonci<63>re sur les propri<72>t<EFBFBD>s b<>ties</td>',
'R39b'=>'Produits des imp<6D>ts locaux(?:.*)Taxe d\'habitation(?:.*)<td class="montantpetit">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Taxe fonci<63>re sur les propri<72>t<EFBFBD>s b<>ties</td>',
'R39c'=>'Produits des imp<6D>ts locaux(?:.*)Taxe d\'habitation(?:.*)<td class="montantpetit">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Taxe fonci<63>re sur les propri<72>t<EFBFBD>s b<>ties</td>',
'R39d'=>'Produits des imp<6D>ts locaux(?:.*)Taxe fonci<63>re sur les propri<72>t<EFBFBD>s b<>ties(?:.*)</td>(.*)</td>(?:.*)</td>',
'R39e'=>'Produits des imp<6D>ts locaux(?:.*)Taxe fonci<63>re sur les propri<72>t<EFBFBD>s b<>ties(?:.*)</td>(?:.*)</td>(.*)</td>',
'R40a'=>'Produits des imp<6D>ts locaux(?:.*)Taxe fonci<63>re sur les propri<72>t<EFBFBD>s b<>ties(?:.*)<td class="montantpetit">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Taxe fonci<63>re sur les propri<72>t<EFBFBD>s non b<>ties',
'R40b'=>'Produits des imp<6D>ts locaux(?:.*)Taxe fonci<63>re sur les propri<72>t<EFBFBD>s b<>ties(?:.*)<td class="montantpetit">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Taxe fonci<63>re sur les propri<72>t<EFBFBD>s non b<>ties',
'R40c'=>'Produits des imp<6D>ts locaux(?:.*)Taxe fonci<63>re sur les propri<72>t<EFBFBD>s b<>ties(?:.*)<td class="montantpetit">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Taxe fonci<63>re sur les propri<72>t<EFBFBD>s non b<>ties',
'R40d'=>'Produits des imp<6D>ts locaux(?:.*)Taxe fonci<63>re sur les propri<72>t<EFBFBD>s non b<>ties(?:.*)</td>(.*)</td>(?:.*)</td>',
'R40e'=>'Produits des imp<6D>ts locaux(?:.*)Taxe fonci<63>re sur les propri<72>t<EFBFBD>s non b<>ties(?:.*)</td>(?:.*)</td>(.*)</td>',
'R41a'=>'Produits des imp<6D>ts locaux(?:.*)Taxe fonci<63>re sur les propri<72>t<EFBFBD>s non b<>ties(?:.*)<td class="montantpetitf">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Taxe professionnelle',
'R41b'=>'Produits des imp<6D>ts locaux(?:.*)Taxe fonci<63>re sur les propri<72>t<EFBFBD>s non b<>ties(?:.*)<td class="montantpetitf">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Taxe professionnelle',
'R41c'=>'Produits des imp<6D>ts locaux(?:.*)Taxe fonci<63>re sur les propri<72>t<EFBFBD>s non b<>ties(?:.*)<td class="montantpetitf">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Taxe professionnelle',
'R41d'=>'Produits des imp<6D>ts locaux(?:.*)Taxe professionnelle(?:.*)</td>(.*)</td>(?:.*)</td>',
'R41e'=>'Produits des imp<6D>ts locaux(?:.*)Taxe professionnelle(?:.*)</td>(?:.*)</td>(.*)</td>',
'R42a'=>'Produits des imp<6D>ts locaux(?:.*)Taxe fonci<63>re sur les propri<72>t<EFBFBD>s non b<>ties(?:.*)<td class="montantpetitf">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Compensation-Relais',
'R42b'=>'Produits des imp<6D>ts locaux(?:.*)Taxe fonci<63>re sur les propri<72>t<EFBFBD>s non b<>ties(?:.*)<td class="montantpetitf">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Compensation-Relais',
'R42c'=>'Produits des imp<6D>ts locaux(?:.*)Taxe fonci<63>re sur les propri<72>t<EFBFBD>s non b<>ties(?:.*)<td class="montantpetitf">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Compensation-Relais',
'R42d'=>'Produits des imp<6D>ts locaux(?:.*)Compensation-Relais(?:.*)</td>(.*)</td>(?:.*)</td>',
'R42e'=>'Produits des imp<6D>ts locaux(?:.*)Compensation-Relais(?:.*)</td>(?:.*)</td>(.*)</td>',
'R43a'=>'Produits des imp<6D>ts locaux(?:.*)Compensation-Relais(?:.*)<td class="montantpetitf">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Cotisation fonci<63>re des entreprises',
'R43b'=>'Produits des imp<6D>ts locaux(?:.*)Compensation-Relais(?:.*)<td class="montantpetitf">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Cotisation fonci<63>re des entreprises',
'R43c'=>'Produits des imp<6D>ts locaux(?:.*)Compensation-Relais(?:.*)<td class="montantpetitf">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Cotisation fonci<63>re des entreprises',
'R43d'=>'Produits des imp<6D>ts locaux(?:.*)Cotisation fonci<63>re des entreprises(?:.*)</td>(.*)</td>(?:.*)</td>',
'R43e'=>'Produits des imp<6D>ts locaux(?:.*)Cotisation fonci<63>re des entreprises(?:.*)</td>(?:.*)</td>(.*)</td>',
'R44a'=>'Produits des imp<6D>ts locaux(?:.*)FIN LIGNES TABLEAU UNIQUEMENT POUR APRES 2009(?:.*)<td class="montantpetit G">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Potentiel fiscal',
'R44b'=>'Produits des imp<6D>ts locaux(?:.*)FIN LIGNES TABLEAU UNIQUEMENT POUR APRES 2009(?:.*)<td class="montantpetit G">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Potentiel fiscal',
'R44c'=>'Produits des imp<6D>ts locaux(?:.*)FIN LIGNES TABLEAU UNIQUEMENT POUR APRES 2009(?:.*)<td class="montantpetit G">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Potentiel fiscal',
2012-07-28 14:21:05 +02:00
'popFisc'=>'<STRONG>Potentiel fiscal(?:.*)population(?:.*)=(.*)habitants',
// R841 - POTENTIEL FISCAL
'R44a_'=>'ELEMENTS DE FISCALITE(?:.*)<td class="montantpetit G">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Potentiel fiscal',
'R44b_'=>'ELEMENTS DE FISCALITE(?:.*)<td class="montantpetit G">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Potentiel fiscal',
'R44c_'=>'ELEMENTS DE FISCALITE(?:.*)<td class="montantpetit G">(?:.*)</td>(?:.*)</td>(?:.*)</td>(.*)Potentiel fiscal',
// R836 - Produits Taxe Habitation
'R38a_'=>'Potentiel fiscal(?:.*)<td class="montantpetitf">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Produits taxe d\'habitation',
'R38b_'=>'Potentiel fiscal(?:.*)<td class="montantpetitf">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Produits taxe d\'habitation',
'R38c_'=>'Potentiel fiscal(?:.*)<td class="montantpetitf">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Produits taxe d\'habitation',
'R38d_'=>'Produits taxe d\'habitation(?:.*)</td>(.*)</td>(?:.*)</td>',
'R38e_'=>'Produits taxe d\'habitation(?:.*)</td>(?:.*)</td>(.*)</td>',
2013-06-19 10:24:49 +02:00
// R837 - Produits foncier b<>ti
'R39a_'=>'Produits taxe d\'habitation(?:.*)<td class="montantpetit">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Produits foncier b<>ti</td>',
'R39b_'=>'Produits taxe d\'habitation(?:.*)<td class="montantpetit">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Produits foncier b<>ti</td>',
'R39c_'=>'Produits taxe d\'habitation(?:.*)<td class="montantpetit">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Produits foncier b<>ti</td>',
'R39d_'=>'Produits foncier b<>ti(?:.*)</td>(.*)</td>(?:.*)</td>',
'R39e_'=>'Produits foncier b<>ti(?:.*)</td>(?:.*)</td>(.*)</td>',
// R838 - Produits foncier non b<>ti
'R40a_'=>'Produits foncier b<>ti(?:.*)<tr class="bleu">(?:.*)<td class="montantpetit">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Produits foncier non b<>ti',
'R40b_'=>'Produits foncier b<>ti(?:.*)<tr class="bleu">(?:.*)<td class="montantpetit">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Produits foncier non b<>ti',
'R40c_'=>'Produits foncier b<>ti(?:.*)<tr class="bleu">(?:.*)<td class="montantpetit">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Produits foncier non b<>ti',
'R40d_'=>'Produits foncier non b<>ti(?:.*)</td>(.*)</td>(?:.*)</td>',
'R40e_'=>'Produits foncier non b<>ti(?:.*)</td>(?:.*)</td>(.*)</td>',
2012-07-28 14:21:05 +02:00
// R842 - Produits taxe professionnelle
2013-06-19 10:24:49 +02:00
'R41a_'=>'Produits foncier non b<>ti(?:.*)<td class="montantpetitf">(.*)</td>(?:.*)</td>(?:.*)</td>(?:.*)Produits taxe professionnelle',
'R41b_'=>'Produits foncier non b<>ti(?:.*)<td class="montantpetitf">(?:.*)</td>(.*)</td>(?:.*)</td>(?:.*)Produits taxe professionnelle',
'R41c_'=>'Produits foncier non b<>ti(?:.*)<td class="montantpetitf">(?:.*)</td>(?:.*)</td>(.*)</td>(?:.*)Produits taxe professionnelle',
2012-07-28 14:21:05 +02:00
'R41d_'=>'Produits taxe professionnelle(?:.*)</td>(.*)</td>(?:.*)</td>',
'R41e_'=>'Produits taxe professionnelle(?:.*)</td>(?:.*)</td>(.*)</td>',
// 'activite[actCode,actLib]'=>'\t\t\t\t\t\t\t<dt>(.*) :</dt><dd>(.*)</dd>',
);
if ($ratio) {
$lstCom=$iDb->select(
'bilansM14',
'millesime, dep, com, depA, siren, sirenValide, depLib, comLib, popLeg, popInf, fiscalite, popFisc, R01a, R01b, R01c, R02a, R02b, R02c, R02d, R02e, R03a, R03b, R03c, R03d, R03e, R04a, R04b, R04c, R04d, R04e, R05a, R05b, R05c, R06a, R06b, R06c, R06d, R06e, R07a, R07b, R07c, R07d, R07e, R08a, R08b, R08c, R08d, R08e, R09a, R09b, R09c, R09d, R09e, R10a, R10b, R10c, R10d, R10e, R11a, R11b, R11c, R12a, R12b, R12c, R13a, R13b, R13c, R13d, R13e, R14a, R14b, R14c, R14d, R14e, R15a, R15b, R15c, R15d, R15e, R16a, R16b, R16c, R16d, R16e, R17a, R17b, R17c, R18a, R18b, R18c, R18d, R18e, R19a, R19b, R19c, R19d, R19e, R20a, R20b, R20c, R20d, R20e, R21a, R21b, R21c, R21d, R21e, R22a, R22b, R22c, R23a, R23b, R23c, R24a, R24b, R24c, R25a, R25b, R25c, R26a, R26b, R26c, R26d, R26e, R27a, R27b, R27c, R27d, R27e, R28a, R28b, R28c, R28d, R28e, R29a, R29b, R29c, R29d, R29e, R30a, R30b, R30c, R30d, R30e, R31a, R31b, R31c, R31d, R31e, R32a, R32b, R32c, R33a, R33b, R33c, R33d, R33e, R33f, R34a, R34b, R34c, R34d, R34e, R34f, R35a, R35b, R35c, R35d, R35e, R35f, R36a, R36b, R36c, R36d, R36e, R36f, R37a, R37b, R37c, R37d, R37e, R37f, R38a, R38b, R38c, R38d, R38e, R39a, R39b, R39c, R39d, R39e, R40a, R40b, R40c, R40d, R40e, R41a, R41b, R41c, R41d, R41e, R42a, R42b, R42c, R42d, R42e, R43a, R43b, R43c, R43d, R43e, R44a, R44b, R44c, dateInsert',
"siren=212902324 ORDER BY millesime DESC LIMIT 0,5", false, MYSQL_ASSOC);
foreach ($lstCom as $i=>$tabCom) {
$R[]=convertZones('R', $tabCom);
}
print_r($R);
die();
}
$strCodeInsee='';
if (count($tabComIn)>0) {
if (strlen($tabComIn[0])<4) // @todo pas clean car ne gere qu'un seul dept
$strCodeInsee=" AND codeInsee LIKE '".$tabComIn[0]."%'";
else
$strCodeInsee=" AND codeInsee IN('".implode("','", $tabComIn)."')";
}
$lstCom=$iDb->select('villes', 'codeInsee, TRIM(CONCAT(ARTMAJ,NCC)) as LibCom',"1 $strCodeInsee /*DATEDIFF(NOW(), majTribunaux)>90*/ GROUP BY codeInsee", false);
foreach ($lstCom as $i=>$tabCom) {
$tabVilles['_'.$tabCom['codeInsee']]=trim($tabCom['LibCom']);
$tabTri[]='_'.$tabCom['codeInsee'];
}
$nbVilles=count($tabVilles);
shuffle($tabTri);
$lstCom=$iDb->select('etablissements_act', 'siren, codeCommune, raisonSociale',"siren BETWEEN 210000000 AND 219999999 AND cj=7210 AND siege=1", false);
foreach ($lstCom as $i=>$tabCom)
$tabSiret['_'.$tabCom['codeCommune']]=$tabCom['siren'];
$nbSiret=count($tabSiret);
echo date ('Y/m/d - H:i:s')." - Il y a $nbSiret siret en base.".EOL;
/*
$lstCom=$iDb->select('bilansM14','siren, COUNT(*) AS nb', "GROUP BY siren HAVING nb=11", false);
foreach ($lstCom as $i=>$tabCom) {
// Suppression des siren connus
/*foreach ($tabSiret as $codeCom=>$siren)
if ($tabCom['siren']==$siren) {
unset($tabSiret[$codeCom]);
}*
// Suppression des codes Communes connus
foreach ($tabTri as $j=>$codeCom)
if ($codeCom=$siren) {
unset($tabSiret[$codeCom]);
}
}*/
// Analyse sans sections
//$ini_array = parse_ini_file("/var/www/batch/config/bilans_alize.ini");
//print_r($ini_array);
// Analyse avec sections
//$ini_array = parse_ini_file("sample.ini", true);
//print_r($ini_array);
//die();
2013-06-19 10:24:49 +02:00
echo date ('Y/m/d - H:i:s')." - Il y a $nbVilles communes <20> mettre <20> jour...".EOL;
2012-07-28 14:21:05 +02:00
if ($modeDebug) $tempsEstime=round((22*$nbVilles)/60,1).' minutes';
else $tempsEstime=round((150*$nbVilles)/3600,1).' heures';
2013-06-19 10:24:49 +02:00
echo date ('Y/m/d - H:i:s')." - Temps estim<69> : $tempsEstime...".EOL;
2012-07-28 14:21:05 +02:00
foreach ($tabTri as $i=>$codeInsee) {
/*101 Guadeloupe
102 Guyane
103 Martinique
2013-06-19 10:24:49 +02:00
104 La r<EFBFBD>union
2012-07-28 14:21:05 +02:00
75 Paris !!!
02A
02B
*/
$numInsee=substr($codeInsee,1,5);
$dep=substr($numInsee,0,2);
$com=substr($numInsee,2,3);
$depA=0;
$sir2=false;
if ($dep<10) { $dep=dep*1; $sir="210".$dep."0$com"; $dep="00$dep"; }
elseif ($dep==75) { $dep='075'; $com='056'; $sir="21750001"; }
elseif ($dep=='2A') { $dep='02A'; $sir="21200$com"; }
elseif ($dep=='2B') { $dep='02B'; $sir="21200$com"; }
elseif ($dep<96) { $sir="21$dep"."0$com"; $sir2="21$dep"."$com".'0'; $dep="0$dep"; }
elseif ($dep==97) {
$dep=substr($numInsee,0,3);
$sir="21$dep".'0'.substr($com,1,2);
if ($dep==971) $depA=101; // Guadeloupe
elseif ($dep==972) $depA=102; // Guyane
elseif ($dep==973) $depA=103; // Martinique
2013-06-19 10:24:49 +02:00
elseif ($dep==974) $depA=104; // La r<>union
2012-07-28 14:21:05 +02:00
else continue;
}
else continue;
if ($depA==0) $depA=$dep;
$libInsee=@$tabVilles[$codeInsee];
$lettre=strtoupper(substr($libInsee,0,1));
$referer="http://alize2.finances.gouv.fr/communes/eneuro/RDep.php?dep=$dep&type=BPS&lettre=$lettre";
$url="http://alize2.finances.gouv.fr/communes/eneuro/tableau.php?icom=$com&dep=$dep&type=BPS&param=0";
$page=getUrl($url, '', '', $referer, false);
$body=$page['body'];
if (preg_match_all('/&type=BPS&param=0&exercice=(.*)"/Uis', $body, $matches)) {
$tabAnnees=array_unique($matches[1]);
} else {
2013-06-19 10:24:49 +02:00
echo "Ne trouve pas les ann<6E>es pour $dep $com $libInsee".EOL;
2012-07-28 14:21:05 +02:00
continue;
}
$referer=$url;
foreach ($tabAnnees as $j=>$millesime) {
if ($j>=$nbMillesime) continue;
$ret=$iDb->select($table, 'count(*)', "dep='$dep' AND com=$com AND millesime=$millesime", false);
if (@$ret[0][0]>0) continue;
// $com=232;
// $dep='029';
$tabInsert=array('dep'=>$dep,'depA'=>$depA,'com'=>$com);
$url="http://alize2.finances.gouv.fr/communes/eneuro/detail.php?icom=$com&dep=$dep&type=BPS&param=0&exercice=$millesime";
// http://alize2.finances.gouv.fr/communes/eneuro/detail.php?icom=002&dep=02B&type=BPS&param=0&exercice=2010
$page=getUrl($url, '', '', $referer, false);
$body=$page['body'];
$tabHtml=html2array($body, $tabZones);
foreach ($tabHtml as $zone=>$data) {
if ($zone=='popLeg' || $zone=='popFisc' || substr($zone,0,1)=='R') {
if (substr($zone,-1)=='_') {
if (isset($tabHtml[substr($zone,0,4)])) continue;
else
$zone=substr($zone,0,4);
}
$tabInsert[$zone]=strtr($data,array(' '=>'',','=>'.','%'=>''));
}
else $tabInsert[$zone]=$data;
}
if (count($tabInsert)<10)
continue;
/*
$sirenDeb=$sir.'0';
$sirenFin=$sir.'9';
$tabTmp=$iDb->select('etablissements', 'siren, nic, raisonSociale, cj', "siren BETWEEN $sirenDeb AND $sirenFin ORDER BY siege DESC, actif DESC LIMIT 0,1", false,MYSQL_ASSOC);
$siren=@$tabTmp[0]['siren']*1;
if ($siren==0 && $sir2) {
$sirenDeb=$sir2.'0';
$sirenFin=$sir2.'9';
$tabTmp=$iDb->select('etablissements', 'siren, nic, raisonSociale, cj', "siren BETWEEN $sirenDeb AND $sirenFin ORDER BY siege DESC, actif DESC LIMIT 0,1", false,MYSQL_ASSOC);
$siren=@$tabTmp[0]['siren']*1;
}
$rsInsee=$tabTmp[0]['raisonSociale'];
$nic=$tabTmp[0]['nic'];
$cj=$tabTmp[0]['cj'];
$lev=levenshtein('COMMUNE DE '.$libInsee, $rsInsee);
if ($lev<5) {
2013-06-19 10:24:49 +02:00
// OK le siren est coh<6F>rent
2012-07-28 14:21:05 +02:00
if (!$iInsee->valideSiren($siren,$nic)) {
$tabInsert['sirenValide']=0;
$tabInsert['siren']=$siren;
$tabInsert['comLibInsee']=$rsInsee;
$tabInsert['cj']=$cj;
} else
$tabInsert['sirenValide']=1;
} else
$tabInsert['sirenValide']=0;
*/
$siren=$tabSiret[$codeInsee];
if ($iInsee->valideSiren($siren)) {
$tabInsert['sirenValide']=1;
$tabInsert['siren']=$siren;
//$tabInsert['comLibInsee']=$rsInsee;
}
$tabInsert['dateInsert']=date('YmdHis');
if (!$iDb->insert($table, $tabInsert, false)) {
if (mysql_errno()==1062) {
unset($tabInsert['dateInsert']);
$iDb->update($table, $tabInsert, "id=$i", false);
} else {
print_r($tabInsert);
die(mysql_error());
}
}
$nb=count($tabInsert);
$comLib=$tabInsert['comLib'];
$millesime=$tabInsert['millesime'];
$popu=@$tabInsert['popFisc'];
if ($popu==0) $popu=@$tabInsert['popLeg'];
echo date('Y/m/d H:i:s')." - $i/$nbVilles - $dep $com : $siren $comLib ($millesime) = $popu habs. / $nb zones".EOL;
if ($modeDebug) randsleep(1,2);
else randsleep(7,21);
}
continue;
/*
print_r($tabHtml);
die();
die($body);
//$body2=preg_replace("/<!--.*?-->/s",'',$body);
$parser = new htmlParser($body);
$ar = $parser->toArray();
//print_r($ar);
/*
$idxDep=@array_tree_search_key($ar, '-{}-1-11-{}-');
$idxCom=@array_tree_search_key($ar, '-{}-1-12-{}-');
*
$depLu=getMultiArrayValueByKey($ar, '-{}-1-11-{}-');
$comLu=getMultiArrayValueByKey($ar, '-{}-1-12-{}-');
$popLu=getMultiArrayValueByKey($ar, '-{}-1-14-{}-');
$tailleLu=getMultiArrayValueByKey($ar, '-{}-3-9-{}-');
foreach($ini_array as $iRatio=>$idRatio) {
$R[$iRatio]=getMultiArrayValueByKey($ar, $idRatio);
}
print_r($R);
echo "$depLu.EOL.$comLu.EOL.$popLu.EOL.$tailleLu.EOL";
//die("$numInsee=$dep,$com: $libInsee".EOL.print_r($body,1));
}
/*
http://alize2.finances.gouv.fr/communes/eneuro/detail.php?icom=557&dep=0782010
*/
die();
$majCommune=false;
if (strpos($body, "<strong>Votre recherche d'une ou plusieurs juridictions n'a pu aboutir ! </strong>")==0)
{
$tabTmp=explode('<hr width="50%">',$body);
$sleep=false;
foreach ($tabTmp as $j=>$tabTrib) {
if (preg_match('/<font size="3"><strong>(.*)<\/strong><\/font>/i', $tabTrib, $results)) {
$libTri=strip_tags($results[1]);
if (preg_match("/^Cour d'Appel (.*)/i", $libTri, $results2)) $typeTri='L';
elseif (preg_match("/^Tribunal Administratif (.*)/i", $libTri, $results2)) $typeTri='D';
elseif (preg_match("/^Tribunal pour Enfants (.*)/i", $libTri, $results2)) $typeTri='E';
elseif (preg_match("/^Conseil de Prud'hommes (.*)/i", $libTri, $results2)) $typeTri='H';
2013-06-19 10:24:49 +02:00
elseif (preg_match("/^Tribunal de Grande Instance <20> Comp<6D>tence Commerciale (.*)/i",
2012-07-28 14:21:05 +02:00
$libTri, $results2)) $typeTri='G';//cc';
elseif (preg_match("/^Tribunal de Grande Instance (.*)/i", $libTri, $results2)) $typeTri='G';
elseif (preg_match("/^Tribunal de Commerce (.*)/i", $libTri, $results2)) $typeTri='C';
elseif (preg_match("/^Tribunal d'Instance (.*)/i", $libTri, $results2)) $typeTri='I';
elseif (preg_match("/^Cour Administrative d'Appel (.*)/i", $libTri, $results2)) $typeTri='V';
elseif (preg_match("/^Tribunal Mixte de Commerce (.*)/i", $libTri, $results2)) $typeTri='M';
2013-06-19 10:24:49 +02:00
elseif (preg_match("/^Chambre D<>tach<63>e de la Cour d'Appel (.*)/i",
2012-07-28 14:21:05 +02:00
$libTri, $results2)) $typeTri='L';
2013-06-19 10:24:49 +02:00
else die("Libell<EFBFBD> de tribunal '$libTri' inconnue !");
2012-07-28 14:21:05 +02:00
$nomTri=preg_replace("/^de /i",'',$results2[1]);
2013-06-19 10:24:49 +02:00
// @todo Trouver l'identifiant BODACC et le n<>interne SD
2012-07-28 14:21:05 +02:00
} elseif ($j==count($tabTmp)-1) {
break; // Car il ne s'agit plus de la liste
} else die('Erreur fatale');
if (preg_match_all('/<font size="2"><strong>(.*)<\/st(?:r|)ong>/i', $tabTrib, $results)) {
$tabAdr=$results[1];
$tabTmp2=explode('br',$tabAdr[0]);
$adresse1=trim(strtr(strip_tags($tabTmp2[0]),'><',' '));
$adresse2=trim(strtr(strip_tags(@$tabTmp2[1]),'><',' '));
$adresse3=trim(strtr(strip_tags(@$tabTmp2[2]),'><',' '));
$cpVille=strip_tags($tabAdr[1]);
if (preg_match('/^([\d]{4,5}) (.*)/i', $cpVille, $results2)) {
$cp=trim($results2[1]);
$ville=trim(strtoupper($results2[2]));
$villeFind=trim(strtr(' '.$ville.' ', array('0'=>'','1'=>'','2'=>'','3'=>'','4'=>'','5'=>'','6'=>'','7'=>'','8'=>'','9'=>'', "'"=>'',
' CEDEX '=>'',
' LE '=>'',
' LES '=>'',
' DU '=>'',
' DES '=>'',
' ST '=>'',
' STE '=>'',
' SAINT '=>'',
' SAINTE '=>'')));
}
if (preg_match('/T&eacute;l:(.*)<br>/Ui', $tabAdr[2], $results2))
$tel=str_replace(' ','',$results2[1])*1;
if (preg_match('/Fax:(.*)<br>/Ui', $tabAdr[2], $results2))
$fax=str_replace(' ','',$results2[1])*1;
}
$trib=$iDb->select('tribunaux', 'triId, triCode, triType, triNom, triCP, triTel, triFax', "triType='$typeTri' AND triStatut='Actif' AND ( (triTel='$tel' AND triTel<>0) OR (triFax='$fax' AND triFax<>0) )");
if (isset($trib[0]['triId'])) {
$id=$trib[0]['triId'];
$code=$trib[0]['triCode'];
$nom=$trib[0]['triNom'];
} else {
$trib=$iDb->select('tribunaux', 'triId, triCode, triType, triNom, triCP, triTel, triFax', "triType='$typeTri' AND triStatut='Actif' AND triNom LIKE '%".addslashes($nomTri)."%'");
if (isset($trib[0]['triId'])) {
$id=$trib[0]['triId'];
$code=$trib[0]['triCode'];
$nom=$trib[0]['triNom'];
} elseif ($villeFind<>'') {
$trib=$iDb->select('tribunaux', 'triId, triCode, triType, triNom, triCP, triTel, triFax, triStatut', "triType='$typeTri' AND triVille LIKE '%".addslashes($villeFind)."%'");
if (isset($trib[0]['triId'])) {
$id=$trib[0]['triId'];
$code=$trib[0]['triCode'];
$nom=$trib[0]['triNom'];
} else {
$id=0;
$code=$nom='';
echo "Tribunal $nomTri ($typeTri) inconnu ?".EOL;
if ($modeDebug) $line = trim(fgets(STDIN));
else die();
}
}
}
$str="$numInsee;1;$id;$libInsee;$libTri;$nom;$typeTri";//;$adresse1;$adresse2;$adresse3;$cp;$ville;$tel;$fax;$code;$nom\n";
echo $str;
if ($id>0) {
$ret=$iDb->insert('tribunauxInsee', array('CodeInsee'=>$numInsee,'triId'=>$id));
if (!$ret) {
2013-06-19 10:24:49 +02:00
echo ' D<>j<EFBFBD> en base.';
2012-07-28 14:21:05 +02:00
}
else {
$majCommune=true;
echo ' ===> INSERE !!!';
}
}
echo EOL;
}
} else {
$str="$numInsee;0;;$libInsee".EOL;
echo $str;
}
2013-06-19 10:24:49 +02:00
/** On marque la mise <20> jour de la liste des tribunaux de la commune **/
2012-07-28 14:21:05 +02:00
$ret=$iDb->update('villes', array('majTribunaux'=>date('Ymd')), "CodeInsee='$numInsee'");
if (date('Hi')*1>=1930) die(date ('Y/m/d - H:i:s')." - Fin du traitement".EOL);
elseif (!$modeDebug && !$noTimer) randsleep(21,63);
elseif (!$noTimer) randsleep(7,21);
}
function array_tree_search_key($a, $subkey) {
foreach (array_keys($a) as $i=>$k) {
if ($k == $subkey) {
return array($i);
}
elseif ($pos = array_tree_search_key($a[$k], $subkey)) {
return array_merge(array($i), $pos);
}
}
}
function getPosition(array $arr, $key) {
$it = new RecursiveIteratorIterator(new RecursiveArrayIterator($arr),
RecursiveIteratorIterator::SELF_FIRST);
$pos = array();
foreach ($it as $k => $v) {
if (count($pos) - 1 > $it->getDepth()) {
array_pop($pos);
$pos[$it->getDepth()]++;
}
elseif (count($pos) - 1 < $it->getDepth()) {
array_push($pos, 0);
}
else {
$pos[$it->getDepth()]++;
}
if ($k === $key) {
return $pos;
}
}
}
function getElementKey(array $arr, array $position) {
$cur = $arr;
$curkey = null;
foreach ($position as $p) {
reset($cur);
for ($i = 0; $i < $p; $i++) {
next($cur);
}
$curkey = key($cur);
$cur = current($cur);
}
return $curkey;
}
function getMultiArrayValueByKey($tableau, $key)
{
$getInnerHTML=false;
2013-06-19 10:24:49 +02:00
// on fait une boucle qui lit les <20>l<EFBFBD>ments du tableau
2012-07-28 14:21:05 +02:00
foreach ($tableau as $cle=>$valeur)
{
2013-06-19 10:24:49 +02:00
// si l'un des <20>l<EFBFBD>ments est lui m<>me un tableau
// alors on applique la fonction <20> ce tableau
2012-07-28 14:21:05 +02:00
if(is_array($valeur))
{
2013-06-19 10:24:49 +02:00
// on affiche le nom de la cl<63> et
// le d<>but d'une liste pour
// d<>caler le contenu vers la droite
2012-07-28 14:21:05 +02:00
// echo $cle.' : <ul>';
2013-06-19 10:24:49 +02:00
// ici se r<>alise la r<>cursivit<69>
// c'est <20> dire qu'on applique la fonction
// <20> l'<27>l<EFBFBD>ment en cours car c'est lui aussi un tableau
2012-07-28 14:21:05 +02:00
$valRet=getMultiArrayValueByKey($valeur, $key);
if ($valRet<>NULL)
return $valRet;
// on ferme la liste
// echo '</ul>';
}
// si ce n'est pas un tableau
2013-06-19 10:24:49 +02:00
// alors on affiche le contenu de l'<27>l<EFBFBD>ment
2012-07-28 14:21:05 +02:00
else
{
if ($cle=='id') {
if ($valeur==$key) {
$getInnerHTML=true;
}
}
}
if ($getInnerHTML && $cle=='innerHTML') return $valeur;
}
return NULL;
}
?>