Autor Thema: Script-Code läuft nur im Debug-Modus  (Gelesen 2021 mal)

Offline Ottmar

  • Aktives Mitglied
  • ***
  • Beiträge: 105
  • Geschlecht: Männlich
Script-Code läuft nur im Debug-Modus
« am: 08.06.21 - 18:02:51 »
Hallo Liebes Forum,

ich habe ein Problemchen, was so ein bisschen Mittelding zwischen Notes und OpenOffice oder Administration und Entwicklung ist, habe es jetzt mal hier eingestellt.

Das Problem: Ich habe eine ODBC-Schnittstelle zu OpenOffice. Ein Dokument soll in OpenOffice geöffnet werden. Dort sind Platzhalter enthalten, die durch Werte aus Notesdokumenten ersetzt werden sollen. Es gibt im Notes auch Mehrfachwertfelder und sind diese (mehrfach) befüllt, so müssen im OpenOffice (Writer) Dokument neue Tabellenzeilen angelegt werden. So weit so gut.
Mein Programmcode dazu funktioniert auch wunderbar, aber nur so lange der Debugger eingeschaltet ist und ich die Zeilen einzeln durch debugge.
Wenn ich den Scriptcode komplett durchlaufen lasse, verschluckt er sich an einer der folgenden Zeilen:

Code
For i = 1 To Count 
	Call UNODispatcher.executeDispatch(UNODocument, ".uno:InsertRows", "", 0, UNOEmpty)
	Call UNODispatcher.executeDispatch(UNODocument, ".uno:Refresh", "", 0, UNOEmpty)
	Call UNODispatcher.executeDispatch(UNODocument, ".uno:EntireRow", "", 0, UNOEmpty)	
	Call UNODispatcher.executeDispatch(UNODocument, ".uno:Copy", "", 0, UNOEmpty)
	Call UNODispatcher.executeDispatch(UNODocument, ".uno:Refresh", "", 0, UNOEmpty)
	Call UNODispatcher.executeDispatch(UNODocument, ".uno:GoDown", "", 0, UNOArgs2)
	Call UNODispatcher.executeDispatch(UNODocument, ".uno:EntireRow", "", 0, UNOEmpty)	
	Call UNODispatcher.executeDispatch(UNODocument, ".uno:Paste", "", 0, UNOEmpty)
Next

Ich habe am Code schon so einiges probiert.... noch mehr (eigentlich völlig überflüssige) Refresh-Befehle eingebaut, zwischen den Zeilen 'Sleep' Befehle gesetzt, aber egal, was ich gemacht habe, immer das gleiche Resultat.
Debuger an und zeilenweise durchdebuggt -> läuft
Debugger aus oder nicht zeilenweise durchdebuggt -> Er verschluckt sich, bevorzugt an 'InsertRows' oder 'EntireRow'

Das Problem tritt an verschiedenen Clients auf (auf mehreren Windows-Rechnern, unter mehrere Notesversionen zwischen Release 9 und 11 getestet, ebenso mit verschiedenen OpenOffice- und LibreOffice-Versionen probiert, überall das gleiche Bild.

Falls jemand Ideen hat... ich bin für jeden Tipp sehr dankbar.

 

Offline jBubbleBoy

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.290
  • Geschlecht: Männlich
Re: Script-Code läuft nur im Debug-Modus
« Antwort #1 am: 09.06.21 - 19:20:49 »
Wie oft "verschluckt" er sich denn?
Bzw. schon mal daran gedacht das Ergebnis zu prüfen (neue Zeile einfügen +Inhalt) und solange zu wiederholen bis es klappt?
Gruss Erik :: Freelancer :: KI-Dev, Notes, Java, Web, VBA und DomNav 2.5 / NSE 0.16 / OLI 2.0

--
Nur ein toter Bug, ist ein guter Bug!

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.728
  • Geschlecht: Männlich
Re: Script-Code läuft nur im Debug-Modus
« Antwort #2 am: 09.06.21 - 21:16:54 »
Hat es denn scon einmal funktioniert?
Was hat sich seitdem geändert?

Kann man den Fehler isolieren? Heißt, kann man den Fehler mit ein paar Zeilen Code reproduzieren, ohne dass der Code im Kontext der Applikation läuft?
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz