/[openfoncier]/trunk/app/sitadel.php
ViewVC logotype

Annotation of /trunk/app/sitadel.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1809 - (hide annotations)
Thu May 2 12:55:08 2013 UTC (11 years, 9 months ago) by vpihour
File size: 30741 byte(s)
Mouvement de décision partiellement fini

1 fraynaud 178 <?php
2 fmichon 1515 /**
3 nhaye 1785 * Ce script permet de générer un document type texte contenant
4     * la liste de toutes les demandes d'autorisation dd'occupation de droit du sol
5     * formulées entre deux dates.
6 fmichon 1515 *
7     * @package openfoncier
8     * @version SVN : $Id$
9     */
10    
11 nhaye 1785 // Appel des classes
12 fraynaud 178 require_once "../obj/utils.class.php";
13     require_once "../app/sitadel.class.php";
14 fraynaud 184 require_once "sitadel.inc";
15 fmichon 380 $f = new utils(NULL, "export_sitadel", _("export SITADEL"), "ico_reqmo.png", "export");
16 nhaye 1785
17 fraynaud 178 /**
18     * Description de la page
19     */
20     $description = _("Cette page vous permet de Transmettre les dossiers suivant la procedure SITADEL");
21     $f->displayDescription($description);
22 fraynaud 184
23 nhaye 1785 // 1ere étape : affichage du formulaire permettant le choix d'un interval de date
24     // ainsi que l'ordre
25     if (empty($_POST)) {
26 vpihour 1809 affichageFormulaire();
27 nhaye 1785 } else { // Traitement après validation du formulaire
28    
29     // init de la valeur d'erreur
30 fraynaud 178 $correct=true;
31 nhaye 1785
32     // XXX
33 fraynaud 193 $longueurenregistrement= 0 ;
34 nhaye 1785
35     // XXX
36 fraynaud 193 $t10 = "||||||||||"; // 10 |
37 nhaye 1785
38     // Initialisation des dates de début et de fin
39 fraynaud 193 $datedebut ='';
40     $datefin='';
41 nhaye 1785
42     // Traitement des erreurs
43     if ($_POST["datedebut"] == "") {
44 fraynaud 190 $correct=false;
45 nhaye 1785 } else {
46 fraynaud 190 $datedebut = substr($_POST["datedebut"],6,4).
47     "-".substr($_POST["datedebut"],3,2)."-".
48     substr($_POST["datedebut"],0,2);
49 nhaye 1785 }
50     if ($_POST["datefin"] == "") {
51 fraynaud 190 $correct=false;
52 nhaye 1785 } else {
53 fraynaud 190 $datefin = substr($_POST["datefin"],6,4).
54     "-".substr($_POST["datefin"],3,2)."-".
55     substr($_POST["datefin"],0,2);
56 nhaye 1785 }
57 fraynaud 178 if ($correct==true){ // ***
58 nhaye 1785 // Requête permettant de lister tous les dossiers de l'export
59 nhaye 1797 $sql= "SELECT dossier.dossier,
60     dossier_instruction_type.mouvement_sitadel,
61     dossier.date_depot,
62     dossier.date_decision,
63     dossier.date_chantier,
64     dossier.date_achevement,
65     dossier.terrain_references_cadastrales as dossier_terrain_references_cadastrales,
66     dossier.terrain_adresse_voie_numero as dossier_terrain_adresse_voie_numero,
67     dossier.complement as dossier_complement,
68     dossier.terrain_adresse_lieu_dit as dossier_terrain_adresse_lieu_dit,
69     dossier.terrain_adresse_localite as dossier_terrain_adresse_localite,
70     dossier.terrain_adresse_code_postal as dossier_terrain_adresse_code_postal,
71     dossier.terrain_adresse_bp as dossier_terrain_adresse_bp,
72     dossier.terrain_adresse_cedex as dossier_terrain_adresse_cedex,
73     dossier.version,
74     dossier_autorisation_type.code,
75 vpihour 1809 dossier.autorite_competente,
76     dossier.date_limite,
77     dossier.date_notification_delai,
78 nhaye 1797
79     pp.type_demandeur,
80     pp.qualite,
81     civilite_pp.libelle as civilite_pp,
82     pp.particulier_nom as pp_particulier_nom,
83     pp.particulier_prenom as pp_particulier_prenom,
84     pp.personne_morale_denomination as pp_personne_morale_denomination,
85     pp.personne_morale_raison_sociale as pp_personne_morale_raison_sociale,
86     pp.personne_morale_siret as pp_personne_morale_siret,
87     pp.personne_morale_categorie_juridique as pp_personne_morale_categorie_juridique,
88     civilite_pm.libelle as civilite_pm_libelle,
89     pp.personne_morale_nom as pp_personne_morale_nom,
90     pp.personne_morale_prenom as pp_personne_morale_prenom,
91    
92     pp.numero as pp_numero,
93     pp.voie as pp_voie,
94     pp.complement as pp_complement,
95     pp.lieu_dit as pp_lieu_dit,
96     pp.localite as pp_localite,
97     pp.code_postal as pp_code_postal,
98     pp.bp as pp_bp,
99     pp.cedex as pp_cedex,
100     pp.pays as pp_pays,
101     pp.division_territoriale as pp_division_territoriale,
102    
103     civilite_delegataire.libelle as civilite_delegataire_libelle,
104     delegataire.particulier_nom as delegataire_particulier_nom,
105     delegataire.particulier_prenom as delegataire_particulier_prenom,
106     delegataire.numero as delegataire_numero,
107     delegataire.voie as delegataire_voie,
108     delegataire.complement as delegataire_complement,
109     delegataire.lieu_dit as delegataire_lieu_dit,
110     delegataire.localite as delegataire_localite,
111     delegataire.code_postal as delegataire_code_postal,
112     delegataire.bp as delegataire_bp,
113     delegataire.cedex as delegataire_cedex,
114     delegataire.pays as delegataire_pays,
115     delegataire.division_territoriale as delegataire_division_territoriale,
116    
117     pp.telephone_fixe as pp_telephone_fixe,
118 vpihour 1809 pp.courriel as pp_courriel,
119    
120     donnees_techniques.co_archi_recours,
121     donnees_techniques.am_terr_surf,
122     donnees_techniques.am_lotiss,
123     donnees_techniques.terr_juri_afu,
124     donnees_techniques.tr_desc,
125     donnees_techniques.co_cstr_nouv,
126     donnees_techniques.co_cstr_exist,
127     donnees_techniques.co_modif_aspect,
128     donnees_techniques.co_modif_struct,
129     donnees_techniques.co_cloture,
130     donnees_techniques.co_trx_exten,
131     donnees_techniques.co_trx_surelev,
132     donnees_techniques.co_trx_nivsup,
133     donnees_techniques.co_trx_amgt,
134     donnees_techniques.co_anx_pisc,
135     donnees_techniques.co_anx_gara,
136     donnees_techniques.co_anx_veran,
137     donnees_techniques.co_anx_abri,
138     donnees_techniques.co_anx_autr,
139     donnees_techniques.co_bat_niv_nb,
140     donnees_techniques.su_avt_shon1,
141     donnees_techniques.su_avt_shon2,
142     donnees_techniques.su_avt_shon3,
143     donnees_techniques.su_avt_shon4,
144     donnees_techniques.su_avt_shon5,
145     donnees_techniques.su_avt_shon6,
146     donnees_techniques.su_avt_shon7,
147     donnees_techniques.su_avt_shon8,
148     donnees_techniques.su_avt_shon9,
149     donnees_techniques.su_demo_shon1,
150     donnees_techniques.su_demo_shon2,
151     donnees_techniques.su_demo_shon3,
152     donnees_techniques.su_demo_shon4,
153     donnees_techniques.su_demo_shon5,
154     donnees_techniques.su_demo_shon6,
155     donnees_techniques.su_demo_shon7,
156     donnees_techniques.su_demo_shon8,
157     donnees_techniques.su_demo_shon9,
158     donnees_techniques.su_chge_shon1,
159     donnees_techniques.su_chge_shon2,
160     donnees_techniques.su_chge_shon3,
161     donnees_techniques.su_chge_shon4,
162     donnees_techniques.su_chge_shon5,
163     donnees_techniques.su_chge_shon6,
164     donnees_techniques.su_chge_shon7,
165     donnees_techniques.su_chge_shon8,
166     donnees_techniques.su_chge_shon9,
167     donnees_techniques.su_trsf_shon1,
168     donnees_techniques.su_trsf_shon2,
169     donnees_techniques.su_trsf_shon3,
170     donnees_techniques.su_trsf_shon4,
171     donnees_techniques.su_trsf_shon5,
172     donnees_techniques.su_trsf_shon6,
173     donnees_techniques.su_trsf_shon7,
174     donnees_techniques.su_trsf_shon8,
175     donnees_techniques.su_trsf_shon9,
176     donnees_techniques.su_cstr_shon1,
177     donnees_techniques.su_cstr_shon2,
178     donnees_techniques.su_cstr_shon3,
179     donnees_techniques.su_cstr_shon4,
180     donnees_techniques.su_cstr_shon5,
181     donnees_techniques.su_cstr_shon6,
182     donnees_techniques.su_cstr_shon7,
183     donnees_techniques.su_cstr_shon8,
184     donnees_techniques.su_cstr_shon9,
185     donnees_techniques.su_tot_shon1,
186     donnees_techniques.su_tot_shon2,
187     donnees_techniques.su_tot_shon3,
188     donnees_techniques.su_tot_shon4,
189     donnees_techniques.su_tot_shon5,
190     donnees_techniques.su_tot_shon6,
191     donnees_techniques.su_tot_shon7,
192     donnees_techniques.su_tot_shon8,
193     donnees_techniques.su_tot_shon9,
194     donnees_techniques.co_sp_transport,
195     donnees_techniques.co_sp_enseign,
196     donnees_techniques.co_sp_sante,
197     donnees_techniques.co_sp_act_soc,
198     donnees_techniques.co_sp_ouvr_spe,
199     donnees_techniques.co_sp_culture,
200     donnees_techniques.dm_tot_log_nb,
201     donnees_techniques.co_tot_ind_nb,
202     donnees_techniques.co_tot_coll_nb,
203     donnees_techniques.co_tot_log_nb,
204     donnees_techniques.co_resid_agees,
205     donnees_techniques.co_resid_etud,
206     donnees_techniques.co_resid_tourism,
207     donnees_techniques.co_resid_hot_soc,
208     donnees_techniques.co_resid_hand,
209     donnees_techniques.co_resid_autr,
210     donnees_techniques.co_resid_autr_desc,
211     donnees_techniques.co_uti_pers,
212     donnees_techniques.co_uti_princ,
213     donnees_techniques.co_uti_secon,
214     donnees_techniques.co_uti_vente,
215     donnees_techniques.co_uti_loc,
216     donnees_techniques.co_foyer_chamb_nb,
217     donnees_techniques.co_fin_lls_nb,
218     donnees_techniques.co_fin_aa_nb,
219     donnees_techniques.co_fin_autr_nb,
220     donnees_techniques.co_mais_piece_nb,
221     donnees_techniques.co_log_1p_nb,
222     donnees_techniques.co_log_2p_nb,
223     donnees_techniques.co_log_3p_nb,
224     donnees_techniques.co_log_4p_nb,
225     donnees_techniques.co_log_5p_nb,
226     donnees_techniques.co_log_6p_nb,
227    
228     avis_decision.sitadel,
229     avis_decision.sitadel_motif
230 nhaye 1797
231    
232 vpihour 1809 FROM ".DB_PREFIXE."dossier";
233 nhaye 1797 $sql .= " INNER JOIN ".DB_PREFIXE."dossier_instruction_type
234     ON dossier.dossier_instruction_type =
235     dossier_instruction_type.dossier_instruction_type
236    
237     INNER JOIN ".DB_PREFIXE."dossier_autorisation_type_detaille
238     ON dossier_instruction_type.dossier_autorisation_type_detaille
239     =dossier_autorisation_type_detaille.dossier_autorisation_type_detaille
240     INNER JOIN ".DB_PREFIXE."dossier_autorisation_type
241     ON dossier_autorisation_type.dossier_autorisation_type
242     =dossier_autorisation_type_detaille.dossier_autorisation_type
243    
244 vpihour 1809 LEFT JOIN ".DB_PREFIXE."donnees_techniques
245     ON donnees_techniques.dossier_instruction = dossier.dossier
246     LEFT JOIN ".DB_PREFIXE."avis_decision
247     ON avis_decision.avis_decision = dossier.avis_decision
248 nhaye 1797 LEFT JOIN ".DB_PREFIXE."lien_dossier_demandeur as ldd_pp
249     ON ldd_pp.dossier = dossier.dossier
250     AND ldd_pp.petitionnaire_principal is TRUE
251     LEFT JOIN ".DB_PREFIXE."demandeur as pp
252     ON ldd_pp.demandeur = pp.demandeur
253     LEFT JOIN ".DB_PREFIXE."civilite as civilite_pp
254     ON civilite_pp.civilite = pp.particulier_civilite
255     LEFT JOIN ".DB_PREFIXE."civilite as civilite_pm
256     ON civilite_pm.civilite = pp.particulier_civilite
257     LEFT JOIN ".DB_PREFIXE."lien_dossier_demandeur as ldd_delegataire
258     ON ldd_delegataire.dossier = dossier.dossier
259     LEFT JOIN ".DB_PREFIXE."demandeur as delegataire
260     ON ldd_delegataire.demandeur = delegataire.demandeur AND delegataire.qualite='delegataire'
261     LEFT JOIN ".DB_PREFIXE."civilite as civilite_delegataire
262     ON civilite_delegataire.civilite = delegataire.particulier_civilite
263     ";
264     $sql .= " WHERE dossier_instruction_type.mouvement_sitadel IS NOT NULL";
265 nhaye 1798 $sql .= " AND dossier.a_qualifier IS NOT TRUE";
266 nhaye 1797 $sql .= " AND ((dossier.date_depot >='".$datedebut."' AND dossier.date_depot<='".$datefin."')";
267     $sql .= " OR (dossier.date_decision>='".$datedebut."' AND dossier.date_decision<='".$datefin."')";
268     $sql .= " OR (dossier.date_chantier>='".$datedebut."' AND dossier.date_chantier<='".$datefin."'))";
269     $sql .= " order by dossier.date_depot";
270 fraynaud 178 $res = $f->db -> query ($sql);
271 vpihour 1809 $f->addToLog("app/sitadel.php : db->query(\"".$sql."\")", VERBOSE_MODE);
272 fraynaud 178 $f->isDatabaseError($res);
273 fraynaud 190 $export="";
274 fraynaud 178 while ($row=& $res->fetchRow(DB_FETCHMODE_ASSOC)){
275 nhaye 1785 // initialisation de la classe permettant la mise en forme de chaque ligne de l'export
276 fraynaud 187 $g = new sitadel($row['dossier']);
277 vpihour 1809 $g->setRow($row);
278 fraynaud 187 // sitadel
279 vpihour 1809 $g->setVal($val);
280 nhaye 1785 //
281 fraynaud 187 // parametre
282 nhaye 1785 // $sql = "select parametre, valeur from ".DB_PREFIXE."statistique where dossier ='".$row['dossier']."'";
283     // $res1 = $f->db -> query ($sql);
284     // $f->isDatabaseError($res1);
285     // while ($row1=& $res1->fetchRow(DB_FETCHMODE_ASSOC)){
286     // $g->parametre[$row1['parametre']]=$row1['valeur'];
287     // }
288 fraynaud 187 $departement =$f->collectivite["departement"];
289     $commune =$f->collectivite["commune"];
290     $region =$f->collectivite["region"];
291     // depot
292     $depot="";
293 nhaye 1785
294 nhaye 1797 // Tous les mouvements autres que transfert ont comme mouvement le code DEPOT
295 nhaye 1785 // les décisions devant êtres précédées par le dépôt correspondant,
296     // les dossiers avec date de décision comprise dans l'interval fourni sont
297     // réaffichés en tant que dépôts (mouvement DEPOT)
298 nhaye 1797 if ($row['mouvement_sitadel'] != 'TRANSFERT'
299 fraynaud 190 and (($row['date_depot'] >= $datedebut
300 nhaye 1785 and $row['date_depot'] <= $datefin)
301 fraynaud 190 or ($row['date_decision'] >= $datedebut
302 nhaye 1785 and $row['date_decision'] <= $datefin))) {
303 fraynaud 193 $depot.=$g->entete("DEPOT",$departement,$commune,$pf_departement);
304 fraynaud 187 $depot.=$g->etatcivil();
305     $depot.=$g->adresse();
306     $depot.=$g->delegataire();
307 nhaye 1797 $depot.=$g->meltel($row['mouvement_sitadel']);
308 fraynaud 187 $depot.=$g->adresse_terrain();
309     $depot.=$g->parcelle();
310     // ===========================
311     // contrat maison individuelle
312     // ===========================
313     // sitadel : contrat|
314 vpihour 1809 // openads : non renseigne
315 fraynaud 187 $depot.= $g->p('contrat')."|";
316     // ==========
317     // architecte
318     // ==========
319     // sitadel : architecte|
320 vpihour 1809 // openads : données techniques.co_archi_recours
321     if($row['co_archi_recours'] == "t")
322 fraynaud 187 $depot.= "1|";
323     else
324     $depot.= "0|";
325     // =====================
326     // utilisation data cnil
327     // ======================
328     // sitadel : cnil
329 vpihour 1809 // openads : non renseigne
330 fraynaud 187 $depot.= $g->p('cnil');
331     // fin d enregistrement depot
332     $depot.="\n";
333 fraynaud 178 }
334 fraynaud 187
335 nhaye 1785 // Seuls les dossier de type transfert ont comme mouvement le code TRANSFERT
336 fraynaud 187 $transfert ="";
337 nhaye 1797 if($row['mouvement_sitadel']=='TRANSFERT'
338 fraynaud 190 and $row['date_depot'] >= $datedebut
339     and $row['date_depot']<=$datefin){
340 fraynaud 193 $transfert.=$g->entete("TRANSFERT",$departement,$commune,$pf_departement);
341 fraynaud 187 $transfert.=$g->etatcivil();
342     $transfert.=$g->adresse();
343 nhaye 1797 $transfert.=$g->meltel($row['mouvement_sitadel']);
344 fraynaud 187 $transfert.="\n";
345 fraynaud 178 }
346 fraynaud 187
347    
348 nhaye 1785 // Une ligne de mouvement DECISION est insérée après chaque ligne
349     // de mouvement DEPOT
350 fraynaud 187 $decision="";
351 nhaye 1797 if ($row['mouvement_sitadel'] != 'MODIFICATIF'
352     and $row['mouvement_sitadel'] != 'TRANSFERT'
353 fraynaud 200 and (($row['date_depot'] >= $datedebut and $row['date_depot']<=$datefin)
354 nhaye 1785 or ($row['date_decision'] >= $datedebut and $row['date_decision']<=$datefin))) {
355 vpihour 1809
356     //Ajout de l'entête
357 fraynaud 193 $decision.=$g->entete("DECISION",$departement,$commune,$pf_departement);
358 vpihour 1809
359     //Ajout du groupe 1
360     $decision.= $g->decision_groupe1();
361     // Si la décision est favorable, groupe 2
362     if ( $row['sitadel'] == 2 || $row['sitadel'] == 4 || $row['sitadel'] == 5
363     || $row['sitadel'] == 0 ){
364    
365     $decision.= $g->amenagement_terrain();
366     $su_avt_shon = $g->shon("su_avt_shon");
367     $decision .= $g->shon("su_demo_shon");
368    
369     $decision.= $g->shon("su_chge_shon");
370     $su_trsf_shon = $g->shon("su_trsf_shon");
371     $su_cstr_shon = $g->shon("su_cstr_shon");
372     //Les SHON relatives à la transformation et issues de la
373     //transformation doivent être égales
374     if ( strcasecmp($su_trsf_shon, $su_cstr_shon) == 0 ||
375     (!preg_match("/[0|]{7}/", $su_trsf_shon) &&
376     preg_match("/[0|]{7}/", $su_cstr_shon) &&
377     $row['co_cstr_nouv']!='t' && $row['co_cstr_exist']!='t')){
378    
379     $decision.= $su_trsf_shon;
380     $decision.= $su_cstr_shon;
381 nhaye 1785 }
382 vpihour 1809 //Erreur
383     else {
384     $f->displayMessage("error", "Les SHON globales vouees a la transformation et issues de la transformation de doivent etre egales pour le dossier no ".$row['dossier']);
385     affichageFormulaire($_POST['datedebut'], $_POST['datefin'], $_POST['numero']);
386     die();
387 fraynaud 193 }
388 vpihour 1809
389     //Les SHON relatives à la transformation s'accompagnent
390     //obligatoirement de SHON existante avant travaux non nulle
391     if (( !preg_match("/[0|]{7}/", $su_trsf_shon) &&
392     !preg_match("/[0|]{7}/", $su_cstr_shon) &&
393     !preg_match("/[0|]{7}/", $su_avt_shon)) ||
394     (preg_match("/[0|]{7}/", $su_trsf_shon) &&
395     preg_match("/[0|]{7}/", $su_cstr_shon)&&
396     preg_match("/[0|]{7}/", $su_avt_shon))){
397    
398     $decision.= $su_avt_shon;
399     }
400     //Erreur
401     else {
402    
403     $f->displayMessage("error", "Les SHON relatives à la transformation s'accompagnent obligatoirement de SHON existante avant travaux non nulle pour le dossier no ".$row['dossier']);
404     affichageFormulaire($_POST['datedebut'], $_POST['datefin'], $_POST['numero']);
405     die();
406     }
407    
408    
409     $decision.= $g->shon("su_tot_shon");
410    
411     $decision.= $g->destination();
412     $decision.= $g->repartitionFinan();
413     $decision.= $g->repartitionNbPiece();
414     }
415 nhaye 1785 $decision.="\n";
416 fraynaud 187 }
417    
418     // modificatif
419     $modificatif='';
420 nhaye 1797 if($row['mouvement_sitadel'] == 'MODIFICATIF'
421 fraynaud 190 and $row['date_depot'] >= $datedebut
422 nhaye 1785 and $row['date_depot'] <= $datefin) {
423 fraynaud 193 $modificatif.=$g->entete("MODIFICATIF",$departement,$commune,$pf_departement);
424 fraynaud 187 if(isset($row['date_decision']) or $row['date_decision']==""){
425     // avis_sitadel et avis_sitadel_motif
426 vpihour 510 if($row['avis_decision']!=''){
427 fraynaud 187 $avis_sitadel = 0;
428     $avis_sitadel_motif=0 ;
429 vpihour 510 $sql="select sitadel, sitadel_motif from ".DB_PREFIXE."avis_decision where avis_decision ='".
430     $row['avis_decision']."'";
431 fraynaud 187 $res1 = $f->db -> query ($sql);
432     $f->isDatabaseError($res1);
433     while ($row1=& $res1->fetchRow(DB_FETCHMODE_ASSOC)){
434     $avis_sitadel = $row1['sitadel'];
435     $avis_sitadel_motif = $row1['sitadel_motif'];
436     }
437 fraynaud 200 $modificatif.= $g->decision_groupe1($avis_sitadel,$avis_sitadel_motif,$structure);
438 fraynaud 178 }
439 fraynaud 187 // si la decision est favorable, envoi des informations statistiques
440     if($avis_sitadel==2 or $avis_sitadel==4
441     or $avis_sitadel==5){
442     // si decision favorable, expresse ou tacite GROUPE 2
443     $modificatif.=$g->adresse_terrain(); //***
444     $modificatif.=$g->parcelle(); //***
445     $modificatif.=$g->terrain(); //***
446 fraynaud 259 // enlever les RC
447     $temp=$row['description'];
448     $temp = str_replace( chr(10), " ", $temp);
449     $temp = str_replace( chr(13), " ", $temp);
450 fraynaud 187 if($row['travaux']!=''){
451     $sql= "select codelascot,libelle
452 fraynaud 267 from ".DB_PREFIXE."travaux where travaux=".$row['travaux'];
453 fraynaud 187 $res2 = $f->db -> query ($sql);
454     $f->isDatabaseError($res2);
455     while ($row2=& $res2->fetchRow(DB_FETCHMODE_ASSOC)){
456 fraynaud 258 $travaux = $row2['libelle']." ".$row['description']; // ***;
457 fraynaud 187 $lascot = $row2['codelascot'];
458     }
459 fraynaud 259 $travaux.=" ".$temp;
460 nhaye 1797 $modificatif.= $g->travaux($travaux,$lascot, $row['mouvement_sitadel']);
461 fraynaud 187 }
462 fraynaud 258 $sql3="select * from ".DB_PREFIXE."destination_shon where dossier = '".
463 fraynaud 187 $row['dossier']."' order by destination";
464     $res3 = $f->db -> query ($sql3);
465     $f->isDatabaseError($res3);
466     $temp = array();
467     while ($row3=& $res3->fetchRow(DB_FETCHMODE_ASSOC)){
468     $shonant[$row3['destination']]=$row3["shon_anterieure"];
469     $shondem[$row3['destination']]=$row3["shon_demolie"];
470     $shonanttr[$row3['destination']]=$row3["shon_anterieure_supprimee"];
471     $shonprojtr[$row3['destination']]=$row3["shon_nouvelle_transformee"];
472     $shoncr1[$row3['destination']]=$row3["shon_nouvelle"];
473     $shoncr2[$row3['destination']]=$row3["shon_shob_transformee"];
474     }
475     $modificatif.= $g->destination($shonant);
476     $modificatif.= $g->destination($shondem);
477     $modificatif.= $g->destination($shonanttr);
478     $modificatif.= $g->destination($shonprojtr);
479     $modificatif.= $g->destination($shoncr1);
480     $modificatif.= $g->destination($shoncr2);
481    
482 nhaye 1797 $modificatif.= $g->descriptif($row['mouvement_sitadel']);
483 fraynaud 187 $modificatif.="\n";
484     }
485     }
486     }
487 fraynaud 178
488 fraynaud 200 // suivi DOC
489 fraynaud 187 $suivi1="";
490 fraynaud 190 if($row['date_chantier'] >= $datedebut and $row['date_chantier']<=$datefin){
491 fraynaud 193 $suivi1.=$g->entete("SUIVI",$departement,$commune,$pf_departement);
492 fraynaud 190 $suivi1.=$g->chantier();
493     $suivi1.="\n";
494     }
495 fraynaud 187 // suivi DAT
496     $suivi2="";
497 fraynaud 190 if($row['date_achevement'] >= $datedebut and $row['date_achevement']<=$datefin){
498 fraynaud 193 $suivi2.=$g->entete("SUIVI",$departement,$commune,$pf_departement);
499 fraynaud 190 $suivi2.=$g->achevement();
500     $suivi2.="\n";
501 fraynaud 178 }
502 fraynaud 190 // export
503     $export.=$depot.$decision.$transfert.$modificatif.$suivi1.$suivi2;
504 fraynaud 187 } // fin while
505 fraynaud 190 // ***************************************
506     // entete de l enregistrement page 8 et 9
507     // ***************************************
508     // numero
509 nhaye 1197 // $numero= $db -> nextId('sitadel');
510     $departement =$f->collectivite["departement"];
511     $commune =$f->collectivite["commune"];
512     $region =$f->collectivite["region"];
513 fraynaud 190 $numero=$_POST["numero"];
514 fraynaud 193 $fichiertransmis = date('ymj').$pf_departement.$departement.$commune;
515 fraynaud 190 $longueurenregistrement= 0 ; // a calculer *** enregistrement le plus long
516 fraynaud 193 $entete = "SITADEL|".$pf_departement.$departement."|".$commune."|".$region."|".$fichiertransmis."|".$numero."|";
517 fraynaud 190 // calcul enregistrement le plus long
518 fmichon 323 if(DBCHARSET=='UTF8'){
519 fraynaud 190 $export=utf8_decode($export);
520     }
521     // nombreenrgistremment et longueurenregistrement
522     $nbenr = explode("\n",$export);
523     $tmp=array();
524     $cpt=0;
525     for($i=0;$i<sizeof($nbenr);$i++){
526     // mb_strlen( variable,encoding) PHP 4 >= 4.0.6, PHP 5
527 vpihour 510 // Le param�tre encoding est l'encodage des caract�res.
528     // S'il est omis, l'encodage de caracteres interne sera utilis�.
529 fraynaud 190 $tmp[$i] = strlen($nbenr[$i]);
530     //echo strlen($nbenr[$i])." ".$nbenr[$i]."<br>";
531     $cpt++;
532     }
533     $longueurenregistrement=max($tmp);
534     $nombreenregistrement=$cpt; // + entete
535     // Date de modification
536     $datemodification = date('y').str_pad (DATE('m'), 2, "0", STR_PAD_LEFT).str_pad (DATE('j'), 2, "0", STR_PAD_LEFT);
537     // export
538 nhaye 1797 $version = substr($f->version,0,8);
539 fraynaud 200 $entete.= $longueurenregistrement."|".$datemodification."|".
540     $nombreenregistrement."|openFoncier|".$version."\n";
541 fraynaud 190 $export=$entete.$export;
542 fraynaud 193 // $str = htmlentities($str, ENT_QUOTES);
543 fraynaud 190 // ecriture des fichiers en tmp
544     $fichier = "../tmp/SITADEL".substr($_POST["datedebut"],3,2).
545 fraynaud 322 "".substr($_POST["datedebut"],8,4)."";
546 fraynaud 190 $inf = fopen($fichier,"w");
547     fwrite($inf,$export);
548     fclose($inf);
549 fraynaud 200 echo "<br>"._("Fichier")." ".$fichier." "._("sauvegarde")."<br /><br /><br />";
550 fraynaud 190 // affichage
551     echo "<br /><br />Pour telecharger le fichier, cliquer ici : <a href=\"".$fichier."\" target=\"_blank\">";
552 fraynaud 322 echo "<img src=\"../app/img/ico_trace.png\" alt=\"Telecharger le fichier CNEN\" title=\"Telecharger le fichier Sitadel\" />";
553 fraynaud 200 echo "</a>"._("avec le bouton droit et enregistrer la cible du lien sous.")."<br /><br />";
554 nhaye 1785 if(DEBUG != "PRODUCTION_MODE"){
555 fraynaud 190 $affiche="";
556     $affiche= str_replace("\n","<br>",$export);
557     echo $affiche;
558     }
559 fraynaud 187 }else // correct = false
560 fraynaud 200 echo _("remplissez les 2 dates");
561 fraynaud 178 }//validation
562 vpihour 1809
563     /**
564     * Affichage du formulaire
565     *
566     * */
567     function affichageFormulaire($datedebut="", $datefin="", $numero=""){
568    
569     echo "<form method=\"POST\" action=\"sitadel.php\" name=f1>";
570     // champ date debut
571     echo " "._("debut")." ";
572     echo "<input type='text' name='datedebut' id=\"datedebut\" value=\"";
573     echo $datedebut;
574     echo "\" size=\"15\" class=\"champFormulaire datepicker\" onchange='fdate(this)' onkeyup=\"\" onclick=\"\" />";
575     // champ date fin
576     echo " "._("fin")." ";
577     echo "<input type='text' name='datefin' id=\"datefin\" value=\"";
578     echo $datefin;
579     echo "\" size=\"15\" class=\"champFormulaire datepicker\" onchange='fdate(this)' onkeyup=\"\" onclick=\"\" />";
580     // numero d'ordre d'envoi
581     echo " "._("Numero d'ordre d'envoi")." : "."<select name='numero'>";
582     for ($i = 1; $i < 11; $i++) {
583     echo "<option value ='".$i."' ";
584     echo ($numero == $i )? "selected='selected'":"";
585     echo">".$i."</option>";
586     }
587     echo "</select>";
588     echo "<br><br><input type='submit' value='export SITADEL'>";
589     echo "</form>";
590     }
591 fraynaud 200 ?>

Properties

Name Value
svn:keywords Id

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26