Date: prev next · Thread: first prev next last
2012 Archives by date, by thread · List index


Hallo Robert,

so langsam lichtet es sich.

Robert Großkopf schrieb:

Ich markiere "Primärschlüssel erzeugen". Dann wird zusätzlich zu den
Datenbankfelder, die sich aus den Calc-Spalten ergeben, ein weiteres
Feld in der Datentabelle angelegt. Inhaltlich macht dies natürlich nur
Sinn, wenn man in Calc noch keine Spalte hat, die Primärschlüssel werden
soll. Ein Text "Es sind bereits folgende Felder als Primärschlüssel
gesetzt ..." erscheint überhaupt nicht.

Bei mir existiert in Calc dieses Feld schon. Und das ist wohl der
Unterschied, auf den der Assistent nicht vorbereitet ist.

Ja, so kann ich die Fehlermeldung auch erzeugen. Im Quelltext steht dazu als Kommentar
"// now we have to check if the name of the primary key already exists"
Und das beschreibt genau um was es geht. Der Benutzer hat einen Namen gewählt, der nicht als _neues_ Datenfeld möglich ist, weil es schon existiert.

Der Bug liegt also darin, dass ein falscher Text ausgegeben wird. Beim Implementieren war wohl jemand zu faul einen neuen, wirklich treffenden Fehlertext zu erzeugen und hat einfach einen oberflächlich geeigneten benutzt. Es müsste also im Quelltest geändert werden, es ist kein Übersetzungsproblem.

 Gebe ich
dieses Feld als Primärschlüssel an (Primärschlüssel erzeugen - Name
"Feldname aus Calc"), so erscheint genau die Fehlermeldung.

Dass eine Fehlermeldung erzeugt wird ist richtig, der Text ist aber irreführend.



An der Stelle gehe ich dann natürlich davon aus, dass intern so ein
Primärschlüssel bereits aus dem Import ausgelesen wurde. Ist aber nicht
der Fall.

Richtig, es wird intern nur geguckt, ob der eingegebene Name mit den zu importierenden Spalten kollidiert.


Für den Fall, dass ich keine Spalte aus Calc ausgewählt habe,
funtkioniert das auch.

Was meinst du mit "keine Spalte aus Calc ausgewählt"? Du kannst auf der
ersten Seite des Assistenten gar keine Spalte aus Calc auswählen. Du
kannst nur sagen "Ich möchte ein neues Datenbankfeld für einen
Primärschlüssel haben" oder "Kein neues Datenbankfeld anlegen, ich habe
schon eins, das Primärschlüssel werden soll."

Nein, ich kann anklicken: "Primärschlüssel erzeugen" und dann einen
Primärschlüssel mit Namen benennen. Von einem neuen Datenbankfeld sehe
ich da nichts. Dann ist der Text des Assistenten irreführend. Aus diesem
Grunde gebe ich den Namen des Feldes an, das ich in Calc bereits dafür
vorgesehen habe.

Der Assistent meldet mir dann ja auch, dass das Feld existiert - weil er
wohl so zu deuten ist, wie Du es angibst. Er meldet mir aber, dass es
'als Primärschlüssel gesetzt' ist. Vielleicht auch dies eine Irreführung?

Ja. Der Text beschreibt überhaupt nicht worin der Fehler liegt. Da die Datenbank-Handhabung sowieso schon schwer genug ist, sollte das verbessert werden -> Issue schreiben.



Ich klicke mich weiter durch und finde mit Deiner Anleitung jetzt auch
die Möglichkeit, über das Kontextmenü den Primärschlüssel zu erstellen -
der natürlich nicht existiert.

Was meinst du mit "der natürlich nicht existiert"? Eine Calc-Tabelle ist
eben keine Datenbank. Natürlich gibt es "Primärschlüssel" in Calc nicht.
Deshalb hast du hier im Assistenten ja die Möglichkeit, die
Primärschlüssel-Eigenschaft zu setzen, entweder indem du ein neues
Datenbankfeld hinzufügst oder indem du ein durch den Import erzeugtes
Datenbankfeld zum Primärschlüssel kürst.

Diese Kür hatte ich auf das erste Fenster des Assistenten gelegt. Dort
klappt sie auch für ein neues Feld, das noch nicht vergeben ist. Für ein
neues Feld benötige ich auch keinen nachträglichen Eintrag in einem der
folgenden Fenster.
Für die Übernahme eines Feldes aus meiner Tabelle als Primärschlüssel
muss ich den Weg gehen, den Du beschreibst. Dieser Primärschlüssel wird
sonst nicht erzeugt.

  Folglich ist die Meldung im ersten
Fenster des Assistenten ein Bug.

Dass eine Fehlermeldung erscheint ist richtig, der Text der Meldung ist falsch. Da das frühestens zu 3.6 verbessert wird, solltest du im Handbuch schreiben, dass der Text der Fehlermeldung irreführend ist, und die richtige Erklärung des Fehlers ergänzen.


Beschreibe mal Schritt für Schritt wie du zu der Meldung kommst. Bei mir
(LO3.5.2) erscheint sie nicht.

Ich habe hier LO 3.5.3, teste das aber gleich noch einmal mit der 3.3.4

Wieder: Wenn ich keinen Primärschlüssel aus meiner Tabelle nehme steht
hier automatisch jetzt der Primärschlüssel vorgewählt.


Für Deine Variante: Der Primärschlüssel ist im ersten Fenster gesetzt und
steht hier bereits fest. Ich brauche nichts mehr einzustellen. Das
Kontextmenü wird also für diesen Fall nicht benötigt.

Für meinen Fall benötige ich jetzt das Kontextmenü - weil es im ersten
Fenster nicht funktioniert.



Ich sehe keine Möglichkeit, aus dem Feld ein Auto-Wert-Feld zu
erstellen. Dabei ist 'Integer' vorgewählt. Folglich wird die Tabelle
auch ohne Auto-Wert erstellt. Für diese Funktion muss also die Datenbank
anschließend aufgerufen werden.

Das ist richtig. "Primärschlüssel" bedeutet ja auch nicht automatisch
"Autowert". Stell dir vor du nimmst die Sozialversicherungsnummer oder
die Personalausweiskennung als Primärschlüssel, Autowert macht da ja
wohl keinen Sinn.

Das stand nur so in dem ooowiki:
"Dialog Tabelle kopieren: Tabellenname eintragen, die Option Definition
und Daten aktiviert lassen. Wenn Ihre Datensätze noch kein eindeutiges
Merkmal enthalten, sollten Sie die Option Primärschlüssel erzeugen
aktivieren um die Daten später bearbeiten zu können. Es wird dazu ein
neues Auto-Wert-Feld mit dem angegebenen Namen angelegt. Existiert solch
ein eindeutiges Merkmal, legen Sie den Primärschlüssel im Dialog
Typformatierung fest."

Der Auto-Wert funktioniert auch nicht, wenn ich keine Spalte aus Calc
als Primärschlüssel wähle.

Du meinst das zusätzlich erzeugte Datenbankfeld wird nicht automatisch
auf "Autowert" gesetzt? Da könnte man drüber diskutieren, ob man das
haben möchte, wäre ein Enhancemant request.

Es müsste nicht automatisch da sein. Es müsste für ein Integer-Feld nur
setzbar sein. Aber das ist wirklich eine Sache nur am Rande.

Für mich hat dieser Import sowieso nur eine Bedeutung in Hinblick auf
das Base-Handbuch. Wenn ich etwas in eine Datenbank importiere lege ich
lieber vorher die Tabellen fest und importiere nur die Daten.

Der Wiki-Text müsste in der Tat überarbeitet werden. Ich habe gerade probiert, dass es auch mit Zeichensatz bei drag&drop keine Probleme mehr gibt, zumindest Griechisch wird problemlos richtig erkannt. Und auch das Datum ist jetzt in Ordnung.

Mit freundlichen Grüßen
Regina


--
Informationen zum Abmelden: E-Mail an discuss+help@de.libreoffice.org
Probleme? http://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/discuss/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.