#!/usr/bin/php -c/var/www/batch/config/php_batch_sd.ini select('identite', 'SIREN, NOM, CIVILITE, DIR_IDEN, DIR_DATEN, DIR_LIEUN', "(CJ BETWEEN 10 AND 19 OR CJ BETWEEN 1000 AND 1999) AND DIR_IDEN <> '' AND (DIR_DATEN<>0 OR DIR_LIEUN <> '') GROUP BY SIREN",false,MYSQL_ASSOC,true); $dateInsert=date('YmdHis'); while ($tab=$iDbInsee->fetch(MYSQL_ASSOC)) { $siren=$tab['SIREN']*1; $nom=$prenom=$naissNom=''; if ($tab['CIVILITE']==1) $civ='M'; elseif ($tab['CIVILITE']==2) { $civ='MME'; $naissNom=strtr($tab['NOM'],'/*',' '); } else $civ=''; $tabId=explode(' ', $tab['DIR_IDEN']); foreach ($tabId as $mot) { if (strtoupper($mot)==$mot) { $nom.=' '.$mot; $naissNom=str_ireplace($mot,'',$naissNom); } else { $prenom.=' '.$mot; $naissNom=str_ireplace($mot,'',$naissNom); } } $nom=trim($nom); $prenom=trim($prenom); $naissNom=strtoupper(trim($naissNom)); $naissDate=$tab['DIR_DATEN']; $naissLieu=trim($tab['DIR_LIEUN']); echo $siren.' '.trim($tab['DIR_IDEN'])."\t:\t$civ Nom='$nom', Prenom='$prenom', Usage='$naissNom' né le $naissDate à $naissLieu\t"; //echo "?"; //$saisie = trim(strtoupper(fgets(STDIN))); //$civ='M', 'MME', 'MLLE') $tabUpdate=array( 'siren'=>$siren, 'raisonSociale'=>strtr($tab['NOM'],'/*',' '), 'civilite'=>$civ, 'nom'=>$nom, 'prenom'=>$prenom, 'naissance_nom'=>$naissNom, 'naissance_date'=>$naissDate, 'naissance_lieu'=>$naissLieu, 'fonction_code'=>1050, 'fonction_lib'=>'Personne physique', 'actif'=>1, 'dateInsert'=>$dateInsert); if (!$iDb->insert('rncs_dirigeants', $tabUpdate)) echo "ERREUR !!!\n"; else echo "OK\n"; //die(); } */ $client = new SoapClient(null, array( 'trace' => 1, 'soap_version' => SOAP_1_1, 'location' => 'http://localhost/ws/', 'uri' => 'http://localhost/', 'login' => 'ylenaour', 'password' => 'bzh4231*')); // Faire tourner en auto ce programme pour l'ensemble des annonces Bodacc à compter du 9 juin 2008 //$nbBod=$iDb->select('bodacc_detail d LEFT JOIN rncs_dirigeants r ON d.siren=r.siren', 'd.siren, Bodacc_Date_Parution, typeEven, d.raisonSociale, dateJugement',"d.siren>1000 AND /*siren between 490000001 AND 500000000 AND */ //r.siren IS NULL AND //Bodacc_Date_Parution>='2008-10-08' AND ( // typeEven LIKE '%1500%' OR typeEven LIKE '%1501%' OR typeEven LIKE '%1502%' OR typeEven LIKE '%1503%' OR /* CIA */ // typeEven LIKE '%1600%' OR typeEven LIKE '%1601%' OR typeEven LIKE '%1610%' OR typeEven LIKE '%1611%' OR /* IG FP */ // typeEven LIKE '%2202%' OR typeEven LIKE '%2203%' OR typeEven LIKE '%2204%' or typeEven LIKE '%2210%' /* DISSOLUTION */ // ) //GROUP BY d.siren //ORDER BY Bodacc_Date_Parution ASC //", true, MYSQL_ASSOC, true); $nbBod=$iDb->select('rncs_requetes', 'siren', "siren>1000 AND type='QINF' AND presta=12001 AND strXml NOT LIKE '%Erreur base%'", true, MYSQL_ASSOC, true); // 1503 : Cloture de la procedure pour insuffisance d'actif $rec=0; echo date ('Y/m/d - H:i:s')." - Il y a $nbBod dirigeants en IG/FP à mettre à jour...".EOL; while ($tab=$iDb->fetch(MYSQL_ASSOC)) { /*$tab2=file('/mnt/samba/partage/production/igfp.csv'); /*shuffle($tab2); file_put_contents('/mnt/samba/partage/production/igfp2.csv',implode('', $tab2),FILE_APPEND);* $nbBod=count($tab2); echo date ('Y/m/d - H:i:s')." - Il y a $nbBod dirigeants en IG/FP à mettre à jour...".EOL; foreach ($tab2 as $tab) {*/ $rec++; $siren=$tab['siren']*1; /*if ($siren<>417512753) continue; else die('Rec='.$rec."\n");*/ if ($rec<=$index) continue; $even=@$tab['typeEven']; $rs=@$tab['raisonSociale']; $dateJuge=@$tab['dateJugement']; //print_r($tab); $tdeb=microtime(true); $O = $client->getDirigeants($siren, false); $tfin=microtime(true); $duree=$tfin-$tdeb; $dirs=$O['result']; $nbDirs=count($dirs); echo date ('Y/m/d - H:i:s')." - $rec : Siren $siren, $rs, $even le $dateJuge : $nbDirs dirigeants ($duree)".EOL; if ($nbDirs>0) print_r($dirs); if ($duree>1){ echo '...'.EOL; //randsleep(7, 21);//,59); //randsleep(21,59); //randsleep(31,190); } } echo date('Y/m/d - H:i:s') ." - FIN du programme de post traitement des annonces BODACC.".EOL; die(); ?>