Seite 1 von 1

Makro in Formular debuggen

Verfasst: Di, 06.07.2010 07:44
von flint2stone
Hallo,

ich möchte das folgende Makro debuggen, das ich im Netz gefunden habe

Code: Alles auswählen

Sub OnClickSIP

odoc=thiscomponent
oForm=odoc.drawpage.forms.getbyname("Adressen")
oCtl=oForm.getbyname("PushButton")  'pushbutton control is of type URL
osourcectl=oForm.getbyname("PhoneNumber")  'control contains phone number
oCtl.TargetURL = "callto:"& osourcectl.string

End Sub
Das Makro soll per Schaltfläche im base Formular eine Telefonnummer ans Softphone übergeben. Bei Click auf Schaltfläche läuft es durch (nur dass es eine leere Nummer übergibt). Wenn ich's aber im Basic IDE laufen lasse, hängt es bereits bei drawpage. Vermutlich weil ich nicht im Formular "drin" bin, wenn ich's mal so laienhaft interpretiere. Wie kann ich das Makro im Formular laufen lassen und gleichzeitig debuggen?

Re: Makro in Formular debuggen

Verfasst: Di, 06.07.2010 10:12
von komma4
flint2stone hat geschrieben:Wenn ich's aber im Basic IDE laufen lasse, hängt es bereits bei drawpage.
Nein - das läuft auch in der IDE, wenn das Formular das aktive Dokument ist.

Wie lautet denn der Name Deines Formulars? Adressen?

besorge Dir XRAY, installiere es, lade die Bibliothek XRAYTOOL (durch Aufruf in der IDE), dann baue Untersuchungspunkte ein:

Code: Alles auswählen

oForm=odoc.drawpage.forms.getbyname("Adressen")
xray oForm
oCtl=oForm.getbyname("PushButton") 'pushbutton control is of type URL
xray oCtl
Das kann dann auch aus dem Formular getestet werden.



Habe Deinen Code in TAGS gesetzt, zur besseren Lesbarkeit.

Re: Makro in Formular debuggen

Verfasst: Di, 06.07.2010 11:45
von flint2stone
Dankschön für die wertvollen Tipps. XRAY habe ich installiert und bin damit durch das Makro gegangen, nachdem ich nach jeder Codezeile ein xray ... eingebaut habe.
Und plötzlich übergibt das Makro die Telefonnummer ohne Änderungen am eigentlichen Makrocode.
Habe weiter probiert und die xray-Zeilen selektiv deaktiviert:
Mit
xray osourcectl
wird offenbar etwas aktiviert/initialisiert, was dann bei einem zweiten Click auf die Schaltfläche die Telefonnummer übergibt. Wenn ich dann die xray zeile lösche, funktioniert die Schaltfläche weiterhin, nicht aber nach schließen und wieder öffnen des Formulars.
Wie könnte ich dem Problem auf die Spur kommen?