776 lines
35 KiB
PHP
776 lines
35 KiB
PHP
#!/usr/bin/php -c/var/www/batch/config/php_batch_sd.ini
|
||
<?php
|
||
|
||
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(FWK_PATH.'mail/sendMail.php');
|
||
|
||
define('RNCS_IMR_FTP_DIR', '/home/data/ftp/rncs/');
|
||
define('RNCS_IMR_BACKUP_DIR', '/home/data/rncs/imr/');
|
||
|
||
$strInfoScript='Usage : '.basename($argv[0]). " <option> [FICHIERS]
|
||
Chargement du/des flux en provenance de l'INPI (license RNCS IMR).
|
||
|
||
Options :
|
||
-d Mode debug (Verbosité au maximum)
|
||
-l:XXXX Reprendre à partir de la ligne XXXX
|
||
-s:AAAAMMJJ Jour de l'extraction du stock de tous les établissements actifs
|
||
";/*
|
||
-p Chargement d'une ancienne notice (pas de modification de la zone ACTIF chargement des zones différentes)
|
||
-u Ne pas mettre à jour la table identite de l'insee
|
||
-h Ne pas charger la notice dans la base des 'historiques'
|
||
";*/
|
||
$iDb=new WDB();
|
||
$iInsee=new MInsee();
|
||
$iRncs=new MRncs();
|
||
//$iWs=new WsEntreprise();
|
||
|
||
$nbSiretInvalides=0;
|
||
$modeDebug=false;
|
||
$stock=0; // Stock IMR complet = 1 !
|
||
$actifIni=1; // L'état actif est 1 sinon 11 si stock !
|
||
$jourStock=0; // Jour du stock SSAMMJJ
|
||
|
||
$tabFichier=$tabFichLigneCmd=array();
|
||
|
||
$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 'l': $numReprise=substr($argv[$i],3,strlen($argv[$i])-3); break;
|
||
case 's': $stock=1; $actifIni=11; $jourStock=substr($argv[$i],3,8); break;
|
||
case '-':
|
||
case '?': die($strInfoScript); break;
|
||
default: die('Option '. $argv[$i] . ' inconnue !'.EOL);
|
||
}
|
||
} else $tabFichLigneCmd[]=$argv[$i];
|
||
}
|
||
//die($iRncs->getDeviseInpi(300));
|
||
//die(print_r($iRncs->getIdentiteEtab(7020068)));
|
||
//die(print_r($iRncs->getListeDepots(7020068)));
|
||
//die(print_r($iRncs->getListeJugements(393087705)));
|
||
|
||
if (count($tabFichLigneCmd)==0) {
|
||
$dh = opendir(RNCS_IMR_FTP_DIR);
|
||
while (false !== ($filename = readdir($dh))) {
|
||
if ($filename<>'.' && $filename<>'..' && substr($filename, -4)=='.dat')
|
||
$tabFichier[] = RNCS_IMR_FTP_DIR.$filename;
|
||
}
|
||
sort($tabFichier);
|
||
}
|
||
if (count($tabFichier)==0)
|
||
$tabFichier=$tabFichLigneCmd;
|
||
|
||
if (count($tabFichier)==0 && count($tabFichLigneCmd)==0)
|
||
die(date ('Y/m/d - H:i:s') . " - Aucun fichier RNCS IMR de l'INPI à traiter (--help pour plus d'options).".EOL);
|
||
|
||
echo date ('Y/m/d - H:i:s') . " - Début du traitement de chargement du flux INPI".EOL;
|
||
|
||
/*
|
||
// Test du matching de tous les mandataires INPI
|
||
$tabTmp=$iDb->select('rncs_jugements', "adm1nom, adm1adrNum, adm1adrInd, adm1adrVoie, adm1adrCP, adm1adrVille, count(*) AS nb", "1 GROUP BY adm1nom ORDER BY nb DESC", true, MYSQL_ASSOC);
|
||
foreach ($tabTmp as $nbMand=>$mand) {
|
||
$idMand=$iRncs->getIdMandataireInpi($mand['adm1nom']);
|
||
if ($idMand==false) echo $mand['adm1nom']."\t".$mand['nb']."\t".$mand['adm1adrNum']."\t".$mand['adm1adrInd']."\t".$mand['adm1adrVoie']."\t".$mand['adm1adrCP']."\t".$mand['adm1adrVille']."\t".$idMand.EOL;
|
||
}
|
||
die();
|
||
*/
|
||
|
||
foreach ($tabFichier as $iFic=>$fichier)
|
||
{
|
||
$fichierAvecRep=$fichier;
|
||
$fichier=basename($fichier);
|
||
$dateInsert=date('YmdHis');
|
||
echo date('Y/m/d - H:i:s'). " - Début du traitement du fichier $fichier...".EOL;
|
||
$dateDispo=date('YmdHis', filemtime($fichierAvecRep));
|
||
$dateFichierMod=substr(''.$dateDispo,0,8)*1;
|
||
if(preg_match('/_([0-9]{8,8})\.dat/Ui', $fichierAvecRep, $matches))
|
||
$dateFichierNom=$matches[1];
|
||
else
|
||
$dateFichierNom=0;
|
||
|
||
if ($dateFichierMod==$dateFichierNom) $dateFlux=$dateFichierMod;
|
||
elseif ($dateFichierMod<>0 && $dateFichierNom==0) $dateFlux=$dateFichierMod;
|
||
else {
|
||
echo date ('Y/m/d - H:i:s') . " - La date du fichier ($dateFichierMod) ne correspond pas avec le nom '$fichier' !".EOL;
|
||
$dateFlux=$dateFichierNom;
|
||
if (($dateFlux*1)<20080101 || ($dateFlux*1)>(date('Ymd')*1))
|
||
die();
|
||
}
|
||
|
||
$fp=fopen($fichierAvecRep, 'r');
|
||
if ($fp) {
|
||
$nbLignes=$nbLignes01=$nbLignes02=$nbLignes02p=$nbLignes03=$nbLignes04=$nbLignes05=0;
|
||
for($i=0; $i<6; $i++) $nbUpdate[$i]=$nbInsert[$i]=0;
|
||
$nbCreations=$nbModifI=$nbModifF=$nbModifS=$nbFermetures=$nbModifErr=0;
|
||
$a = fgets($fp, 4096);
|
||
if (strlen($a)>351) {
|
||
echo date('Y/m/d - H:i:s') ." - Le fichier RNCS à charger $fichier n'est pas au format IMR Coface/Ort !".EOL;
|
||
die();
|
||
}
|
||
$nbLignesTot=0;
|
||
while (!feof($fp)) {
|
||
$a = fgets($fp, 4096);
|
||
$nbLignesTot++;
|
||
}
|
||
echo date('Y/m/d - H:i:s') ." - Le fichier à charger $fichier contient $nbLignesTot lignes.".EOL;
|
||
if ($iFic==0 && $nbLignesTot>2000000 && !$stock) {
|
||
// C'est le 1er fichier, il comporte plus de 2M de lignes et il n'est pas déclaré comme stock !
|
||
echo date('Y/m/d - H:i:s') ." - Ce fichier est-il un stock annuel ? Merci de confirmer (O/N) ";
|
||
while (1) {
|
||
$saisie = trim(strtoupper(fgets(STDIN)));
|
||
if ($saisie=='O' || $saisie=='o') {
|
||
$stock=1;
|
||
$actifIni=11;
|
||
break;
|
||
} elseif ($saisie=='N' || $saisie=='n') {
|
||
break;
|
||
}
|
||
}
|
||
}
|
||
|
||
if ($stock && $iFic==0) {
|
||
$stockD=substr($jourStock,6,2)*1;
|
||
$stockM=substr($jourStock,4,2)*1;
|
||
$stockY=substr($jourStock,0,4)*1;
|
||
if (!$jourStock || $stockY<2009 || $stockY>date('Y') || $stockM==0 || $stockM>12 ||
|
||
$stockD==0 || $stockD>31 || $jourStock>date('Ymd')) {
|
||
while (1) {
|
||
echo date('Y/m/d - H:i:s') ." - Entrez-le jour du stock au format AAAAMMJJ (ex: $dateFlux) ... ";
|
||
$saisie = trim(strtoupper(fgets(STDIN)));
|
||
if (strlen($saisie)==8) {
|
||
$stockD=substr($saisie,6,2)*1;
|
||
$stockM=substr($saisie,4,2)*1;
|
||
$stockY=substr($saisie,0,4)*1;
|
||
if ($stockY>=2009 && $stockY<=date('Y')*1) {
|
||
if ($stockM>0 && $stockM<13) {
|
||
if ($stockD>0 && $stockD<13 && ($saisie*1)<=(date('Ymd')*1))
|
||
break;
|
||
else echo "ERREUR : Jour incorrect ou date de notice dans le futur !".EOL;
|
||
} else echo "ERREUR : Mois incorrecte !".EOL;
|
||
} else echo "ERREUR : Année incorrect ou dans le futur !".EOL;
|
||
} else echo "ERREUR : Saisie incorrecte !".EOL;
|
||
}
|
||
}
|
||
if ($stockM<10) $stockM='0'.$stockM;
|
||
else $stockM='' .$stockM;
|
||
if ($stockD<10) $stockD='0'.$stockD;
|
||
else $stockD='' .$stockD;
|
||
$jourStock=''.$stockY.$stockM.$stockD;
|
||
$message=date('Y/m/d - H:i:s'). " - Début de traitement du fichier stock n°$iFic, $fichier...".EOL;
|
||
}
|
||
elseif ($stock)
|
||
$message=date('Y/m/d - H:i:s'). " - Début de traitement du fichier stock n°$iFic, $fichier...".EOL;
|
||
else
|
||
$message=date('Y/m/d - H:i:s'). " - Début de traitement du fichier n°$iFic, $fichier...".EOL;
|
||
echo $message;
|
||
|
||
rewind($fp);
|
||
$a = fgets($fp, 4096);
|
||
$sirenPre=0; // Valeur du Siren précédent
|
||
$siren=0;
|
||
|
||
while (!feof($fp)) {
|
||
$nbLignes++;
|
||
$siren = trim( substr($a, 0, 9)); // SIREN
|
||
$codeEnr = ''.trim( substr($a, 9, 2));
|
||
/** A supprimer deb
|
||
if ($nbLignes%100000==0) {
|
||
echo date('Y/m/d - H:i:s'). " - Fichier n°$iFic, $fichier : $nbLignes lignes, $siren $codeEnr : $nbLignes01 entrep, $nbLignes02 étab, $nbLignes03 dir, $nbLignes04 jug, $nbLignes05 actes".EOL;
|
||
}
|
||
if ($codeEnr=='03' || $codeEnr=='04' || $codeEnr=='05') {
|
||
$a = fgets($fp, 4096);
|
||
$sirenPre=$siren;
|
||
continue;
|
||
}
|
||
// A supprimer fin **/
|
||
switch ($codeEnr) {
|
||
// Code enregistrement = 01 Alpha. 01=Enregistrement ENTREPRISE
|
||
case '01':
|
||
$nbLignes01++;
|
||
if ($sirenPre>0) {
|
||
/** Passage à Actif/Inactif des établissements précédents **/
|
||
$ret=$iDb->select('rncs_etab', 'actif, COUNT(*) AS nb', "siren=$sirenPre GROUP BY actif ORDER BY actif ASC", false, MYSQL_ASSOC);
|
||
if (isset($ret[0])) {
|
||
$nbEtab=array();
|
||
foreach ($ret as $iEtab=>$etab)
|
||
$nbEtab[$etab['actif']]=$etab['nb'];
|
||
$ret=$iDb->update('rncs_etab', array('actif'=>0,'dateFermeture'=>$dateFlux), "actif>9 AND siren=$sirenPre");
|
||
if ($modeDebug) {
|
||
echo date ('Y/m/d - H:i:s') . " - Les établissements du siren $sirenPre non transmis ont été passés à inactifs (".$nbEtab[10]." déjà inactifs et ".$nbEtab[11]." actifs).".EOL;
|
||
print_r($nbEtab);
|
||
}
|
||
} elseif ($modeDebug) echo date ('Y/m/d - H:i:s') . " - Aucun établissement pour le siren $sirenPre en base précédement !".EOL;
|
||
/** Passage à inactif des dirigeants **/
|
||
if ($modifDir) {
|
||
$ret=$iDb->select('rncs_dirigeants', 'actif, count(*) as nb', "siren=$sirenPre GROUP BY actif ORDER BY actif ASC", false, MYSQL_ASSOC);
|
||
if (isset($ret[0])) {
|
||
$nbEtab=array();
|
||
foreach ($ret as $iEtab=>$etab)
|
||
$nbEtab[$etab['actif']]=$etab['nb'];
|
||
$ret=$iDb->update('rncs_dirigeants', array('actif'=>0,'dateFin'=>$dateFlux), "actif>9 AND siren=$sirenPre");
|
||
if ($modeDebug) {
|
||
echo date ('Y/m/d - H:i:s') . " - Les dirigeants du siren $sirenPre non transmis ont été passés à inactifs (".$nbEtab[10]." déjà inactifs et ".$nbEtab[11]." actifs).".EOL;
|
||
print_r($nbEtab);
|
||
}
|
||
} elseif ($modeDebug) echo date ('Y/m/d - H:i:s') . " - Aucun dirigeants pour le siren $sirenPre en base précédement !".EOL;
|
||
}
|
||
/** Suppressions des jugements non transmis **/
|
||
if ($modifJug) {
|
||
$ret=$iDb->select('rncs_jugements', 'actif, count(*) as nb', "siren=$sirenPre GROUP BY actif ORDER BY actif ASC", false, MYSQL_ASSOC);
|
||
if (isset($ret[0])) {
|
||
$nbEtab=array();
|
||
foreach ($ret as $iEtab=>$etab)
|
||
$nbEtab[$etab['actif']]=$etab['nb'];
|
||
if ($actif<>0)
|
||
// Si le siren est encore actif et que le jugement n'est pas transmit, il doit s'agir d'une correction de jugement
|
||
$ret=$iDb->update('rncs_jugements', array('actif'=>0,'dateSuppr'=>$dateFlux), "actif>9 AND siren=$sirenPre");
|
||
else
|
||
$ret=$iDb->update('rncs_jugements', array('actif'=>1), "actif>9 AND siren=$sirenPre");
|
||
|
||
if ($modeDebug) {
|
||
echo date ('Y/m/d - H:i:s') . " - Les jugements du siren $sirenPre non transmis ont été passés à inactifs (".$nbEtab[10]." déjà inactifs et ".$nbEtab[11]." actifs).".EOL;
|
||
print_r($nbEtab);
|
||
}
|
||
} elseif ($modeDebug) echo date ('Y/m/d - H:i:s') . " - Aucun jugements pour le siren $sirenPre en base précédement !".EOL;
|
||
}
|
||
}
|
||
$modifEtab=$modifDir=$modifJug=false;
|
||
$table='rncs_entrep';
|
||
if (trim( substr($a, 11, 2))=='00') $actif=$actifIni;
|
||
elseif (trim( substr($a, 11, 2))=='99') $actif=0;
|
||
else die(date('Y/m/d - H:i:s') ." - ERREUR : Code ACTIF inconnu '".substr($a,11,2)."' dans le flux $fichier !".EOL);
|
||
$raisonSociale = trim( substr($a, 26, 90));
|
||
$numRC = trim( substr($a, 17, 9));
|
||
if ($numRC<>'' && substr($numRC,0,2)*1>=30)
|
||
$numRC2='19'.$numRC;
|
||
elseif ($numRC<>'' && substr($numRC,0,2)*1<30)
|
||
$numRC2='20'.$numRC;
|
||
else
|
||
$numRC2='';
|
||
$sexe = trim( substr($a, 189, 1));
|
||
$cj = trim( substr($a, 198, 4));
|
||
/** L'entreprise est elle une personne physique **/
|
||
$nomUsage=$nom=$prenom='';
|
||
if ($sexe=='M' || $sexe=='F' || substr($cj,0,1)*1==1) {
|
||
if (preg_match('/^(.*) n(?:é|e|è)e (.*)$/Uis', $raisonSociale, $matches)) {
|
||
$rs=trim($matches[1]);
|
||
$nomUsage=trim($matches[2]);
|
||
} else
|
||
$rs=$raisonSociale;
|
||
$tabNom=explode(' ', $rs);
|
||
for($i=0; isset($tabNom[$i]); $i++)
|
||
if ($tabNom[$i]==strtoupper($tabNom[$i]))
|
||
$nom.=$tabNom[$i].' ';
|
||
else
|
||
$prenom.=$tabNom[$i].' ';
|
||
}
|
||
$numGreffe=trim( substr($a, 13, 4))*1;
|
||
$tabUpdate=array(
|
||
'actif' => $actif,
|
||
'numGreffe' => $numGreffe, // Numéro de gestion (code greffe)
|
||
'triCode' => $iRncs->getCodeBodaccTribunal($numGreffe), // Numéro de gestion (code greffe)
|
||
'triId' => $iRncs->getIdTribunal($numGreffe), // Numéro de gestion (code greffe)
|
||
'numRC' => $numRC, // Ancien numéro de gestion (numéro RC, année sur 2)
|
||
'numRC2' => $numRC2, // Nouveau numéro de gestion (numéro RC, année sur 4)
|
||
'raisonSociale'=>$raisonSociale, // Nom 90 c
|
||
'nom' => $nom, // Nom 90 c
|
||
'prenom' => $prenom,
|
||
'nomUsage' => $nomUsage,
|
||
'sigle' => trim( substr($a, 116, 30)), // Sigle
|
||
'dateNaiss' => trim( substr($a, 146, 8))*1, // Date de naissance (SSAAMMJJ)
|
||
'lieuNaiss' => trim( substr($a, 154, 35)), // Lieu de naissance
|
||
'sexe' => $sexe, // Sexe (M/F)
|
||
'nationalite'=> trim( substr($a, 190, 3)), // Code nationalité
|
||
'pays'=>$iRncs->getPaysInpi(trim( substr($a, 190, 3))*1), // Code nationalité
|
||
'naf' => trim( substr($a, 193, 5)), // Code APE de l'entreprise
|
||
'cj' => $cj, // Code catégorie juridique
|
||
'capitalMontant'=>trim(substr($a, 202, 13))*1, // Capital (en unité)
|
||
'capitalDevise'=>trim(substr($a, 215, 3)), // Code devise du capital
|
||
'capitalDevIso'=>$iRncs->getDeviseInpi(trim(substr($a, 215, 3))*1), // Code devise du capital
|
||
'dateImma' => trim( substr($a, 218, 8))*1, // Date d’immatriculation SSAAMMJJ
|
||
'dateRad' => trim( substr($a, 226, 8))*1, // Date de radiation SSAAMMJJ
|
||
'capitalType'=> trim( substr($a, 234, 3)), // Code type de capital SOC ou VAR SOC = Capital social VAR = Capital variable
|
||
'capitalCent'=> trim( substr($a, 237, 2)), // Capital (centimes)
|
||
'provisoires'=> trim( substr($a, 239, 1)), // Données provisoires P ou blanc = ‘P’ si données provisoires
|
||
);
|
||
|
||
$ret=$iDb->select('rncs_entrep', 'actif,numGreffe,numRC2,raisonSociale,nom,prenom,nomUsage,sigle,dateNaiss*1 AS dateNaiss,lieuNaiss,sexe,nationalite,naf,cj,capitalMontant,capitalDevIso,dateImma*1 AS dateImma,dateRad*1 AS dateRad,capitalType,capitalCent,provisoires', "siren=$siren", false, MYSQL_ASSOC);
|
||
if (is_array($ret) && count($ret)>0) {
|
||
$tabSelect=$ret[0];
|
||
$tabDiff=array_diff($tabSelect,$tabUpdate);
|
||
if (!$stock && count($tabDiff)>0) {
|
||
foreach ($tabDiff as $field=>$value)
|
||
$iDb->insert('rncs_modifs', array( 'siren'=>$siren,
|
||
'table'=>$table,
|
||
'champs'=>$field,
|
||
'valeur'=>$value,
|
||
'flux'=>$dateFlux));
|
||
}
|
||
}
|
||
|
||
$tabInsert=array_merge($tabUpdate, array( 'siren' => $siren,
|
||
'sirenValide'=> $iInsee->valideSiren($siren),
|
||
'flux' => $dateFlux,
|
||
'dateInsert'=> $dateInsert,
|
||
)
|
||
);
|
||
break;
|
||
case '02':
|
||
$nbLignes02++;
|
||
$table='rncs_etab';
|
||
/** Marquage des établissements à actif provisoire **/
|
||
if (!$modifEtab) {
|
||
$ret=$iDb->query("UPDATE $table SET actif=actif+10 WHERE siren=$siren");
|
||
if ($modeDebug) echo date ('Y/m/d - H:i:s') . " - Les établissements du siren $siren sont OK pour la mise à jour ($ret).".EOL;
|
||
}
|
||
$modifEtab=true;
|
||
$nic=trim(substr($a, 11, 5));
|
||
if ($nic>=99990) {
|
||
$nbLignes02p++;
|
||
$table='rncs_etab_prov';
|
||
}
|
||
|
||
$tabAdresse=@$iInsee->structureVoie(trim( substr($a, 77, 4)).' '.
|
||
trim( substr($a, 81, 1)).' '.
|
||
trim( substr($a, 82, 30)));
|
||
$libVoie=@trim($tabAdresse['libVoie']);
|
||
if ($libVoie=='') $libVoie=@trim($tabAdresse['libVoie']);
|
||
if ($libVoie=='') $libVoie=@trim($tabAdresse['adrComp0'].' '.$tabAdresse['adrComp1']);
|
||
|
||
$tabUpdate=array(
|
||
'siege' => (trim( substr($a, 16, 1))*1)-8, // Code statut de l’établissement 8=Etab. secondaire, 9=Siège
|
||
'enseigne' => trim( substr($a, 17, 60)), // Enseigne Alpha.
|
||
'adrNumVoie'=> trim( substr($a, 77, 4)), // N° dans la voie Num.
|
||
'adrIndRep' => trim( substr($a, 81, 1)), // BTQ Alpha.
|
||
'adrLibVoie'=> trim( substr($a, 82, 30)), // Type et libellé de voie Alpha.
|
||
'cp' => trim( substr($a, 112, 5)), // Code Postal Alpha.
|
||
'commune' => trim( substr($a, 117, 30)), // Commune Alpha.
|
||
'adrComp' => trim( substr($a, 147, 30)), // Complément d'adresse Alpha.
|
||
'naf' => trim( substr($a, 177, 5)), // APE de l'établissement Alpha.
|
||
);
|
||
|
||
if ($nic<99990) {
|
||
$ret=$iDb->select($table, 'siege,enseigne,adrNumVoie,adrIndRep,adrLibVoie,cp,commune,adrComp,naf', "siren=$siren AND nic=$nic", false, MYSQL_ASSOC);
|
||
if (is_array($ret) && count($ret)>0) {
|
||
$tabSelect=$ret[0];
|
||
/*if ($tabSelect['siege']==1 && ( // Si c'est un établissement siège...
|
||
($tabSelect['adrNumVoie']<>$tabUpdate['adrNumVoie'] && $tabSelect['adrNumVoie']>0) ||
|
||
($tabSelect['adrLibVoie']<>$tabUpdate['adrLibVoie'] && $tabSelect['adrLibVoie']<>'' ) ||
|
||
substr(''.$tabSelect['cp'],0,2)<>substr(''.$tabUpdate['cp'],0,2) ||
|
||
$tabSelect['commune']<>$tabUpdate['commune']) ) { // ... et que son adresse change
|
||
$table='rncs_etab_prov';
|
||
$iDb->update('rncs_etab', array('actif'=>1), "siren=$siren AND nic=$nic");
|
||
} else {*/
|
||
$tabDiff=array_diff($tabSelect,$tabUpdate);
|
||
if (!$stock && count($tabDiff)>0) {
|
||
foreach ($tabDiff as $field=>$value)
|
||
$iDb->insert('rncs_modifs', array( 'siren'=>$siren,
|
||
'nic'=>$nic,
|
||
'table'=>$table,
|
||
'champs'=>$field,
|
||
'valeur'=>$value,
|
||
'flux'=>$dateFlux));
|
||
}
|
||
//}
|
||
}
|
||
}
|
||
$tabUpdate['adrTypeVoie']=@$tabAdresse['typeVoie'];
|
||
$tabUpdate['adrVoie']=strtoupper($libVoie);
|
||
$tabUpdate['actif']=1;
|
||
|
||
$tabInsert=array_merge($tabUpdate, array( 'siren' => $siren,
|
||
'nic' => $nic,
|
||
'flux' => $dateFlux,
|
||
'dateInsert'=> $dateInsert,
|
||
)
|
||
);
|
||
break;
|
||
case '03':
|
||
$nbLignes03++;
|
||
$table='rncs_dirigeants';
|
||
if (!$modifDir) {
|
||
$ret=$iDb->query("UPDATE $table SET actif=actif+10 WHERE siren=$siren");
|
||
//if ($modeDebug) echo date ('Y/m/d - H:i:s') . " - Les dirigeants du siren $siren sont OK pour la mise à jour ($ret).".EOL;
|
||
}
|
||
$modifDir=true;
|
||
// Type de dirigeant
|
||
$rsDir='';
|
||
$sirenDir=0;
|
||
$typeDir = trim( substr($a, 242, 2)); // PP = Personne physique, PM = Personne morale
|
||
$nomDir = trim( substr($a, 15, 60)); // Nom d’usage ou raison sociale
|
||
$civilite=strtoupper(trim(substr($a, 238, 4))); // Code Civilité du dirigeant
|
||
if ($civilite<>'M' && $civilite<>'MME' && $civilite<>'MLLE' && $civilite<>'')
|
||
die(date('Y/m/d - H:i:s') ." - ERREUR : Civilité '$civilite' inconnue !".EOL);
|
||
|
||
$prenomDir=trim( substr($a, 75, 60));
|
||
$dateNaiss=trim(substr($a, 135, 8));
|
||
$lieuNaiss=trim(substr($a, 143, 35));
|
||
$codeFonction = trim(substr($a, 11, 4))*1;
|
||
|
||
if ($typeDir=='PM'){
|
||
$sirenDir = 0; // Chercher le siren du dirigeant
|
||
$rsDir = $nomDir;
|
||
$nomDir = trim( substr($a, 178, 60)); // Nom Représ. du dirigeant
|
||
/*if (strlen($rsDir)>2 && $civilite<>'' && $nomDir<>'' && $prenomDir<>'') {
|
||
$tabRet=@$iWs->searchNomAdr($rsDir,'','','',1,1,0,10,10,false,true);
|
||
$nbReps=$tabRet['results']['nbReponses'];
|
||
if ($nbReps>0) {
|
||
$tabSirenProbable=array();
|
||
foreach ($tabRet['results']['reponses'] as $iRep=>$entrep) {
|
||
//$sirenProbable=$entrep['Siren'];
|
||
$tabRet2=@$iWs->getDirigeants($entrep['Siren']);
|
||
foreach ($tabRet2['result'] as $iRep=>$dirig) {
|
||
//echo $entrep['Siren']." RECHERCHE : $civilite $nomDir $prenomDir".EOL;
|
||
//echo $entrep['Siren'].' on trouve : '.$dirig['Civilite'].' '.$dirig['Nom'].' '.$dirig['Prenom'].EOL;
|
||
if (strtoupper($civilite) == strtoupper($dirig['Civilite']) &&
|
||
strtoupper($nomDir) == strtoupper($dirig['Nom']) &&
|
||
strtoupper($prenomDir)== strtoupper($dirig['Prenom']))
|
||
$tabSirenProbable[]=$entrep['Siren'];
|
||
}
|
||
}
|
||
$tabSirenProbable=array_unique($tabSirenProbable);
|
||
if (count($tabSirenProbable)==1) {
|
||
$sirenDir=end($tabSirenProbable);
|
||
echo date('Y/m/d - H:i:s') ." - Ligne $nbLignes / $nbLignesTot - Siren $siren dirigé par $sirenDir...".EOL;
|
||
}
|
||
}
|
||
}*/
|
||
}
|
||
$depSte=floor($numGreffe/100);
|
||
if ($depSte>96) $depSte=floor($numGreffe/10);
|
||
|
||
$tabUpdate=array(
|
||
'actif' => 1,
|
||
'raisonSociale'=>$raisonSociale,
|
||
'typeDir' => $typeDir,
|
||
'dirRS' => $rsDir,
|
||
'dirSiren' => $sirenDir,
|
||
'adr_dep' => $depSte,
|
||
'nom' => $nomDir,
|
||
'fonction_code'=>$iRncs->getCodFctBodaccFctDir($codeFonction), // Code fonction du dirigeant
|
||
'fonction_lib'=>$iRncs->getLibFctDir($codeFonction),
|
||
'source' => 'imr',
|
||
'prenom' => $prenomDir, // Prénom du Dirigeant
|
||
'naissance_date'=>$dateNaiss, // Date de Naissance du dirigeant Alpha. SSAAMMJJ
|
||
'naissance_lieu'=>$lieuNaiss, // Lieu de Naissance
|
||
'civilite' => $civilite,
|
||
'naissance_nom'=>trim(substr($a, 244, 60)), // Nom de naissance du dirigeant
|
||
);
|
||
|
||
$ret=$iDb->select($table, 'count(*) as nb', "siren=$siren AND ".
|
||
"civilite='". $tabUpdate['civilite'] ."' AND ".
|
||
"nom='". addslashes($tabUpdate['nom']) ."' AND ".
|
||
"prenom='". addslashes($tabUpdate['prenom']) ."' AND ".
|
||
"naissance_nom='". addslashes($tabUpdate['naissance_nom']) ."' AND ".
|
||
"naissance_date='". $tabUpdate['naissance_date'] ."' AND ".
|
||
"fonction_code=". $iRncs->getCodFctBodaccFctDir($codeFonction), false, MYSQL_ASSOC);
|
||
/* if (is_array($ret) && count($ret)>0) {
|
||
$tabSelect=$ret[0];
|
||
$tabDiff=array_diff($tabSelect,$tabUpdate);
|
||
if (count($tabDiff)>0) {
|
||
foreach ($tabDiff as $field=>$value)
|
||
$iDb->insert('rncs_modifs', array( 'siren'=>$siren,
|
||
'table'=>$table,
|
||
'champs'=>$field,
|
||
'valeur'=>$value));
|
||
}
|
||
}
|
||
*/
|
||
$tabInsert=array_merge($tabUpdate, array( 'siren' => $siren,
|
||
'flux' => $dateFlux,
|
||
'dateInsert'=> $dateInsert,
|
||
)
|
||
);
|
||
|
||
if ($ret[0]['nb']==0) {
|
||
$iDb->insert($table, $tabInsert);
|
||
$nbInsert[3]++;
|
||
//if ($modeDebug) echo date ('Y/m/d - H:i:s') . " - Insertion du dirigeant ". $tabUpdate['nom']." ".$tabUpdate['prenom'].", siren=$siren !".EOL;
|
||
} else {
|
||
$iDb->update($table, $tabUpdate, "siren=$siren AND ".
|
||
"civilite='". $tabUpdate['civilite'] ."' AND ".
|
||
"nom='". addslashes($tabUpdate['nom']) ."' AND ".
|
||
"prenom='". addslashes($tabUpdate['prenom']) ."' AND ".
|
||
"naissance_nom='". addslashes($tabUpdate['naissance_nom']) ."' AND ".
|
||
"naissance_date='". $tabUpdate['naissance_date'] ."' AND ".
|
||
"fonction_code=". $iRncs->getCodFctBodaccFctDir($codeFonction));
|
||
$nbUpdate[3]++;
|
||
//if ($modeDebug) echo date ('Y/m/d - H:i:s') . " - MAJ du dirigeant ". $tabUpdate['nom']." ".$tabUpdate['prenom'].", siren=$siren !".EOL;
|
||
}
|
||
break;
|
||
case '04':
|
||
$nbLignes04++;
|
||
$table='rncs_jugements';
|
||
/** Marquage des jugements à actif provisoire **/
|
||
if (!$modifJug) {
|
||
$ret=$iDb->query("UPDATE $table SET actif=actif+10 WHERE siren=$siren");
|
||
if ($modeDebug) echo date ('Y/m/d - H:i:s') . " - Les jugements du siren $siren sont OK pour la mise à jour ($ret).".EOL;
|
||
}
|
||
$modifJug=true;
|
||
|
||
$type1=$type2='';
|
||
$adm1nom= trim( substr($a, 25, 60));
|
||
$adm2nom= trim( substr($a, 189, 60));
|
||
$codeJugement= trim( substr($a, 19, 2));
|
||
$codeFonction1= trim( substr($a, 21, 4));
|
||
$codeFonction2= trim( substr($a, 185, 4));
|
||
$type1=@$iRncs->getCodFctBodaccFctDir($codeFonction1);
|
||
if ($type1*1==1900) $type1='L';
|
||
$type2=@$iRncs->getCodFctBodaccFctDir($codeFonction2);
|
||
if ($type2*1==1900) $type2='L';
|
||
// Adresse 1
|
||
$adm1adr= trim ( preg_replace('/ +/', ' ',
|
||
substr($a, 85, 4).' '.
|
||
substr($a, 89, 1).' '.
|
||
substr($a, 90, 60))
|
||
);
|
||
$tabAdr1=@$iInsee->structureVoie($adm1adr);
|
||
$libVoie1=@trim($tabAdr1['libVoie']);
|
||
if ($libVoie1=='') $libVoie1=@trim($tabAdr1['libVoie']);
|
||
if ($libVoie1=='') $libVoie1=@trim($tabAdr1['adrComp0'].' '.$tabAdr1['adrComp1']);
|
||
|
||
// Adresse 2
|
||
$adm2adr= trim ( preg_replace('/ +/', ' ',
|
||
substr($a, 249, 4).' '.
|
||
substr($a, 253, 1).' '.
|
||
substr($a, 254, 60))
|
||
);
|
||
$tabAdr2=@$iInsee->structureVoie($adm2adr);
|
||
$libVoie2=@trim($tabAdr2['libVoie']);
|
||
if ($libVoie2=='') $libVoie2=@trim($tabAdr2['libVoie']);
|
||
if ($libVoie2=='') $libVoie2=@trim($tabAdr2['adrComp0'].' '.$tabAdr2['adrComp1']);
|
||
|
||
$dateEffet = trim( substr($a, 11, 8));
|
||
|
||
$tabUpdate=array(
|
||
'siren' => $siren,
|
||
'dateEffet' => $dateEffet, // Date d'effet
|
||
'codeJugement'=> $codeJugement, // Code Jugement
|
||
'actif' => 1,
|
||
'codeEven' => $iRncs->getCodeEvenJugementInpi($codeJugement),
|
||
'adm1codeFct' => $codeFonction1, // Admin. 1 : Code Fonction
|
||
'adm1type' => $type1, // Code type Mandataire
|
||
'adm1id' => $iRncs->getIdMandataireInpi($adm1nom),
|
||
'adm1nom' => $adm1nom, // Admin. 1 : NOM
|
||
'adm1adrNum' => trim( substr($a, 85, 4)), // Admin. 1 : N° dans la voie
|
||
'adm1adrInd' => trim( substr($a, 89, 1)), // Admin. 1 : BTQ
|
||
'adm1adrType' => @$tabAdr1['typeVoie'],
|
||
'adm1adrLibVoie'=> @$tabAdr1['libVoie'],
|
||
'adm1adrVoie' => trim( substr($a, 90, 60)), // Admin. 1 : Type et libellé de voie
|
||
'adm1adr1' => $adm1adr,
|
||
'adm1adrCP' => trim( substr($a, 150, 5)), // Admin. 1 : Code Postal
|
||
'adm1adrVille'=> trim( substr($a, 155, 30)), // Admin. 1 : Commune
|
||
'adm2codeFct' => $codeFonction2, // Admin. 2 : Code Fonction
|
||
'adm2type' => $type2,
|
||
'adm2id' => $iRncs->getIdMandataireInpi($adm2nom),
|
||
'adm2nom' => $adm2nom, // Admin. 2 : NOM
|
||
'adm2adrNum' => trim( substr($a, 249, 4)), // Admin. 2 : N° dans la voie
|
||
'adm2adrInd' => trim( substr($a, 253, 1)), // Admin. 2 : BTQ
|
||
'adm2adrType' => @$tabAdr2['typeVoie'],
|
||
'adm2adrLibVoie'=> @$tabAdr2['libVoie'],
|
||
'adm2adrVoie' => trim( substr($a, 254, 60)), // Admin. 2 : Type et libellé de voie
|
||
'adm2adr1' => $adm2adr,
|
||
'adm2adrCP' => trim( substr($a, 314, 5)), // Admin. 2 : Code Postal
|
||
'adm2adrVille'=> trim( substr($a, 319, 30)), // Admin. 2 : Commune
|
||
'flux' => $dateFlux,
|
||
);
|
||
|
||
$tabInsert=$tabUpdate;
|
||
|
||
break;
|
||
case '05': // Inchangé Coface => Infogreffe
|
||
$nbLignes05++;
|
||
$table='rncs_even';
|
||
$tabInsert=array(
|
||
'siren' => $siren,
|
||
'codeInterne'=> trim( substr($a, 11, 16)), // Code Interne
|
||
'dateDepot' => trim( substr($a, 27, 8)), // Date du dépôt
|
||
'codeEven' => trim( substr($a, 35, 10)), // Code évènement
|
||
'flux' => $dateFlux,
|
||
|
||
);
|
||
break;
|
||
default:
|
||
die(date('Y/m/d - H:i:s') ." - ERREUR : Code Enregistrement '$codeEnr' inconnu !".EOL);
|
||
break;
|
||
}
|
||
if ($table<>'rncs_dirigeants') {
|
||
if (!$iDb->insert($table, $tabInsert)) {
|
||
if (mysql_errno()==1062 && ($table=='rncs_entrep' || $table=='rncs_etab' || $table=='rncs_jugements')) {
|
||
$where="siren=$siren";
|
||
if ($table=='rncs_etab') $where.=" AND nic=$nic";
|
||
elseif ($table=='rncs_jugements') $where.=" AND dateEffet=$dateEffet
|
||
AND codeJugement=$codeJugement";
|
||
if (!$iDb->update($table, $tabUpdate, $where)) {
|
||
echo date('Y/m/d - H:i:s') ." - ERREUR : $where, Erreur mysql sur la table '$table' ". mysql_errno() .' - '. mysql_error().EOL;
|
||
print_r($tabInsert);
|
||
die();
|
||
} else $nbUpdate[$codeEnr*1]++;
|
||
} elseif (!(mysql_errno()==1062 && ($table=='rncs_jugements' || $table=='rncs_even' || $table=='rncs_etab_prov'))) {
|
||
echo date('Y/m/d - H:i:s') ." - ERREUR : Siren=$siren, Erreur mysql sur la table '$table' ". mysql_errno() .' - '. mysql_error().EOL;
|
||
print_r($tabInsert);
|
||
die();
|
||
} elseif (mysql_errno()==1062 && ($table=='rncs_jugements' || $table=='rncs_even' || $table=='rncs_etab_prov')) {
|
||
$nbUpdate[$codeEnr*1]++;
|
||
}
|
||
} else $nbInsert[$codeEnr*1]++;
|
||
}
|
||
|
||
if ($nbLignes%100000==0) {
|
||
echo date('Y/m/d - H:i:s'). " - Fichier n°$iFic, $fichier : $nbLignes lignes, $siren $codeEnr : $nbLignes01 entrep, $nbLignes02 étab, $nbLignes03 dir, $nbLignes04 jug, $nbLignes05 actes".EOL;
|
||
}
|
||
if ($nbLignes==0 || $nbLignes%10000==0) {
|
||
$fpT=fopen('/tmp/'.basename($argv[0]), 'w');
|
||
fwrite($fpT, ''.$fichier.';'.$jourStock.';'.$nbLignes);
|
||
fclose($fpT);
|
||
}
|
||
|
||
$a = fgets($fp, 4096);
|
||
$sirenPre=$siren;
|
||
}
|
||
fclose($fp);
|
||
|
||
/** Passage à Actif/Inactif des établissements précédents **/
|
||
$ret=$iDb->select('rncs_etab', 'actif, COUNT(*) AS nb', "siren=$sirenPre GROUP BY actif ORDER BY actif ASC", false, MYSQL_ASSOC);
|
||
if (isset($ret[0])) {
|
||
$nbEtab=array();
|
||
foreach ($ret as $iEtab=>$etab)
|
||
$nbEtab[$etab['actif']]=$etab['nb'];
|
||
$ret=$iDb->update('rncs_etab', array('actif'=>0,'dateFermeture'=>$dateFlux), "actif>9 AND siren=$sirenPre");
|
||
if ($modeDebug) {
|
||
echo date ('Y/m/d - H:i:s') . " - Les établissements du siren $sirenPre non transmis ont été passés à inactifs (".$nbEtab[10]." déjà inactifs et ".$nbEtab[11]." actifs).".EOL;
|
||
print_r($nbEtab);
|
||
}
|
||
} elseif ($modeDebug) echo date ('Y/m/d - H:i:s') . " - Aucun établissement pour le siren $sirenPre en base précédement !".EOL;
|
||
|
||
/** Passage à Actif/Inactif des dirigeants précédents **/
|
||
if ($modifDir) {
|
||
$ret=$iDb->select('rncs_dirigeants', 'actif, count(*) as nb', "siren=$sirenPre GROUP BY actif ORDER BY actif ASC", false, MYSQL_ASSOC);
|
||
if (isset($ret[0])) {
|
||
$nbEtab=array();
|
||
foreach ($ret as $iEtab=>$etab)
|
||
$nbEtab[$etab['actif']]=$etab['nb'];
|
||
$ret=$iDb->update('rncs_dirigeants', array('actif'=>0,'dateFin'=>$dateFlux), "actif>9 AND siren=$sirenPre");
|
||
if ($modeDebug) {
|
||
echo date ('Y/m/d - H:i:s') . " - Les dirigeants du siren $sirenPre non transmis ont été passés à inactifs (".$nbEtab[10]." déjà inactifs et ".$nbEtab[11]." actifs).".EOL;
|
||
print_r($nbEtab);
|
||
}
|
||
} elseif ($modeDebug) echo date ('Y/m/d - H:i:s') . " - Aucun dirigeants pour le siren $sirenPre en base précédement !".EOL;
|
||
}
|
||
|
||
/** Suppressions des jugements non transmis **/
|
||
if ($modifJug) {
|
||
$ret=$iDb->select('rncs_jugements', 'actif, count(*) as nb', "siren=$sirenPre GROUP BY actif ORDER BY actif ASC", false, MYSQL_ASSOC);
|
||
if (isset($ret[0])) {
|
||
$nbEtab=array();
|
||
foreach ($ret as $iEtab=>$etab)
|
||
$nbEtab[$etab['actif']]=$etab['nb'];
|
||
if ($actif<>0)
|
||
// Si le siren est encore actif et que le jugement n'est pas transmit, il doit s'agir d'une correction de jugement
|
||
$ret=$iDb->update('rncs_jugements', array('actif'=>0,'dateSuppr'=>$dateFlux), "actif>9 AND siren=$sirenPre");
|
||
else
|
||
$ret=$iDb->update('rncs_jugements', array('actif'=>1), "actif>9 AND siren=$sirenPre");
|
||
|
||
if ($modeDebug) {
|
||
echo date ('Y/m/d - H:i:s') . " - Les jugements du siren $sirenPre non transmis ont été passés à inactifs (".$nbEtab[10]." déjà inactifs et ".$nbEtab[11]." actifs).".EOL;
|
||
print_r($nbEtab);
|
||
}
|
||
} elseif ($modeDebug) echo date ('Y/m/d - H:i:s') . " - Aucun jugements pour le siren $sirenPre en base précédement !".EOL;
|
||
}
|
||
|
||
}
|
||
$message.=date('Y/m/d - H:i:s'). " - Récapitulatif du chargement n°$iFic, $fichier de $nbLignesTot lignes :".EOL;
|
||
$message.=date('Y/m/d - H:i:s'). " - Lignes 01 : $nbLignes01 entreprises (".$nbInsert[1]." ajouts et ".$nbUpdate[1]." modifs)".EOL;
|
||
$message.=date('Y/m/d - H:i:s'). " - Lignes 02 : $nbLignes02 établissements actifs dont $nbLignes02p provisoires (".$nbInsert[2]." ajouts et ".$nbUpdate[2]." modifs)".EOL;
|
||
$message.=date('Y/m/d - H:i:s'). " - Lignes 03 : $nbLignes03 dirigeants actifs (".$nbInsert[3]." ajouts et ".$nbUpdate[3]." modifs)".EOL;
|
||
$message.=date('Y/m/d - H:i:s'). " - Lignes 04 : $nbLignes04 jugements (".$nbInsert[4]." ajouts et ".$nbUpdate[4]." déjà en base)".EOL;
|
||
$message.=date('Y/m/d - H:i:s'). " - Lignes 05 : $nbLignes05 actes/évènements (".$nbInsert[5]." ajouts et ".$nbUpdate[5]." déjà en base)".EOL;
|
||
$message.=date('Y/m/d - H:i:s'). " - Fin de traitement du fichier $fichier.".EOL;
|
||
|
||
$tabInsert=array( 'nomFichier' => $fichier,
|
||
'dateFlux' => $dateFlux,
|
||
'dateDispo' => $dateDispo,
|
||
'taille' => filesize($fichierAvecRep),
|
||
'dateChargementDeb' => $dateInsert,
|
||
'dateChargementFin' => date('YmdHis'),
|
||
'stock' => $stock,
|
||
'nbLignesTot' => $nbLignesTot,
|
||
'nbLignes1' => $nbLignes01,
|
||
'nbLignes1a' => $nbInsert[1],
|
||
'nbLignes2' => $nbLignes02,
|
||
'nbLignes2a' => $nbInsert[2],
|
||
'nbLignes2p' => $nbLignes02p,
|
||
'nbLignes3' => $nbLignes03,
|
||
'nbLignes3a' => $nbInsert[3],
|
||
'nbLignes4' => $nbLignes04,
|
||
'nbLignes4a' => $nbInsert[4],
|
||
'nbLignes5' => $nbLignes05,
|
||
'nbLignes5a' => $nbInsert[5],
|
||
'dateInsert' => date('YmdHis'),
|
||
);
|
||
|
||
if (!$stock && count($tabFichLigneCmd)==0) {
|
||
if (bzip2(RNCS_IMR_FTP_DIR.$fichier, RNCS_IMR_BACKUP_DIR.$fichier)) {
|
||
unlink(RNCS_IMR_FTP_DIR.$fichier);
|
||
$message.=date ('Y/m/d - H:i:s') . " - Le fichier n°$iFic, $fichier vient d'être historisé.".EOL;
|
||
}
|
||
}
|
||
echo $message;
|
||
|
||
$iDb->insert('rncs_chargements', $tabInsert);
|
||
echo mysql_errno();
|
||
echo mysql_error();
|
||
|
||
sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', 'Chargement INPI IMR', $message);
|
||
//die();
|
||
}
|
||
|
||
if ($stock) {
|
||
|
||
/**
|
||
** Fermeture des entreprises non communiquées si stock
|
||
**/
|
||
|
||
// Supprimer ces 2 lignes quand tout sera OK pour le chargement d'un stock !
|
||
echo date('Y/m/d - H:i:s') ." - Faire une sauvegarde des tables avant toute autre opération !";
|
||
$saisie = trim(strtoupper(fgets(STDIN)));
|
||
|
||
|
||
/** Passage des établissements encore actifs à inactif pour les sociétés non transmisses dans le stock
|
||
**/
|
||
$ret=$iDb->select('rncs_entrep e, rncs_etab t', 't.id, e.siren, t.nic, t.siege', 'e.siren=t.siren AND e.actif=1 AND t.actif=1', false, MYSQL_ASSOC);
|
||
$nb=count($ret);
|
||
echo date ('Y/m/d - H:i:s')." - Il y a $nb établissements à passer inactifs...".EOL;
|
||
foreach ($ret as $tabEtab)
|
||
$iDb->update('rncs_etab', array('actif'=>0, 'dateFermeture'=>$dateFlux), 'id='.$tabEtab['id']);
|
||
|
||
/** Passage à inactif des sociétés non transmisses dans le stock
|
||
**/
|
||
$ret=$iDb->select('rncs_entrep', 'count(*) AS nb', 'actif=1', false, MYSQL_ASSOC);
|
||
$nb=$ret[0]['nb'];
|
||
echo date ('Y/m/d - H:i:s')." - Passage à l'état inactif des $nb entreprises non livrées dans le stock...".EOL;
|
||
|
||
$sql="UPDATE rncs_entrep SET actif=0, dateFer=$dateFlux WHERE actif=1;";
|
||
$iDb->query($sql, true);
|
||
|
||
/** Confirmation à actif des sociétés du stock
|
||
**/
|
||
$ret=$iDb->select('rncs_entrep', 'count(*) as nb', 'actif=11', false, MYSQL_ASSOC);
|
||
$nb=$ret[0]['nb'];
|
||
echo date ('Y/m/d - H:i:s')." - Confirmation à l'état actif des $nb entreprises chargées...".EOL;
|
||
$sql="UPDATE rncs_entrep SET actif=1 WHERE actif=11;";
|
||
$iDb->query($sql, true);
|
||
}
|
||
|
||
echo date ('Y/m/d - H:i:s') . " - Fin du traitement de chargement des flux RNCS IMR de l'INPI.".EOL;
|
||
|
||
die();
|
||
|
||
?>
|