Makro in Formular debuggen

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

flint2stone
Beiträge: 5
Registriert: Fr, 17.04.2009 09:39

Makro in Formular debuggen

Beitrag 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?
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: Makro in Formular debuggen

Beitrag 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.
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
flint2stone
Beiträge: 5
Registriert: Fr, 17.04.2009 09:39

Re: Makro in Formular debuggen

Beitrag 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?
Antworten