Subversion Repositories eFlore/Applications.cel

Rev

Go to most recent revision | Show changed files | Directory listing | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
1639 3989 d 6 h raphael /trunk/jrest/services/ export/xls: support préliminaire de l'export des nom de fichiers des images,
documentation du code existant et améliorations marginales
 
1638 3989 d 14 h raphael /trunk/jrest/services/ import/export xls: francisation du code (sorry)  
1636 3992 d 6 h raphael /trunk/jrest/services/ import/xls: Réécriture d'une version [initiale] d'un web-service d'import
de fichier XLS.
* basé sur PHPExcel
* mutualise les informations de colonnes (à partir de ExportXLS)

Ce afin d'assurer pérennité, consistance (et autant que possible flexibilité)
au système d'import/export XLS.
Les champs importés/exportés et leurs usages pouvant être amenés à évoluer,
l'infrastructure tente d'éviter tout risque d'incohérence dans le reconnaissance des
champs tout en permettant des traitements particuliers.
 
1635 3992 d 6 h raphael /trunk/jrest/services/ export/xls: ajout du paramètre de colonne "importable", définissant si une la valeur de
cette colonne sera intéressante lors de l'import ou si, a contrario, cette valeur
est générée automatiquement et peut être ignorée à l'import.
 
1634 3992 d 9 h raphael /trunk/jrest/ export/xls: observation, ajoute la possibilité d'effectuer des requêtes arbitraires
à travers le constructeur de requêtes SQL sans nuire pour autant à la sécurité générale
de l'application.

+ oublie d'un require(PHPExcel)
+ ajout de debug temporaire
+ sécurisation du calcul du range() pour éviter des débordements via des valeurs nuisibles
 
1633 3992 d 9 h raphael /trunk/jrest/services/ export/xls: Ajout de 3 approches de la récupération du nom commun.
* getNomCommun() fait appel au web-service dédié, ce qui est élégant mais
tout bonnement impraticable de part la latence induite.
* getNomCommun_v2() et getNomCommun_v3() sont deux tentatives de bootstrapper
le framework et d'utiliser les web-service sout la forme d'appels de fonction.
Seule getNomCommun_v3() est véritablement fonctionnelle, mais dépend d'adaptations
ailleurs, dont la première faire dépendre l'ensemble de PHP 5.3

1) patch pour Bdd.php:
ajout d'un `namespace JRest;`

2) patch pour services/modules/0.1/Projets.php
passage de private à public pour:
- initialiserRessourcesEtParametres()
- traiterRessources()
Afin de permettre les appels directs.

Ce code à néanmoins une valeur éducative certaine.

Approches alternatives/complémentaires possibles (liste non-exhaustive):
* proxy-cache sur les web-service
* cache fichier + rewriteRules sur les ressources de certaines URL de certains web-service
* ajout des colonnes dans obs_cel (! redondance de données)
= ajout du nom commun au moment de l'insertion.
 
1632 3992 d 9 h raphael /trunk/jrest/services/ export/xls: diverses améliorations, notamment la définition des colonnes  
1631 3994 d 13 h raphael /trunk/jrest/ Cel/API: RechercheObservation->rechercherObservations() ne n'exécute plus d'emblée
la requête générée et par conséquent ne retourne pas ses résultats,
à l'exception de l'objet ($this) dont l'attribut public $requete_selection_observations
est initialisé.

La méthode get(), elle, exécute la requête et retourne les données résultantes.
Et puisque rechercherObservations() retourne l'objet, il est donc possible d'enchaîner les deux
appels en utilisant désormais la syntaxe RechercheObservation->rechercherObservations()->get().

Cela permet de découpler la génération de la requête de son exécution et donc possiblement
de manipuler la requête en plusieurs temps.
Cela pourrait s'avérer utile dans les cas où le script traitant les données souhaiterait s'architecturer
sous la forme d'un flux au fil de la récupération des enregistrements en BDD plutôt que de
compter sur l'exécution intégrale de la requête et d'attendre le retour exhaustif des données.
 
1630 3995 d 6 h raphael /trunk/jrest/services/ cel/export XLS: Écriture d'une version initiale d'un webservice d'export au format XLS
utilisant la librairie PHPExcel pour la génération
et se voulant claire et aisément extensible.
 
1628 3995 d 13 h raphael /trunk/ cel/saisie: Refus de la saisie lors de l'ajout ou de la modification d'une entrée
comportant une date "invalide", c'est à dire postérieur à now().
* côté client, le DateField GWT se voit donc appliqué une contrainte de date maximum (setMaxValue())
* côté backend, une 400 (Bad Request) est renvoyée
 
1625 3999 d 9 h aurelien /trunk/jrest/services/ Ajout d'un mode renvoyant une liste de fichiers à télécharger  
1622 4000 d 8 h aurelien /trunk/jrest/services/ AJout du référentiel dans les données renvoyées par les widgets  
1617 4000 d 11 h aurelien /trunk/jrest/services/ Ajout de noms de colonnes manquantes qui décalaient les valeurs de l'export  
1616 4000 d 11 h raphael /trunk/jrest/services/ export xls: utilisation de iconv() pour la translitération des caractères accentués.  
1615 4002 d 11 h raphael /trunk/jrest/ import: encodage utf-8 désormais postulé pour les fichiers Excel
en entrée utilisés pour l'import.
 
1612 4003 d 9 h raphael /trunk/jrest/services/ export: encodage utf-8 pour le widget aussi (cf r1609)  
1611 4003 d 9 h raphael /trunk/jrest/services/ export cel widget: la surcharge de méthode en PHP-5.4 n'est pas autorisée
à modifier le prototype de son parent. Cet héritage n'a pas lieu d'être.
 
1610 4003 d 9 h raphael /trunk/jrest/services/ export: mise à jour du code d'export pour la compatibilité avec la nouvelle
structure de fichier de la librairie PEAR Spreadsheet. [bis]
(On ne peut plus compter sur __autoload($classe) pour la charger)
 
1609 4003 d 9 h raphael /trunk/jrest/services/ export: encodage utf-8 désormais utilisé pour les fichiers Excel exportés
à l'aide de l'export (sauf le widget).
 
1606 4003 d 11 h raphael /trunk/jrest/services/ export: mise à jour du code d'export pour la compatibilité avec la nouvelle
structure de fichier de la librairie PEAR Spreadsheet.
(On ne peut plus compter sur __autoload($classe) pour la charger)
 

Show All