[Résolu][Calc] enregistrement de données ne s'effectue pas

Discussions et questions sur tout ce qui concerne la programmation tous langages et tous modules confondus.

Modérateur : Vilains modOOs

Règles du forum
:alerte: Balisage obligatoire dans cette section !
Aidez-nous à vous aider au mieux en balisant correctement votre question : reportez-vous sur les règles de cette section avant de poster !
dvd69
NOOuvel adepte
NOOuvel adepte
Messages : 19
Inscription : 29 mai 2017 15:04

[Résolu][Calc] enregistrement de données ne s'effectue pas

Message par dvd69 »


La modération vous a écrit: Pour la bonne tenue de ce forum, veillez à respecter la syntaxe des balises (première lettre en majuscule puis le reste en minuscules, le tout entre crochets). [Calc] et non [CALC]

bonjour,

je suis parti d'une macro developpee par Piaf. apres bien des tentatives, des modifs, des SOS sur ce forum et donc du lego, j'arrive a faire qlq chose qui s'apporche de ma premiere etape.

l'objet de la macro est la gestion de bouteilles de vin mais pourrait s'appliquer a tout autre gestion de donnees.
1) en haut a droite, un bouton lance la macro.
2) s'ouvre alors une fenetre avec plusieurs champs.
3) le menu "region" est un menu deroulant dont le choix conditionne le menu "appelation".
4) les champs remplis, j'enregistre et doit voir apparaitre ce que je viens de rentrer de maniere organisee mais ce n'est pas le cas: ca n'enregistre pas. effet de bord a l'erreur qui traine, pour sortir de la fenetre, il me faut cliquer plusieurs fois "quitter" comme si j'etais dans une boucle.

avant que je ne relie les deux listes, l'enregistrement se faisait. le probleme doit se trouver dans la sub Actualiser.

autre point mais je ne sais si il ne vaut mieux pas ouvrir un autre sujet: comment puis je jouer pas a pas la macro ou une partie de la macro afin d'observer le plantage?

je suis avec LiBo 5.2.5.1 sous lubuntu
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dernière modification par micmac le 01 août 2017 18:45, modifié 2 fois.
LibreOffice 5.2.5.1 sous Lubuntu xenial
Avatar de l’utilisateur
DLE
SuppOOrter
SuppOOrter
Messages : 1477
Inscription : 30 déc. 2007 18:56
Localisation : Lille

Re: [CALC] enregistrement de donnees ne s'effectuent pas

Message par DLE »

Bonjour,

Quelques erreurs trouvées à corriger :
Les boutons du dialogue (Nouveau, enregistrer et Transférer) font appel aux macros du module2, qui n'existe pas, elles sont dans le module1.
Il y a un empilage d'appel du dialogue "Dlg.execute", cet appel figure dans la macro 'OuvrirDialog" (ce qui me semble normal) et dans la macro "ListesLiees" on passe passe plusieurs fois lors de l"initialisation du dialogue.

D'autre part lors de l'activation du bouton "Nouveau", les champs "Région" et "Appellation" ne sont pas renseignés et le bouton "Enregistrer" n'est pas actif, est-ce normal.

Pour suivre pas à pas le déroulement d'une macro, il faut poster un point d'arrêt sur une ligne (via PF9) puis démarrer la macro, l'exécution s’arrêtera sur ce point d'arrêt, via PF8 vous exécutez l'instruction suivante , pour aller directement sur un autre point d'arrêt plus loin dans le code sur PF5.

A+
MacOS Sonoma 14.4.1 (iMac-Intel) : AOO 4.1.15 , LibreOffice 7.6.5.2, Adoptium-temurinJDK_1.8.0_402 -
Windows 10 64 bits :
AOO 4.1.15, Libreoffice 7.1.8.1 - FireFox, Thunderbird, ORB 1.2.1
Piaf
GourOOu
GourOOu
Messages : 5622
Inscription : 25 nov. 2011 18:07
Localisation : Guyane

Re: [Calc] enregistrement de donnees ne s'effectuent pas

Message par Piaf »

Bonjour
Pourquoi se compliquer la vie en voulant gérer des données sous un tableur ?
Ceci dit, j'ai un peu édulcorer le fichier, comme je n'ai pas tout compris j'ai arrangé à ma sauce :P
Il est indispensable que l'ordre du tableau Var corresponde à celui des colonnes de la feuille données.
Pour les calculs, tu es dans un tableur, autant les faire par fonction dans la feuille plutôt qu'à partir du dialogue :)
A tester.
Le principe est de placer le curseur sur une cellule de la ligne d'un enregistrement pour pouvoir le modifier, ou de placer le curseur sur une cellule de la première ligne vide pour pouvoir ajouter un enregistrement.
A+
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
dvd69
NOOuvel adepte
NOOuvel adepte
Messages : 19
Inscription : 29 mai 2017 15:04

Re: [Calc] enregistrement de donnees ne s'effectuent pas

Message par dvd69 »

bonsoir,

tout d'abord desole pour la casse du titre et merci au modo pour le rectificatif.

--> DLE: oui je sais c'est la pagaille dans ce code. je fais du lego et ce n'est pas jojo. il faut que je prennes la peine de l'imprimer. je marche comme ca, lire a l'ecran j'ai du mal en plus lorsque c'est du code... et que j'arrange la structure avec mes moyens de debutant.

--> PIAF: a propos du fouillis, tu dis plus ou moins la meme chose que DLE ce qui t'a amene a "ressaucer" la macro. je ne t'en veux pas mais au passage je perds la fonction qui permettait de rentrer plusieurs lignes. or mon probleme initial est justement la combinaison des deux listes liees et cette dite fonction.
Pourquoi se compliquer la vie en voulant gérer des données sous un tableur ?
que suggeres tu? j'ai pense au tableur parce qu'aujourd'hui je rentre a la mano dans un tableur ces donnees. alors je me suis dit que ce serait pas mal de rendre plus convivial et automatiser de passer par une macro.

merci aussi pour vos conseils sur les variables, fonctions et debugage. je vais tenter de les traduire dans ma tete de neophyte.

a bientot
LibreOffice 5.2.5.1 sous Lubuntu xenial
Piaf
GourOOu
GourOOu
Messages : 5622
Inscription : 25 nov. 2011 18:07
Localisation : Guyane

Re: [Calc] enregistrement de donnees ne s'effectuent pas

Message par Piaf »

Bonsoir
dvd69 a écrit :je perds la fonction qui permettait de rentrer plusieurs lignes.
Pas compris :lol:
dvd69 a écrit : or mon probleme initial est justement la combinaison des deux listes liees et cette dite fonction.
La fonction ListesLiees ne fonctionne pas ?
dvd69 a écrit :que suggeres tu?
Base le module de gestion de données de la suite.
A+
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
dvd69
NOOuvel adepte
NOOuvel adepte
Messages : 19
Inscription : 29 mai 2017 15:04

Re: [Calc] enregistrement de donnees ne s'effectuent pas

Message par dvd69 »

bonsoir,
dvd69 a écrit:
je perds la fonction qui permettait de rentrer plusieurs lignes.

Pas compris :lol:
dans la macro initiale (avant que je n'introduise les listes liees), je quittais la fenetre lorsque je cliquais sur le bouton "quitter". tant que je ne l'avais pas fait, je rentrais autant de lignes que je voulais.
en introduisant la liste liee au mauvais endroit, je me retrouve dans mon probleme, celui de ce thread.
dans la correction que tu apportes, il y a enregistrement mais il se fait des la 1ere ligne remplie et ns quittons la fenetre.

la fonction listes liees fonctionne comme un charme.

je me doutais bien que la base trainait mais n'osait y penser. bon, apres tout pourquoi pas. je vais commencer par https://forum.openoffice.org/fr/forum/v ... f=9&t=1543 pour comprendre le principe et les differences avec la macro.
LibreOffice 5.2.5.1 sous Lubuntu xenial
Piaf
GourOOu
GourOOu
Messages : 5622
Inscription : 25 nov. 2011 18:07
Localisation : Guyane

Re: [Calc] enregistrement de donnees ne s'effectuent pas

Message par Piaf »

Bonsoir
Une variante, en cliquant sur le bouton enregistrer il t'est demandé si tu souhaites ajouter un un enregistrement.
 Ajout : Changement de fichier avec la possibilité de se déplacer dans les enregistrements existants.
Correction des listes V d L.
A tester 
A+
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
dvd69
NOOuvel adepte
NOOuvel adepte
Messages : 19
Inscription : 29 mai 2017 15:04

Re: [Résolu][Calc] enregistrement de donneesne s'effectuent

Message par dvd69 »

merci Piaf. Le fil directeur est la.
Je vais gratter un peu plus sur la macro et me pencher sur le principe de la base.
LibreOffice 5.2.5.1 sous Lubuntu xenial