2012-10-16 07:44:31 +00:00
#!/usr/bin/php -c/var/www/batch/config/php_batch_sd.ini
< ? php
include_once ( INCLUDE_PATH . 'insee/classMInsee.php' );
function getNomPrenom ( $strRaisonSociale ) {
$tabRet = array ();
$tabRet [ 'Nom' ] = $tabRet [ 'NomUsage' ] = $tabRet [ 'Prenom' ] = '' ;
if ( preg_match ( " /(.*) \ *(.*) \ /(.*)/ " , $strRaisonSociale , $matches ))
{
$tabRet [ 'Nom' ] = $matches [ 1 ];
$tmp = explode ( '/' , $matches [ 2 ]);
if ( isset ( $tmp [ 1 ]) && trim ( $tmp [ 1 ]) <> '' ) {
$tabRet [ 'NomUsage' ] = $tmp [ 0 ];
$tabRet [ 'Prenom' ] = $tmp [ 1 ];
} else
$tabRet [ 'Prenom' ] = $matches [ 2 ];
}
return $tabRet ;
}
$strInfoScript = 'Usage : ' . basename ( $argv [ 0 ]) . " <option> <fichier>
2013-06-19 08:24:49 +00:00
Chargement d ' un fichier <EFBFBD> v<EFBFBD> nement Insee ( ancien ou nouveau format ) .
2012-10-16 07:44:31 +00:00
Options :
2013-06-19 08:24:49 +00:00
- d Mode debug ( Verbosit<EFBFBD> au maximum )
2012-10-16 07:44:31 +00:00
" ;/*
2013-06-19 08:24:49 +00:00
// -n:XXX Num<75> ro du Bodacc
2012-10-16 07:44:31 +00:00
// -d:JJ/MM/AAAA Rechargement des annonces BODACC depuis cette date
2013-06-19 08:24:49 +00:00
// -f:JJ/MM/AAAA Rechargement des annonces BODACC jusqu'<27> cette date
" -l Derniers BODACC non int<6E> gr<67> s uniquement (*)
- m Force la date d 'insertion <20> celle de la r<> cup<75> ration des fichiers Bodacc (cas d' un rechargement complet )
- r ( inop<EFBFBD> rant ) Rechargement des annonces d<EFBFBD> j<EFBFBD> en base
- e EFFACEMENT DE TOUTES LES ANNONCES correspondantes d<EFBFBD> j<EFBFBD> en base ( et non mise <EFBFBD> jour )
2012-10-16 07:44:31 +00:00
2013-06-19 08:24:49 +00:00
( * ) Option par d<EFBFBD> faut si aucun argument n ' est pass<EFBFBD> .
2012-10-16 07:44:31 +00:00
" ;*/
2013-06-19 08:24:49 +00:00
echo date ( 'Y/m/d - H:i:s' ) . " - D<> but du traitement de chargement des <20> v<EFBFBD> nements INSEE \r \n " ;
2012-10-16 07:44:31 +00:00
flush ();
$tabFichier = array ();
$iDb = new WDB ( 'insee' );
$iInsee = new MInsee ();
$nbSiretInvalides = 0 ;
$modeDebug = false ;
//Initialistation des variables
$argv = $_SERVER [ 'argv' ];
2013-06-19 08:24:49 +00:00
if ( $_SERVER [ 'argc' ] == 1 ) die ( " Non g<> r<EFBFBD> pour l'instant : chargera les derniers fichiers EVEN non charg<72> s ! " . EOL );
2012-10-16 07:44:31 +00:00
/* die ( 'Usage : ' . basename ( $argv [ 0 ]) . " [OPTION]... FICHIER(S)
2013-06-19 08:24:49 +00:00
Charger un fichier au format Notice80 dans une base de donn<EFBFBD> es avec cr<EFBFBD> ation de la table qui aura le nom du fichier charg<EFBFBD> ..
2012-10-16 07:44:31 +00:00
Options disponibles :
2013-06-19 08:24:49 +00:00
- d = nom_bdd Nom de la base de donn<EFBFBD> es
2012-10-16 07:44:31 +00:00
- t = nom_table Nom de la table
2013-06-19 08:24:49 +00:00
( * ) : Valeurs par d<EFBFBD> faut !
2012-10-16 07:44:31 +00:00
" );*/
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': $db_table=substr($argv[$i],3); break;
default : die ( 'Option ' . $argv [ $i ] . " inconnue ! \n " );
}
} else $tabFichier [] = $argv [ $i ];
}
$db_table = 'insee_even' ;
//print_r($tabFichier);die();
for ( $i = 0 ; isset ( $tabFichier [ $i ]); $i ++ )
{
$nomFichier = $tabFichier [ $i ];
$idFlux = strtr ( strtoupper ( basename ( $nomFichier )), array ( 'I_' => '20' , '.DAT' => '' ));
$fp = fopen ( $nomFichier , 'r' );
if ( ! $fp ) {
2013-06-19 08:24:49 +00:00
echo date ( 'Y/m/d - H:i:s' ) . " - Erreur : Impossible d'ouvrir le fichier n<> $i <20> traiter ' " . $nomFichier . " ' " . EOL ;
2012-10-16 07:44:31 +00:00
echo date ( 'Y/m/d - H:i:s' ) . " - Fin du traitement " . EOL ;
die ();
}
$nbLignes = 0 ; // Nombre de ligne du fichier
$ret = $iDb -> select ( $db_table , 'count(idFlux) as nb' , " idFlux=' $idFlux ' " );
$nbLoaded = $ret [ 0 ][ 0 ];
if ( $nbLoaded > 0 ) {
while ( ! feof ( $fp ))
{
$nbLignes ++ ;
$a = trim ( fgets ( $fp , 437 ));
}
if ( -- $nbLignes == $nbLoaded )
2013-06-19 08:24:49 +00:00
echo date ( 'Y/m/d - H:i:s' ) . " - Le fichier n<> $i , $nomFichier a d<> j<EFBFBD> <20> t<EFBFBD> charg<72> ! " . EOL ;
2012-10-16 07:44:31 +00:00
else
2013-06-19 08:24:49 +00:00
die ( date ( 'Y/m/d - H:i:s' ) . " - ERREUR : le fichier n<> $i , $nomFichier a <20> t<EFBFBD> charg<72> partiellement $nbLignes <> $nbLoaded ! " . EOL );
2012-10-16 07:44:31 +00:00
continue ;
}
2013-06-19 08:24:49 +00:00
echo date ( 'Y/m/d - H:i:s' ) . " - D<> but du traitement du fichier n<> $i , $nomFichier ! " . EOL ;
2012-10-16 07:44:31 +00:00
flush ();
$finFichier = false ;
while ( ! feof ( $fp ))
{
$nbLignes ++ ;
$a = trim ( fgets ( $fp , 437 ));
if ( $finFichier ) {
2013-06-19 08:24:49 +00:00
echo date ( 'Y/m/d - H:i:s' ) . " - Attention la fin de fichier a <20> t<EFBFBD> trouv<75> e <20> la ligne pr<70> c<EFBFBD> dente ! " . EOL ; //Nouveau format du fichier <20> v<EFBFBD> nement (de Mai 2007) non g<> r<EFBFBD> !
2012-10-16 07:44:31 +00:00
die ();
}
//unset($tabErreur); $nbErr=0;
$tabEve = array ();
$tabEve [ 'idFlux' ] = $idFlux ;
2013-06-19 08:24:49 +00:00
$tabEve [ 'insSIREN' ] = substr ( $a , 0 , 9 ); // N<> Siren de l'entreprise concern<72> e par la mise <20> jour
$tabEve [ 'insNIC' ] = substr ( $a , 9 , 5 ); // Identifiant de l'<27> tablissement
$tabEve [ 'insLIBCOM' ] = substr ( $a , 14 , 26 ); // Libell<6C> de la commune
$insAACRET = substr ( $a , 40 , 4 ); // Ann<6E> e de cr<63> ation de l'<27> tablissement
$insMMCRET = substr ( $a , 44 , 2 ); // Mois de cr<63> ation de l'<27> tablissement
$insJJCRET = substr ( $a , 46 , 2 ); // Jour de cr<63> ation de l'<27> tablissement
$tabEve [ 'insMMINTRET' ] = substr ( $a , 48 , 2 ); // Mois d'immatriculation (si dans l'ann<6E> e en cours)
2012-10-16 07:44:31 +00:00
$tabEve [ 'insSIEGE' ] = substr ( $a , 50 , 1 ); // SIEGE (ancienne partie 1 de la variable STATUT)
$tabEve [ 'insAUXILT' ] = substr ( $a , 51 , 1 ); // AUXILIARITE (ancienne partie 2 de la variable STATUT)
$tabEve [ 'insORIGINE' ] = substr ( $a , 52 , 1 ); // Origine
2013-06-19 08:24:49 +00:00
$tabEve [ 'insTEFET' ] = substr ( $a , 53 , 2 ); // Tranche d'effectif salari<72>
$tabEve [ 'insAPET700' ] = substr ( $a , 55 , 4 ); // Activit<69> de l'<27> tablissement
$tabEve [ 'insAPRM' ] = substr ( $a , 59 , 5 ); // Activit<69> artisanale principale
$tabEve [ 'insMODET' ] = substr ( $a , 64 , 1 ); // Modalit<69> de l'activit<69> principale exerc<72> e
$tabEve [ 'insMARCHET' ] = substr ( $a , 65 , 1 ); // Caract<63> re marchand ou non
$tabEve [ 'insSAISONAT' ] = substr ( $a , 66 , 1 ); // Saisonnalit<69>
2012-10-16 07:44:31 +00:00
$tabEve [ 'insACTIVNAT' ] = substr ( $a , 67 , 2 ); // Nature
2013-06-19 08:24:49 +00:00
$tabEve [ 'insENSEIGNE' ] = substr ( $a , 69 , 40 ); // Nom de l'<27> tablissement
$tabEve [ 'insL3_CADR' ] = substr ( $a , 109 , 26 ); // Compl<70> ment d'adresse
$tabEve [ 'insNUMVOIE' ] = substr ( $a , 135 , 4 ); // Num<75> ro dans la voie
$tabEve [ 'insINDREP' ] = substr ( $a , 139 , 1 ); // Indice de r<> p<EFBFBD> tition
2012-10-16 07:44:31 +00:00
$tabEve [ 'insTYPVOIE' ] = substr ( $a , 140 , 3 ); // Type de voie
2013-06-19 08:24:49 +00:00
$tabEve [ 'insLIBVOIE' ] = substr ( $a , 143 , 26 ); // Libell<6C> de voie
$tabEve [ 'insL5_DISP' ] = substr ( $a , 169 , 26 ); // Distribution sp<73> ciale pour l'<27> tablissement
$tabEve [ 'insL6_POSTE' ] = substr ( $a , 195 , 35 ); // Ligne d'acheminement postal pour l'<27> tablissement
2012-10-16 07:44:31 +00:00
$tabEve [ 'insCODPOS' ] = substr ( $a , 195 , 5 ); // Code postal de la ligne d'acheminement postal
2013-06-19 08:24:49 +00:00
$tabEve [ 'insTEL' ] = substr ( $a , 230 , 11 ); // T<> l<EFBFBD> phone de l'<27> tablissement
$tabEve [ 'insCJ' ] = substr ( $a , 241 , 4 ); // Cat<61> gorie juridique
2012-10-16 07:44:31 +00:00
$tabEve [ 'insCIVILITE' ] = substr ( $a , 245 , 1 ); // Sexe pour une personne physique
$tabEve [ 'insTEFEN' ] = substr ( $a , 246 , 2 ); // Tranche d'effectif de l'entreprise
2013-06-19 08:24:49 +00:00
$tabEve [ 'insAPEN700' ] = substr ( $a , 248 , 4 ); // Activit<69> principale exerc<72> e
$tabEve [ 'insMODEN' ] = substr ( $a , 252 , 1 ); // Modalit<69> de l'activit<69> principale exerc<72> e
$tabEve [ 'insMARCHEN' ] = substr ( $a , 253 , 1 ); // Caract<63> re marchand ou non
2012-10-16 07:44:31 +00:00
$tabEve [ 'insNOMEN' ] = substr ( $a , 254 , 40 ); // Nom ou raison sociale de l'entreprise
$tabEve [ 'insTCA' ] = substr ( $a , 294 , 2 ); // Tranche de CA
2013-06-19 08:24:49 +00:00
$tabEve [ 'insTYPCREH' ] = substr ( $a , 296 , 2 ); // Nature de la mise <20> jour ou type de cr<63> ation hebdo TYPCREH
2012-10-16 07:44:31 +00:00
$tabEve [ 'insFiller1' ] = substr ( $a , 298 , 8 ); //
2013-06-19 08:24:49 +00:00
$tabEve [ 'insEVE' ] = substr ( $a , 306 , 2 ); // Type d'<27> v<EFBFBD> nement dans la vie de l'entreprise
$tabEve [ 'insDATEVE' ] = substr ( $a , 308 , 8 ); // Date de l'<27> v<EFBFBD> nement d<> clar<61>
$tabEve [ 'insTRAN' ] = substr ( $a , 316 , 1 ); // En cas de transfert, situation de l'<27> tablissement (D<> part ou Arriv<69> e)
$tabEve [ 'insNICTRAN' ] = substr ( $a , 317 , 5 ); // NIC de l'<27> tablissement li<6C> par le transfert : Arriv<69> e ANIC ou D<> part DNIC
$tabEve [ 'insMNICSIEGE' ] = substr ( $a , 322 , 1 ); // Indicateur de Transfert de si<73> ge
2012-10-16 07:44:31 +00:00
$tabEve [ 'insMNOMEN' ] = substr ( $a , 323 , 1 ); // MAJ du nom de l'entreprise
$tabEve [ 'insMCJ' ] = substr ( $a , 324 , 1 ); // MAJ de la CJ
2013-06-19 08:24:49 +00:00
$tabEve [ 'insMAPEN' ] = substr ( $a , 325 , 1 ); // MAJ de l'activit<69> SIREN
2012-10-16 07:44:31 +00:00
$tabEve [ 'insFiller2' ] = substr ( $a , 326 , 1 ); //
$tabEve [ 'insFiller3' ] = substr ( $a , 327 , 1 ); //
2013-06-19 08:24:49 +00:00
$tabEve [ 'insMMARCHEN' ] = substr ( $a , 328 , 1 ); // MAJ du caract<63> re marchand SIREN
2012-10-16 07:44:31 +00:00
$tabEve [ 'insMORDIN' ] = substr ( $a , 329 , 1 ); // MAJ ordin
2013-06-19 08:24:49 +00:00
$tabEve [ 'insEFENCENT' ] = substr ( $a , 330 , 6 ); // Effectif approch<63> de l'entreprise
2012-10-16 07:44:31 +00:00
$tabEve [ 'insSIGLE' ] = substr ( $a , 336 , 20 ); // Sigle
2013-06-19 08:24:49 +00:00
$tabEve [ 'insNBETEXPL' ] = substr ( $a , 356 , 4 ); // Nombre d'<27> tablissements ordianaires actifs
$tabEve [ 'insNICSIEGE' ] = substr ( $a , 360 , 5 ); // NIC de l'<27> tablissement si<73> ge
$tabEve [ 'insDEPCOMEN' ] = substr ( $a , 365 , 5 ); // Localisation g<> ographique du si<73> ge
$insAACREN = substr ( $a , 370 , 4 ); // Ann<6E> e de cr<63> ation de l'entreprise
$insMMCREN = substr ( $a , 374 , 2 ); // Mois de cr<63> ation de l'entreprise
$insJJCREN = substr ( $a , 376 , 2 ); // Jour de cr<63> ation de l'entreprise
2012-10-16 07:44:31 +00:00
$tabEve [ 'insFiller4' ] = substr ( $a , 378 , 1 ); //
2013-06-19 08:24:49 +00:00
$tabEve [ 'insMENSEIGNE' ] = substr ( $a , 379 , 1 ); // MAJ du nom de l'<27> tablissement
$tabEve [ 'insMAPET' ] = substr ( $a , 380 , 1 ); // MAJ de l'activit<69> SIRET
2012-10-16 07:44:31 +00:00
$tabEve [ 'insMNATURE' ] = substr ( $a , 381 , 1 ); // MAJ code Nature SIRET
$tabEve [ 'insMADRESSE' ] = substr ( $a , 382 , 1 ); // MAJ adresse SIRET
$tabEve [ 'insMEFET' ] = substr ( $a , 383 , 1 ); // MAJ effectif SIRET
2013-06-19 08:24:49 +00:00
$tabEve [ 'insMSINGT' ] = substr ( $a , 384 , 1 ); // MAJ singularit<69> SIRET
$tabEve [ 'insMTELT' ] = substr ( $a , 385 , 1 ); // MAJ T<> l SIRET
$tabEve [ 'insMMARCHET' ] = substr ( $a , 386 , 1 ); // MAJ caract<63> re marchand SIRET
$tabEve [ 'insMAUXILT' ] = substr ( $a , 387 , 1 ); // MAJ code auxiliarit<69> SIRET
$tabEve [ 'insSINGT' ] = substr ( $a , 388 , 2 ); // Singularit<69>
$tabEve [ 'insEFETCENT' ] = substr ( $a , 390 , 6 ); // Effectif approch<63> de l'<27> tablissement
$tabEve [ 'insSIRETPS' ] = substr ( $a , 396 , 14 ); // Siret du pr<70> c<EFBFBD> dent exploitant
$tabEve [ 'insDEPCOM' ] = substr ( $a , 410 , 5 ); // TOPO : D<> partement commune de l'<27> tab
$tabEve [ 'insCODEVOIE' ] = substr ( $a , 415 , 5 ); // TOPO : Implantation code voie topographique de l'<27> tablissement
2012-10-16 07:44:31 +00:00
$tabEve [ 'insDESTINAT' ] = substr ( $a , 420 , 2 ); // Destination
$tabEve [ 'insDATEMAJ' ] = substr ( $a , 422 , 13 ); // Identifiant informatique = Date de MAJ
if ( $insAACRET * 1 > 0 )
2013-06-19 08:24:49 +00:00
$dateCrea = $insAACRET ; // Ann<6E> e de cr<63> ation de l'<27> tablissement
2012-10-16 07:44:31 +00:00
else $dateCrea = '0000' ;
if ( $insMMCRET * 1 > 0 )
2013-06-19 08:24:49 +00:00
$dateCreaET = $dateCrea . $insMMCRET ; // Ann<6E> e de cr<63> ation de l'<27> tablissement
2012-10-16 07:44:31 +00:00
else $dateCreaET = $dateCrea . '01' ;
if ( $insJJCRET * 1 > 0 )
2013-06-19 08:24:49 +00:00
$dateCreaET .= $insJJCRET ; // Ann<6E> e de cr<63> ation de l'<27> tablissement
2012-10-16 07:44:31 +00:00
else $dateCreaET .= '01' ;
if (( $tabEve [ 'insMMINTRET' ] * 1 ) > 0 )
$dateImmatET = $dateCrea . $tabEve [ 'insMMINTRET' ] . '01' ;
else
$dateImmatET = '00000000' ;
if ( $insAACREN * 1 > 0 )
2013-06-19 08:24:49 +00:00
$dateCreaEN = $insAACREN ; // Ann<6E> e de cr<63> ation de l'<27> tablissement
2012-10-16 07:44:31 +00:00
else $dateCreaEN = '0000' ;
if ( $insMMCREN * 1 > 0 )
2013-06-19 08:24:49 +00:00
$dateCreaEN .= $insMMCREN ; // Ann<6E> e de cr<63> ation de l'<27> tablissement
2012-10-16 07:44:31 +00:00
else $dateCreaEN .= '01' ;
if ( $insJJCREN * 1 > 0 )
2013-06-19 08:24:49 +00:00
$dateCreaEN .= $insJJCREN ; // Ann<6E> e de cr<63> ation de l'<27> tablissement
2012-10-16 07:44:31 +00:00
else $dateCreaEN .= '01' ;
/*
2013-06-19 08:24:49 +00:00
echo " Siret= $insSIREN $insNIC , Cr<43> ation Etab : $insJJCRET / $insMMCRET / $insAACRET / Entrep : $insJJCREN / $insMMCREN / $insAACREN . Eve le $insDATE = $insEVE " . EOL ;
2012-10-16 07:44:31 +00:00
if ( $insMNOMEN ) echo " ---> MAJ du nom de l'entreprise " . EOL ;
if ( $insMCJ ) echo " ---> MAJ de la CJ " . EOL ;
2013-06-19 08:24:49 +00:00
if ( $insMAPEN ) echo " ---> MAJ de l'activit<69> SIREN " . EOL ;
if ( $insMMARCHEN ) echo " ---> MAJ du caract<63> re marchand SIREN " . EOL ;
2012-10-16 07:44:31 +00:00
if ( $insMORDIN ) echo " ---> MAJ ordin " . EOL ;
2013-06-19 08:24:49 +00:00
if ( $insMNOMET ) echo " ---> MAJ du nom de l'<27> tablissement " . EOL ;
if ( $insMAPET ) echo " ---> MAJ de l'activit<69> SIRET " . EOL ;
2012-10-16 07:44:31 +00:00
if ( $insMNATURE ) echo " ---> MAJ code Nature SIRET " . EOL ;
if ( $insMADRESSE ) echo " ---> MAJ adresse SIRET " . EOL ;
if ( $insMEFET ) echo " ---> MAJ effectif SIRET " . EOL ;
2013-06-19 08:24:49 +00:00
if ( $insMSINGT ) echo " ---> MAJ singularit<69> SIRET " . EOL ;
if ( $insMTELT ) echo " ---> MAJ T<> l SIRET " . EOL ;
if ( $insMMARCHET ) echo " ---> MAJ caract<63> re marchand SIRET " . EOL ;
if ( $insMAUXILIAR ) echo " ---> MAJ code auxiliarit<69> SIRET " . EOL ;
2012-10-16 07:44:31 +00:00
*/
$insSIREN = $tabEve [ 'insSIREN' ];
$insNIC = $tabEve [ 'insNIC' ];
if ( ! $iInsee -> valideSiren ( $insSIREN , $insNIC )) {
$tabEve [ 'siretValide' ] = 0 ;
$nbSiretInvalides ++ ;
}
else
$tabEve [ 'siretValide' ] = 1 ;
$insNOMEN = $tabEve [ 'insNOMEN' ];
$tabNoms = getNomPrenom ( $insNOMEN );
$tabEve [ 'dirNom' ] = $tabNoms [ 'Nom' ];
$tabEve [ 'dirNomUsage' ] = $tabNoms [ 'NomUsage' ];
$tabEve [ 'dirPrenom' ] = $tabNoms [ 'Prenom' ];
$tabEve [ 'insDCRET' ] = $dateCreaET ;
$tabEve [ 'insDCREN' ] = $dateCreaEN ;
if ( $modeDebug )
echo " Siret= $insSIREN $insNIC : $insNOMEN . Eve le " . $tabEve [ 'insDATE' ] . '=' . $tabEve [ 'insEVE' ] . EOL ;
if ( trim ( $insSIREN ) <> '' && trim ( $insNIC ) <> '' ) {
$finFichier = false ;
$ret = $iDb -> insert ( $db_table , $tabEve );
if ( $ret === false ) {
2013-06-19 08:24:49 +00:00
echo date ( 'Y/m/d - H:i:s' ) . " - ERREUR n<> " . mysql_errno () . " <20> l'insertion du siret $insSIREN $insNIC : " . mysql_error () . '!' . EOL ;
2012-10-16 07:44:31 +00:00
flush ();
}
} else $finFichier = true ;
/* if ( $tabErreur ) {
2013-06-19 08:24:49 +00:00
echo date ( 'Y/m/d - H:i:s' ) . " - ATTENTION, ligne $nbLignes , probl<62> mes pour le siret $insSIREN $insNIC !!! \r \n " ;
2012-10-16 07:44:31 +00:00
print_array ( $tabErreur , 0 , " txt " );
flush ();
}
*/
//unset($tabDataToInsert);
}
fclose ( $fp );
/*
$strUpdate = '' ;
for ( $j = $nbFichiers + 1 ; isset ( $tabFichDate [ $j ]); $j ++ )
$strUpdate .= $tabFichDate [ $j ] . ';' ;
$tabDataToUpdate = array ( 'VALEUR' => $strUpdate ,
'CLE' => 'INSEE_FICHIERS_MAJ' );
// $iparam->setParamValeur($tabDataToUpdate);
$totI = $vmajS + $vmajC + $vmajF ;
$totS = $vmajE + $vmajI ;
2013-06-19 08:24:49 +00:00
$messageInsertion .= " R<EFBFBD> sum<EFBFBD> du traitement du fichier n<> $nbFichiers = $nomFichier du mois de $moisFichier ! \r \n \r \n " ;
2012-10-16 07:44:31 +00:00
$messageInsertion .= " Nombre de nouvelles insertion: " . $totI . " \r \n " ;
2013-06-19 08:24:49 +00:00
$messageInsertion .= " - dont Changement de si<73> ge: " . $vmajS . " \r \n " ;
$messageInsertion .= " - dont Entr<74> e d'un SIRET - Immatriculation d'un nouvel <20> tablissement: " . $vmajC . " \r \n " ;
$messageInsertion .= " - dont Etat final d'un SIRET modifi<66> (apr<70> s mise <20> jour): " . $vmajF . " \r \n " ;
2012-10-16 07:44:31 +00:00
$messageSuppression .= " Nombre de suppression: " . $totS . " \r \n " ;
2013-06-19 08:24:49 +00:00
$messageSuppression .= " - dont Suppression d'un SIRET - Cessation d'activit<69> d'un <20> tablissement: " . $vmajE . " \r \n " ;
$messageSuppression .= " - dont Etat initial d'un SIRET modifi<66> (avant mise <20> jour): " . $vmajI . " \r \n \r \n " ;
2012-10-16 07:44:31 +00:00
echo date ( 'Y/m/d - H:i:s' ) . " - Nombre de nouvelles insertion: " . $totI . " \r \n " ;
2013-06-19 08:24:49 +00:00
echo date ( 'Y/m/d - H:i:s' ) . " - | dont Changement de si<73> ge: " . $vmajS . " \r \n " ;
echo date ( 'Y/m/d - H:i:s' ) . " - | dont Entr<74> e d'un SIRET ou Immatriculation d'un nouvel <20> tablissement: " . $vmajC . " \r \n " ;
echo date ( 'Y/m/d - H:i:s' ) . " - | dont Etat final d'un SIRET modifi<66> (apr<70> s mise <20> jour): " . $vmajF . " \r \n " ;
2012-10-16 07:44:31 +00:00
echo date ( 'Y/m/d - H:i:s' ) . " - Nombre de suppression: " . $totS . " \r \n " ;
2013-06-19 08:24:49 +00:00
echo date ( 'Y/m/d - H:i:s' ) . " - | dont Suppression d'un SIRET ou Cessation d'activit<69> d'un <20> tablissement: " . $vmajE . " \r \n " ;
echo date ( 'Y/m/d - H:i:s' ) . " - | dont Etat initial d'un SIRET modifi<66> (avant mise <20> jour): " . $vmajI . " \r \n " ;
echo date ( 'Y/m/d - H:i:s' ) . " - Fin du traitement du fichier n<> $nbFichiers = $nomFichier du mois de $moisFichier ! \r \n \r \n " ;
2012-10-16 07:44:31 +00:00
flush ();
*/
}
2013-06-19 08:24:49 +00:00
echo date ( 'Y/m/d - H:i:s' ) . " - $nbLignes lignes trait<69> es dont $nbSiretInvalides siret invalides ! " . EOL ;
2012-10-16 07:44:31 +00:00
echo date ( 'Y/m/d - H:i:s' ) . " - Fin correcte du traitement. " . EOL ;
die ();
/*
2013-06-19 08:24:49 +00:00
echo date ( 'Y/m/d - H:i:s' ) . " - Cr<43> ation des index de recherche... \n " ;
2012-10-16 07:44:31 +00:00
$ret = $iDb -> query ( " ALTER TABLE $db_table ADD INDEX idxSiret(insSIREN, insNIC); " );
$ret = $iDb -> query ( " ALTER TABLE $db_table ADD INDEX (insSIEGE); " );
$ret = $iDb -> query ( " ALTER TABLE $db_table ADD INDEX (insAPET700); " );
$ret = $iDb -> query ( " ALTER TABLE $db_table ADD INDEX (insAPET31); " );
$ret = $iDb -> query ( " ALTER TABLE $db_table ADD INDEX (insCJ); " );
$ret = $iDb -> query ( " ALTER TABLE $db_table ADD INDEX (insAPEN700); " );
$ret = $iDb -> query ( " ALTER TABLE $db_table ADD INDEX (insAPEN31); " );
$ret = $iDb -> query ( " ALTER TABLE $db_table ADD INDEX (SPEACT); " );
$ret = $iDb -> query ( " ALTER TABLE $db_table ADD INDEX (SORLJ_N); " );
$ret = $iDb -> query ( " ALTER TABLE $db_table ADD INDEX (SOEVT); " );
$ret = $iDb -> query ( " ALTER TABLE $db_table ADD INDEX (SOETEL); " );
$ret = $iDb -> query ( " ALTER TABLE $db_table ADD INDEX (SOEFAX); " );
2013-06-19 08:24:49 +00:00
echo date ( 'Y/m/d - H:i:s' ) . " - Cr<43> ation des index de recherche termin<69> e ! \n " ;
2012-10-16 07:44:31 +00:00
*/
2013-06-19 08:24:49 +00:00
// Mise <20> jour de la table PARAM
2012-10-16 07:44:31 +00:00
// -----------------------------
2013-06-19 08:24:49 +00:00
// 3 - pour la fin d'ex<65> cution du traitement en cours
2012-10-16 07:44:31 +00:00
/* $tabDataToUpdate = array ( 'VALEUR' => 0 ,
'CLE' => 'INSEE_MAJ_ENCOURS' );
// $iparam->setParamValeur($tabDataToUpdate);
$heureFin = date ( 'H:i:s' );
$tabDataToUpdateTraitement = array ( 'NUM' => $numScript ,
'DATE_JOUR' => $dateJour ,
'HEURE_DEBUT' => $heureDebut ,
'HEURE_FIN' => $heureFin ,
'CODE_RETOUR' => 1 ,
'NB_MAIL' => 1 ,
2013-06-19 08:24:49 +00:00
'RESUME_EXEC' => " traitement achev<65> correctement " );
2012-10-16 07:44:31 +00:00
// $itraitement->setTraitement($tabDataToUpdateTraitement);
$tabDataMail = array ( 'MAIL_OBJET' => $sujetMail ,
'MAIL_CORPS' => " Traitement correct: \r \n " . $messageInsertion . " \r \n " . $messageSuppression . " \r \n " );
// $emailBatch=new EMailBatch($tabDataMail);
// $emailBatch->mailBatica($numScript);
echo date ( 'Y/m/d - H:i:s' ) . " - Fin correcte du traitement. \r \n " ;
exit ();
function ecrireFichier ( $fichier , $texte ){
$fp = fopen ( $fichier , " a " );
fwrite ( $fp , $texte . " \r \n " );
fclose ( $fp );
}
function valideSiret ( $SIRET ) {
if ( ! is_numeric ( $SIRET ))
return false ;
$somme = 0 ;
for ( $i = 0 ; $i <= 12 ; $i += 2 ) { // Traitement PAIR
$var_tmp = ( string )( 2 * (( integer ) substr ( $SIRET , $i , 1 )));
$som_tmp = 0 ;
for ( $j = 0 ; $j < strlen ( $var_tmp ); $j ++ )
$som_tmp += ( integer ) substr ( $var_tmp , $j , 1 );
$somme += $som_tmp ;
}
for ( $i = 1 ; $i <= 13 ; $i += 2 ) // Traitement IMPAIR
$somme += ( integer ) substr ( $SIRET , $i , 1 );
if (( integer )( $somme / 10 ) != ( $somme / 10 ))
return false ;
return true ;
}
*/
?>