StarBasic: Unterschiede OO 2 / LO 3?

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

Moderator: Moderatoren

schrödingerkatze
**
Beiträge: 22
Registriert: Do, 03.08.2006 21:10

StarBasic: Unterschiede OO 2 / LO 3?

Beitrag von schrödingerkatze »

Hallo zusammen,

seit Jahren schreibt unser Versand die Rechnungen mit einem OpenOffice-Makro, das damals für OO 2.0.4 entwickelt wurde. Benutzt wird OO 2.0.4 Portable.
Nun stehen Makro-Umbauten an, wofür ich gerne einige Funktionen von LibreOffice 3.5 nutzen würde; beispielsweise die Dateneingabe per Formular (dann muss ich das nicht selbst erstellen, spart eine Menge Arbeit).
Das Problem ist nur: Das Makro läuft in LO 3 nicht.
Es besitzt mehrere Funktionen, die alle per Schaltflächen gestartet werden, die im Tabellenblatt integriert sind. Nur tut sich in LO 3 nichts, wenn man sie drückt. (Und ja, die Ausführung des Makros ist für die Datei ausdrücklich erlaubt.)

Die Fragen nun:
Hat sich bei StarBasic etwas geändert, seit den 2.0er-Tagen? Und wenn ja: Wo finde ich genaue Infos dazu?
Oder lautet der Rat einfach: Bleib' bei OO 2, bastle Dir eine Eingabemaske, alles andere ist zuviel Aufwand?

Vielen Dank im Voraus.
Benutzeravatar
balu
********
Beiträge: 3812
Registriert: Fr, 24.08.2007 00:28
Wohnort: Warstein

Re: StarBasic: Unterschiede OO 2 / LO 3?

Beitrag von balu »

Hallo schrödingerkatze,
Hat sich bei StarBasic etwas geändert, seit den 2.0er-Tagen?
Ja, so ist es!

Und wenn ja: Wo finde ich genaue Infos dazu?
Stell dir das nicht so einfach vor. Bei einem Versionswechsel von z.B. 3.2.1 zu 3.3.0 könnte man noch vielleicht Infos dazu finden, aber von 2.0.4 bis zur aktuellen ist wahrscheinlich aussichtslos. Und ich bin mir auch noch nicht mal sicher ob das alles gut dokumentiert ist.

Oder lautet der Rat einfach: Bleib' bei OO 2, bastle Dir eine Eingabemaske, alles andere ist zuviel Aufwand?
Nö du! Den Rat, dass Du bei der 2er bleiben sollst, gebe ich dir perrsönlich garntiert nicht. Der Grund ist recht simpel. Es sind im laufe der Zeit ein paar wenige Basic-Befehle "verschwunden", welche genau kann ich dir nicht sagen, ich weiß aber von einen, und dafür sind einige neue und nützliche dazu gekommen. Selbst bei dem Versionssprung von OOo 3.2.1 zu der 3.3.0 sind wiederum welche dazu gekommen. Es hatte in der 3.2.1 wohl auch schon welche gegeben, aber erst in der 3.3.0 wurden sie richtig, beziehungsweise besser und genauer umgesetzt.

Ich spreche da aus eigener Erfahrung. Es gibt Befehle in der 3.2.1 die wunderbar funktionieren, aber in einer älteren z.B. 3.1.0 nicht existieren. Und folglich musste ich dann speziell für die 3.1.0 einiges an extra aufwand betreiben, nur um dort fast das gleiche zu erlangen wie in der 3.2.1

Es ist also so, dass es nur von Vorteil ist auf eine aktuellere Version umzusteigen da sich doch so einiges getan hat. Der Nachteil dabei ist leider der, man muss arbeit investieren um die Makros umzuschreiben. Nicht nur der Makros wegen sollte man auf aktuellere Version "updaten", sondern auch wegen eventuellen Sicherheitslücken in den Officen.


Vielleicht solltest Du entweder eine Beispieldatei hier anhängen, oder aber den Code hier veröffentlichen der dir Probleme macht. Es besteht ja eventuell die Möglichkeit das es sich nur um kleingikeiten handelt die ein Ausführen behindern.




Gruß
balu
Sei öfter mal ein Faultier, sag öfter mal "Ach was!" Dann kriegst du keinen Herzinfarkt, und hast ne menge Spass.

wehr rächtschraipfähler findet khan si behalden :D
Stephan
********
Beiträge: 12368
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: StarBasic: Unterschiede OO 2 / LO 3?

Beitrag von Stephan »

Hat sich bei StarBasic etwas geändert, seit den 2.0er-Tagen?
Ziemlich wenig, was Dir aber nichts nützt weil es Dir nicht um die Sprache "StarBasic" geht sondern um die API von OOo und da hat sich Etliches getan.
Und wenn ja: Wo finde ich genaue Infos dazu?
Eigentlich nur im entsprechenden Bugtracker von OOo/LO, da Du solche Infos selbst in den release notes nur selten finden wirst.
Ich halte es jedoch für praktisch sinnfrei den Bugtracker durchzusehen, weil das viel Aufwand ist der kaum was bringt. Besser ist es das bisherige Makro einfach zu debuggen und bei Auftreten von Laufzeitfehlern dann gezielt im Netz zu suchen (z.B. mithilfe des Quellcode der Zeile wo der Laufzeitfehler auftritt).
Oder lautet der Rat einfach: Bleib' bei OO 2, bastle Dir eine Eingabemaske, alles andere ist zuviel Aufwand?
Naja, das wäre ja für Dich kaum wirklich praktikabel bzw. gewünscht.

Da LO leider ständig neue Versionen rauskloppt und zumindest ich nicht in der Lage bin bei diesen ständigen neuversionen auf dem Laufenden zu sein, würde ich Dir den Rat geben (bei einer so alten Version wie OOo 2.0.4) zunächst einmal OOo 3.2.1 zu installieren und zu schauen wie dort die Situation ist, um einschätzen zu können was alles nicht geht.
Da sich neuere OO-Versionen (3.3.0 und 3.4.0) nur wenig davon unterscheiden wäre dann zuminderst ungefähr eine Abschätzung möglich ob das Ganze vorrangig mit LO zusammenhängt oder ein generelles (OOo+LO) Problem ist, danach fällt dann schon die Entscheidung leichter.

Sorry, genauer kann ich nichts sagen weil beruflich an dieser stelle LO für mich bisher keine Rolle spielt und ich deshalb keine ERfahrung habe was die Makroproblematik im Detail betrifft.
Was OOo betrifft ist die Entwicklung ungefähr so das es pro Version 0-10 (schätze ich mal) 'makrorelevante' Änderungen gibt, die man in Praxis leicht rausfindet, nur von 2.0.4 bis derzeitig 3.4.0 summiert sich das ja nun einmal und eine vernünftige Doku gibt es nicht (außer benannten Bugtracker)


Der ganz pauschale Rat wäre natürlich den Code einfach zu debuggen, ohne Vorbetrachtung, denn darauf läuft es letztlich ohnehin hinaus.


Gruß
Stephan
schrödingerkatze
**
Beiträge: 22
Registriert: Do, 03.08.2006 21:10

Re: StarBasic: Unterschiede OO 2 / LO 3?

Beitrag von schrödingerkatze »

Hallo und vielen Dank erstmal.
Das hört sich alles ja nicht unbedingt super an, was mein Vorhaben angeht. Das bisherige Makro besteht ausgedruckt aus ca. 30 Seiten, und es tut seit Jahren das, was es tun soll, und das auch noch richtig. Da erscheint es mir sinnvoller, einfach zwei Zusatzfunktionen "old-school" dazuzuprogrammieren und später (wenn mal Zeit ist), das alles mal auf "new-school" umzuprogrammieren. Zumal Sicherheitsaspekte absolut keine Rolle spielen; es werden Rechnungen von Hand eingetippt bzw. per (selbst per Script erstellter) CSV-Dateien eingespielt.
Stephan
********
Beiträge: 12368
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: StarBasic: Unterschiede OO 2 / LO 3?

Beitrag von Stephan »

Das hört sich alles ja nicht unbedingt super an, was mein Vorhaben angeht.
Mmmh ... eigentlich hört sich das alles doch nur ganz neutral an. Vielleicht würdest Du einfach al die Dinge angehen und nicht schon vorab kapitulieren?

Die einzige konkrete Aussage dazu ist bisher (soweit ich sehe):
Es besitzt mehrere Funktionen, die alle per Schaltflächen gestartet werden, die im Tabellenblatt integriert sind. Nur tut sich in LO 3 nichts, wenn man sie drückt.
Also solltest Du nun erstmal überprüfen was hier vor sich geht. Stimmt die Makrozuordnung zu den SChaltflächen nicht mehr? Oder laufen tatsächlich die Makros nicht?
Dauert ungefähr 1 MInute pro Schaltfläche wenn Du langsam arbeitest.
Das bisherige Makro besteht ausgedruckt aus ca. 30 Seiten, und es tut seit Jahren das, was es tun soll, und das auch noch richtig. Da erscheint es mir sinnvoller, einfach zwei Zusatzfunktionen "old-school" dazuzuprogrammieren und später (wenn mal Zeit ist), das alles mal auf "new-school" umzuprogrammieren.
Ohne das konkrete Makro zu kennen kann man dazu wenig Konkretes sagen, nach allgemeiner Erfahrung habe ich aber das Gefühl Du malst Riesenprobleme an die Wand wo es in Wahrheit nur um kleine Korrekturen/Anpassungen geht.

Um jedoch festzustellen was für Probleme vorliegen muß man natürlich debuggen und nicht nur theoretisch darüber reden.
Das eingangs angesprochene Schaltflächenproblem' kann sich z.B. als absolute Bagatelle herausstellen und ich verstehe deshalb nicht warum Du hier anscheinend vom schlimmstmöglichen Fall ausgehst.


Gruß
Stephan
Benutzeravatar
balu
********
Beiträge: 3812
Registriert: Fr, 24.08.2007 00:28
Wohnort: Warstein

Re: StarBasic: Unterschiede OO 2 / LO 3?

Beitrag von balu »

Hallo schrödingerkatze,
Das bisherige Makro besteht ausgedruckt aus ca. 30 Seiten
Da ich dich nicht kenne, sei mir folgende Frage gestattet. (ich bin nun mal halt neugierig)
Besteht das Makro aus aufgezeichneten Code (Makrorecorder), oder ist das alles richtig Programmiert?

Und ich persönlich finde das 30 Seiten, je nach Funktionlaität und richtig Programmiert, nicht außergewöhnlich ist. Das bekomme ich momentan auch mindestens zusammen. Das aber nur so nebenbei bemerkt.



Gruß
balu
Sei öfter mal ein Faultier, sag öfter mal "Ach was!" Dann kriegst du keinen Herzinfarkt, und hast ne menge Spass.

wehr rächtschraipfähler findet khan si behalden :D
schrödingerkatze
**
Beiträge: 22
Registriert: Do, 03.08.2006 21:10

Re: StarBasic: Unterschiede OO 2 / LO 3?

Beitrag von schrödingerkatze »

Na, dann will die Deine Neugier mal befriedigen:
Das Makro ist komplett durchprogrammiert, bis auf eine Stelle, wo der Dispatcher zum Umkopieren von einer Datei in die andere benutzt wird, da war der Makro-Rekorder einfach praktischer.
Die 30 Seiten mögen nicht allzu viel sein, nur habe ich seit dem Rechnungsmakro nichts mehr in StarBasic programmiert, ganz einfach, weil nichts benötigt wurde; alles, was seitdem anstand, beispielsweise die Weiterverarbeitung der CSV-Daten zu Lieferscheinen, erledigen auf unserem Server ein paar Perl-Scripte automatisch. Bevor ich mich da jetzt in irgendwelche Änderungen bei StarBasic einarbeite, klatsche ich es lieber an den alten Code dran und benutze weiter OOo 2. Es ist schon schwierig genug, sich einzulesen, was man vor ca. 5 Jahren da so hinprogrammiert hat...
Stephan
********
Beiträge: 12368
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: StarBasic: Unterschiede OO 2 / LO 3?

Beitrag von Stephan »

Die 30 Seiten mögen nicht allzu viel sein,
30 SEiten sind schon ganz ordentlich, gleichzeitig kann ich nur wiederholen das Du überhaupt mal mit dem debuggen beginnen müßtest und erst wenn sich dort tatsächlich viele Fehler zeigen würde ich eine so pessimistische Position einnehmen wie Du sie in dem anderen Post äußerst.

Die Problemlage bei den Schaltflächen wäre jedenfalls leicht zu prüfen und mehr an konkreten Problemen hast Du nicht genannt.


Im Übrigen glaube nicht das ich/wir dich für zu blöd hielten das Du das was ich schrieb auch selbst weißt, allein kennen wir nur die Informationen die Du hier konkret übermittelst und wissen nicht was für Dich darüber hinaus 'selbstverständlich' ist bzw. was Du bereits unternommen hast.
Damit meine ich nur das es zwar sein kann (aber nicht muß, und warscheinlich auch nicht sein wird) das Deine Makros wirklich viele Laufzeitfehler haben, so das Dein Pessimismus berechtigt wäre, nur wissen tun wir davon bisher nichts weil Du es uns quasi nicht sagst und raten kann man das nicht.


Gruß
Stephan
Antworten