2012-10-16 07:44:31 +00:00
#!/usr/bin/php -c/var/www/batch/config/php_batch_sd.ini
< ? php
2013-06-19 08:24:49 +00:00
include_once ( FWK_PATH . 'common/curl.php' );
2012-10-16 07:44:31 +00:00
include_once ( FWK_PATH . 'common/chiffres.php' );
include_once ( FWK_PATH . 'common/dates.php' );
include_once ( INCLUDE_PATH . 'insee/classMInsee.php' );
2013-06-19 08:24:49 +00:00
include_once ( INCLUDE_PATH . 'partenaires/classMRncs.php' );
include_once ( INCLUDE_PATH . 'partenaires/classMBilans.php' );
2012-10-16 07:44:31 +00:00
include_once ( FWK_PATH . 'mail/sendMail.php' );
2013-06-19 08:24:49 +00:00
$modeDebug = false ;
$doAct = false ;
$doPar = false ;
$doPurge = false ;
$doNomPrenom = false ;
$doMajTVA = false ;
$doDoublons = false ;
$doIdentite = false ;
$doEven = false ;
$doAssocGer = false ;
2012-10-16 07:44:31 +00:00
$strInfoScript = 'Usage : ' . basename ( $argv [ 0 ]) . " <option>
2013-06-19 08:24:49 +00:00
Mise <EFBFBD> jour des liens actionnaires et participations .
2012-10-16 07:44:31 +00:00
Options :
2013-06-19 08:24:49 +00:00
- v Mode debug ( Verbosit<EFBFBD> au maximum et fonctionnement sans timer ni contraintes temporelles )
- a Traiter les actionnaires
- p Traiter les participations
- d Purge les tables
- n Mise <EFBFBD> jour des zones Nom / Pr<EFBFBD> noms par rapport <EFBFBD> la raison sociale
- t Mise <EFBFBD> jour TVA
- i Mise <EFBFBD> jour de l ' identit<EFBFBD>
- e Mise <EFBFBD> jour suite aux <EFBFBD> v<EFBFBD> nements
- g Mise <EFBFBD> jour des Associ<EFBFBD> s G<EFBFBD> rants RNCS
- m Traitement des multiples doublons dans liensRef
2012-10-16 07:44:31 +00:00
2013-06-19 08:24:49 +00:00
" ;/* -i:XXXXX Reprendre au code commune Insee XXXXX
2012-10-16 07:44:31 +00:00
2013-06-19 08:24:49 +00:00
" ;*/
2012-10-16 07:44:31 +00:00
2013-06-19 08:24:49 +00:00
$argv = $_SERVER [ 'argv' ];
$tabSiren = array ();
for ( $i = 1 , $j = 0 ; isset ( $argv [ $i ]); $i ++ ) {
if ( substr ( $argv [ $i ], 0 , 1 ) == '-' ) {
switch ( substr ( $argv [ $i ], 1 , 1 )) {
case 'a' : $doAct = true ; break ;
case 'p' : $doPar = true ; break ;
case 'd' : $doPurge = true ; break ;
case 'n' : $doNomPrenom = true ; break ;
case 'v' : $modeDebug = true ; break ;
case 't' : $doMajTVA = true ; break ;
case 'i' : $doIdentite = true ; break ;
case 'e' : $doEven = true ; break ;
case 'g' : $doAssocGer = true ; break ;
case 'm' : $doDoublons = true ; break ;
case '-' :
case '?' : die ( $strInfoScript ); break ;
default : die ( 'Option ' . $argv [ $i ] . " inconnue ! \n " );
}
} else $tabSiren [] = $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
**/
$iDb = new WDB ( 'jo' );
$iInsee = new MInsee ();
echo date ( 'Y/m/d - H:i:s' ) . " - D<> but de la mise <20> jour des liens... " . EOL ;
if ( $doNomPrenom ) {
$iBodacc = new MBodacc ();
echo date ( 'Y/m/d - H:i:s' ) . " - Recherche des mise <20> jour des Zones Noms/Pr<50> noms... " . EOL ;
$ret = $iDb -> select ( 'liensRef' ,
'id, PpPm, RS, civilite, nom, prenom, adresse_num, adresse_btq, adresse_codvoie, adresse_libvoie, adresse_comp, adresse_cp, adresse_ville, adresse_pays' ,
" PpPm='PP' AND RS LIKE '% %' AND nom='' and prenom='' AND /*id>999*/ id>=902511 AND RS NOT LIKE '%FAMILLE%' " , false , MYSQL_ASSOC ); //OR idLoc1Num LIKE 'FR%'
$nb = count ( $ret );
echo date ( 'Y/m/d - H:i:s' ) . " - D<> but de la mise <20> jour des $nb zones... " . EOL ;
foreach ( $ret as $i => $lien ) {
$id = $lien [ 'id' ];
$rs = $lien [ 'RS' ];
$civ = $lien [ 'civilite' ];
$tmp = $iBodacc -> getNomPrenomGenre ( $rs );
$nom = $tmp [ 'Nom' ];
$prenom = $tmp [ 'Prenoms' ];
$sexe = $tmp [ 'Genre' ];
if ( $civ == '' && $sexe = 'M' ) $civ2 = 'M' ;
elseif ( $civ == '' && $sexe = 'F' ) $civ2 = 'MME' ;
else $civ2 = $civ ;
echo " $i / $nb - $id , $rs : $civ $nom [ $civ2 ] $prenom " . EOL ;
$tabUpdate = array ( 'nom' => $nom ,
'prenom' => $prenom ,
'civilite' => $civ2 );
$iDb -> update ( 'liensRef' , $tabUpdate , " id= $id " , false );
if ( mysql_errno ()) echo mysql_error () . EOL ;
}
die ();
}
if ( $doDoublons ) {
$iBodacc = new MBodacc ();
echo date ( 'Y/m/d - H:i:s' ) . " - Recherche des Doublons... " . EOL ;
$ret = $iDb -> select ( 'liensRef' ,
'COUNT(*) AS nb, siren' ,
" siren>0 GROUP BY siren having nb>1 ORDER BY nb DESC " , false , MYSQL_ASSOC );
$nb = count ( $ret );
echo date ( 'Y/m/d - H:i:s' ) . " - D<> but de la mise <20> jour des $nb doublons... " . EOL ;
foreach ( $ret as $i => $lien ) {
$siren = $lien [ 'siren' ];
echo " $i / $nb : $siren = " . $lien [ 'nb' ] . " doublons... " ;
$ret2 = $iDb -> select ( 'liensRef' ,
'id, rs, nom, prenom' ,
" siren= $siren " , false , MYSQL_ASSOC );
foreach ( $ret2 as $j => $tmp ) {
if ( $j == 0 ) {
// La 1<> re fiche est la bonne !
$idRef = $tmp [ 'id' ];
continue ;
2012-10-16 07:44:31 +00:00
}
2013-06-19 08:24:49 +00:00
// on recherche tous les cas ou cette 2nde fiche est act
$idPre = $tmp [ 'id' ];
$ret3 = $iDb -> update ( 'liens2' , array ( 'idAct' => $idRef ), " idAct= $idPre " , false );
// on recherche tous les cas ou cette 2nde fiche est par
$ret3 = $iDb -> update ( 'liens2' , array ( 'idPar' => $idRef ), " idPar= $idPre " , false );
// On supprime physiquement la fiche
$ret3 = $iDb -> delete ( 'liensRef' , " id= $idPre " , false );
echo " $idPre remplac<61> par $idRef , " ;
2012-10-16 07:44:31 +00:00
}
2013-06-19 08:24:49 +00:00
echo EOL ;
2012-10-16 07:44:31 +00:00
}
2013-06-19 08:24:49 +00:00
die ();
2012-10-16 07:44:31 +00:00
}
2013-06-19 08:24:49 +00:00
if ( $doEven ) {
/*
echo date ( 'Y/m/d - H:i:s' ) . " - Recherche des modifications RNCS... " . EOL ;
$ret = $iDb -> select ( 'rncs_modifs' ,
'siren, champs, valeur, flux' ,
" flux>='2013-01-15' AND `table`='rncs_entrep' AND (champs='capitalMontant' OR champs='capitalType' OR champs='cj' OR champs='actif' OR champs='raisonSociale') GROUP BY siren, champs " , false , MYSQL_ASSOC );
$nb = count ( $ret );
echo date ( 'Y/m/d - H:i:s' ) . " - D<> but du traitement des $nb modifications... " . EOL ;
foreach ( $ret as $i => $lien ) {
$siren = $lien [ 'siren' ];
$champs = $lien [ 'champs' ];
$valeur = $lien [ 'valeur' ];
//echo "$i/$nb : $siren = ".$lien['nb']." doublons...";
$ret2 = $iDb -> select ( 'liensRef' , 'id, siren, actif, RS, cj, capital, dateCapital' ,
" siren= $siren " , false , MYSQL_ASSOC );
$idRef =@ $ret2 [ 0 ][ 'id' ];
$lien2 =@ $ret2 [ 0 ];
if ( $idRef > 0 ) {
$ret3 = $iDb -> select ( 'liens2' , 'count(*) AS nb' , " idAct= $idRef AND actif=1 " , false );
$nbAct = $ret3 [ 0 ][ 'nb' ];
$ret3 = $iDb -> select ( 'liens2' , 'count(*) AS nb' , " idPar= $idRef AND actif=1 " , false );
$nbPar = $ret3 [ 0 ][ 'nb' ];
if ( $nbAct > 0 || $nbPar > 0 ) {
echo " $i / $nb : $siren ( $champs =' $valeur ') - $nbAct fois actionnaire et $nbPar fois participation " . EOL ;
$tabId =@ $iInsee -> getIdentiteEntreprise ( $siren , 0 , 0 , false , false );
print_r ( $lien2 );
print_r ( $tabId );
die ();
}
2012-10-16 07:44:31 +00:00
}
2013-06-19 08:24:49 +00:00
}
die ();
*/
$ret = $iDb -> select ( 'liensRef' ,
'id, siren, actif, RS' ,
" id>=1000 " , false , MYSQL_ASSOC );
$nb = count ( $ret );
echo date ( 'Y/m/d - H:i:s' ) . " - D<> but du traitement des $nb modifications... " . EOL ;
foreach ( $ret as $i => $lien ) {
$idRef = $lien [ 'id' ];
$siren = $lien [ 'siren' ];
$RS = $lien [ 'RS' ];
if ( $idRef > 0 ) {
$ret3 = $iDb -> select ( 'liens2' , 'count(*) AS nb' , " idAct= $idRef AND actif=1 " , false );
$nbAct = $ret3 [ 0 ][ 'nb' ];
$ret3 = $iDb -> select ( 'liens2' , 'count(*) AS nb' , " idPar= $idRef AND actif=1 " , false );
$nbPar = $ret3 [ 0 ][ 'nb' ];
if ( $nbAct == 0 && $nbPar == 0 ) {
echo " $i / $nb : $idRef , $siren ( $RS ) - $nbAct fois actionnaire et $nbPar fois participation " . EOL ;
$iDb -> delete ( 'liensRef' , " id= $idRef " , false );
//die();
}
2012-10-16 07:44:31 +00:00
}
}
2013-06-19 08:24:49 +00:00
die ();
2012-10-16 07:44:31 +00:00
}
2013-06-19 08:24:49 +00:00
if ( $doAssocGer ) {
echo date ( 'Y/m/d - H:i:s' ) . " - Recherche des associ<63> s g<> rants au RNCS... " . EOL ;
$ret = $iDb -> select ( 'rncs_dirigeants' ,
' id , siren , adr_dep , typeDir , raisonSociale , dirSiren , dirRS , civilite , nom , prenom , naissance_nom , naissance_date , naissance_lieu ,
nat , adresse , fonction_code , fonction_lib , actif , dateFin , flux , dateInsert , dateUpdate ' ,
" fonction_code=0209 AND flux>='2013-01-01' AND (typeDir='PP' OR (typeDir='PM' AND dirSiren>1000)) GROUP BY siren ASC, actif DESC " , false , MYSQL_ASSOC );
$nb = count ( $ret );
echo date ( 'Y/m/d - H:i:s' ) . " - D<> but du traitement des $nb associ<63> s g<> rants... " . EOL ;
foreach ( $ret as $i => $lien ) {
// Participation
$sirenPar = $lien [ 'siren' ];
$rsPar = $lien [ 'raisonSociale' ];
$typeDir = $lien [ 'typeDir' ];
// echo "$i/$nb : $siren = ".$lien['nb']." doublons...";
$ret2 = $iDb -> select ( 'liensRef' , 'id, siren, actif, RS, cj, capital, dateCapital' ,
" siren= $sirenPar " , false , MYSQL_ASSOC );
$idRef =@ $ret2 [ 0 ][ 'id' ];
$lien2 =@ $ret2 [ 0 ];
if ( !@ $iInsee -> valideSiren ( $sirenPar )) {
echo " $i / $nb : $siren , $rs ( $typeDir ) - Siren invalide !!! " . EOL ;;
die ();
continue ;
} else
$sirenParV = 1 ;
2012-10-16 07:44:31 +00:00
2013-06-19 08:24:49 +00:00
if ( $idRef > 0 ) {
$tabAct = $iDb -> select ( 'liensRef' , 'id, siren, actif, RS, cj, capital, dateCapital' ,
" id=(SELECT idPar FROM liens2 WHERE idAct= $idRef AND actif=1) " , false , MYSQL_ASSOC );
$nbAct = count ( $tabAct );
$tabPar = $iDb -> select ( 'liensRef' , 'id, siren, actif, RS, cj, capital, dateCapital' ,
" id=(SELECT idAct FROM liens2 WHERE idPar= $idRef AND actif=1) " , false , MYSQL_ASSOC );
$nbPar = count ( $tabPar );
if ( $nbAct > 0 || $nbPar > 0 ) {
echo " $i / $nb : $sirenParPar , $rsPar ( $typeDir ) - $nbAct fois actionnaire et $nbPar fois participation " . EOL ;
$tabId =@ $iInsee -> getIdentiteEntreprise ( $sirenPar , 0 , 0 , false , false );
print_r ( $lien2 );
//print_r($tabId);
print_r ( $tabAct );
print_r ( $tabPar );
print_r ( $lien );
die ();
} else
echo " $i / $nb : $sirenPar , $rsPar ( $typeDir ) - Ni actionnaire, Ni participation ! " . EOL ;
} else {
//echo "$i/$nb : $sirenPar, $rsPar ($typeDir) - ABSENTE de liensRef !".EOL;
//print_r($lien);
// Actionnaire
$sirenAct = $lien [ 'dirSiren' ];
$civ = $naf = '' ;
if ( $sirenAct > 1000 && @ $iInsee -> valideSiren ( $sirenAct )) {
$sirenActV = 1 ;
$tabId =@ $iInsee -> getIdentiteEntreprise ( $sirenAct , 0 , 0 , false , false );
$naf = $tabId [ 'NafEnt' ];
if ( $tabId [ 'FJ' ] < 2000 ) {
$ppPm = 'PP' ;
$tabInsertComp = array ( 'nom' => $tabId [ 'dir1Nom' ],
'prenom' => $tabId [ 'dir1Prenom' ],
'nom_usage' => $tabId [ 'dir1NomUsage' ]);
} else {
$ppPm = 'PM' ;
$tabInsertComp = array ( 'capital' => $tabId [ 'Capital' ],
'deviseCapital' => $tabId [ 'CapitalDev' ]);
if ( isset ( $tabId [ 'CapitalNbActions' ]) && $tabId [ 'CapitalNbActions' ]) $tabInsertComp [ 'nbActions' ] = $tabId [ 'CapitalNbActions' ];
}
if ( $tabId [ 'Civilite' ] == 1 ) $civ = 'M' ;
elseif ( $tabId [ 'Civilite' ] == 2 ) $civ = 'MME' ;
$nom = $tabId [ 'Nom' ];
$cj = $tabId [ 'FJ' ];
$actif = $tabId [ 'Actif' ];
$ville = $tabId [ 'Ville' ];
$pays = getCodePays3 ( $tabId [ 'PaysIso2' ]);
} else {
// id, siren, adr_dep, , raisonSociale, dirSiren, , , nom, prenom, naissance_nom, naissance_date, naissance_lieu
// nat, adresse, fonction_code, fonction_lib, actif, dateFin, flux, dateInsert, dateUpdate
$nom = trim ( $lien [ 'dirRS' ]);
$nomTemp = " $nom " ;
$ppPm = $lien [ 'typeDir' ];
$civ = $lien [ 'civilite' ];
$sirenAct = $sirenActV = 0 ;
$cj = 1900 ;
$tabInsertComp = array ();
$actif = 1 ;
$cp = $dep = $codPays3 = '' ;
if ( preg_match ( '/^(.*)\((.*)\)/U' , $lien [ 'naissance_lieu' ], $matches )) {
$lieuNaiss = trim ( $matches [ 1 ]);
$depPaysNaiss = trim ( $matches [ 2 ]);
if ( $depPaysNaiss > 1000 && $depPaysNaiss < 98000 ) {
$cp = $depPaysNaiss ;
if ( $cp < 97000 ) { $dep = substr ( '' . $cp , 0 , 2 ); $codPays3 = 'FRA' ; }
elseif ( $cp < 98000 ) $dep = substr ( '' . $cp , 0 , 3 );
} elseif ( $depPaysNaiss > 0 && $depPaysNaiss < 980 ) {
$dep = $depPaysNaiss ;
$codPays3 = 'FRA' ;
} else {
$codPays3 = getCodePays3fromLib ( preg_replace ( '/\((.*)\)/' , '' , $depPaysNaiss ));
if ( $codPays3 == '' ) {
$dep = getCodeDep ( $depPaysNaiss );
if ( $dep > 0 && $dep < 977 ) $codPays3 = 'FRA' ;
}
}
echo ( $lien [ 'naissance_lieu' ] . " : Ville = ' $lieuNaiss ' \t Dept=' $dep ' \t Pays=' $codPays3 ' " . EOL );
continue ;
}
else {
$lieuNaiss = trim ( $lien [ 'naissance_lieu' ] . EOL );
}
//$pays=$lien['Pays'];
//if ($pays=='') $pays='FRA';
$ville = '' ;
}
continue ;
if ( $civ == '' ) $civ = $lien [ 'civilite' ];
$tabInsertComp [ 'nom' ] = strtoupper ( $lien [ 'nom' ]);
$tabInsertComp [ 'prenom' ] = $lien [ 'prenom' ];
$tabInsertComp [ 'nom_usage' ] = strtoupper ( $lien [ 'naissance_nom' ]);
$tabInsertComp [ 'naissance_date' ] = $lien [ 'naissance_date' ];
$tabInsertComp [ 'naissance_lieu' ] = $lien [ 'naissance_lieu' ];
$tabInsertComp [ 'adresse_comp' ] = $lien [ 'adresse' ];
if ( $typeDir == 'PP' ) $rsAct = $civ . ' ' . strtoupper ( $lien [ 'nom' ]) . ' ' . $lien [ 'prenom' ];
//id`, `siren`, `sirenValide, source, actif, PpPm, RS, sigle
//naissance_dept_pays, nat`, `adresse_num`, `adresse_btq`, `adresse_codvoie`, `adresse_libvoie`, ``, `adresse_cp`, `adresse_ville`,
//`adresse_pays`, `tel`, `fax`, `web`, `email`, `dateSaisie`, `cj`, `ape`, `categorie`, `capital`, `deviseCapital`, `dateCapital`, `nbActions`,
//`dateNbActions`, `idLoc1Type`, `idLoc1Num`, `idLoc2Type`, `idLoc2Num`, `idLoc3Type`, `idLoc3Num`, `bilMillesime`, `bilDev`, `bilFL`, `bilHN`, `bilFPr`, `bilEE`, `grpTop`, `grpNom`, `dateInsert`, `idInsert`, `dateUpdate`, `idUpdate`, `dateSuppr`, `idSuppr
2012-10-16 07:44:31 +00:00
2013-06-19 08:24:49 +00:00
/* [ id ] => 14049526
[ siren ] => 324311463
[ adr_dep ] => 75
[ typeDir ] => PM
[ raisonSociale ] => ROTHSCHILD & COMPAGNIE GESTION
[ dirSiren ] => 000000000
[ dirRS ] => RCG GESTION
[] =>
[] =>
[] =>
[] =>
[ nat ] =>
[] =>
[ fonction_code ] => 020 9
[ fonction_lib ] => Associ<EFBFBD> - g<EFBFBD> rant
[ actif ] => 1
[ dateFin ] => 0000 - 00 - 00
[ flux ] => 2013 - 01 - 01
[ dateInsert ] => 2013 - 01 - 01 07 : 20 : 09
[ dateUpdate ] => 0000 - 00 - 00 00 : 00 : 00
*/
//if ($ppPm=='PP') print_r($tabId);
if ( $sirenAct < 1000 ) $sirenAct = 0 ;
$tabInsertRef2 = array ( 'siren' => $sirenAct ,
'sirenValide' => $sirenActV ,
'source' => $lien [ 'source' ],
'actif' => $actif ,
'PpPm' => $ppPm ,
'RS' => $rsAct ,
'cj' => $cj ,
'ape' => $naf ,
'categorie' => getCategorie ( $nom , $cj , $civ , $naf ),
'civilite' => $civ ,
'adresse_ville' => $ville ,
'adresse_pays' => $pays ,
'idLoc1Num' => $lien [ 'idNational' ],
'dateInsert' => $lien [ 'dateInsert' ],
'dateUpdate' => $lien [ 'dateUpdate' ]);
$tabInsertTmp = array_merge ( $tabInsertRef2 , $tabInsertComp );
print_r ( $tabInsertTmp );
die ();
$iDb -> insert ( 'liensRef' , $tabInsertTmp , false );
if ( $sirenAct * 1 > 1000 ) $where = " siren= $sirenAct " ;
else $where = " actif= $actif AND RS=' " . addslashes ( $nom ) . " ' AND civilite=' $civ ' AND
adresse_ville = '".addslashes($ville)."' AND adresse_pays = '$pays' AND cj = $cj AND ape = '$naf' " ; /* civilite, nom, prenom, naissance_nom, naissance_date, nat, adresse_ville*/
$ret2 = $iDb -> select ( 'liensRef' , 'id' , $where , false , MYSQL_ASSOC );
$idAct = $ret2 [ 0 ][ 'id' ];
if ( ! isset ( $ret2 [ 0 ][ 'id' ])) die ( $where );
$nomAct = $nom ;
//die("Ajout de l'actionaire n<> $idAct".EOL);
// Participation
/* [ id ] => 14049526
[ siren ] => 324311463
[ adr_dep ] => 75
[ typeDir ] => PM
[ raisonSociale ] => ROTHSCHILD & COMPAGNIE GESTION
[ dirSiren ] => 000000000
[ dirRS ] => RCG GESTION
[ civilite ] =>
[ nom ] =>
[ prenom ] =>
[ naissance_nom ] =>
[ naissance_date ] => 0000 - 00 - 00
[ naissance_lieu ] =>
[ nat ] =>
[ adresse ] =>
[ fonction_code ] => 020 9
[ fonction_lib ] => Associ<EFBFBD> - g<EFBFBD> rant
[ actif ] => 1
[ dateFin ] => 0000 - 00 - 00
[ flux ] => 2013 - 01 - 01
[ dateInsert ] => 2013 - 01 - 01 07 : 20 : 09
[ dateUpdate ] => 0000 - 00 - 00 00 : 00 : 00
*/
//$sirenPar=$lien['Siren1'];
//if (!@$iInsee->valideSiren($sirenPar)) continue;
//if (@trim($tabId['Nom'])=='') continue;
$civ = $naf = '' ;
if ( $sirenPar > 1000 && @ $iInsee -> valideSiren ( $sirenPar )) {
$sirenParV = 1 ;
$tabId =@ $iInsee -> getIdentiteEntreprise ( $sirenPar , 0 , 0 , false , false );
$naf = $tabId [ 'NafEnt' ];
if ( $tabId [ 'FJ' ] < 2000 ) {
$ppPm = 'PP' ;
$tabInsertComp = array ( 'nom' => $tabId [ 'dir1Nom' ],
'prenom' => $tabId [ 'dir1Prenom' ],
'nom_usage' => $tabId [ 'dir1NomUsage' ]);
} else {
$ppPm = 'PM' ;
$tabInsertComp = array ( 'capital' => $tabId [ 'Capital' ],
'deviseCapital' => $tabId [ 'CapitalDev' ]);
if ( isset ( $tabId [ 'CapitalNbActions' ]) && $tabId [ 'CapitalNbActions' ]) $tabInsertComp [ 'nbActions' ] = $tabId [ 'CapitalNbActions' ];
}
if ( $tabId [ 'Civilite' ] == 1 ) $civ = 'M' ;
elseif ( $tabId [ 'Civilite' ] == 2 ) $civ = 'MME' ;
$nom = $tabId [ 'Nom' ];
$cj = $tabId [ 'FJ' ];
$actif = $tabId [ 'Actif' ];
$ville = $tabId [ 'Ville' ];
} else {
$sirenPar = $sirenParV = 0 ;
$ppPm = 'P' . $lien [ 'PpPm' ];
$nom = trim ( $lien [ 'RaisonSociale' ]);
if ( $ppPm == 'PP' ) die ( " $sirenAct / $sirenPar : Attention, personne physique participation !!! " . EOL );
$cj = 0 ;
$tabInsertComp = array ();
$ville = '' ;
$actif = 1 ;
}
$pays = getCodePays3 ( $tabId [ 'PaysIso2' ]);
if ( $sirenPar < 1000 ) $sirenPar = 0 ;
$tabInsertRef1 = array ( 'siren' => $sirenPar ,
'sirenValide' => $sirenParV ,
'source' => $lien [ 'source' ],
'actif' => $actif ,
'PpPm' => $ppPm ,
'RS' => $nom ,
'cj' => $cj ,
'ape' => $naf ,
'categorie' => getCategorie ( $nom , $cj , $civ , $naf ),
'civilite' => $civ ,
'adresse_ville' => $ville ,
'adresse_pays' => $pays ,
'idLoc1Num' => '' ,
'dateInsert' => $lien [ 'dateInsert' ],
'dateUpdate' => $lien [ 'dateUpdate' ]);
$iDb -> insert ( 'liensRef' , array_merge ( $tabInsertRef1 , $tabInsertComp ), false );
if ( $sirenPar * 1 > 1000 ) $where = " siren= $sirenPar " ;
else $where = " actif= $actif AND RS=' " . addslashes ( $nom ) . " ' AND civilite=' $civ ' AND
adresse_ville = '".addslashes($ville)."' AND adresse_pays = '$pays' AND cj = $cj AND ape = '$naf' " ; /* civilite, nom, prenom, naissance_nom, naissance_date, nat, adresse_ville*/
$ret2 = $iDb -> select ( 'liensRef' , 'id' , $where , false , MYSQL_ASSOC );
$idPar = $ret2 [ 0 ][ 'id' ];
if ( ! isset ( $ret2 [ 0 ][ 'id' ])) die ( $where );
$nomPar = $nom ;
// Lien
$iDb -> insert ( 'liens2' , array ( 'idAct' => $idAct ,
'idPar' => $idPar ,
'actif' => $lien [ 'actif' ],
'source' => $lien [ 'source' ],
'PDetention' => $lien [ 'Pmin' ],
'MajMin' => $lien [ 'MajMin' ],
'dateEffetLien' => $lien [ 'dateLien' ],
'docRef' => '' ,
'dateDocRef' => '' ,
'dateInsert' => $lien [ 'dateInsert' ],
'dateUpdate' => $lien [ 'dateUpdate' ]), false );
echo " $i / $nb - $idAct , $sirenAct ( $nomAct ) d<> tient " . $lien [ 'Pmin' ] . " % de $idPar , $sirenPar ( $nomPar ) au " . $lien [ 'dateLien' ] . ' [id=' . $lien [ 'id' ] . ']' . EOL ;
//die();
2012-10-16 07:44:31 +00:00
}
}
2013-06-19 08:24:49 +00:00
die ();
2012-10-16 07:44:31 +00:00
}
2013-06-19 08:24:49 +00:00
if ( $doIdentite ) {
$iBodacc = new MBodacc ();
echo date ( 'Y/m/d - H:i:s' ) . " - Recherche des mise <20> jour Identitaires... " . EOL ;
if ( count ( $tabSiren ) > 0 ) {
$strSiren = ' AND siren IN(' ;
$strSiren .= implode ( ',' , $tabSiren );
$strSiren .= ') ' ;
} else $strSiren = " AND (RS='' OR (adresse_libvoie='' AND adresse_cp='')) " ;
$ret = $iDb -> select ( 'liensRef' ,
'id, actif, siren, PpPm, RS, sigle, civilite, nom, prenom, nom_usage, naissance_date, naissance_lieu, adresse_num, adresse_btq, adresse_codvoie, adresse_libvoie, adresse_comp, adresse_cp, adresse_ville, adresse_pays, tel, fax, web, email, cj, ape, categorie, capital, deviseCapital' ,
// id, actif, siren, PpPm, RS, civilite, nom, prenom, adresse_num, adresse_btq, adresse_codvoie, adresse_libvoie, adresse_comp, adresse_cp, adresse_ville, adresse_pays, tel, fax, web, email, dateSaisie, cj, ape, categorie, capital, deviseCapital, dateCapital, nbActions, dateNbActions, bilMillesime, bilDev, bilFL, bilHN, bilFPr, bilEE, dateInsert, idInsert, dateUpdate, idUpdate',
" siren>1000 $strSiren /*AND PpPm='PM' /*LIMIT 0,200000*/ ORDER BY dateInsert DESC, dateUpdate DESC " , false , MYSQL_ASSOC ); //OR idLoc1Num LIKE 'FR%'
// "siren>0 AND sirenValide=1 AND idSuppr=0 AND adresse_libvoie='' AND PpPm='PM' /*LIMIT 0,200000*/ ORDER BY id DESC", false, MYSQL_ASSOC);//OR idLoc1Num LIKE 'FR%'
// "siren>0 AND sirenValide=1 AND idSuppr=0 AND siren>303459218 AND PpPm='PP' LIMIT 0,200000", false, MYSQL_ASSOC);//OR idLoc1Num LIKE 'FR%'
2012-10-16 07:44:31 +00:00
2013-06-19 08:24:49 +00:00
$nb = count ( $ret );
/*
echo " SELECT id, actif, siren, PpPm, RS, sigle, civilite, nom, prenom, nom_usage, naissance_date, naissance_lieu, adresse_num, adresse_btq, adresse_codvoie, adresse_libvoie, adresse_comp, adresse_cp, adresse_ville, adresse_pays, tel, fax, web, email, cj, ape, categorie, capital, deviseCapital
FROM liensRef
WHERE siren > 1000 $strSiren AND sirenValide = 1 ORDER BY siren ASC " .EOL;
*/
echo date ( 'Y/m/d - H:i:s' ) . " - D<> but de la mise <20> jour des $nb zones... " . EOL ;
foreach ( $ret as $i => $lien ) {
$id = $lien [ 'id' ];
$siren = $lien [ 'siren' ];
$rs = $lien [ 'RS' ];
if ( !@ $iInsee -> valideSiren ( $siren )) {
$iDb -> update ( 'liensRef' , array ( 'sirenValide' => 0 ), " id= $id " , false );
if ( $modeDebug ) echo " $i / $nb : $siren siren invalide pour $rs (id= $id ) " . EOL ;
continue ;
}
// Fiche LienRef invalide !!!
/* if ( $rs == '' ) {
if ( $modeDebug ) echo " $i / $nb : $siren - Pas de Raison Sociale pour l'id $id " . EOL ;
continue ;
} */
$tabId =@ $iInsee -> getIdentiteEntreprise ( $siren , 0 , 0 , false , false );
if ( $tabId [ 'Nom' ] == '' ) {
if ( $modeDebug ) echo " $i / $nb : $siren - Fiche d'identit<69> inexistante pour l'id $id " . EOL ;
continue ; // Le siren est valide mais n'existe pas !
}
//print_r($tabId);die();
$naf = $tabId [ 'NafEnt' ];
$sigle = $tabId [ 'Sigle' ];
$civ = $rs = $nom = $prenom = $nomUsage = $lieuNaiss = '' ;
$dateNaiss = '0000-00-00' ;
if ( $tabId [ 'FJ' ] < 2000 ) {
$ppPm = 'PP' ;
if ( $tabId [ 'Civilite' ] == 1 ) $civ = 'M' ;
elseif ( $tabId [ 'Civilite' ] == 2 ) $civ = 'MME' ;
$nom = trim ( $tabId [ 'dir1Nom' ]);
$prenom = trim ( $tabId [ 'dir1Prenom' ]);
$nomUsage = trim ( $tabId [ 'dir1NomUsage' ]);
$dateNaiss = $tabId [ 'dir1DateNaiss' ];
$lieuNaiss = $tabId [ 'dir1LieuNaiss' ];
$rs = trim ( $civ . ' ' . strtoupper ( $nom ) . ' ' . ucwords ( strtolower ( $prenom )));
if ( strlen ( $rs ) < 4 ) $rs = $tabId [ 'Nom' ];
} else {
$ppPm = 'PM' ;
if ( isset ( $tabId [ 'nomLong' ]) && strlen ( $tabId [ 'nomLong' ]) > strlen ( $tabId [ 'Nom' ]))
$rs = $tabId [ 'nomLong' ];
else
$rs = $tabId [ 'Nom' ];
}
//echo "$id - $siren : NOM='$rs'".EOL;
//if ($tabId['FJ']==5499) die(print_r($tabId,1));
$cj = $tabId [ 'FJ' ];
$actif = $tabId [ 'Actif' ];
if ( $actif == 0 && @ $tabId [ 'EntActiveRCS' ] == 1 ) $actif = 1 ;
$tabUpdate = array ( 'id' => $id ,
'siren' => $siren ,
'actif' => $actif ,
'PpPm' => $ppPm ,
'RS' => $rs ,
'sigle' => $sigle ,
'civilite' => $civ ,
'nom' => $nom ,
'prenom' => $prenom ,
'nom_usage' => $nomUsage ,
'naissance_date' => $dateNaiss ,
'naissance_lieu' => $lieuNaiss ,
'adresse_num' => $tabId [ 'AdresseNum' ],
'adresse_btq' => $tabId [ 'AdresseBtq' ],
'adresse_codvoie' => $tabId [ 'AdresseVoie' ],
'adresse_libvoie' => $tabId [ 'AdresseRue' ],
'adresse_comp' => $tabId [ 'Adresse2' ],
'adresse_cp' => $tabId [ 'CP' ],
'adresse_ville' => $tabId [ 'Ville' ],
'adresse_pays' => getCodePays3 ( $tabId [ 'PaysIso2' ]),
'tel' => $tabId [ 'Tel' ],
'fax' => $tabId [ 'Fax' ],
'web' => $tabId [ 'Web' ],
'email' => $tabId [ 'Mail' ],
'cj' => $tabId [ 'FJ' ],
'ape' => $tabId [ 'NafEnt' ],
'categorie' => getCategorie ( $rs , $cj , $civ , $naf ),
'capital' => $tabId [ 'Capital' ] * 1 ,
'deviseCapital' => $tabId [ 'CapitalDev' ],
/* 'dateCapital' => $tabId [ 'Mail' ],
'nbActions' => $tabId [ 'Mail' ],
'dateNbActions' => $tabId [ 'Mail' ], */
);
//$iDb->update('liensRef', $tabUpdate, "id=$id", false);
$tabUpdateDiff = array_diff_assoc ( $tabUpdate , $lien );
/* echo " $i / $nb : $siren - Table liensRef : " . EOL ;
print_r ( $lien );
//echo "$i/$nb : $siren - Fiche d'identit<69> :".EOL;
//print_r($tabId);
echo " $i / $nb : $siren - MISE A JOUR : " . EOL ;
print_r ( $tabUpdateDiff );
*/
//die();
if ( count ( $tabUpdateDiff ) > 0 ) {
if ( isset ( $tabUpdateDiff [ 'capital' ]) && round ( $tabUpdate [ 'capital' ]) == $lien [ 'capital' ] && count ( $tabUpdateDiff ) == 1 ) {
echo " $i / $nb : $siren - Pas de mise <20> jour car capitaux identiques : " . $lien [ 'capital' ] . EOL ;
continue ;
}
$iDb -> update ( 'liensRef' , $tabUpdateDiff , " id= $id " , false );
echo mysql_error () . EOL ;
//print_r($lien);
/* echo round ( $tabUpdate [ 'capital' ]) . EOL ;
echo @ $tabUpdateDiff [ 'capital' ] . EOL ;
*/
if ( isset ( $tabUpdateDiff [ 'capital' ])) echo " $i / $nb : $siren - Changement de capital de ' " . $lien [ 'capital' ] . ' ' . $lien [ 'deviseCapital' ] . " ' a ' " . $tabUpdate [ 'capital' ] . ' ' . $tabUpdate [ 'deviseCapital' ] . " ' " . EOL ;
if ( isset ( $tabUpdateDiff [ 'actif' ])) echo " $i / $nb : $siren - Changement de statut de ' " . $lien [ 'actif' ] . " ' a ' " . $tabUpdate [ 'actif' ] . " ' " . EOL ;
if ( isset ( $tabUpdateDiff [ 'RS' ])) echo " $i / $nb : $siren - Changement de NOM de ' " . $lien [ 'RS' ] . " ' a ' " . $tabUpdate [ 'RS' ] . " ' " . EOL ;
//if (isset($tabUpdateDiff['adresse_cp']))echo "$i/$nb : $siren - Changement de CP de '".$lien['adresse_cp']."' a '".$tabUpdate['adresse_cp']."'".EOL;
if ( isset ( $tabUpdateDiff [ 'cj' ])) echo " $i / $nb : $siren - Changement de FJur de ' " . $lien [ 'cj' ] . " ' a ' " . $tabUpdate [ 'cj' ] . " ' " . EOL ;
if ( isset ( $tabUpdateDiff [ 'ape' ])) echo " $i / $nb : $siren - Changement d'activit<69> de ' " . $lien [ 'ape' ] . " ' a ' " . $tabUpdate [ 'ape' ] . " ' " . EOL ;
} elseif ( $modeDebug )
echo " $i / $nb : $siren - Pas de mise <20> jour " . EOL ;
// die("$id\t$siren".EOL);
2012-10-16 07:44:31 +00:00
2013-06-19 08:24:49 +00:00
/*
'sirenValide' => $sirenParV ,
'source' => $lien [ 'source' ],
'actif' => $actif ,
'PpPm' => $ppPm ,
'RS' => $nom ,
'cj' => $cj ,
'ape' => $naf ,
'categorie'
'civilite' => $civ ,
'adresse_ville' => $ville ,
'adresse_pays' => $pays ,
'idLoc1Num' => '' ,
'dateInsert' => $lien [ 'dateInsert' ],
'dateUpdate' => $lien [ 'dateUpdate' ]);
$iDb -> insert ( 'liensRef' , array_merge ( $tabInsertRef1 , $tabInsertComp ), false );
2012-10-16 07:44:31 +00:00
2013-06-19 08:24:49 +00:00
2012-10-16 07:44:31 +00:00
2013-06-19 08:24:49 +00:00
[ dateSaisie ] => 0000 - 00 - 00 00 : 00 : 00
[ cj ] => 5710
[ ape ] => 4669 B
[ categorie ] => NA
[ capital ] => 64086
[ deviseCapital ] => EUR
[ dateCapital ] =>
[ nbActions ] => 0
[ dateNbActions ] =>
[ bilMillesime ] =>
[ bilDev ] =>
[ bilFL ] =>
[ bilHN ] =>
[ bilFPr ] =>
[ bilEE ] =>
[ dateInsert ] => 0000 - 00 - 00 00 : 00 : 00
[ idInsert ] =>
[ dateUpdate ] => 2010 - 01 - 15 00 : 20 : 30
[ idUpdate ] => 0
)
$civ = $lien [ 'civilite' ];
2012-10-16 07:44:31 +00:00
2013-06-19 08:24:49 +00:00
echo " $i / $nb - $id , $rs : $civ $nom [ $civ2 ] $prenom " . EOL ;
/* $tabUpdate = array ( 'nom' => $nom ,
'prenom' => $prenom ,
'civilite' => $civ2 );
$iDb -> update ( 'liensRef' , $tabUpdate , " id= $id " , false );
if ( mysql_errno ()) echo mysql_error () . EOL ; */
//print_r($lien);
/* die (); /*
$naf = $tabId [ 'NafEnt' ];
if ( $tabId [ 'FJ' ] < 2000 ) {
$ppPm = 'PP' ;
$tabInsertComp = array ( 'nom' => $tabId [ 'dir1Nom' ],
'prenom' => $tabId [ 'dir1Prenom' ],
'nom_usage' => $tabId [ 'dir1NomUsage' ]);
} else {
$ppPm = 'PM' ;
$tabInsertComp = array ( 'capital' => $tabId [ 'Capital' ],
'deviseCapital' => $tabId [ 'CapitalDev' ]);
if ( isset ( $tabId [ 'CapitalNbActions' ]) && $tabId [ 'CapitalNbActions' ]) $tabInsertComp [ 'nbActions' ] = $tabId [ 'CapitalNbActions' ];
2012-10-16 07:44:31 +00:00
}
2013-06-19 08:24:49 +00:00
if ( $tabId [ 'Civilite' ] == 1 ) $civ = 'M' ;
elseif ( $tabId [ 'Civilite' ] == 2 ) $civ = 'MME' ;
$nom = $tabId [ 'Nom' ];
$cj = $tabId [ 'FJ' ];
$actif = $tabId [ 'Actif' ];
$ville = $tabId [ 'Ville' ];
/* [ Adresse ] => 0016 RUE DU DOCTEUR MESLIER
[ Adresse2 ] =>
[ AdresseNum ] => 0016
[ AdresseBtq ] =>
[ AdresseVoie ] => RUE
[ AdresseRue ] => DU DOCTEUR MESLIER
[ Tel ] => 06.75 . 22.60 . 55
[ Fax ] => 01 40 21 80 82
[ Web ] =>
[ Mail ] =>
$pays = getCodePays3 ( $tabId [ 'PaysIso2' ]);
2012-10-16 07:44:31 +00:00
2013-06-19 08:24:49 +00:00
*/
//die();
}
die ();
}
if ( $doMajTVA ) {
$tabZones = array ( 'tvaValide' => '<b><span class="validStyle">(.*)</span></b>' ,
'tvaInvalide' => '<b><span class="invalidStyle">(.*)</span></b>' ,
'tvaNumero' => '<td class="labelStyle">Num(?:.*)ro de TVA</td>(?:.*)<td>(.*)</td>' ,
'etat' => '<td class="labelStyle">(?:.*)tat Membre</td>(?:.*)<td>(.*)</td>' ,
'raisonSociale' => '<td class="labelStyle">Nom</td>(?:.*)<td>(.*)</td>' ,
'adresse' => '<td class="labelStyle">Adresse</td>(?:.*)<td>(.*)</td>' ,
);
echo date ( 'Y/m/d - H:i:s' ) . " - Recherche des mise <20> jour d'infos TVA... " . EOL ;
$ret = $iDb -> select ( 'liensRef' ,
/* BE
CZ
DK
FI */
'id, PpPm, RS, adresse_num, adresse_btq, adresse_codvoie, adresse_libvoie, adresse_comp, adresse_cp, adresse_ville, adresse_pays, tel, fax, web, email, idLoc1Type, idLoc1Num' ,
" idLoc1Num NOT LIKE '%*%' AND ( idLoc1Num LIKE 'AT%'
OR idLoc1Num LIKE 'SK%'
OR idLoc1Num LIKE 'BE%'
OR idLoc1Num LIKE 'BG%'
OR idLoc1Num LIKE 'CY%'
OR idLoc1Num LIKE 'CZ%'
OR idLoc1Num LIKE 'DE%'
OR idLoc1Num LIKE 'DK%'
OR idLoc1Num LIKE 'EE%'
OR idLoc1Num LIKE 'EL%'
OR idLoc1Num LIKE 'ES%'
OR idLoc1Num LIKE 'FI%'
OR idLoc1Num LIKE 'GB%'
OR idLoc1Num LIKE 'HU%'
OR idLoc1Num LIKE 'IE%'
OR idLoc1Num LIKE 'IT%'
OR idLoc1Num LIKE 'LT%'
OR idLoc1Num LIKE 'LU%'
OR idLoc1Num LIKE 'LV%'
OR idLoc1Num LIKE 'MT%'
OR idLoc1Num LIKE 'NL%'
OR idLoc1Num LIKE 'PL%'
OR idLoc1Num LIKE 'PT%'
OR idLoc1Num LIKE 'RO%'
OR idLoc1Num LIKE 'SE%'
OR idLoc1Num LIKE 'SI%' ) ORDER BY idLoc1Num ASC " , false, MYSQL_ASSOC);//OR idLoc1Num LIKE 'FR%'
$nb = count ( $ret );
echo date ( 'Y/m/d - H:i:s' ) . " - D<> but de la mise <20> jour des $nb identifiants TVA... " . EOL ;
foreach ( $ret as $i => $lien ) {
$id = $lien [ 'id' ];
$pays = substr ( $lien [ 'idLoc1Num' ], 0 , 2 );
$vat = substr ( $lien [ 'idLoc1Num' ], 2 );
$url = " http://ec.europa.eu/taxation_customs/vies/viesquer.do?locale=fr&memberStateCode= $pays &number= $vat &action=check " ;
$page = getUrl ( $url , '' , '' , '' , false );
$referer = $url ;
$body = $page [ 'body' ];
$tabHtml = html2array ( $body , $tabZones );
echo $lien [ 'RS' ] . ' (' . $lien [ 'adresse_pays' ] . " ) : TVA = $pays $vat " ;
if ( @ substr ( $tabHtml [ 'tvaValide' ], 0 , 3 ) == 'Oui' ) {
$valide = 1 ;
echo '(valide)' ;
switch ( $lien [ 'adresse_pays' ]) {
case 'FRA' : $type = 2 ; break ;
case 'DEU' : $type = 5 ; break ;
case 'AUT' : $type = 9 ; break ;
case 'BEL' : $type = 10 ; break ;
case 'ESP' : $type = 13 ; break ;
case 'FIN' : $type = 14 ; break ;
case 'GRC' : $type = 16 ; break ;
case 'IRL' : $type = 17 ; break ;
case 'ITA' : $type = 19 ; break ;
case 'LUX' : $type = 22 ; break ;
case 'NLD' : $type = 24 ; break ;
case 'PRT' : $type = 26 ; break ;
case 'GBR' : $type = 27 ; break ;
case 'SWE' : $type = 29 ; break ;
case 'POL' : $type = 31 ; break ;
case 'DNK' : $type = 32 ; break ;
case 'BGR' : $type = 49 ; break ;
case 'EST' : $type = 50 ; break ;
case 'HUN' : $type = 51 ; break ;
case 'LVA' : $type = 52 ; break ;
case 'LTU' : $type = 53 ; break ;
case 'CZE' : $type = 54 ; break ;
case 'SVK' : $type = 55 ; break ;
case 'SVN' : $type = 56 ; break ;
default : $type = 'NULL' ; break ;
2012-10-16 07:44:31 +00:00
}
2013-06-19 08:24:49 +00:00
$rsVies = strtoupper ( $tabHtml [ 'raisonSociale' ]);
$adrVies = $tabHtml [ 'adresse' ];
$tabUpdate = array ( 'RS' => $rsVies ,
'adresse_comp' => $adrVies ,
'idLoc1Type' => $type ,
);
//, adresse_num, adresse_btq, adresse_codvoie, adresse_libvoie, adresse_comp, adresse_cp, adresse_ville
echo " - $rsVies [ $adrVies ] " ;
//die();
$iDb -> update ( 'liensRef' , $tabUpdate , " id= $id " , false );
2012-10-16 07:44:31 +00:00
} else {
2013-06-19 08:24:49 +00:00
$valide = 0 ;
echo '(INVALIDE)' ;
2012-10-16 07:44:31 +00:00
}
2013-06-19 08:24:49 +00:00
echo EOL ;
randsleep ( 3 , 7 ); //,21);
}
die ();
}
2012-10-16 07:44:31 +00:00
2013-06-19 08:24:49 +00:00
if ( $doPurge ) {
die ();
while ( 1 ) {
echo date ( 'Y/m/d - H:i:s' ) . " - Confirmez la demande de purge des nouvelles tables LIENS ? (O/N) ... " ;
$saisie = trim ( strtoupper ( fgets ( STDIN )));
if ( $saisie == 'O' || $saisie == 'o' ) break ;
}
$iDb -> query ( 'TRUNCATE TABLE liens2;' );
$iDb -> query ( 'TRUNCATE TABLE liensRef;' );
$tabInsert = array (
array ( 'id' => 1 , 'siren' => 0 , 'source' => 9999 , 'actif' => 1 , 'PpPm' => 'PM' , 'RS' => 'ETAT FRANCAIS' , 'categorie' => 'Etat/Autorit<69> publique' , 'dateInsert' => '20070401120000' ),
array ( 'id' => 2 , 'siren' => 0 , 'source' => 9999 , 'actif' => 1 , 'PpPm' => 'PP' , 'RS' => 'FAMILLE' , 'categorie' => 'Personne(s) ou famille(s)' , 'dateInsert' => '20070401120000' ),
array ( 'id' => 3 , 'siren' => 0 , 'source' => 9999 , 'actif' => 1 , 'PpPm' => 'PP' , 'RS' => 'PERSONNES PHYSIQUES' , 'categorie' => 'Personne(s) ou famille(s)' , 'dateInsert' => '20070401120000' ),
array ( 'id' => 4 , 'siren' => 0 , 'source' => 9999 , 'actif' => 1 , 'PpPm' => 'PP' , 'RS' => 'CADRES DU GROUPE' , 'categorie' => 'Employ<6F> s/Directeurs' , 'dateInsert' => '20070401120000' ),
array ( 'id' => 5 , 'siren' => 0 , 'source' => 9999 , 'actif' => 1 , 'PpPm' => 'PP' , 'RS' => 'PUBLIC' , 'categorie' => 'Public' , 'dateInsert' => '20070401120000' ),
array ( 'id' => 6 , 'siren' => 0 , 'source' => 9999 , 'actif' => 1 , 'PpPm' => 'PP' , 'RS' => 'ADHERENTS' , 'categorie' => 'NA' , 'dateInsert' => '20070401120000' ),
array ( 'id' => 7 , 'siren' => 0 , 'source' => 9999 , 'actif' => 1 , 'PpPm' => 'PP' , 'RS' => 'MANAGEMENT' , 'categorie' => 'Employ<6F> s/Directeurs' , 'dateInsert' => '20070401120000' ),
array ( 'id' => 8 , 'siren' => 0 , 'source' => 9999 , 'actif' => 1 , 'PpPm' => 'PP' , 'RS' => 'SALARIES' , 'categorie' => 'Employ<6F> s/Directeurs' , 'dateInsert' => '20070401120000' ),
);
foreach ( $tabInsert as $tabInsertRef )
$iDb -> insert ( 'liensRef' , $tabInsertRef , false );
$iDb -> query ( 'ALTER TABLE liensRef AUTO_INCREMENT=1000;' );
}
if ( $doAct ) {
$limNb = 100000 ;
for ( $limI = 0 ; $limI < 700000 ; $limI += $limNb ) {
echo date ( 'Y/m/d - H:i:s' ) . " - Recherche des liens actionnaires [limite= $limI ]... " . EOL ;
$ret = $iDb -> select ( 'liens' , 'id, Siren1, actif, source, ActionPart, Pmin, MajMin, PpPm, idNational, Siren2, RaisonSociale, Pays, dateLien, dateInsert, dateUpdate' , " ActionPart=1 /*AND Siren2=552100554 /*AND idNational<>''*/ AND id>=1206687 ORDER BY id ASC LIMIT $limI , $limNb " , false , MYSQL_ASSOC );
$nb = count ( $ret );
echo date ( 'Y/m/d - H:i:s' ) . " - D<> but de la mise <20> jour des $nb liens actionnaires... " . EOL ;
foreach ( $ret as $i => $lien ) {
//print_r($lien);
// Participation
$sirenPar = $lien [ 'Siren1' ];
if ( !@ $iInsee -> valideSiren ( $sirenPar )) continue ;
else $sirenParV = 1 ;
// Actionnaire
$sirenAct = $lien [ 'Siren2' ];
$civ = $naf = '' ;
if ( $sirenAct > 1000 && @ $iInsee -> valideSiren ( $sirenAct )) {
$sirenActV = 1 ;
$tabId =@ $iInsee -> getIdentiteEntreprise ( $sirenAct , 0 , 0 , false , false );
$naf = $tabId [ 'NafEnt' ];
if ( $tabId [ 'FJ' ] < 2000 ) {
$ppPm = 'PP' ;
$tabInsertComp = array ( 'nom' => $tabId [ 'dir1Nom' ],
'prenom' => $tabId [ 'dir1Prenom' ],
'nom_usage' => $tabId [ 'dir1NomUsage' ]);
2012-10-16 07:44:31 +00:00
} else {
2013-06-19 08:24:49 +00:00
$ppPm = 'PM' ;
$tabInsertComp = array ( 'capital' => $tabId [ 'Capital' ],
'deviseCapital' => $tabId [ 'CapitalDev' ]);
if ( isset ( $tabId [ 'CapitalNbActions' ]) && $tabId [ 'CapitalNbActions' ]) $tabInsertComp [ 'nbActions' ] = $tabId [ 'CapitalNbActions' ];
}
if ( $tabId [ 'Civilite' ] == 1 ) $civ = 'M' ;
elseif ( $tabId [ 'Civilite' ] == 2 ) $civ = 'MME' ;
$nom = $tabId [ 'Nom' ];
$cj = $tabId [ 'FJ' ];
$actif = $tabId [ 'Actif' ];
$ville = $tabId [ 'Ville' ];
$pays = getCodePays3 ( $tabId [ 'PaysIso2' ]);
} else {
$nom = trim ( $lien [ 'RaisonSociale' ]);
$nomTemp = " $nom " ;
$ppPm = 'P' . $lien [ 'PpPm' ];
if ( preg_match ( '/^( MONSIEUR | MADAME | MADEMOISELLE | M | M\. | MME | MLLE | MLE )/i' , $nomTemp , $matches ) && strlen ( $nom ) > 11 && count ( explode ( ' ' , $nom )) > 2 ) {
if ( $ppPm <> 'PP' && $ppPm <> 'PM' ) $ppPm = 'PP' ;
switch ( trim ( $matches [ 1 ])) {
case 'MONSIEUR' :
case 'M' :
case 'M.' : $civ = 'M' ; break ;
case 'MADAME' :
case 'MME' : $civ = 'MME' ; break ;
case 'MADEMOISELLE' :
case 'MLLE' :
case 'MLE' : $civ = 'MLE' ; break ;
default : $civ = '' ; break ;
2012-10-16 07:44:31 +00:00
}
2013-06-19 08:24:49 +00:00
$nom = trim ( preg_replace ( '/^( MONSIEUR | MADAME | MADEMOISELLE | M | M\. | MME | MLLE | MLE )/i' , '' , $nomTemp ));
2012-10-16 07:44:31 +00:00
}
2013-06-19 08:24:49 +00:00
$sirenAct = $sirenActV = 0 ;
$cj = 0 ;
$tabInsertComp = array ();
$actif = 1 ;
$pays = $lien [ 'Pays' ];
if ( $pays == '' ) $pays = 'FRA' ;
$ville = '' ;
}
//if ($ppPm=='PP') print_r($tabId);
if ( $sirenAct < 1000 ) $sirenAct = 0 ;
$tabInsertRef2 = array ( 'siren' => $sirenAct ,
'sirenValide' => $sirenActV ,
'source' => $lien [ 'source' ],
'actif' => $actif ,
'PpPm' => $ppPm ,
'RS' => $nom ,
'cj' => $cj ,
'ape' => $naf ,
'categorie' => getCategorie ( $nom , $cj , $civ , $naf ),
'civilite' => $civ ,
'adresse_ville' => $ville ,
'adresse_pays' => $pays ,
'idLoc1Num' => $lien [ 'idNational' ],
'dateInsert' => $lien [ 'dateInsert' ],
'dateUpdate' => $lien [ 'dateUpdate' ]);
$iDb -> insert ( 'liensRef' , array_merge ( $tabInsertRef2 , $tabInsertComp ), false );
if ( $sirenAct * 1 > 1000 ) $where = " siren= $sirenAct " ;
else $where = " actif= $actif AND RS=' " . addslashes ( $nom ) . " ' AND civilite=' $civ ' AND
adresse_ville = '".addslashes($ville)."' AND adresse_pays = '$pays' AND cj = $cj AND ape = '$naf' " ; /* civilite, nom, prenom, naissance_nom, naissance_date, nat, adresse_ville*/
$ret2 = $iDb -> select ( 'liensRef' , 'id' , $where , false , MYSQL_ASSOC );
$idAct = $ret2 [ 0 ][ 'id' ];
if ( ! isset ( $ret2 [ 0 ][ 'id' ])) die ( $where );
$nomAct = $nom ;
// Participation
//$sirenPar=$lien['Siren1'];
//if (!@$iInsee->valideSiren($sirenPar)) continue;
//if (@trim($tabId['Nom'])=='') continue;
$civ = $naf = '' ;
if ( $sirenPar > 1000 && @ $iInsee -> valideSiren ( $sirenPar )) {
$sirenParV = 1 ;
$tabId =@ $iInsee -> getIdentiteEntreprise ( $sirenPar , 0 , 0 , false , false );
$naf = $tabId [ 'NafEnt' ];
if ( $tabId [ 'FJ' ] < 2000 ) {
$ppPm = 'PP' ;
$tabInsertComp = array ( 'nom' => $tabId [ 'dir1Nom' ],
'prenom' => $tabId [ 'dir1Prenom' ],
'nom_usage' => $tabId [ 'dir1NomUsage' ]);
} else {
$ppPm = 'PM' ;
$tabInsertComp = array ( 'capital' => $tabId [ 'Capital' ],
'deviseCapital' => $tabId [ 'CapitalDev' ]);
if ( isset ( $tabId [ 'CapitalNbActions' ]) && $tabId [ 'CapitalNbActions' ]) $tabInsertComp [ 'nbActions' ] = $tabId [ 'CapitalNbActions' ];
2012-10-16 07:44:31 +00:00
}
2013-06-19 08:24:49 +00:00
if ( $tabId [ 'Civilite' ] == 1 ) $civ = 'M' ;
elseif ( $tabId [ 'Civilite' ] == 2 ) $civ = 'MME' ;
$nom = $tabId [ 'Nom' ];
$cj = $tabId [ 'FJ' ];
$actif = $tabId [ 'Actif' ];
$ville = $tabId [ 'Ville' ];
} else {
$sirenPar = $sirenParV = 0 ;
$ppPm = 'P' . $lien [ 'PpPm' ];
$nom = trim ( $lien [ 'RaisonSociale' ]);
if ( $ppPm == 'PP' ) die ( " $sirenAct / $sirenPar : Attention, personne physique participation !!! " . EOL );
$cj = 0 ;
$tabInsertComp = array ();
$ville = '' ;
$actif = 1 ;
2012-10-16 07:44:31 +00:00
}
2013-06-19 08:24:49 +00:00
$pays = getCodePays3 ( $tabId [ 'PaysIso2' ]);
if ( $sirenPar < 1000 ) $sirenPar = 0 ;
$tabInsertRef1 = array ( 'siren' => $sirenPar ,
'sirenValide' => $sirenParV ,
'source' => $lien [ 'source' ],
'actif' => $actif ,
'PpPm' => $ppPm ,
'RS' => $nom ,
'cj' => $cj ,
'ape' => $naf ,
'categorie' => getCategorie ( $nom , $cj , $civ , $naf ),
'civilite' => $civ ,
'adresse_ville' => $ville ,
'adresse_pays' => $pays ,
'idLoc1Num' => '' ,
'dateInsert' => $lien [ 'dateInsert' ],
'dateUpdate' => $lien [ 'dateUpdate' ]);
$iDb -> insert ( 'liensRef' , array_merge ( $tabInsertRef1 , $tabInsertComp ), false );
if ( $sirenPar * 1 > 1000 ) $where = " siren= $sirenPar " ;
else $where = " actif= $actif AND RS=' " . addslashes ( $nom ) . " ' AND civilite=' $civ ' AND
adresse_ville = '".addslashes($ville)."' AND adresse_pays = '$pays' AND cj = $cj AND ape = '$naf' " ; /* civilite, nom, prenom, naissance_nom, naissance_date, nat, adresse_ville*/
2012-10-16 07:44:31 +00:00
2013-06-19 08:24:49 +00:00
$ret2 = $iDb -> select ( 'liensRef' , 'id' , $where , false , MYSQL_ASSOC );
$idPar = $ret2 [ 0 ][ 'id' ];
if ( ! isset ( $ret2 [ 0 ][ 'id' ])) die ( $where );
$nomPar = $nom ;
2012-10-16 07:44:31 +00:00
2013-06-19 08:24:49 +00:00
// Lien
$iDb -> insert ( 'liens2' , array ( 'idAct' => $idAct ,
'idPar' => $idPar ,
'actif' => $lien [ 'actif' ],
'source' => $lien [ 'source' ],
'PDetention' => $lien [ 'Pmin' ],
'MajMin' => $lien [ 'MajMin' ],
'dateEffetLien' => $lien [ 'dateLien' ],
'docRef' => '' ,
'dateDocRef' => '' ,
'dateInsert' => $lien [ 'dateInsert' ],
'dateUpdate' => $lien [ 'dateUpdate' ]), false );
echo " $i / $nb - $idAct , $sirenAct ( $nomAct ) d<> tient " . $lien [ 'Pmin' ] . " % de $idPar , $sirenPar ( $nomPar ) au " . $lien [ 'dateLien' ] . ' [id=' . $lien [ 'id' ] . ']' . EOL ;
//die();
}
}
}
if ( $doPar ) {
echo date ( 'Y/m/d - H:i:s' ) . " - D<> but de la mise <20> jour des liens participations... " . EOL ;
2012-10-16 07:44:31 +00:00
2013-06-19 08:24:49 +00:00
$ret = $iDb -> select ( 'liens' , 'id, Siren1, actif, source, ActionPart, Pmin, MajMin, PpPm, idNational, Siren2, RaisonSociale, Pays, dateLien, dateInsert, dateUpdate' , " ActionPart=2 AND Siren1>=318610615 /*AND idNational<>''*/ ORDER BY Siren1 ASC " , false , MYSQL_ASSOC );
$nb = count ( $ret );
foreach ( $ret as $i => $lien ) {
//print_r($lien);
// Actionnaire
$sirenAct = $lien [ 'Siren1' ];
if ( !@ $iInsee -> valideSiren ( $sirenAct )) continue ;
else $sirenActV = 1 ;
$tabId =@ $iInsee -> getIdentiteEntreprise ( $sirenAct , 0 , 0 , false , false );
$naf = $tabId [ 'NafEnt' ];
if ( @ trim ( $tabId [ 'Nom' ]) == '' ) continue ;
//($siren, $nic=0, $id=0, $forceVerif=false, $accesDist=true) {
2012-10-16 07:44:31 +00:00
2013-06-19 08:24:49 +00:00
if ( $tabId [ 'Civilite' ] == 1 ) $civ = 'M' ;
elseif ( $tabId [ 'Civilite' ] == 2 ) $civ = 'MME' ;
else $civ = '' ;
if ( $tabId [ 'FJ' ] < 2000 ) {
$ppPm = 'PP' ;
$tabInsertComp = array ( 'nom' => $tabId [ 'dir1Nom' ],
'prenom' => $tabId [ 'dir1Prenom' ],
'nom_usage' => $tabId [ 'dir1NomUsage' ]);
} else {
$ppPm = 'PM' ;
$tabInsertComp = array ( 'capital' => $tabId [ 'Capital' ],
'deviseCapital' => $tabId [ 'CapitalDev' ]);
if ( isset ( $tabId [ 'CapitalNbActions' ]) && $tabId [ 'CapitalNbActions' ]) $tabInsertComp [ 'nbActions' ] = $tabId [ 'CapitalNbActions' ];
}
//if ($ppPm=='PP') print_r($tabId);
if ( $sirenAct < 1000 ) $sirenAct = 0 ;
$tabInsertRef1 = array ( 'siren' => $sirenAct ,
'sirenValide' => $sirenActV ,
'source' => $lien [ 'source' ],
'actif' => $tabId [ 'Actif' ],
'PpPm' => $ppPm ,
'RS' => $tabId [ 'Nom' ],
'cj' => $tabId [ 'FJ' ],
'ape' => $naf ,
'categorie' => getCategorie ( $tabId [ 'Nom' ], $tabId [ 'FJ' ], $civ , $naf ),
'civilite' => $civ ,
'adresse_ville' => $tabId [ 'Ville' ],
'adresse_pays' => getCodePays3 ( $tabId [ 'PaysIso2' ]),
'idLoc1Num' => '' ,
'dateInsert' => $lien [ 'dateInsert' ],
'dateUpdate' => $lien [ 'dateUpdate' ]);
$iDb -> insert ( 'liensRef' , array_merge ( $tabInsertRef1 , $tabInsertComp ), false );
$ret2 = $iDb -> select ( 'liensRef' , 'id' , " siren= $sirenAct " , false , MYSQL_ASSOC );
$idAct = $ret2 [ 0 ][ 'id' ];
$nomAct = $tabId [ 'Nom' ];
// Participation
$sirenPar = $lien [ 'Siren2' ];
$civ = $naf = '' ;
2012-10-16 07:44:31 +00:00
2013-06-19 08:24:49 +00:00
if ( $sirenPar > 1000 && @ $iInsee -> valideSiren ( $sirenPar )) {
$sirenParV = 1 ;
$tabId =@ $iInsee -> getIdentiteEntreprise ( $sirenPar , 0 , 0 , false , false );
$naf = $tabId [ 'NafEnt' ];
if ( $tabId [ 'FJ' ] < 2000 ) {
$ppPm = 'PP' ;
$tabInsertComp = array ( 'nom' => $tabId [ 'dir1Nom' ],
'prenom' => $tabId [ 'dir1Prenom' ],
'nom_usage' => $tabId [ 'dir1NomUsage' ]);
} else {
$ppPm = 'PM' ;
$tabInsertComp = array ( 'capital' => $tabId [ 'Capital' ],
'deviseCapital' => $tabId [ 'CapitalDev' ]);
if ( isset ( $tabId [ 'CapitalNbActions' ]) && $tabId [ 'CapitalNbActions' ]) $tabInsertComp [ 'nbActions' ] = $tabId [ 'CapitalNbActions' ];
2012-10-16 07:44:31 +00:00
}
2013-06-19 08:24:49 +00:00
if ( $tabId [ 'Civilite' ] == 1 ) $civ = 'M' ;
elseif ( $tabId [ 'Civilite' ] == 2 ) $civ = 'MME' ;
$nom = $tabId [ 'Nom' ];
$cj = $tabId [ 'FJ' ];
$actif = $tabId [ 'Actif' ];
$ville = $tabId [ 'Ville' ];
$pays = getCodePays3 ( $tabId [ 'PaysIso2' ]);
} else {
$sirenPar = $sirenParV = 0 ;
$ppPm = 'P' . $lien [ 'PpPm' ];
$nom = trim ( $lien [ 'RaisonSociale' ]);
if ( $ppPm == 'PP' ) {
echo " $sirenAct / $sirenPar : Attention, personne physique participation !!! " . EOL ;
continue ;
2012-10-16 07:44:31 +00:00
}
2013-06-19 08:24:49 +00:00
$cj = 0 ;
$tabInsertComp = array ();
$actif = 1 ;
$pays = $lien [ 'Pays' ];
if ( $pays == '' ) $pays = 'FRA' ;
$ville = '' ;
2012-10-16 07:44:31 +00:00
}
2013-06-19 08:24:49 +00:00
//if ($ppPm=='PP') print_r($tabId);
if ( $sirenPar < 1000 ) $sirenPar = '0' ;
$tabInsertRef2 = array ( 'siren' => $sirenPar ,
'sirenValide' => $sirenActV ,
'source' => $lien [ 'source' ],
'actif' => $actif ,
'PpPm' => $ppPm ,
'RS' => $nom ,
'cj' => $cj ,
'ape' => $naf ,
'categorie' => getCategorie ( $nom , $cj , $civ , $naf ),
'civilite' => $civ ,
'adresse_ville' => $ville ,
'adresse_pays' => $pays ,
'idLoc1Num' => $lien [ 'idNational' ],
'dateInsert' => $lien [ 'dateInsert' ],
'dateUpdate' => $lien [ 'dateUpdate' ]);
if ( ! $iDb -> insert ( 'liensRef' , array_merge ( $tabInsertRef2 , $tabInsertComp ), false )) {
if ( mysql_errno () <> 1062 ) die ( mysql_errno () . ': ' . mysql_error () . EOL . print_r ( array_merge ( $tabInsertRef2 , $tabInsertComp ), true ));
}
if ( $sirenPar * 1 > 1000 ) $where = " siren= $sirenPar " ;
//else $where="RS='".addslashes($nom)."' AND adresse_ville='".addslashes($ville)."' AND adresse_pays='$pays'"; /* civilite, nom, prenom, naissance_nom, naissance_date, nat, adresse_ville*/
else $where = " actif= $actif AND RS=' " . addslashes ( $nom ) . " ' AND civilite=' $civ ' AND
adresse_ville = '".addslashes($ville)."' AND adresse_pays = '$pays' AND cj = $cj AND ape = '$naf' " ; /* civilite, nom, prenom, naissance_nom, naissance_date, nat, adresse_ville*/
2012-10-16 07:44:31 +00:00
2013-06-19 08:24:49 +00:00
$ret2 = $iDb -> select ( 'liensRef' , 'id' , $where , false , MYSQL_ASSOC );
$idPar = $ret2 [ 0 ][ 'id' ];
if ( ! isset ( $ret2 [ 0 ][ 'id' ])) die ( $where );
$nomPar = $nom ;
// Lien
$iDb -> insert ( 'liens2' , array ( 'idAct' => $idAct ,
'idPar' => $idPar ,
'actif' => $lien [ 'actif' ],
'source' => $lien [ 'source' ],
'PDetention' => $lien [ 'Pmin' ],
'MajMin' => $lien [ 'MajMin' ],
'dateEffetLien' => $lien [ 'dateLien' ],
'docRef' => '' ,
'dateDocRef' => '' ,
'dateInsert' => $lien [ 'dateInsert' ],
'dateUpdate' => $lien [ 'dateUpdate' ]), false );
2012-10-16 07:44:31 +00:00
2013-06-19 08:24:49 +00:00
//echo "$i/$nb - $idAct ($sirenAct) d<> tient ".$lien['Pmin']." % de $idPar ($sirenPar) au ".$lien['dateLien'].EOL;
echo " $i / $nb - $idAct , $sirenAct ( $nomAct ) d<> tient " . $lien [ 'Pmin' ] . " % de $idPar , $sirenPar ( $nomPar ) au " . $lien [ 'dateLien' ] . EOL ;
2012-10-16 07:44:31 +00:00
}
2013-06-19 08:24:49 +00:00
}
function getCodePays3 ( $codePays2 ) {
global $iDb ;
$ret = $iDb -> select ( 'tabPays' , 'codPays3' , " codPays=' $codePays2 ' " , false , MYSQL_ASSOC );
return $ret [ 0 ][ 'codPays3' ];
}
function getCodePays3fromLib ( $libPays ) {
global $iDb ;
$ret = $iDb -> select ( 'tabPays' , 'codPays3' , " libPays LIKE '% $libPays %' OR libPaysEN LIKE '% $libPays %' " , false , MYSQL_ASSOC );
//print_r($ret);
if ( count ( $ret ) == 1 ) return $ret [ 0 ][ 'codPays3' ];
else return '' ;
}
function getCodeDep ( $libDep ) {
global $iDb ;
$ret = $iDb -> select ( 'insee.departements' , 'numdep, libdep' , " libdep LIKE '% $libDep %' " , false , MYSQL_ASSOC );
if ( count ( $ret ) == 1 ) return $ret [ 0 ][ 'numdep' ];
else return '' ;
}
function getCategorie ( $nom , $cj = 0 , $civ = '' , $naf = '' ) {
$naf2 = substr ( $naf , 0 , 2 ) * 1 ;
// 'Actionnaires priv<69> s', 'Actionnaires anonymes'
/*
'Private Equity' ,
'Fond de pension' ,
'Fondation/Institut de recherche' ,
/*
'ETAT FRANCAIS' , 'categorie' => '' , 'dateInsert' => '20070401120000' ),
'CADRES DU GROUPE' , 'categorie' => 'Employ<6F> s/Directeurs' , 'dateInsert' => '20070401120000' ),
'PUBLIC' , 'categorie' => 'Public' , 'dateInsert' => '20070401120000' ),
'ADHERENTS' , 'categorie' => 'NA' , 'dateInsert' => '20070401120000' ),
'MANAGEMENT' , 'categorie' => 'Employ<6F> s/Directeurs' , 'dateInsert' => '20070401120000' ),
'SALARIES' */
2012-10-16 07:44:31 +00:00
2013-06-19 08:24:49 +00:00
if ( $civ == 'M' || $civ == 'MME' || $civ == 'MLLE' ) return 'Personne(s) ou famille(s)' ;
elseif ( preg_match ( '/FAMILLE |MONSIEUR |MADAME |MADEMOISELLE|PERSONNES PHYSIQUES/i' , $nom )) return 'Personne(s) ou famille(s)' ;
elseif ( preg_match ( '/^(M | MME)/i' , $nom )) return 'Personne(s) ou famille(s)' ;
elseif ( preg_match ( '/CADRES|MANAGEMENT|SALARIES|DIRECTION|DIRECTEUR|EMPLOYEES|PERSONNEL/i' , $nom )) return 'Employ<6F> s/Directeurs' ;
elseif ( $cj >= 4000 && $cj < 5000 ) return 'Etat/Autorit<69> publique' ; // 4 - Personne morale de droit public soumise au droit commercial
elseif ( $cj >= 7000 && $cj < 8000 ) return 'Etat/Autorit<69> publique' ; // 7 - Personne morale et organisme soumis au droit administratif
elseif ( $cj == 3210 ) return 'Etat/Autorit<69> publique' ; // Etat, collectivit<69> ou <20> tablissement public <20> tranger
elseif ( $cj >= 1000 && $cj < 2000 ) return 'Personne(s) ou famille(s)' ;
elseif ( $cj == 2110 || $cj == 2210 ||
$cj == 2310 || $cj == 2385 ) return 'Personne(s) ou famille(s)' ; // Indivision, SEP
elseif ( $cj == 6100 || $cj == 6595 ||
$cj == 6596 || $naf == '6411Z' || $naf == '6419Z' ) return 'Banque' ;
elseif ( $cj == 6411 || $naf2 == 65 ) return 'Assurances' ;
elseif ( $naf2 == 64 || $naf2 == 66 || preg_match ( '/FINANCIERE/i' , $nom )) return 'Compagnie financi<63> re' ;
elseif ( $naf2 >= 5 && $naf2 <= 39 ) return 'Industrie' ;
elseif ( preg_match ( '/PUBLIC/i' , $nom )) return 'Public' ;
elseif ( preg_match ( '/ETAT|GOVERNMENT OF FRANCE/i' , $nom )) return 'Etat/Autorit<69> publique' ;
2012-10-16 07:44:31 +00:00
2013-06-19 08:24:49 +00:00
return 'NA' ;
}
2012-10-16 07:44:31 +00:00
?>