Le forum de livrotheque

Vous n'êtes pas identifié.

  • Index
  •  » commentaires
  •  » v1.4.2.1 à tester : modification en masse et import depuis un fichier

#1 18-06-2011 08:34:45

cubbiste
Programmeur
Date d'inscription: 07-01-2010
Messages: 122

v1.4.2.1 à tester : modification en masse et import depuis un fichier

Bonjour à tous les utilisateurs de Livrotheque

Je reviens sur le forum après une longue période d'absence pour vous proposer une nouvelle version.
Cette version embarque principalement (ou uniquement ? en fait, je ne sais plus si j'ai fait des micros modifs il y a longtemps, il faudra que je vérifie) deux nouvelles fonctionnalités :
1. la modification en masse de plusieurs livres
2. l'ajout assisté de livres à partir d'une liste saisie ou importée depuis un fichier

Dans les détails, voici ce que cela donne :

1. modification en masse de plusieurs livres.
Le principe est simple et veut répondre à la situation suivante (non personnelle et tirée d'un exemple fourni sur le forum) : le WAF (Wife Acceptance Factor) de ma collection de BD dans le salon a brusquement chuté, et j'ai dû toutes les déplacer dans la cave. Comment faire pour ne pas avoir à toutes les modifier une par une, sachant que j'en ai évidemment beaucoup ?
La réponse est maintenant la suivante :
- sélectionner toutes les lignes concernées dans la liste des livres (on pourra utilement utiliser les fonctions de recherche pour cibler la liste affichée sur les livres à modifier). Pour cela, il faut utiliser SHIFT+clic et CTRL+clic.
- ouvrir le menu contextuel d'un clic droit
- choisir "modifier les livres sélectionnés"
- la fenêtre habituelle de modification d'un livre s'ouvre, mais dans un mode particulier adapté à la modification en masse :
http://www3.mediafire.com/imgbnc.php/ab5fdcc45d65610dcc97645fed119d6a958e961391b6e9f97c6e3f7e9c8a33f75g.jpg
    * les onglets "image" ont disparu, parce que j'ai considéré que plusieurs ouvrages ne partageaient pas la même couverture (et puis parce que ça me simplifiait la vie ...)
    * les champs pour lesquels tous les livres sélectionnés ont la même valeur sont affichés normalement. Lorsqu'une case à cocher "conserver" est apparue à côté du champ, elle n'est pas cochée
    * pour les champs pour lesquels les valeurs diffèrent entre les livres sélectionnés
        - si c'est un champ texte modifiable, on lit "<< ne pas modifier >>"
        - si c'est un champ texte non modifiable, on lit "plusieurs valeurs"
        - dans les autres cas, on voit la valeur par défaut, et la nouvelle case à cocher "conserver" est cochée
- vous pouvez alors saisir les modifications à apporter à tous les livres, en sachant que si vous laissez la valeur "<< ne pas modifier >>" ou si vous cochez la case "conserver", le champ ne sera pas modifié (et donc chaque livre conservera sa valeur antérieure). Si vous saisissez une autre valeur, ou si vous décochez la case, tous les livres sélectionnés adopteront la valeur saisie.

Afin d'éviter des problèmes, la modification en masse est limitée à 50 livres à la fois.

En complément, il est maintenant également possible de supprimer plusieurs livres en une opération, avec la même limite de 50 livres.
En revanche, l'option de duplication d'un livre ne s'applique qu'au premier livre sélectionné (puisqu'il faut saisir les caractéristiques du nouveau livre).


2. ajout assisté de plusieurs livres.
Là aussi, le but est de répondre à des demandes rencontrées sur le forum, de type "j'ai une liste de livres dans un fichier texte, et je voudrais tous les importer dans livrothèque d'un coup d'un seul".
Mais en tenant compte de la remarque (judicieuse évidemment) de Fougny en réponse à cette demande : on ne peut pas (ie : on ne veut pas) faire un import automatique, puisqu'il y a toujours des données à corriger / ajouter par rapport à ce que la recherche internet remonte.
La solution que je propose se passe en deux étapes :
- saisir ou importer la liste des livres "en attente d'insertion"
- lancer ensuite en un clic la recherche et l'insertion en base sur un livre de cette liste
Je n'ai pas voulu me limiter à la possibilité d'importer une liste. Il est possible de saisir directement la liste des livres à insérer ultérieurement. L'idée est la suivante : vous faites l'inventaire du grenier à la campagne sans accès à internet. Vous saisissez juste quelques informations nécessaires et suffisantes sur les livres, et vous faites les recherches sur internet quand vous retrouvez une connexion internet.

Mode opératoire
- aller dans le nouveau menu "Edition / Afficher les livres en attente d'insertion"
http://www1.mediafire.com/imgbnc.php/249376a9a07996cfb55463ef96bb0643342dda840a151fb29d83529454190f8c5g.jpg
- compléter la liste des livres en attente d'insertion :
        - soit en utilisant le bouton "Ajouter une ligne" et en saisissant tout ou partie des informations demandées : isbn, titre, auteur, commentaire
        - soit en préparant un fichier texte contenant les mêmes informations séparées par des tabulations, et en cliquant sur le bouton "Importer une liste"
- sélectionner une ligne dans la liste
- cliquer sur le bouton "Insérer la ligne sélectionnée"
Le comportement dépend alors des informations présentes sur la ligne :
- si l'isbn est présent : une recherche sur cet isbn est automatiquement lancée, et vous arrivez sur la fenêtre présentant les résultats de cette recherche
- si l'isbn est absent et le titre présent : une recherche plein texte utilisant le titre est initialisée. Vous pouvez la modifier, et lancer ensuite la recherche en cliquant sur "Rechercher"
- si l'isbn et le titre sont absents, et l'auteur présent : une recherche plein texte utilisant l'auteur est initialisée. Vous pouvez la modifier, et lancer ensuite la recherche en cliquant sur "Rechercher"
- quant au champ commentaire, il n'est jamais utilisé. L'idée de ce champ est juste de s'en servir comme d'un pense bête associé à la ligne (ex : BD en mauvais état trouvé le xx/xx/2011 dans le grenier de Tata Julie ...)
Si vous validez l'insertion d'un livre suite à cette recherche, la ligne "livre en attente d'insertion" est supprimée. Dans le cas contraire, elle est conservée pour une prochaine fois.
Dans tous les cas, vous avez la possibilité de modifier cette liste à tout moment :
- suppression d'une ou plusieurs lignes en sélectionnant les lignes et en cliquant sur "Supprimer les lignes sélectionnées"
- modification d'une ligne en double-cliquant dessus
- ajout d'une ligne par le bouton "Ajouter une ligne" ou par l'import d'un fichier (l'import fonctionne en ajout et ne modifie pas les lignes présentes. Il n'y a pas non plus de recherche de doublons dans la liste)

Ca a l'air compliqué comme ça, mais c'est normalement fait pour être assez simple. Donc le mieux est d'essayer, et de me faire part de vos retours :
- ce qui marche
- ce qui ne marche pas
- ce qui pourrait marcher différemment ou mieux
- ce qui vous passe par la tête

Pour tester, ça se passe comme ça :
- vous récupérez l'exécutable de test avec le lien suivant : http://www.mediafire.com/?ou7gein4g86auu1
- vous créez un répertoire dédié dans lequel vous copiez l'exécutable
- vous allez dans le répertoire d'installation de livrothèque et vous y récupérez les fichiers suivants :
    - config
    - libcurl-4.dll
- vous copiez ces fichiers dans le répertoire de test
- vous faites une copie de votre base de livres (son emplacement s'affiche dans la barre de titre de livrotheque) et vous la copiez également dans le répertoire de test. Si vous voulez, vous renommez cette base.
- vous lancez l'exécutable de test en double-cliquant dessus. Il va ouvrir votre base habituelle. Avant toute autre manipulation, vous allez dans le menu "Fichier / Ouvrir une base" pour sélectionner la base qui se trouve dans le répertoire de test.
En procédant ainsi, vous êtes certain de ne pas faire de modification sur votre base principale, ce qui est plus sage tant que la version n'est pas officielle.

Bons tests, et j'attends vos commentaires avec intérêt.

Dernière modification par cubbiste (18-07-2011 13:43:16)

Hors ligne

 

#2 18-06-2011 12:50:23

fougny
Administrator
Date d'inscription: 30-07-2006
Messages: 533

Re: v1.4.2.1 à tester : modification en masse et import depuis un fichier

La modification des livres en masse c'est une idée excellente!

Je vais regarder ton code pour voir comment tu as fait, ça a pas du être facile!

Hors ligne

 

#3 18-06-2011 13:27:24

fougny
Administrator
Date d'inscription: 30-07-2006
Messages: 533

Re: v1.4.2.1 à tester : modification en masse et import depuis un fichier

tu as checkiné tes sources? Je n'arrive pas à les récupérer avec tortoise.

Hors ligne

 

#4 18-06-2011 13:38:20

cubbiste
Programmeur
Date d'inscription: 07-01-2010
Messages: 122

Re: v1.4.2.1 à tester : modification en masse et import depuis un fichier

non, pas encore. Je vais le faire de ce pas ... ou presque.

c'est fait, sauf le .layout qui ne passe pas. Je retenterai plus tard.

Dernière modification par cubbiste (18-06-2011 13:45:35)

Hors ligne

 

#5 18-06-2011 13:47:12

fougny
Administrator
Date d'inscription: 30-07-2006
Messages: 533

Re: v1.4.2.1 à tester : modification en masse et import depuis un fichier

ok merci, je compile et je teste cet apres midi!

Hors ligne

 

#6 18-06-2011 21:24:00

fougny
Administrator
Date d'inscription: 30-07-2006
Messages: 533

Re: v1.4.2.1 à tester : modification en masse et import depuis un fichier

J'ai testé la modification de masse : c'est excellent!
Je n'ai pas vu de probleme pour l'instant (je continuerai de tester demain en essayant de 'pousser' un peu le systeme.

je testerai l'ajout  assisté plus tard.

Ps : le .layout ne dois pas servir à grand chose : la compil c'est passé nickel smile

Hors ligne

 

#7 19-06-2011 16:03:30

fougny
Administrator
Date d'inscription: 30-07-2006
Messages: 533

Re: v1.4.2.1 à tester : modification en masse et import depuis un fichier

J'ai pas mal testé et ça marche nickel (en tout cas je n'ai pas trouvé de bug).

La modification de masse est clairement géniale : actuellement je m'en sert pour détecter les incohérences sur les séries. C'est super pratique.

pour l'ajout assisté de plusieurs livres je ne vois pas trop l’intérêt, mais bon il était déjà clair que je n'étais pas super fan de ce genre de truc big_smile. Je laisserai donc le soin à d'autres de faire plus de test (j'ai quand même testé sur une 10aine d'entrées et ça à l'air de marcher). Par contre peut être faudrait il donner un modèle pour que les néophytes voient comment constituer le fichier.

Pour pinailler (mais c'est vraiment du pinaillage de haut niveau : c'est déjà tres bien comme ça), après avoir modifié un ensemble de livre ça pourrait être cool que la sélection précédente soit reprise.

Sinon je passe en version finale et je livre tout ça quand tu veux!

Hors ligne

 

#8 19-06-2011 21:37:58

esilenna
Moderator
Date d'inscription: 31-07-2006
Messages: 21

Re: v1.4.2.1 à tester : modification en masse et import depuis un fichier

J'ai essayé la modif de livres groupés, ça marche nickel, je trouve ça vraiment génial, notamment pour changer les erreurs dans les séries (moi c'est surtout les genres qui peuvent me poser problèmes, avec les récupérations automatiques, on ne se souvient plus forcément de ce qu'on avait mis), ça va me permettre d'harmoniser tout ça! Merci!

Hors ligne

 

#9 20-06-2011 09:00:38

cubbiste
Programmeur
Date d'inscription: 07-01-2010
Messages: 122

Re: v1.4.2.1 à tester : modification en masse et import depuis un fichier

Je viens de commiter une version avec la prise en compte du "pinaillage", c'est à dire qu'en sortie de modification en masse, on resélectionne les lignes modifiées.
En fait, ça m'a donné du fil à retordre à cause d'un bug dans rowIdSelectionnees() qui ne se manifestait apparemment que dans ce cas-là, mais au moins, ça m'a permis de corriger ce bug.
En complément, le titre de la fenêtre de modification s'adapte au contexte (nouveau livre / modification unitaire / modification en masse).

Et ce coup ci, le .layout est passé ...

je n'ai plus le temps maintenant, mais d'ici demain, je devrais également te commiter un fichier exemple pour l'insertion en masse.

Dernière modification par cubbiste (20-06-2011 09:02:05)

Hors ligne

 

#10 20-06-2011 22:06:16

cubbiste
Programmeur
Date d'inscription: 07-01-2010
Messages: 122

Re: v1.4.2.1 à tester : modification en masse et import depuis un fichier

et hop, un nouveau commit avec l'exemple de fichier pour l'import assisté, et la possibilité de mettre des commentaires dans ce fichier

pour moi, c'est bon si tu veux livrer, je n'ai plus rien sur le feu, et pas encore de rapport de bugs à traiter ...

Hors ligne

 

#11 21-06-2011 18:43:49

fougny
Administrator
Date d'inscription: 30-07-2006
Messages: 533

Re: v1.4.2.1 à tester : modification en masse et import depuis un fichier

Oki,nickel!


Je m'en occupe demain!

Hors ligne

 

#12 22-06-2011 20:02:10

fougny
Administrator
Date d'inscription: 30-07-2006
Messages: 533

Re: v1.4.2.1 à tester : modification en masse et import depuis un fichier

C'est bon j'ai tout mis à jour.

Hors ligne

 

#13 23-06-2011 18:41:21

tinba
Master
Date d'inscription: 02-11-2006
Messages: 57

Re: v1.4.2.1 à tester : modification en masse et import depuis un fichier

Géniale cette dernière mise à jour, merci !

Hors ligne

 
  • Index
  •  » commentaires
  •  » v1.4.2.1 à tester : modification en masse et import depuis un fichier

Pied de page des forums

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson