INFORMATION IMPORTANTE
Suite à la mise à jour à venir du site (mise en ligne prévue avant la fin du mois), ces forums seront bientôt archivés et il ne sera plus possible d'y contribuer.
Vous devrez vous inscrire sur les nouveaux forums quand ils seront disponibles. Les conversations en cours devront continuer dans le nouveau forum.
Désolé pour ce changement
Vérification de la base de données pour les liens films invalides
matmp
Member
dans Applications mobiles
Bonsoir et bonnes fêtes !
Je crois avoir bien fouillé le forum, mais sans trouver une fonctionnalité qui me semble importante.
Comment est-il possible de vérifier la base de données en filtrant sur les films sans support, donc dont les liens sont invalides ?
Je m'explique :
si des films sont supprimés dans le dossier de scan, ils restent dispo dans la base de données,
sans qu'il soit possible de filtrer facilement ces manquants (sauf à les faire tous défiler et tenter de les lire ...!)
Un script peut être ?
Merci ! :-)
Je crois avoir bien fouillé le forum, mais sans trouver une fonctionnalité qui me semble importante.
Comment est-il possible de vérifier la base de données en filtrant sur les films sans support, donc dont les liens sont invalides ?
Je m'explique :
si des films sont supprimés dans le dossier de scan, ils restent dispo dans la base de données,
sans qu'il soit possible de filtrer facilement ces manquants (sauf à les faire tous défiler et tenter de les lire ...!)
Un script peut être ?
Merci ! :-)
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
En attendant, le plus simple, enfin..., qd on supprime un film du ou des répertoires de scan, est de le supprimer dans la foulée de la base.
(Un script avec ScriptEdit, ça ne serait pas adapté).
Je me permets d'intervenir.
Python est un langage de programmation, que je ne connaissais pas; mais du fait de ta question et la réponse d'oocieni, je me suis dit : "tiens, je vais jeter un oeil" (sur internet).
Ça ressemble pas vraiment à ce que j'utilise dans Filmotech ScriptEdit (assez proche de VB) !
En plus il faut avoir quelques notions de SQL (on travaille sur des bases qslite), là ça va.
Bon, après une certaine "acclimatation", je pense commencer à voir ce que pourrait être l'écriture d'un script Python qui supprimerait les fiches dont l'adresse est obsolète.
Mais il est clair que le script ne peut être intégrer à Filmotech (© Pascal); il faudrait travailler sur une sauvegarde de la base, puis la restaurer.
Il est plus simple de faire un nouveau scan disque sur les répertoires que l'on souhaite !
Meilleurs voeux également !
PS : utilisation de Python sur mac : https://docs.python.org/fr/3/using/mac.html
Mais c'est bien de se mettre à un langage orienté objet...
@Oocieni, C'est le script de travail commenté ; effectivement on peut travailler sur la base originelle plutôt que sur une sauvegarde (c'est assez facile d'avoir le chemin sur mac).
Ceci étant, je débute en Python, donc tu auras sans doute des idées pour voir comment on peut le modifier et l'utiliser au mieux.
https://drive.google.com/file/d/1YAUzayg5SRfPAqPwnsQV6hMmy6AOSrpN/view?usp=sharing
NB : je suis naturellement intéressé par ton script...
Je commence à y voir plus clair avec cursor, listes et tuples (et avec IDLE) , ouf...
Par contre le Delete avec id paramétré et de type str, alors là si tu as une explication !? (je l'ai trouvé en tâtonnant, et apparemment c'est la seule syntaxe qui marche...).
@matmp,
En attendant, si je sais si oocieni fera une belle interface ?, tu peux tester le script de manière assez simple.
Il suffit d'installer la dernière version de Python : https://www.python.org , ça prend peu de place (il y a 2 appli IDLE et Python Launcher, mais c'est surtout IDLE qui sert).
Le script est un fichier .py (c'est un fichier .txt dans lequel on remplace txt par py).
Il s'ouvre par défaut avec IDLE (on peut aussi l'ouvrir avec TextEdit).
Une fois ouvert (avec IDLE), il suffit de faire Run-Run Module pour l'exécuter.
Avant il faut remplacer chemin par l'adresse de ta base (3e ligne du script)
On a le chemin de la base dans les préférences de Filmotech, mais on ne peut pas le copier, donc il faut aller dans le bon dossier,
sur le nom de fichier : option - Menu contextuel, et là on peut copier le chemin.
En principe ça doit aussi fonctionner sur PC...
Euh, j'ai pas vraiment envie de faire une interface en Python, désolé, je suis pas fan.
OK,
@matmp,
Au fait, pour exécuter le script .py ; menu contextuel : ouvrir avec : python launcher --> exécution immédiate
(ne pas oublier d'avoir le bon chemin vers ta base dans le script !)
Sinon, la fiche courante est supprimée de la liste.
J'ai un peu compacté l'affichage des résultats ; dernière version du script (tjrs à la même adresse) : https://drive.google.com/file/d/1YAUzayg5SRfPAqPwnsQV6hMmy6AOSrpN/view?usp=sharing
Ex (avec IDLE) (Python version 3), utilisation de la base d'origine (il vaut mieux avoir fait une sauvegarde au préalable).