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

Diff of /trunk/app/sitadel.php

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 186 by fraynaud, Tue Oct 11 10:48:12 2011 UTC revision 267 by fraynaud, Wed Dec 7 11:44:34 2011 UTC
# Line 1  Line 1 
1  <?php  <?php
2  // $Id: export_sitadel.php,v 1.20 2010-11-15 14:50:40 fraynaud Exp $  // $Id: sitadel.php,v 1.20 2010-11-15 14:50:40 fraynaud Exp $
3  /*  /*
4  transfert de dossier � SITADEL  transfert de dossier � SITADEL
5  realis� ville arles par fr+jlb  realis� ville arles par fr+jlb
# Line 25  $description = _("Cette page vous permet Line 25  $description = _("Cette page vous permet
25  $f->displayDescription($description);  $f->displayDescription($description);
26  //controle  //controle
27  $DEBUG=1;  $DEBUG=1;
28    $t10 = "||||||||||"; // 10 |
29    
30  // parametres collectivite  // parametres collectivite
   
31  // =============================================================================  // =============================================================================
32  // validation = 0  // validation = 0
33  // =============================================================================  // =============================================================================
# Line 47  if($validation==0){ Line 47  if($validation==0){
47      echo "</select>";      echo "</select>";
48      echo "<br><br><input type='submit' value='export SITADEL'>";      echo "<br><br><input type='submit' value='export SITADEL'>";
49      echo "<br><br></form>";      echo "<br><br></form>";
50      }else{   // ===================== extraction =================================
 }else {   // ===================== extraction =================================  
   
51      $correct=true;      $correct=true;
52      $longueurenregistrement= 0 ; // a calculer      $longueurenregistrement= 0 ;
53      //$nombreenregistrement=1; // l entete est compt�e dans le nombre enregistrement      $t10 = "||||||||||"; // 10 |
54      if($_POST["datedebut"]=="")$correct=false;      $datedebut ='';
55      if($_POST["datefin"]=="") $correct=false;      $datefin='';
56      $correct=true; // a enlever apres test      if($_POST["datedebut"]=="")
57            $correct=false;
58        else
59            $datedebut = substr($_POST["datedebut"],6,4).
60                        "-".substr($_POST["datedebut"],3,2)."-".
61                        substr($_POST["datedebut"],0,2);
62        if($_POST["datefin"]=="")
63            $correct=false;
64        else
65            $datefin = substr($_POST["datefin"],6,4).
66                        "-".substr($_POST["datefin"],3,2)."-".
67                        substr($_POST["datefin"],0,2);
68      if ($correct==true){ // ***      if ($correct==true){ // ***
69      // dossiers concern�s          // dossiers concern�s
70      $sql= "select * from dossier";          $sql= "select * from ".DB_PREFIXE."dossier";
71      $sql.= " where (nature='PC' or nature = 'PD' or nature = 'PA' or nature = 'DP')";          $sql.= " where (nature='PC' or nature = 'PD' or nature = 'PA' or nature = 'DP')";
72            //$sql.= " AND ((date_depot>='".$this->datedebut."' AND date_depot<='".$this->datefin."')";          $sql.= " AND ((date_depot >='".$datedebut."' AND date_depot<='".$datefin."')";
73            //$sql.= " OR (date_decision>='".$this->datedebut."' AND date_decision<='".$this->datefin."'))";          $sql.= " OR (date_decision>='".$datedebut."' AND date_decision<='".$datefin."')";
74      $sql.= " and dossier = 'PC11R0004'";          $sql.= " OR (date_chantier>='".$datedebut."' AND date_chantier<='".$datefin."'))";
75      $res = $f->db -> query ($sql);          $sql.= " order by date_depot";
76      $f->isDatabaseError($res);          $res = $f->db -> query ($sql);
77      while ($row=& $res->fetchRow(DB_FETCHMODE_ASSOC)){          $f->isDatabaseError($res);
78          // initialisation          $export="";
79          $g = new sitadel($row['dossier']);          while ($row=& $res->fetchRow(DB_FETCHMODE_ASSOC)){
80          $g->row=$row;              // initialisation
81          // sitadel              $g = new sitadel($row['dossier']);
82          $g->val=$val;              $g->row=$row;
83          // parametre              // sitadel
84          $sql = "select parametre, valeur from statistique where dossier ='".$row['dossier']."'";              $g->val=$val;
85          $res1 = $f->db -> query ($sql);              // parametre
86          $f->isDatabaseError($res1);              $sql = "select parametre, valeur from ".DB_PREFIXE."statistique where dossier ='".$row['dossier']."'";
87          while ($row1=& $res1->fetchRow(DB_FETCHMODE_ASSOC)){              $res1 = $f->db -> query ($sql);
88              $g->parametre[$row1['parametre']]=$row1['valeur'];              $f->isDatabaseError($res1);
89          }              while ($row1=& $res1->fetchRow(DB_FETCHMODE_ASSOC)){
90          print_r($g->parametre);                                $g->parametre[$row1['parametre']]=$row1['valeur'];
91          $departement =$f->collectivite["departement"];              }            
92          $commune =$f->collectivite["commune"];              $departement =$f->collectivite["departement"];
93          $region =$f->collectivite["region"];              $commune =$f->collectivite["commune"];
94          // depot              $region =$f->collectivite["region"];
95          $depot="";              // depot
96          // type different de transfert              $depot="";
97          if($row['types']!='Transfert'){              // type different de transfert
98              $depot.=$g->entete("DEPOT",$departement,$commune);              if($row['types']!='Transfert'
99              $depot.=$g->etatcivil();                  and (($row['date_depot'] >= $datedebut
100              $depot.=$g->adresse();                  and $row['date_depot']<=$datefin)
101              $depot.=$g->delegataire();                  or  ($row['date_decision'] >= $datedebut
102              $depot.=$g->adresse_terrain();                              and $row['date_decision']<=$datefin))){
103              $depot.=$g->parcelle();                  $depot.=$g->entete("DEPOT",$departement,$commune,$pf_departement);
104              // ===========================                  $depot.=$g->etatcivil();
105              // contrat maison individuelle                  $depot.=$g->adresse();
106              // ===========================                  $depot.=$g->delegataire();
107              // sitadel : contrat|                  $depot.=$g->meltel($row['types']);
108              // openfoncier : non renseigne                  $depot.=$g->adresse_terrain();            
109              $depot.= $g->p('contrat')."|";                  $depot.=$g->parcelle();
110              // ==========                  // ===========================
111              // architecte                  // contrat maison individuelle
112              // ==========                  // ===========================
113              // sitadel : architecte|                  // sitadel : contrat|
114              // openfoncier : architecte >0                          // openfoncier : non renseigne
115              if($row['architecte']>0)                  $depot.= $g->p('contrat')."|";
116                  $depot.= "1|";                  // ==========
117              else                  // architecte
118                  $depot.= "0|";                  // ==========
119              // =====================                  // sitadel : architecte|
120              // utilisation data cnil                  // openfoncier : architecte >0        
121              // ======================                  if($row['architecte']>0)
122              // sitadel : cnil                      $depot.= "1|";
123              // openfoncier : non renseigne                  else
124              $depot.= $g->p('cnil');                      $depot.= "0|";
125              // fin d enregistrement depot                          // =====================
126              $depot.="\n";                  // utilisation data cnil
127          }                  // ======================
128                    // sitadel : cnil
129          //decision                  // openfoncier : non renseigne
130          // type different de modificatif                  $depot.= $g->p('cnil');
131          if($row['types']!='Modificatif'){                  // fin d enregistrement depot        
132                    $depot.="\n";
133                }
134        
135                // transfert
136                $transfert ="";
137                if($row['types']=='Transfert'
138                    and $row['date_depot'] >= $datedebut
139                    and $row['date_depot']<=$datefin){
140                    $transfert.=$g->entete("TRANSFERT",$departement,$commune,$pf_departement);
141                    $transfert.=$g->etatcivil();
142                    $transfert.=$g->adresse();
143                    $transfert.=$g->meltel($row['types']);
144                    $transfert.="\n";
145                }
146        
147        
148                //decision
149                // type different de modificatif
150              $decision="";              $decision="";
151              $avis_sitadel="";              if($row['types']!='Modificatif'
152              $avis_sitadel_motif="";                  and $row['types']!='Transfert'
153              // enregistrement decision dans tous les cas                  and (($row['date_depot'] >= $datedebut and $row['date_depot']<=$datefin)
154              $decision.=$g->entete("DECISION",$departement,$commune);                  or  ($row['date_decision'] >= $datedebut and $row['date_decision']<=$datefin))){
155              //if ($row['date_decision']== '0000-00-00'                  $avis_sitadel="";
156              //    or !isset($row['date_decision'])){                  $avis_sitadel_motif="";
157              if(isset($row['date_decision']) or $row['date_decision']==""){                  // enregistrement decision dans tous les cas
158                  // avis_sitadel et avis_sitadel_motif                  $decision.=$g->entete("DECISION",$departement,$commune,$pf_departement);
159                  if($row['avis']!=''){                  //if ($row['date_decision']== '0000-00-00'
160                      $avis_sitadel = 0;                  //    or !isset($row['date_decision'])){
161                      $avis_sitadel_motif=0 ;                  //if(isset($row['date_decision']) and $row['date_decision']!=""){
162                      $sql="select sitadel, sitadel_motif from avis where avis ='".                      // avis_sitadel et avis_sitadel_motif
163                              $row['avis']."'";                      if($row['avis']!=''){
164                      $res1 = $f->db -> query ($sql);                          $avis_sitadel = "0";
165                      $f->isDatabaseError($res1);                          $avis_sitadel_motif="0" ;
166                      while ($row1=& $res1->fetchRow(DB_FETCHMODE_ASSOC)){                          $sql="select sitadel, sitadel_motif from ".DB_PREFIXE."avis where avis ='".
167                          $avis_sitadel = $row1['sitadel'];                                  $row['avis']."'";
168                          $avis_sitadel_motif = $row1['sitadel_motif'];                          $res1 = $f->db -> query ($sql);
169                      }                          $f->isDatabaseError($res1);
170                      $decision.= $g->decision_groupe1($avis_sitadel,$avis_sitadel_motif);                          while ($row1=& $res1->fetchRow(DB_FETCHMODE_ASSOC)){
171                  }                              $avis_sitadel = $row1['sitadel'];
172                  // si la decision est favorable, envoi des informations statistiques                              $avis_sitadel_motif = $row1['sitadel_motif'];
                 if($avis_sitadel==2  or $avis_sitadel==4  
                        or $avis_sitadel==5){  
                     // si decision favorable, expresse ou tacite GROUPE 2  
                     $decision.= $g->amenagement();  
                     if($row['travaux']!=''){  
                         $sql= "select codelascot,libelle  
                             from travaux where travaux=".$row['travaux'];  
                         $res2 = $f->db -> query ($sql);  
                         $f->isDatabaseError($res2);  
                         while ($row2=& $res2->fetchRow(DB_FETCHMODE_ASSOC)){  
                             $travaux = $row2['libelle'];  
                             $lascot = $row2['codelascot'];  
173                          }                          }
174                          $decision.= $g->travaux($travaux,$lascot);                          $decision.= $g->decision_groupe1($avis_sitadel,$avis_sitadel_motif,$structure);
175                        }else{
176                            $decision.= $g->decision_groupe1("0","",$structure); // pas d avis
177                            //$decision.= "***".$t10.$t10.$t10.$t10.$t10.$t10.$t10.$t10."|||"; //83
178                      }                      }
179                      $sql3="select * from destination_shon where dossier = '".                      // si la decision est favorable, envoi des informations statistiques
180                              $row['dossier']."' order by destination";                      if($avis_sitadel==2  or $avis_sitadel==4
181                      $res3 = $f->db -> query ($sql3);                             or $avis_sitadel==5){
182                      $f->isDatabaseError($res3);                          // si decision favorable, expresse ou tacite GROUPE 2
183                      $temp = array();                          $decision.= $g->terrain();
184                      while ($row3=& $res3->fetchRow(DB_FETCHMODE_ASSOC)){                          $decision.= $g->amenagement();
185                          $shonant[$row3['destination']]=$row3["shon_anterieure"];                          if($row['travaux']!=''){
186                          $shondem[$row3['destination']]=$row3["shon_demolie"];                              $sql= "select codelascot,libelle
187                          $shonanttr[$row3['destination']]=$row3["shon_anterieure_supprimee"];                                  from ".DB_PREFIXE."travaux where travaux=".$row['travaux'];
188                          $shonprojtr[$row3['destination']]=$row3["shon_nouvelle_transformee"];                              $res2 = $f->db -> query ($sql);
189                          $shoncr1[$row3['destination']]=$row3["shon_nouvelle"];                              $f->isDatabaseError($res2);
190                          $shoncr2[$row3['destination']]=$row3["shon_shob_transformee"];                              $temp=$row['description'];
191                                // enlever les RC
192                                $temp = str_replace( chr(10), " ", $temp);
193                                $temp = str_replace( chr(13), " ", $temp);
194                                while ($row2=& $res2->fetchRow(DB_FETCHMODE_ASSOC)){
195                                    $travaux = $row2['libelle']." "; // ***
196                                    $lascot = $row2['codelascot'];
197                                }
198                                $travaux.=" ".$temp;
199                                $decision.= $g->travaux($travaux,$lascot, $row['types']);
200                            }
201                            $sql3="select * from ".DB_PREFIXE."destination_shon where dossier = '".
202                                    $row['dossier']."' order by destination";
203                            $res3 = $f->db -> query ($sql3);
204                            $f->isDatabaseError($res3);
205                            $temp = array();
206                            while ($row3=& $res3->fetchRow(DB_FETCHMODE_ASSOC)){
207                                $shonant[$row3['destination']]=$row3["shon_anterieure"];
208                                $shondem[$row3['destination']]=$row3["shon_demolie"];
209                                $shonanttr[$row3['destination']]=$row3["shon_anterieure_supprimee"];
210                                $shonprojtr[$row3['destination']]=$row3["shon_nouvelle_transformee"];
211                                $shoncr1[$row3['destination']]=$row3["shon_nouvelle"];
212                                $shoncr2[$row3['destination']]=$row3["shon_shob_transformee"];
213                            }
214                            $decision.= $g->destination($shonant);
215                            $decision.= $g->destination($shondem);
216                            $decision.= $g->destination($shonanttr);
217                            $decision.= $g->destination($shonprojtr);
218                            $decision.= $g->destination($shoncr1);
219                            $decision.= $g->destination($shoncr2);
220                            
221                            $decision.= $g->descriptif($row['types']);  
222                        }else // decision defavorable ou pas de decision
223                            $decision.= $t10.$t10.$t10.$t10.$t10.$t10.$t10.$t10."|||"; //83 | + 12 | = 95 | pour 96 zones
224                $decision.="\n";
225                }
226        
227                // modificatif
228                $modificatif='';
229                if($row['types']=='Modificatif'
230                    and $row['date_depot'] >= $datedebut
231                    and $row['date_depot']<=$datefin){  
232                    $modificatif.=$g->entete("MODIFICATIF",$departement,$commune,$pf_departement);
233                    if(isset($row['date_decision']) or $row['date_decision']==""){
234                        // avis_sitadel et avis_sitadel_motif
235                        if($row['avis']!=''){
236                            $avis_sitadel = 0;
237                            $avis_sitadel_motif=0 ;
238                            $sql="select sitadel, sitadel_motif from ".DB_PREFIXE."avis where avis ='".
239                                    $row['avis']."'";
240                            $res1 = $f->db -> query ($sql);
241                            $f->isDatabaseError($res1);
242                            while ($row1=& $res1->fetchRow(DB_FETCHMODE_ASSOC)){
243                                $avis_sitadel = $row1['sitadel'];
244                                $avis_sitadel_motif = $row1['sitadel_motif'];
245                            }
246                            $modificatif.= $g->decision_groupe1($avis_sitadel,$avis_sitadel_motif,$structure);
247                      }                      }
248                      $decision.= $g->destination($shonant);                      // si la decision est favorable, envoi des informations statistiques
249                      $decision.= $g->destination($shondem);                      if($avis_sitadel==2  or $avis_sitadel==4
250                      $decision.= $g->destination($shonanttr);                             or $avis_sitadel==5){
251                      $decision.= $g->destination($shonprojtr);                          // si decision favorable, expresse ou tacite GROUPE 2
252                      $decision.= $g->destination($shoncr1);                          $modificatif.=$g->adresse_terrain();    //***
253                      $decision.= $g->destination($shoncr2);                          $modificatif.=$g->parcelle();    //***
254                                                $modificatif.=$g->terrain();    //***
255                      $decision.= $g->descriptif();                          // enlever les RC
256                      $decision.="\n";                          $temp=$row['description'];
257                 }                          $temp = str_replace( chr(10), " ", $temp);
258              }                            $temp = str_replace( chr(13), " ", $temp);
259          }                          if($row['travaux']!=''){
260                                        $sql= "select codelascot,libelle
261          // suivi DOC : mettre le test date                                  from ".DB_PREFIXE."travaux where travaux=".$row['travaux'];
262          $suivi1="";                              $res2 = $f->db -> query ($sql);
263          // enregistrement decision dans tous les cas                              $f->isDatabaseError($res2);
264          // $nombreenregistrement++;                              while ($row2=& $res2->fetchRow(DB_FETCHMODE_ASSOC)){
265          $suivi1.=$g->entete("SUIVI",$departement,$commune);                                  $travaux = $row2['libelle']." ".$row['description']; // ***;
266          $suivi1.=$g->chantier();                                  $lascot = $row2['codelascot'];
267          $suivi1.="\n";                              }
268                                        $travaux.=" ".$temp;
269          // suivi DAT : mettre le test date                              $modificatif.= $g->travaux($travaux,$lascot, $row['types']);
270          $suivi2="";                          }
271          // enregistrement decision dans tous les cas                          $sql3="select * from ".DB_PREFIXE."destination_shon where dossier = '".
272          // $nombreenregistrement++;                                  $row['dossier']."' order by destination";
273          $suivi2.=$g->entete("SUIVI",$departement,$commune);                          $res3 = $f->db -> query ($sql3);
274          $suivi2.=$g->achevement();                          $f->isDatabaseError($res3);
275          $suivi2.="\n";                          $temp = array();
276                            while ($row3=& $res3->fetchRow(DB_FETCHMODE_ASSOC)){
277          // transfert                              $shonant[$row3['destination']]=$row3["shon_anterieure"];
278          $transfert ="";                              $shondem[$row3['destination']]=$row3["shon_demolie"];
279                                $shonanttr[$row3['destination']]=$row3["shon_anterieure_supprimee"];
280          // modificatif                              $shonprojtr[$row3['destination']]=$row3["shon_nouvelle_transformee"];
281          $modificatif='';                              $shoncr1[$row3['destination']]=$row3["shon_nouvelle"];
282                                $shoncr2[$row3['destination']]=$row3["shon_shob_transformee"];
283                            }
284                            $modificatif.= $g->destination($shonant);
285                            $modificatif.= $g->destination($shondem);
286                            $modificatif.= $g->destination($shonanttr);
287                            $modificatif.= $g->destination($shonprojtr);
288                            $modificatif.= $g->destination($shoncr1);
289                            $modificatif.= $g->destination($shoncr2);
290                            
291                            $modificatif.= $g->descriptif($row['types']);
292                            $modificatif.="\n";
293                       }
294                    }  
295                }
296                
297                // suivi DOC
298                $suivi1="";
299                if($row['date_chantier'] >= $datedebut and $row['date_chantier']<=$datefin){  
300                    $suivi1.=$g->entete("SUIVI",$departement,$commune,$pf_departement);
301                    $suivi1.=$g->chantier();
302                    $suivi1.="\n";
303                }
304                // suivi DAT
305                $suivi2="";
306                if($row['date_achevement'] >= $datedebut and $row['date_achevement']<=$datefin){  
307                    $suivi2.=$g->entete("SUIVI",$departement,$commune,$pf_departement);
308                    $suivi2.=$g->achevement();
309                    $suivi2.="\n";
310                }
311                // export      
312                $export.=$depot.$decision.$transfert.$modificatif.$suivi1.$suivi2;
313            } // fin while  
314          // ***************************************          // ***************************************
315          // entete de l enregistrement page 8 et 9          // entete de l enregistrement page 8 et 9
316          // ***************************************            // ***************************************  
317          // numero          // numero
318          // $numero= $db -> nextId('sitadel');                  // $numero= $db -> nextId('sitadel');        
319          $numero=$_POST["numero"];          $numero=$_POST["numero"];
320          $fichiertransmis = date('ymj').$departement.$commune;          $fichiertransmis = date('ymj').$pf_departement.$departement.$commune;
321          $longueurenregistrement= 0 ; // a calculer ***  enregistrement le plus long          $longueurenregistrement= 0 ; // a calculer ***  enregistrement le plus long
322          $entete = "SITADEL|".$departement."|".$commune."|".$region."|".$fichiertransmis."|".$numero."|";          $entete = "SITADEL|".$pf_departement.$departement."|".$commune."|".$region."|".$fichiertransmis."|".$numero."|";
323          // calcul enregistrement le plus long          // calcul enregistrement le plus long      
         $export="";  
         $export=$depot.$decision.$suivi1.$suivi2.$transfert.$modificatif;  
324          if(CHARSET=='UTF8'){          if(CHARSET=='UTF8'){
325              $export=utf8_decode($export);              $export=utf8_decode($export);
326          }          }
# Line 229  if($validation==0){ Line 331  if($validation==0){
331          for($i=0;$i<sizeof($nbenr);$i++){          for($i=0;$i<sizeof($nbenr);$i++){
332                // mb_strlen( variable,encoding) PHP 4 >= 4.0.6, PHP 5                // mb_strlen( variable,encoding) PHP 4 >= 4.0.6, PHP 5
333                // Le param�tre encoding est l'encodage des caract�res.                // Le param�tre encoding est l'encodage des caract�res.
334                // S'il est omis, l'encodage de caractres interne sera utilis�.                // S'il est omis, l'encodage de caracteres interne sera utilis�.
335                $tmp[$i] = strlen($nbenr[$i]);                $tmp[$i] = strlen($nbenr[$i]);
336                //echo strlen($nbenr[$i])." ".$nbenr[$i]."<br>";                //echo strlen($nbenr[$i])." ".$nbenr[$i]."<br>";
337                $cpt++;                $cpt++;
# Line 240  if($validation==0){ Line 342  if($validation==0){
342          $datemodification = date('y').str_pad (DATE('m'), 2, "0", STR_PAD_LEFT).str_pad (DATE('j'), 2, "0", STR_PAD_LEFT);          $datemodification = date('y').str_pad (DATE('m'), 2, "0", STR_PAD_LEFT).str_pad (DATE('j'), 2, "0", STR_PAD_LEFT);
343          // export          // export
344          $version = substr($version,0,8);          $version = substr($version,0,8);
345          $entete.= $longueurenregistrement."|".$datemodification."|".$nombreenregistrement."|openFoncier|".$version."\n";          $entete.= $longueurenregistrement."|".$datemodification."|".
346                        $nombreenregistrement."|openFoncier|".$version."\n";
347          $export=$entete.$export;          $export=$entete.$export;
348          //$str = htmlentities($str, ENT_QUOTES);          // $str = htmlentities($str, ENT_QUOTES);
349          // ecriture des fichiers en tmp          // ecriture des fichiers en tmp
350          $fichier = "../tmp/SITADEL".substr($_POST["datedebut"],3,2).          $fichier = "../tmp/SITADEL".substr($_POST["datedebut"],3,2).
351                 "".substr($_POST["datedebut"],8,4)."_test";                 "".substr($_POST["datedebut"],8,4)."_test";
352          $inf = fopen($fichier,"w");          $inf = fopen($fichier,"w");
         //$export=substr($export,0,strlen($export)-1); // un \n en trop  
353          fwrite($inf,$export);          fwrite($inf,$export);
354          fclose($inf);          fclose($inf);
355          echo "<br>Fichier ".$fichier." sauvegarde<br><br><br>";          echo "<br>"._("Fichier")." ".$fichier." "._("sauvegarde")."<br /><br /><br />";
   
356          // affichage          // affichage
357          echo "<br /><br />Pour telecharger le fichier, cliquer ici : <a href=\"".$fichier."\" target=\"_blank\">";          echo "<br /><br />Pour telecharger le fichier, cliquer ici : <a href=\"".$fichier."\" target=\"_blank\">";
358          echo "<img src=\"../app/img/ico_trace.png\" alt=\"Telecharger le fichier CNEN\" title=\"Telecharger le fichier CNEN\" />";          echo "<img src=\"../app/img/ico_trace.png\" alt=\"Telecharger le fichier CNEN\" title=\"Telecharger le fichier CNEN\" />";
359          echo "</a> avec le bouton droit et enregistrer la cible du lien sous. <br /><br />";          echo "</a>"._("avec le bouton droit et enregistrer la cible du lien sous.")."<br /><br />";
           
360          if($DEBUG==1){          if($DEBUG==1){
361              $affiche="";              $affiche="";
362              $affiche= str_replace("\n","<br>",$export);              $affiche= str_replace("\n","<br>",$export);
363              echo $affiche;              echo $affiche;
364          }                  }              
365                }else // correct = false
366            echo _("remplissez les 2 dates");
   
         //if($DEBUG==1){  
         //    echo $depot."<br>";  
         //    echo $decision."<br>";  
         //    echo $suivi1."<br>";  
         //    echo $suivi2."<br>";  
         //}  
       
           
     }  
       
       
           
       
 /*  
   
         while ($row=& $res->fetchRow(DB_FETCHMODE_ASSOC)){  
   
   
   
   
         // ==================================================================================  
         // evenement de decision sur une p�riode      *** DECISION ***  
         // ==================================================================================  
         $sql= "select annee, dossier.dossier, dossier.nature,  
                terrain_surface, amenagement, travaux.libelle as travaux_libelle,  
                shon,logement_nombre, piece_nombre,  
                date_decision, avis.sitadel as avis_sitadel, avis.sitadel_motif as avis_sitadel_motif,  
                travaux.codelascot as lascot  
                from dossier left join travaux on dossier.travaux=travaux.travaux  
                left join avis on avis.avis= dossier.avis";  
         $sql.= " where date_decision>='".substr($_POST["datedebut"],6,4).  
                "-".substr($_POST["datedebut"],3,2)."-".  
                substr($_POST["datedebut"],0,2)."'";  
         $sql.= " AND date_decision<='".substr($_POST["datefin"],6,4).  
                "-".substr($_POST["datefin"],3,2)."-".  
                substr($_POST["datefin"],0,2)."'";  
         $sql.= " AND (dossier.nature='PC' or dossier.nature = 'PD' or dossier.nature = 'PA' or dossier.nature = 'DP')";  
         $sql.= " AND types != 'Modificatif'";  
         echo "<BR><br><font style='background-color:#ffffff;border : 1px solid #000000'>DECISION</font> ".$sql;  
         $res = $f->db -> query ($sql);  
         $f->isDatabaseError($res);  
   
         // ==================================================================================  
         // suivi DOC      *** suivi DOC ***  
         // ==================================================================================  
         // Evenement declancheur DATE OUVERTURE DE CHANTIER  
         $sql= "select annee, dossier.dossier, dossier.nature, annee,  
                date_chantier, shon  
                from dossier ";  
         $sql.= " where date_chantier>='".substr($_POST["datedebut"],6,4).  
                "-".substr($_POST["datedebut"],3,2)."-".  
                substr($_POST["datedebut"],0,2)."'";  
         $sql.= " AND date_chantier<='".substr($_POST["datefin"],6,4).  
                "-".substr($_POST["datefin"],3,2)."-".  
                substr($_POST["datefin"],0,2)."'";  
         echo "<BR><br><font style='background-color:#ffffff;border : 1px solid #000000'>SUIVI</font> ".$sql;  
         // faut il en faire suivi 1 et suivi 2 ou dans une meme requete  
         $res = $f->db -> query ($sql);  
         $f->isDatabaseError($res);  
         $suivi1="";  
   
         
         
         // ==================================================================================  
         // Transfert                                    TRANSFERT  
         // ==================================================================================  
         // element declancheur : Transfert  
         // zone types= Transfert  
         $sql= "select date_achevement, annee, dossier.dossier, demandeur_civilite, dossier.nature,demandeur_categorie,  
                 categorie_demandeur.libelle as categorie_libelle,demandeur_nom,demandeur_societe,demandeur_adresse,  
                 demandeur_ville,demandeur_cp,demandeur_email,delegataire,parcelle, terrain_numero,  
                 terrain_numero_complement,terrain_adresse,terrain_adresse_complement, terrain_ville, terrain_cp,  
                architecte from dossier  
                left join categorie_demandeur on demandeur_categorie= categorie_demandeur.categorie_demandeur";  
         $sql.= " where date_depot>='".substr($_POST["datedebut"],6,4).  
                "-".substr($_POST["datedebut"],3,2)."-".  
                substr($_POST["datedebut"],0,2)."'";  
         $sql.= " AND date_depot<='".substr($_POST["datefin"],6,4).  
                "-".substr($_POST["datefin"],3,2)."-".  
                substr($_POST["datefin"],0,2)."'";  
         $sql.= " AND types= 'Transfert'";            
        echo "<BR><br><font style='background-color:#ffffff;border : 1px solid #000000'>TRANSFERT</font> ".$sql;  
         // date du transfert ?  
         $res = $f->db -> query ($sql);  
         $f->isDatabaseError($res);  
         $transfert="";  
         while ($row=& $res->fetchRow(DB_FETCHMODE_ASSOC)){  
             $nombreenregistrement++;  
             $cpt_transfert++;  
             // sitadel : mouv|typpermis|equivalence|dep|commune|andepnumpc|indmod  
             // typepermis = dossier.nature  
             // annee = dossier.annee  
             // andepnumpc|indmod = substr dossier.dossier  
             $transfert.="TRANSFERT|".$row['nature']."||".$departement."|".$commune."|".$row['annee']."|".  
                                  substr($row['dossier'],4,5)."|".substr($row['dossier'],9,2)."|";    
            //ajout aout2010-----IDEM DEPOT codedemo � suivi (---- sauf civtiers|*prenomtier*|nomtier|*numvoietiers*|*typvoietiers*|  
            // libvoietiers|lieudittier|communetier|codpostier|*bptier*|*cedextier*|*paystier*|  
            // *divtertier et telmo----)  
            // codemo|  
            if($row['demandeur_categorie']==9 or $row['demandeur_categorie']=="")  
               $codemo=1;// personne physique  
            else  
               $codemo=2;// personne morale      
            $transfert.=$codemo."|"; // 1 personne physique ; 2 sinon  
            // openfoncier civilite (5/8 ok), nom (80/30-> substr), societe (80/50->substr)  
            // civpart|prenompart|nompart|denopm|rspm|siret|catjur|civrep|prenomrep|nomrep|  
            // suivant codemo = 1 (personne physique) ou 2 (personne morale)  
            // attention : $row['demandeur_civilite']. non standart  
             
            if($codemo==1){  
               // civpart|*prenompart*|nompart||||||  
                 
               $transfert.= "||";  
               $transfert.= maj(substr($row['demandeur_nom'],0,30))."|||||||";  
            }else{  
               //denopm|rspm|*siret*|*catjur*|civrep|*prenomrep*|nomrep|          
               $transfert.="|||".maj(substr($row['demandeur_societe'],0,50))."|";  
               $transfert.=maj(substr($row['categorie_libelle'],0,30))."|";  
               $transfert.="||||".  
                     maj(substr($row['demandeur_nom'],0,30))."|"; // pas de prenom  
            }  
            // openfoncier : adresse (80/ 26+38 -> substr sur 2 zones) - cp (5/5 OK) - ville (30/36 -> OK)  
            // *numvoiemo*|*typvoiemo*|libvoiemo|lieuditmo(+)|communemo|codposmo|*bpmo*|*cedexmo*|*paysmo*|*divetermo|  
            $transfert.= "|||".maj(substr($row['demandeur_adresse'],0,26))."|".  
                       maj(substr($row['demandeur_adresse'],26,38))."|";  
            $transfert.= maj($row['demandeur_ville'])."|".$row['demandeur_cp']."|||||";  
            // sitadel : melmo|  
            $transfert.= $row['demandeur_email']."|";  
            // sitadel: suivi  
             if($row['delegataire']=='Oui'){  
                 $transfert.= "1";  
             }else{  
                 $transfert.= "0";  
             }  
             //-------------------  
             $transfert.="\n";  
         }// fin while transfert  
         //$res -> free ();  
         if($DEBUG==1){  
             $temp=explode("\n",$transfert);  
             $temp1=sizeof($temp)-1;  
             for($g=0;$g<$temp1;$g++){  
                 $temp2=array();  
                 $temp2 = explode("|",$temp[$g]);  
                 $v=$g+1;  
                 echo "<br><br> DAT : ".$v."  ============== <br>";  
                 for($k=0;$k<sizeof($temp2);$k++){  
                     $t=$k+1;  
                     echo $t." : ".$temp2[$k]."<br>";  
                 }  
             }  
         } // debug    
           
         // ==================================================================================  
         // modificatif                                   MODIFICATIF  
         // ==================================================================================  
         // element declancheur : modificatif  
         // zone types= Modificatif  
         // suivant date-depot et dcision du modificatif  
        $sql= "select annee, dossier.dossier, dossier.nature,  
                dossier.date_decision, avis.sitadel as avis_sitadel, avis.sitadel_motif as avis_sitadel_motif,  
                dossier.terrain_numero,dossier.terrain_adresse,dossier.terrain_cp,dossier.terrain_ville,  
                dossier.parcelle,  
                dossier.terrain_surface,  
                travaux.codelascot as lascot,  
                date_achevement, shon, hauteur, piece_nombre, logement_nombre, batiment_nombre  
                from dossier left join avis on avis.avis= dossier.avis  
                left join travaux on dossier.travaux=travaux.travaux";  
        $sql.= " where (date_depot>='".substr($_POST["datedebut"],6,4).  
                "-".substr($_POST["datedebut"],3,2)."-".  
                substr($_POST["datedebut"],0,2)."'";  
        $sql.= " AND date_depot<='".substr($_POST["datefin"],6,4).  
                "-".substr($_POST["datefin"],3,2)."-".  
                substr($_POST["datefin"],0,2)."'";  
        $sql.= " AND types= 'Modificatif')";  
        $sql.= " or (date_decision>='".substr($_POST["datedebut"],6,4).  
                "-".substr($_POST["datedebut"],3,2)."-".  
                substr($_POST["datedebut"],0,2)."'";  
        $sql.= " AND date_decision<='".substr($_POST["datefin"],6,4).  
                "-".substr($_POST["datefin"],3,2)."-".  
                substr($_POST["datefin"],0,2)."'";            
         $sql.= " AND types= 'Modificatif')";    
         echo "<BR><br><font style='background-color:#ffffff;border : 1px solid #000000'>MODIFICATIF</font>".$sql;  
         // ou dat ???  
         $res = $f->db -> query ($sql);  
         $f->isDatabaseError($res);  
         $modificatif="";  
         // aout 2010 -------------------------------------------------------------------  
         while ($row=& $res->fetchRow(DB_FETCHMODE_ASSOC)){  
             $nombreenregistrement++;  
              $cpt_modificatif++;  
             // sitadel : mouv|typpermis|equivalence|dep|commune|andepnumpc|indmod  
             // typepermis = dossier.nature  
             // annee = dossier.annee  
             // andepnumpc|indmod = substr dossier.dossier  
             $modificatif.="MODIFICATIF|".$row['nature']."||".$departement."|".$commune."|".$row['annee']."|".  
                                  substr($row['dossier'],4,5)."|".substr($row['dossier'],9,2)."|";  
             // sitadel : collectivite|natdec|datredec|motifannul   difference avec decision  -> *** dateredec  a la place de datedec  
             $modificatif.= '1|'; // au nom de la commune  
             // zone supplementaire dans avis  
             // ALTER TABLE `avis` ADD `sitadel_motif` VARCHAR( 1 ) NOT NULL ;  
             // 0 � 8  
             $modificatif.= $row['avis_sitadel']."|";  
             // date au format francais 8 caracteres  
             if ($row['date_decision']!= '0000-00-00' and isset($row['date_decision']))  
                 $modificatif.= substr($row['date_decision'],8,2).''.substr($row['date_decision'],5,2)."".substr($row['date_decision'],0,4)."|";  
             else  
                 $modificatif.= "|";  
             // Motif d annulation  
             // zone supplementaire dans avis;  
             // ALTER TABLE `avis` ADD `sitadel_motif` VARCHAR( 1 ) NOT NULL ;  
             $modificatif.= $row['avis_sitadel_motif']."";  
             if(isset($row['avis_sitadel']))  
                  $avis = $row['avis_sitadel'];  
             else  
                  $avis =0;  
             // =============================================================  
             // GROUPE 2  si decision favorable, expresse ou tacite GROUPE 2  
             // =============================================================  
             if($avis==2   or $avis==4  or $avis==5 or $avis==0){// decision positive ou encours  
                 // sitadel : |numvoiete|*typvoiete*|libvoiete|lieudite|communete|codposte|*bpte*|*cedexte*|  
                 $modificatif.= "|".substr($row['terrain_numero'],0,4)."|"; // typevoie  
                 $modificatif.= "|".maj(substr($row['terrain_adresse'],0,26))."|".  
                            maj(substr($row['terrain_adresse'],26,38))."|";  
                 $modificatif.= maj($row['terrain_ville'])."|";  
                 $modificatif.= $row['terrain_cp']."|";  
                 $modificatif.= "||";  
                 // sitadel : scadastre1|ncadastre1|*scadastre2*|*ncadastre2*|*scadastre3*|*ncadastre3*|  
                 $modificatif.= substr($row['parcelle'],0,2)."|";  
                 $modificatif.= substr($row['parcelle'],2,4)."|||||";  
                 //terrain/libmotif/natrav/annexe/nvmax  
                 $modificatif.= floor($row['terrain_surface'])."|";  
                 //libmotif  
                 $modificatif.= '|';  
                 //natrav  
                 $nattrav="0000";  
                 if($row['lascot']=='2') $nattrav="1000";  
                 if($row['lascot']=='3') $nattrav="0100";  
                 $modificatif.= $nattrav."|";  
                 //annexe  
                 $modificatif.= "00000|";  
                 //nvmax  
                 $modificatif.= "|";  
                 //  shon avant travaux  shionnnant1 a 9 -> non renseigne  
                 $modificatif.= "|||||||||";  
                 //shondem1 � 9| shonanttr1 � 9| shonprojtr 1 � 9|shoncr1 a 9 |shon2cr1 a 9  
                 // table destination  
                 $sql1="select destination, shon from destination_shon where dossier = '". $row['dossier']."'";  
                 // faire une boucle et remplir  
                 //**************************************************************  
                 $res1 = $f->db -> query ($sql1);  
                 $f->isDatabaseError($res);  
                  //  
                  $tmpPD = array(); //  shon existante demolie  
                 for($i=0;$i<=9;$i++)  
                 {  
                   $tmpPD[$i]='';  
                 }  
                 //  
                 $tmplascot4 = array(); //   shon changement de destination  
                 for($i=0;$i<=9;$i++)  
                 {  
                   $tmplascot4[$i]='';  
                 }  
                 //  
                 $tmplascot1 = array(); //   shon nouvellement construite  
                 for($i=0;$i<=9;$i++)  
                 {  
                   $tmplascot1[$i]='';  
                 }  
                 //  
                 $tmplascot2 = array(); //   shon cree par transformation  
                 for($i=0;$i<=9;$i++)  
                 {  
                   $tmplascot2[$i]='';  
                 }  
                 while ($row1=& $res1->fetchRow(DB_FETCHMODE_ASSOC)){  
                     // shonprojtr1 a 9 / shoncr1 a 9 /  
                     if($row['nature']== 'PD') {  
                       $tmpPD[$row1['destination']] = $row1['shon']; //  shon existante demolie -> a remplir  
                     }  
                     if($row['lascot']== '4') {  
                        $tmplascot4[$row1['destination']] = $row1['shon'];//  shon changement de destination -> a remplir  
                     }  
                     if($row['lascot']== '1'){  
                        $tmplascot1[$row1['destination']] = $row1['shon'];//  shon nouvellement construite -> a remplir  
                     }  
                     if($row['lascot']== '2') {  
                        $tmplascot2[$row1['destination']] = $row1['shon'];//  shon cree par transformation -> a remplir  
                     }  
                 }  
                 //  shon existante demolie -> a remplir  
                 for($i=1;$i<=9;$i++)  
                 {  
                   $modificatif.=$tmpPD[$i].'|';  
                 }  
                 //  
                 $modificatif.= "|||||||||";//  shon supprimmee par changement de destination -> non renseigne  
                 //  
                 //$row['lascot']== '4' shon changement de destination  
                 for($i=1;$i<=9;$i++)  
                 {  
                   $modificatif.=$tmplascot4[$i].'|';  
                 }  
                 //shon nouvellement construite  
                 for($i=1;$i<=9;$i++)  
                 {  
                   $modificatif.=$tmplascot1[$i].'|';  
                 }  
                 //shon cree par transformation  
                 for($i=1;$i<=9;$i++)  
                 {  
                   $modificatif.=$tmplascot2[$i].'|';  
                 }  
                //**************************************************************  
                // cpublic : non renseignee N par defaut  
                // O/N transport/enseignement/sante/social/special/culture  
                 $modificatif.= "000000";  
                 // nbmaison : nombre de maison  
                 $modificatif.= "|".$row['batiment_nombre'];  
                  // nblogcoll : nombre de logement collectif  
                 $modificatif.= "|".$row['logement_nombre'];  
                  // nbtotlog : nombre de logement total  
                 $modificatif.= "|".$row['logement_nombre'];  
                  // natres : nature des residences  
                  // O/N 1=ages, 2=etudiant, 3=tourisme, 4=hotel, 5=social, 6= handicap, 7=autres  
                 $modificatif.= "|0000000";  
                  // libres= si autre residence (long max 1000 c)  
                 $modificatif.= "|";  
                 // util : O/N personnel, principale, secondaire, vente, location  
                 $modificatif.= "|00000";  
                 //chambres  
                 $modificatif.= "|";  
                 //finis (nb logement locatif sociaux)/finaa(nb logementfinancement aid�)  
                 //finptz (nb logement pret taux 0)/finaf (nb logement autrement)/  
                 //piec1 � 6 (nb logement 1 a 6pieces )  
                 $modificatif.= "||||||||||";  
             }//fin GROUPE 2  
             $modificatif.="\n";  
         }// fin while modificatif  
               
         if($DEBUG==1){  
             $temp=explode("\n",$modificatif);  
             $temp1=sizeof($temp)-1;  
             for($g=0;$g<$temp1;$g++){  
                 $temp2=array();  
                 $temp2 = explode("|",$temp[$g]);  
                 $v=$g+1;  
                 echo "<br><br> DAT : ".$v."  ============== <br>";  
                 for($k=0;$k<sizeof($temp2);$k++){  
                     $t=$k+1;  
                     echo $t." : ".$temp2[$k]."<br>";  
                 }  
             }  
         } // fin debug    
                 
         // ***************************************  
         // entete de l enregistrement page 8 et 9  
         // ***************************************    
         // numero  
         //$numero= $db -> nextId('sitadel');          
         $numero=$_POST["numero"];  
         $fichiertransmis = date('ymj').$departement.$commune;  
         $longueurenregistrement= 0 ; // a calculer ***  enregistrement le plus long  
         $entete = "SITADEL|".$departement."|".$commune."|".$region."|".$fichiertransmis."|".$numero."|";  
         // calcul enregistrement le plus long  
         $tmpenr="";  
         $tmpenr=$depot.$decision.$suivi1.$suivi2.$transfert.$modificatif;  
         if($flag_utf8_decode==1){  
             $tmpenr=utf8_decode($tmpenr);  
         }else{  
            if($flag_utf8_encode==1){  
                $tmpenr=utf8_encode($tmpenr);  
            }  
         }  
         $nbenr = explode("\n",$tmpenr);  
         $tmp=array();  
         $cpt=0;  
          for($i=0;$i<sizeof($nbenr);$i++){  
               // mb_strlen( variable,encoding) PHP 4 >= 4.0.6, PHP 5  
               // Le param�tre encoding est l'encodage des caract�res.  
               // S'il est omis, l'encodage de caractres interne sera utilis�.  
               $tmp[$i] = strlen($nbenr[$i]);  
               //echo strlen($nbenr[$i])." ".$nbenr[$i]."<br>";  
               $cpt++;  
         }  
         $longueurenregistrement=max($tmp);  
         //tri tableau  
         array_multisort($tmp,SORT_DESC);  
         //exact cpt-1+1 (cpt -1( tableau 0 � n ) +1(enregistrement entete) )  
         echo "<BR><br>Nombre Total Enregistrement : ".$cpt." <->  ".$nombreenregistrement."<br><br>";  
         echo "Detail :<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;- DEPOT : ".$cpt_depot."<br>";  
         echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;- DECISION vide suite DEPOT: ".$cpt_decisionsuivantdepot."<br>";  
         echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;- DECISION : ".$cpt_decision."<br>";  
         echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;- SUIVI 1 : ".$cpt_suivi1."<br>";  
         echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;- SUIVI 2 : ".$cpt_suivi2."<br>";  
         echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;- TRANSFERT : ".$cpt_transfert."<br>";  
         echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;- MODIFICATIF : ".$cpt_modificatif."<br>";  
         echo "TOTAL : ".($cpt_depot+$cpt_decisionsuivantdepot+$cpt_decision+$cpt_suivi1+$cpt_suivi2+$cpt_transfert+$cpt_modificatif)." + 1 enregistrement(entete)";  
         echo "<br><br>Longueur Enregistrement le plus long : ".max($tmp)." <-> ".$tmp[0];  
       
         // Date de modification  
         $datemodification = date('y').str_pad (DATE('m'), 2, "0", STR_PAD_LEFT).str_pad (DATE('j'), 2, "0", STR_PAD_LEFT);  
   
   
           
         $entete.= $longueurenregistrement."|".$datemodification."|".$nombreenregistrement."|openFoncier|".$versionapplicatif."\n";  
         $export=$entete.$depot.$decision.$suivi1.$suivi2.$transfert.$modificatif;  
       
         if($flag_utf8_decode==1){  
             $export=utf8_decode($export);  
         }else{  
            if($flag_utf8_encode==1){  
                $export=utf8_encode($export);  
            }  
         }  
         //$str = htmlentities($str, ENT_QUOTES);  
         // ecriture des fichiers en tmp  
         $fichier = "../tmp/SITADEL".substr($_POST["datedebut"],3,2).  
                "".substr($_POST["datedebut"],8,4)."_test";  
         $inf = fopen($fichier,"w");  
         //$export=substr($export,0,strlen($export)-1); // un \n en trop  
         fwrite($inf,$export);  
         fclose($inf);  
         echo "<table class='dossier' width='95%'>";  
         echo "<tr class='dossier'><td>";  
         echo "<br>Fichier ".$fichier." sauvegarde<br><br><br>";  
         $affiche="";  
         if($DEBUG==1)  
             $affiche= str_replace("\n","<br>",$export);  
         // affichage  
         echo "<br /><br />Pour telecharger le fichier, cliquer ici : <a href=\"".$fichier."\" target=\"_blank\">";  
         echo "<img src=\"../app/img/ico_trace.png\" alt=\"Telecharger le fichier CNEN\" title=\"Telecharger le fichier CNEN\" />";  
         echo "</a> avec le bouton droit et enregistrer la cible du lien sous. <br /><br />";  
         echo $affiche;  
           //echo"<img src='../img/retour.png' align='top'  border='0'>";  
          // echo "</a></center>";  
           echo "</td></tr></table>";  
  */  
     }else  
         echo "remplissez les 2 dates";  
367  }//validation  }//validation
 ?>  
368    ?>

Legend:
Removed from v.186  
changed lines
  Added in v.267

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26