[Résolu] Dupliquer un enregistrement depuis un formulaire
Modérateur : Vilains modOOs
Règles du forum
Cette section est dédiée au module Base et plus particulièrement sur le langage SQL ou sur les connexions aux SGBD tiers. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
Pour accélérer les réponses, vous pouvez mettre en ligne votre base en joignant un fichier ODB : comment faire.
Cette section est dédiée au module Base et plus particulièrement sur le langage SQL ou sur les connexions aux SGBD tiers. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
Pour accélérer les réponses, vous pouvez mettre en ligne votre base en joignant un fichier ODB : comment faire.
[Résolu] Dupliquer un enregistrement depuis un formulaire
Bonjour,
J'ai beaucoup de matériel de même type et j'aimerais par exemple pouvoir, au travers de mon formulaire "AJOUT DE MATOS", créer un premier enregistrement "OBJET N°01", Puis en créer un second basé ce même premier enregistrement, mais en lui affectant par exemple cette fois le nom "OBJET N°02".
Pourriez vous m'aiguiller ?
Je vous joins une base test.
D'avance merci.
Bruno
J'ai beaucoup de matériel de même type et j'aimerais par exemple pouvoir, au travers de mon formulaire "AJOUT DE MATOS", créer un premier enregistrement "OBJET N°01", Puis en créer un second basé ce même premier enregistrement, mais en lui affectant par exemple cette fois le nom "OBJET N°02".
Pourriez vous m'aiguiller ?
Je vous joins une base test.
D'avance merci.
Bruno
- Pièces jointes
-
- Dupliquer un enregistrement depuis le formulaire AJOUT DE MATOS.odb
- Dupliquer un enregistrement
- (491.29 Kio) Téléchargé 193 fois
Dernière modification par El_Brouno le 15 mars 2021 20:40, modifié 1 fois.
Libre Office 7.1.7.2 sous Windows 10
Java JDK 15
Java JDK 15
- jeanmi2403
- SuppOOrter
- Messages : 1398
- Inscription : 18 janv. 2008 10:02
- Localisation : Val de Marne
Re: Dupliquer un enregistrement depuis un formulaire
Bonjour,
Je ne vois pas d'autre solution que par macro.
D'autre part, si solution il y a :
Cordialement,
Je ne vois pas d'autre solution que par macro.
D'autre part, si solution il y a :
C'est un peu flou, il faudrait savoir quels sont les champs à conserver.El_Brouno a écrit : basé sur ce même premier enregistrement,
Cordialement,
Jean-Michel
LibO 7.5.9 et AoO 4.1.15 sur Windows 11 & Ubuntu 22.04
LibO 7.6 sur OpenSuse & Linux MX
LibO 7.5.9 et AoO 4.1.15 sur Windows 11 & Ubuntu 22.04
LibO 7.6 sur OpenSuse & Linux MX
Re: Dupliquer un enregistrement depuis un formulaire
Merci pour ta réponse aussi peu aidante soit elle à cet instant.
Par macro ... Mais qui est le preux chevalier ou chevalière qui volerait à mon secours quant à me donner explication voire une mise à disposition d'un tel résultat ?
Si le faut, je suis à même de pouvoir lui fournir ici et maintenant le contenu des champs que je souhaite pouvoir conserver dans la copie d'un enregistrement en vue de le dupliquer.
Il en est même bien plus simple car en effet l'ensemble des éléments contenus dans le formulaire AJOUT DE MATOS de ma base exemple postée plus haut devrait pouvoir être reproduit.
Bien amicalement et vous remerciant Tous d'avance.
Bruno
Par macro ... Mais qui est le preux chevalier ou chevalière qui volerait à mon secours quant à me donner explication voire une mise à disposition d'un tel résultat ?
Si le faut, je suis à même de pouvoir lui fournir ici et maintenant le contenu des champs que je souhaite pouvoir conserver dans la copie d'un enregistrement en vue de le dupliquer.
Il en est même bien plus simple car en effet l'ensemble des éléments contenus dans le formulaire AJOUT DE MATOS de ma base exemple postée plus haut devrait pouvoir être reproduit.
Bien amicalement et vous remerciant Tous d'avance.
Bruno
Libre Office 7.1.7.2 sous Windows 10
Java JDK 15
Java JDK 15
- jeanmimi
- Grand Maître de l'OOffice
- Messages : 16955
- Inscription : 03 mars 2006 17:02
- Localisation : Venise verte
Re: Dupliquer un enregistrement depuis un formulaire
Bonjour,
SI OBJET est un début d'enregistrement très fréquent, il est intéressant dans ce cas d'avoir une Table principale contenant les OBJET et une Table secondaire en relation pour les détails 1, 2, 3, etc.
SI OBJET est un début d'enregistrement très fréquent, il est intéressant dans ce cas d'avoir une Table principale contenant les OBJET et une Table secondaire en relation pour les détails 1, 2, 3, etc.
Ajout : |
Dernière modification par jeanmimi le 21 nov. 2020 14:15, modifié 1 fois.
LibreOffice : Version : 24.2.1 (x64)(14 mars 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Re: Dupliquer un enregistrement depuis un formulaire
Merci, Malheureusement ce n'est pas le cas.
En effet l'appellation OBJET va nécessiter plusieurs enregistrement de quasi même contenu mais une fois tous les objets entrés dans la base, nous n'y reviendrons plus.
Par contre, nous pouvons être amené par la suite à devoir entrer dans la base un nouveau type de MEUBLE ( par exemple une soixantaine ) il est important que chacun est son enregistrement unique notamment pour pouvoir indiquer les N° de série, leur état et leurs années de fabrication.
Comment faire pour entrer un enregistrement et le dupliquer 59 fois en ne changeant que les valeurs désirés ?
Si les macros sont la solution, je vais avoir aussi avoir besoin d'un coup de pouce.
J'espère, au travers de ces images, avoir éclairer tes lanternes quant à mes besoins.
Bruno
En effet l'appellation OBJET va nécessiter plusieurs enregistrement de quasi même contenu mais une fois tous les objets entrés dans la base, nous n'y reviendrons plus.
Par contre, nous pouvons être amené par la suite à devoir entrer dans la base un nouveau type de MEUBLE ( par exemple une soixantaine ) il est important que chacun est son enregistrement unique notamment pour pouvoir indiquer les N° de série, leur état et leurs années de fabrication.
Comment faire pour entrer un enregistrement et le dupliquer 59 fois en ne changeant que les valeurs désirés ?
Si les macros sont la solution, je vais avoir aussi avoir besoin d'un coup de pouce.
J'espère, au travers de ces images, avoir éclairer tes lanternes quant à mes besoins.
Bruno
Libre Office 7.1.7.2 sous Windows 10
Java JDK 15
Java JDK 15
- jeanmimi
- Grand Maître de l'OOffice
- Messages : 16955
- Inscription : 03 mars 2006 17:02
- Localisation : Venise verte
Re: Dupliquer un enregistrement depuis un formulaire
Comme je ne vois pas où est la difficulté : il n’y a pas à dupliquer 59 fois ...
Peux-t-on avoir des exemples un peu plus précis que OBJETS ou MEUBLES 1,2,3 ?
Peux-t-on avoir des exemples un peu plus précis que OBJETS ou MEUBLES 1,2,3 ?
LibreOffice : Version : 24.2.1 (x64)(14 mars 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
- Dude
- IdOOle de la suite
- Messages : 25143
- Inscription : 03 mars 2006 08:45
- Localisation : 127.0.0.1
- Contact :
Re: Dupliquer un enregistrement depuis un formulaire
Salut,
D'autant que la solution est dans la question :
+1jeanmimi a écrit :Comme je ne vois pas où est la difficulté : il n’y a pas à dupliquer 59 fois ...
D'autant que la solution est dans la question :
Type devrait donc être une table à part entière.El_Brouno a écrit :nous pouvons être amené par la suite à devoir entrer dans la base un nouveau type de MEUBLE
Re: Dupliquer un enregistrement depuis un formulaire
Bonsoir à tous les deux.
Prenons un cas pour exemple :
Je viens de recevoir 40 nouveaux microphones de mêmes marque et même modèle. J'aimerais les intégrer à ma base de données dans la famille SON et la catégorie MICROPHONES DYNAMIQUES. je créer donc un enregistrement comprenant les informations suivantes; Date d'ajout à la base, Marque, Modèle, Informations diverses, N° de Série et Année d'achat.
A ce stade, j'ai bien enregistré le premier micro des 40 que je viens de recevoir et il va me falloir les ajouter eux aussi à la base de données.
Seulement, je ne sais pas comment récupérer les informations de mon premier micro, ne changer que le N° de Série et créer un nouvel enregistrement. (le second micro)
Pour l'instant, j'entre 40 fois les mêmes données dans 40 enregistrements différents ou seul différ le numéro de série de chacun
J'espère vous avoir éclairé sur ma requête.
Y voyez vous une quelconque solution ?
D'avance merci.
Bruno
Ravi de vous le voir écrire. Mais comment faire alors ?Comme je ne vois pas où est la difficulté : il n’y a pas à dupliquer 59 fois ...
Prenons un cas pour exemple :
Je viens de recevoir 40 nouveaux microphones de mêmes marque et même modèle. J'aimerais les intégrer à ma base de données dans la famille SON et la catégorie MICROPHONES DYNAMIQUES. je créer donc un enregistrement comprenant les informations suivantes; Date d'ajout à la base, Marque, Modèle, Informations diverses, N° de Série et Année d'achat.
A ce stade, j'ai bien enregistré le premier micro des 40 que je viens de recevoir et il va me falloir les ajouter eux aussi à la base de données.
Seulement, je ne sais pas comment récupérer les informations de mon premier micro, ne changer que le N° de Série et créer un nouvel enregistrement. (le second micro)
Pour l'instant, j'entre 40 fois les mêmes données dans 40 enregistrements différents ou seul différ le numéro de série de chacun
J'espère vous avoir éclairé sur ma requête.
Y voyez vous une quelconque solution ?
D'avance merci.
Bruno
Libre Office 7.1.7.2 sous Windows 10
Java JDK 15
Java JDK 15
- jeanmimi
- Grand Maître de l'OOffice
- Messages : 16955
- Inscription : 03 mars 2006 17:02
- Localisation : Venise verte
Re: Dupliquer un enregistrement depuis un formulaire
Oui, celle ébauchée dans l’exemple joint ici :El_Brouno a écrit :Y voyez vous une quelconque solution ?
https://forum.openoffice.org/fr/forum/v ... 86#p344699
LibreOffice : Version : 24.2.1 (x64)(14 mars 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Re: Dupliquer un enregistrement depuis un formulaire
Ok désolé je n'avais pas vu le fichier joint la première fois.
Merci pour vos propositions, mais je ne comprends pas du tout ce que vous essayer de m'expliquer.
Pensant avoir fait mon possible pour essayer d'exprimer clairement mon besoin, je n'ai malheureusement pas réussi vous le faire comprendre.
Je vais essayer de me passer de cette option.
Cordialement
Bruno
Merci pour vos propositions, mais je ne comprends pas du tout ce que vous essayer de m'expliquer.
Pensant avoir fait mon possible pour essayer d'exprimer clairement mon besoin, je n'ai malheureusement pas réussi vous le faire comprendre.
Je vais essayer de me passer de cette option.
Cordialement
Bruno
Libre Office 7.1.7.2 sous Windows 10
Java JDK 15
Java JDK 15
- jeanmimi
- Grand Maître de l'OOffice
- Messages : 16955
- Inscription : 03 mars 2006 17:02
- Localisation : Venise verte
Re: Dupliquer un enregistrement depuis un formulaire
Je suis d'accord, j'ai été un peu lent à la compréhension.El_Brouno a écrit :Pensant avoir fait mon possible pour essayer d'exprimer clairement mon besoin, je n'ai malheureusement pas réussi vous le faire comprendre.
En regardant à nouveau la première base Ajout de Matos, je propose plutôt cette Relation entre Tables : La Table TMatérielFiche n'est pas conforme : elle ne devrait contenir que les données du Matériel, mais pas les données variables comme les Festivals et les Factures Fournisseurs qui vont changer au fur et à mesure des réassortiments et entrées en stock.
LibreOffice : Version : 24.2.1 (x64)(14 mars 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
- jeanmi2403
- SuppOOrter
- Messages : 1398
- Inscription : 18 janv. 2008 10:02
- Localisation : Val de Marne
Re: Dupliquer un enregistrement depuis un formulaire
Bonjour,
Effectivement, il y a la possibilité d'améliorer la structure, notamment les noms de champ, pour y voir plus clair.
Par exemple, dans la table Catégorie, la clé primaire peut s'appeler tout simplement ID, de même que dans la table Marques. Et également les Refxxx en relation avec les IDxxx
Mais une structure améliorée ne répond pas à la question (qui m'intéresse aussi) : comment dupliquer un enregistrement à partir du dernier saisi ?
Bon dimanche,
Effectivement, il y a la possibilité d'améliorer la structure, notamment les noms de champ, pour y voir plus clair.
Par exemple, dans la table Catégorie, la clé primaire peut s'appeler tout simplement ID, de même que dans la table Marques. Et également les Refxxx en relation avec les IDxxx
Mais une structure améliorée ne répond pas à la question (qui m'intéresse aussi) : comment dupliquer un enregistrement à partir du dernier saisi ?
Bon dimanche,
Jean-Michel
LibO 7.5.9 et AoO 4.1.15 sur Windows 11 & Ubuntu 22.04
LibO 7.6 sur OpenSuse & Linux MX
LibO 7.5.9 et AoO 4.1.15 sur Windows 11 & Ubuntu 22.04
LibO 7.6 sur OpenSuse & Linux MX
- jeanmimi
- Grand Maître de l'OOffice
- Messages : 16955
- Inscription : 03 mars 2006 17:02
- Localisation : Venise verte
Re: Dupliquer un enregistrement depuis un formulaire
Quelle en serait l’intérêt dans une Base relationnelle comme celle de AOO ou de LO ?jeanmi2403 a écrit :comment dupliquer un enregistrement à partir du dernier saisi ?
Une Table de Base n'est pas normalement une feuille de Calc, c’est la raison pour laquelle la Table TMaterielFiches n'est pas complètement conforme à ce qui est attendu dans une Base relationnelle (le camp Fournisseur devrait être de type INTEGER).
Ajout : Maintenant, si c'est essentiel, on peut se rapporter à cette Macro de Piaf : https://forum.openoffice.org/fr/forum/v ... =8&t=41504 |
LibreOffice : Version : 24.2.1 (x64)(14 mars 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Re: Dupliquer un enregistrement depuis un formulaire
Bonjour,
Pour dupliquer un enregistrement :
- intégrer dans le formulaire un"contrôle de table" (qui présente les enregistrement en liste)
- vérifier, dans les attributs, que "marqueur d'enregistrement" est à "oui"
- sélectionner l'enregistrement par un clic souris sur le marqueur (rectangle sur la bordure gauche) - avec la souris, déplacer l'enregistrement à l'intérieur du tableau (le curseur souris deviens un symbole de document avec un + en haut à gauche) et relâcher la souris.
Un nouveau enregistrement est créé, identique au premier.
Cette manipulation fonctionne aussi sur les tables.
IMPORTANT : il vaut mieux avoir une clé primaire auto incrémentée pour éviter les conflits.
Ceci étant dit, si le même produit est stocké en plusieurs exemplaires, il vaut mieux créer une table "produit" avec les caractéristiques du produits, et une table "achat" liée par la réf du produit contenant la date de commande, la date de livraison, la quantité livrée.
Ensuite, une table "vente" avec la réf du produit, la date de vente, et la quantité vendue.
Une requête "stock" pourra calculer la différence entre les achats et les ventes pour chaque produit.
Bien cordialement
François
Pour dupliquer un enregistrement :
- intégrer dans le formulaire un"contrôle de table" (qui présente les enregistrement en liste)
- vérifier, dans les attributs, que "marqueur d'enregistrement" est à "oui"
- sélectionner l'enregistrement par un clic souris sur le marqueur (rectangle sur la bordure gauche) - avec la souris, déplacer l'enregistrement à l'intérieur du tableau (le curseur souris deviens un symbole de document avec un + en haut à gauche) et relâcher la souris.
Un nouveau enregistrement est créé, identique au premier.
Cette manipulation fonctionne aussi sur les tables.
IMPORTANT : il vaut mieux avoir une clé primaire auto incrémentée pour éviter les conflits.
Ceci étant dit, si le même produit est stocké en plusieurs exemplaires, il vaut mieux créer une table "produit" avec les caractéristiques du produits, et une table "achat" liée par la réf du produit contenant la date de commande, la date de livraison, la quantité livrée.
Ensuite, une table "vente" avec la réf du produit, la date de vente, et la quantité vendue.
Une requête "stock" pourra calculer la différence entre les achats et les ventes pour chaque produit.
Bien cordialement
François
LO 7.4.6.2 / Windows 10
Re: Dupliquer un enregistrement depuis un formulaire
Bonsoir et merci pour ta solution.
Malheureusement si je tente cette méthode. Libre office crash et je dois le redémarrer.
J'utilise la version 7.1.1
Davance merci.
Bruno
Malheureusement si je tente cette méthode. Libre office crash et je dois le redémarrer.
J'utilise la version 7.1.1
Davance merci.
Bruno
Libre Office 7.1.7.2 sous Windows 10
Java JDK 15
Java JDK 15
- jeanmimi
- Grand Maître de l'OOffice
- Messages : 16955
- Inscription : 03 mars 2006 17:02
- Localisation : Venise verte
Re: Dupliquer un enregistrement depuis un formulaire
Je viens de le tester sur une Table, et ça fonctionne.Dahu a écrit :Un nouveau enregistrement est créé, identique au premier.
LibreOffice : Version : 24.2.1 (x64)(14 mars 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Re: Dupliquer un enregistrement depuis un formulaire
Merci Jean mimi,
En effet directement dans la table ça marche aussi chez moi.
Bonne soirée.
Bruno
En effet directement dans la table ça marche aussi chez moi.
Bonne soirée.
Bruno
Libre Office 7.1.7.2 sous Windows 10
Java JDK 15
Java JDK 15
Re: Dupliquer un enregistrement depuis un formulaire
Heureux d'avoir aidé,
Pensez à mettre le fil en "résolu"...
Pensez à mettre le fil en "résolu"...
LO 7.4.6.2 / Windows 10