Framework Fehler

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

Moderator: Moderatoren

Strat49
**
Beiträge: 40
Registriert: Fr, 15.09.2006 13:19
Wohnort: Bremen
Kontaktdaten:

Framework Fehler

Beitrag von Strat49 »

Hallo zusammen,

OOo meldet ganz plötzlich beim Öffnen eines Dokuments - egal welches - einen Fehler:

Code: Alles auswählen

Ein Scripting Framework Fehler trat während der Ausführung von Basic script
vnd.sun.star.script:OpenTestbase.Module1.AllgemeinOeffnen?language=Basic&location=document
auf.
Meldung: BasicProviderImpl::getScript: no Script!
Wer weiß, was diese Meldung bedeutet und wie ich den Fehler wieder wegbekomme?

Ich hatte mit einem Base-Dokument herumexperimentiert und dazu eigene Dialoge und Makros geschrieben. Eines dieser Makros sollte den Dialog AllgemeinOeffnen laden. Nach der Testphase habe ich den Dialog und die Makros wieder gelöscht. Danach trat der Fehler auf. Inzwischen habe ich sogar alle eigenen Makros und Dialoge in OOo gelöscht (nach dem Export der Makros natürlich :wink: ) und sogar die Dateien im Ordner .../user/basic/ von allen eigenen Makroresten gesäubert. Der Fehler tritt aber immer noch auf, selbst nach einem Neustart des gesamten Systems.

Muss ich gar OOo ganz neu installieren?

Danke für alle Hilfen.

Viele Grüße
Norbert
OOo 2.0.4 unter Suse Linux 10.0
Mihilist
****
Beiträge: 120
Registriert: Di, 25.04.2006 15:27
Wohnort: Nürnberg
Kontaktdaten:

Beitrag von Mihilist »

Wo hattest du dein Start-Makro denn vorher zugewiesen? Ich nehme an, dort ist es immer noch zugewiesen ;)

Nun sucht er beim öffnen fleißig nach dem Skript und findet es nicht. Ergo sagt er dir genau das: "No skript!".
Strat49
**
Beiträge: 40
Registriert: Fr, 15.09.2006 13:19
Wohnort: Bremen
Kontaktdaten:

Beitrag von Strat49 »

Hallo Thomas,

also daran kann es meines Erachtens nicht liegen, denn ich habe alle Makros gelöscht und in allen Test-Dokumenten alle Makroaufrufe überprüft.

Ergebnis: keine Makros, keine Makroaufrufe. Das verstehe ich ja gerade nicht. Denn irgendwelche Makroaufrufe dürften nicht mehr vorhanden sein.

Inzwischen habe ich festgestellt, dass nach dem Wegdrücken der Fehlermeldung das Dokument einwandfrei geöffnet wird. Erst beim Speichern erscheint die gleiche Fehlermeldung wieder. Jetzt kann es aber wohl nichts mehr mit einem Makroaufruf beim Dokumentöffnen zu tun haben.

Wie gesagt: ich verstehe es nicht!

Gruß
Norbert
OOo 2.0.4 unter Suse Linux 10.0
Strat49
**
Beiträge: 40
Registriert: Fr, 15.09.2006 13:19
Wohnort: Bremen
Kontaktdaten:

Beitrag von Strat49 »

Ein Nachtrag zum Problem:

Ich habe OOo vollständig von der Platte geputzt. YASt in Suse 10.0 sagte jedenfalls, dass keine Pakete mehr installiert seien, gleiches Ergebnis auf der Konsole mit "rpm -qa | grep openoffice". Also - ein OOo-cleanes System!

Dann OOo 2.0.3 neu installiert: gleiche Fehlermeldung! :evil:

Ich schließe daraus, dass der Fehler nicht im Programm selbst begründet ist, sondern in den Dokumenten bzw. irgendeinem Dokument. Also: alle Dokumente geprüft, die ich mit Makros versehen hatte und alle Makros gelöscht, alle Zuordnungen gelöscht (war vorher bereits gemacht worden, habe ich aber noch einmal überprüft). FEHLERMELDUNG!!! :evil: :evil:

Irgendwo steckt der Wurm drin, aber wie bekomme ich ihn wieder heraus? Ich kann nur wiederholen: Ich verstehe das nicht!

Am Rande: Makros, die einen Frame aufrufen bzw. einen ändern, hatte ich gar nicht geschrieben.

Norbert
OOo 2.0.4 unter Suse Linux 10.0
Mihilist
****
Beiträge: 120
Registriert: Di, 25.04.2006 15:27
Wohnort: Nürnberg
Kontaktdaten:

Beitrag von Mihilist »

Hallo

Hast du auch die Formulare und Subformulare auf Makroaufrufe überprüft? Klingt halt so, als wär irgendwo "Beim Laden" ein Makro zugewiesen oder so.

Aber seltsam ist, dass das bei all deinen Dokumenten auftritt. Hast du's mal mit anderen Dokumenten versucht? (Kollegen, Freunde, Web, ...)

Grüßle
Thomas
Strat49
**
Beiträge: 40
Registriert: Fr, 15.09.2006 13:19
Wohnort: Bremen
Kontaktdaten:

Beitrag von Strat49 »

Hallo Thomas,

der fehler tritt bei allen OOo-Dokumenten vonm mir auf. Andere, also ffremde Dokumente habe ich nicht. Wenn dur mir ein einfaches ohne Makroaufrufe zusenden willst, bitte an: norbert.carle@onlinehome.de. Mal sehen, was dann passiert. :?:

Gruß
Norbert
OOo 2.0.4 unter Suse Linux 10.0
Toxitom
********
Beiträge: 3769
Registriert: Di, 12.08.2003 18:07
Wohnort: Wiesbaden
Kontaktdaten:

Beitrag von Toxitom »

Hey Norbert,

der Fehler deutet auf eine "korrupte" script.xlc (im Userverzeichnis) oder auf defekte "Script.xlb" im Programmverzeichnis hin. Bei der Arbeit mit Base konnte das schon mal passieren - insbesondere mit frühen 2 Versionen ;-)
Dann hilft meist nur: manuelles reparieren oder Neuinstallation.
Du hast geschrieben, dass du die Dateien alle gelöscht hast - hast du das wirklich?
Beim Deinstallieren von OOo bleiben nämlich die Benutzerdefinierten Strukturen zurück - also das, was im Anwendungsverzeichnis steht. Das wird bei einer Neuinstallation dann wieder gefunden und exakt so eingebunden. Dadurch bleiben selbstgeschriebene Makros auch über einen Update erhalten - der Nachteil: auch eine defekte "script.xlb" bleibt leider erhalten. Öffne die die Datei mal mit einem normalen Editor und schau dir den Inhalt an: Dort müssen Verweise zu allen Makrobibliotheken liegen - auch den Systemeigenen!
Die Fehlermeldung hat mit deinen Dokumenten wahrscheinlich nichts zu tun, sondern liegt dort begründet, was ich dir geschrieben habe.
Wenn du nicht weiterkommst, poste mal den Inhalt deiner Script.xlb. Ich erinnere mich nämlich noch ean einen anderen Fehler: Da wurde nochauf eine Bibliothek verwiesen, die in der 1.x Version vorhanden war, bei der 2.x aber nicht mehr. Und beim Installieren konnte der Verweis dennoch übrigbleiben. Dann kam ebenfalls eine solche Meldung.

Gruss
Thomas (npch einer...)
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Strat49
**
Beiträge: 40
Registriert: Fr, 15.09.2006 13:19
Wohnort: Bremen
Kontaktdaten:

Beitrag von Strat49 »

Hallo Thomas (toxicom),

an die beiden Dateien und die anderen um Verzeichnis /user/basic/ hatte ich auch schon gedacht. In der skript.xlc habe ich auch noch einen Verweis auf ein altes Makro gefunden und gelöscht. Dies hat allerdings nicht geholfen. Dehalb hier meine skript.xlb:

Code: Alles auswählen

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE library:library PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "library.dtd">
<library:library xmlns:library="http://openoffice.org/2000/library" library:name="Standard" library:readonly="false" library:passwordprotected="false">
 <library:element library:name="Module1"/>
</library:library>
und meine skript.xlc:

Code: Alles auswählen

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE library:libraries PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "libraries.dtd">
<library:libraries xmlns:library="http://openoffice.org/2000/library" xmlns:xlink="http://www.w3.org/1999/xlink">
 <library:library library:name="Standard" xlink:href="$(USER)/basic/Standard/script.xlb/" xlink:type="simple" library:link="false"/>
 <library:library library:name="Launcher" xlink:href="$(INST)/share/basic/Launcher/script.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/>
 <library:library library:name="FormWizard" xlink:href="$(INST)/share/basic/FormWizard/script.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/>
 <library:library library:name="Template" xlink:href="$(INST)/share/basic/Template/script.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/>
 <library:library library:name="Tools" xlink:href="$(INST)/share/basic/Tools/script.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/>
 <library:library library:name="Schedule" xlink:href="$(INST)/share/basic/Schedule/script.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/>
 <library:library library:name="Gimmicks" xlink:href="$(INST)/share/basic/Gimmicks/script.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/>
 <library:library library:name="ImportWizard" xlink:href="$(INST)/share/basic/ImportWizard/script.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/>
 <library:library library:name="Euro" xlink:href="$(INST)/share/basic/Euro/script.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/>
 <library:library library:name="Depot" xlink:href="$(INST)/share/basic/Depot/script.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/>
 <library:library library:name="ScriptBindingLibrary" xlink:href="$(INST)/share/basic/ScriptBindingLibrary/script.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/>
</library:libraries>
Ich habe noch einen weiteren User auf dem PC eingerichtet. Wenn ich diesen benutze und ein OOo-Dokument öffne, ist alles wunderbar. Der Fehler tritt nicht auf. Also habe ich unter meinem fehlerhaften Benutzeraccount das Verzeichnis umbenannt in /user/basic.old/ und die andere Datei hineinkopiert. Jetzt müßte sich OOo ja eigentlich die unbeschädigte Datei greifen und die Dokumente ebenfalls fehlerfrei öffnen. Leider trifft dies jedoch nicht zu, alles wie gehabt.

Also muss der Wurm irgendwo anders drin stecken. Kannst du mir sagen, welche Dateien beim Dokument-Öffnen bzw. Dokument-Speichern sonst noch abgefragt werden?

Falls ich neu installieren muss (es kommt ja demnächst OOo 2.0.4 :lol: ), benötige ich auf jeden Fall die Templates, die Autokorrektur, die Textbausteine, die Gallerie und das Wörterbuch. Diese Verzeichnisse muss ich immer sichern. Könnte der Fehler darin stecken? Keines dieser Dokumente enthält allerdings irgendein Makro.

Gruß
Norbert
OOo 2.0.4 unter Suse Linux 10.0
Toxitom
********
Beiträge: 3769
Registriert: Di, 12.08.2003 18:07
Wohnort: Wiesbaden
Kontaktdaten:

Beitrag von Toxitom »

Hey Norbert,

prüfe mal alle Einträge deiner script.xlc ob die Pfade und Biliotheken auch wirklich vorhanden sind. Ich glaube nämlich, dass eine der Biliotheken nicht mehr existiert , dann gibt es diese Fehlermeldung.
Dass du Makros in deinen Dokumenten hast, istt eher unwahrscheinlich. Überprüfe erst mal das oben.
Also in meiner script..xlc gibt es beispeilsweise keinen Eintrag für "ScriptBindingLibrary". Prüf mal, ob du wirklich eine solche Biblithek unter dem Pfad hast, ansonsten lösche den kompletten Knoten raus (vorher Sicherungskopie Ziehen!).
Und denk dran, bevor du die datei mit einem Editor bearbeitest: OOo komplett schliessen, auch den Schnellstarter.
Darf nix mehr im Speicher sein! sonst wird deien geänderte Script.xlc wieder durch die alte (aus dem Speicher) überschrieben!

Gruss
Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Strat49
**
Beiträge: 40
Registriert: Fr, 15.09.2006 13:19
Wohnort: Bremen
Kontaktdaten:

Beitrag von Strat49 »

Hallo Thomas (toxicom),

die Einträge waren alle in Ordnung. Auch der Eintrag "ScriptBindingLibrary".

Ich hatte jetzt aber keine Lust mehr mit den ewigen Fehlermeldungen. Die störten mich doch ganz erheblich. Also habe ich mir OOo 2.0.4 heruntergeladen und installiert. Die im vorstehenden Beitrag benannten Verzeichnisse hatte ich zuvor gesichert und nach der Installation zurückgeschrieben.

Und stelle dir vor: OOo funktioniert wieder einwandfrei (dem Himmel sei Dank!) Selbst der Eintrag "ScriptBindingLibrary" ist wieder vorhanden. :wink:

Zwar würde mich die Lösung des Problems stark interessieren, aber jetzt bin ich auch wieder zufrieden. Ich hoffe, dass der Fehler nicht mehr auftritt.

Eine Idee ist mir allerdings noch gekommen. Ich hatte damals sofort die Dokumente gelöscht, in denen die Makros vorhanden waren. Hätte ich hier zunächst die Makros und dann erst die Dokumente löschen sollen? Naja - erstmal egal.

Gruß von einem glücklichen :D
Norbert
OOo 2.0.4 unter Suse Linux 10.0
Antworten