blog2geek.com
SlyAvatar de Sly

245 billets | Profil

Recherche Google

ce blog tous
Derniers billets Connexion
Archives

yay

22/05/2007

[WEB] Ergonomie - solution technique

Ce post fait partie d'une série de quatre, relatifs au même problème.
Introduction - l'ergonomie : ni une science ni un art, mais une méthodologie.
Présentation - le problème concret
Solution 1 - une solution pratique et rapide
Solution 2 - la vraie méthode propre (si applicable)
-------------------------------------------------------------------------------------------

Voilà donc ma réponse au problème d'ergonomie socio-technique posé dans les billets précédents. En 10 mots : une relation d'association N-N entre clients et comptes.

Mon approche n'est pas forcément géniale, les commentaires et en particulier les solutions génialissimes sont les bienvenus :)

En effet, je pars d'un existant et on se rend compte grâce à cette suite de post que c'était vraiment le truc à planifier avec attention, mais on fera avec.

 

Supposez maintenant que vous êtes sur la page de modification / création d'un compte et que vous voulez lui associer N clients.

 

PREMIERE METHODE : 'CLASSIQUE'

D'une part, on peut faire une partie de la page "liste des clients liés à ce compte" histoire de voir où on en est, et une autre partie "recherche d'un client à ajouter au compte". Ce n'est pas une mauvaise idée de se dire qu'on aura besoin de ce genre de composant dans d'autre cas, alors pour un code propre en Rails, un composant est tout à fait adapté ici. Notons qu'un render :action fera très bien l'affaire aussi, si vous faites gaffe aux params de la requête.

Dans cette partie recherche, on mettra au moins un champ de recherche, ou tout ce qu'il faut pour trouver efficacement un client. Là-dessus, je dirais que s'il existe dans votre cas particulier un code, numéro de dossier ou que sais-je encore, il faut ABSOLUMENT que l'employé puisse le saisir.

S'il est susceptible de connaître ce moyen d'identification par coeur, il DOIT avoir la possibilité de le faire en quelques secondes et en aucun cas vous ne devez l'obliger à taper tout un nom, dérouler une dropdown ou chercher dans une page.

 

Techniquement, je dirais que la partie "recherche" devrait contenir plusieurs formulaires différents, c'est plus facile pour le développeur. Cependant j'ai constaté de sérieux bugs dans IE6 et 7 quand on met plusieurs forms sur une page (impossible de soumettre le formulaire). C'est pas très grave, il suffit de coder soi-même (dans le validate par exemple, ou avec un callback genre before_save) un truc qui décidera quelle entrée choisir et convertira la donnée en ID voulu.

 

Suite (et fin) au prochain épisode :)