🙏 Helfen Sie jetzt mit, unser LibreOffice Forum zu erhalten! 🙏
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱

🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀

❤️ DANKE >> << DANKE ❤️

>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

Ungültiger Deskriptor-Index

Base ermöglicht es Ihnen, Ihre Daten in einer Datenbank direkt mit LibreOffice zu bearbeiten.
Antworten
bjoern.schreiter
Beiträge: 26
Registriert: So 19. Jan 2020, 00:04

Ungültiger Deskriptor-Index

Beitrag von bjoern.schreiter » Mi 19. Feb 2020, 23:39

Ich habe eine sehr gut funktionierende komplexe MySQL-Datenbank, die ich über Formulare in Libre-Office bearbeite.
Bis LO6.0.4.2 kein Problem. Ab 6.1 bekomme ich beim Öffnen der Formulare die Meldung "Die Dateninhalte konnten nicht geladen werden. Fehlender Deskriptor-Index". Bei den Details steht: "Sie haben versucht, an Position '1' einen Parameter einzufügen, es ist/sind aber nur '0' Parameter erlaubt. Eine Ursache könnte sein, dass die Eigenschaft "ParameterNameSubstitution" in der Datenquelle nicht auf WAHR gesetzt ist.".
Die Inhalte von Unterformularen werden nach Wegklicken der Meldung nicht angezeigt.
Was könnte die Ursache sein? Wie bekommt man das behoben? Es betrifft alle meine Formulare.

RobertG
* LO-Experte *
Beiträge: 2884
Registriert: Sa 19. Mai 2012, 17:37
Kontaktdaten:

Re: Ungültiger Deskriptor-Index

Beitrag von RobertG » Do 20. Feb 2020, 16:10

Hallo Bjoern,

bei welcher der Verbindungen ist das? Direkter Treiber, ODBC oder JDBC?

Entweder gibt es die Möglichkeit, etwas über die "Erweiterten Einstellungen" > "Besonderen Einstellungen" der Datenbank zu machen (Benannte Parameter durch '?' ersetzen) oder es ist der folgende Bug, der sich irgendwie eingeschlichen hat, und dessen Workaround im überarbeiteten Handbuch steht:
Leider sind manchmal nicht alle möglichen erweiterten Einstellungen tatsächlich in der GUI verfügbar. Gegebenenfalls kann dann der Zugriff auf die in der *.odb-Datei befindlichen content.xml helfen. Hier ein Beispiel, das gerade beim Umstieg von LO 6.0 zu LO 6.1 Probleme bereitete: Unterabfragen in MySQL waren nicht mehr möglich, weil die Weitergabe des verbindenden Wertes (Parameter) unterbunden wurde.
Der nicht funktionierende Code:

Code: Alles auswählen

<db:driver-settings db:system-driver-settings="" db:base-dn="" db:parameter-name-substitution="false"/>
Wird dieser Code geändert auf

Code: Alles auswählen

<db:driver-settings db:system-driver-settings="" db:base-dn=""/>
.
So funktionieren die Unterformulare wieder mit der *.odb-Datei.
Gruß

Robert
https://de.libreoffice.org/get-help/documentation/
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare

bjoern.schreiter
Beiträge: 26
Registriert: So 19. Jan 2020, 00:04

Re: Ungültiger Deskriptor-Index

Beitrag von bjoern.schreiter » Do 9. Jul 2020, 10:29

Hallo Robert, hatte das Thema schieben müssen und erst mal mit der alten Version weiter gearbeitet. Jetzt wird es akut, da die 6.0 nicht mehr mit Windows 10 2004 funktioniert.
Meine .odb-Datenbank-Datei baut eine Verbindung zur MySQL-Datenbank auf dem Server auf. Wo kann ich die context.xml finden oder gibt es die bei meiner Konstellation gar nicht?

bjoern.schreiter
Beiträge: 26
Registriert: So 19. Jan 2020, 00:04

Re: Ungültiger Deskriptor-Index

Beitrag von bjoern.schreiter » Do 9. Jul 2020, 10:45

Hat sich erledigt. ODB umbenannt in ZIP...

RobertG
* LO-Experte *
Beiträge: 2884
Registriert: Sa 19. Mai 2012, 17:37
Kontaktdaten:

Re: Ungültiger Deskriptor-Index

Beitrag von RobertG » Do 9. Jul 2020, 11:19

Hallo Björn,

da mich diese Einstellung inzwischen bei jeder Umwandlung von einer HSQLDB zu einer internen Firebird Datenbank nevrt habe ich hier ein kleines Makro. Das erledigt das Ganze, einmal von der Datenbank aus aufgerufen, auch:

Code: Alles auswählen

SUB FB_Parameter
DIM oSettings AS OBJECT
oSettings = ThisComponent.DataSource.Settings
oSettings.ParameterNameSubstitution = True
END SUB
Gruß

Robert
https://de.libreoffice.org/get-help/documentation/
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare


An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:


Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.



Antworten