#!/usr/bin/php -c/var/www/batch/config/php_batch_sd.ini
"'",'&'=>'&', '²'=>'²', "\r"=>'', "\n"=>'', "\t"=>''));
if ($lon==-1) return $txt.$sep;
elseif ($sep=='') return sprintf("%-".$lon.'.'.$lon."s", $txt);
else return trim(sprintf("%-".$lon.'.'.$lon."s", $txt)).$sep;
}
function choixAdr($bodEtab, $bodSiege, $insee) {
if (strlen(trim($bodSiege))>0) $adr=trim($bodSiege);
elseif (strlen(trim($bodEtab))>0) $adr=trim($bodEtab);
else $adr='';
if (isset($insee) && trim($insee)<>'') return $insee;
else return $adr;
}
error_reporting(E_ALL);
include_once(FWK_PATH.'common/chiffres.php');
include_once(FWK_PATH.'common/dates.php');
include_once(INCLUDE_PATH.'partenaires/classMBilans.php');
include_once(INCLUDE_PATH.'insee/classMInsee.php');
include_once(INCLUDE_PATH.'scores/classMFinancier.php');
include_once(INCLUDE_PATH.'scores/classMScores.php');
include_once(FWK_PATH.'mail/sendMail.php');
$iDb=new WDB('jo');
$iDb2=new WDB('insee');
//$iWs=new WsEntreprise();
$iInsee=new MInsee();
$iBilan=new MBilans(0);
$iCotation=new ICotation(array());
echo date ('Y/m/d - H:i:s')." - Début du traitement diffusion des Entreprises.\n";
/*
$tabBilans=array();
$nbRows=$iDb->select('bilans', 'DISTINCT siren', "dateExercice>=20080101 AND typeBilan IN('N','S')", true, MYSQL_ASSOC, true);
echo date('Y/m/d - H:i:s') ." - Il y a $nbRows entreprises avec Bilans...".EOL;
while($tabBilan=$iDb->fetch(MYSQL_ASSOC)) {
$tabBilans[]=$tabBilan['siren'];
}*/
echo date('Y/m/d - H:i:s') ." - Début de l'export des entreprises...".EOL;
$tabSiret=file('/root/sql/pointp/ppNaf4752B.csv');
$tabSiren=array();
$fpEn=fopen('/root/sql/pointp/ppEntrep20110214.txt','w');
$fpEt=fopen('/root/sql/pointp/ppEtabs20110214.txt','w');
// ETABLISSEMENTS
fwrite($fpEt, "Dénomination L1|Dénomination L2|Complément d'adresse|Adresse|Mention de distribution|Code postal|Localité de destination|Code + Libellé Cedex|Code Insee commune|RCS|NIC|Enseigne|Sigle|Libellé statut de l'établissement|Code APE Ets|Libellé APE|Effectif site|Téléphone".EOL);
/*
SI CONSTRUCTION CTRE INCENDIE SECOURS||MAIRIE|ENCLOS DE SERVIGNY|BP 238|29900|CONCARNEAU||29039|200021657|00016|||Établissement siège|4120B|Construction d'autres bâtiments|N/C|0298503838
SYND INTERCOMMUNAL TRAVAUX LONGEAILLES||MAIRIE|5 RUE DU VIEUX PONT||39300|PONT DU NAVOY||39437|200022374|00017|||Établissement siège|4211Z|Construction de routes et autoroutes|N/C|
TILLET GILLES|TILLET GILLES||12 RUE CHEVRIER||86000|POITIERS||86194|491649737|00013|||Établissement siège|4332A|Travaux de menuiserie bois et PVC|N/C|0549418135
PITON JEAN|C M P||16 RUE VICTOR RAMETTE||59400|CAMBRAI||59122|504369604|00013|||Établissement siège|4332B|Travaux de menuiserie métallique et serrurerie|N/C|0628811387
LEFUR JEAN|L Z SERVICE EXPOSITION||2 RUE ROBERT SCHUMAN||94000|CRETEIL||94028|507601672|00011|L Z SERVICE EXPOSITION||Établissement siège|4332C|Agencement de lieux de vente|N/C|
LE HUEROU LE GOFF FABIENNE EMMANUELLE|||5 IMP DES COUDRIERS||22950|TREGUEUX||22360|508107125|00017|||Établissement siège|4332A|Travaux de menuiserie bois et PVC|N/C|
IGONNET DOMINIQUE MARIE|||QUA LA VIERE||07210|SAINT VINCENT DE BARRES||07302|508652070|00022|||Établissement siège|4332B|Travaux de menuiserie métallique et serrurerie|N/C|0475298981
ROULLET BRUNO PIERRE|||CHARRONDIERE||42310|SAINT BONNET DES QUARTS||42203|508656766|00013|||Établissement siège|8130Z|Services d'aménagement paysager|N/C|
BM ELECTRICITE|BM ELECTRICITE||87 RUE DES PERVENCHES||83130|LA GARDE||83062|508858297|00015|||Établissement siège|4321A|Travaux d'installation électrique dans tous locaux|N/C|
*/
// ENTREPRISES
fwrite($fpEn, "Dénomination L1|RCS|date de création entreprise|Nombre établissements|Libellé catégorie juridique|Capital|Devise|Code APE entreprise|Effectif global|Date du Bilan|Durée Exercice|FL|HN|FJ|FU|GV|VA|YP|YT|YU|Devise|Date Bilan N-1|Durée Exercice N-1|FL|HN|FJ|FU|GV|VA|YP|YT|YU".EOL);
/*
200021657|20090724|1|Syndicat intercommunal à vocation unique (SIVU)|0||4120B||0|0|||||||||||0|0|||||||||
200022374|20091007|1|Syndicat intercommunal à vocation unique (SIVU)|0||4211Z||0|0|||||||||||0|0|||||||||
491649737|20090629|1|Artisan |0||4332A||0|0|||||||||||0|0|||||||||
504369604|20090722|1|Artisan |0||4332B||0|0|||||||||||0|0|||||||||
507601672|20090901|1|Artisan |0||4332C||0|0|||||||||||0|0|||||||||
508107125|20090203|1|Profession libérale|0||4332A||0|0|||||||||||0|0|||||||||
508652070|20090101|1|(Autre)personne physique |0||4332B||0|0|||||||||||0|0|||||||||
508656766|20090101|1|Commerçant |0||8130Z||0|0|||||||||||0|0|||||||||
*/
$fields='id, source, source_id, triCode, autre_id, siren, nic, siege, raisonSociale, enseigne, sigle,
adr_num, adr_btq, adr_typeVoie, adr_libVoie, adr_comp, adr_cp, adr_ville, adr_dep, adr_com, tel, fax,
cj, capital, capitalDev, capitalSrc, ape_etab, ape_entrep, age_entrep, age_etab, tca, tcaexp,
ape4_etab, ape4_entrep, dateCrea_etab, teff_entrep, teff_etab, eff_entrep, eff_etab, distSP, achPost,
dirCiv, dirNom, dirPrenom, dirFct, nbEtab, bilType, bilAnnee, bilCA, bilCAexp, bilRN';
/*$where="actif=1 AND (eff_etab>0 OR eff_entrep>0 OR bilTca>0 OR tca>0 OR capital>75000) AND adr_dep<96 AND adr_dep NOT in ('20','2A','2B') AND (
(ape_etab='8130Z' and substring(ape_entrep,1,2)=81) OR
(ape_etab='4110A' AND substring(ape_entrep,1,2)=41) OR
(ape_etab='6820A' AND substring(ape_entrep,1,2)=68) OR
(ape_etab='6820B' AND substring(ape_entrep,1,2)=68) OR
(ape_etab='2511Z' AND substring(ape_entrep,1,2)=25) OR
(ape_etab='4399B' AND substring(ape_entrep,1,2)=43) OR
(ape_etab='4120A' AND substring(ape_entrep,1,2)=41) OR
(ape_etab='4120B' AND substring(ape_entrep,1,2)=41) OR
(ape_etab='4399C' AND substring(ape_entrep,1,2)=43) OR
(ape_etab='4391A' AND substring(ape_entrep,1,2)=43) OR
(ape_etab='4391B' AND substring(ape_entrep,1,2)=43) OR
(ape_etab='4399A' AND substring(ape_entrep,1,2)=43) OR
(ape_etab='3109B' AND substring(ape_entrep,1,2)=31) OR
(ape_etab='4332A' AND substring(ape_entrep,1,2)=43) OR
(ape_etab='4332B' AND substring(ape_entrep,1,2)=43) OR
(ape_etab='3101Z' AND substring(ape_entrep,1,2)=31) OR
(ape_etab='4332C' AND substring(ape_entrep,1,2)=43) OR
(ape_etab='4331Z' AND substring(ape_entrep,1,2)=43) OR
(ape_etab='4334Z' AND substring(ape_entrep,1,2)=43) OR
(ape_etab='4333Z' AND substring(ape_entrep,1,2)=43) OR
(ape_etab='4321A' AND substring(ape_entrep,1,2)=43) OR
(ape_etab='2825Z' AND substring(ape_entrep,1,2)=28) OR
(ape_etab='3320B' AND substring(ape_entrep,1,2)=33) OR
(ape_etab='4322B' AND substring(ape_entrep,1,2)=43) OR
(ape_etab='4322A' AND substring(ape_entrep,1,2)=43) OR
(ape_etab='4339Z' AND substring(ape_entrep,1,2)=43) OR
(ape_etab='4329A' AND substring(ape_entrep,1,2)=43) OR
(ape_etab='4222Z' AND substring(ape_entrep,1,2)=42) OR
(ape_etab='4321B' AND substring(ape_entrep,1,2)=43) OR
(ape_etab='3020Z' AND substring(ape_entrep,1,2)=30) OR
(ape_etab='3600Z' AND substring(ape_entrep,1,2)=36) OR
(ape_etab='4211Z' AND substring(ape_entrep,1,2)=42) OR
(ape_etab='4212Z' AND substring(ape_entrep,1,2)=42) OR
(ape_etab='4213A' AND substring(ape_entrep,1,2)=42) OR
(ape_etab='4213B' AND substring(ape_entrep,1,2)=42) OR
(ape_etab='4221Z' AND substring(ape_entrep,1,2)=42) OR
(ape_etab='4312A' AND substring(ape_entrep,1,2)=43) OR
(ape_etab='4312B' AND substring(ape_entrep,1,2)=43) OR
(ape_etab='4313Z' AND substring(ape_entrep,1,2)=43) OR
(ape_etab='4399D' AND substring(ape_entrep,1,2)=43) )";
$nbRows=$iDb->select('etablissements_act', 'count(DISTINCT siren) AS nb', $where, true, MYSQL_ASSOC);
$nbRowsTot=$nbRows[0]['nb'];
$iLimitNb=100000;*/
/*for ($iLimit=0; $iLimit<$nbRowsTot; $iLimit+=$iLimitNb) {*/
$nbRows=count($tabSiret);//$iDb->select('etablissements_act', $fields, "$where GROUP BY siren LIMIT $iLimit, $iLimitNb", true, MYSQL_ASSOC, true);
//if (mysql_errno()>0) die(date('Y/m/d - H:i:s') ." - Erreur SQL : ".mysql_error().EOL);
echo date('Y/m/d - H:i:s') ." - Il y a $nbRows entreprises à diffuser...".EOL;
//die();
//$numRow=0;
$anneeEstime=date('Y')-2;
//while($entrep=$iDb->fetch(MYSQL_ASSOC)) {
foreach ($tabSiret as $numRow=>$tabTmp) {
$tabTmp=preg_split('/(;|,)/', $tabTmp);
$siren=str_replace(' ','',strtr($tabTmp[0], '"\'',' '))*1;
if ($siren==0) continue;
$nic=str_replace(' ','',strtr($tabTmp[1], '"\'',' '))*1;
$tabTmp=$iDb->select('etablissements_act', $fields.", '' AS NOM2", "siren=$siren AND nic=$nic", false, MYSQL_ASSOC);
/*if (count($tabTmp)==0)
$tabTmp=$iDb2->select('identite', $fields2, "SIREN=$siren AND NIC=$nic", false, MYSQL_ASSOC);*/
if (count($tabTmp)==0) continue;
/*
ACTIF, PAYS` , `APRM` , `ACTIVNAT` , `ORIGINE` , `MODET` , `EXPLET` , `DAPET` , `LIEUACT` , `ACTISURF` ,
`DEFET` , `MODEN` , `PRODPART` , `EXPLEN` , `DEFEN` , `MONOREG` , `REGIMP` , `MONOACT` , `DAPEN` , `DCREN`
, `SIEGE` , `AUXILT` , `SAISONAT` , `CJ` , `CIVILITE` , `NBETAB` , `APE_ENT` , `APE_ETAB` , `PROCOL` ,
`PROCOL_TYPE` , `PROCOL_DATE` , `CAPITAL` , `EFF_ENT` , `NUMRC` , `TEL` , `FAX` , `DIR_FCT` , `DIR_IDEN` ,
`DIR_DATEN` , `DIR_LIEUN` , `CAPITAL_DATE` , `CAPITAL_DEV` , `DCRET` , `TEFF_ENT` , `ADR_DEP` , `ADR_COM` ,
`TCA` , `TCAEXP` , ``
$fields2="id, '002' AS source, id AS source_id, '' AS triCode, 0 AS autre_id, SIREN AS siren, NIC AS nic,
siege, NOM AS raisonSociale, NOM2, ENSEIGNE AS enseigne, SIGLE AS sigle,
ADR_NUMVOIE AS adr_num, ADR_BTQ AS adr_btq, ADR_TYPVOIE AS adr_typeVoie, ADR_LIBVOIE AS adr_libVoie,
ADR_COMP AS adr_comp, ADR_CP AS adr_cp, ADR_LIBCOM AS adr_ville, adr_dep, adr_com, tel, fax,
cj, capital, capitalDev, capitalSrc, ape_etab, ape_entrep, age_entrep, age_etab, tca, tcaexp,
ape4_etab, ape4_entrep, dateCrea_etab, teff_entrep, teff_etab, eff_entrep, EFF_ET AS eff_etab, ADR_DISTSP AS distSP,
achPost,
dirCiv, dirNom, dirPrenom, dirFct, nbEtab, bilType, bilAnnee, bilCA, bilCAexp, bilRN";
*/
//die(date('Y/m/d - H:i:s') ." - Erreur SQL : ".mysql_error().EOL);
$entrep=$tabTmp[0];
$siret=$siren.$nic;
//print_r($entrep);
//die($siret);
/*Dénomination (ligne 1) pour control|
RCS|date de création entreprise|Nombre établissements|Libellé catégorie juridique|
Capital| Devise|Code APE entreprise|Effectif global|
Date du Bilan|Durée Exercice|FL|HN|FJ|FU|GV|VA|YP|
YT|YU|Devise|Date Bilan N-1|Durée Exercice N-1|FL|HN|FJ|FU|GV|VA|YP|YT|YU
*/
$insee=$iDb2->select('identite', 'DCREN, DCRET', "SIREN=$siren AND NIC=$nic LIMIT 0,1",false,MYSQL_ASSOC);
if (count($insee)>0) {
$tabInsee=$insee[0];
$dcren=$tabInsee['DCREN'];
$dcret=$tabInsee['DCRET'];
} else
$dcren=$dcret=$entrep['dateCrea_etab'];
$strOutput =exporte(str_replace('|',' ',$entrep['raisonSociale']));
$strOutput.=exporte(sprintf("%09s", $siren));
$strOutput.=exporte($dcren); // date de création entreprise
$strOutput.=exporte($entrep['nbEtab']*1);
$strOutput.=exporte($iInsee->getLibelleFJ($entrep['cj']));
$strOutput.=exporte($entrep['capital']*1);
$strOutput.=exporte($entrep['capitalDev']);
$strOutput.=exporte($entrep['ape_entrep']);
$strOutput.=exporte($entrep['eff_entrep']);
$uniteMultiple=1;
for ($iBil=0; $iBil<2; $iBil++) {
$tabPostes=$tabBilan=array();
if ($entrep['bilType']=='R') {
$uniteMultiple=1;
$tabBilan=$iDb->select('bilans', 'siren, dateExercice, dateExercicePre, dureeExercice, dureeExercicePre, monnaie, unite, typeBilan, postes', "siren=$siren AND typeBilan IN ('N','S') ORDER BY dateExercice DESC LIMIT $iBil, 1", false, MYSQL_ASSOC);
$tabBilan=@$tabBilan[0];
$tabTmp=explode(';', $tabBilan['postes']);
foreach($tabTmp as $poste) {
if (trim($poste)<>'') {
$tabTmp2=explode('=',$poste);
$tabPostes[trim($tabTmp2[0])]=trim($tabTmp2[1]);
}
}
switch (strtoupper($tabBilan['unite'])) {
case 'K': $uniteMultiple=1000; break;
case 'M': $uniteMultiple=1000000; break;
}
if ($tabBilan['typeBilan']=='S')
$tabPostes=@$iBilan->bilanSimplifie2Normal($tabPostes);
}
$strOutput.=exporte(@$tabBilan['dateExercice']);
$strOutput.=exporte(@$tabBilan['dureeExercice']);
$strOutput.=exporte(str_replace('NS','', @$tabPostes['FL']*$uniteMultiple));
$strOutput.=exporte(str_replace('NS','', @$tabPostes['HN']*$uniteMultiple));
$strOutput.=exporte(str_replace('NS','', @$tabPostes['FJ']*$uniteMultiple));
$strOutput.=exporte(str_replace('NS','', @$tabPostes['FU']*$uniteMultiple));
$strOutput.=exporte(str_replace('NS','', @$tabPostes['GV']*$uniteMultiple));
$strOutput.=exporte(str_replace('NS','', @$tabPostes['VA']*$uniteMultiple));
$strOutput.=exporte(str_replace('NS','', @$tabPostes['YP']*$uniteMultiple));
$strOutput.=exporte(str_replace('NS','', @$tabPostes['YT']*$uniteMultiple));
$strOutput.=exporte(str_replace('NS','', @$tabPostes['YU']*$uniteMultiple));
if ($iBil==0)
$strOutput.=exporte(@$tabBilan['monnaie']);
}
if (!in_array($siren, $tabSiren)) {
fwrite($fpEn, $strOutput.EOL);
$tabSiren[]=$siren;
}
// Etablissement
$strOutput =exporte(str_replace('|',' ',$entrep['raisonSociale']));
$strOutput.=exporte('');
$strOutput.=exporte($entrep['adr_comp']);
$strOutput.=exporte(trim(str_replace('|',' ',preg_replace('/ +/', ' ', preg_replace('/^0/', '', $entrep['adr_num'].' '.$entrep['adr_btq'].' '.$entrep['adr_typeVoie'].' '.$entrep['adr_libVoie'])))));
$strOutput.=exporte($entrep['distSP']);
$strOutput.=exporte($entrep['adr_cp']);
$strOutput.=exporte($entrep['adr_ville']);
$strOutput.=exporte(str_replace('|',' ',$entrep['achPost']));
$strOutput.=exporte(sprintf("%02s", $entrep['adr_dep']*1).$entrep['adr_com']);
$strOutput.=exporte(sprintf("%09s", $siren));
$strOutput.=exporte(sprintf("%05s", $nic));
$strOutput.=exporte(str_replace('|',' ',$entrep['enseigne']));
$strOutput.=exporte(str_replace('|',' ',$entrep['sigle']));
if ($entrep['siege']*1==1) $strOutput.=exporte('Établissement siège');
else $strOutput.=exporte('Établissement secondaire');
$strOutput.=exporte($entrep['ape_etab']);
$strOutput.=exporte($iInsee->getLibelleNaf($entrep['ape_etab']));
$strOutput.=exporte($entrep['eff_etab']*1);
$strOutput.=exporte($entrep['tel']);
fwrite($fpEt, $strOutput.EOL);
if ($numRow%10000==0) {
$nbSiren=count($tabSiren);
echo date ('Y/m/d - H:i:s')." - $numRow/$nbRows étabs ($nbSiren entrep): $strOutput".EOL;
}
//die();
}
//}
echo date ('Y/m/d - H:i:s')." - Fin du traitement diffusion des Entreprises.\n";
sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Diffusion Entreprise", print_r($tabNaf5inconnu, true) .EOL. print_r($tabNaf4inconnu,true) );
die();
function getTca($montantCA) {
$montantCA=$montantCA*1;
if ($montantCA>=200000000) // 9 : 200 millions d'euros ou plus)
return 9;
elseif ($montantCA>=100000000) // 8 : De 100 millions à moins de 200 millions d'euros
return 8;
elseif ($montantCA>= 50000000) // 7 : De 50 millions à moins de 100 millions d'euros
return 7;
elseif ($montantCA>= 20000000) // 6 : De 20 millions à moins de 50 millions d'euros
return 6;
elseif ($montantCA>= 10000000) // 5 : De 10 millions à moins de 20 millions d'euros
return 5;
elseif ($montantCA>= 5000000) // 4 : De 5 millions à moins de 10 millions d'euros
return 4;
elseif ($montantCA>= 2000000) // 3 : De 2 millions à moins de 5 millions d'euros
return 3;
elseif ($montantCA>= 1000000) // 2 : De 1 million à moins de 2 millions d'euros
return 2;
elseif ($montantCA>= 500000) // 1 : De 0,5 à moins de 1 million d'euros
return 1;
else
return 0; // Non renseignée ou moins de 0,5 million d'euros
}
$fields='id, SIREN, NIC, NOM, NOM2, SIGLE, ENSEIGNE, ADR_LIBVOIE, ADR_LIBCOM, ADR_CP, ADR_COMP, ADR_DISTSP, SIEGE, CJ, NBETAB, APE_ETAB, CAPITAL, EFF_ENT, TEL, FAX, CAPITAL_DEV, ADR_DEP, ADR_COM, TCA, TCAEXP, EFF_ET, DIR_FCT, DIR_IDEN';
$nbRows=$iDb->select('identite', $fields, "ACTIF=1 AND CJ BETWEEN 5000 AND 5999 AND CJ NOT IN(18, 1800) AND TEL>0 AND SIEGE=1 LIMIT 0,6000", true, MYSQL_ASSOC, true);
/*
$fields='b.id, b.Bodacc_Code, b.Bodacc_Annee_Parution, b.Bodacc_Num, b.Num_Annonce, b.Bodacc_Date_Parution, b.Tribunal_Dept, b.Tribunal_Code, b.Rubrique_Bodacc, d.Rubrique, d.typeAnnonce, b.typeAnnonce, b.corrNum_Annonce, b.corrBodacc_Date_Parution, b.corrPage, b.corrNumParution, b.corrTexteRectificatif, b.annonce, d.siren, d.sirenValide, d.nic, d.nicValide, d.raisonSociale, d.enseigne, d.sigle, d.typeEven, d.dateJugement, d.VenteMt, d.VenteDev, d.dateEffet, d.publicationDate, d.dateDebutActivite, d.dateCessationActivite, d.dateCessationPaiement, d.dateFinDepotCreances, d.dateFinObservation';
$nbRows=$iDb->select('bodacc b, bodacc_detail d', $fields, "b.Bodacc_Code IN ('A','B') AND b.Bodacc_Annee_Parution=2009 AND b.Bodacc_Num=90 AND d.id=b.id", true, MYSQL_ASSOC, true);
*/
echo date('Y/m/d - H:i:s') ." - Il y a $nbRows entreprises à diffuser...".EOL;
$fp=fopen('./veolia_test2.csv','w');
while($entrep=$iDb->fetch(MYSQL_ASSOC)) {
$siret=$entrep['SIREN'].$entrep['NIC'];
if ($siret>100) $tabIdentite=@$iWs->getIdentite($siret, 0, false);
else $tabIdentite=array();
$tabIdentite=$tabIdentite['result'];
/*
$strOutput =exporte($entrep['siren'], 9);
$strOutput.=exporte($tabIdentite['NafEnt'], 5);
$strOutput.=exporte($tabIdentite['FJ'], 4);
if($tabIdentite['DateCreaEn']*1>0)
$strOutput.=exporte(substr($tabIdentite['DateCreaEn'],0,4).'-'.substr($tabIdentite['DateCreaEn'],4,2).'-'.substr($tabIdentite['DateCreaEn'],6,2), 10);
else
$strOutput.=exporte('0000-00-00', 10);
$strOutput.=exporte($tabIdentite['Siege']*1, 1);
$strOutput.=exporte($tabIdentite['Nic'], 5);
$strOutput.=exporte($tabIdentite['NafEtab'], 5);
$strOutput.=exporte('', 6); // APRM
if($tabIdentite['DateCreaEt']*1>0)
$strOutput.=exporte(substr($tabIdentite['DateCreaEt'],0,4).'-'.substr($tabIdentite['DateCreaEt'],4,2).'-'.substr($tabIdentite['DateCreaEt'],6,2), 10);
else
$strOutput.=exporte('0000-00-00', 10);
$strOutput.=exporte($tabIdentite['Dept'], 2);
$strOutput.=exporte($tabIdentite['codeCommune'], 3);
$strOutput.=exporte($tabIdentite['Rivoli'], 5);
if (strlen(trim($entrep['raisonSociale']))>strlen(trim($tabIdentite['Nom'])))
$strOutput.=exporte(strtr($entrep['raisonSociale'], array("\r"=>' ', "\n"=>' ', "\t"=>' ')), 150);
else
$strOutput.=exporte($tabIdentite['Nom'].$tabIdentite['Nom2'], 150);
if (strlen(trim($entrep['sigle']))>strlen(trim($tabIdentite['Sigle'])))
$strOutput.=exporte(strtr($entrep['sigle'], array("\r"=>' ', "\n"=>' ', "\t"=>' ')), 100);
else
$strOutput.=exporte($tabIdentite['Sigle'], 100);
if (strlen(trim($entrep['enseigne']))>strlen(trim($tabIdentite['Enseigne'])))
$strOutput.=exporte(strtr($entrep['enseigne'], array("\r"=>' ', "\n"=>' ', "\t"=>' ')), 100);
else
$strOutput.=exporte($tabIdentite['Enseigne'], 100);
$strOutput.=exporte(choixAdr($entrep['adrNum'], $entrep['adrSiegeNum'], $tabIdentite['AdresseNum']), 4);
$strOutput.=exporte(choixAdr($entrep['adrIndRep'], $entrep['adrSiegeIndRep'], $tabIdentite['AdresseBtq']), 1);
$strOutput.=exporte(choixAdr($entrep['adrTypVoie'], $entrep['adrSiegeTypVoie'], $tabIdentite['AdresseVoie']), 3);
$strOutput.=exporte(choixAdr($entrep['adrLibVoie'], $entrep['adrSiegeLibVoie'], $tabIdentite['AdresseRue']), 35);
$strOutput.=exporte(choixAdr($entrep['ville'], $entrep['villeSiege'], $tabIdentite['Ville']), 35);
$strOutput.=exporte(choixAdr($entrep['codePostal'], $entrep['codePostalSiege'], $tabIdentite['CP']), 5);
$strOutput.=exporte(choixAdr($entrep['adrComp1'], $entrep['adrSiegeComp1'], $tabIdentite['Adresse2']), 35);
$strOutput.=exporte('FR', 2);
$strOutput.=exporte('', 15);
$strOutput.=exporte('B', 1);
$strOutput.=exporte($entrep['Bodacc_Annee_Parution'].'-'.$entrep['Bodacc_Num'], 8);
$strOutput.=exporte($entrep['Bodacc_Code'], 1);
$strOutput.=exporte($entrep['Num_Annonce'], 6);
$strOutput.=exporte($entrep['Bodacc_Date_Parution'], 10);
$strOutput.=exporte('', 3);
if(str_replace('-','',$entrep['dateEffet'])*1>0)
$strOutput.=exporte($entrep['dateEffet'], 10);
elseif(str_replace('-','',$entrep['dateJugement'])*1>0)
$strOutput.=exporte($entrep['dateJugement'], 10);
elseif(str_replace('-','',$entrep['publicationDate'])*1>0)
$strOutput.=exporte($entrep['publicationDate'], 10);
elseif(str_replace('-','',$entrep['dateDebutActivite'])*1>0)
$strOutput.=exporte($entrep['dateDebutActivite'], 10);
elseif(str_replace('-','',$entrep['dateCessationActivite'])*1>0)
$strOutput.=exporte($entrep['dateCessationActivite'], 10);
else
$strOutput.=exporte('0000-00-00', 10);
$strOutput.=exporte($entrep['Tribunal_Code'], 6);
$strOutput.=exporte(preg_replace('/ +/',' ', strtr($entrep['annonce'], array("\r"=>' ', "\n"=>' ', "\t"=>' '))), 3200);
$strOutput.=exporte($entrep['typeEven'], 40);
$strOutput.=exporte($entrep['Rubrique'], 10);
$strOutput.=exporte($entrep['typeAnnonce'], 10);*/
// print_r($tabIdentite);
// die();
if ($tabIdentite['SituationJuridique']<>'P') {
$strOutput =exporte("A", 1);
$strOutput.='002'.exporte(sprintf("%010s", $tabIdentite['id']), 10);
$strOutput.=exporte(sprintf("%09s", $tabIdentite['Siren']), 9);
$strOutput.=exporte(sprintf("%05s", $tabIdentite['Nic']), 5);
$strOutput.=exporte($tabIdentite['Enseigne'], 40);
$strOutput.=exporte($tabIdentite['Sigle'], 20);
$strOutput.=exporte($tabIdentite['Nom'], 32);
$strOutput.=exporte($tabIdentite['Nom2'], 32);
$strOutput.=exporte('', 32); // ENTREE BATIMENT RESIDENCE
$adresse=$tabIdentite['AdresseNum']*1;
if ($adresse==0) $adresse='';
else $adresse.=' ';
$adresse.=trim(preg_replace('/ +/', ' ', $tabIdentite['AdresseBtq'].' '.$tabIdentite['AdresseVoie'].' '.$tabIdentite['AdresseRue']));
$strOutput.=exporte($adresse, 32);
$strOutput.=exporte($tabIdentite['Adresse2'], 32);
$strOutput.=exporte(sprintf("%05s",$tabIdentite['CP']), 6);
$strOutput.=exporte($tabIdentite['Ville'], 32);
$strOutput.=exporte($entrep['ADR_DISTSP'], 32); // CEDEX
$strOutput.=exporte(sprintf("%02s",$tabIdentite['Dept']).sprintf("%03s",$tabIdentite['codeCommune']), 5);
$strOutput.=exporte("I", 1);
$tabTmp=@$iInsee->getDirigeants($entrep['SIREN'], false);
/* if (count($tabTmp)>0) {
print_r($tabTmp);
die();
}*/
$tabDir=$tabTmp[0];
$tabTmp=explode(' ', $tabDir['Nom']);
$civ=trim($tabDir['Civilite']);
$nom=$tabDir['Nom'];
$prenom=$tabDir['Prenom'];
if ($civ=='' && $tabIdentite['FJ']<2000 && $tabIdentite['Civilite']==1) $civ='M';
elseif ($civ=='' && $tabIdentite['FJ']<2000 && $tabIdentite['Civilite']==2) $civ='MME';
if ($entrep['DIR_FCT']=='PP') {
preg_match_all('/[A-Z]{2,}/', $entrep['DIR_IDEN'], $matches);
$nom=trim(implode(' ',$matches[0]));
preg_match_all('/[A-Z][a-z]{1,}/', $entrep['DIR_IDEN'], $matches);
$prenom=trim(implode(' ',$matches[0]));
}
$strOutput.=exporte($civ, 4); //Civilite
$strOutput.=exporte($nom, 30); // NOM
$strOutput.=exporte($prenom, 20); // PRENOM
$strOutput.=exporte($tabDir['Fonction'], 4); // Code Fct
$strOutput.=exporte(sprintf("%10s",preg_replace('/( |\-|\.)/', '', $tabIdentite['Tel'])), 10);
$strOutput.=exporte(sprintf("%10s",preg_replace('/( |\-|\.)/', '', $tabIdentite['Fax'])), 10);
$strOutput.=exporte($tabIdentite['DateCreaEt'], 8);
if ($tabIdentite['Siege']==1) $strOutput.=exporte('01', 2);
else $strOutput.=exporte('02', 2);
$strOutput.=exporte($tabIdentite['NbEtab'], 5);
$strOutput.=exporte($tabIdentite['FJ'], 4);
$strOutput.=exporte($tabIdentite['Capital'], 13);
if ($tabIdentite['CapitalDev']=='EUR' || $tabIdentite['CapitalDev']=='')
$strOutput.=exporte('Euro', 10);
else
$strOutput.=exporte($tabIdentite['CapitalDev'], 10);
/*
341Z
741J
Construction de vehicules automobiles
<>Administration d'entreprises
*/
$naf4=$tabIdentite['Naf4Etab'];
$naf4lib=$tabIdentite['Naf4EtabLib'];
$naf5=$tabIdentite['NafEtab'];
if ($naf4=='') $naf4=$iCotation->tabNaf21[$naf5];
if ($naf4lib=='') $naf4lib=$iInsee->getLibelleNaf($naf4);
$strOutput.=exporte($naf4, 4); // NAF4
$strOutput.=exporte($naf4lib, 90);
$tabTmp=@$iWs->getRatios($entrep['SIREN']);
// print_r($tabTmp);
$tabRatios=$tabTmp['result']['RatiosEntrep'][0];
if (($tabRatios['r24']*1)>0)
$effectifFr=$tabRatios['r24'];
else
$effectifFr=$tabIdentite['Effectif'];
$strOutput.=exporte($effectifFr, 6);
$strOutput.=exporte($entrep['EFF_ET'], 6);
if (count($tabRatios)>0) {
$strOutput.=exporte('R', 1); // Réel , Inconnu, Estimé
$strOutput.=exporte(str_replace('NS','', $tabRatios['r1']), 13);
$strOutput.=exporte(str_replace('NS','', $tabRatios['r3']), 13);
$strOutput.=exporte(str_replace('NS','', $tabRatios['r10']), 13);
//die(print_r($tabRatios));
} elseif ($naf5<>'' && $naf5<>'0000Z' && $effectifFr>0) {
$caEstime=getCAnafEffectif($naf5, $effectifFr);
$strOutput.=exporte('E', 1); // Réel , Inconnu, Estimé
$strOutput.=exporte($caEstime, 13); // CA France
$strOutput.=exporte('', 13); // CA Export
$strOutput.=exporte('', 13); // Résultat Net
} else{
//$CAESTIME=getCAnafEffectif($naf, $EFFECTIF);
$strOutput.=exporte('I', 1); // Réel , Inconnu, Estimé
$strOutput.=exporte('', 13);
$strOutput.=exporte('', 13);
$strOutput.=exporte('', 13);
}
$strOutput.=exporte($naf5, 5);
$strOutput.=exporte($tabIdentite['NafEtabLib'], 90);
echo $strOutput.EOL;
fwrite($fp, $strOutput.EOL);
}
}
echo date ('Y/m/d - H:i:s')." - Fin du traitement diffusion des Entreprises.\n";
die();
?>