Felder eines neuen Dokuments aus Macro füllen...

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

Moderator: Moderatoren

Plumperquatsch
*
Beiträge: 17
Registriert: Fr, 20.02.2004 11:14

Felder eines neuen Dokuments aus Macro füllen...

Beitrag von Plumperquatsch »

Hallo nochmal,

ich habe ein macro erstellt, welches ein neues Dokument aus einer Vorlage erstellt. das klappt alles wunderbar.

Jetzt möchte ich in Textvariablen, welche in dieser Vorlage existen sind, Werte, die ich vorher aus einer Tabelle hole (oder später auch Datenbank [MySQL] --> dürfte dann kein Problem mehr sein) eintragen. Ich habe schon einige Post hier gefunden, die allerdings alle nicht mein Problem lösen.

Ich prüfe auf Textfelder ab, d.h. auf

Code: Alles auswählen

currentField.supportsService("com.sun.start.text.TextField.SetExpression")
Nur wenn dies erfüllt ist, dann soll er auf den VariableName abfragen.
Nur kommt es mir so vor, dass ich nicht eine Textvariable in meinem Dokument habe, da er in die If-Anweisung nicht rein geht.

In meinem Dokument sind Felder vom Typ Variable - Text

Und dann noch ein (vorerst) letztes: Hat jemand einen guten Tipp, wo man "erschöpfende" Infos über die Befehle von OOo Basic bekommt. Das SDK ist irgendwie nur recht oberflächlich und der Bezug der häufig zu VBA hergestellt wird ist nicht wirklich brauchbar, da die Sprachen doch recht unterschiedlich zu sein scheinen...


Danke allerseits, und gut das es Euch gibt :oops: ,

Jens
openmind
****
Beiträge: 184
Registriert: So, 29.06.2003 15:00
Wohnort: Schweiz

Re: Felder eines neuen Dokuments aus Macro füllen...

Beitrag von openmind »

Plumperquatsch hat geschrieben: Das SDK ist irgendwie nur recht oberflächlich
Dein kleiner Samstagabendscherz? Also ich finde das SDK alles andere als oberflächlich. Vor allem dann nicht, wenn wir dasselbe meinen. Tiefer als die IDL-Referenz gehts ja kaum noch. Was fehlt denn da am SDK genau?


Ich möchts nicht beschwören, aber ich glaube das erste Beispieldes Kapitels zu Text-Dokumenten des Developers Guide (eine Teilmenge des SDK) hat ein Beispiel, wie in einer Writer-Vorlagen Textfelder angesteuert und gesetzt werden...
Meine Installation: AMD Athlon XP 1600+, 512 MB RAM, SuSE Linux 8.2, OpenOffice 1.1
Kostenlose OOo-CD in der Schweiz: http://www.office-cd.ch/
Plumperquatsch
*
Beiträge: 17
Registriert: Fr, 20.02.2004 11:14

Beitrag von Plumperquatsch »

Ja ist denn Basic und Java das gleiche? Zumindest in diesem Fall?

Ist vieleicht eine etwas lächerliche Frage, aber ich beschäftige mich jetzt seit drei Tagen mit OOo Basic und sehe da wohl noch nicht so richtig durch.

Aber was ich bisher gefunden habe ist halt - zumindest was Basic angeht - nicht so sehr umfangreich. Wenn allerdings alles das was für Java im SDK vorhanden ist auch noch dazu gehört - na dann - ich nehme alles zurück!! :oops:
openmind
****
Beiträge: 184
Registriert: So, 29.06.2003 15:00
Wohnort: Schweiz

Beitrag von openmind »

BASIC und Java ist schon nicht dasselbe, aber das Object-Modell von OOo, was in der IDL-Referenz dokumentiert ist, ist dasselbe. Dahinter steckt das UNO-Konzept, dass es erlaubt UNO-Komponenten zu entwickeln in Java oder C++ (oder theoretisch jeder Sprache) und diese als UNO-Komponente zu registrieren. Diese Komponenten sind sollten dann prinzipiell von allen verschiedenen Sprachen (aktuell als Standard C++, Java oder Basic) benutzbar sein, ganz egal ob da C++ oder Java dahinter werkelt. Die IDL-Referenz ist somit für Java und Basic relevant.

Die Beispiele des Developer-Guides sind quasi alle in Java. Das kann jedoch nach Basic übersetzt werden, was übrigens dann auch nicht mehr so kompliziert aussieht wie Java, da das Suchen nach Interfaces nicht nötig ist.

Somit ist der Dev-Guide auch für Basic-Programmierer relevant. Du erfährst wie eine Tabelle in Writer aufgebaut ist. Mit ein wenig Übung wird es dir möglich sein diese Infos und die Java-Beispiel nach Basic zu denken und zu nutzen.

Es gibt einem Issue zu Basic-Dokumentation

http://www.openoffice.org/issues/show_bug.cgi?id=18327

Jemand hat begonnen alle Java-Beispiele des Dev-Guides nach Basic zu übersetzen.
Meine Installation: AMD Athlon XP 1600+, 512 MB RAM, SuSE Linux 8.2, OpenOffice 1.1
Kostenlose OOo-CD in der Schweiz: http://www.office-cd.ch/
Antworten