[Base]Mise à jour Zone Texte de formulaire

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 !
Frankygir
Membre lOOyal
Membre lOOyal
Messages : 29
Inscription : 20 févr. 2025 09:36

[Base]Mise à jour Zone Texte de formulaire

Message par Frankygir »


La modération vous a écrit: Dans votre titre < [Base]Mise à jour Zone Texte de formulaire par macro > le terme macro est inutile car il est implicite dans cette section. Il a été supprimé.

Bonjour

Quand j'ai voulu repasser les modifications mises au point avec vous sur mon appli d'essai dans mon appli officielle il a fallu que je retrouve les modifs et que je les applique sinon les macros plantaient
OO ne m'a pas permis de copier un formulaire d'une appli que l'autre
donc quelques chgt de nom de champ ou numérique =>formatté


mais je suis tombé sur un os avec un champ dit "commentaire libre" sur 40 car. TXT_COMMENT
Sur les 2 apllis les contrôles étaient pourtant totalement identiques : Zone de Texte, 40 car
compar.jpg
mais avec les macros ça plante car un des deux n'a pas de propriété Text pour le mettre à jour

J'ai suivi vos conseils et mis un Xray dans la macro avant de vouloir affecter ce champ

Code : Tout sélectionner

	oForm = ThisComponent.DrawPage.Forms(0)
	REM mise à jour du Commentaire 	
	oField_comment      = oForm.getByName("txtTXT_COMMENT")
Xray oField_comment
	oField_comment.Text = "texte souhaité"   REM <== erreur propriété inexistante
	oField_comment.commit
et là c'est très différent
essai.jpg
le oFieldTextModel n'a pas de propriété .Text pour la mise à jour tandis que oEditModel en a une
Mais pour quoi ne voit-on rien sur le Contrôle????

J'ai essayé de recréer le champ mais ça ne changeait rien

Ne sachant comment recréer un champ du bon type j'ai profité d'une facilité d'OO en recopiant le champ ok du formulaire de la base d'essai dans le formulaire de la base opérationnelle

mais je ne voudrais plus être un novice en ce domaine???

Auriez-vous une idée?
GFA_XXXXXX_Compta-2.odb
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Apache Open Office 4.1.15 -- Oracle Report Builder 1.2.1 -- Windows 11
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 25965
Inscription : 03 mars 2006 07:45
Localisation : 127.0.0.1

Re: [Base]Mise à jour Zone Texte de formulaire

Message par Dude »

Salut,
Frankygir a écrit : 05 mai 2025 15:20mais avec les macros ça plante car un des deux n'a pas de propriété Text pour le mettre à jour
Chaque type de contrôle a forcément des propriétés différentes.
Frankygir a écrit : 05 mai 2025 15:20le oFieldTextModel n'a pas de propriété .Text pour la mise à jour tandis que oEditModel en a une
Alors déjà le contrôle n'affiche pas ce que tu écris mais oFixedTextModel.
Il s'agit d'un champ d'étiquette et non d'une zone de texte. Donc pas de propriété Text effectivement mais Label.
Frankygir a écrit : 05 mai 2025 15:20 d'une facilité d'OO en recopiant le champ ok du formulaire de la base d'essai dans le formulaire de la base opérationnelle
Je ne sais pas ce que tu appelles un "champ ok" mais bon, ce n'est sûrement pas une bonne idée que de faire des copier/coller.
Un formulaire contient des contrôles qui s'appuient sur des informations liées à l'ODB comme la connexion à la source.
Bref si tes contrôles ne correspondent pas, tu te retrouves bien sûr avec un savoureux mélange et des plantages.