33,15 → 33,15 |
} |
|
private function migrerObservationsSauvages() { |
$liste_observations = $this->dao->obtenirObservationsSauvages(); |
$this->traiterObservationsSauvages($liste_observations); |
$nb_obs = $this->dao->obtenirNbObservationsSauvages(); |
$this->traiterObservationsSauvages($nb_obs); |
} |
|
private function traiterObservationsSauvages($liste_observations) { |
private function traiterObservationsSauvages($nb_obs) { |
$debut = microtime(true); |
$nb_obs_modifiees = 0; |
$nb_obs_ignorees = 0; |
$total = count($liste_observations); |
$total = $nb_obs; |
|
if($this->mode_verbeux) { |
echo "-------------------------------------------------------------------\n"; |
52,34 → 52,46 |
|
$champs_etendus_a_inserer = array(); |
$nb_champs_total = 0; |
$nb_champs = 0; |
echo " Insertion des champs étendus (5 par observation) par paquet de 100 \n"; |
foreach($liste_observations as $observation) { |
|
// test si obs candidate est ok, i.e. si elle contient bien un champ station formate comme ceci |
// coordonnees_debut_de_rue;coordonnees_fin_de_rue;cote_de_la_rue |
if ($this->doitMigrerObservation($observation)) { |
$champs_etendus_a_inserer[] = $this->convertirChampsObsSauvagesEnChampsEtendus($observation); |
$nb_obs_modifiees++; |
$nb_champs += 5; |
$nb_champs_total += 5; |
} else { |
$nb_obs_ignorees++; |
} |
|
// insertion par paquets de 100 champs ou bien à la fin du parcours de la liste s'il y a moins de |
// 20 observations à traiter (20 obs * 5 champs = 100 champs) |
if($nb_champs >= 100 || ($nb_obs_modifiees + $nb_obs_ignorees >= count($liste_observations))) { |
$this->dao->ajouterChampsEtendusParLots($champs_etendus_a_inserer); |
$champs_etendus_a_inserer = array(); |
$nb_champs = 0; |
$nb_champs_etendus_a_inserer = 0; |
|
$pas_liste_obs = 5000; |
echo " Traitement des observations par paquet de ".$pas_liste_obs." (5 champs étendus ajoutés par observation traitée) \n"; |
|
for($i = 0; $i <= $total; $i += $pas_liste_obs) { |
$liste_observations = $this->dao->obtenirObservationsSauvages($i, $pas_liste_obs); |
$champs_etendus_a_inserer = array(); |
$nb_champs_etendus_a_inserer = 0; |
foreach($liste_observations as $observation) { |
|
if($this->mode_verbeux) { |
$this->afficherAvancement(' champs étendus insérés ', $nb_champs_total); |
// test si obs candidate est ok, i.e. si elle contient bien un champ station formate comme ceci |
// coordonnees_debut_de_rue;coordonnees_fin_de_rue;cote_de_la_rue |
if ($this->doitMigrerObservation($observation)) { |
$champs_etendus_a_inserer[] = $this->convertirChampsObsSauvagesEnChampsEtendus($observation); |
$nb_obs_modifiees++; |
$nb_champs_etendus_a_inserer += 5; |
$nb_champs_total += 5; |
} else { |
$nb_obs_ignorees++; |
} |
|
// insertion par paquets de 100 champs ou bien à la fin du parcours de la liste s'il y a moins de |
// 20 observations à traiter (20 obs * 5 champs = 100 champs) |
if($nb_champs_etendus_a_inserer >= 100) { |
$this->dao->ajouterChampsEtendusParLots($champs_etendus_a_inserer); |
$champs_etendus_a_inserer = array(); |
$nb_champs_etendus_a_inserer = 0; |
} |
} |
echo " ".$nb_champs_total." champs étendus insérés \n"; |
} |
|
|
// insertion des champs restants s'il en reste moins de 100 à la fin |
if($nb_champs_etendus_a_inserer > 0) { |
$this->dao->ajouterChampsEtendusParLots($champs_etendus_a_inserer); |
$nb_champs_total += $nb_champs_etendus_a_inserer; |
echo " ".$nb_champs_total." champs étendus insérés \n"; |
} |
|
$fin = microtime(true); |
if($this->mode_verbeux) { |
echo "\n"; |
Property changes: |
Added: svn:mergeinfo |
Merged /branches/v1.7-croissant/scripts/modules/migrationsauvages/Migrationsauvages.php:r1855,1879-1880,1885-1886,1917,1923,1983 |
Merged /branches/topic-dbsingleton/scripts/modules/migrationsauvages/Migrationsauvages.php:r1720-1764 |
Merged /branches/v1.8-debroussailleuse/scripts/modules/migrationsauvages/Migrationsauvages.php:r1981,1987,1992,1998-2002 |