batch/1.1/old/getInpiDecisions.php

374 lines
18 KiB
PHP
Raw Normal View History

#!/usr/bin/php -c/var/www/ws/batch/config/php_batch_sd.ini
<?php
$table='annonces';
function wsLog($service, $siret='', $ref='') {}
include_once(FWK_PATH.'common/chiffres.php');
include_once(FWK_PATH.'common/dates.php');
include_once(INCLUDE_PATH.'insee/classMInsee.php');
include_once(INCLUDE_PATH.'partenaires/classMRncs.php');
include_once(INCLUDE_PATH.'partenaires/classMGreffes.php');
include_once(FWK_PATH.'mail/sendMail.php');
define('RNCS_IMR_FTP_HOST', '194.5.119.252');
define('RNCS_IMR_FTP_LOGIN', 'score');
define('RNCS_IMR_FTP_PASS', '1eUauTJZ');
define('RNCS_IMR_FTP_DIR', '/var/home_ftp/score/Send/');
define('RNCS_IMR_FTP_LOCALDIR', '/home/data/rncs/extelia/');
define('RNCS_IMR_BACKUP_DIR', '/home/data/rncs/imr/');
$strInfoScript='Usage : '.basename($argv[0]). " <option> [FICHIERS]
2013-06-19 08:24:49 +00:00
Chargement du/des informations compl<EFBFBD>mentaires en provenance des actes Infogreffe (license RNCS IMR).
Options :
2013-06-19 08:24:49 +00:00
-d Mode debug (Verbosit<EFBFBD> au maximum)
-q Ne pas mettre <EFBFBD> jour les listes d'<EFBFBD>v<EFBFBD>nements command<EFBFBD>s ce jour
-b Ne pas mettre <EFBFBD> jour les listes des nouveaux bilans PDF
-j Ne pas collecter les <EFBFBD>v<EFBFBD>nements INPI (annonces JAL Inpi)
-s:AAAAMMJJ Reprendre le chargement des annonces JAL Inpi <EFBFBD> compter du AAAAMMJJ
Reprendre les actes INPI du AAAAMMJJ
2013-06-19 08:24:49 +00:00
-i:XXX Reprendre les acc<EFBFBD>s aux <EFBFBD>v<EFBFBD>nements Infogreffe <EFBFBD> la ligne XXX
";
$iDb=new WDB();
$iDbR=new WDB('');
global $iInsee;
$iInsee=new MInsee();
$iRncs=new MRncs();
$iGreffes=new MGreffes();
//$iWs=new WsEntreprise();
$nbInsert=$nbDeja=0;
$nbNatu=$nbDeci=0;
2013-06-19 08:24:49 +00:00
$modeDebug=false; // Par d<>faut, pas de message de debug
$iReprise=false; // Reprendre les acc<63>s Infogreffe <20> la ligne d'<27>v<EFBFBD>nenement nouveaux re<72>u XXX
$message=''; // Initialisation du contenu du message d'information
2013-06-19 08:24:49 +00:00
$loadInpiLocal=true; // Par d<>faut on charge les <20>v<EFBFBD>nements INPI (g<>n<EFBFBD>ration des annonces JAL)
$jourStock=0; // Jour du stock SSAMMJJ (g<>n<EFBFBD>ration des annonces JAL <20> partir du ...)
$loadActesDuJour=true; // Par d<>faut on charge les listes d'<27>v<EFBFBD>nements command<6E>s ce jour par l'extranet
$loadBilans=true; // Par d<>faut on charge les listes de bilans IMAGES disponibles
$argv=$_SERVER['argv'];
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 's': $jourStock=substr($argv[$i],3,8); break;
case 'j': $loadInpiLocal=false; break;
case 'q': $loadActesDuJour=false; break;
case 'b': $loadBilans=false; break;
case 'i': $iReprise=substr($argv[$i],3); break;
case '-':
case '?': die($strInfoScript); break;
default: die('Option '. $argv[$i] . ' inconnue !'.EOL); break;
}
} else $tabFichLigneCmd[]=$argv[$i];
}
2013-06-19 08:24:49 +00:00
echo date ('Y/m/d - H:i:s') . " - D<>but du traitement des <20>v<EFBFBD>nements INPI".EOL;
$strDateFlux='';
if ($jourStock>0) {
$dateMaj=WDate::dateT('Ymd', 'Y-m-d', $jourStock);
$strDateFlux=" AND dateFlux='$dateMaj' ";
2013-06-19 08:24:49 +00:00
$message.="For<EFBFBD>age du dernier chargement de la collecte INPI en date du $dateMaj...\r\n";
echo date ('Y/m/d - H:i:s') . " - For<6F>age de l'acc<63>s aux <20>v<EFBFBD>nements Infogreffe en date du $dateMaj...".EOL;
}
// Date du dernier chargement INPI
$tabTmp=$iDb->select('rncs_chargements', "nomFichier, dateFlux, nbEvenAnn", "1 $strDateFlux ORDER BY dateFlux DESC LIMIT 0,1", true, MYSQL_ASSOC);
echo "SELECT nomFichier, dateFlux, nbEvenAnn
FROM rncs_chargements
WHERE 1 $strDateFlux ORDER BY dateFlux DESC LIMIT 0,1;".mysql_error().EOL;
$dateMaj=$tabTmp[0]['dateFlux'];
$nomFichier=$tabTmp[0]['nomFichier'];
$nbEvenAnn=$tabTmp[0]['nbEvenAnn'];
echo "dateMaj='$dateMaj', nomFichier='$nomFichier', nbEvenAnn=$nbEvenAnn".EOL;
/* $iDb->update('rncs_chargements', array(''=>@$iEven*1), "nomFichier='$nomFichier'");*/
2013-06-19 08:24:49 +00:00
// Nombre d'<27>v<EFBFBD>nements charg<72>s
echo "SELECT e.siren, e.codeInterne, e.dateDepot, e.codeEven, t.libEven, t.codEven, e.flux
FROM rncs_even e, tabEvenRncs t
WHERE e.flux='$dateMaj' AND e.codeEven=t.codeEven /*AND codEven>0*/ GROUP BY siren, dateDepot, codeEven;".EOL;
$nbEven=$iDbR->select( 'rncs_even e, tabEvenRncs t',
"e.siren, e.codeInterne, e.dateDepot, e.codeEven, t.libEven, t.codEven, e.flux",
"e.flux='$dateMaj' AND e.codeEven=t.codeEven /*AND codEven>0*/ GROUP BY siren, dateDepot, codeEven LIMIT 0,100000",
true, MYSQL_ASSOC, true);
echo mysql_error();
2013-06-19 08:24:49 +00:00
// Nombre d'<27>v<EFBFBD>nements d<>j<EFBFBD> mis <20> jour (compl<70>t<EFBFBD>s)
$tabTmp=$iDb->select('rncs_even_info', "count(*) AS nb", "flux='$dateMaj'", true, MYSQL_ASSOC);
$nbEvenMaj=$tabTmp[0]['nb'];
if ($nbEvenMaj>$nbEven && !$iReprise && $nbEvenAnn>0) {
2013-06-19 08:24:49 +00:00
$message.="Le dernier chargement INPI date du $dateMaj et contient $nbEvenMaj <20>v<EFBFBD>nements d<>j<EFBFBD> mis <20> jour sur les $nbEven <20>v<EFBFBD>nements du jour !\r\n";
echo date ('Y/m/d - H:i:s') . " - Le dernier chargement INPI date du $dateMaj et contient $nbEvenMaj <20>v<EFBFBD>nements d<>j<EFBFBD> mis <20> jour sur les $nbEven <20>v<EFBFBD>nements du jour !.".EOL;
//die('ici1');
} else {
2013-06-19 08:24:49 +00:00
$message.="Le dernier chargement INPI date du $dateMaj et contient $nbEven nouveaux <20>v<EFBFBD>nements dont $nbEvenMaj <20> jour.\r\n";
echo date ('Y/m/d - H:i:s') . " - Le dernier chargement INPI date du $dateMaj et contient $nbEven nouveaux <20>v<EFBFBD>nements dont $nbEvenMaj <20> jour.".EOL;
//die('ici2');
$sirenPre=false;
$iEven=-1;
while($even=$iDbR->fetch(MYSQL_ASSOC)) {
$iEven++;
//foreach ($AnnDb as $iEven=>$even) {
if ($iEven<$iReprise) continue;
echo "$iEven/$nbEven:".$even['siren'].' le '.$even['dateDepot'].': '.$even['codeEven'].' '.$even['libEven'].' ('.$even['codeInterne'].') ... ';
$tabActes=@$iGreffes->getListeActes($even['siren']);
foreach ($tabActes as $acte) {
//echo $even['siren'].' - '.$even['dateDepot'].'='.$acte['depot_date'].EOL;
if ($even['dateDepot']==$acte['depot_date']) {
echo $acte['acte_nature'].' - '.$acte['acte_decision'];
if ($acte['acte_date']=='0000-00-00')
$dateActe=$even['dateDepot'];
else
$dateActe=$acte['acte_date'];
$tabInsert=array(
'siren' => $even['siren'],
'codeInterne' => $even['codeInterne'],
'dateDepot' => $even['dateDepot'],
'codeEven' => $even['codeEven'],
'flux' => $even['flux'],
'depot_num' => $acte['depot_num'],
'depot_date' => $acte['depot_date'],
'acte_num' => $acte['acte_num'],
'acte_date' => $dateActe,
'acte_type' => $acte['acte_type'],
'acte_lib' => $acte['acte_lib'],
'acte_pages' => $acte['acte_pages'],
'acte_nature' => $acte['acte_nature'],
'acte_decision' => $acte['acte_decision'],
'collecte' => $even['codEven'],
);
if ($iDb->insert('rncs_even_info', $tabInsert)) {
$nbInsert++;
if ($acte['acte_nature']<>'') $nbNatu++;
if ($acte['acte_decision']<>'') $nbDeci++;
} else
$nbDeja++;
}
//print_r($acte);
}
echo EOL;
// if (!$iGreffes->enCache && $sirenPre<>$even['siren']) randsleep(1,3);
$sirenPre=$even['siren'];
}
2013-06-19 08:24:49 +00:00
$message.="$nbInsert <20>v<EFBFBD>nements avec compl<70>ments ajout<75>s et $nbDeja <20>v<EFBFBD>nements d<>j<EFBFBD> en base ($nbNatu natures et $nbDeci d<>cisions.\r\n";
echo date('Y/m/d - H:i:s') ." - $nbInsert <20>v<EFBFBD>nements avec compl<70>ments ajout<75>s et $nbDeja <20>v<EFBFBD>nements d<>j<EFBFBD> en base ($nbNatu natures et $nbDeci d<>cisions.".EOL;
$iDb->update('rncs_chargements', array('nbEvenAnn'=>@$iEven*1), "nomFichier='$nomFichier'");
}
if ($loadInpiLocal) {
/**
2013-06-19 08:24:49 +00:00
** Ev<EFBFBD>nements importants en collecte INPI
**/
if ($jourStock>0) {
$dateMaj=WDate::dateT('Ymd', 'Y-m-d', $jourStock).' 00:00:00';
2013-06-19 08:24:49 +00:00
$message.="For<EFBFBD>age du dernier chargement de la collecte INPI en date du $dateMaj...\r\n";
echo date ('Y/m/d - H:i:s') . " - For<6F>age du dernier chargement de la collecte INPI en date du $dateMaj...".EOL;
}
$AnnDb=$iDb->select('rncs_even_info j, rncs_entrep e, tabEvenRncs l',
"j.siren, e.sirenValide, l.codEven AS typeEven, j.acte_date AS dateJugement, j.depot_date AS dateSource,
j.dateInsert, 'PP' AS source, e.triCode AS tribunal, e.raisonSociale, l.codeEven AS codeEvenRncs,
j.acte_nature, j.acte_decision, e.flux",
"j.dateInsert>'$dateMaj' AND j.siren=e.siren AND DATEDIFF(NOW(), j.dateDepot)<=60 AND
j.codeEven=l.codeEven AND
(l.codEven>0
OR j.acte_decision LIKE '%FUSION%' OR j.acte_decision LIKE '%ABSORPTION%'
OR j.acte_decision LIKE '%TRANSMISSION%UNIVERSELLE%PATRIMOINE%'
2013-06-19 08:24:49 +00:00
OR j.acte_decision LIKE '%TUP%' OR j.acte_decision LIKE '%T.U.P%'
OR j.acte_decision LIKE '%DISSOLUTION%' OR j.acte_nature LIKE '%DISSOLUTION%'
OR j.acte_decision LIKE '%MISE%SOMMEIL%'
2013-06-19 08:24:49 +00:00
OR j.acte_decision LIKE '%APPORT%PARTIEL%ACTIF%'
OR j.acte_decision LIKE '%SCISSION%'
) ",
false, MYSQL_ASSOC);
$nbAnnonces=count($AnnDb);
2013-06-19 08:24:49 +00:00
$message.="Il y a $nbAnnonces <20>v<EFBFBD>nements INPI IMR depuis le dernier chargement du $dateMaj :\r\n";
echo date('Y/m/d - H:i:s') ." - Il y a $nbAnnonces <20>v<EFBFBD>nements INPI IMR depuis le dernier chargement du $dateMaj.".EOL;
foreach ($AnnDb as $i=>$tabInsert) {
$siren=$tabInsert['siren'];
$dateJugement=$tabInsert['dateJugement'];
if ($dateJugement=='0000-00-00') $tabInsert['dateJugement']=$tabInsert['dateSource'];
$typeEven=$tabInsert['typeEven']*1;
$strEven='';
if ($typeEven==0) {//projet de fusion par absorption
2013-06-19 08:24:49 +00:00
if (preg_match('/(FUSION|ABSORPTION)/i', $tabInsert['acte_decision'], $matches)) {
if (preg_match('/PROJET/i', $tabInsert['acte_decision'], $matches)) $typeEven=2726;
else $typeEven=2725;
2013-06-19 08:24:49 +00:00
} elseif (preg_match('/SCISSION/i', $tabInsert['acte_decision'], $matches)) {
if (preg_match('/PROJET/i', $tabInsert['acte_decision'], $matches)) $typeEven=2741;
else $typeEven=2740;
} elseif (preg_match('/TRANSMISSION.{1,3}UNIVERSELLE.{1,5}PATRIMOINE/i', $tabInsert['acte_decision'], $matches) ||
preg_match('/T.U.P/i', $tabInsert['acte_decision'], $matches) ||
preg_match('/\bTUP\b/i', $tabInsert['acte_decision'], $matches))
$typeEven=2620;
2013-06-19 08:24:49 +00:00
elseif (preg_match('/APPORT.{1,3}PARTIEL.{1,5}ACTIF/i', $tabInsert['acte_decision'], $matches)) {
if (preg_match('/PROJET/i', $tabInsert['acte_decision'], $matches)) $typeEven=2665;
else $typeEven=2661;
} elseif (preg_match('/DISSOLUTION/i', $tabInsert['acte_decision'], $matches) ||
preg_match('/DISSOLUTION/i', $tabInsert['acte_nature'], $matches) )
$typeEven=2203;
elseif (preg_match('/MISE.{1,9}SOMMEIL/i', $tabInsert['acte_decision'], $matches)) {
if (preg_match('/REPRISE/i', $tabInsert['acte_decision'], $matches)) $typeEven=2316;
else $typeEven=2206;
}
} elseif (preg_match('/(FUSION|ABSORPTION)/i', $tabInsert['acte_decision'], $matches)) {
if (preg_match('/PROJET/i', $tabInsert['acte_decision'], $matches)) $strEven=2726;
else $strEven=2725;
}
$tabInsert['complement']='';
if ($typeEven==2100 || $typeEven==2101 || $typeEven==2102) { // Modification de capital
$tabIdentite=$iRncs->getInfosEntrep($siren);
$tabInsert['montant']=$tabIdentite['capital'];
//$tabInsert['actionsNb'] ='';
/** @todo Rechercher l'ancien capital **/
2013-06-19 08:24:49 +00:00
} elseif ($typeEven==2305) { // Modification de la d<>nomination
$tabIdentite=$iRncs->getInfosEntrep($siren);
2013-06-19 08:24:49 +00:00
$tabInsert['complement'].="Nouvelle d<>nomination : ".$tabIdentite['raisonSociale'].'. ';
// Recherche de l'ancienne RS
$dateFlux=$tabInsert['flux'];
$rep=$iDb->select( 'rncs_modifs',
'siren, `table`, champs, valeur, flux, dateInsert',
"siren=$siren AND type='raisonSociale' AND `table`='rncs_entrep'
AND flux<='$dateFlux' ORDER BY flux DESC LIMIT 0,1", false, MYSQL_ASSOC);
$modif=@trim($rep[0]['valeur']).'';
if ($modif<>'')
2013-06-19 08:24:49 +00:00
$tabInsert['complement'].="Ancienne d<>nomination : $modif. ";
if ($tabIdentite['sigle']<>'')
$tabInsert['complement'].="Sigle : ".$tabIdentite['sigle'].'. ';
} elseif ($typeEven==2307) { // Modification de la forme juridique
$tabIdentite=$iRncs->getInfosEntrep($siren);
$tabInsert['nouvFJ']=$tabIdentite['cj'];
/** @todo Rechercher l'ancienne FJ **/
} elseif ($typeEven==2315) {
switch ($tabInsert['codeEvenRncs']*1) {
2013-06-19 08:24:49 +00:00
case 34: $tabInsert['complement'].='Changement de G<>rant : '; break;
case 37: $tabInsert['complement'].='Changement de Pr<50>sident : '; break;
case 40: $tabInsert['complement'].='Modification du Conseil d\'Administration : '; break;
case 81: $tabInsert['complement'].='Changement de Commissaire aux Comptes : '; break;
default: $tabInsert['complement'].='Administration : '; break;
}
$dirs=$iInsee->getDirigeants($siren);
foreach ($dirs as $nb=>$dir) {
$tabInsert['complement'].=$dir['Titre'].' : '.@$dir['Civilite'].' '.$dir['Nom'].' '.$dir['Prenom'];
if (($nb+1)<count($dirs))
$tabInsert['complement'].=', ';
else
$tabInsert['complement'].='. ';
}
} elseif ($typeEven==2320) { // RECONSTITUTION DE LA L'ACTIF NET
if (preg_match('/MOITIE/i', $tabInsert['acte_nature'], $matches))
$typeEven=2321;
} elseif ($typeEven==2203 &&
(preg_match('/SANS/i', $tabInsert['acte_nature'], $matches)) ||
(preg_match('/SANS/i', $tabInsert['acte_decision'], $matches))
)
// On ignore l'annonce
continue;
unset($tabInsert['codeEvenRncs']);
unset($tabInsert['flux']);
//if ($tabInsert['acte_nature']<>'') $tabInsert['complement'].=$tabInsert['acte_nature'].' ';
if ($tabInsert['acte_decision']<>'') $tabInsert['complement'].=strtolower($tabInsert['acte_decision']).' ';
unset($tabInsert['acte_nature']);
unset($tabInsert['acte_decision']);
if ($strEven<>'') $tabInsert['strEven']=$strEven;
//echo "$siren $dateJugement $typeEven".EOL;
$tabTmp=@$iInsee->getIdentiteLight($tabInsert['siren']);
$tabInsert['typeEven'] = $typeEven;
if ($typeEven==0) {
print_r($tabInsert);
2013-06-19 08:24:49 +00:00
sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', 'Chargement des <20>v<EFBFBD>nements Greffes', "Erreur typeEven=0 ligne n<>$i ($dateMaj)".EOL.print_r($tabInsert,true));
//die();
}
$tabInsert['adresse'] = $tabTmp['Adresse'];
$tabInsert['codePostal'] = $tabTmp['CP'];
$tabInsert['ville'] = $tabTmp['Ville'];
if (!$iDb->insert($table, $tabInsert)) {
if (mysql_errno()==1062) {
$tabTmp=$iDb->select($table, 'id, siren, typeEven, dateJugement, inter1type, inter1id, inter1nom, inter2type, inter2id, inter2nom, dateSource, dateInsert, source, tribunal, raisonSociale',"siren=$siren AND dateJugement='$dateJugement' AND typeEven=$typeEven", false, MYSQL_ASSOC);
$tabEnbase=@$tabTmp[0];
if ($tabEnbase['source']=='PC') {
unset($tabInsert['source']);
unset($tabInsert['dateInsert']);
if (!$iDb->update($table, $tabInsert,"siren=$siren AND dateJugement='$dateJugement' AND typeEven=$typeEven", false, MYSQL_ASSOC))
2013-06-19 08:24:49 +00:00
echo date ('Y/m/d - H:i:s') .' - ERREUR : MySql n<>'. mysql_errno() .' : '. mysql_error() ." lors de la mise <20> jour de l'<27>v<EFBFBD>nement $typeEven en date du $dateJugement pour $siren...".EOL;
else $nbAnnUpdateE++;
}
} else
2013-06-19 08:24:49 +00:00
echo date ('Y/m/d - H:i:s') .' - ERREUR : MySql n<>'. mysql_errno() .' : '. mysql_error() ." lors de l'ajout de l'<27>v<EFBFBD>nement $typeEven en date du $dateJugement pour $siren...".EOL;
} else {
$nbAnnInsertE++;
2013-06-19 08:24:49 +00:00
echo date('Y/m/d - H:i:s') ." - Ajout de l'<27>v<EFBFBD>nement $typeEven en date du $dateJugement pour $siren...".EOL;
@$tabCptAnn[$typeEven]++;
}
}
2013-06-19 08:24:49 +00:00
$message.=" $nbAnnInsertE ajouts et $nbAnnUpdateE mises <20> jours sur $nbAnnonces annonces.\r\n\r\n".EOL;
$message.=EOL.print_r(@$tabCptAnn, true);
}
if ($loadActesDuJour) {
$today=date('Y-m-d').' 00:00:00';
$nbDepotsTot=0;
$tabActes=$iDb->select( 'sdv1.logs', "siren",
"`page`='greffe_actes' AND dateHeure>='$today' GROUP BY siren",
false, MYSQL_ASSOC);
shuffle($tabActes);
$nbActesQuoti=count($tabActes);
foreach ($tabActes as $i=>$acte) {
2013-06-19 08:24:49 +00:00
echo "$i/$nbActesQuoti: Mise <20> jour de la liste des actes pour ".$acte['siren'].'... ';
$nbDepots=count(@$iGreffes->getListeActes($acte['siren']));
2013-06-19 08:24:49 +00:00
echo "$nbDepots d<>pot(s).".EOL;
// if (!$iGreffes->enCache) randsleep(1,3);
$nbDepotsTot+=$nbDepots;
}
2013-06-19 08:24:49 +00:00
$message.="$nbActesQuoti listes d'<27>v<EFBFBD>nements mises <20> jours pour un total de $nbDepotsTot d<>pots (listes du jour).\r\n";
echo date('Y/m/d - H:i:s') ." - $nbActesQuoti listes d'<27>v<EFBFBD>nements mises <20> jours pour un total de $nbDepotsTot d<>pots (listes du jour).".EOL;
}
if ($loadBilans) {
$tabTmp=$iDb->select('bilans_deposes','MAX(DATE(dateInsert)) AS lastMAJ', '1', true, MYSQL_ASSOC);
$lastUpdate=$tabTmp[0]['lastMAJ'];
2013-06-19 08:24:49 +00:00
$message.="La derni<6E>re mise <20> jour des bilans Greffes date du $lastUpdate !\r\n";
echo date ('Y/m/d - H:i:s') . " - La derni<6E>re mise <20> jour des bilans Greffes date du $lastUpdate !".EOL;
$bilansDep=$iDb->select('bilans_deposes', "siren, nicSiege, dateProvPartenaire, dateExercice, dureeExercice, monnaie, chiffreAffaire", "dateInsert>'$lastUpdate 00:00:00'", true, MYSQL_ASSOC);
echo mysql_error();
$nbBilans=count($bilansDep);
2013-06-19 08:24:49 +00:00
$message.="Il y a $nbBilans listes de bilans PDF <20> mettre <20> jour !\r\n";
echo date ('Y/m/d - H:i:s') . " - Il y a $nbBilans listes de bilans PDF <20> mettre <20> jour !".EOL;
foreach ($bilansDep as $iBilan=>$bil) {
$tabActes=@$iGreffes->getBilansImages($bil['siren']);
// if (!$iGreffes->enCache) randsleep(1,3);
}
2013-06-19 08:24:49 +00:00
$message.="Fin de la mise <20> jour des listes de bilans PDF.\r\n";
echo date ('Y/m/d - H:i:s') . " - Fin de la mise <20> jour des listes de bilans PDF.".EOL;
2013-06-19 08:24:49 +00:00
/** @todo Charger les listes de bilans command<6E>s ce jour **/
}
sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', 'Chargement des informations Greffes', $message);
die();
?>