Beitrag von Thomas Fedder (333 Beiträge) am Dienstag, 13.Juni.2006, 10:52.
Fehlermeldung "Fehler beim Schliessen ..." / Import von Optionsfelder
Hallo,
zur Zeit bekomme ich auf dem Paket "stb-ratingen.de" die folgende Fehlermeldung nach einem Importieren von Datensätzen:
[ Fehler: Fehler beim Schliessen von /usr/local/httpd/baseportal/st/br/stb-ratingen.de/zeitschriftenkompass.lock ]
Es scheint ansonsten alles klar zu sein, ausser das Optionsfelder nicht mit Inhalt gefüllt werden.
Felddefinition:
01
02
03
04
06
Die Inhalte des Feldes sind so aufgebaut:
01 02 03
(bzw. anders, z.B. 03 04 06)
1) O.G. Fehler - zu ändern?
2) wie importiere ich Inhalte von Optionsfelder?
Danke
Antworten
Beitrag von Christoph Bergmann (8110 Beiträge) am Dienstag, 13.Juni.2006, 13:25.
Re: Fehlermeldung "Fehler beim Schliessen ..." / Import von Optionsfelder
Ging das Importieren der Optionsfelder denn als die Fehlermeldung nicht kam?
Antworten
Beitrag von Thomas Fedder (333 Beiträge) am Dienstag, 13.Juni.2006, 16:37.
Re: Fehlermeldung "Fehler beim Schliessen ..." / Import von Optionsfelder
Hi,
danke, die Fehlermeldung kommt nicht mehr.
Da die Fehlermeldung seit Anfang der Erstellung (also heute morgen) kam, kann ich deine Frage nicht beantworten.
Wie muss das Feld in der CSV Datei aussehen, damit es ausgelesen und in BP das Optionsfeld mit Inhalt gefüllt wird?
Nochmal:
Felddefiniton:
Zeilen=5, Werte=01 02 03 04 06
Eingabe in Excel
01 02 03
01<br>02<br>03
01,02,03
Alles funktioniert nicht, kein Wert wird bei Importierung in BP eingetragen.
Danke
Antworten
Beitrag von Christoph Bergmann (8110 Beiträge) am Dienstag, 13.Juni.2006, 17:51.
Re: Fehlermeldung "Fehler beim Schliessen ..." / Import von Optionsfelder
Wie siehts denn aus, wenn Du die Felder mit baseportal füllst und dann exportierst und dann in Excel importierst? Also was für Werte stehen da drin?
Antworten
Beitrag von Thomas Fedder (333 Beiträge) am Dienstag, 13.Juni.2006, 18:05.
Re: Fehlermeldung "Fehler beim Schliessen ..." / Import von Optionsfelder
Hi,
dann steht da 01<br>02<br>03
Wenn ich nun in Excel den Inhalt der Felder so schreibe und das ganze dann importiere, wird das Optionsfeld nicht ausgefüllt. Auch nicht bei den Datensätzen, die ich vorher mit BP so ausgefüllt hatte.
Es scheint so, als könnte ich Optionsfelder nicht über eine Excel/csv Datei füllen.
Danke
Antworten
Beitrag von Thomas Fedder (333 Beiträge) am Dienstag, 13.Juni.2006, 18:20.
Import von Optionsfelder - Nachtrag
Hi,
vielleicht habe ich mich undeutlich ausgedrückt:
In der Übersicht der Datensätze (DS) in BP steht schon der Wert, der mit Excel übertragen wurde.
Wenn ich jetzt aber den DS ändern will, muss ich die Werte erneut markieren. Sie sind also im Änderungsmodus noch nicht markiert.
Danke
Antworten
Beitrag von mk (966 Beiträge) am Dienstag, 13.Juni.2006, 21:27.
Re: Import von Optionsfelder - Nachtrag
welchen wert hat das Optionsfeld?
1 oder ja wenn es an sein soll?
Feldeigenschaften und dass was in exel drinn steht sollte schon gleich sein.
exel macht 1 als Ausgabe,
bei baseportal ist normalerweise ja drinn.
Und schon passt es nicht.
Antworten
Beitrag von Thomas Fedder (333 Beiträge) am Dienstag, 13.Juni.2006, 23:46.
Re: Import von Optionsfelder - Nachtrag
Hi,
Also:
In BP gebe ich als Optionen ein: (Mit gedrückter Strg Taste)
01 02 03
Möglich wären aufgrund der Felddefinition
01
02
03
04
05
Wenn ich den Datensatz exportiere erhalte ich in Excel
01<br>02<br>03
Wenn ich denselben Datensatz wieder importiere, sind wenn ich in den Ändermodus gehe, keine Optionen markiert.
Alles klar?
1) Wie muss ich also in Excel die Inhalte reinschreiben, damit sie im Änderungsmodus markiert sind?
2) Oder geht das gar nicht? (Das glaube ich zumindest mittlerweile)
TF
Antworten
Beitrag von Christoph Bergmann (8110 Beiträge) am Mittwoch, 14.Juni.2006, 00:35.
Re: Import von Optionsfelder - Nachtrag
Mmh, ist es möglich, dass Du in Excel "Returns" eingibst? Also ein Feld den Inhalt
hat?
Antworten
Beitrag von Thomas Fedder (333 Beiträge) am Mittwoch, 14.Juni.2006, 08:02.
Re: Import von Optionsfelder - Nachtrag
Hi,
ich gebe in Excel keine Returns ein (Meines Wissens Return Taste zusammen mit Strg)
Nein:
Ich exportiere eine Datenbank, in der ich zuvor bei einem Datensatz die Option in BP eingestellt und habe will nun in Excel die CSV Datei soweit vorbereiten, dass ich sie nur noch in BP importieren muss (und dabei BP die Option im Änderungsmodus erkennen soll.
Es scheint wohl keine Lösung zu geben, oder??
TF
Antworten
Beitrag von Thomas Fedder (333 Beiträge) am Mittwoch, 14.Juni.2006, 10:10.
Re: Import von Optionsfelder - Nachtrag 2
Hi,
da ich dachte, das die Probleme evtl. mit der vorherigen Fehlermeldung zusammenhängen könnten, habe ich mal eine neue DB gemacht.
Nur 1 Optionsfeld, 3 Datensätze angelegt, exportiert.
Rauskam
01<br>05
01<br>02<br>03<br>04
01<br>04
Hinzugefügt habe ich die Zeile
01<br>02<br>05
Das ganze dann abgespeichert und in BP importiert.
Das gleiche Problem: Wenn ich in BP einen Datensatz ändere, muss ich alle Optionen wieder anklicken.
Ist das Normal?
Danke
Antworten
Beitrag von hempelr (1976 Beiträge) am Mittwoch, 14.Juni.2006, 15:02.
Re: Import von Optionsfelder - Nachtrag 2
Nach meiner Erfahrung geht das nicht für mehrzeilige Optionfelder - egal wie mans dreht oder wendet...und was für Bocksprünge man in der CSV-Datei versucht zu machen.
Es liegt offenbar an nem Bug in der BP-Importfunktion, wo aus den br's im Optionfeld keine NewLine-Zeichen gemacht werden - beim Export werden aus den NewLine-Zeichen die br's generiert.
Mit eigenen Formularen fürs Ändern kann man das umgehen, indem man ein Sonderzeichen, welches halt definiert werden muss durch ein \n beim Abspeichern ersetzen lässt (Tipp: es muss geprüft werden, ob das zu schreibende Feld vom Typ Option ist und nur dann das vereinbarte Zeichen bzw. Zeichengruppe ersetzen lassen)
Antworten
Beitrag von Thomas Fedder (333 Beiträge) am Mittwoch, 14.Juni.2006, 22:58.
Re: Import von Optionsfelder - Nachtrag 2
Hallo Ruben,
danke für die Antwort.
Das hatte ich vermutet.
Falls Christoph diesen Bug nicht beseitigt, muss ich wohl in allen Datensätzen dieses Feld manuell belegen bzw. mir was anderes ausdenken.
Danke
ciao
TF
Antworten
Beitrag von Christoph Bergmann (8110 Beiträge) am Donnerstag, 15.Juni.2006, 11:58.
Re: Import von Optionsfelder - Nachtrag 2
Es ist kein "Bug", sondern eine Unzulänglichkeit des CSV-Formats.
Grund: "Returns" kann man beim CSV-Export nicht in Werten ausgeben, weil die die Zeilen voneinander trennen und es gibt auch kein Ersatzzeichen dafür. Deshalb die "<br>". Nun kann man beim Import aber nicht einfach alle "<br>" in "Returns" wandeln, weil es z.B. bei einem Textfeld mit HTML-Inhalt genau so gewünscht sein kann. Klar?
Ich würde einfach folgendes Skript nach dem Import ausführen:
<loop db=datenbank code=perl>
$Feld=~ s/<br>/\n/g;
mod "Id==$Id", ["Feld", $Feld], "datenbank";
</loop>
,-)
Antworten
Beitrag von Thomas Fedder (333 Beiträge) am Donnerstag, 15.Juni.2006, 14:02.
Re: Import von Optionsfelder - Nachtrag 2
Hi,
erst mal danke.
Funktioniert soweit, das Datensätze, in der nur eine Option steht, geändert werden.
Falls ein Datensatz aber mehrere Optionen hat, klappt es nicht.
Die DB heisst zeitschriftenkompass
Das zu ändernde Feld heisst vorhanden_in
Danke für die Hilfe
TF
Antworten
Beitrag von Christoph Bergmann (8110 Beiträge) am Donnerstag, 15.Juni.2006, 16:33.
Re: Import von Optionsfelder - Nachtrag 2
Hast Du das Skript denn mit "vohanden_in" statt "Feld" ausprobiert?
Antworten
Beitrag von Thomas Fedder (333 Beiträge) am Donnerstag, 15.Juni.2006, 16:56.
Re: Import von Optionsfelder - Nachtrag 2
Hi,
klar, das ist der Code:
<loop db=zeitschriftenkompass code=perl>
$vorhanden_in=~ s/<br>/\n/g;
mod "Id==$Id", ["vorhanden_in", $vorhanden_in], "zeitschriftenkompass";
</loop>
Antworten
Beitrag von Thomas Fedder (333 Beiträge) am Samstag, 17.Juni.2006, 07:37.
Re: Import von Optionsfelder - ENDE
Hi allerseits,
da es offensichtlich nicht möglich ist, Inhalte von multiplen Optionsfeldern zu importieren, habe ich die Datenbank umgestrickt.
Jetzt habe ich statt ein Optionsfeld 5 Checkboxen.
Zwar musste ich natürlich in Excel den Inhalt des Optionsfeldes auf die 5 Checkboxen verteilen, aber das war immer noch viel einfacher, als in BP (fast) jeden einzelnen Datensatz zu ändern und den Optionsinhalt einzustellen.
Wer schauen mag, hier meine Lösung:
http://www.stb-ratingen.de/cgi-bin/baseportal.pl?htx=/stb-ratingen.de/zeitschriftenkompass&localparams=1
(Zur Info: Option wäre besser gewesen, da das Daten Orginal - eine Excel Tabelle - in dem Feld vorhanden_in im Prinzip als Optionsfeld vorliegt - Alle genannten Standort hatten im Orginal ein Kürzel 01 02 03 04 06)
Wie oben umgesetzt geht es aber auch :-)
ciao
Antworten
Beitrag von Christoph Bergmann (8110 Beiträge) am Samstag, 17.Juni.2006, 21:38.
Re: Import von Optionsfelder - Nachtrag 2
Eigentlich müsste der Code so funktionieren...
Antworten
Beitrag von hempelr (1976 Beiträge) am Freitag, 16.Juni.2006, 10:43.
Re: Import von Optionsfelder - Nachtrag 2
Antworten
Beitrag von Christoph Bergmann (8110 Beiträge) am Mittwoch, 14.Juni.2006, 10:45.
Re: Import von Optionsfelder - Nachtrag
Ahso, das war nicht als Frage gemeint, sondern als Test: Versuch mal "1" (strg+return) + "2" + (strg+return) + ... etc. einzugeben und dann zu importieren...
Antworten
Beitrag von Thomas Fedder (333 Beiträge) am Mittwoch, 14.Juni.2006, 11:09.
Re: Import von Optionsfelder - Nachtrag
Hi,
ausprobiert, klappt leider nicht.
Die Tastenkombination war übrigens alt + return.
Noch eine Idee?
Danke
Antworten
Beitrag von Christoph Bergmann (8110 Beiträge) am Dienstag, 13.Juni.2006, 15:44.
Re: Fehlermeldung "Fehler beim Schliessen ..." / Import von Optionsfelder
So, Fehlermeldung sollte nicht mehr kommen...
Antworten