Macro maken voor herladen formulier (Base)

Macro maken voor herladen formulier (Base)

Berichtdoor tuxy » di dec 01, 2009 11:41 am

Hallo,

Naar aanleiding van mijn database-applicatie die te vinden is in volgend topic:

viewtopic.php?f=13&t=351&p=1812#p1812

Probeer ik uit te 'vissen' hoe ik de onderstaande 'herlaad' Macro aan de praat kan krijgen, deze macro heb ik gedownload van volgend engelstalig forum:
(met dank aan Romke!)

http://www.oooforum.org/forum/viewtopic ... ght=commit

Code: Selecteer alles   UitklappenInklappen
sub NaUpdateRealListbox(oEvent as object)
'This event must be run when the list box is updated (second from below)
dim oForm
oForm=oEvent.source.parent
if oForm.implementationname ="com.sun.star.comp.forms.ODatabaseForm" then
    UpdateFormAndReload oForm 'Check there is form must be stored
end if
end sub


sub listbox_commit_Changed(oEvent as object)
'Bound to listbox changed (second from top)
oEvent.source.model.commit
end sub


sub UpdateFormAndReload(oForm as object)
with oForm
   if .isnew then
       .insertrow
       .reload
   elseif .ismodified then
       .updaterow
       .reload
   end if
end with
end sub


Daar ik totaal geen ervaring heb met het gebruik van macro's, lukt het me niet om deze macro in te stellen aan de hand van mijn database.
Ik heb deze Macro opgeslagen in 'Mijn Macro's', maar wanneer ik deze wil testen, heeft deze volgende fout:

'BASIC-runtime-fout. Het argument is niet optioneel.'

Daarmee verwijst ooBase naar volgende regel:

oForm=oEvent.source.parent

Wie kan me helpen om deze macro probleemloos uit te voeren?

Christophe
OpenOffice 3.1 / Vista / Ubuntu Linux 10.04
tuxy
 
Berichten: 115
Geregistreerd: do okt 29, 2009 11:53 am
Woonplaats: Adinkerke, België

Re: Macro maken voor herladen formulier (Base)

Berichtdoor RPG » di dec 01, 2009 3:25 pm

Hallo

Macro's waar zoiets als oEvent in staan worden nooit direct gerund.

Je moet deze macro binden aan je listbox zie de helpfile : scripts toewijzen

Romke
LibreOffice 6.2.5.2 op openSUSE Leap 15.1
RPG
 
Berichten: 3956
Geregistreerd: wo apr 15, 2009 1:01 am
Woonplaats: Apeldoorn, Nederland

Re: Macro maken voor herladen formulier (Base)

Berichtdoor tuxy » di dec 01, 2009 4:41 pm

Ik heb de Macro toegewezen aan de keuzelijst, via de gebeurtenis 'Status gewijzigd', maar er gebeurt niets.

Ik hoef hopelijk niets te veranderen aan de Macro?

Eigenlijk vind ik het niet erg dat de knop [Zoek] dient om het formulier te vernieuwen, maar spijtig dat ik het bevestigingsvenster 'formulier gewijgd. Wilt u wijzigingen opslaan?' krijg.

Is er een manier om dit uit te schakelen?

Christophe
OpenOffice 3.1 / Vista / Ubuntu Linux 10.04
tuxy
 
Berichten: 115
Geregistreerd: do okt 29, 2009 11:53 am
Woonplaats: Adinkerke, België

Re: Macro maken voor herladen formulier (Base)

Berichtdoor eremmel » wo dec 09, 2009 12:04 am

Kijk eens naar deze discussie Filter form with combobox en Beginner stuck linking combo to subform. Bevat voorbeelddocumenten en macro's, ook voor Keuzelijst (listbox).

Ik bind mijn macro's aan de gebeurtenis (event) 'Gewijzigd' en niet aan 'Status Gewijzigd'. De help van OOO zegt: "De gebeurtenis Gewijzigd vindt plaats als het besturingselement de focus verliest en de inhoud van het besturingselement werd veranderd sinds het verlies van de focus." Dit is m.i. wat u wilt. (De help van OOo is niet slecht alleen soms moet je even zoeken...).

Die knop van bevestigen kan alleen via macro zoals in discussie beschreven voorkomen worden.
Kijk een naar de verwijzingen.
Is uw vraag beantwoord; pas uw initiële bericht aan: zet er [Opgelost] voor en vink de V aan
LO4.2.8.2 W10 vanwege ORB; AOO4.1.4, LO5.2.5.1,LO6.0.5.2 op W7ESP1 64
Het is Microsoft marketing die laat geloven dat computers geschikt zijn voor niet technici
eremmel
 
Berichten: 622
Geregistreerd: di sep 01, 2009 10:11 am
Woonplaats: Barneveld, Nederland

Re: Macro maken voor herladen formulier (Base)

Berichtdoor tuxy » do dec 10, 2009 12:43 am

Eremmel,

Dit lijkt me interessant.

Bedankt.

Christophe
OpenOffice 3.1 / Vista / Ubuntu Linux 10.04
tuxy
 
Berichten: 115
Geregistreerd: do okt 29, 2009 11:53 am
Woonplaats: Adinkerke, België


Keer terug naar Macro's

Wie is er online

Gebruikers op dit forum: Geen geregistreerde gebruikers. en 1 gast