1214 lines
61 KiB
PHP
1214 lines
61 KiB
PHP
<?php
|
||
/**
|
||
* Diffusion Insee Spécifique A6CMO
|
||
* - Executer tous les lundi
|
||
* - Lire la tables des prestations de type A6CMO, récupérer les paramètres et le numéro d'incrément de fichier
|
||
*
|
||
* Options d'execution à paramètrer dans la base
|
||
* nomClient => Libellé du client pour la prestation
|
||
* typePrestation => diffusionInsee
|
||
* (prestaActive => depuis paramètres)
|
||
* (clientIdentifiant => Code prestation, depuis paramètres)
|
||
* clientNumTourFichier => Numéro de tour du fichier pour le client
|
||
* nbBilansMax => Nombre de bilans max
|
||
* typeLigneBilan => 401
|
||
* CodeCom => Liste des codes communes séparés par des virgules
|
||
* CJ =>
|
||
* CJEx => Liste des CJ séparés par des virgules
|
||
* NAF =>
|
||
* NAFEx => Liste des NAF séparés par des virgules
|
||
* freqenvois => Fréquence des envois H:Hebdo, M=Mensuel, Q=Quotidien
|
||
* mailTo => Liste des emails séparés par des virgules
|
||
* EOL => Linux : LF (\n), Windows CRLF (\r\n)
|
||
*/
|
||
|
||
error_reporting(E_ALL ^ E_STRICT ^ E_NOTICE ^ E_WARNING ^ E_DEPRECATED);
|
||
|
||
// --- Define path to application directory
|
||
defined('APPLICATION_PATH')
|
||
|| define('APPLICATION_PATH', realpath(__DIR__ . '/../application'));
|
||
|
||
// --- Define application environment
|
||
defined('APPLICATION_ENV')
|
||
|| define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'production'));
|
||
|
||
// --- Composer autoload
|
||
require_once realpath(__DIR__ . '/../vendor/autoload.php');
|
||
|
||
// --- Create application, bootstrap, and run
|
||
$application = new Zend_Application(APPLICATION_ENV, APPLICATION_PATH . '/configs/application.ini');
|
||
|
||
// --- Options
|
||
try {
|
||
$opts = new Zend_Console_Getopt(array(
|
||
'help|?' => "Displays usage information.",
|
||
'debug' => "Debuggage, genere un fichier test.",
|
||
'cron' => "Execution par cron, automatique",
|
||
'liste|l' => "Affichage de la liste des prestations",
|
||
'stock|s' => "Generation du stock",
|
||
'date=s' => "Depuis la date AAAAMMDD[HHIISS]",
|
||
'presta|p=s' => "Execution de la prestation id",
|
||
'force|f' => "Forcer l'execution",
|
||
'nomail' => "Ne pas envoyer l'email",
|
||
));
|
||
$opts->parse();
|
||
} catch (Zend_Console_Getopt_Exception $e) {
|
||
echo $e->getUsageMessage();
|
||
exit;
|
||
}
|
||
|
||
// --- Usage
|
||
if( isset($opts->help) || count($opts->getOptions())==0 )
|
||
{
|
||
echo "Production de Stock/Diffusion des bases A6CMO (ce traitement ce lance automatiquement pour les diffusions le lundi).\n";
|
||
echo $opts->getUsageMessage();
|
||
exit;
|
||
}
|
||
|
||
require_once APPLICATION_PATH.'/configs/config.php';
|
||
require_once 'framework/fwk.php';
|
||
require_once 'framework/common/chiffres.php';
|
||
require_once 'framework/common/dates.php';
|
||
require_once 'framework/mail/sendMail.php';
|
||
require_once 'Metier/bodacc/classMBodacc.php';
|
||
require_once 'Metier/insee/classMInsee.php';
|
||
//require_once 'Metier/conversion/bilAltares.php';
|
||
require_once 'Metier/partenaires/classMRnvp.php';
|
||
|
||
|
||
|
||
$appconfig = new Zend_Config($application->getOptions());
|
||
$db = Zend_Db::factory($appconfig->profil->db->metier);
|
||
Zend_Db_Table_Abstract::setDefaultAdapter($db);
|
||
|
||
// --- Liste des paramètres
|
||
$defineParams = array(
|
||
'nomClient',
|
||
'typePrestation',
|
||
'clientIdentifiant',
|
||
'clientNumTourFichier',
|
||
'nbBilansMax',
|
||
'typeLigneBilan',
|
||
'CodeCom',
|
||
'CJ',
|
||
'CJEx',
|
||
'NAF',
|
||
'NAFEx',
|
||
'freqenvois',
|
||
'mailTo',
|
||
'EOL'
|
||
);
|
||
|
||
// --- Liste des prestations : CLIENT | PRESTATION | ACTIVE
|
||
if ($opts->liste) {
|
||
$prestaM = new Application_Model_Sdv1ClientsPresta();
|
||
$prestaSql = $prestaM->select(true)->setIntegrityCheck(false)
|
||
->join('sdv1.clients', 'clients_presta.clientId = clients.id', array('nom'))
|
||
->where('clients_presta.type=?', 'a6cmoinsee');
|
||
$prestaResult = $prestaM->fetchAll($prestaSql);
|
||
if (count($prestaResult) == 0) {
|
||
echo date('Y-m-d H:i:s')." - Aucune prestation.\n";
|
||
} else {
|
||
foreach ($prestaResult as $p) {
|
||
echo $p->code;
|
||
echo "\t";
|
||
if ($p->actif==1) {
|
||
echo "ACTIF";
|
||
} else {
|
||
echo "INACTIF";
|
||
}
|
||
echo "\t";
|
||
echo $p->label;
|
||
echo "\t";
|
||
echo $p->nom;
|
||
echo "\n";
|
||
}
|
||
}
|
||
exit;
|
||
}
|
||
|
||
|
||
// --- Liste des prestations pour execution
|
||
$prestaM = new Application_Model_Sdv1ClientsPresta();
|
||
$prestaSql = $prestaM->select(true)->setIntegrityCheck(false)
|
||
->join('sdv1.clients', 'clients_presta.clientId = clients.id', array('nom'))
|
||
->where('clients_presta.type=?', 'a6cmoinsee');
|
||
$prestaResult = $prestaM->fetchAll($prestaSql);
|
||
if (count($prestaResult) == 0) {
|
||
echo date('Y-m-d H:i:s')." - Aucune prestation.\n"; exit;
|
||
}
|
||
|
||
$tabPresta = array();
|
||
foreach ($prestaResult as $p) {
|
||
$tabPresta[$p->code] = $p;
|
||
}
|
||
|
||
// --- Cron : Liste des prestations actives + execution
|
||
if ($opts->cron) {
|
||
|
||
}
|
||
// --- Execution prestation unitaire
|
||
elseif ($opts->presta) {
|
||
if (array_key_exists($opts->presta, $tabPresta)) {
|
||
$tabPresta = array($opts->presta => $tabPresta[$opts->presta]);
|
||
} else {
|
||
echo date('Y-m-d H:i:s')." - Prestation inconnue\n";
|
||
}
|
||
}
|
||
// --- Stop
|
||
else {
|
||
echo date('Y-m-d H:i:s')." - Aucune execution...\n";
|
||
}
|
||
|
||
$tabProduction = array();
|
||
$tTime = array();
|
||
|
||
// --- Execution
|
||
foreach($tabPresta as $prestaId => $prestaDetail) {
|
||
echo date('Y-m-d H:i:s')." - Prestation ".$prestaId."\n";
|
||
|
||
// --- Définition des paramètres par defaut
|
||
foreach ($defineParams as $d) {
|
||
${'Option'.ucfirst($d)} = null;
|
||
}
|
||
$OptionEOL = "\n";
|
||
$OptionFreqenvois = 'H';
|
||
|
||
// --- Lire les paramètres de la prestation
|
||
$paramsM = new Application_Model_Sdv1ClientsPrestaParams();
|
||
$paramsSql = $paramsM->select()->where('code=?', $prestaId);
|
||
$paramsResult = $paramsM->fetchAll($paramsSql);
|
||
if (count($paramsResult) == 0) {
|
||
echo date('Y-m-d H:i:s')." - Aucun paramètres.\n";
|
||
continue;
|
||
} else {
|
||
// --- Un paramètre est enregistré dans une variable $Option{Name}
|
||
foreach ($paramsResult as $p) {
|
||
if (in_array($p->name, $defineParams)) {
|
||
${'Option'.ucfirst($p->name)} = trim($p->value);
|
||
}
|
||
}
|
||
}
|
||
|
||
// --- Tableau de valeur
|
||
$tabFJ = array();
|
||
if ($OptionCJ !== null) {
|
||
$tabFJ = explode(',', $OptionCJ);
|
||
}
|
||
$tabFJexclus = array();
|
||
if ($OptionCJEx !== null) {
|
||
$tabFJexclus = explode(',', $OptionCJEx);
|
||
}
|
||
$tabNAF = array();
|
||
if ($OptionNAF !== null) {
|
||
$tabNAF = explode(',', $OptionNAF);
|
||
}
|
||
$tabNAFexclus = array();
|
||
if ($OptionNAFEx !== null) {
|
||
$tabNAFexclus = explode(',', $OptionNAFEx);
|
||
}
|
||
$tabDepCom = array();
|
||
if ($OptionCodeCom !== null) {
|
||
$tabDepCom = explode(',', $OptionCodeCom);
|
||
}
|
||
|
||
$prestaActive = $prestaDetail->actif;
|
||
|
||
// --- Lire la dernière execution
|
||
$execM = new Application_Model_Sdv1PrestaOut();
|
||
$execSql = $execM->select()
|
||
->where('code=?', $prestaId)
|
||
->where('dateEnd!="0000-00-00 00:00:00"')
|
||
->order('dateEnd DESC')->limit(1);
|
||
$execResult = $execM->fetchRow($execSql);
|
||
$dateLastExec = false;
|
||
if ($execResult !== null) {
|
||
$dateLastExec = new Zend_Date($execResult->dateEnd, Zend_Date::ISO_8601);
|
||
}
|
||
$dateNow = new Zend_Date();
|
||
|
||
// --- Surcharge date
|
||
if (strlen($opts->date) == 8) {
|
||
$dateLastExec = new Zend_Date($opts->date, 'yyyyMMdd');
|
||
} elseif (strlen($opts->date) == 14) {
|
||
$dateLastExec = new Zend_Date($opts->date, 'yyyyMMddHHmmss');
|
||
}
|
||
|
||
// --- Livraison d'un stock
|
||
if ($opts->stock) {
|
||
|
||
}
|
||
// --- Suivi
|
||
elseif (!$opts->force) {
|
||
// --- Est ce que la prestation doit s'executer... freqenvois ?
|
||
if ($dateLastExec !== false && $dateNow->compareDate($dateLastExec, 'yyyyMMdd') == 0) {
|
||
echo date('Y-m-d H:i:s')." - Déjà executé ce jour.\n";
|
||
continue;
|
||
}
|
||
// Fréquence Mensuelle : le 1er lundi du mois
|
||
if ($OptionFreqenvois == 'M') {
|
||
if ($dateNow->get(Zend_Date::DAY_SHORT) < 8 && $dateNow->get(Zend_Date::WEEKDAY_DIGIT) == 1) {
|
||
if ($dateLastExec === false) {
|
||
$dateLastExec = $dateNow;
|
||
$dateLastExec->subDay(31);
|
||
}
|
||
} else {
|
||
echo date('Y-m-d H:i:s')." - Pas d'execution ce jour.\n";
|
||
continue;
|
||
}
|
||
}
|
||
// Fréquence Hebdomadaire (par défaut) : le lundi
|
||
elseif ($OptionFreqenvois == 'H') {
|
||
if ($dateNow->get(Zend_Date::WEEKDAY_DIGIT) == '1') {
|
||
if ($dateLastExec === false) {
|
||
$dateLastExec = $dateNow;
|
||
$dateLastExec->subDay(7);
|
||
}
|
||
} else {
|
||
echo date('Y-m-d H:i:s')." - Pas d'execution ce jour.\n";
|
||
continue;
|
||
}
|
||
}
|
||
// Fréquence Quotidienne : du lundi au vendredi
|
||
elseif ($OptionFreqenvois == 'Q') {
|
||
if (in_array($dateNow->get(Zend_Date::WEEKDAY_DIGIT), array(1,2,3,4,5))) {
|
||
if ($dateLastExec === false) {
|
||
$dateLastExec = $dateNow;
|
||
$dateLastExec->subDay(1);
|
||
}
|
||
} else {
|
||
echo date('Y-m-d H:i:s')." - Pas d'execution ce jour.\n";
|
||
continue;
|
||
}
|
||
}
|
||
}
|
||
|
||
// Si pas de date
|
||
if ($dateLastExec === false) {
|
||
echo date('Y-m-d H:i:s')." - Pas de date.\n";
|
||
continue;
|
||
}
|
||
$dateDebut = $dateLastExec->toString('yyyy-MM-dd HH:mm:ss');
|
||
|
||
if (!defined('VERSION_FICHIER_IDENTITE'))
|
||
define('VERSION_FICHIER_IDENTITE','0106');
|
||
|
||
$tLibFreq = array(
|
||
'Q' => 'Quotidien',
|
||
'H' => 'Hebdo',
|
||
'M' => 'Mensuel'
|
||
);
|
||
|
||
$iDb = new WDB();
|
||
$iInsee = new MInsee($iDb);
|
||
$iBodacc = new MBodacc($iDb);
|
||
$iRnvp = new MRnvp();
|
||
|
||
$dateDeb = date('YmdHis');
|
||
|
||
$file = $OptionTypePrestation.'_'.$prestaId.'_'.$dateDeb.'.txt';
|
||
$filepath = $appconfig->profil->path->storage . '/clients/A6CMO/' . $file;
|
||
|
||
if (empty($opts->debug)) {
|
||
$suiviM = new Application_Model_Sdv1PrestaOut();
|
||
$suiviId = $suiviM->insert(array(
|
||
'code' => $prestaId,
|
||
'dateStart' => $dateDeb,
|
||
));
|
||
}
|
||
|
||
// --- Ligne d'entete
|
||
$str = initstr('001', 3, '0', ALIGN_RIGHT). // Type de ligne
|
||
initstr($dateDeb, 14 ). // Date de génération du fichier
|
||
initstr($OptionClientNumTourFichier, 10, '0', ALIGN_RIGHT). // Numéro de tour du fichier pour le client
|
||
initstr($prestaId, 36 ). // Identifiant Client
|
||
initstr($OptionTypePrestation, 32 ). // Type de prestation
|
||
initstr(VERSION_FICHIER_IDENTITE, 4 ). // Type de prestation
|
||
initstr(FILLER, 1901 ). // FILLER
|
||
'';
|
||
|
||
// --- Ecriture fichier
|
||
$isWrite = file_put_contents($filepath, initstr($str,LONGUEUR_LIGNE_SORTIE).$OptionEOL);
|
||
if ($isWrite === false) {
|
||
echo date('Y-m-d H:i:s')." - Impossible d'écrire le fichier $filepath\n";
|
||
continue;
|
||
}
|
||
$nbLignes = 1;
|
||
|
||
$tabProduction[$prestaId]['nomClient'] = $OptionNomClient;
|
||
$tabProduction[$prestaId]['dateDeb'] = $dateDeb;
|
||
$tabProduction[$prestaId]['dateRetro'] = $dateLastExec->toString('yyyy-MM-dd hh:ii:ss');
|
||
$tabProduction[$prestaId]['frequence'] = $OptionFreqenvois;
|
||
$timeDeb = microtime(true);
|
||
|
||
if (count($tabFJ)>0 && $tabFJ[0]<>'') {
|
||
$strFJ =' AND cj IN('.implode(',',$tabFJ).') ';
|
||
} elseif (count($tabFJexclus)>0 && $tabFJexclus[0]<>'') {
|
||
$strFJ =' AND cj NOT IN('.implode(',',$tabFJexclus).') ';
|
||
} else {
|
||
$strFJ ='';
|
||
}
|
||
|
||
if (count($tabNAF)>0 && $tabNAF[0]<>'') {
|
||
$strNAF=" AND ape_etab IN('".implode("','",$tabNAF)."') ";
|
||
} elseif (count($tabNAFexclus)>0 && $tabNAFexclus[0]<>'') {
|
||
$strNAF=" AND ape_etab NOT IN('".implode("','",$tabNAFexclus)."') ";
|
||
} else {
|
||
$strNAF ='';
|
||
}
|
||
|
||
$strDepCom=$strDepComStock='';
|
||
foreach ($tabDepCom as $idepcom=>$depcom) {
|
||
/** @todo Vérifier si les DOM fonctionnent **/
|
||
if ($idepcom==0) {
|
||
$strDepCom.="AND (";
|
||
$strDepComStock.="AND (";
|
||
}
|
||
$strDepCom.="(insDEPET IN ('".substr($depcom,0,2)."','0".substr($depcom,0,2)."'";
|
||
$strDepComStock.="(adr_dep IN ('".substr($depcom,0,2)."','0".substr($depcom,0,2)."'";
|
||
if (substr($depcom,0,2)>96) {
|
||
$strDepCom.=",'".substr($depcom,0,3)."'";
|
||
$strDepComStock.=",'".substr($depcom,0,3)."'";
|
||
}
|
||
$strDepCom.=") "; $strDepComStock.=") ";
|
||
if (substr($depcom,2,3)*1==0) $depSeul=true;
|
||
else {
|
||
$depSeul=false;
|
||
$strDepCom.="AND insCOMET=".substr($depcom,2,3);
|
||
$strDepComStock.="AND adr_com=".substr($depcom,2,3);
|
||
// On test si il y a présence d'un code rivoli séparé par un point "."
|
||
if (substr($depcom,5,1)=='.') {
|
||
$strDepCom.=" AND insCODEVOIE LIKE '".substr($depcom,6,4)."%'";
|
||
$strDepComStock.=" AND rivoli LIKE '".substr($depcom,6,4)."%'";
|
||
}
|
||
}
|
||
$strDepCom.=") "; $strDepComStock.=") ";
|
||
if (isset($tabDepCom[$idepcom+1])) { $strDepCom.=' OR '; $strDepComStock.=' OR '; }
|
||
elseif (trim(substr($depcom,3,2))<>'') { $strDepCom.=')'; $strDepComStock.=')'; }
|
||
elseif ($depSeul) { $strDepCom.=')'; $strDepComStock.=')'; }
|
||
}
|
||
|
||
|
||
if ($opts->stock) {
|
||
echo date('Y-m-d H:i:s') ." - Sélection du stock pour '$OptionNomClient' (dernier $OptionFreqenvois le $dateDebut)\n";
|
||
} else {
|
||
echo date('Y-m-d H:i:s') ." - Sélection de la cible $OptionFreqenvois pour '$OptionNomClient' depuis $dateDebut...\n";
|
||
}
|
||
|
||
if ($opts->stock) {
|
||
$field = 'siren, nic';
|
||
$table = 'etablissements_old';
|
||
$where = "source=2 AND actif=1 AND siege IN (0,1) $strDepComStock $strFJ $strNAF";
|
||
$etab = $iDb->select($table, $field, $where, false, MYSQL_ASSOC);
|
||
if ($iDb->getLastErrorNum() == 1146) {
|
||
// Table don't exist ?
|
||
$table = 'etablissements';
|
||
$etab = $iDb->select($table, $field, $where, false, MYSQL_ASSOC);
|
||
}
|
||
}
|
||
else {
|
||
$strFJ = str_replace(' cj ',' insCJ ', $strFJ);
|
||
$strNAF = str_replace(' ape_etab ',' insAPET700 ', $strNAF);
|
||
$field = 'LPAD(insSIREN,9,0) AS siren, LPAD(insNIC,5,0) AS nic,
|
||
insDESTINAT, insEVE, insDATEVE, insTYPETAB, insSIRETPS, insSIRETASS, MAX(insMNICSIEGE) AS insMNICSIEGE, MAX(insMNOMEN) AS insMNOMEN, MAX(insMCJ) AS insMCJ,
|
||
MAX(insMAPEN) AS insMAPEN, MAX(insMENSEIGNE) AS insMENSEIGNE, MAX(insMAPET) AS insMAPET, MAX(insMADRESSE) AS insMADRESSE, MAX(insMAUXILT) AS insMAUXILT,
|
||
MAX(insMSIGLE) AS insMSIGLE, MAX(insMEXPLEN) AS insMEXPLEN, MAX(insMEXPLET) AS insMEXPLET, insDREACTET, insDREACTEN';
|
||
$table = 'insee.insee_even';
|
||
$where = "1 $strDepCom $strFJ $strNAF AND dateInsert>='$dateDebut' AND (insVMAJ NOT IN ('I','F') OR insVMAJ2=1 OR insVMAJ3=1) GROUP BY insSIREN, insNIC";
|
||
$etab = $iDb->select($table, $field, $where, false, MYSQL_ASSOC);
|
||
}
|
||
|
||
echo "SELECT $field FROM $table WHERE $where;";
|
||
echo date('Y-m-d H:i:s')." - ".$iDb->getLastErrorMsg()."\n";
|
||
$nbEtab = count($etab);
|
||
echo date('Y-m-d H:i:s')." - Nombre d'établissement en sortie : ".$nbEtab."\n";
|
||
|
||
if (empty($opts->debug)) {
|
||
$suiviM->update(array('unitTotal' => $nbEtab), 'id='.$suiviId);
|
||
}
|
||
//@todo :
|
||
|
||
$tabProduction[$prestaId]['nbEtabs']=$nbEtab;
|
||
$unit = 0;
|
||
$nbLignes200 = $nbLignesBil = 0;
|
||
foreach ($etab as $lSiret)
|
||
{
|
||
$unit++;
|
||
|
||
// Réinitialisation de zones
|
||
$ev_EVE=$ev_TYPETAB=$ev_DESTINAT='';
|
||
$ev_SIRETLIE=$ev_SIRETLIETYPE=$ev_MNICSIEGE=$ev_MNOMEN=$ev_MCJ=$ev_MAPEN=$ev_DREACTEN=$ev_DATEFEREN=$ev_DATEVE=0;
|
||
$ev_MENSEIGNE=$ev_MAPET=$ev_MADRESSE=$ev_MAUXILT=$ev_MSIGLE=$ev_MEXPLEN=$ev_MEXPLET=0;
|
||
|
||
$siren=$lSiret['siren'];
|
||
$nic=$lSiret['nic'];
|
||
$t1=microtime(1);
|
||
$a=$iInsee->getIdentiteEntreprise($siren, $nic);
|
||
$t2=microtime(1);
|
||
$tTime['Identite']+=$t2-$t1;
|
||
$b=$iInsee->getInfosNotice($siren, $nic);
|
||
$t3=microtime(1);
|
||
$tTime['Notice']+=$t3-$t2;
|
||
$c=$iInsee->getAdresse($siren, $nic);
|
||
$t4=microtime(1);
|
||
$tTime['Adresse']+=$t4-$t3;
|
||
|
||
echo date ('Y/m/d - H:i:s')." - Entité $unit/$nbEtab - Siret $siren $nic\n";
|
||
|
||
if ($opts->stock === null) {
|
||
$ev_EVE=trim($lSiret['insEVE']);
|
||
// Conversion de sirene4 en sirene3
|
||
switch($ev_EVE) {
|
||
case 'CE': // Création établissement
|
||
case 'CC': // Création par le calage
|
||
$ev_EVE=130; // Création de l'établissement
|
||
break;
|
||
case 'CS': // Création siège
|
||
$ev_EVE=110; // Création de l'entreprise
|
||
break;
|
||
case 'SU': // Cessation juridique
|
||
$ev_EVE=410; // Cessation juridique de l'entreprise
|
||
break;
|
||
case 'O': // Sortie du champ de la diffusion commerciale
|
||
$ev_EVE=795; // Personne radiée à sa demande de de la base SIRENE diffusion
|
||
break;
|
||
case 'RI': // Refus d'immatriculation au RCS
|
||
$ev_EVE=810; // Suppression du SIREN suite au refus d'inscription au RCS
|
||
break;
|
||
case 'I': // Entrée dans le champ de la diffusion commerciale
|
||
$ev_EVE=125; // Réactivation de l'entreprise suite à une mise à jour du répertoire SIRENE
|
||
break;
|
||
case 'RE': // Réactivation établissement
|
||
$ev_EVE=145; // Reprise d'activité de l'établissement suite à une mise à jour du répertoire SIRENE
|
||
break;
|
||
case 'RS': // Réactivation siège
|
||
$ev_EVE=120; // Réactivation de l'entreprise
|
||
break;
|
||
case 'SE': // Fermeture (ou désactivation) établissement
|
||
$ev_EVE=430; // Fermeture de l'établissement
|
||
break;
|
||
case 'SS': // Fermeture (ou désactivation) siège
|
||
$ev_EVE=425; // Absence d'activité d'une entreprise suite à une mise à jour au répertoire SIRENE
|
||
break;
|
||
case 'MC': // Modification par le calage
|
||
$ev_EVE=781; // Modification de l'établissement suite à correction d'erreur
|
||
break;
|
||
case 'SC': // Suppression par le calage
|
||
$ev_EVE=435; // Fermeture de l'établissement suite à une mise à jour au répertoire SIRENE
|
||
break;
|
||
case 'ME': // Modification établissement
|
||
$ev_EVE=780; // Modification de l'établissement
|
||
break;
|
||
case 'MS': // Modification siège
|
||
$ev_EVE=610; // Modification d'activité au niveau du SIREN associé à une activation économique par adjonction de moyens de production
|
||
break;
|
||
case 'MU': // Modification entreprise
|
||
$ev_EVE=631; // Modification d'activité du SIREN
|
||
break;
|
||
case 'MTDE': // Modification établissement départ (transfert)
|
||
case 'MTAE': // Modification établissement arrivée (transfert)
|
||
case 'MTDS': // Modification siège départ (transfert)
|
||
case 'MTAS': // Modification siège arrivée (transfert)
|
||
$ev_EVE=540; // Modification de l'établissement d'arrivée et modification de l'établissement de départ dans le cadre d'un transfert
|
||
break;
|
||
case 'CTE': // Création établissement (transfert)
|
||
case 'CTS': // Création siège (transfert)
|
||
$ev_EVE=520; // Création de l'établissement d'arrivée et modification de l'établissement de départ dans le cadre d'un transfert
|
||
break;
|
||
case 'STE': // Fermeture établissement (transfert)
|
||
case 'STS': // Fermeture siège (transfert)
|
||
$ev_EVE=530; // Modification de l'établissement d'arrivée et cessation de l'établissement de départ dans le cadre d'un transfert
|
||
break;
|
||
default:
|
||
$ev_EVE=substr($ev_EVE,0,3);
|
||
break;
|
||
}
|
||
$ev_DATEVE=$lSiret['insDATEVE'];
|
||
$ev_TYPETAB=$lSiret['insTYPETAB'];
|
||
$ev_DESTINAT=$lSiret['insDESTINAT'];
|
||
switch($ev_EVE*1) {
|
||
case 410:
|
||
case 420:
|
||
case 425:
|
||
$ev_DATEFEREN=substr(strtr($ev_DATEVE,array('-'=>'',':'=>'')),0,8);
|
||
break;
|
||
}
|
||
$ev_SIRETLIE=$lSiret['insSIRETPS']*1;
|
||
if ($ev_SIRETLIE<1000) {
|
||
$ev_SIRETLIE=$lSiret['insSIRETASS']*1;
|
||
if ($ev_SIRETLIE<1000) $ev_SIRETLIETYPE='';
|
||
else $ev_SIRETLIETYPE='A';
|
||
} else
|
||
$ev_SIRETLIETYPE='P';
|
||
$ev_MNICSIEGE=$lSiret['insMNICSIEGE'];
|
||
$ev_MNOMEN=$lSiret['insMNOMEN'];
|
||
$ev_MCJ=$lSiret['insMCJ'];
|
||
$ev_MAPEN=$lSiret['insMAPEN'];
|
||
$ev_MENSEIGNE=$lSiret['insMENSEIGNE'];
|
||
$ev_MAPET=$lSiret['insMAPET'];
|
||
$ev_MADRESSE=$lSiret['insMADRESSE'];
|
||
$ev_MAUXILT=$lSiret['insMAUXILT'];
|
||
$ev_MSIGLE=$lSiret['insMSIGLE'];
|
||
$ev_MEXPLEN=$lSiret['insMEXPLEN'];
|
||
$ev_MEXPLET=$lSiret['insMEXPLET'];
|
||
$ev_DREACTEN=$lSiret['insDREACTEN'];
|
||
}
|
||
|
||
$tmp = $iDb->select('jo.etablissements_act', 'bilType, bilAnnee, bilTca, bilFL', "siren=$siren LIMIT 0,1", false, MYSQL_ASSOC, false);
|
||
if (count($tmp)>0) {
|
||
$tcaSED=$tmp[0]['bilTca'];
|
||
$tcaSEDtype=$tmp[0]['bilType'];
|
||
$tcaSEDannee=$tmp[0]['bilAnnee'];
|
||
$tcaSEDmt=$tmp[0]['bilFL'];
|
||
} else {
|
||
$tcaSED=' ';
|
||
$tcaSEDtype='I';
|
||
$tcaSEDannee='0000';
|
||
$tcaSEDmt=0;
|
||
}
|
||
|
||
// @todo : Forcage pour idclient=3 nimes metropole !!!
|
||
if ($prestaId=='DIFINSPRDFTSA6CMONIMESMETRO' && $tcaSED<>' ') $a['TrancheCA']=$tcaSED;
|
||
|
||
$tabRnvp=$iRnvp->getAdresseRnvpSource(2, $a['SourceId']);
|
||
$codeRnvp=$tabRnvp['CQAdrRnvp']*1;
|
||
if ($codeRnvp>0) {
|
||
$L1rnvp=strtr($tabRnvp['L1rnvp'],'/*',' ');
|
||
$L2rnvp=$tabRnvp['L2rnvp'];
|
||
$L3rnvp=$tabRnvp['L3rnvp'];
|
||
$L4rnvp=$tabRnvp['L4rnvp'];
|
||
$L5rnvp=$tabRnvp['L5rnvp'];
|
||
$L6rnvp=$tabRnvp['L6rnvp'];
|
||
$L7rnvp=$tabRnvp['L7rnvp'];
|
||
} elseif (trim($a['L1_NOMEN'])<>'' && trim($a['L4_VOIE'])<>'' && trim($a['L6_POST'])<>'') {
|
||
// On prend l'adresse RNVP origine INSEE (Syracuse)
|
||
$L1rnvp=strtr($a['L1_NOMEN'],'/*',' ');
|
||
$L2rnvp=$a['L2_COMP'];
|
||
$L3rnvp=$a['L3_CADR'];
|
||
$L4rnvp=$a['L4_VOIE'];
|
||
$L5rnvp=$a['L5_DISP'];
|
||
$L6rnvp=$a['L6_POST'];
|
||
$L7rnvp=$a['L7_ETRG'];
|
||
} else {
|
||
// Historique Insee Notice 80
|
||
$L1rnvp=strtr($c['L1_NOM'],'/*',' ');
|
||
$L2rnvp=$c['L2_NOM2'];
|
||
$L3rnvp=$c['L3_ADRCOMP'];
|
||
$L4rnvp=$c['L4_VOIE'];
|
||
$L5rnvp=$c['L5_DISTSP'];
|
||
$L6rnvp=$c['L6_POST'];
|
||
$L7rnvp=$c['L7_PAYS'];
|
||
}
|
||
|
||
// 1 (3) : Obligatoire CODE_ENTETE Ligne de description structurée de l'identité
|
||
$str = initstr(200, 3) .
|
||
// 4 (10) : Obligatoire ID Numéro unique d'identification interne d'un établissement S&D
|
||
initstr($a['SourceId'], 10 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Obligatoire SIREN Siren de l'entreprise
|
||
initstr($siren, 9 , '0', ALIGN_RIGHT) .
|
||
// 14 (5) : Obligatoire NIC Nic de l'établissement
|
||
initstr($nic, 5 , '0', ALIGN_RIGHT) .
|
||
// 14 (3) : Obligatoire SOURCE Source de la fiche d'identité
|
||
initstr($a['Source'], 3 , '0', ALIGN_RIGHT) .
|
||
// 14 (1) : Obligatoire SIRETVALIDE Siren/siret valide
|
||
initstr($iInsee->valideSiren($siren,$nic), 1 , '0', ALIGN_RIGHT) .
|
||
// 14 (10) : Facultatif NUMRCS Numéro de Registre du Commerce et des Sociétés
|
||
initstr($a['numRC'], 10 ) .
|
||
// 14 (6) : Facultatif TRIBUNAL Identifiant du Tribunal
|
||
initstr($a['Tribunal'], 6 ) .
|
||
// 14 (9) : Obligatoire DATEMAJ Date de la dernière mise à jour dans la base S&D
|
||
initstr(str_replace('-', '', $a['dateMajIdentite']), 8 , '0', ALIGN_RIGHT) . // @todo : Erreur date 20150730 vs 20150803 ?
|
||
// 14 (9) : Obligatoire ACTIF Établissement juridiquement actif
|
||
initstr($a['Actif'], 1 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Obligatoire ACTIFECO Établissement économiquement actif
|
||
initstr($a['ActifEco'], 1 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Obligatoire SITJUR Situation Juridique de l'entreprise
|
||
initstr($a['SituationJuridique'], 2 ) .
|
||
// 14 (9) : Facultatif EVE Dernier événement Insee recensé
|
||
initstr($ev_EVE, 3 ) .
|
||
// 14 (9) : Facultatif DATEVE Date du dernier événement Insee recensé
|
||
initstr(str_replace('-','', $a['DateMajINSEE']), 8 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif TYPETAB Type d'établissement concerné par l'événement
|
||
initstr($ev_TYPETAB, 2 ) .
|
||
// 14 (9) : Obligatoire SIEGE Établissement siège, secondaire ou principal
|
||
initstr($a['Siege'], 1 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Obligatoire NOM Raison Sociale
|
||
initstr($a['Nom'], 160 ) . // @todo : pas de raison sociale sur certaines entités
|
||
// 14 (9) : Facultatif NOMCOM Nom commercial
|
||
initstr($a['NomCommercial'], 160 ) .
|
||
// 14 (9) : Facultatif ENSEIGNE Enseigne de l'établissement
|
||
initstr($a['Enseigne'], 80 ) .
|
||
// 14 (9) : Facultatif SIGLE sigle de l'entreprise
|
||
initstr($a['Sigle'], 40 ) .
|
||
// 14 (9) : Facultatif ADR_NUMVOIE Numéro dans la voie
|
||
initstr($a['AdresseNum'], 4 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif ADR_BTQ Indicateur de répétition (Bis, Ter, etc...)
|
||
initstr($a['AdresseBtq'], 1 ) .
|
||
// 14 (9) : Facultatif ADR_TYPVOIE Type de voie
|
||
initstr($a['AdresseVoie'], 4 ) .
|
||
// 14 (9) : Obligatoire ADR_LIBVOIE Libellé de la voie
|
||
initstr($a['AdresseRue'], 32 ) .
|
||
// 14 (9) : Obligatoire ADR_LIBCOM Commune
|
||
initstr($a['Ville'], 32 ) .
|
||
// 14 (9) : Obligatoire ADR_CP Code postal
|
||
initstr($a['CP'], 5 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif ADR_COMP Complément d'adresse
|
||
initstr($a['Adresse2'], 38 ) .
|
||
// 14 (9) : Facultatif ADR_DISTSP Distribution spéciale
|
||
initstr('', 38 ) .
|
||
// 14 (9) : Facultatif PAYS Pays
|
||
initstr($a['Pays'], 38 ) .
|
||
// 14 (9) : Facultatif PAYSISO2 Code Pays au format ISO2
|
||
initstr($a['PaysIso2'], 2 ) .
|
||
// 14 (9) : Obligatoire ADR_DEP Département de l'établissement
|
||
initstr($a['Dept'], 2 ) .
|
||
// 14 (9) : Obligatoire ADR_COM Code commune de l'établissement
|
||
initstr($a['codeCommune'], 3 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif CODEVOIE Code voie de l'établissement
|
||
initstr(str_replace(' ', '', $a['Rivoli']), 5 ) .
|
||
// 14 (9) : Facultatif CODEIRIS Code Iris de l'établissement
|
||
initstr($a['codIris'], 4 ) .
|
||
// 14 (9) : Facultatif CODEILOT Code Ilot de l'établissement
|
||
initstr('', 5 ) .
|
||
// 14 (9) : Facultatif ADRESSEDOM Indicateur d'adresse de domiciliation
|
||
initstr($a['AdresseDom'], 1 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif TEL Numéro de téléphone
|
||
initstr($a['Tel'], 15 ) . // @todo : Différence dans les téléphones ou absent
|
||
// 14 (9) : Facultatif FAX Numéro de télécopie
|
||
initstr($a['Fax'], 15 ) .
|
||
// 14 (9) : Facultatif WEB Site Web
|
||
initstr($a['Web'], 80 ) .
|
||
// 14 (9) : Facultatif MAIL Adresse Email de contact générique
|
||
initstr($a['Mail'], 80 ) . // @todo : Absence email
|
||
// 14 (9) : Facultatif AUXILT Auxiliarité de l'activité de l'établissement
|
||
initstr($a['Auxiliaire'], 1 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif SAISONAT Saisonnalité de l'établissement
|
||
initstr($a['Saisonnalite'], 1 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif ACTIVNAT Nature de l'activité de l'établissement
|
||
initstr($a['NatureActivite'], 2 , '0', ALIGN_RIGHT) .
|
||
// P 922 - L 2 : Facultatif ORIGINE Origine de la création de l'établissement
|
||
initstr($a['OrigineCreation'], 2 ) . // @todo : aberrant 2 cas
|
||
// 14 (9) : Facultatif TYPEXPLOIT Type d'exploitation
|
||
initstr($a['TypeExploitation'], 2 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif LIEUACT Lieu de l'activité de l'établissement
|
||
initstr($a['LIEUACT'], 2 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif ACTISURF Type de magasin
|
||
initstr($a['ACTISURF'], 2 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif PRODPART Participation particulière à la production de l'établissement
|
||
initstr($a['PRODPART'], 1 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif ARRONET Arrondissement de l'établissement
|
||
initstr($b['insARRONET'], 2 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif CTONET Canton
|
||
initstr($b['insCTONET'], 3 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif TCD Tranche de commune détaillée
|
||
initstr($b['insTCD'], 2 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif ZEMET Zone d'emploi
|
||
initstr($b['insZEMET'], 2 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif DU Département de l'unité urbaine de localisation
|
||
initstr($b['insDU'], 2 ) .
|
||
// 14 (9) : Facultatif TU Taille de l'unité urbaine
|
||
initstr($b['insTU'], 1 ) .
|
||
// 14 (9) : Facultatif UU Numéro de l'untié urbaine
|
||
initstr($b['insUU'], 2 ) .
|
||
// 14 (9) : Facultatif DCRET Date de création de l'établissement
|
||
initstr(str_replace('-', '', $a['DateCreaEt']), 8 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Obligatoire APE_ETAB Code activité dans la NAF rév2 de l'établissement
|
||
initstr($a['NafEtab'], 5 ) .
|
||
// 14 (9) : Facultatif NACE_ETAB Code activité NACE de l'établissement
|
||
initstr($a['NaceEtab'], 5 ) .
|
||
// 14 (9) : Facultatif DAPET Année de validité de l'activité principale de l'établissement
|
||
initstr(0, 4 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif EFF_ET Effectif de l'établissement
|
||
initstr($a['EffectifEtab'], 7 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif TEFF_ET Tranche d'effectif de l'établissement
|
||
initstr($a['EffEtTr'], 2 ) .
|
||
// 14 (9) : Facultatif DEFET Année de mise à jour de l'effectif établissement
|
||
initstr($a['AnneeEffEt'], 4 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif MODET Modalité de l'activité pricipale de l'établissement
|
||
initstr('', 1 ) .
|
||
// 14 (9) : Facultatif EXPLET Etablissement exploitant tout ou partie des moyens de production
|
||
initstr($a['EXPLET'], 1 ) .
|
||
// 14 (9) : Facultatif RPET Région de localisation de l'établissement
|
||
initstr($b['insRPET'], 2 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif DREACTET Date de réactivation de l'établissement
|
||
initstr(str_replace('-','',0), 8 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif DATEFERET Date de fermeture de l'établissement
|
||
initstr(str_replace('-','',0), 8 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif EAEANT Année de validité des rubriques de niveau Etab provenant des EAE*
|
||
initstr($b['insEAEANT'], 4 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif EAEAPET Activité principale de l'établissement issue des EAE
|
||
initstr($b['insEAEAPET'], 5 ) .
|
||
// 14 (9) : Facultatif EAESEC1T Activité secondaire de l'établissement issue des EAE
|
||
initstr($b['insEAESEC1T'], 5 ) .
|
||
// 14 (9) : Facultatif EAESEC2T Autre activité secondaire de l'établissement issue des EAE
|
||
initstr($b['insEAESEC2T'], 5 ) .
|
||
// 14 (9) : Facultatif DCREN Date de création de l'entreprise
|
||
initstr(str_replace('-','',$a['DateCreaEn']), 8 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Obligatoire APE_ENT Code activité dans la NAF rév2 de l'entreprise
|
||
initstr($a['NafEnt'], 5 ) .
|
||
// 14 (9) : Facultatif NACE_ENT Code activité NACE de l'entreprise
|
||
initstr($a['NaceEnt'], 5 ) .
|
||
// 14 (9) : Facultatif DAPEN Année de validité de l'activité principale de l'entreprise
|
||
initstr(0, 4 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif EFF_ENT Effectif de l'entreprise
|
||
initstr($a['Effectif'], 7 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif TEFF_ENT Tranche d'effectif de l'entreprise
|
||
initstr($a['EffEnTr'], 2 ) .
|
||
// 14 (9) : Facultatif DEFEN Année de mise à jour de l'effectif entreprise
|
||
initstr($a['AnneeEffEn'], 4 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif MODEN Modalité de l'activité pricipale de l'entreprise
|
||
initstr($a['MODEN'], 1 ) .
|
||
// 14 (9) : Facultatif EXPLEN Entreprise exploitant tout ou partie des moyens de production
|
||
initstr($a['EXPLEN'], 1 ) .
|
||
// 14 (9) : Facultatif RPEN Région de localisation du siège de l'entreprise
|
||
initstr($b['insRPEN'], 2 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif DREACTEN Date de réactivation de l'entreprise
|
||
initstr(str_replace('-','',$ev_DREACTEN), 8 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif DATEFEREN Date de fermeture de l'entreprise
|
||
initstr(str_replace('-','',$ev_DATEFEREN), 8 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif DATEIMMAT Date d'immatriculation de l'entreprise au RCS
|
||
initstr(str_replace('-','',$a['dateImmat']),8 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif DATERAD Date de radiation de l'entreprise du RCS
|
||
initstr(str_replace('-','',$a['dateRad']), 8 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif CAPITAL Montant du capital de l'entreprise
|
||
initstr($a['Capital'], 15 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif CAPITALTYPE Type de capital
|
||
initstr($a['CapitalType'], 1 ) .
|
||
// 14 (9) : Facultatif CAPITALDEV Devise du capital
|
||
initstr($a['CapitalDev'], 3 ) .
|
||
// P 1109 - L 4 : Obligatoire, CJ Catégorie Juridique de l'entreprise
|
||
initstr($a['FJ'], 4 , '0', ALIGN_RIGHT) . // @todo non definie
|
||
// 14 (9) : Facultatif CIVILITE Civilité de l'entreprise si Personne Physique
|
||
initstr($a['Civilite'], 1 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif NBETAB Nombre d'établissements actifs de l'entreprise
|
||
initstr($a['NbEtab'], 4 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif TCA Tranche de chiffre d'affaire
|
||
initstr($a['TrancheCA'], 1 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif TCAEXP Tranche de chiffre d'affaire à l'export
|
||
initstr($a['TrancheCAexp'], 1 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif APRM Activité principale au registre des métiers
|
||
initstr($a['APRM'], 6 ) .
|
||
// 14 (9) : Facultatif MONOREG Mono-régionalité de l'entreprise
|
||
initstr($a['MONOREG'], 1 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif REGIMP Principale région d'implantation de l'entreprise
|
||
initstr($a['REGIMP'], 2 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif MONOACT Mono-activité de l'entreprise
|
||
initstr($a['MONOACT'], 1 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif NICSIEGE Nic de l'établissement siège
|
||
initstr(substr($a['SiretSiege'],-5), 5 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif RECME Répertoire des Entreprises Contrôlées Majoritairement par l'État
|
||
initstr($a['RECME'], 1 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif SIRETLIE Siret lié : prédécesseur, successeur, doublon, autre
|
||
initstr($ev_SIRETLIE, 14 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif SIRETLIETYPE Type de sitet lié
|
||
initstr($ev_SIRETLIETYPE, 1) .
|
||
// 1151 (5) : Facultatif NICPREC Nic de l'établissement prédécesseur (dans le cadre d'un transfert)
|
||
initstr($a['AutreSiret']['pre']['nic'], 5 , '0', ALIGN_RIGHT) . // @todo non definie
|
||
// 14 (9) : Facultatif NICSUIV Nic de l'établissement successeur (dans le cadre d'un transfert)
|
||
initstr($a['AutreSiret']['suc']['nic'], 5 , '0', ALIGN_RIGHT) . // @todo non definie
|
||
// 14 (9) : Facultatif insDESTINAT Destination Insee
|
||
initstr($ev_DESTINAT, 2 ) .
|
||
// 14 (9) : Facultatif insDEPCOMEN Code commune Insee du siège de l'entreprise
|
||
initstr($b['insDEPCOMEN'], 5 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif insMNICSIEGE Indicateur de MAJ du NIC SIEGE
|
||
initstr($ev_MNICSIEGE, 1 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif insMNOMEN Indicateur de MAJ de la Raison Sociale
|
||
initstr($ev_MNOMEN, 1 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif insMCJ Indicateur de MAJ de la Forme Juridique
|
||
initstr($ev_MCJ, 1 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif insMAPEN Indicateur de MAJ du NAF entreprise
|
||
initstr($ev_MAPEN, 1 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif insMENSEIGNE Indicateur de MAJ de l'ENSEIGNE
|
||
initstr($ev_MENSEIGNE, 1 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif insMAPET Indicateur de MAJ du NAF établissement
|
||
initstr($ev_MAPET, 1 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif insMADRESSE Indicateur de MAJ de l'ADRESSE de l'établissement
|
||
initstr($ev_MADRESSE, 1 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif insMAUXILT Indicateur de MAJ de l'AUXILIARITE
|
||
initstr($ev_MAUXILT, 1 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif insMSIGLE Indicateur de MAJ du SIGLE
|
||
initstr($ev_MSIGLE, 1 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif insMEXPLEN Indicateur de MAJ du caractère EXPLOITANT entrep
|
||
initstr($ev_MEXPLEN, 1 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif insMEXPLET Indicateur de MAJ du caractère EXPLOITANT étab
|
||
initstr($ev_MEXPLET, 1 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif ADR_RNVP Type de Prestation RNVP si RNVP
|
||
initstr($codeRnvp, 1 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif L1_nomen Ligne 1 : Nom de l'entreprise
|
||
initstr($L1rnvp, 38 ) .
|
||
// 14 (9) : Facultatif L2_COMP Ligne 2 : Complément de nom
|
||
initstr($L2rnvp, 38 ) .
|
||
// 14 (9) : Facultatif L3_CADR Ligne 3 : Complément d'adresse
|
||
initstr($L3rnvp, 38 ) .
|
||
// 14 (9) : Facultatif L4_VOIE Ligne 4 : Adresse
|
||
initstr($L4rnvp, 38 ) .
|
||
// 14 (9) : Facultatif L5_DISP Ligne 5 : Distribution spéciale
|
||
initstr($L5rnvp, 38 ) .
|
||
// 14 (9) : Facultatif L6_POST Ligne 6 : Code Postal, commune, etc..
|
||
initstr($L6rnvp, 38 ) .
|
||
initstr($L7rnvp, 38 ) .
|
||
// 14 (9) : Facultatif EAEANN Année de validité des rubriques de niveau ENTREP provenant des EAE*
|
||
initstr($b['insEAEANN'], 4 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif EAEAPEN Activité principale de l'entreprise issue des EAE
|
||
initstr($b['insEAEAPEN'], 5 ) .
|
||
// 14 (9) : Facultatif inseaesec1n Activité secondaire n°1 de l'entreprise issue des EAE
|
||
initstr($b['insEAESEC1N'], 5 ) .
|
||
// 14 (9) : Facultatif inseaesec2n Activité secondaire n°2 de l'entreprise issue des EAE
|
||
initstr($b['insEAESEC2N'], 5 ) .
|
||
// 14 (9) : Facultatif inseaesec3n Activité secondaire n°3 de l'entreprise issue des EAE
|
||
initstr($b['insEAESEC3N'], 5 ) .
|
||
// 14 (9) : Facultatif inseaesec4n Activité secondaire n°4 de l'entreprise issue des EAE
|
||
initstr($b['insEAESEC4N'], 5 ) .
|
||
// P 1475 - L 12 : Facultatif GPSX Latitude en ° et décimales de ° (format WGS1984)
|
||
initstr($a['GeoLat'], 12 , ' ', ALIGN_RIGHT) . // @todo : format
|
||
// 14 (9) : Facultatif GPSY Longitude en ° et décimales de ° (format WGS1984)
|
||
initstr($a['GeoLon'], 12 , ' ', ALIGN_RIGHT) . // @todo : format
|
||
// P 1499 - L 1 : Facultatif GPSP Niveau de précision du géocodage
|
||
initstr($a['GeoPrecis'], 1 , '0', ALIGN_RIGHT) . // @todo : format
|
||
// 14 (9) : Facultatif ZUS Identifiant de la Zone Urbaine Sensible
|
||
initstr($a['GeoInfos']['NZUS'], 10 ) .
|
||
// 14 (9) : Facultatif ZRU Identifiant de la Zone de Rénovation Urbaine
|
||
initstr($a['GeoInfos']['NZRU'], 10 ) .
|
||
// 14 (9) : Facultatif ZFU Identifiant de la Zone Franche Urbaine
|
||
initstr($a['GeoInfos']['NZFU'], 10 ) .
|
||
// 14 (9) : Facultatif CUCS Identifiant de la Zone Contrat Urbain de Cohésion Social
|
||
initstr($a['GeoInfos']['NCUCS'],10 ) .
|
||
// 14 (9) : Facultatif AFR Identifiant de la Zone AFR
|
||
initstr($a['GeoInfos']['NAFR'], 10 ) .
|
||
// 14 (9) : Facultatif ZRR Identifiant de la ZRR
|
||
initstr($a['GeoInfos']['NZRR'], 10 ) .
|
||
// P 160 - L 15 Facultatif TVA Numéro de TVA Intracommunataire
|
||
initstr($a['TvaNumero'], 15 ) .
|
||
// P 1575 - L 1 : Facultatif TVAVALIDE Numéro de TVA validé
|
||
initstr($a['TvaAttribue'], 1 , '0', ALIGN_RIGHT) .
|
||
// P 1576 - L 1 : Facultatif ANCIENSIEGE Ancien siège
|
||
initstr($a['AncienSiege'], 1 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif CODEISIN Code ISIN de l'entreprise si cotation en bourse
|
||
initstr($a['Isin'], 12 ) .
|
||
// 14 (9) : Facultatif PPDIR1NOM Nom du principal dirigeant
|
||
initstr($a['dir1Nom'], 40 ) .
|
||
|
||
// 14 (9) : Facultatif PPDIR1PRENOM Prénom du principal dirigeant
|
||
initstr(preg_replace('/,?\s.*$/','',$a['dir1Prenom']), 30 ) .
|
||
// 14 (9) : Facultatif PPDIR1NNAISS Nom de naissance du ppl dirigeant
|
||
initstr($a['dir1NomUsage'], 40 ) .
|
||
// 14 (9) : Facultatif PPDIR1DNAISS Date de naissance
|
||
initstr(str_replace('-','',$a['dir1DateNaiss']), 8 , '0', ALIGN_RIGHT).
|
||
// 14 (9) : Facultatif PPDIR1LNAISS Lieu de Naissance
|
||
initstr($a['dir1LieuNaiss'], 35 ) .
|
||
// P 1742 - L 4 : Facultatif PPDIR1FONC Code Fonction
|
||
initstr($a['dir1Code'], 4 , '0', ALIGN_RIGHT) . // @todo : Pas les mêmes code - correction dans lib
|
||
// 14 (9) : Facultatif PPDIR1MAJ Date de MAJ du ppl dirigeant
|
||
initstr(str_replace('-', '', $a['dir1DateFct']), 8 , '0', ALIGN_RIGHT) .
|
||
|
||
// 14 (9) : Facultatif PPDIR2NOM Nom du seconde principal dirigeant
|
||
initstr($a['dir2Nom'], 40 ) .
|
||
// 14 (9) : Facultatif PPDIR2PRENOM Prénom du 2ème principal dirigeant
|
||
initstr(preg_replace('/,?\s.*$/', '', $a['dir2Prenom']), 30 ) .
|
||
// 14 (9) : Facultatif PPDIR2NNAISS Nom de naissance du 2ème ppl dirigeant
|
||
initstr($a['dir2NomUsage'], 40 ) .
|
||
// 14 (9) : Facultatif PPDIR2DNAISS Date de naissance du 2ème ppl dirigeant
|
||
initstr(str_replace('-','',$a['dir2DateNaiss']), 8 , '0', ALIGN_RIGHT).
|
||
// 14 (9) : Facultatif PPDIR2LNAISS Lieu de Naissance du 2ème ppl dirigeant
|
||
initstr($a['dir2LieuNaiss'], 35 ) .
|
||
// 14 (9) : Facultatif PPDIR2FONC Code Fonction du 2ème ppl dirigeant
|
||
initstr($a['dir2Code'], 4 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif PPDIR2MAJ Date de MAJ du 2ème ppl dirigeant
|
||
initstr(str_replace('-','', $a['dir2DateFct']), 8 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif BILANCLOT Date de dernière clôture de bilan disponible
|
||
initstr(str_replace('-','', $a['bilanDate']), 8 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif BILANDUREE Durée du dernier exercice disponible
|
||
initstr($a['bilanMois'], 2 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif BILANCA Chiffre d'affaires au dernier bilan disponible
|
||
initstr($tcaSEDmt, 15 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif BILANRES Résultat au dernier bilan disponible
|
||
initstr($a['bilanHN'], 15 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Tranche de CA SED
|
||
initstr($tcaSED, 1 ) .
|
||
// 14 (9) : Type de tranche de CA : (R)éel, (I)nconnu ou (E)stimé
|
||
initstr($tcaSEDtype, 1 ) .
|
||
// 14 (9) : Année du CA
|
||
initstr($tcaSEDannee, 4 ) .
|
||
// 14 (9) : PPDIR1 Genre
|
||
initstr($a['dir1Genre'], 1 ) . // @todo : De temps en temps non délivrés
|
||
// 14 (9) : PPDIR2 Genre
|
||
initstr($a['dir2Genre'], 1 ) . // @todo : De temps en temps non délivrés
|
||
// 14 (9) : Indicateur du champ de publipostage
|
||
initstr($a['IND_PUBLIPO']*1, 1 ) .
|
||
// 14 (9) : Facultatif FILLER1 Zone libre
|
||
initstr(' ', 32 ) ;
|
||
|
||
/*
|
||
AnneeTCA
|
||
CapitalNbActions
|
||
CapitalMtActions
|
||
*/
|
||
// --- Ecriture ligne 200
|
||
if ($opts->debug && mb_strlen($str)>LONGUEUR_LIGNE_SORTIE) {
|
||
echo date('Y-m-d H:i:s')." - Ligne supérieur à LONGUEUR MAX";
|
||
}
|
||
file_put_contents($filepath, initstr($str,LONGUEUR_LIGNE_SORTIE).$OptionEOL, FILE_APPEND);
|
||
$nbLignes++;
|
||
$nbLignes200++;
|
||
|
||
$mBil=new MBilans($siren);
|
||
$tabBilans = $mBil->listeBilans();
|
||
$iBil=0;
|
||
if ($OptionNbBilansMax>0) {
|
||
foreach ($tabBilans as $idxBilan=>$derBilan) {
|
||
$iBil++;
|
||
$t5=microtime(1);
|
||
$p = $mBil->getBilan(WDate::dateT('Ymd','d/m/Y',$derBilan['dateExercice']), $derBilan['typeBilan']);
|
||
$t6=microtime(1);
|
||
$tTime['Bilan']+=$t6-$t5;
|
||
|
||
//print_r($p);
|
||
if ($p['CONSOLIDE']=='S') $numLiasse='2033';
|
||
else $numLiasse='2050';
|
||
$unite=strtoupper($p['MONNAIE_LIV_UNITE']);
|
||
if ($unite=='') $unite='U';
|
||
$nbLignesBil++;
|
||
// 14 (9) : Obligatoire CODE_ENTETE Ligne de description structurée de l'identité
|
||
$strIni = initstr($OptionTypeLigneBilan, 3) .
|
||
// 14 (9) : Obligatoire ID Numéro unique d'identification interne d'un établissement S&D
|
||
initstr($a['SourceId'], 10, '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Obligatoire SIREN Siren de l'entreprise
|
||
initstr($siren, 9, '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Obligatoire NIC Nic de l'établissement
|
||
initstr($nic, 5, '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Obligatoire SOURCE Source de la fiche d'identité
|
||
initstr($a['Source'], 3, '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Obligatoire SIRETVALIDE Siren/siret valide
|
||
initstr($iInsee->valideSiren($siren,$nic), 1 , '0', ALIGN_RIGHT) .
|
||
// 14 (9) : Facultatif NUMRCS Numéro de Registre du Commerce et des Sociétés
|
||
initstr($a['numRC'], 10 ) .
|
||
// 14 (9) : Facultatif TRIBUNAL Identifiant du Tribunal
|
||
initstr($a['Tribunal'], 6 ) .
|
||
// DATEMAJ Date de la dernière mise à jour du bilan dans la base S&D Format AAAAMMJJ
|
||
initstr(str_replace('-','',$p['DATE_FRAICHE_BILAN']), 8, '0', ALIGN_RIGHT) .
|
||
// MILLESIME Année du bilan
|
||
initstr(substr($p['DATE_FRAICHE_BILAN'],0,4), 4, '0', ALIGN_RIGHT) .
|
||
// BILAN_DATE Date de clôture du bilan Format AAAAMMJJ
|
||
initstr(str_replace('-','',$p['DATE_CLOTURE']), 8, '0', ALIGN_RIGHT) .
|
||
// BILAN_DUREE Durée de l'exercice en mois
|
||
initstr($p['DUREE_MOIS'], 2, '0', ALIGN_RIGHT) .
|
||
// BILAN_DATEP Date de clôture du bilan précédent Format AAAAMMJJ
|
||
initstr(str_replace('-','',$p['DATE_CLOTURE_PRE']), 8, '0', ALIGN_RIGHT) .
|
||
// BILAN_DUREEP Durée de l'exercice précédent en mois
|
||
initstr($p['DUREE_MOIS_PRE'], 2, '0', ALIGN_RIGHT) .
|
||
// BILAN_LIASSE Numéro de la première liasse du bilan 2033,2050
|
||
initstr($numLiasse,4) .
|
||
// BILAN_TYPE Type de bilan S=Réel Normal Simplifié, C=Consolidé, N=Réel Normal
|
||
initstr($p['CONSOLIDE'], 1) .
|
||
// BILAN_MONNAIE Code devise de livraison selon la norme ISO 4217 (3 lettres)
|
||
initstr($p['MONNAIE'], 3) .
|
||
// BILAN_MONNAIEO Code devise d'origine du bilan selon la norme ISO 4217*
|
||
initstr($p['MONNAIE_ORI'], 3) .
|
||
// BILAN_UNITE Unité du bilan livré U=en unité de devise, K=en milliers, M=en millions
|
||
initstr($unite, 1);
|
||
|
||
unset($p['SIREN']);
|
||
unset($p['SOURCE']);
|
||
unset($p['devise']);
|
||
unset($p['DATE_FRAICHE_BILAN']);
|
||
unset($p['DATE_CLOTURE']);
|
||
unset($p['DATE_CLOTURE_PRE']);
|
||
unset($p['DUREE_MOIS']);
|
||
unset($p['DUREE_MOIS_PRE']);
|
||
unset($p['MONNAIE']);
|
||
unset($p['CONSOLIDE']);
|
||
unset($p['MONNAIE_ORI']);
|
||
unset($p['MONNAIE_LIV_UNITE']);
|
||
$strIni.=initstr(count($p), 4, '0', ALIGN_RIGHT); // BILAN_NBPOSTES Nombre de postes livrés
|
||
$nbP=0;
|
||
$strP='';
|
||
if ($OptionTypeLigneBilan==400) {
|
||
foreach ($p as $code=>$valeur) {
|
||
$nbP++;
|
||
if ($valeur>=0) $signe='+';
|
||
else $signe='-';
|
||
$strP.= initstr($code, 4).$signe.initstr(abs($valeur), 20, '0', ALIGN_RIGHT);
|
||
if($nbP<76) continue;
|
||
|
||
// --- Ecriture ligne 400
|
||
file_put_contents($filepath, initstr($strIni.$strP,LONGUEUR_LIGNE_SORTIE).$OptionEOL, FILE_APPEND);
|
||
$nbLignes++;
|
||
$nbLignesBil++;
|
||
$nbP=0;$strP='';
|
||
}
|
||
if($nbP<76) { // Ecriture de la dernière ligne sauf s'il y a dejà 76 postes
|
||
// --- Ecriture ligne 400
|
||
file_put_contents($filepath, initstr($strIni.$strP,LONGUEUR_LIGNE_SORTIE).$OptionEOL, FILE_APPEND);
|
||
$nbLignes++;
|
||
$nbLignesBil++;
|
||
}
|
||
} else {
|
||
$uniteMultiple=1;
|
||
switch (strtoupper($unite)) {
|
||
case 'K': $uniteMultiple=1000; break;
|
||
case 'M': $uniteMultiple=1000000; break;
|
||
}
|
||
if ($p['CONSOLIDE']=='S') $tabPostes=$iBilan->bilanSimplifie2Normal($p);
|
||
else $tabPostes=$p;
|
||
|
||
// Chiffre d'affaires - Poste FL au format 2050
|
||
$strP.= @exporteRatio($p['FL']);
|
||
// Chiffre d'affaires Export - Poste FK
|
||
$strP.= @exporteRatio($p['FK']);
|
||
// Valeur Ajoutée - R130 = FL + FM+FN - (FS+FU) - (FT+FV) - (FW-HP-HQ)
|
||
$va=$p['FL'] + $p['FM'] + $p['FN'] - ($p['FS'] + $p['FU']) - ($p['FT'] + $p['FV']) - ($p['FW']-$p['HP']-$p['HQ']);
|
||
$strP.= @exporteRatio($va);
|
||
// Masse salariale - R132 = FY + FZ
|
||
$ms=$p['FY'] + $p['FZ'];
|
||
$strP.= @exporteRatio($ms);
|
||
// EBE - R140 = R130-R132 - FX + FO
|
||
$strP.= @exporteRatio($va-$ms - $p['FX'] + $p['FO']);
|
||
// Personnel extérieur à l'entreprise, Intérim = Poste YU
|
||
$strP.= @exporteRatio($p['YU']);
|
||
// Sous-traitance
|
||
$strP.= @exporteRatio($p['YT']);
|
||
// Effectif
|
||
$strP.= @exporteRatio($p['YP']);
|
||
// Capital - Poste DA
|
||
$strP.= @exporteRatio($p['DA']);
|
||
// Montant des Immo. Corp. Terrains Brut Poste AN
|
||
$strP.= @exporteRatio($p['AN']);
|
||
// Montant des Immo. Corp. Constructions Poste AP
|
||
$strP.= @exporteRatio($p['AP']);
|
||
// Montant des Installations Techniques, matériel et outillage industriels Poste AR
|
||
$strP.= @exporteRatio($p['AR']);
|
||
// Montant des Immo. Corp. Brut =AN+AP+AR+AT+AV+AX
|
||
$strP.= @exporteRatio($p['AN'] + $p['AP'] + $p['AR'] + $p['AT'] + $p['AV'] + $p['AX']);
|
||
// Montant des Immo. Corp. Net =AN-AO + AP-AQ + AR-AS + AT-AU + AV-AW + AX-AY
|
||
$strP.= @exporteRatio($p['AN']-$p['AO'] + $p['AP']-$p['AQ'] + $p['AR']-$p['AS'] + $p['AT']-$p['AU'] + $p['AV']-$p['AW'] + $p['AX']-$p['AY']);
|
||
// Montant des Immo. Incorp. Brut =AB+AD+AF+AH+AJ+AL
|
||
$strP.= @exporteRatio($p['AB'] + $p['AD'] + $p['AF'] + $p['AH'] + $p['AJ'] + $p['AL']);
|
||
// Montant des Immo. Incorp. Net =AB-AC + AD-AE + AF-AG + AH-AI + AJ-AK + AL-AM
|
||
$strP.= @exporteRatio($p['AB']-$p['AC'] + $p['AD']-$p['AE'] + $p['AF']-$p['AG'] + $p['AH']-$p['AI'] + $p['AJ']-$p['AK'] + $p['AL']-$p['AM']);
|
||
// Montant des Taxe professionnelle Poste YW
|
||
$strP.= @exporteRatio($p['YW']);
|
||
|
||
// --- Ecriture ligne
|
||
file_put_contents($filepath, initstr($strIni.$strP,LONGUEUR_LIGNE_SORTIE).$OptionEOL, FILE_APPEND);
|
||
$nbLignes++;
|
||
$nbLignesBil++;
|
||
$strP='';
|
||
}
|
||
if ($iBil==$OptionNbBilansMax) break;
|
||
}
|
||
}
|
||
|
||
if (empty($opts->debug)) {
|
||
$suiviM->update(array(
|
||
'unitIncrement' => $unit,
|
||
'unitExec' => date('YmdHis'),
|
||
), 'id='.$suiviId);
|
||
}
|
||
echo date ('Y/m/d - H:i:s')." - Fin ligne $unit/$nbEtab\n";
|
||
}
|
||
|
||
// --- Fin de ligne du fichier
|
||
$nbLignes++;
|
||
$dateFin=date('YmdHis');
|
||
$str= initstr('999', 3, '0', ALIGN_RIGHT) . // Type de ligne
|
||
initstr($dateFin, 14) . // Date & Heure de fin génération du fichier
|
||
initstr($OptionClientNumTourFichier, 10, '0', ALIGN_RIGHT) . // Numéro de tour du fichier pour le client
|
||
initstr($prestaId, 36) . // Identifiant Client
|
||
initstr($OptionTypePrestation, 32) . // Type de prestation
|
||
initstr($nbLignes, 10, '0', ALIGN_RIGHT) . // Nombre de lignes Total du fichier
|
||
'';
|
||
|
||
// Pas de fin de ligne sur la dernière ligne
|
||
file_put_contents($filepath, initstr($str,LONGUEUR_LIGNE_SORTIE), FILE_APPEND);
|
||
|
||
$tabProduction[$prestaId]['dateFin']=$dateFin;
|
||
$duree=round(microtime(true)-$timeDeb,3);
|
||
$dureeD=floor($duree/86400);
|
||
$reste=$duree%86400;
|
||
$dureeH=floor($reste/3600);
|
||
$reste=$reste%3600;
|
||
$dureeM=floor($reste/60);
|
||
$dureeS=$reste%60;
|
||
|
||
$tabProduction[$prestaId]['duree']=$duree.' secondes';
|
||
if ($dureeD==0 && $dureeH==0) $tabProduction[$prestaId]['dureeLisible']="$dureeM m. $dureeS s.";
|
||
elseif ($dureeD==0) $tabProduction[$prestaId]['dureeLisible']="$dureeH h. $dureeM m. $dureeS s.";
|
||
else $tabProduction[$prestaId]['dureeLisible']="$dureeD j. $dureeH h. $dureeM m. $dureeS s.";
|
||
$tabProduction[$prestaId]['nbLignes']=$nbLignes;
|
||
|
||
echo date ('Y/m/d - H:i:s')." - Prestation $prestaId, Client $OptionNomClient : Fichier client terminé.\n";
|
||
|
||
// --- Envoi du fichier produit par mail
|
||
if (!empty($OptionMailTo)) {
|
||
$OptionMailTo.= ',';
|
||
}
|
||
$OptionMailTo.= 'suivi@scores-decisions.com';
|
||
|
||
if ($opts->nomail === null && !empty($OptionMailTo)) {
|
||
$tabAttached = array($filepath);
|
||
$messageInfo="Bonjour,
|
||
|
||
Veuillez trouver le fichier d'établissements Scores & Décisions relatifs à votre abonnement.
|
||
|
||
Bien Cordialement,
|
||
Le service Support.
|
||
|
||
|
||
ATTENTION : Cet email est un message automatique. Merci de ne pas y répondre. Pour toute question nous vous invitons à contacter notre support à l'adresse support@scores-decisions.com.
|
||
|
||
---
|
||
|
||
SCORES & DECISIONS
|
||
Service support
|
||
1, rue de Clairefontaine - 78120 RAMBOUILLET
|
||
tél : 33 (0)1 75 43 80 10
|
||
fax : 33 (0)1 75 43 85 74
|
||
support@scores-decisions.com
|
||
http://www.scores-decisions.com/
|
||
Scores & Décisions est l'acteur nouvelle génération de l'information et de l'évaluation des entreprises
|
||
|
||
Pensez à l'environnement avant d'imprimer ce message !
|
||
Save paper - think before you print";
|
||
|
||
|
||
if(sendMail('production@scores-decisions.com', $OptionMailTo, "Diffusion A6CMO S&D", $messageInfo, '', $tabAttached)) {
|
||
echo date ('Y/m/d - H:i:s')." - Prestation $prestaId, Client $OptionNomClient : Fichier envoyé à ".$OptionMailTo."\n";
|
||
} else {
|
||
echo date ('Y/m/d - H:i:s')." - Prestation $prestaId, Client $OptionNomClient : Erreur lors de l'envoi du fichier à ".$OptionMailTo."\n";
|
||
}
|
||
} else {
|
||
|
||
}
|
||
|
||
if (empty($opts->debug)) {
|
||
$suiviparamM = new Application_Model_Sdv1PrestaOutDetail();
|
||
$suiviparamM->insert(array(
|
||
'execId' => $suiviId,
|
||
'code' => $prestaId,
|
||
'name' => 'fichier',
|
||
'value' => $file,
|
||
));
|
||
|
||
$suiviM->update(array('dateEnd' => date('YmdHis')), 'id='.$suiviId);
|
||
}
|
||
|
||
echo date ('Y/m/d - H:i:s')." - Prestation $prestaId, Client $OptionNomClient : Fin.\n";
|
||
|
||
} // --- Fin boucle presta
|
||
|
||
if ($opts->stock) $strStock="des stocks";
|
||
else $strStock="des fichiers hebdos";
|
||
$messageFinObj="FIN de la diffusion $strStock A6CMO";
|
||
$messageFinMsg=print_r($tabProduction, true);
|
||
$messageFinMsg.=print_r($tTime, true);
|
||
if ($opts->nomail === null) {
|
||
sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com,suivi@scores-decisions.com', $messageFinObj, $messageFinMsg);
|
||
}
|
||
|
||
function exporteRatio($valeur) {
|
||
$signe='+';
|
||
if($valeur<0) $signe='-';
|
||
return ''.$signe.initstr(abs($valeur), 20, '0', ALIGN_RIGHT);
|
||
}
|
||
|