1123 lines
69 KiB
PHP
1123 lines
69 KiB
PHP
#!/usr/bin/php -c/var/www/batch/config/php_batch_sd.ini
|
||
<?php
|
||
|
||
if (!defined('VERSION_FICHIER_IDENTITE'))
|
||
define('VERSION_FICHIER_IDENTITE','0106');
|
||
|
||
/**
|
||
* @todo
|
||
* 2. Pouvoir faire du multiligne avec : 106 Libellé du Périmètre de la vente
|
||
* 5. JugesCommissaires à intégrer correctement
|
||
*/
|
||
include_once(FWK_PATH.'common/chiffres.php');
|
||
include_once(FWK_PATH.'common/dates.php');
|
||
include_once(INCLUDE_PATH.'bodacc/classMBodacc.php');
|
||
include_once(INCLUDE_PATH.'insee/classMInsee.php');
|
||
include_once(INCLUDE_PATH.'conversion/bilAltares.php');
|
||
include_once(FWK_PATH.'mail/sendMail.php');
|
||
|
||
$optionEOL=EOL;
|
||
$stock=$dateDebut=$idClientTodo=false;
|
||
$dateDebutCmd=false;
|
||
|
||
$tabPrestas=array(
|
||
0=>array(
|
||
'nomClient'=> 'ComComMuretain',
|
||
'typePrestaton'=>'diffusionInsee',
|
||
'clientIdentifiant'=>'DIFINSPRDFTSA6CMOMURETAIN',
|
||
'clientNumTourFichier'=>4,
|
||
'nbBilansMax'=>3,
|
||
'typeLigneBilan'=>401,
|
||
'CodeCom'=> '31165,31248,31253,31287,31395,31421,31420,31433,31460,31475,31486,31499,31533,31580',
|
||
'CJ-'=> '1800,2700,3110,3205,6539,6540,6541,7111,7112,7113,7120,7150,7160,7171,7172,7179,7190,7210,7220,7225,7229,7230,7312,7313,7314,7321,7322,7323,7331,'.
|
||
'7341,7342,7343,7345,7346,7347,7348,7349,7351,7352,7353,7354,7355,7356,7361,7362,7363,7364,7365,7366,7371,7372,7373,7378,7379,7381,7382,7383,7384,'.
|
||
'7385,7389,7410,7430,7450,7470,7490,8110,8120,8130,8140,8150,8160,8170,8190,8310,8311,8410,8420,8450,8490,9110,9150,9210,9220,9222,9223,9230,9240,9260',
|
||
'NAF-'=> '4781Z,4782Z,4789Z,4799A,4950Z,6820A,6820B,8411Z,8412Z,8413Z,8421Z,8422Z,8423Z,8424Z,8430A,8430B,8430C,9411Z,9412Z,9420Z,9491Z,9492Z,9499Z,9900Z',
|
||
'mailTo'=> 'economie@agglo-muretain.fr,jean.louis.bouttier@agglo-muretain.fr,ylenaour@scores-decisions.com',
|
||
),
|
||
1=>array(
|
||
'nomClient'=> 'CAMontauban',
|
||
'typePrestaton'=>'diffusionInsee',
|
||
'clientIdentifiant'=>'DIFINSPRDFTSA6CMOMONTAUBAN',
|
||
'clientNumTourFichier'=>1,
|
||
'nbBilansMax'=>3,
|
||
'typeLigneBilan'=>401,
|
||
'CodeCom'=> '82121,82025,82124,82044,82195,82167,82001,82090',
|
||
'NAF-'=> '4781Z,4782Z,4789Z,4799A,4950Z,6820A,6820B,8411Z,8412Z,8413Z,8421Z,8422Z,8423Z,8424Z,8430A,8430B,8430C,9411Z,8412Z,9420Z,9491Z,9492Z,9499Z,9900Z',
|
||
'CJ-'=> '1800,2700,3110,3205,7111,7112,7113,7120,7150,7160,7171,7172,7179,7190,7210,7220,7225,7229,7230,7312,7313,7314,7321,7322,7323,7331,7341,7342,7343,7345,7346,7347,7348,7349,7351,7352,7353,7354,7355,7356,7361,7362,7363,7364,7365,7366,7371,7372,7373,7378,7379,7381,7382,7383,7384,7385,7389,7410,7430,7450,7470,7490,8110,8120,8130,8140,8150,8160,8170,8190,8310,8311,8410,8420,8450,8490,9110,9150,9210,9220,9222,9223,9230,9240,9260',
|
||
'mailTo'=> 'gaguade@ville-montauban.fr,ylenaour@scores-decisions.com',
|
||
),
|
||
2=>array(
|
||
'nomClient'=> 'CAHeninCarvin',
|
||
'typePrestaton'=>'diffusionInsee',
|
||
'clientIdentifiant'=>'DIFINSPRDFTSA6CMOHENINCARVIN',
|
||
'clientNumTourFichier'=>1,
|
||
'nbBilansMax'=>2,
|
||
'typeLigneBilan'=>401,
|
||
'CodeCom'=> '62148,62215,62249,62250,62274,62277,62321,62427,62497,62587,62624,62637,62724,62907',
|
||
'NAF-'=> '4781Z,4782Z,4789Z,4799A,4950Z,6820A,6820B,8411Z,8412Z,8413Z,8421Z,8422Z,8423Z,8424Z,8430A,8430B,8430C,9411Z,8412Z,9420Z,9491Z,9492Z,9499Z,9900Z',
|
||
'CJ-'=> '1800,2700,3110,3205,6539,6540,6541,7111,7112,7113,7120,7150,7160,7171,7172,7179,7190,7210,7220,7225,7229,7230,7312,7313,7314,7321,7322,7323,7331,7341,7342,7343,7345,7346,7347,7348,7349,7351,7352,7353,7354,7355,7356,7361,7362,7363,7364,7365,7366,7371,7372,7373,7378,7379,7381,7382,7383,7384,7385,7389,7410,7430,7450,7470,7490,8110,8120,8130,8140,8150,8160,8170,8190,8310,8311,8410,8420,8450,8490,9110,9150,9210,9220,9222,9223,9230,9240,9260',
|
||
//'mailTo'=>'gaguade@ville-montauban.fr,support@scores-decisions.com',
|
||
//'mailTo'=> 'ylenaour@scores-decisions.com',
|
||
),
|
||
3=>array(
|
||
'nomClient'=> 'CANimesMetropole',
|
||
'typePrestaton'=>'diffusionInsee',
|
||
'clientIdentifiant'=>'DIFINSPRDFTSA6CMONIMESMETRO',
|
||
'clientNumTourFichier'=>1,
|
||
'nbBilansMax'=>2,
|
||
'typeLigneBilan'=>401,
|
||
'CodeCom'=> '30047,30189,30060,30125,30169,30075,30156,30189,30061,30155,30211,30356,30128,30138,30145,30245,30036,30039,30082,30249,30206,30057,30257,30241,30102,30228,30317',
|
||
'NAF-'=> '4781Z,4782Z,4789Z,4799A,4950Z,6820A,6820B,8411Z,8412Z,8413Z,8421Z,8422Z,8423Z,8424Z,8430A,8430B,8430C,9411Z,8412Z,9420Z,9491Z,9492Z,9499Z,9900Z',
|
||
'CJ-'=> '1800,2700,3110,3205,6539,6540,6541,7111,7112,7113,7120,7150,7160,7171,7172,7179,7190,7210,7220,7225,7229,7230,7312,7313,7314,7321,7322,7323,7331,7341,7342,7343,7345,7346,7347,7348,7349,7351,7352,7353,7354,7355,7356,7361,7362,7363,7364,7365,7366,7371,7372,7373,7378,7379,7381,7382,7383,7384,7385,7389,7410,7430,7450,7470,7490,8110,8120,8130,8140,8150,8160,8170,8190,8310,8311,8410,8420,8450,8490,9110,9150,9210,9220,9222,9223,9230,9240,9260',
|
||
'mailTo'=> 'pierre.rouzet@ville-nimes.fr,ylenaour@scores-decisions.com',
|
||
),
|
||
4=>array(
|
||
'nomClient'=> 'ADACL40MACS',
|
||
'typePrestaton'=>'diffusionInsee',
|
||
'clientIdentifiant'=>'DIFINSPRDFTSA6CMOADACL40MACS',
|
||
'clientNumTourFichier'=>1,
|
||
'nbBilansMax'=>2,
|
||
'typeLigneBilan'=>401,
|
||
'CodeCom'=> '40004,40021,40036,40065,40129,40133,40168,40181,40187,40213,40261,40264,40271,40272,40284,40291,40292,40293,40296,40304,40310,40317,40328',
|
||
'NAF-'=> '4781Z,4782Z,4789Z,4799A,4950Z,6820A,6820B,8411Z,8412Z,8413Z,8421Z,8422Z,8423Z,8424Z,8430A,8430B,8430C,9411Z,8412Z,9420Z,9491Z,9492Z,9499Z,9900Z',
|
||
'CJ-'=> '1800,2700,3110,3205,6539,6540,6541,7111,7112,7113,7120,7150,7160,7171,7172,7179,7190,7210,7220,7225,7229,7230,7312,7313,7314,7321,7322,7323,7331,7341,7342,7343,7345,7346,7347,7348,7349,7351,7352,7353,7354,7355,7356,7361,7362,7363,7364,7365,7366,7371,7372,7373,7378,7379,7381,7382,7383,7384,7385,7389,7410,7430,7450,7470,7490,8110,8120,8130,8140,8150,8160,8170,8190,8310,8311,8410,8420,8450,8490,9110,9150,9210,9220,9222,9223,9230,9240,9260',
|
||
'freqenvois'=>'M', // H:Hebdo, M=Mensuel
|
||
'mailTo'=> 'lestanguet.celluleprojet@adacl40.fr,ylenaour@scores-decisions.com',
|
||
),
|
||
5=>array(
|
||
'nomClient'=> 'CATerresDeFrance',
|
||
'typePrestaton'=>'diffusionInsee',
|
||
'clientIdentifiant'=>'DIFINSPRDFTSA6CMOCATDF',
|
||
'clientNumTourFichier'=>1,
|
||
'nbBilansMax'=>2,
|
||
'typeLigneBilan'=>401,
|
||
'CodeCom'=> '93071,93078,93073',
|
||
'CJ'=>'3110,3120,4110,4120,4130,4140,4150,4160,5191,5192,5193,5194,5195,5196,5202,5203,5306,5307,5308,5309,5385,5410,5415,5422,5426,5430,5431,5432,5442,5443,5451,5453,5454,5455,5458,5459,5460,5485,5498,5499,5505,5510,5515,5520,5522,5525,5530,5531,5532,5542,5543,5546,5547,5548,5551,5552,5553,5554,5555,5558,5559,5560,5585,5599,5605,5610,5615,5620,5622,5625,5630,5631,5632,5642,5643,5646,5647,5648,5651,5652,5653,5654,5655,5658,5659,5660,5685,5699,5710,5720,5785,5800,6100,6210,6220,6316,6317,6318,6411,6521,6532,6533,6534,6535,6536,6537,6538,6539,6540,6541,6542,6543,6551,6554,6558,6560,6561,6562,6563,6564,6565,6566,6567,6568,6569,6571,6572,6573,6574,6575,6576,6577,6578,6585,6588,6589,6595,6596,6597,6598,6599,6901',
|
||
//'mailTo'=> 'ylenaour@scores-decisions.com,cendrine.lebouffant@caterresdefrance.fr',
|
||
),
|
||
6=>array(
|
||
'nomClient'=> 'CACLichyMontf',
|
||
'typePrestaton'=>'diffusionInsee',
|
||
'clientIdentifiant'=>'DIFINSPRDFTSA6CMOCLICHYM',
|
||
'clientNumTourFichier'=>1,
|
||
'nbBilansMax'=>2,
|
||
'typeLigneBilan'=>401,
|
||
'CodeCom'=> '93014,93047',
|
||
'NAF-'=> '4781Z,4782Z,4789Z,4799A,4950Z,6820A,6820B,8411Z,8412Z,8413Z,8421Z,8422Z,8423Z,8424Z,8430A,8430B,8430C,9411Z,8412Z,9420Z,9491Z,9492Z,9499Z,9900Z',
|
||
'CJ-'=> '1800,2700,3110,3205,6539,6540,6541,7111,7112,7113,7120,7150,7160,7171,7172,7179,7190,7210,7220,7225,7229,7230,7312,7313,7314,7321,7322,7323,7331,7341,7342,7343,7345,7346,7347,7348,7349,7351,7352,7353,7354,7355,7356,7361,7362,7363,7364,7365,7366,7371,7372,7373,7378,7379,7381,7382,7383,7384,7385,7389,7410,7430,7450,7470,7490,8110,8120,8130,8140,8150,8160,8170,8190,8310,8311,8410,8420,8450,8490,9110,9150,9210,9220,9222,9223,9230,9240,9260',
|
||
'mailTo'=> 'julien.aumand@cacm93.fr,jrose.louisds@cacm93.fr,ylenaour@scores-decisions.com',
|
||
),
|
||
7=>array(
|
||
'nomClient'=> 'CAEvryCentreEssonne',
|
||
'typePrestaton'=>'diffusionInsee',
|
||
'clientIdentifiant'=>'DIFINSPRDFTSA6CMOEVRYCE',
|
||
'clientNumTourFichier'=>1,
|
||
'nbBilansMax'=>2,
|
||
'typeLigneBilan'=>401,
|
||
'CodeCom'=> '91086,91182,91228,91340,91521,91659',
|
||
'NAF-'=> '4781Z,4782Z,4789Z,4799A,4950Z,6820A,6820B,8411Z,8412Z,8413Z,8421Z,8422Z,8423Z,8424Z,8430A,8430B,8430C,9411Z,9420Z,9491Z,9492Z,9499Z,9900Z',
|
||
'CJ-'=> '1700,1800,2700,3110,3205,6539,6540,6541,7111,7112,7113,7120,7150,7160,7171,7172,7179,7190,7210,7220,7225,7229,7230,7312,7313,7314,7321,7322,7323,7331,7341,7342,7343,7345,7346,7347,7348,7349,7351,7352,7353,7354,7355,7356,7361,7362,7363,7364,7365,7366,7371,7372,7373,7378,7379,7381,7382,7383,7384,7385,7389,7410,7430,7450,7470,7490,8110,8120,8130,8140,8150,8160,8170,8190,8310,8311,8410,8420,8450,8490,9110,9150,9210,9220,9222,9223,9230,9240,9260',
|
||
'mailTo'=> 'ylenaour@scores-decisions.com,damien.le.mee@agglo-evry.fr',
|
||
),
|
||
8=>array(
|
||
'nomClient'=> 'CASQY',
|
||
'typePrestaton'=>'diffusionInsee',
|
||
'clientIdentifiant'=>'DIFINSPRDFTSA6CMOSQY',
|
||
'clientNumTourFichier'=>1,
|
||
'nbBilansMax'=>0,
|
||
'typeLigneBilan'=>401,
|
||
'CodeCom'=> '8208,78297,78356,78423,78621,78644,78688',
|
||
'NAF-'=> '4781Z,4782Z,4789Z,4799A,4950Z,6820A,6820B,8411Z,8412Z,8413Z,8421Z,8422Z,8423Z,8424Z,8430A,8430B,8430C,9411Z,8412Z,9420Z,9491Z,9492Z,9499Z,9900Z',
|
||
'CJ-'=> '1800,2700,3110,3205,6539,6540,6541,7111,7112,7113,7120,7150,7160,7171,7172,7179,7190,7210,7220,7225,7229,7230,7312,7313,7314,7321,7322,7323,7331,7341,7342,7343,7345,7346,7347,7348,7349,7351,7352,7353,7354,7355,7356,7361,7362,7363,7364,7365,7366,7371,7372,7373,7378,7379,7381,7382,7383,7384,7385,7389,7410,7430,7450,7470,7490,8110,8120,8130,8140,8150,8160,8170,8190,8310,8311,8410,8420,8450,8490,9110,9150,9210,9220,9222,9223,9230,9240,9260',
|
||
'mailTo'=> 'ylenaour@scores-decisions.com,Jonathan.CRUSSON@agglo-sqy.fr',
|
||
),
|
||
9=>array(
|
||
'nomClient'=> 'ComValenton',
|
||
'typePrestaton'=>'diffusionInsee',
|
||
'clientIdentifiant'=>'DIFINSPRDFTSA6CMOVALENTON',
|
||
'clientNumTourFichier'=>1,
|
||
'nbBilansMax'=>0,
|
||
'typeLigneBilan'=>401,
|
||
'CodeCom'=>94074,
|
||
'NAF-'=>'4781Z,4782Z,4789Z,4799A,4950Z,6820A,6820B,8411Z,8412Z,8413Z,8421Z,8422Z,8423Z,8424Z,8430A,8430B,8430C,9411Z,8412Z,9420Z,9491Z,9492Z,9499Z,9900Z',
|
||
'CJ-'=>'1800,2700,3110,3205,6539,6540,6541,7111,7112,7113,7120,7150,7160,7171,7172,7179,7190,7210,7220,7225,7229,7230,7312,7313,7314,7321,7322,7323,7331,7341,7342,7343,7345,7346,7347,7348,7349,7351,7352,7353,7354,7355,7356,7361,7362,7363,7364,7365,7366,7371,7372,7373,7378,7379,7381,7382,7383,7384,7385,7389,7410,7430,7450,7470,7490,8110,8120,8130,8140,8150,8160,8170,8190,8310,8311,8410,8420,8450,8490,9110,9150,9210,9220,9222,9223,9230,9240,9260',
|
||
'mailTo'=>'ali.laouari@ville-valenton.fr,ylenaour@scores-decisions.com',
|
||
),
|
||
10=>array(
|
||
'nomClient'=> 'ComComVallonsTour',
|
||
'typePrestaton'=>'diffusionInsee',
|
||
'clientIdentifiant'=>'DIFINSPRDFTSA6CMOVALLONS',
|
||
'clientNumTourFichier'=>1,
|
||
'nbBilansMax'=>3,
|
||
'typeLigneBilan'=>401,
|
||
'CodeCom'=>'38064,38148,38162,38076,38509,38296,38341,38377,38381,38401',
|
||
'NAF-'=>'4781Z,4782Z,4789Z,4799A,4950Z,6820A,6820B,8411Z,8412Z,8413Z,8421Z,8422Z,8423Z,8424Z,8430A,8430B,8430C,9411Z,8412Z,9420Z,9491Z,9492Z,9499Z,9900Z',
|
||
'CJ-'=>'1800,2700,3110,3205,6539,6540,6541,7111,7112,7113,7120,7150,7160,7171,7172,7179,7190,7210,7220,7225,7229,7230,7312,7313,7314,7321,7322,7323,7331,7341,7342,7343,7345,7346,7347,7348,7349,7351,7352,7353,7354,7355,7356,7361,7362,7363,7364,7365,7366,7371,7372,7373,7378,7379,7381,7382,7383,7384,7385,7389,7410,7430,7450,7470,7490,8110,8120,8130,8140,8150,8160,8170,8190,8310,8311,8410,8420,8450,8490,9110,9150,9210,9220,9222,9223,9230,9240,9260',
|
||
'mailTo'=>'thomas.boisseau@lesvallonsdelatour.fr,ylenaour@scores-decisions.com',
|
||
),
|
||
11=>array(
|
||
'nomClient'=> 'CAChotelais',
|
||
'typePrestaton'=>'diffusionInsee',
|
||
'clientIdentifiant'=>'DIFINSPRDFTSA6CMOCHOTELAIS',
|
||
'clientNumTourFichier'=>1,
|
||
'nbBilansMax'=>3,
|
||
'typeLigneBilan'=>401,
|
||
'CodeCom'=>'49099,49332,49269,49343,49070,49299,49260,49355,49371,49231,49352,49193,49195',
|
||
'NAF-'=>'4781Z,4782Z,4789Z,4799A,4950Z,6820A,6820B,8411Z,8412Z,8413Z,8421Z,8422Z,8423Z,8424Z,8430A,8430B,8430C,9411Z,8412Z,9420Z,9491Z,9492Z,9499Z,9900Z',
|
||
'CJ-'=>'1800,2700,3110,3205,6539,6540,6541,7111,7112,7113,7120,7150,7160,7171,7172,7179,7190,7210,7220,7225,7229,7230,7312,7313,7314,7321,7322,7323,7331,7341,7342,7343,7345,7346,7347,7348,7349,7351,7352,7353,7354,7355,7356,7361,7362,7363,7364,7365,7366,7371,7372,7373,7378,7379,7381,7382,7383,7384,7385,7389,7410,7430,7450,7470,7490,8110,8120,8130,8140,8150,8160,8170,8190,8310,8311,8410,8420,8450,8490,9110,9150,9210,9220,9222,9223,9230,9240,9260',
|
||
'mailTo'=>'twargnier@agglo-choletais.fr,ylenaour@scores-decisions.com',
|
||
),
|
||
12=>array(
|
||
'nomClient'=> 'CAValDeBievres',
|
||
'typePrestaton'=>'diffusionInsee',
|
||
'clientIdentifiant'=>'DIFINSTSTFTSA6CMOVALDEBIEVRES',
|
||
'clientNumTourFichier'=>1,
|
||
'nbBilansMax'=>3,
|
||
'typeLigneBilan'=>401,
|
||
'CodeCom'=>'94003,94016,94034,94037,94043,94038,94076',
|
||
//'NAF-'=>'4781Z,4782Z,4789Z,4799A,4950Z,6820A,6820B,8411Z,8412Z,8413Z,8421Z,8422Z,8423Z,8424Z,8430A,8430B,8430C,9411Z,8412Z,9420Z,9491Z,9492Z,9499Z,9900Z',
|
||
'CJ'=>'5191,5192,5193,5194,5195,5196,5202,5203,5306,5307,5308,5309,5370,5385,5410,5415,5422,5426,5430,5431,5432,5442,5443,5451,5453,5454,5455,5458,5459,5460,5470,5485,5498,5499,5505,5510,5515,5520,5522,5525,5530,5531,5532,5542,5543,5546,5547,5548,5551,5552,5553,5554,5555,5558,5559,5560,5570,5585,5599,5605,5610,5615,5620,5622,5625,5630,5631,5632,5642,5643,5646,5647,5648,5651,5652,5653,5654,5655,5658,5659,5660,5670,5685,5699,5710,5720,5770,5785',
|
||
//'mailTo'=>'twargnier@agglo-choletais.fr',
|
||
),
|
||
13=>array(
|
||
'nomClient'=> 'Anthony',
|
||
'typePrestaton'=>'diffusionInsee',
|
||
'clientIdentifiant'=>'DIFINSPRDFTSA6CMOANTHONY',
|
||
'clientNumTourFichier'=>2,
|
||
'nbBilansMax'=>2,
|
||
'typeLigneBilan'=>401,
|
||
'CodeCom'=>'92002',
|
||
'NAF-'=>'4781Z,4782Z,4789Z,4799A,4950Z,6820A,6820B,8411Z,8412Z,8413Z,8421Z,8422Z,8423Z,8424Z,8430A,8430B,8430C,9411Z,8412Z,9420Z,9491Z,9492Z,9499Z,9900Z',
|
||
'CJ-'=>'1800,2700,3110,3205,6539,6540,6541,7111,7112,7113,7120,7150,7160,7171,7172,7179,7190,7210,7220,7225,7229,7230,7312,7313,7314,7321,7322,7323,7331,7341,7342,7343,7345,7346,7347,7348,7349,7351,7352,7353,7354,7355,7356,7361,7362,7363,7364,7365,7366,7371,7372,7373,7378,7379,7381,7382,7383,7384,7385,7389,7410,7430,7450,7470,7490,8110,8120,8130,8140,8150,8160,8170,8190,8310,8311,8410,8420,8450,8490,9110,9150,9210,9220,9222,9223,9230,9240,9260',
|
||
//'mailTo'=>'twargnier@agglo-choletais.fr',
|
||
),
|
||
14=>array(
|
||
'nomClient'=> 'CUB',
|
||
'typePrestaton'=>'diffusionInsee',
|
||
'clientIdentifiant'=>'DIFINSTSTFTSA6CMOMOMCUB',
|
||
'clientNumTourFichier'=>1,
|
||
'nbBilansMax'=>3,
|
||
'typeLigneBilan'=>401,
|
||
'CodeCom'=>'33003,33004,33013,33032,33039,33056,33063,33065,33075,33096,33119,33162,33167,33192,33069,33200,33519,33249,33273,33273,33312,33318,33376,33434,33449,33487,33522,33550',
|
||
'NAF-'=>'4950Z,6820A,6820B,8411Z,8412Z,8413Z,8421Z,8422Z,8423Z,8424Z,8430A,8430B,8430C,9411Z,9412Z,9420Z,9491Z,9492Z,9499Z,9900Z',
|
||
'CJ-'=>'1800,2700,3110,3205,6539,6540,6541,7111,7112,7113,7120,7150,7160,7171,7172,7179,7190,7210,7220,7225,7229,7230,7312,7313,7314,7321,7322,7323,7331,7341,7342,7343,7345,7346,7347,7348,7349,7351,7352,7353,7354,7355,7356,7361,7362,7363,7364,7365,7366,7371,7372,7373,7378,7379,7381,7382,7383,7384,7385,7389,7410,7430,7450,7470,7490,8110,8120,8130,8140,8150,8160,8170,8190,8310,8311,8410,8420,8450,8490,9110,9150,9210,9220,9222,9223,9230,9240,9260',
|
||
//'mailTo'=>'ylenaour@scores-decisions.com',
|
||
),
|
||
15=>array(
|
||
'nomClient'=> 'PaysDesCouleurs',
|
||
'typePrestaton'=>'diffusionInsee',
|
||
'clientIdentifiant'=>'DIFINSPRDFTSA6CMOPAYSCOULEURS',
|
||
'clientNumTourFichier'=>1,
|
||
'nbBilansMax'=>3,
|
||
'typeLigneBilan'=>401,
|
||
'CodeCom'=>'38014,38022,38050,38054,38055,38083,38135,38139,38247,38261,38295,38297,38320,38458,38465,38483,38525,38541,38543,38124',
|
||
'NAF-'=>'4781Z,4782Z,4789Z,4799A,4950Z,6820A,6820B,8411Z,8412Z,8413Z,8421Z,8422Z,8423Z,8424Z,8430A,8430B,8430C,9411Z,8412Z,9420Z,9491Z,9492Z,9499Z,9900Z',
|
||
'CJ-'=>'1800,2700,3110,3205,6539,6540,6541,7111,7112,7113,7120,7150,7160,7171,7172,7179,7190,7210,7220,7225,7229,7230,7312,7313,7314,7321,7322,7323,7331,7341,7342,7343,7345,7346,7347,7348,7349,7351,7352,7353,7354,7355,7356,7361,7362,7363,7364,7365,7366,7371,7372,7373,7378,7379,7381,7382,7383,7384,7385,7389,7410,7430,7450,7470,7490,8110,8120,8130,8140,8150,8160,8170,8190,8310,8311,8410,8420,8450,8490,9110,9150,9210,9220,9222,9223,9230,9240,9260',
|
||
'mailTo'=>'directiondeveloppement@lepaysdescouleurs.fr,ylenaour@scores-decisions.com',
|
||
),
|
||
16=>array(
|
||
'nomClient'=> 'Oleron',
|
||
'typePrestaton'=>'diffusionInsee',
|
||
'clientIdentifiant'=>'DIFINSPRDFTSA6CMOPMOLERON',
|
||
'clientNumTourFichier'=>1,
|
||
'nbBilansMax'=>3,
|
||
'typeLigneBilan'=>401,
|
||
'CodeCom'=>'17058,17185,17189,17219,17265,17351,17406,17093,17140,17323,17337,17385,17411,17485,17486',
|
||
'NAF-'=>'4781Z,4782Z,4789Z,4799A,4950Z,6820A,6820B,8411Z,8412Z,8413Z,8421Z,8422Z,8423Z,8424Z,8430A,8430B,8430C,9411Z,8412Z,9420Z,9491Z,9492Z,9499Z,9900Z',
|
||
'CJ-'=>'1800,2700,3110,3205,6539,6540,6541,7111,7112,7113,7120,7150,7160,7171,7172,7179,7190,7210,7220,7225,7229,7230,7312,7313,7314,7321,7322,7323,7331,7341,7342,7343,7345,7346,7347,7348,7349,7351,7352,7353,7354,7355,7356,7361,7362,7363,7364,7365,7366,7371,7372,7373,7378,7379,7381,7382,7383,7384,7385,7389,7410,7430,7450,7470,7490,8110,8120,8130,8140,8150,8160,8170,8190,8310,8311,8410,8420,8450,8490,9110,9150,9210,9220,9222,9223,9230,9240,9260',
|
||
'mailTo'=>'aferreira@scores-decisions.com',
|
||
),
|
||
17=>array(
|
||
'nomClient'=> 'Rosny',
|
||
'typePrestaton'=>'diffusionInsee',
|
||
'clientIdentifiant'=>'DIFBODPRDFTSA6CMOROSNY',
|
||
'clientNumTourFichier'=>1,
|
||
'nbBilansMax'=>3,
|
||
'typeLigneBilan'=>401,
|
||
'CodeCom'=>'93064',
|
||
'NAF-'=>'4781Z,4782Z,4789Z,4799A,4950Z,6820A,6820B,8411Z,8412Z,8413Z,8421Z,8422Z,8423Z,8424Z,8430A,8430B,8430C,9411Z,8412Z,9420Z,9491Z,9492Z,9499Z,9900Z',
|
||
'CJ-'=>'1800,2700,3110,3205,6539,6540,6541,7111,7112,7113,7120,7150,7160,7171,7172,7179,7190,7210,7220,7225,7229,7230,7312,7313,7314,7321,7322,7323,7331,7341,7342,7343,7345,7346,7347,7348,7349,7351,7352,7353,7354,7355,7356,7361,7362,7363,7364,7365,7366,7371,7372,7373,7378,7379,7381,7382,7383,7384,7385,7389,7410,7430,7450,7470,7490,8110,8120,8130,8140,8150,8160,8170,8190,8310,8311,8410,8420,8450,8490,9110,9150,9210,9220,9222,9223,9230,9240,9260',
|
||
'mailTo'=>'economie@mairie-rosny-sous-bois.fr,support@scores-decisions.com',
|
||
),
|
||
/*16=>array(
|
||
'nomClient'=> 'ADACL40',
|
||
'typePrestaton'=>'diffusionInsee',
|
||
'clientIdentifiant'=>'DIFINSPRDFTSA6CMOADACL40',
|
||
'clientNumTourFichier'=>1,
|
||
'nbBilansMax'=>2,
|
||
'typeLigneBilan'=>401,
|
||
'CodeCom'=> '40004,40021,40036,40065,40129,40133,40168,40181,40187,40213,40261,40264,40271,40272,40284,40291,40292,40293,40296,40304,40310,40317,40328',
|
||
'NAF-'=> '4781Z,4782Z,4789Z,4799A,4950Z,6820A,6820B,8411Z,8412Z,8413Z,8421Z,8422Z,8423Z,8424Z,8430A,8430B,8430C,9411Z,8412Z,9420Z,9491Z,9492Z,9499Z,9900Z',
|
||
'CJ-'=> '1800,2700,3110,3205,6539,6540,6541,7111,7112,7113,7120,7150,7160,7171,7172,7179,7190,7210,7220,7225,7229,7230,7312,7313,7314,7321,7322,7323,7331,7341,7342,7343,7345,7346,7347,7348,7349,7351,7352,7353,7354,7355,7356,7361,7362,7363,7364,7365,7366,7371,7372,7373,7378,7379,7381,7382,7383,7384,7385,7389,7410,7430,7450,7470,7490,8110,8120,8130,8140,8150,8160,8170,8190,8310,8311,8410,8420,8450,8490,9110,9150,9210,9220,9222,9223,9230,9240,9260',
|
||
'mailTo'=> 'lestanguet.celluleprojet@adacl40.fr,ylenaour@scores-decisions.com',
|
||
),
|
||
*/
|
||
|
||
/*
|
||
4=>array(
|
||
'nomClient'=> 'Tremblay',
|
||
'typePrestaton'=>'diffusionInsee',
|
||
'clientIdentifiant'=>'DIFINSPRDFTSA6CMOTREMBLAY',
|
||
'clientNumTourFichier'=>1,
|
||
'nbBilansMax'=>2,
|
||
'typeLigneBilan'=>401,
|
||
'CodeCom'=> '30047,30189,30060,30125,30169,30075,30156,30189,30061,30155,30211,30356,30128,30138,30145,30245,30036,30039,30082,30249,30206,30057,30257,30241,30102,30228,30317',
|
||
'NAF-'=> '4781Z,4782Z,4789Z,4799A,4950Z,6820A,6820B,8411Z,8412Z,8413Z,8421Z,8422Z,8423Z,8424Z,8430A,8430B,8430C,9411Z,8412Z,9420Z,9491Z,9492Z,9499Z,9900Z',
|
||
'CJ-'=> '1800,2700,3110,3205,6539,6540,6541,7111,7112,7113,7120,7150,7160,7171,7172,7179,7190,7210,7220,7225,7229,7230,7312,7313,7314,7321,7322,7323,7331,7341,7342,7343,7345,7346,7347,7348,7349,7351,7352,7353,7354,7355,7356,7361,7362,7363,7364,7365,7366,7371,7372,7373,7378,7379,7381,7382,7383,7384,7385,7389,7410,7430,7450,7470,7490,8110,8120,8130,8140,8150,8160,8170,8190,8310,8311,8410,8420,8450,8490,9110,9150,9210,9220,9222,9223,9230,9240,9260',
|
||
//'mailTo'=>'e.kwiatkowski@tremblayenfrance.fr',
|
||
'mailTo'=> 'ylenaour@scores-decisions.com',
|
||
),
|
||
*/
|
||
);
|
||
|
||
$strInfoScript='Usage : '.basename($argv[0]). " [OPTION]
|
||
Production de stock/Diffusion des bases A6CMO (ce traitement ce lance automatiquement pour les diffusions le lundi).
|
||
|
||
Options :
|
||
-s Génération du stock
|
||
-d=SSAAMMJ(JHHIISS) Diffusion depuis le SSAAMMJJ ou SSAAMMJJHHIISS
|
||
-c=XXX N° de client/prestation
|
||
-v Verbosité maximum
|
||
";
|
||
|
||
$argv=$_SERVER['argv'];
|
||
if ($_SERVER['argc']>1)
|
||
{
|
||
for ($i=1; isset($argv[$i]); $i++) {
|
||
if (substr($argv[$i],0,1)=='-') {
|
||
switch (strtolower(substr($argv[$i],1,1))) {
|
||
case 's': $stock=true; break;
|
||
case 'v': $debug=true; break;
|
||
case 'd': $dateDebutCmd=strtr(substr($argv[$i],3),array('-'=>'',':'=>''))*1; break;
|
||
case 'c': $idClientTodo=substr($argv[$i],3); break;
|
||
case '-':
|
||
case '?': die($strInfoScript); break;
|
||
default: die('Option '. $argv[$i] . " inconnue !\n"); break;
|
||
}
|
||
} else $tabFichier[]=$argv[$i];
|
||
}
|
||
}
|
||
|
||
if ($dateDebutCmd!==false) {
|
||
if (strlen($dateDebut)==8)
|
||
$dateDebut=WDate::dateT('Ymd','Y-m-d',$dateDebut).' 00:00:00';
|
||
elseif (strlen($dateDebut)==14)
|
||
$dateDebut=WDate::dateT('YmdHis','Y-m-d H:i:s',$dateDebut);
|
||
elseif ($dateDebut==0)
|
||
$dateDebut=WDate::dateT('Ymd','Y-m-d',WDate::getNextDate(date('Ymd'), -7)).' 00:00:00';
|
||
else
|
||
die('Format de date incorrecte !'.EOL);
|
||
}
|
||
|
||
$iDb=new WDB('jo');
|
||
$iDb2=new WDB('jo');
|
||
$iInsee=new MInsee();
|
||
$iBodacc=new MBodacc();
|
||
|
||
foreach ($tabPrestas as $idClient=>$tabPresta) {
|
||
|
||
$nomClient=$tabPresta['nomClient'];
|
||
$typePrestaton=$tabPresta['typePrestaton'];
|
||
$clientIdentifiant=$tabPresta['clientIdentifiant'];
|
||
$clientNumTourFichier=$tabPresta['clientNumTourFichier'];
|
||
$tabFJ=explode(',',$tabPresta['CJ']);
|
||
$tabFJexclus=explode(',',$tabPresta['CJ-']);
|
||
$tabNAF=explode(',',$tabPresta['NAF']);
|
||
$tabNAFexclus=explode(',',$tabPresta['NAF-']);
|
||
$tabDepCom=explode(',',$tabPresta['CodeCom']);
|
||
$nbBilansMax=$tabPresta['nbBilansMax'];
|
||
$typeLigneBilan=$tabPresta['typeLigneBilan'];
|
||
|
||
if ($idClientTodo && $idClientTodo<>$idClient) {
|
||
echo date('Y/m/d - H:i:s') ." - On ignore le traitement pour '$nomClient'...".EOL;
|
||
continue;
|
||
} elseif (@$tabPresta['freqenvois']=='M') {
|
||
// Si on n'est pas Lundi OU que le début du mois est passé
|
||
if(date('w')<>1 || date('d')*1>7) {
|
||
echo date('Y/m/d - H:i:s') ." - On ignore le traitement Mensuel pour '$nomClient'...".EOL;
|
||
continue;
|
||
} elseif ($dateDebutCmd==false) {
|
||
// Si aucune date de début de périmètre alors on force au mois précédent
|
||
$dateDebut=WDate::dateT('Ymd','Y-m-d',WDate::getNextDate(date('Ymd'), -31)).' 00:00:00';
|
||
//$dateDebut=20130101;
|
||
}
|
||
}
|
||
|
||
/**
|
||
** 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($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(VERSION_FICHIER_IDENTITE, 4) . // Type de prestation
|
||
initstr(FILLER, 1901) . // FILLER
|
||
'';
|
||
fwrite($fp, initstr($str,LONGUEUR_LIGNE_SORTIE).$optionEOL);
|
||
$nbLignes=1;
|
||
|
||
//print_r($tabFJ);
|
||
|
||
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="'".implode("','",$tabDepCom)."'";
|
||
$strDepComStock='';
|
||
foreach ($tabDepCom as $idepcom=>$depcom) {
|
||
if ($idepcom==0) {
|
||
$strDepComStock.="AND adr_dep IN ('".substr($depcom,0,2)."','0".substr($depcom,0,2)."') ";
|
||
if (trim(substr($depcom,3,2))<>'') $strDepComStock.="AND adr_com IN (".substr($depcom,2,3);
|
||
} else {
|
||
if (trim(substr($depcom,3,2))<>'') $strDepComStock.=substr($depcom,2,3);
|
||
}
|
||
if (isset($tabDepCom[$idepcom+1])) $strDepComStock.=',';
|
||
elseif (trim(substr($depcom,3,2))<>'') $strDepComStock.=')';
|
||
}
|
||
|
||
// Com Com Muretains
|
||
echo date('Y/m/d - H:i:s') ." - Sélection de la cible pour '$nomClient'...".EOL;
|
||
|
||
if ($stock) {
|
||
$field='siren, nic';
|
||
$table='etablissements_old';
|
||
$where="source=2 AND actif=1 AND siege IN (0,1) $strDepComStock $strFJ $strNAF";
|
||
$nbEtab=$iDb->select($table, $field, $where, true, MYSQL_ASSOC, true);
|
||
if (mysql_errno()==1146) {
|
||
// Table don't exist ?
|
||
$table='etablissements';
|
||
$nbEtab=$iDb->select($table, $field, $where, true, MYSQL_ASSOC, true);
|
||
}
|
||
}
|
||
else {
|
||
$strFJ=str_replace(' cj ',' insCJ ', $strFJ);
|
||
$strNAF=str_replace(' ape_etab ',' insAPET700 ', $strNAF);
|
||
$field='insSIREN AS siren, insNIC 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="insDEPCOM IN ($strDepCom) $strFJ $strNAF AND dateInsert>='$dateDebut' GROUP BY insSIREN, insNIC";
|
||
$nbEtab=$iDb->select($table, $field, $where, true, MYSQL_ASSOC, true);
|
||
}
|
||
|
||
echo "SELECT $field
|
||
FROM $table
|
||
WHERE $where;
|
||
";
|
||
echo mysql_error().EOL;
|
||
echo date('Y/m/d - H:i:s') ." - Nombre d'établissement en sortie : ".$nbEtab.EOL;
|
||
$lL=0;
|
||
|
||
while($lSiret=$iDb->fetch(MYSQL_ASSOC)) {
|
||
$lL++;
|
||
// 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'];
|
||
$a=$iInsee->getIdentiteEntreprise($siren,$nic);
|
||
$b=$iInsee->getInfosNotice($siren,$nic);
|
||
$c=$iInsee->getAdresse($siren,$nic);
|
||
if (!$stock) {
|
||
$ev_EVE=$lSiret['insEVE'];
|
||
$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=$iDb2->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;
|
||
}
|
||
|
||
// Forcage pour idclient=3 nimes metropole !!!
|
||
if ($idClient==3 && $tcaSED<>' ') $a['TrancheCA']=$tcaSED;
|
||
|
||
$str= initstr(200, 3) . // Obligatoire CODE_ENTETE Ligne de description structurée de l'identité
|
||
initstr($a['SourceId'], 10 , '0', ALIGN_RIGHT) . // Obligatoire ID Numéro unique d'identification interne d'un établissement S&D
|
||
initstr($a['Siren'], 9 , '0', ALIGN_RIGHT) . // Obligatoire SIREN Siren de l'entreprise
|
||
initstr($a['Nic'], 5 , '0', ALIGN_RIGHT) . // Obligatoire NIC Nic de l'établissement
|
||
initstr($a['Source'], 3 , '0', ALIGN_RIGHT) . // Obligatoire SOURCE Source de la fiche d'identité
|
||
initstr($iInsee->valideSiren($siren,$nic), 1 , '0', ALIGN_RIGHT) . // Obligatoire SIRETVALIDE Siren/siret valide
|
||
initstr($a['numRC'], 10 ) . // Facultatif NUMRCS Numéro de Registre du Commerce et des Sociétés
|
||
initstr($a['Tribunal'], 6 ) . // Facultatif TRIBUNAL Identifiant du Tribunal
|
||
initstr(str_replace('-','',$a['dateMajIdentite']), 8 , '0', ALIGN_RIGHT) . // Obligatoire DATEMAJ Date de la dernière mise à jour dans la base S&D
|
||
initstr($a['Actif'], 1 , '0', ALIGN_RIGHT) . // Obligatoire ACTIF Établissement juridiquement actif
|
||
initstr($a['ActifEco'], 1 , '0', ALIGN_RIGHT) . // Obligatoire ACTIFECO Établissement économiquement actif
|
||
initstr($a['SituationJuridique'], 2 ) . // Obligatoire SITJUR Situation Juridique de l'entreprise
|
||
initstr($ev_EVE, 3 ) . // Facultatif EVE Dernier événement Insee recensé
|
||
initstr(str_replace('-','',$a['DateMajINSEE']), 8 , '0', ALIGN_RIGHT) . // Facultatif DATEVE Date du dernier événement Insee recensé
|
||
initstr($ev_TYPETAB, 2 ) . // Facultatif TYPETAB Type d'établissement concerné par l'événement
|
||
initstr($a['Siege'], 1 , '0', ALIGN_RIGHT) . // Obligatoire SIEGE Établissement siège, secondaire ou principal
|
||
initstr($a['Nom'], 160 ) . // Obligatoire NOM Raison Sociale
|
||
initstr($a['NomCommercial'], 160 ) . // Facultatif NOMCOM Nom commercial
|
||
initstr($a['Enseigne'], 80 ) . // Facultatif ENSEIGNE Enseigne de l'établissement
|
||
initstr($a['Sigle'], 40 ) . // Facultatif SIGLE sigle de l'entreprise
|
||
initstr($a['AdresseNum'], 4 , '0', ALIGN_RIGHT) . // Facultatif ADR_NUMVOIE Numéro dans la voie
|
||
initstr($a['AdresseBtq'], 1 ) . // Facultatif ADR_BTQ Indicateur de répétition (Bis, Ter, etc...)
|
||
initstr($a['AdresseVoie'], 4 ) . // Facultatif ADR_TYPVOIE Type de voie
|
||
initstr($a['AdresseRue'], 32 ) . // Obligatoire ADR_LIBVOIE Libellé de la voie
|
||
initstr($a['Ville'], 32 ) . // Obligatoire ADR_LIBCOM Commune
|
||
initstr($a['CP'], 5 , '0', ALIGN_RIGHT) . // Obligatoire ADR_CP Code postal
|
||
initstr($a['Adresse2'], 38 ) . // Facultatif ADR_COMP Complément d'adresse
|
||
initstr('', 38 ) . // Facultatif ADR_DISTSP Distribution spéciale
|
||
initstr($a['Pays'], 38 ) . // Facultatif PAYS Pays
|
||
initstr($a['PaysIso2'], 2 ) . // Facultatif PAYSISO2 Code Pays au format ISO2
|
||
initstr($a['Dept'], 2 ) . // Obligatoire ADR_DEP Département de l'établissement
|
||
initstr($a['codeCommune'], 3 , '0', ALIGN_RIGHT) . // Obligatoire ADR_COM Code commune de l'établissement
|
||
initstr(str_replace(' ','',$a['Rivoli']), 5 ) . // Facultatif CODEVOIE Code voie de l'établissement
|
||
initstr($a['codIris'], 4 ) . // Facultatif CODEIRIS Code Iris de l'établissement
|
||
initstr('', 5 ) . // Facultatif CODEILOT Code Ilot de l'établissement
|
||
initstr($a['AdresseDom'], 1 , '0', ALIGN_RIGHT) . // Facultatif ADRESSEDOM Indicateur d'adresse de domiciliation
|
||
initstr($a['Tel'], 15 ) . // Facultatif TEL Numéro de téléphone
|
||
initstr($a['Fax'], 15 ) . // Facultatif FAX Numéro de télécopie
|
||
initstr($a['Web'], 80 ) . // Facultatif WEB Site Web
|
||
initstr($a['Mail'], 80 ) . // Facultatif MAIL Adresse Email de contact générique
|
||
initstr($a['Auxiliaire'], 1 , '0', ALIGN_RIGHT) . // Facultatif AUXILT Auxiliarité de l'activité de l'établissement
|
||
initstr($a['Saisonnalite'], 1 , '0', ALIGN_RIGHT) . // Facultatif SAISONAT Saisonnalité de l'établissement
|
||
initstr($a['NatureActivite'], 2 , '0', ALIGN_RIGHT) . // Facultatif ACTIVNAT Nature de l'activité de l'établissement
|
||
initstr($a['OrigineCreation'], 2 ) . // Facultatif ORIGINE Origine de la création de l'établissement
|
||
initstr($a['TypeExploitation'], 2 , '0', ALIGN_RIGHT) . // Facultatif TYPEXPLOIT Type d'exploitation
|
||
initstr($a['LIEUACT'], 2 , '0', ALIGN_RIGHT) . // Facultatif LIEUACT Lieu de l'activité de l'établissement
|
||
initstr($a['ACTISURF'], 2 , '0', ALIGN_RIGHT) . // Facultatif ACTISURF Type de magasin
|
||
initstr($a['PRODPART'], 1 , '0', ALIGN_RIGHT) . // Facultatif PRODPART Participation particulière à la production de l'établissement
|
||
initstr($b['insARRONET'], 2 , '0', ALIGN_RIGHT) . // Facultatif ARRONET Arrondissement de l'établissement
|
||
initstr($b['insCTONET'], 3 , '0', ALIGN_RIGHT) . // Facultatif CTONET Canton
|
||
initstr($b['insTCD'], 2 , '0', ALIGN_RIGHT) . // Facultatif TCD Tranche de commune détaillée
|
||
initstr($b['insZEMET'], 2 , '0', ALIGN_RIGHT) . // Facultatif ZEMET Zone d'emploi
|
||
initstr($b['insDU'], 2 ) . // Facultatif DU Département de l'unité urbaine de localisation
|
||
initstr($b['insTU'], 1 ) . // Facultatif TU Taille de l'unité urbaine
|
||
initstr($b['insUU'], 2 ) . // Facultatif UU Numéro de l'untié urbaine
|
||
initstr(str_replace('-','',$a['DateCreaEt']), 8 , '0', ALIGN_RIGHT) . // Facultatif DCRET Date de création de l'établissement
|
||
initstr($a['NafEtab'], 5 ) . // Obligatoire APE_ETAB Code activité dans la NAF rév2 de l'établissement
|
||
initstr($a['NaceEtab'], 5 ) . // Facultatif NACE_ETAB Code activité NACE de l'établissement
|
||
|
||
initstr(0, 4 , '0', ALIGN_RIGHT) . // Facultatif DAPET Année de validité de l'activité principale de l'établissement
|
||
|
||
initstr($a['EffectifEtab'], 7 , '0', ALIGN_RIGHT) . // Facultatif EFF_ET Effectif de l'établissement
|
||
initstr($a['EffEtTr'], 2 ) . // Facultatif TEFF_ET Tranche d'effectif de l'établissement
|
||
initstr($a['AnneeEffEt'], 4 , '0', ALIGN_RIGHT) . // Facultatif DEFET Année de mise à jour de l'effectif établissement
|
||
|
||
initstr('', 1 ) . // Facultatif MODET Modalité de l'activité pricipale de l'établissement
|
||
|
||
initstr($a['EXPLET'], 1 ) . // Facultatif EXPLET Etablissement exploitant tout ou partie des moyens de production
|
||
initstr($b['insRPET'], 2 , '0', ALIGN_RIGHT) . // Facultatif RPET Région de localisation de l'établissement
|
||
|
||
initstr(str_replace('-','',0), 8 , '0', ALIGN_RIGHT) . // Facultatif DREACTET Date de réactivation de l'établissement
|
||
initstr(str_replace('-','',0), 8 , '0', ALIGN_RIGHT) . // Facultatif DATEFERET Date de fermeture de l'établissement
|
||
|
||
initstr($b['insEAEANT'], 4 , '0', ALIGN_RIGHT) . // Facultatif EAEANT Année de validité des rubriques de niveau Etab provenant des EAE*
|
||
initstr($b['insEAEAPET'], 5 ) . // Facultatif EAEAPET Activité principale de l'établissement issue des EAE
|
||
initstr($b['insEAESEC1T'], 5 ) . // Facultatif EAESEC1T Activité secondaire de l'établissement issue des EAE
|
||
initstr($b['insEAESEC2T'], 5 ) . // Facultatif EAESEC2T Autre activité secondaire de l'établissement issue des EAE
|
||
initstr(str_replace('-','',$a['DateCreaEn']), 8 , '0', ALIGN_RIGHT) . // Facultatif DCREN Date de création de l'entreprise
|
||
initstr($a['NafEnt'], 5 ) . // Obligatoire APE_ENT Code activité dans la NAF rév2 de l'entreprise
|
||
initstr($a['NaceEnt'], 5 ) . // Facultatif NACE_ENT Code activité NACE de l'entreprise
|
||
|
||
initstr(0, 4 , '0', ALIGN_RIGHT) . // Facultatif DAPEN Année de validité de l'activité principale de l'entreprise
|
||
|
||
initstr($a['Effectif'], 7 , '0', ALIGN_RIGHT) . // Facultatif EFF_ENT Effectif de l'entreprise
|
||
initstr($a['EffEnTr'], 2 ) . // Facultatif TEFF_ENT Tranche d'effectif de l'entreprise
|
||
initstr($a['AnneeEffEn'], 4 , '0', ALIGN_RIGHT) . // Facultatif DEFEN Année de mise à jour de l'effectif entreprise
|
||
initstr($a['MODEN'], 1 ) . // Facultatif MODEN Modalité de l'activité pricipale de l'entreprise
|
||
initstr($a['EXPLEN'], 1 ) . // Facultatif EXPLEN Entreprise exploitant tout ou partie des moyens de production
|
||
initstr($b['insRPEN'], 2 , '0', ALIGN_RIGHT) . // Facultatif RPEN Région de localisation du siège de l'entreprise
|
||
initstr(str_replace('-','',$ev_DREACTEN), 8 , '0', ALIGN_RIGHT) . // Facultatif DREACTEN Date de réactivation de l'entreprise
|
||
initstr(str_replace('-','',$ev_DATEFEREN), 8 , '0', ALIGN_RIGHT) . // Facultatif DATEFEREN Date de fermeture de l'entreprise
|
||
initstr(str_replace('-','',$a['dateImmat']),8 , '0', ALIGN_RIGHT) . // Facultatif DATEIMMAT Date d'immatriculation de l'entreprise au RCS
|
||
initstr(str_replace('-','',$a['dateRad']), 8 , '0', ALIGN_RIGHT) . // Facultatif DATERAD Date de radiation de l'entreprise du RCS
|
||
initstr($a['Capital'], 15 , '0', ALIGN_RIGHT) . // Facultatif CAPITAL Montant du capital de l'entreprise
|
||
initstr($a['CapitalType'], 1 ) . // Facultatif CAPITALTYPE Type de capital
|
||
initstr($a['CapitalDev'], 3 ) . // Facultatif CAPITALDEV Devise du capital
|
||
initstr($a['FJ'], 4 , '0', ALIGN_RIGHT) . // Obligatoire CJ Catégorie Juridique de l'entreprise
|
||
initstr($a['Civilite'], 1 , '0', ALIGN_RIGHT) . // Facultatif CIVILITE Civilité de l'entreprise si Personne Physique
|
||
initstr($a['NbEtab'], 4 , '0', ALIGN_RIGHT) . // Facultatif NBETAB Nombre d'établissements actifs de l'entreprise
|
||
initstr($a['TrancheCA'], 1 , '0', ALIGN_RIGHT) . // Facultatif TCA Tranche de chiffre d'affaire
|
||
|
||
initstr($a['TrancheCAexp'], 1 , '0', ALIGN_RIGHT) . // Facultatif TCAEXP Tranche de chiffre d'affaire à l'export
|
||
initstr($a['APRM'], 6 ) . // Facultatif APRM Activité principale au registre des métiers
|
||
initstr($a['MONOREG'], 1 , '0', ALIGN_RIGHT) . // Facultatif MONOREG Mono-régionalité de l'entreprise
|
||
initstr($a['REGIMP'], 2 , '0', ALIGN_RIGHT) . // Facultatif REGIMP Principale région d'implantation de l'entreprise
|
||
initstr($a['MONOACT'], 1 , '0', ALIGN_RIGHT) . // Facultatif MONOACT Mono-activité de l'entreprise
|
||
initstr(substr($a['SiretSiege'],-5), 5 , '0', ALIGN_RIGHT) . // Facultatif NICSIEGE Nic de l'établissement siège
|
||
initstr($a['RECME'], 1 , '0', ALIGN_RIGHT) . // Facultatif RECME Répertoire des Entreprises Contrôlées Majoritairement par l'État
|
||
initstr($ev_SIRETLIE, 14 , '0', ALIGN_RIGHT) . // Facultatif SIRETLIE Siret lié : prédécesseur, successeur, doublon, autre
|
||
initstr($ev_SIRETLIETYPE, 1) . // Facultatif SIRETLIETYPE Type de sitet lié
|
||
initstr($a['AutreSiret']['pre']['nic'], 5 , '0', ALIGN_RIGHT) . // Facultatif NICPREC Nic de l'établissement prédécesseur (dans le cadre d'un transfert)
|
||
initstr($a['AutreSiret']['suc']['nic'], 5 , '0', ALIGN_RIGHT) . // Facultatif NICSUIV Nic de l'établissement successeur (dans le cadre d'un transfert)
|
||
initstr($ev_DESTINAT, 2 ) . // Facultatif insDESTINAT Destination Insee
|
||
initstr($b['insDEPCOMEN'], 5 , '0', ALIGN_RIGHT) . // Facultatif insDEPCOMEN Code commune Insee du siège de l'entreprise
|
||
initstr($ev_MNICSIEGE, 1 , '0', ALIGN_RIGHT) . // Facultatif insMNICSIEGE Indicateur de MAJ du NIC SIEGE
|
||
initstr($ev_MNOMEN, 1 , '0', ALIGN_RIGHT) . // Facultatif insMNOMEN Indicateur de MAJ de la Raison Sociale
|
||
initstr($ev_MCJ, 1 , '0', ALIGN_RIGHT) . // Facultatif insMCJ Indicateur de MAJ de la Forme Juridique
|
||
initstr($ev_MAPEN, 1 , '0', ALIGN_RIGHT) . // Facultatif insMAPEN Indicateur de MAJ du NAF entreprise
|
||
initstr($ev_MENSEIGNE, 1 , '0', ALIGN_RIGHT) . // Facultatif insMENSEIGNE Indicateur de MAJ de l'ENSEIGNE
|
||
initstr($ev_MAPET, 1 , '0', ALIGN_RIGHT) . // Facultatif insMAPET Indicateur de MAJ du NAF établissement
|
||
initstr($ev_MADRESSE, 1 , '0', ALIGN_RIGHT) . // Facultatif insMADRESSE Indicateur de MAJ de l'ADRESSE de l'établissement
|
||
initstr($ev_MAUXILT, 1 , '0', ALIGN_RIGHT) . // Facultatif insMAUXILT Indicateur de MAJ de l'AUXILIARITE
|
||
initstr($ev_MSIGLE, 1 , '0', ALIGN_RIGHT) . // Facultatif insMSIGLE Indicateur de MAJ du SIGLE
|
||
initstr($ev_MEXPLEN, 1 , '0', ALIGN_RIGHT) . // Facultatif insMEXPLEN Indicateur de MAJ du caractère EXPLOITANT entrep
|
||
initstr($ev_MEXPLET, 1 , '0', ALIGN_RIGHT) . // Facultatif insMEXPLET Indicateur de MAJ du caractère EXPLOITANT étab
|
||
initstr(1, 1 ) . // Facultatif ADR_RNVP Type de Prestation RNVP si RNVP
|
||
initstr($c['L1_NOM'], 38 ) . // Facultatif L1_nomen Ligne 1 : Nom de l'entreprise
|
||
initstr($c['L2_NOM2'], 38 ) . // Facultatif L2_COMP Ligne 2 : Complément de nom
|
||
initstr($c['L3_ADRCOMP'], 38 ) . // Facultatif L3_CADR Ligne 3 : Complément d'adresse
|
||
initstr($c['L4_VOIE'], 38 ) . // Facultatif L4_VOIE Ligne 4 : Adresse
|
||
initstr($c['L5_DISTSP'], 38 ) . // Facultatif L5_DISP Ligne 5 : Distribution spéciale
|
||
initstr($c['L6_POST'], 38 ) . // Facultatif L6_POST Ligne 6 : Code Postal, commune, etc..
|
||
initstr($c['L7_PAYS'], 38 ) . // Facultatif L7_ETRG Ligne 7 : Pays si étranger
|
||
initstr($b['insEAEANN'], 4 , '0', ALIGN_RIGHT) . // Facultatif EAEANN Année de validité des rubriques de niveau ENTREP provenant des EAE*
|
||
initstr($b['insEAEAPEN'], 5 ) . // Facultatif EAEAPEN Activité principale de l'entreprise issue des EAE
|
||
initstr($b['insEAESEC1N'], 5 ) . // Facultatif inseaesec1n Activité secondaire n°1 de l'entreprise issue des EAE
|
||
initstr($b['insEAESEC2N'], 5 ) . // Facultatif inseaesec2n Activité secondaire n°2 de l'entreprise issue des EAE
|
||
initstr($b['insEAESEC3N'], 5 ) . // Facultatif inseaesec3n Activité secondaire n°3 de l'entreprise issue des EAE
|
||
initstr($b['insEAESEC4N'], 5 ) . // Facultatif inseaesec4n Activité secondaire n°4 de l'entreprise issue des EAE
|
||
initstr($a['GeoLat'], 12 , ' ', ALIGN_RIGHT) . // Facultatif GPSX Latitude en ° et décimales de ° (format WGS1984)
|
||
initstr($a['GeoLon'], 12 , ' ', ALIGN_RIGHT) . // Facultatif GPSY Longitude en ° et décimales de ° (format WGS1984)
|
||
initstr($a['GeoPrecis'], 1 , '0', ALIGN_RIGHT) . // Facultatif GPSP Niveau de précision du géocodage
|
||
initstr($a['GeoInfos']['NZUS'], 10 ) . // Facultatif ZUS Identifiant de la Zone Urbaine Sensible
|
||
initstr($a['GeoInfos']['NZRU'], 10 ) . // Facultatif ZRU Identifiant de la Zone de Rénovation Urbaine
|
||
initstr($a['GeoInfos']['NZFU'], 10 ) . // Facultatif ZFU Identifiant de la Zone Franche Urbaine
|
||
initstr($a['GeoInfos']['NCUCS'],10 ) . // Facultatif CUCS Identifiant de la Zone Contrat Urbain de Cohésion Social
|
||
initstr($a['GeoInfos']['NAFR'], 10 ) . // Facultatif AFR Identifiant de la Zone AFR
|
||
initstr($a['GeoInfos']['NZRR'], 10 ) . // Facultatif ZRR Identifiant de la ZRR
|
||
initstr($a['TvaNumero'], 15 ) . // Facultatif TVA Numéro de TVA Intracommunataire
|
||
initstr($a['TvaAttribue'], 1 , '0', ALIGN_RIGHT) . // Facultatif TVAVALIDE Numéro de TVA validé
|
||
initstr($a['AncienSiege'], 1 , '0', ALIGN_RIGHT) . // Facultatif ANCIENSIEGE Ancien siège
|
||
initstr($a['Isin'], 12 ) . // Facultatif CODEISIN Code ISIN de l'entreprise si cotation en bourse
|
||
// A voir
|
||
initstr($a['dir1NomPrenom'], 40 ) . // Facultatif PPDIR1NOM Nom du principal dirigeant
|
||
initstr('', 30 ) . // Facultatif PPDIR1PRENOM Prénom du principal dirigeant
|
||
initstr('', 40 ) . // Facultatif PPDIR1NNAISS Nom de naissance du ppl dirigeant
|
||
initstr(str_replace('-','',$a['dir1DateNaiss']), 8 , '0', ALIGN_RIGHT).// Facultatif PPDIR1DNAISS Date de naissance
|
||
initstr($a['dir1LieuNaiss'], 35 ) . // Facultatif PPDIR1LNAISS Lieu de Naissance
|
||
initstr($a['dir1Code'], 4 , '0', ALIGN_RIGHT) . // Facultatif PPDIR1FONC Code Fonction
|
||
initstr(str_replace('-','',$a['dir1DateFct']), 8 , '0', ALIGN_RIGHT) . // Facultatif PPDIR1MAJ Date de MAJ du ppl dirigeant
|
||
// A voir
|
||
initstr($a['dir2NomPrenom'], 40 ) . // Facultatif PPDIR2NOM Nom du seconde principal dirigeant
|
||
initstr('', 30 ) . // Facultatif PPDIR2PRENOM Prénom du 2ème principal dirigeant
|
||
initstr('', 40 ) . // Facultatif PPDIR2NNAISS Nom de naissance du 2ème ppl dirigeant
|
||
initstr(str_replace('-','',$a['dir2DateNaiss']), 8 , '0', ALIGN_RIGHT).// Facultatif PPDIR2DNAISS Date de naissance du 2ème ppl dirigeant
|
||
initstr($a['dir2LieuNaiss'], 35 ) . // Facultatif PPDIR2LNAISS Lieu de Naissance du 2ème ppl dirigeant
|
||
initstr($a['dir2Code'], 4 , '0', ALIGN_RIGHT) . // Facultatif PPDIR2FONC Code Fonction du 2ème ppl dirigeant
|
||
initstr(str_replace('-','',$a['dir2DateFct']), 8 , '0', ALIGN_RIGHT) . // Facultatif PPDIR2MAJ Date de MAJ du 2ème ppl dirigeant
|
||
initstr(str_replace('-','',$a['bilanDate']), 8 , '0', ALIGN_RIGHT) . // Facultatif BILANCLOT Date de dernière clôture de bilan disponible
|
||
initstr($a['bilanMois'], 2 , '0', ALIGN_RIGHT) . // Facultatif BILANDUREE Durée du dernier exercice disponible
|
||
initstr($tcaSEDmt, 15 , '0', ALIGN_RIGHT) . // Facultatif BILANCA Chiffre d'affaires au dernier bilan disponible
|
||
initstr($a['bilanHN'], 15 , '0', ALIGN_RIGHT) . // Facultatif BILANRES Résultat au dernier bilan disponible
|
||
initstr($tcaSED, 1 ) . // Tranche de CA SED
|
||
initstr($tcaSEDtype, 1 ) . // Type de tranche de CA : (R)éel, (I)nconnu ou (E)stimé
|
||
initstr($tcaSEDannee, 4 ) . // Année du CA
|
||
initstr(' ', 35) ; // Facultatif FILLER1 Zone libre
|
||
|
||
/*
|
||
AnneeTCA
|
||
CapitalNbActions
|
||
CapitalMtActions
|
||
*/
|
||
fwrite($fp, initstr($str,LONGUEUR_LIGNE_SORTIE).$optionEOL);
|
||
$nbLignes++;
|
||
|
||
$mBil=new MBilans($siren);
|
||
$tabBilans=@$mBil->listeBilans();
|
||
$iBil=0;
|
||
if ($nbBilansMax>0) {
|
||
foreach ($tabBilans as $idxBilan=>$derBilan) {
|
||
$iBil++;
|
||
/*if (count($tabBilans)>0) {
|
||
print_r($tabBilans);
|
||
die();
|
||
}
|
||
$derBilan=current($tabBilans);*/
|
||
$p=@$mBil->getBilan(WDate::dateT('Ymd','d/m/Y',$derBilan['dateExercice']), $derBilan['typeBilan']);
|
||
//print_r($p);
|
||
if ($p['CONSOLIDE']=='S') $numLiasse='2033';
|
||
else $numLiasse='2050';
|
||
$unite=strtoupper($p['MONNAIE_LIV_UNITE']);
|
||
if ($unite=='') $unite='U';
|
||
|
||
$strIni=initstr($typeLigneBilan, 3) . // Obligatoire CODE_ENTETE Ligne de description structurée de l'identité
|
||
initstr($a['SourceId'], 10 , '0', ALIGN_RIGHT) . // Obligatoire ID Numéro unique d'identification interne d'un établissement S&D
|
||
initstr($a['Siren'], 9 , '0', ALIGN_RIGHT) . // Obligatoire SIREN Siren de l'entreprise
|
||
initstr($a['Nic'], 5 , '0', ALIGN_RIGHT) . // Obligatoire NIC Nic de l'établissement
|
||
initstr($a['Source'], 3 , '0', ALIGN_RIGHT) . // Obligatoire SOURCE Source de la fiche d'identité
|
||
initstr($iInsee->valideSiren($siren,$nic), 1 , '0', ALIGN_RIGHT) . // Obligatoire SIRETVALIDE Siren/siret valide
|
||
initstr($a['numRC'], 10 ) . // Facultatif NUMRCS Numéro de Registre du Commerce et des Sociétés
|
||
initstr($a['Tribunal'], 6 ) . // Facultatif TRIBUNAL Identifiant du Tribunal
|
||
initstr(str_replace('-','',$p['DATE_FRAICHE_BILAN']), 8, '0', ALIGN_RIGHT) . // DATEMAJ Date de la dernière mise à jour du bilan dans la base S&D Format AAAAMMJJ
|
||
initstr(substr($p['DATE_FRAICHE_BILAN'],0,4), 4, '0', ALIGN_RIGHT) . // MILLESIME Année du bilan
|
||
initstr(str_replace('-','',$p['DATE_CLOTURE']), 8, '0', ALIGN_RIGHT) . // BILAN_DATE Date de clôture du bilan Format AAAAMMJJ
|
||
initstr($p['DUREE_MOIS'], 2, '0', ALIGN_RIGHT) . // BILAN_DUREE Durée de l'exercice en mois
|
||
initstr(str_replace('-','',$p['DATE_CLOTURE_PRE']), 8, '0', ALIGN_RIGHT) . // BILAN_DATEP Date de clôture du bilan précédent Format AAAAMMJJ
|
||
initstr($p['DUREE_MOIS_PRE'], 2, '0', ALIGN_RIGHT) . // BILAN_DUREEP Durée de l'exercice précédent en mois
|
||
initstr($numLiasse,4) . // BILAN_LIASSE Numéro de la première liasse du bilan 2033,2050
|
||
initstr($p['CONSOLIDE'], 1) . // BILAN_TYPE Type de bilan S=Réel Normal Simplifié, C=Consolidé, N=Réel Normal
|
||
initstr($p['MONNAIE'], 3) . // BILAN_MONNAIE Code devise de livraison selon la norme ISO 4217 (3 lettres)
|
||
initstr($p['MONNAIE_ORI'], 3) . // BILAN_MONNAIEO Code devise d'origine du bilan selon la norme ISO 4217*
|
||
initstr($unite, 1); // BILAN_UNITE Unité du bilan livré U=en unité de devise, K=en milliers, M=en millions
|
||
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 ($typeLigneBilan==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;
|
||
fwrite($fp, initstr($strIni.$strP,LONGUEUR_LIGNE_SORTIE).$optionEOL);
|
||
$nbLignes++;
|
||
$nbP=0;$strP='';
|
||
}
|
||
if($nbP<76) { // Ecriture de la dernière ligne sauf s'il y a dejà 76 postes
|
||
fwrite($fp, initstr($strIni.$strP,LONGUEUR_LIGNE_SORTIE).$optionEOL);
|
||
$nbLignes++;
|
||
}
|
||
} 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']);
|
||
|
||
fwrite($fp, initstr($strIni.$strP,LONGUEUR_LIGNE_SORTIE).$optionEOL);
|
||
$nbLignes++;
|
||
$strP='';
|
||
}
|
||
if ($iBil==$nbBilansMax) break;
|
||
}
|
||
//die();
|
||
}
|
||
if ($nbLignes%100==0) 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;
|
||
|
||
/** Envoi du fichier produit par mail
|
||
**/
|
||
if (isset($tabPresta['mailTo'])) {
|
||
$tabAttached=array(REP_TEMP.$typePrestaton.'_'.$clientIdentifiant.'_'.DATETIME.'.txt');
|
||
$messageInfo="Bonjour,
|
||
|
||
Veuillez trouver le fichier d'établissements Scores & Décisions relatifs à votre abonnement.
|
||
|
||
Bien Cordialement,
|
||
Le service Support.
|
||
|
||
--
|
||
|
||
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', $tabPresta['mailTo'].',support@scores-decisions.com', "Diffusion A6CMO S&D", $messageInfo, '', $tabAttached))
|
||
echo date ('Y/m/d - H:i:s')." - Prestation n°$numPrestation, Client $nomClient : Fichier envoyé à ".$tabPresta['mailTo'].EOL;
|
||
else
|
||
echo date ('Y/m/d - H:i:s')." - Prestation n°$numPrestation, Client $nomClient : Erreur lors de l'envoi du fichier à ".$tabPresta['mailTo'].EOL;
|
||
}
|
||
|
||
if (!copy(REP_TEMP.$typePrestaton.'_'.$clientIdentifiant.'_'.DATETIME.'.txt','/home/data/clients/a6cmo/'.$typePrestaton.'_'.$clientIdentifiant.'_'.DATETIME.'.txt'))
|
||
echo date ('Y/m/d - H:i:s')." - ERREUR : Copie du fichier dans A6CMO impossible !".EOL;
|
||
else
|
||
echo date ('Y/m/d - H:i:s')." - Prestation n°$numPrestation, Client $nomClient : Fichier disponible dans A6CMO.".EOL;
|
||
|
||
}
|
||
|
||
die();
|
||
|
||
/** 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']."'");
|
||
}
|
||
|
||
/** Conversion du fichier si nécessaire en CSV
|
||
**/
|
||
if ($tabAdherent['formatEnvois']=='csv') {
|
||
$ligneOut='';
|
||
$ligne001=$ligne100=$ligne104=$ligne999=0;
|
||
$tabLignes=file(REP_TEMP. $typePrestaton.'_'.$clientIdentifiant.'_'.DATETIME.'.txt');
|
||
$fichier_csv=$typePrestaton.'_'.$clientIdentifiant.'_'.DATETIME.'.csv';
|
||
$fp=fopen(REP_TEMP . $fichier_csv, 'w');
|
||
foreach ($tabLignes as $i=>$ligne) {
|
||
$ecrireLignePre=false;
|
||
$typeLigne=substr($ligne, 0, 3)*1;
|
||
switch ($typeLigne) {
|
||
case 1: // Ligne ignorée
|
||
// Ecriture de l'entête
|
||
$siren ='Siren';
|
||
$nic ='Nic';
|
||
$ref ='Référence';
|
||
$numPar ='Parution';
|
||
$bodacc ='Bodacc';
|
||
$datePar='Date parution';
|
||
$numAnn ='Numéro Annonce';
|
||
$cor ='Type Annonce';
|
||
$libTri ='Tribunal';
|
||
$numRC ='Numéro RCS';
|
||
$raisonS='Raison sociale';
|
||
$catEven='Chapitre';
|
||
$txtEven='Evènement(s)';
|
||
$dateEve='Date évènement';
|
||
$txtAnn ='Texte Annonce';
|
||
$ligne001++;
|
||
break;
|
||
case 100: // Structure Bodacc
|
||
$ligneOut="$siren;$nic;$ref;$numPar;$bodacc;$datePar;$numAnn;$cor;$libTri;$numRC;$raisonS;$catEven;$txtEven;$dateEve;$txtAnn";
|
||
$ligne100++;
|
||
$siren = substr($ligne, 13 , 9 ); // Siren de l'entreprise concernée par l'annonce
|
||
$nic = trim(substr($ligne, 22, 5 )); // Nic
|
||
$ref = trim(substr($ligne, 71, 18 )); // Référence Client
|
||
$numPar = substr($ligne, 27 , 3 ); // Numéro de parution du Bodacc dans l'année
|
||
$bodacc = substr($ligne, 30 , 1 ); // Code Bodacc (A, B ou C) A, B ou C
|
||
$datePar= WDate::dateT('Ymd','d/M/Y',substr($ligne,31,8)); // Date de parution du Bodacc Format AAAAMMJJ
|
||
$numAnn = substr($ligne, 39 , 5 ); // Numéro de l'annonce dans le Bodacc
|
||
$typeAnn= substr($ligne, 47 , 1 ); // Type d'annonce Bodacc I=Insertion (publication d'une annonce), A=Additif (ajout à une précédente annonce), (1) R=Rectificatif (correction d'une annonce), S=Suppression d'une annonce
|
||
$corNumA= substr($ligne, 48 , 5 ); // Numéro de l'annonce corrigée Si annonce différent de Insertion
|
||
$corDate= substr($ligne, 53 , 8 ); // Date du Bodacc de l'annonce corrigée Si annonce différent de Insertion. Format AAAAMMJJ
|
||
$corPage= substr($ligne, 61 , 6 ); // Première page du Bodacc de l'annonce corrigée Si annonce différent de Insertion
|
||
$corNumP= substr($ligne, 67 , 4 ); // Numéro parution du Bodacc dans l'année de l'annonce corrigée Si annonce différent de Insertion
|
||
$dateEve1=substr($ligne, 1144, 8 ); // Date de jugezment
|
||
$dateEve2=substr($ligne, 1161, 8 ); // Date d'effet, etc...
|
||
if ($dateEve1>0)
|
||
$dateEve=WDate::dateT('Ymd','d/M/Y',$dateEve1);
|
||
elseif ($dateEve2>0)
|
||
$dateEve=WDate::dateT('Ymd','d/M/Y',$dateEve2);
|
||
else
|
||
$dateEve='';
|
||
$cor='';
|
||
if ($typeAnn<>'I') $cor=" - Annonce n°$corNumA $corNumP, page $corPage, du ".WDate::dateT('Ymd','d/M/Y',$corDate);
|
||
switch($typeAnn) {
|
||
case 'I': $cor='Insertion'.$cor; break;
|
||
case 'A': $cor='Additif'.$cor; break;
|
||
case 'R': $cor='Rectificatif'.$cor; break;
|
||
case 'S': $cor='Suppression'.$cor; break;
|
||
default: break;
|
||
}
|
||
$codeTri= substr($ligne, 89 , 6 ); // Code Tribunal Codification interne utilisée par le Bodacc
|
||
$libTri=$iBodacc->getTribunalNom($codeTri);
|
||
|
||
$numRC = trim(substr($ligne, 95 , 9 )); // Numéro de RC (Registre du Commerce) de l'entreprise
|
||
$raisonS= trim(substr($ligne, 104 , 150 )); // Raison sociale de l'entreprise
|
||
$even=array();
|
||
$even[7]= substr($ligne, 996 , 4 )*1; // Code Evènement Bodacc n°1 Cf. Table EVEN
|
||
$even[6]= substr($ligne, 1000, 4 )*1; // Code Evènement Bodacc n°2 Cf. Table EVEN
|
||
$even[5]= substr($ligne, 1004, 4 )*1; // Code Evènement Bodacc n°3 Cf. Table EVEN
|
||
$even[4]= substr($ligne, 1008, 4 )*1; // Code Evènement Bodacc n°4 Cf. Table EVEN
|
||
$even[3]= substr($ligne, 1012, 4 )*1; // Code Evènement Bodacc n°5 Cf. Table EVEN
|
||
$even[2]= substr($ligne, 1016, 4 )*1; // Code Evènement Bodacc n°6 Cf. Table EVEN
|
||
$even[1]= substr($ligne, 1020, 4 )*1; // Code Evènement Bodacc n°7 Cf. Table EVEN
|
||
$even[0]= substr($ligne, 1024, 4 )*1; // Code Evènement Bodacc n°8 Cf. Table EVEN
|
||
$txtEven='';
|
||
foreach ($even as $codeEven)
|
||
if ($codeEven<>0) {
|
||
$txtEven.=$iBodacc->getEvenement($codeEven)." ($codeEven), ";
|
||
$catEven=$iBodacc->getChapitreEvenement($codeEven);
|
||
}
|
||
else
|
||
$txtEven.='';
|
||
$txtEven=substr($txtEven,0,strlen($txtEven)-2);
|
||
$txtAnn='';
|
||
$ecrireLignePre=true;
|
||
break;
|
||
case 104: // Annonce
|
||
$ligne104++;
|
||
$txtAnn=trim($txtAnn.' '.str_replace(';','.',trim(substr($ligne, 89 , 1910)))); // Texte Annonce
|
||
break;
|
||
case 999: // Ligne ignorée
|
||
$ligneOut="$siren;$nic;$ref;$numPar;$bodacc;$datePar;$numAnn;$cor;$libTri;$numRC;$raisonS;$catEven;$txtEven;$dateEve;$txtAnn";
|
||
$ligne999++;
|
||
$ecrireLignePre=true;
|
||
break;
|
||
default: // Ligne non gérée
|
||
break;
|
||
}
|
||
if ($ecrireLignePre) fwrite($fp, $ligneOut.EOL);
|
||
}
|
||
fclose($fp);
|
||
echo date ('Y/m/d - H:i:s')." - Conversion du fichier $fichier_csv terminée !".EOL;
|
||
}
|
||
/** Conversion du fichier si nécessaire en SO2000
|
||
**/
|
||
elseif ($tabAdherent['formatEnvois']=='specifique') {
|
||
$fichierIn=$typePrestaton.'_'.$clientIdentifiant.'_'.DATETIME.'.txt';
|
||
if (preg_match('/APICIL/',$fichierIn)) { $numeroAbonneBil='019400018'; $optionsIdBil='I'; }
|
||
// elseif (preg_match('/METRO/',$fichierIn)) { $numeroAbonneBil='013990040'; $optionsIdBil='IN'; }
|
||
$ret=conversionSd2So2000($repProduction.$fichierIn, $numeroAbonneBil, '', $optionsIdBil);
|
||
if ($ret===true)
|
||
echo date('Y/m/d - H:i:s') . " - Conversion spécifique BIL/SO2000 (abonné $numeroAbonneBil) terminée !".EOL;
|
||
else
|
||
echo date('Y/m/d - H:i:s') . " - ERREUR lors de la conversion du fichier S&D $fichierIn en BIL/SO2000 (abonné $numeroAbonneBil) : $ret !".EOL;
|
||
}
|
||
|
||
/*Gzip ou zip zt envoi par mail ou dépot sur le site FTP*/
|
||
switch ($optionZip) {
|
||
case 'zip':
|
||
$zip = new ZipArchive;
|
||
$ficProduction=$typePrestaton.'_'.$clientIdentifiant.'_'.DATETIME.'.zip';
|
||
$res = $zip->open($repProduction.$ficProduction, 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');
|
||
if ($tabAdherent['formatEnvois']=='csv')
|
||
$zip->addFile(REP_TEMP. $fichier_csv, $fichier_csv);
|
||
$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':
|
||
$ficProduction= $typePrestaton.'_'.$clientIdentifiant.'_'.DATETIME.'.txt.gz';
|
||
$string=file_get_contents(REP_TEMP. $typePrestaton.'_'.$clientIdentifiant.'_'.DATETIME.'.txt');
|
||
$gz = gzopen($repProduction.$ficProduction,'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;
|
||
}
|
||
|
||
if ($tabAdherent['formatEnvois']=='csv') {
|
||
$ficProduction_csv= $typePrestaton.'_'.$clientIdentifiant.'_'.DATETIME.'.csv.gz';
|
||
$string=file_get_contents(REP_TEMP. $fichier_csv);
|
||
$gz = gzopen($repProduction.$ficProduction_csv,'w9');
|
||
if (!$gz) {
|
||
echo date ('Y/m/d - H:i:s')." - ERREUR : Compression Gzip du fichier $fichier_csv impossible !".EOL;
|
||
} else {
|
||
gzwrite($gz, $string);
|
||
gzclose($gz);
|
||
echo date ('Y/m/d - H:i:s')." - Compression du fichier $ficProduction_csv OK...".EOL;
|
||
}
|
||
}
|
||
break;
|
||
case 'bzip2':
|
||
$ficProduction=$typePrestaton.'_'.$clientIdentifiant.'_'.DATETIME.'.txt.bz2';
|
||
$string=file_get_contents(REP_TEMP. $typePrestaton.'_'.$clientIdentifiant.'_'.DATETIME.'.txt');
|
||
$bz = bzopen($repProduction.$ficProduction,'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;
|
||
}
|
||
if ($tabAdherent['formatEnvois']=='csv') {
|
||
$ficProduction_csv= $typePrestaton.'_'.$clientIdentifiant.'_'.DATETIME.'.csv.bz2';
|
||
$string=file_get_contents(REP_TEMP. $fichier_csv);
|
||
$bz = bzopen($repProduction.$ficProduction_csv,'w');
|
||
if (!$bz) {
|
||
echo date ('Y/m/d - H:i:s')." - ERREUR : Compression Bzip2 du fichier $fichier_csv impossible !".EOL;
|
||
} else {
|
||
bzwrite($bz, $string, strlen($string));
|
||
bzclose($bz);
|
||
echo date ('Y/m/d - H:i:s')." - Compression du fichier $ficProduction_csv OK...".EOL;
|
||
}
|
||
}
|
||
break;
|
||
default:
|
||
$ficProduction= $typePrestaton.'_'.$clientIdentifiant.'_'.DATETIME.'.txt';
|
||
$ficProduction_csv= $typePrestaton.'_'.$clientIdentifiant.'_'.DATETIME.'.csv';
|
||
if (!copy(REP_TEMP.$ficProduction, $repProduction.$ficProduction))
|
||
echo date ('Y/m/d - H:i:s')." - ERREUR : Déplacement du fichier $ficProduction impossible !".EOL;
|
||
else
|
||
echo date ('Y/m/d - H:i:s')." - Le fichier $ficProduction a été créé...".EOL;
|
||
if ($tabAdherent['formatEnvois']=='csv') {
|
||
if (!copy(REP_TEMP.$ficProduction_csv, $repProduction.$ficProduction_csv))
|
||
echo date ('Y/m/d - H:i:s')." - ERREUR : Déplacement du fichier $ficProduction_csv impossible !".EOL;
|
||
else
|
||
echo date ('Y/m/d - H:i:s')." - Le fichier $ficProduction_csv a été créé...".EOL;
|
||
}
|
||
break;
|
||
}
|
||
|
||
/** Sauvegarde des fichiers dans clients **/
|
||
$repBakClient='/home/data/clients/'.strtolower($tabAdherent['nomClient']);
|
||
if (!file_exists($repBakClient)) {
|
||
echo date ('Y/m/d - H:i:s')." - ATTENTION : Les dossiers BACKUP du client ne sont pas correctement créés !".EOL;
|
||
if (!file_exists($repBakClient) && mkdir($repBakClient))
|
||
echo date ('Y/m/d - H:i:s')." - Le dossier Backup du client a été créé ($repBakClient)".EOL;
|
||
// if (!file_exists($repFtpClient.'/recv') && mkdir($repFtpClient.'/recv'))
|
||
// echo date ('Y/m/d - H:i:s')." - Le dossier FTP/RECV du client a été créé ($repFtpClient/recv)".EOL;
|
||
}
|
||
if (!copy($repProduction.$ficProduction, $repBakClient.'/'.$ficProduction))
|
||
echo date ('Y/m/d - H:i:s')." - ERREUR : Copy du fichier $ficProduction dans Backup impossible !".EOL;
|
||
else
|
||
echo date ('Y/m/d - H:i:s')." - Le fichier $ficProduction a été historisé...".EOL;
|
||
|
||
if ($tabAdherent['formatEnvois']=='csv') {
|
||
if (!copy($repProduction.$ficProduction_csv, $repBakClient.'/'.$ficProduction_csv))
|
||
echo date ('Y/m/d - H:i:s')." - ERREUR : Historisation du fichier $ficProduction_csv impossible !".EOL;
|
||
else
|
||
echo date ('Y/m/d - H:i:s')." - Le fichier $ficProduction_csv a été historisé...".EOL;
|
||
}
|
||
|
||
/** Si FTP, déplacement dans les dossiers adéquats **/
|
||
if ($tabAdherent['supportPrestation']=='ftp' || $tabAdherent['supportPrestation']=='web') {//$repProduction.$ficProduction
|
||
$repFtpClient='/home/data/ftp/'.strtolower($tabAdherent['nomClient']);
|
||
if (!file_exists($repFtpClient) || !file_exists($repFtpClient.'/recv')) {
|
||
echo date ('Y/m/d - H:i:s')." - ATTENTION : Les dossiers FTP du client ne sont pas correctement créés !".EOL;
|
||
if (!file_exists($repFtpClient) && mkdir($repFtpClient))
|
||
echo date ('Y/m/d - H:i:s')." - Le dossier FTP du client a été créé ($repFtpClient)".EOL;
|
||
if (!file_exists($repFtpClient.'/recv') && mkdir($repFtpClient.'/recv'))
|
||
echo date ('Y/m/d - H:i:s')." - Le dossier FTP/RECV du client a été créé ($repFtpClient/recv)".EOL;
|
||
}
|
||
if (!move($repProduction.$ficProduction, $repFtpClient.'/recv/'.$ficProduction))
|
||
echo date ('Y/m/d - H:i:s')." - ERREUR : Déplacement du fichier $ficProduction dans FTP/RECV impossible !".EOL;
|
||
else
|
||
echo date ('Y/m/d - H:i:s')." - Le fichier $ficProduction a été déplacé dans FTP/RECV...".EOL;
|
||
|
||
if ($tabAdherent['formatEnvois']=='csv') {
|
||
if (!move($repProduction.$ficProduction_csv, $repFtpClient.'/recv/'.$ficProduction_csv))
|
||
echo date ('Y/m/d - H:i:s')." - ERREUR : Déplacement du fichier $ficProduction_csv dans FTP/RECV impossible !".EOL;
|
||
else
|
||
echo date ('Y/m/d - H:i:s')." - Le fichier $ficProduction_csv a été déplacé dans FTP/RECV...".EOL;
|
||
}
|
||
}
|
||
|
||
/*
|
||
|
||
$strMessage.=date ('Y/m/d - H:i:s')." - Fin du traitement diffusion BODACC.\n";
|
||
sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Surveillance Annonces par fichier '$typePrestaton'", $strMessage);
|
||
|
||
echo date ('Y/m/d - H:i:s')." - Fin du traitement diffusion BODACC.\n";
|
||
die();
|
||
|
||
*/
|
||
|
||
function exporteRatio($valeur) {
|
||
$signe='+';
|
||
if($valeur<0) $signe='-';
|
||
return ''.$signe.initstr(abs($valeur), 20, '0', ALIGN_RIGHT);
|
||
}
|
||
|
||
?>
|