[Base] Application maison d'éditions

Discussions sur les projets et applications développés en liaison avec une suite bureautique libre.

Modérateur : Vilains modOOs

RobinC
NOOuvel adepte
NOOuvel adepte
Messages : 19
Inscription : 12 févr. 2018 12:17

[Base] Application maison d'éditions

Message par RobinC »

Bonjour à tous et merci pour ce super forum qui m'a déjà bien dépanné.

Je débute tout juste avec Base et des fois j'ai l'impression de comprendre, mais la plupart du temps je suis encore largué.
J'essaie de mettre en place une base de données pour une maison d'édition et plus j'avance, plus je me rend compte que c'est beaucoup plus compliqué que je ne le pensais. Je viens donc vous demander un coup de pouce !

J'ai d'un côté une liste avec tous les auteurs de la maison d'édition et de l'autre une liste de tous les livres édités par la maison d'édition. Les deux listes sont appelées à grandir.

L'objectif est :
-Entrer les ventes de l'année pour calculer les droits d'auteurs à reverser (sachant que chaque auteur a reçu une avance sur ses droits d'auteurs et qu'il ne retouche des droits que lorsqu'il a vendu suffisamment de livres pour dépasser l'avance qui lui a été faite). Le but étant de créer automatiquement, tous les ans des fiches de droits d'auteurs pour chaque auteur, en fonction des différents livres qu'il aura vendu dans l'année.
-Pouvoir calculer le poids d'un envoi postal en fonction des livres qu'il contient. (cette partie ne sera pas bien compliquée, il me semble)


Les difficultés auxquelles je suis confronté :
- Il peut y avoir plusieurs auteurs par livre
- la création d'un formulaire clair et le plus simple possible pour qu'il puisse être utilisé par d'autres que moi.


J'aimerais au final avoir un formulaire pour créer un nouveau livre construit comme ceci :

Image

L'idée serait de pouvoir indiquer le nombre d'auteurs pour un livre, et qu'en fonction du nombre indiqué, il y ait un nombre d'entrées proposées. Pour chaque entrée, il y aurait un menu déroulant pour choisir le nom de l'auteur parmi tous les auteurs de la maison d'édition. En gros, si j'indique qu'il y a 3 auteurs, il apparaîtrait 3 entrées à compléter. Dans chacune, j'indiquerai le nom de l'auteur, le pourcentage de droits d'auteurs qu'il touche par livre et l'avance qu'il a perçue en signant son contrat. Est-ce que cela vous paraît possible avec ce logiciel ?


Pour l'instant, j'ai créé 5 tables que j'ai mises en relation comme ceci :

Image

Cela vous semble-t-il correct ?
(je met le fichier en pièce jointe)

Je pense ensuite m'attaquer au formulaire de création de livre, mais je sens que c'est une autre paire de manches.

Merci d'avance pour vos conseils et n'hésitez pas à être très didactique, je n'y connais vraiment pas grand chose.
Pièces jointes
Relations_MaisonEdition.jpg
Formulaire_NouveauLivre.png
Base de Données MAISON EDITION.odb
Fichier de travail pour une base de données pour une maison d'édition.
(6.53 Kio) Téléchargé 215 fois
Dernière modification par Bidouille le 23 mars 2018 08:33, modifié 3 fois.
Raison : Modification du titre du fil après tranfert dans la section Projets
LibreOffice Version: 5.4.5.1 (x64) sous Windows 7
Piaf
GourOOu
GourOOu
Messages : 5622
Inscription : 25 nov. 2011 19:07
Localisation : Guyane

Re: Base de données pour une maison d'éditions

Message par Piaf »

Bonjour
Un petit exemple avec ta base un peu modifiée.
Auteurs.png
Attention au type de certains champs.
A+
Pièces jointes
Base de Données MAISON EDITION.odb
(16.85 Kio) Téléchargé 225 fois
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
RobinC
NOOuvel adepte
NOOuvel adepte
Messages : 19
Inscription : 12 févr. 2018 12:17

Re: Relation auteur/livre pour une maison d'éditions

Message par RobinC »

Merci beaucoup, je vais regarder ça !
LibreOffice Version: 5.4.5.1 (x64) sous Windows 7
RobinC
NOOuvel adepte
NOOuvel adepte
Messages : 19
Inscription : 12 févr. 2018 12:17

Re: Relation auteur/livre pour une maison d'éditions

Message par RobinC »

Eh bien, encore merci, ça marche nickel !
A la base, je voulais qu'on indique en premier le nombre d'auteurs pour ensuite avoir le nombre correspondant d'enregistrements à remplir, mais ça ne me paraît pas possible et pas spécialement plus pratique.

Est-ce que tu pourrais (ou quelqu'un d'autre ?) m'expliquer un petit peu comment tu as fait, notamment avec les requêtes ?
J'aimerais bien comprendre le système pour pouvoir le refaire avec les rééditions du livre.
Et puis, c'est aussi histoire de pouvoir me débrouiller tout seul si je dois changer des trucs plus tard.
LibreOffice Version: 5.4.5.1 (x64) sous Windows 7
RobinC
NOOuvel adepte
NOOuvel adepte
Messages : 19
Inscription : 12 févr. 2018 12:17

Re: Relation auteur/livre pour une maison d'éditions

Message par RobinC »

Re-bonjour !

Alors, je crois que j'ai un peu compris le système de "sous-formulaire" que tu avais mis en place pour spécifier les différents auteurs du livre. J'en ai donc fait un pour les différentes éditions d'un même livre. Ça a l'air de marcher.

Mais j'ai toujours deux problèmes avec les requêtes (que j'ai pas encore bien compris) :
-J'aimerais que lorsqu'on ajoute des auteurs à un livre, le champs Nbre_Auteurs de la Table T_LIVRES soit mis à jour automatiquement en fonction. Est-ce possible ? J'ai l'impression que je prends le truc à l'envers...
(De la même manière, j'aimerais que le nombre d'éditions soit aussi mis à jour dans la table T_LIVRES, ainsi que le nombre de livres par auteur dans la table T_AUTEURS)
-J'aimerais aussi comprendre comment tu fais pour afficher le Nom et le Prénom des auteurs dans la liste déroulante du formulaire F_LIVRES Parce que j'aimerais aussi y ajouter Le pseudo éventuel des auteurs. J'ai essayé de retoucher la requête, mais en vain...

Je joint mon fichier à jour
Pièces jointes
Base de Données MAISON EDITION corrigé.odb
(28.07 Kio) Téléchargé 210 fois
LibreOffice Version: 5.4.5.1 (x64) sous Windows 7
Avatar de l’utilisateur
Astrée
Membre OOrganisé
Membre OOrganisé
Messages : 76
Inscription : 01 août 2017 21:45
Localisation : Paris + Ile déserte

Re: Relation auteur/livre pour une maison d'éditions

Message par Astrée »

Bonjour,
Je crois que tu peux te passer des champs NbAuteurs (par livre) et NbEditions, ils sont redondants puisqu'en fait tu as déjà cette info dans les tables T-AuteurLivre et T_Edition (il suffit qu'une requête compte le nombre de lignes de ces tables correspondant à tel ou tel livre).
Le résultat peut quand même s'afficher dans un formulaire sans être mémorisé en tant que tel dans la table (c'est important de différencier table et formulaire : le formulaire peut afficher des données calculées ou déduites, la table surtout pas).
Sinon tu risques d'avoir mémorisé un nombre d'auteurs différent de celui que te donnera le calcul - surtout si tu veux rajouter des auteurs à un livre - , et ta base de données sera alors incohérente (et ce sera le début des ennuis).
Bon, ce n'est qu'une remarque de méthode :D

Bon courage,
Astrée
Dernière modification par Astrée le 13 févr. 2018 13:39, modifié 1 fois.
AOO 4.1.14 sur Mac OSX 10.11.6
LibO 3.5.6.2 sur Windows XP
(obligation de versions)
RobinC
NOOuvel adepte
NOOuvel adepte
Messages : 19
Inscription : 12 févr. 2018 12:17

Re: Relation auteur/livre pour une maison d'éditions

Message par RobinC »

Merci Astrée !
Je sentais que quelque chose clochait dans mon raisonnement, c'est pas très instinctif pour moi.
Mais je crois que je comprends un peu mieux, maintenant.

Je pense qu'il faut que je me penche un peu sur les requêtes, maintenant.
LibreOffice Version: 5.4.5.1 (x64) sous Windows 7
Piaf
GourOOu
GourOOu
Messages : 5622
Inscription : 25 nov. 2011 19:07
Localisation : Guyane

Re: Relation auteur/livre pour une maison d'éditions

Message par Piaf »

Bonjour
le champs Nbre_Auteurs de la Table T_LIVRES est-il nécessaire ? Il s'agit d'un champ calculé par requête, il est préférable de ne pas stocker en dur les champs calculés.
Même remarque pour le nombre d'édition.
Après je pense que le calcul n'est pas très utile, je l'avais ajouté dans l'exemple car le champ existait dans ta base, mais tu as directement l'affichage du nombre d'auteurs et du nombre d'éditions dans la barre de navigation des contrôles de table.
Pour le nombre de livre par auteur, il s'agit également d'un champ calculé donc à ne pas stocker en dur.
Pour la concaténation du nom et prénom :
Comme tu imposes la saisie du nom et du prénom tu peux utiliser

Code : Tout sélectionner

"Nom" || ' ' || "Prenom"
à la place du CONCAT.
Si tu veux ajouter le pseudo, comme la saisie n'est pas obligatoire, tu peux utiliser

Code : Tout sélectionner

CONCAT( CONCAT( "Nom" || ' ' || "Prenom", ' ' ), "Pseudo" )
Concat.png
Concat.png (9.02 Kio) Consulté 8332 fois
Pour le calcul du nombre de livres par auteur, tu peux utiliser

Code : Tout sélectionner

SELECT "Ref_Auteur", COUNT( "Ref_Livre" ) FROM "T_AuteursLivres" GROUP BY "Ref_Auteur"
Attention ton sous-Formulaire Edition est mal placé dans le formulaire LIVRES,
RelationFormSubForm.png
Et enfin, ne stocke pas d'images dans ta base.
Modifie ton champ Couverture en champ Texte., il suffira de taper le nom de l'image avec son extension pour pouvoir l'afficher dans le formulaire(les images doivent être dans le même répertoire que la base.
A+
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
Avatar de l’utilisateur
Astrée
Membre OOrganisé
Membre OOrganisé
Messages : 76
Inscription : 01 août 2017 21:45
Localisation : Paris + Ile déserte

Re: Relation auteur/livre pour une maison d'éditions

Message par Astrée »

Juste un détail : je crois que tu n'as pas le droit (légalement, rien à voir avec les 'lois' de construction de bases de données) d'utiliser le Numéro de sécurité sociale (sauf si tu peux prouver que tu agis au compte de la santé ou de la protection sociale).
Ce numéro permettrait, s'il était généralisé, l'interconnection des fichiers, ce qui est interdit en France, sauf avis favorable de la Commission Nationale Informatique et Libertés.

Astrée
AOO 4.1.14 sur Mac OSX 10.11.6
LibO 3.5.6.2 sur Windows XP
(obligation de versions)
RobinC
NOOuvel adepte
NOOuvel adepte
Messages : 19
Inscription : 12 févr. 2018 12:17

Re: Relation auteur/livre pour une maison d'éditions

Message par RobinC »

Ah, je vais me renseigner pour cette histoire de numéro de sécu...
En fait, ça sert de N° d'Agessa temporaire quand un auteur n'est pas encore inscrit, du coup beaucoup d'éditeurs les demandent.

Merci, Piaf, pour ton aide !
J'ai légèrement modifié le code pour afficher le pseudo avant le nom et que le "/" n'apparaisse pas s'il n'y a pas de pseudo. Ça donne ça :

Code : Tout sélectionner

CONCAT( CONCAT( [Pseudo] || ' / ' ), [Nom] || ' ' || [Prenom] )
Sinon, j'ai fait du nettoyage en suivant vos deux conseils. J'ai enlevé les champs Nbre_Livres et Nbre_Auteurs. J'ai replacé le sous formulaire Editions à sa place.
Et j'ai rajouté une liste des livre d'un auteur qui se met à jour automatiquement dans le formulaire F_AUTEURS

Je continue d'avancer sur le projet et je vous tient au courant des prochaines difficultés que je rencontrerai.

A priori, les prochaines étapes seront :
-Essayer de rajouter des boutons dans les formulaires LIVRES et AUTEURS pour pouvoir naviguer plus facilement entre les différentes entrées et les modifier.
-Créer un formulaire pour les ventes annuelles de chaque livre.
-Et ensuite créer des feuilles de calculs du poids des envois postaux et des feuilles de versement de droits d'auteurs annuels. J'imagine que je devrais utiliser la création de rapports.

Encore merci à tous les deux !

PS : Je pense que si j'arrive à un truc qui fonctionne bien à la fin, je ferai passer le modèles aux petites maisons d'éditions indépendantes qui seront intéressées.
LibreOffice Version: 5.4.5.1 (x64) sous Windows 7
toucan
MOOdérateur
MOOdérateur
Messages : 182
Inscription : 23 févr. 2016 00:49

Re: Relation auteur/livre pour une maison d'éditions

Message par toucan »

Bonjour
Le fil dépasse largement le titre de la question, il a donc été transféré dans la section Projets du Forum.
Cordialement
Jacou
Membre OOrganisé
Membre OOrganisé
Messages : 59
Inscription : 27 juil. 2016 09:20

Re: Application maison d'éditions

Message par Jacou »

Bonjour,

Tu peux nous joindre ta Base pour voir l'évolution.

Merci.
Libreoffice version 5.2.7.2
Linux Debian 9.3
RobinC
NOOuvel adepte
NOOuvel adepte
Messages : 19
Inscription : 12 févr. 2018 12:17

Re: Application maison d'éditions

Message par RobinC »

Bonjour à tous !
Alors, j'ai repris un peu le travail sur la base.
Je suis en train de travailler sur un formulaire pour rentrer les ventes annuelles de chaque livre : F_Ventes
J'avais un truc qui fonctionnait bien, mais malheureusement mes collègues m'ont dit que ce n'était pas pratique.
En gros, j'avais un formulaire dans lequel on choisissait le livre dont on voulait rentrer les ventes dans une liste déroulante, puis on entrait les différentes ventes de l'année.
Le problème, c'est qu'ils me disent qu'ils préfèreraient vraiment que tous les livres soient affichés et qu'ils puissent rentrer les ventes éventuelles de chaque ligne.
Ça ne m'a pas l'air si compliqué, mais je tourne en rond depuis hier, sans succès. J'imagine qu'il faut utiliser une requête ?
Quelqu'un aurait une idée ?

Sinon, voilà la base en pièce jointe.
Du coup, elle n'a pas beaucoup avancé depuis la semaine dernière.
Pièces jointes
Base de Données MAISON EDITION.odb
(47.71 Kio) Téléchargé 197 fois
LibreOffice Version: 5.4.5.1 (x64) sous Windows 7
RobinC
NOOuvel adepte
NOOuvel adepte
Messages : 19
Inscription : 12 févr. 2018 12:17

Re: Application maison d'éditions

Message par RobinC »


La modération vous a écrit: :alerte: Merci de ne pas poster plusieurs messages à la suite !
Si vous devez ajouter un complément d'information, le bouton "Editer" à la droite du message permet d'y remédier.

En attendant une prochaine réponse, vous pouvez participer également en répondant à d'autres questions sur notre forum.

J'ai un peu avancé, mais pas sûr que ce soit dans la bonne direction.
J'ai fait une requête en mode SQL après avoir fouillé sur le forum.
L'idée étant d'afficher tous les livres, même si aucune vente n'a encore été rentrée :

Code : Tout sélectionner

SELECT "T_LIVRES"."Ref_Livre", "T_LIVRES"."EAN", "T_LIVRES"."Titre_Livre", "T_AneeDeVente"."Ref_AnneDeVente", "T_AneeDeVente"."Annee", "T_VentesAnnuelles"."Ventes_Harmonia", "T_VentesAnnuelles"."Ventes_Festivals", "T_VentesAnnuelles"."Ventes_Direct", "T_VentesAnnuelles"."Ventes_Elea", "T_VentesAnnuelles"."Droits_Prets" FROM "T_LIVRES", "T_AneeDeVente" LEFT JOIN "T_VentesAnnuelles" ON "T_LIVRES"."Ref_Livre" = "T_VentesAnnuelles"."Ref_Livre"
Ça marche en partie, la requête permet d'afficher tous les livres dans le formulaire "F_Ventes".
Mais je ne peux pas rentrer le nombre de ventes dans ma requête...
Est-ce possible ou les requêtes ne permettent-elles que de "lire" une table ?

Je suis un peu paumé, là !
Pièces jointes
Base de Données MAISON EDITION.odb
(47.74 Kio) Téléchargé 195 fois
LibreOffice Version: 5.4.5.1 (x64) sous Windows 7
Jacou
Membre OOrganisé
Membre OOrganisé
Messages : 59
Inscription : 27 juil. 2016 09:20

Re: Application maison d'éditions

Message par Jacou »

Bonsoir

En ce qui concerne ton 1er message :
il faut faire un formulaire sur les livres et faire un 2em formulaire lié au 1er qui affichera les ventes de ce livre. Cela permet d'avoir autant de vente que l'on veut et de les afficher pour 1 livre sélectionné dans le 1er formulaire.
Pour ton 2em message :
pour qu'un formulaire basé sur une requête soit modifiable il faut intégrer toutes les clés primaires des tables utilisées.

Edit:
je te joins un exemple de formulaire lié ( en cliquant sur 1 livre du 1er formulaire ses ventes apparaissent dans le 2em.
J'ai changé tes tables pour mettre/modifier une table des ventes, des clients , des colis et type de ventes ( Cela permet autant de type de vente ou d'évènement que l'on veut ).
A+
Pièces jointes
Base de Données MAISON EDITION Jacou1.odb
(57.18 Kio) Téléchargé 207 fois
Libreoffice version 5.2.7.2
Linux Debian 9.3
RobinC
NOOuvel adepte
NOOuvel adepte
Messages : 19
Inscription : 12 févr. 2018 12:17

Re: Application maison d'éditions

Message par RobinC »

Super, merci beaucoup, Jacou !
C'est exactement ce qu'il me fallait !
Et je comprends enfin pourquoi le formulaire basé sur la requête ne pouvait pas être modifié !
Je vais pouvoir avancer. :super:
LibreOffice Version: 5.4.5.1 (x64) sous Windows 7
Jacou
Membre OOrganisé
Membre OOrganisé
Messages : 59
Inscription : 27 juil. 2016 09:20

Re: Application maison d'éditions

Message par Jacou »

Bonjour,

Dans ton projet, tu as mis la table Colis que j'ai laissée.
Il serait interressant de faire un 3em formulaire dans F_LivresBis basé sur la table Colis et lié au 2em formulaire ( les ventes )
Cela permettrait à la sélection d'un livre d'afficher ses ventes et d'afficher les livraisons de la vente sélectionnée(Sélection en cascade).

A+
Libreoffice version 5.2.7.2
Linux Debian 9.3
RobinC
NOOuvel adepte
NOOuvel adepte
Messages : 19
Inscription : 12 févr. 2018 12:17

Re: Application maison d'éditions

Message par RobinC »

En fait, ce n'est pas exactement le but du fonctionnement de ma base.
En gros les colis et les ventes ne sont pas liés.
Le formulaire de Ventes n'est là que pour permettre de calculer les droits d'auteurs à verser à chaque auteur (mais je n'y suis pas encore).
Il y a 5 types de ventes possibles qui sont comptabilisées par d'autre personnes que la maison d'édition (ceux qui effectuent ces ventes). Ils transmettent ensuite leurs résultats à la maison d'édition.
L'idée est de rentrer les totaux de chaque type une fois par an et de générer des fiches de versement de droits d'auteurs correspondant aux ventes annuelles de chaque auteur.

Le formulaire de colis sur lequel j'avais avancé entre temps n'est pas lié à ces ventes.
En fait, c'est plus ou moins une calculatrice pour savoir le poids d'un colis ou d'une palette de livre.
J'aurais juste besoin qu'il donne en plus la possibilité d'imprimer un bon de livraison (ça non plus, je n'y suis pas encore)
Mais pas besoin de le relier à la table des ventes.

Bref, maintenant que je sais comment faire pour qu'une requête puisse remplir une table, je pensais avoir réglé mon soucis.
Je pensais d'ailleurs repenser mon formulaire F_Colis, en me servant d'une requête...
Mais voilà un nouveau problème !
Lorsque j'essaie de rentrer une nouvelle vente dans ma requête R_VENTES, un message d'erreur s'affiche :
"invalid argument in jdbc call parameter index out of range" avec le chiffre qui change selon le type de vente que j'ai voulu renseigner.

Quelqu'un sait ce que signifie ce message ?
Pièces jointes
Base de Données MAISON EDITION.odb
(51.04 Kio) Téléchargé 198 fois
LibreOffice Version: 5.4.5.1 (x64) sous Windows 7
Jacou
Membre OOrganisé
Membre OOrganisé
Messages : 59
Inscription : 27 juil. 2016 09:20

Re: Application maison d'éditions

Message par Jacou »

Bonjour,

Tu as une erreur dans la table T_AnneedeVente. La cle primaire du 1er enregistrement est = 3 et peut être modifié.
Cela n'est pas possible et crée un pb d'index. Ton formulaire sur requête ne peut pas fonctionner. Refais la table. Mais pourquoi utilises-tu une requête ? Il suffit d'un formulaire sur la T_VentesAnnuelles pour saisir les ventes par livre.
Mais à mon avis ta table année ne comprends que l'année et tu veux faire un enregistrement des ventes par an,
alors insère l'année directement dans la table des ventes avec un champs Année ou Date ( tu pourras trier par requête sur la date ). Mais à la saisie un simple formulaire devrait suffire.

Pour les colis, tu ne peux pas lier les colis à 1 livre. Il me semble qu'une vente peut comporter plusieurs ref de livre.
Même si tu n'affiche pas les expéditions dans le formulaire Livre/Ventes, une expe est liée à une vente.

Si les ventes ne servent que à calculer les droits d'auteurs alors il faut lier les ventes à l'auteur et pas à 1 livre :
1er formulaire affiche les auteurs et le 2em affiche par requête tous les livres vendus par l'auteur sélectionné.
Il te faut un formulaire pour la saisie et un autre pour les droits. Essaie de simplifier chaque besoin/utilisation.

Edit :
Bonsoir,

un exemple de requête (RqDroits) ci-joint mais j'ai un problème avec les relations qui empêchent de faire une requête si on ajoute la table Ventes.
Je ne sais pas d'où vient l'erreur.
Libreoffice version 5.2.7.2
Linux Debian 9.3
RobinC
NOOuvel adepte
NOOuvel adepte
Messages : 19
Inscription : 12 févr. 2018 12:17

Re: Application maison d'éditions

Message par RobinC »

Merci Jaccou de prendre le temps de m'aider.
Je suis désolé, mais les bases de données, c'est tout nouveau pour moi donc je ne comprends pas tout.
Comment se fait-il que les clés primaires des tables ne reviennent pas à zéro lorsque j'ai supprimé des lignes et que j'en rajoute de nouvelles ?
Est-ce que ça peut créer des problèmes par la suite ?

Quoi qu'il en soit, je pense que je vais recommencer mon projet sur des bases neuves.
Je garde une table avec les auteurs et leurs infos : T_AUTEURS
une base avec les livres et leurs infos : T_LIVRES
une base qui relie les deux (avec les détails des contrats : pourcentages de droits d'auteurs, avance de droits d'auteurs) et permet de lier plusieurs auteurs à un livre T_Contrats
Et deux formulaires, un F_AUTEURS qui permet de rentrer toutes les infos sur les auteurs et un F_LIVRES qui permet de rentrer les infos sur un livre ainsi que d'indiquer ses auteurs et les détails des contrats d'auteurs.

Voilà un petit effort de clarification de ce que je souhaite obtenir :

[1] Un formulaire de ventes qui fonctionnerait comme-ça :
-On indique une nouvelle année de vente.
-à ce moment-là, tous les livres de la maison d'édition s'affichent.
-on peut alors rentrer les ventes annuelles de chaque livre, dans les différentes catégories de ventes.

[2]Un formulaire de Calcul de poids d'un colis qui fonctionnerait comme ça :
-On sélectionne un livre dans la liste des livres de la maison d'édition et la quantité qu'il y a dans le colis.
-le détail du poids que cela représente s'affiche.
-On passe à la ligne suivante pour ajouter un nouveau livre et sa quantité, et ainsi de suite...
-Une case affiche le poids total du colis.
-Si l'on veut, on peut éditer un bon de livraison avec le nom et l'adresse du destinataire.

[3]Un formulaire de calcul des droits d'auteurs qui fonctionnerait comme ceci :
-On indique l'auteur concerné et l'année que l'on veut calculer.
-Le formulaire va recroiser les données de ventes annuelles des livres d'auteurs avec des détails des pourcentages de droits selon les livres (infos contenues dans la table T_AuteursLivres)
-Le formulaire calcul les droits à reverser à l'auteur plus les charges.
-un détail important : un livre peut avoir plusieurs auteurs.

Voilà, j'espère que c'est un peu plus clair.
Je vais me concentrer sur le formulaire de ventes pour commencer.
Pièces jointes
BD MAISON EDITION.odb
(32.05 Kio) Téléchargé 183 fois
LibreOffice Version: 5.4.5.1 (x64) sous Windows 7
Jacou
Membre OOrganisé
Membre OOrganisé
Messages : 59
Inscription : 27 juil. 2016 09:20

Re: Application maison d'éditions

Message par Jacou »

Bonjour

Je n'ai que peu de temps cette semaine mais ci-joint une ébauche de ton formulaire Droits d'auteurs calculé sur la requête Droits.

Ton nettoyage était nécessaire car beaucoup d'index était faux.

Tu commences à avoir une base cohérente, bonne continuation.
Pièces jointes
BD MAISON EDITION 02.odb
(40.77 Kio) Téléchargé 189 fois
Libreoffice version 5.2.7.2
Linux Debian 9.3
RobinC
NOOuvel adepte
NOOuvel adepte
Messages : 19
Inscription : 12 févr. 2018 12:17

Re: Application maison d'éditions

Message par RobinC »

Merci, Jacou !
J'ai pas pu bosser dessus cette semaine, mais il semble d'après les questions que j'ai posées ailleurs dans le forum, que ce que je veux faire pour le formulaire de vente ne soit pas possible sans macro.
Je vais me renseigner un peu plus sur la question et je reviendrai posté mon avancement quand j'aurais un truc satisfaisant pour ce formulaire.
Ensuite je pourrai regarder un peu plus dans le détail celui que tu viens de me proposer.
LibreOffice Version: 5.4.5.1 (x64) sous Windows 7
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 16955
Inscription : 03 mars 2006 17:02
Localisation : Venise verte

Re: Application maison d'éditions

Message par jeanmimi »

Bonjour,
Il est possible de saisir facilement les ventes annuelles, avec une Table des années liée à la Table des ventes annuelles. Dans ce cas, Id_Ventes_annuelles devra être de Type INTEGER et non pas TEXTE, et la Relation entre les Tables avoir cette présentation.
Pièces jointes
BD MAISON EDITION 03.odb
(49.77 Kio) Téléchargé 178 fois
Relation entre Tables.png
LibreOffice : Version : 24.2.1 (x64)(14 mars 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
RobinC
NOOuvel adepte
NOOuvel adepte
Messages : 19
Inscription : 12 févr. 2018 12:17

Re: Application maison d'éditions

Message par RobinC »

Bonjour Jeanmimi,
Oui en effet, c'est une des méthodes que j'ai suivies.
Mais la partie que je n'arrive pas à résoudre est le fait que je souhaite créer un formulaire qui fonctionne comme ceci :
-Je rentre une nouvelle année.
-Tous les livres s'affichent sous forme de liste.
-j'entre les ventes éventuelles de chaque livre.

Pour l'instant, j'arrive à faire un système ou on entre l'année puis on doit choisir chaque livre dans une liste déroulante et les rentrer un par un.
Mais mes collègues pour lesquels j'essaie de faire cette base ne trouvent pas ça pratique.
Ils veulent voir tous les livres apparaître automatiquement à chaque fois qu'on rentre une nouvelle année de vente.
On me dit que je ne peux pas y arriver sans macro...

Edit :
En fait, je pense qu'il faudrait que je crée un bouton qui, lorsque j'ai entré une nouvelle année, crée automatiquement une entrée pour chaque référence de livre avec des ventes nulles dans chaque catégorie.
Et qu'en suite, je puisse modifier les ventes pour les livres qui se sont vendu.
J'imagine que c'est pour ça qu'il me faut des macros.
LibreOffice Version: 5.4.5.1 (x64) sous Windows 7
Jacou
Membre OOrganisé
Membre OOrganisé
Messages : 59
Inscription : 27 juil. 2016 09:20

Re: Application maison d'éditions

Message par Jacou »

Bonsoir

Non tu fais trop compliqué.
Jeanmimi te propose une solution avec une table dans laquelle tu rentres toutes les années.
Dans le formulaire tu sélectionne l'année voulue et cela affiche les ventes correspondantes dans un sous formulaire.
Exemple ci-joint

Editi :
J'ai oublié de corriger la nouvelle dépendance créée avec T_VentesAnnuelles, chose faites.
De plus :
dans FrDroits tu peux cacher refauteur, refLivre et IdAnnee et afficher leurs noms
dans FrVente tu peux cacher Ref_VentesAnnuelles et IdAnnee
Cette simple méthode a un inconvénient de taille car il est possible de saisir 2 fois la même Ref_Livre dans la même année. Un contrôle de vraisemblance sur la présence d'un doublon peut être envisagée.
Pièces jointes
BD MAISON EDITION 03.odb
(49.43 Kio) Téléchargé 187 fois
BD MAISON EDITION 02.odb
(49.16 Kio) Téléchargé 183 fois
Libreoffice version 5.2.7.2
Linux Debian 9.3
RobinC
NOOuvel adepte
NOOuvel adepte
Messages : 19
Inscription : 12 févr. 2018 12:17

Re: Application maison d'éditions

Message par RobinC »

Bonjour, Jaccou.
Tout d'abord, merci de ton temps pour m'aider sur mon projet.
Malheureusement, je crois que je n'arrive pas à me faire comprendre.
J'ai bien saisi ce que vous me proposez tous les deux et si ça ne tenait qu'à moi, j'opterais pour cette option qui était celle à laquelle j'avais pensé au début.
Mais il se trouve que ce n'est pas ce que mes collègues veulent.
Il faut savoir qu'il y a plus d'une centaine de livre dans le catalogue de la maison d'édition et mes collègues trouvent ça trop laborieux de devoir sélectionner chaque livre dans une liste déroulante pour pouvoir entrer ses ventes.
Ce qu'ils souhaitent, c'est que quand j'entre une nouvelle année dans la table TbAnnee du formulaire FrVentes, la centaine de livre du catalogue s'affiche entièrement sous la forme d'un tableau en dessous, pour pouvoir ainsi rentrer chaque vente.
Pour le dire autrement, ils veulent voir tous les livres avant d'en avoir indiqué les ventes.

C'est pour ça qu'il me semble qu'une solution serait un bouton associé à des macros qui entrerait automatiquement des ventes nulles pour chaque livre du catalogue.
Ainsi, tous les livres apparaîtraient en dessous avec des ventes à 0 dans chaque catégorie, que l'on pourrait alors modifier à volonté.

Je ne sais pas si j'arrive à être clair, pas évident d'expliquer ça par écrit...
J'ai posé une question spécifique à ce propos dans la partie "macros" du forum :
https://forum.openoffice.org/fr/forum/v ... 53#p308853
LibreOffice Version: 5.4.5.1 (x64) sous Windows 7
Jacou
Membre OOrganisé
Membre OOrganisé
Messages : 59
Inscription : 27 juil. 2016 09:20

Re: Application maison d'éditions

Message par Jacou »

Bonjour

Je te propose 1 formulaire avec tous les livres et la sélection d'un livre permet d'afficher ses ventes dans le sous-formulaire.

En espérant que cela réponde à tes besoins, sinon je ne voit pas car il faut bien que l'utilisateur saisisse l'année et les ventes associées.

a+
Pièces jointes
BD MAISON EDITION 04.odb
(57.84 Kio) Téléchargé 174 fois
Libreoffice version 5.2.7.2
Linux Debian 9.3
RobinC
NOOuvel adepte
NOOuvel adepte
Messages : 19
Inscription : 12 févr. 2018 12:17

Re: Application maison d'éditions

Message par RobinC »

Encore merci, Jaccou !
C'est une solution intéressante à laquelle je n'avais pas pensé en effet.
Mais je pense que ce n'est pas non plus ce que souhaite mes collègues.

Mais je crois que j'ai enfin trouvé une solution à mon problème ici :
https://forum.openoffice.org/fr/forum/v ... =8&t=57180

Il faudra donc des macros !
Maintenant, je dois encore rendre la modification des ventes possibles et après il faudra que j'adapte le principe à ma vraie base de données.
LibreOffice Version: 5.4.5.1 (x64) sous Windows 7
Piaf
GourOOu
GourOOu
Messages : 5622
Inscription : 25 nov. 2011 19:07
Localisation : Guyane

Re: Application maison d'éditions

Message par Piaf »

Bonjour
Un petit exemple avec macros.
Form.png
A+
Pièces jointes
BD EDITION.odb
(42.4 Kio) Téléchargé 195 fois
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
Jacou
Membre OOrganisé
Membre OOrganisé
Messages : 59
Inscription : 27 juil. 2016 09:20

Re: Application maison d'éditions

Message par Jacou »

Re

Je viens de regarder ta solution par macro.

Je reste dubitatif. En effet si par ta macro tu rajoutes dans ton tableau 1 ligne vente pour l'année et pour chaque livre, quand tu auras 5 ans tu auras 5 fois plus de lignes que de livres.
Tu as précisé qu'il y a beaucoup de livres ( disons 500 ). Cela te fait 2500 lignes que tu augmentes de 500 chaque année.
Bien de la chance pour faire tes recherches sur une page avec 30 lignes.
A toi de choisir le plus pratique et le plus sûr pour la gestion de ta base.

Edit :
Piaf à répondu en même que moi. Sa solution permet d'afficher tous les livres pour une année, Cela te convient ?
Libreoffice version 5.2.7.2
Linux Debian 9.3
Répondre