#!/usr/bin/php -c/var/www/batch/config/php_batch_sd.ini 1) { for ($i=1; isset($argv[$i]); $i++) { if (substr($argv[$i],0,1)=='-') { switch (substr($argv[$i],1,1)) { case 'a': $annee=substr($argv[$i],3,strlen($argv[$i])-3); break; case '-': case '?': die($strInfoScript); break; default: die('Option '. $argv[$i] . " inconnue !\n"); break; } } } } $iDb=new WDB('historiques'); $iDb2=new WDB('historiques'); //$iDb2=new WDB('jo'); $iBodacc=new MBodacc(); function genereMultiLigne($typeLigne, $enteteLigne, $chaine, $eol="\r\n", &$nbLignes=0) { $lonLigne=LONGUEUR_LIGNE_SORTIE-90; $str=''; $chaine=preg_replace('/ +/', ' ', strtr($chaine, array("\n"=>' ',"\r"=>' ',";"=>' '))); switch ($typeLigne) { case '102': // Activité déclarée au Bodacc case '103': // Texte rectificatif case '104': // Annonce Bodacc Complète case '105': // Structure dirigeants $tabLigne=str_split($chaine, $lonLigne); foreach ($tabLigne as $i=>$ligne) { $str.=initstr($typeLigne.$enteteLigne.$ligne, LONGUEUR_LIGNE_SORTIE).$eol; $nbLignes++; } break; default: die("ERREUR : Structure de sortie n°$typeLigne non prise en charge !\n"); break; } return $str; } echo date ('Y/m/d - H:i:s')." - Début du traitement diffusion BODACC.\n"; /** On récupère la liste des Adhérents **/ $optionZip='none'; $optionEOL="\r\n"; $tabOptOutput=array(); $dateDernierTraitement=false; $dateDebutPrestation=''.$annee.'0301'; $dateFinPrestation=''.$annee.'1231'; //$dateFinPrestation=''.$annee.'0631'; $clientIdentifiant='CSF_BodaccAB_'.$annee; /** ** On génère la ligne d'entête **/ $fp=fopen(REP_TEMP . $typePrestaton.'_'.$clientIdentifiant.'_'.DATETIME.'.txt', 'w'); if ($fp==false) die('ERREUR : Impossible de créer le fichier !'); error_reporting(E_ALL ^ E_NOTICE); $str= initstr('001', 3, '0', ALIGN_RIGHT) . // Type de ligne initstr(date('YmdHis'), 14) . // Date de génération du fichier initstr(0, 10, '0', ALIGN_RIGHT) . // Numéro de tour du fichier pour le client initstr($clientIdentifiant, 36) . // Identifiant Client initstr($typePrestaton, 32) . // Type de prestation initstr(VERSION_FICHIER_BODACC, 4) . // Type de prestation initstr(FILLER, 1901) . // FILLER ''; fwrite($fp, initstr($str,LONGUEUR_LIGNE_SORTIE).$optionEOL); $nbLignes=1; /** ** On génère les lignes de détail **/ $strRubrique=''; $tabOptOutput[104]=true; $tabNaf=array(); $versionEvenClient=11; $tables='entrep e, texte x, annonce_hiz z'; $fields='e.ANBASE, e.NOBOD, e.CODTRI, e.JAL, e.DATE, e.CODEVE, e.SSCODE, e.DEPT, e.NOANN, e.ROLE, e.SIREN, e.E1GSIR, e.E1GNIC, x.annonceNum, x.annonceTxt, E1TNOM, E1TSIG, E1ENRU, E1EBTQ, E1ETVI, E1EVOI, E1ECPI, E1EVIL, z.DATEZ, z.DTEFFZ, z.RUBODZ'; //d.id, d.siren, sirenValide, Bodacc_Num, Bodacc_Date_Parution, Num_Annonce, Rubrique_Bodacc, Rubrique, typeAnnonce, corrNum_Annonce, corrBodacc_Date_Parution, corrPage, corrNumParution, corrTexteRectificatif, RC, d.raisonSociale, nomCommercial, d.enseigne, nationalite, FJ, Capital, CapitalDev, adresse, adrNum, adrIndRep, adrTypVoie, adrLibVoie, adrComp1, adrComp2, codePostal, d.ville, adresseSiege, adrSiegeNum, adrSiegeIndRep, adrSiegeTypVoie, adrSiegeLibVoie, adrSiegeComp1, adrSiegeComp2, codePostalSiege, villeSiege, administration, activite, typeEven, commentaires, dateEffet, publication, publicationNom, publicationDate, fusion, dateDebutActivite, dateCessationActivite, dateCessationPaiement, dateJugement, Numero, VenteMt, VenteDev, bienAcqui, Mandataire, mandNom, mandRepr, mandAdresse, mandCP, mandVille, JugeCommissaire, jugeCommissaireSuppleant, ReprCreanciers, creaNom, creaRepr, creaAdresse, creaCP, creaVille, administrateur, admNom, admRepr, admAdresse, admCP, admVille, oppositions, oppoNom, oppoRepr, oppoAdresse, oppoCP, oppoVille, perimetre, dateFinDepotCreances, delaiDepotCreances, dateFinObservation, FinObservationBodacc, d.dateInsert'; $where="e.E1GSIR>10000 AND e.DATE BETWEEN $dateDebutPrestation AND $dateFinPrestation AND e.ANBASE=x.annonceNum AND e.ANBASE=z.ANBAZ AND E1GSTB=1"; echo date ('Y/m/d - H:i:s')." - SELECT $fields FROM $tables WHERE $where".EOL; $nbAnnonces=$iDb->select($tables, $fields, $where, true, MYSQL_ASSOC, true); // Gérer la table surveillance echo date ('Y/m/d - H:i:s')." - $nbAnnonces annonces à traiter...".EOL; echo date ('Y/m/d - H:i:s')." - Début de génération du fichier client en version $versionEvenClient...".EOL; $numAnnonceSD=0010000000+(($annee*1)-1995)*3000000; $numPre=-1; while ($annonce=$iDb->fetch(MYSQL_ASSOC)) { if ($annonce['ANBASE']==$numPre) continue; $numPre=$annonce['ANBASE']; if ($annonce['JAL']==1) $Bodacc_Code='A'; elseif ($annonce['JAL']==200) $Bodacc_Code='B'; if ($annonce['CODEVE']<20) $tabEven=array('4999'); elseif ($annonce['CODEVE']<=25) $tabEven=array('5999'); elseif ($annonce['CODEVE']<40) $tabEven=array('2312'); elseif ($annonce['CODEVE']<42) $tabEven=array('6700'); elseif ($annonce['CODEVE']<50) $tabEven=array('2312'); elseif ($annonce['CODEVE']<80) $tabEven=array('1999'); $tabTmp=$iDb2->select('annonce_hinl', 'NUMEZ, DATEZ, DTEFFZ', 'ANBAZ='.$annonce['ANBASE'], false, MYSQL_ASSOC); $dateJ=@$tabTmp[0]['DATEZ']; $tabTmp=$iDb2->select('annonce_hia', 'DATEZ, DTEFFZ, MOVENA, MTVENA', 'ANBAZ='.$annonce['ANBASE'], false, MYSQL_ASSOC); $VenteMt=$tabTmp[0]['MTVENA']*1; $VenteDev=@$tabTmp[0]['MOVENA']; /* $tabRet[$k]=array( 'id'=>-$ann['ANBASE'], 'BodaccCode'=>$Bodacc_Code, 'BodaccNum'=>$ann['NOBOD'], 'NumAnnonce'=>$ann['NOANN'], 'DateParution'=>substr($ann['DATE'],0,4).'-'.substr($ann['DATE'],4,2).'-'.substr($ann['DATE'],6,2), 'Departement'=>$ann['DEPT'], 'Tribunal'=>$ann['triNom'], 'TribunalSiret'=>$ann['triSiret'], 'Rubrique'=>$rub, 'typeAnnonce'=>'Insertion',/** @todo à GERER $ann['SSCODE'], //'texteRectificatif'=>$ann['corrTexteRectificatif'], // 'texteAnnonce'=>$ann['annonceTxt'], 'dateEffet'=>$ann['DATE'], 'dateJugement'=>$ann['DATE'], 'dateInsertionSD'=>'', 'evenements'=>array(array('CodeEven'=>$tabTmp[$ann['CODEVE']],'LibEven'=>$this->iBodacc->getEvenement($tabTmp[$ann['CODEVE']]))), ); if ($idAnnonce<>0) $tabRet[$k]['texteAnnonce']=$ann['NOANN'].' - '.$ann['annonceTxt']; } */ $numInter=0; $inter=array(); if ($annonce['mandNom']<>'' || $annonce['mandCP']<>0) { $inter[$numInter]['type']='M'; // Type d'intervenant A : Mand/Adm/ReprCre/Oppo $inter[$numInter]['SIRET']=0; $inter[$numInter]['Nom']=$annonce['mandNom']; $inter[$numInter]['Repr']=$annonce['mandRepr']; $inter[$numInter]['adrNum']=''; $inter[$numInter]['adrBis']=''; $inter[$numInter]['adrType']=''; $inter[$numInter]['adrLib']=$annonce['mandAdresse']; $inter[$numInter]['CP']=$annonce['mandCP']; $inter[$numInter]['Ville']=$annonce['mandVille']; $inter[$numInter]['Tel']=''; $numInter++; } if ($annonce['creaNom']<>'' || $annonce['creaCP']<>0) { $inter[$numInter]['type']='R'; // Type d'intervenant A : Mand/Adm/ReprCre/Oppo $inter[$numInter]['SIRET']=0; $inter[$numInter]['Nom']=$annonce['creaNom']; $inter[$numInter]['Repr']=$annonce['creaRepr']; $inter[$numInter]['adrNum']=''; $inter[$numInter]['adrBis']=''; $inter[$numInter]['adrType']=''; $inter[$numInter]['adrLib']=$annonce['creaAdresse']; $inter[$numInter]['CP']=$annonce['creaCP']; $inter[$numInter]['Ville']=$annonce['creaVille']; $inter[$numInter]['Tel']=''; $numInter++; } if ($annonce['admNom']<>'' || $annonce['admCP']<>0) { $inter[$numInter]['type']='A'; // Type d'intervenant A : Mand/Adm/ReprCre/Oppo $inter[$numInter]['SIRET']=0; $inter[$numInter]['Nom']=$annonce['admNom']; $inter[$numInter]['Repr']=$annonce['admRepr']; $inter[$numInter]['adrNum']=''; $inter[$numInter]['adrBis']=''; $inter[$numInter]['adrType']=''; $inter[$numInter]['adrLib']=$annonce['admAdresse']; $inter[$numInter]['CP']=$annonce['admCP']; $inter[$numInter]['Ville']=$annonce['admVille']; $inter[$numInter]['Tel']=''; $numInter++; } /* if ($annonce['oppoNom']<>'' || $annonce['oppoCP']<>0) { $inter[$numInter]['type']='O'; // Type d'intervenant A : Mand/Adm/ReprCre/Oppo $inter[$numInter]['SIRET']=0; $inter[$numInter]['Nom']=$annonce['oppoNom']; $inter[$numInter]['Repr']=$annonce['oppoRepr']; $inter[$numInter]['adrNum']=''; $inter[$numInter]['adrBis']=''; $inter[$numInter]['adrType']=''; $inter[$numInter]['adrLib']=$annonce['oppoAdresse']; $inter[$numInter]['CP']=$annonce['oppoCP']; $inter[$numInter]['Ville']=$annonce['oppoVille']; $inter[$numInter]['Tel']=''; $numInter++; }*/ $numAnnonceSD++; $str= initstr('100', 3, '0', ALIGN_RIGHT) . // Type de ligne initstr($numAnnonceSD, 10, '0', ALIGN_RIGHT) . // Numéro unique d'identification interne d'une annonce initstr($annonce['E1GSIR'], 9, '0', ALIGN_RIGHT) . // Siren de l'entreprise concernée par l'annonce initstr(FILLER, 5) . // On garde la place pour le NIC initstr($annonce['NOBOD'], 3, '0', ALIGN_RIGHT) . // Numéro de parution du Bodacc dans l'année initstr($Bodacc_Code, 1) . // Code Bodacc (A, B ou C) initstr($annonce['DATE'], 8) . // Date de parution du Bodacc initstr($annonce['NOANN'], 5, '0', ALIGN_RIGHT) . // Numéro de l'annonce dans le Bodacc initstr($annonce['RUBODZ'], 3, '0') . // Rubrique dans le Bodacc initstr('I', 1) . // Type d'annonce Bodacc : I=Insertion, A=Additif, // R=Rectif, S=Suppression initstr(FILLER, 5, '0', ALIGN_RIGHT) . // Si annonce diff. de I, numéro de l'annonce corrigée initstr(FILLER, 8) . // Si diff. I, date du Bodacc de l'annonce corrigée initstr(FILLER, 6, '0', ALIGN_RIGHT) . // Si diff. I, page du Bodacc de l'annonce corrigée initstr(FILLER, 4, '0', ALIGN_RIGHT) . // Si diff. I, Num parut°/année de annonce corrigée // (ex: 230A, 001B) initstr(FILLER, 18) . // REFERENCE DU CLIENT initstr($annonce['CODTRI'], 6) . initstr(FILLER, 9) . // Numéro de RC (Registre du Commerce) de l'entreprise initstr($annonce['E1TNOM'], 150) . // Raison sociale de l'entreprise initstr(FILLER, 100) . // Nom commercial de l'entreprise initstr($annonce['E1TSIG'], 100) . // Enseigne de l'établissement initstr(FILLER, 30) . // Nationalité si Personne physique //initstr(MInsee::getFJInsee($annonce['siren']), 4) . // FJ codification Insee initstr('0000', 4) . // FJ codification Insee initstr(FILLER, 90) . // Forme juridique de l'entreprise déclarée au BODACC initstr(FILLER, 15, '0', ALIGN_RIGHT) . // Capital initstr(FILLER, 3) . // Devise du capital (format ISO) // Adresse / 150 car initstr(FILLER, 4, '0', ALIGN_RIGHT) . // initstr(FILLER, 1) . // initstr(FILLER, 5) . initstr(FILLER, 50) . initstr(FILLER, 50) . initstr(FILLER, 40) . initstr(FILLER, 5, '0', ALIGN_RIGHT) . // Code Postal de l'établissement initstr(FILLER, 45) . // Ville de l'établissement // Adresse du siège / 150 car initstr($annonce['E1ENRU'], 4, '0', ALIGN_RIGHT) . // initstr($annonce['E1EBTQ'], 1) . // initstr($annonce['E1ETVI'], 5) . initstr($annonce['E1EVOI'], 50) . initstr(FILLER, 50) . initstr(FILLER, 40) . initstr($annonce['E1ECPI'], 5, '0', ALIGN_RIGHT) . // Code Postal de l'établissement initstr($annonce['E1EVIL'], 45) . // Ville de l'établissement initstr(implode('',$tabEven), 32, '0', ALIGN_RIGHT) . // Code Evènement Bodacc n°1 à 8 initstr(FILLER, 100) . // NOM du JAL si publication initstr(FILLER, 8) . // Date de publication du JAL si publication initstr(FILLER, 8) . // Date de cessation des paiements initstr($dateJ, 8) . // Date du jugement initstr(FILLER, 1) . // FILLER (Replace type de création) initstr(FILLER, 8) . // Date de début d'activité initstr($annonce['DTEFFZ'], 8) . // Date d'effet (Ventes/MMD) // ou Date clôture exercice si ann dépôt comptes initstr($VenteMt, 15, '0', ALIGN_RIGHT) . // Montant de la vente initstr($VenteDev, 3) . // Devise de la ventre initstr(FILLER, 35) . // Numéro de l'affaire au greffe initstr($inter[0]['type'], 1) . // Type d'intervenant A : Mand/Adm/ReprCre/Oppo initstr($inter[0]['SIRET'], 14, '0', ALIGN_RIGHT) . // Intervenant A : Siret initstr($inter[0]['Nom'], 80) . // Raison sociale initstr($inter[0]['Repr'], 80) . // Représentant initstr($inter[0]['adrNum'], 4, '0', ALIGN_RIGHT) . // Adresse, numéro dans la voie initstr($inter[0]['adrBis'], 1) . // Adresse, Bis/Ter initstr($inter[0]['adrType'], 4) . // Adresse, type de voie initstr($inter[0]['adrLib'], 32) . // Adresse, libellé de la voie initstr($inter[0]['CP'], 5, '0', ALIGN_RIGHT) . // Adresse, code Postal initstr($inter[0]['Ville'], 45) . // Adresse, commune initstr($inter[0]['Tel'], 10, '0', ALIGN_RIGHT) . // Téléphone initstr($inter[1]['type'], 1) . // Type d'intervenant A : Mand/Adm/ReprCre/Oppo initstr($inter[1]['SIRET'], 14, '0', ALIGN_RIGHT) . // Intervenant A : Siret initstr($inter[1]['Nom'], 80) . // Raison sociale initstr($inter[1]['Repr'], 80) . // Représentant initstr($inter[1]['adrNum'], 4, '0', ALIGN_RIGHT) . // Adresse, numéro dans la voie initstr($inter[1]['adrBis'], 1) . // Adresse, Bis/Ter initstr($inter[1]['adrType'], 4) . // Adresse, type de voie initstr($inter[1]['adrLib'], 32) . // Adresse, libellé de la voie initstr($inter[1]['CP'], 5, '0', ALIGN_RIGHT) . // Adresse, code Postal initstr($inter[1]['Ville'], 45) . // Adresse, commune initstr($inter[1]['Tel'], 10, '0', ALIGN_RIGHT) . // Téléphone initstr(FILLER/*$annonce['JugeCommissaireNom']*/, 30) . // NOM du JugeCommissaire initstr(FILLER/*$annonce['JugeCommissairePrenom']*/, 30) . // Prénom du JugeCommissaire initstr(FILLER/*$annonce['JugeCommissaireSupplNom']*/, 30) . // NOM du JugeCommissaire suppléant initstr(FILLER/*$annonce['JugeCommissaireSupplPrenom']*/, 30) . // Prénom du JugeCommissaire suppléant initstr(FILLER, 8) . // Date limite pour le dépôt des créances initstr(FILLER, 8) . // Date de fin de la période d'observation ''; fwrite($fp, initstr($str,LONGUEUR_LIGNE_SORTIE).$optionEOL); $nbLignes++; // if ($tabOptOutput['commentaire']==true && $annonce['commentaires']<>'') // fwrite($fp, '101'.initsrt($annonce['commentaires'],1500).$eol); // Commentaire textuel si nécessaire $enteteL= initstr($numAnnonceSD, 10, '0', ALIGN_RIGHT) . // Numéro unique d'identification interne d'une annonce initstr($annonce['E1GSIR'], 9, '0', ALIGN_RIGHT) . // Siren de l'entreprise concernée par l'annonce initstr(FILLER, 5) . // On garde la place pour le NIC initstr($annonce['NOBOD'], 3, '0', ALIGN_RIGHT) . // Numéro de parution du Bodacc dans l'année initstr($Bodacc_Code, 1) . // Code Bodacc (A, B ou C) initstr($annonce['DATE'], 8) . // Date de parution du Bodacc initstr($annonce['NOANN'], 5, '0', ALIGN_RIGHT) . // Numéro de l'annonce dans le Bodacc initstr($annonce['RUBODZ'], 3, '0') . // Rubrique dans le Bodacc initstr('I', 1) . // Type d'annonce Bodacc : I=Insertion, A=Additif, initstr(FILLER, 5, '0', ALIGN_RIGHT) . // Si annonce diff. de I, numéro de l'annonce corrigée initstr(FILLER, 8) . // Si diff. I, date du Bodacc de l'annonce corrigée initstr(FILLER, 6, '0', ALIGN_RIGHT) . // Si diff. I, page du Bodacc de l'annonce corrigée initstr(FILLER, 4, '0', ALIGN_RIGHT) . // Si diff. I, Num parut°/année de annonce corrigée // (ex: 230A, 001B) initstr(FILLER, 18) . ''; $texte=trim(strtr(preg_replace('/ +/', ' ', strtr(preg_replace('/ +/', ' ',$annonce['annonceTxt'].'.'), array( ' Jugement '=>'. Jugement ', ' RCS '=>'. RCS ', ' RCS non encore inscrit '=>'. RCS non encore inscrit. ', 'RCSnon encore inscrit '=>'RCS non encore inscrit. ', 'RCSNon encore inscrits '=>'RCS non encore inscrit. ', 'RCSRCS '=>'RCS ', ' Forme:'=>'. Forme : ', ' Capital:'=>'. Capital : ', ' Enseigne:'=>'. Enseigne : ', ' Sigle:'=>'. Sigle : ', ' Activité:'=>'. Activité : ', ' Commentaires:'=>'. Commentaires : ', ' Adresse:'=>'. Adresse : ', ' Date de cessation des paiements:'=>'. Date de cessation des paiements : ', ' Mandataire judiciaire:'=>'. Mandataire judiciaire : ', ' Les déclarations de créances '=>' Les déclarations de créances ', ' Fonds acquis par achat '=>'. Fonds acquis par achat ', " Date d'effet:"=>". Date d'effet : ", " Date d' effet:"=>". Date d'effet : ", ' Précédent propriétaire '=>'. Précédent propriétaire : ', ' Précédent exploitant '=>'. Précédent exploitant : ', ' Première insertion:'=>'. Première insertion : ', ' oppositions:'=>'. Oppositions : ', ' Oppositions:'=>'. Oppositions : ', ' Adresse du siège social:'=>'. Adresse du siège social : ', " Adresse de l'établissement principal:"=>". Adresse de l'établissement principal : ", ' Administration:'=>'. Administration : ', ))), array(':.'=>':', '..'=>'.', '. .'=>'.'))); fwrite($fp, genereMultiLigne('104', $enteteL, $texte, $optionEOL, $nbLignes)); if ($nbLignes%1000==1) echo date ('Y/m/d - H:i:s')." - Nb lignes=$nbLignes\n"; } /** ** On génère la ligne de fin de fichier **/ $nbLignes++; $str= initstr('999', 3, '0', ALIGN_RIGHT) . // Type de ligne initstr(date('YmdHis'), 14) . // Date & Heure de fin génération du fichier initstr($clientNumTourFichier, 10, '0', ALIGN_RIGHT) . // Numéro de tour du fichier pour le client initstr($clientIdentifiant, 36) . // Identifiant Client initstr($typePrestaton, 32) . // Type de prestation initstr($nbLignes, 10, '0', ALIGN_RIGHT) . // Nombre de lignes Total du fichier ''; fwrite($fp, initstr($str,LONGUEUR_LIGNE_SORTIE)); // Pas de fin de ligne sur la dernière ligne fclose($fp); echo date ('Y/m/d - H:i:s')." - Prestation n°$numPrestation, Client $nomClient :Fichier client terminé.".EOL; /** Mise à jour des numéros de tour et des date de dernières exécutions **/ if ($incrementationDesTour) { $iDbCrm=new WDB('sugarcrm'); $rep=$iDbCrm->update('cases_cstm', array('trtdatederniereexec_c'=>date('YmdHis'), 'trtnumerotour_c'=> $clientNumTourFichier), "id_c='".$tabAdherent['idPrestationBdd']."'"); } /*Gzip ou zip zt envoi par mail ou dépot sur le site FTP*/ switch ($optionZip) { case 'zip': $zip = new ZipArchive; $res = $zip->open($repProduction. $typePrestaton.'_'.$clientIdentifiant.'_'.DATETIME.'.zip', ZipArchive::CREATE); if ($res === TRUE) { // $zip->addFromString('test.txt', 'file content goes here'); $zip->addFile( REP_TEMP. $typePrestaton.'_'.$clientIdentifiant.'_'.DATETIME.'.txt', $typePrestaton.'_'.$clientIdentifiant.'_'.DATETIME.'.txt'); $zip->close(); echo date ('Y/m/d - H:i:s')." - Compression du fichier ". $typePrestaton .'_'. $clientIdentifiant .'.zip OK...'.EOL; } else { echo date ('Y/m/d - H:i:s')." - ERREUR : Compression Zip du fichier ". $typePrestaton .'_'. $clientIdentifiant .'.txt impossible !'.EOL; } break; case 'gzip': $string=file_get_contents(REP_TEMP. $typePrestaton.'_'.$clientIdentifiant.'_'.DATETIME.'.txt'); $gz = gzopen($repProduction. $typePrestaton.'_'.$clientIdentifiant.'_'.DATETIME.'.txt.gz','w9'); if (!$gz) { echo date ('Y/m/d - H:i:s')." - ERREUR : Compression Gzip du fichier ". $typePrestaton .'_'. $clientIdentifiant .'.txt impossible !'.EOL; } else { gzwrite($gz, $string); gzclose($gz); echo date ('Y/m/d - H:i:s')." - Compression du fichier ". $typePrestaton .'_'. $clientIdentifiant .'.txt.gz OK...'.EOL; } break; case 'bzip2': $string=file_get_contents(REP_TEMP. $typePrestaton.'_'.$clientIdentifiant.'_'.DATETIME.'.txt'); $bz = bzopen($repProduction. $typePrestaton.'_'.$clientIdentifiant.'_'.DATETIME.'.txt.bz2','w'); // Ne sait pas si le niveau de compression 1 à 9 est implémenté pour cette fonction if (!$bz) { echo date ('Y/m/d - H:i:s')." - ERREUR : Compression Bzip2 impossible pour ". $typePrestaton .'_'. $clientIdentifiant .'.txt impossible !'.EOL; } else { bzwrite($bz, $string, strlen($string)); bzclose($bz); echo date ('Y/m/d - H:i:s')." - Compression du fichier ". $typePrestaton .'_'. $clientIdentifiant .'.txt.bz2 OK...'.EOL; } break; default: if (!copy(REP_TEMP. $typePrestaton.'_'.$clientIdentifiant.'_'.DATETIME.'.txt', $repProduction. $typePrestaton.'_'.$clientIdentifiant.'_'.DATETIME.'.txt')) echo date ('Y/m/d - H:i:s')." - ERREUR : Déplacement du fichier ". $typePrestaton .'_'. $clientIdentifiant .'.txt impossible !'.EOL; else echo date ('Y/m/d - H:i:s')." - Le fichier ". $typePrestaton .'_'. $clientIdentifiant .'.txt a été créé...'.EOL; break; } echo date ('Y/m/d - H:i:s')." - Fin du traitement diffusion BODACC.\n"; die(); ?>