Probleme bei Import mit Feeds
am 03.02.2012 - 12:38 Uhr in
Hallo,
ich möchte mit Feeds "Publikationen" einfügen.
Das Problem ist, in dem Tutorial was ich geschaut habe werden nur texte und integer importiert.
"Publikation sieht etwas komplizierter aus: http://www.abload.de/img/publikation_struktur9opsg.png
Eine "Publikation" von Hand erstellen sieht so aus: http://www.abload.de/img/publikation_erstellenocpct.png
Ich glaube ich komme erst mal nur mit den Pflichfeldern aus, weil man ja auch von Hand nicht alles angeben muss?
Wenn ich Beim Mappen jetzt Datum auswähle bin ich allerdings etwas durcheinader: http://www.abload.de/img/mappenv7cu1.png
Ich habe zuerst mal Datatum: Start ausprobiert und diesem mit meiner CVS Datei nen Integer zugewiesen: http://www.abload.de/img/cvs_dateioti32.png
So funktioniert der Import aber noch nicht.
Meine Frage ist jetzt wie genau muss ich das Mappen bzw meine CVS datei aufbauen?
Gruß
- Anmelden oder Registrieren um Kommentare zu schreiben

up
am 06.02.2012 - 09:20 Uhr
up
niemand der mir helfen kann?
am 07.02.2012 - 16:20 Uhr
niemand der mir helfen kann? : /
tamper
am 07.02.2012 - 16:35 Uhr
Hallo,
ja das mit feeds import ist so eine Sache. Insbesondere das Datum ist nicht so einfach zu importieren. Für mich hat die Lösung mit dem tamperModul funktioniert. Ich habe Node via Feeds von D6 nach D7 importiert.
Hier eine allg. Info tamper module:
http://prezi.com/g6chbltwdcbx/drupal-data-migration-made-simple-with-feeds/
Für mich hat das so funktioniert:
1)
Für Datum einen View mit Datumsformat in D6 so anlegen: YmdHi
Dann Drupal Tamper in D7 einschalten!
2)
Taxonomie wird mi „“ nach D7 importiert!
http://drupal.org/node/1191812
3)
Berechtigungen checken!
4)
Tamp explode funktion verwenden und auf 0 einstellen
Ein Datum in dieser Form
am 07.02.2012 - 16:45 Uhr
Ein Datum in dieser Form 2007-07-17 07:30:49 habe ich mit Feeds problemlos als created Date importiert bekommen. Ich wandele allerding die CSV-Datei vor dem Import immer erst in das UTF-8 Format um, damit es mit Umlauten und akzentuierten Zeichen keine Probleme gibt.
Beste Grüße
Werner
wla schrieb Ein Datum in
am 08.02.2012 - 09:03 Uhr
Ein Datum in dieser Form 2007-07-17 07:30:49 habe ich mit Feeds problemlos als created Date importiert bekommen. Ich wandele allerding die CSV-Datei vor dem Import immer erst in das UTF-8 Format um, damit es mit Umlauten und akzentuierten Zeichen keine Probleme gibt.
Beste Grüße
Werner
wie machst du das denn? du gehst ja nicht wirklich auf meine Frage ein.
Das Problem ist ja, wie auf dem screenshot dargestellt, dass ich beim Import einmal Datum:start und einmal Datum:end angeben soll. Obwohl ich im Formular ausschließlich das Jahr eintrage und nicht den Monat uhrzeit usw...
Es steht nirgendwo, daß Du
am 08.02.2012 - 09:42 Uhr
Es steht nirgendwo, daß Du das eingeben sollst. Es gibt mögliche Targets im empfangenden Rekord. Intern speichert Drupal immer ein vollständiges Datum mit Tag, Monat und Jahr als auch mit Zeit. Bei einer Jahreszahl sieht das so aus yyyy-01-01 12:00:00. Für den Feed-Import reicht es nicht, nur die Jahreszahl anzugeben. Außerdem kann ein Datumswidget auch ein Enddatum haben. Deshalb sieht Feeds das vor. Du mußt dorthin aber nichts zuweisen.
Beste Grüße
Werner
@tamper ich versteh leider
am 08.02.2012 - 09:49 Uhr
@tamper ich versteh leider nur die hälfte von dem was du sagst. :)
Was meinst du mit du hast "Node" von Drupal6 nach Drupal7 importiert? Ich glaube wir haben schon Drupal 7 und was hat es mit "Node" auf sich?
Zu Tamper: Ich hab eigentlich nicht lust noch ein Modul zu lernen und zu installieren. Vor allem da mir hier im Forum Feed empfohlen wurde und so schwer ist das ja nicht was ich da machen möchte.
@ werner. Danke schonmal für
am 08.02.2012 - 10:13 Uhr
@ werner.
Danke schonmal für den tip.
ich hab meine csv datei jetzt so aufegebaut:
http://www.abload.de/img/csv_neuxlop5.png
und das mappen sieht so aus:
http://www.abload.de/img/mappen_neur8r3v.png
trotzdem hab ich noch den selben fehler: wenn ich import drücke kommt die seite mit "importing" und dann passiert garnix, keien fehlermeldung nix. :(
Gruß
Ich habe mir die Mühe gemacht
am 08.02.2012 - 12:07 Uhr
Ich habe mir die Mühe gemacht und mit Deiner vorgegebenen CSV-Datei auf einer Test-Installation das durchzuspielen. Das klappt ohne Probleme. Es gibt aber zwei Bedingungen für die CSV-Datei: UTF-8 Format und Unix-Zeilenenden!! Du brauchst einen Editor, mit dem Du das einstellen bzw. erzeugen kannst. (auf Windows-Systemen z.B. Notepad++). Dann klappt das auch.




:


Module:
Datentyp-Felder:
Datentyp-Anzeige:
Mapping:
Import-Bestätigung:
Inhalts-Auszug:
Node mit Titel erster:
Beste Grüße
Werner
Erst mal danke für die
am 08.02.2012 - 15:26 Uhr
Erst mal danke für die ausführliche Anleitung.
Funktioniert leider immer noch nicht :D
Ich geh mal Schritt für schritt durch:
- Module sind aktiviert
-Datentyp Felder sehen bei mir so aus:
http://www.abload.de/img/publikation_struktur6jktx.png
(wie gesagt es gibt mehr felder ich nehm aber nur die notwenidigen)
Datentyp anzeige sieht bei mir so aus:
http://www.abload.de/img/publikation_anzeigeny0jp2.png
(weiß nicht wieso du das gezeigt hast)
Meine Datei sieht so aus:
http://www.abload.de/img/csv_neup9jnb.png
(unten sieht man das das utf-8 ist)
Mein Mapping sieht so aus:
http://www.abload.de/img/mappen_neu75k9t.png
(ich weiß nicht warum er _0 hinten dran hängt)
Das imporiteren leider so:
http://www.abload.de/img/das_importierenz4j8v.png
(danach passiert nichts mehr)
stehe ungerne zeit aber ich weiß nicht wie ich mir selber weiterhelfen soll :/
Gruß
Das Zeilenende CR in der
am 08.02.2012 - 15:44 Uhr
Das Zeilenende CR in der CSV-Datei ist falsch. Das ist muß ein NL (newline oder \n in der Unix Beschreibung) sein. Die Windows-Variante hilft Dir da nicht.
Beste Grüße
Werner
okay,ich hab ncihts anders
am 08.02.2012 - 16:04 Uhr
Also laut wikipedia ist LF richtig.
http://de.wikipedia.org/wiki/Zeilenumbruch
So hab ich meine Datei aufgebaut:
http://www.abload.de/img/csv_neushkvn.png
funzt leider immer noch nicht :(
oder liegt das vieleicht garnicht an dem zeilenumbruch?
Gruß
OK, LF sollte richtig sein.
am 08.02.2012 - 16:07 Uhr
OK, LF sollte richtig sein. Ich kenne aber das Problem mit den falschen Enden. Dann klappt der Import nicht. Ich kann Dir meine Datei gerne hier bereitstellen, damit Du mit der Arbeiten kannst. Damit habe ich es ja geschafft.
Du mußt die Endung in csv ändern, da das Drupalcenter csv nicht zuläßt und ich deshalb txt nehmen mußte.
Beste Grüße
Werner
Also ich hab die Datei jetzt
am 09.02.2012 - 10:05 Uhr
Ich hab die Datei jetzt mit excel umgewandelt.
https://rapidshare.com/files/2142438392/testimport_neu_csv.csv
Funktioniert leider immer noch nciht. :(
kann es sein das man einfach noch mehr Informationen mappen muss?
Gruß
Die Datei ist jetzt aber
am 09.02.2012 - 11:16 Uhr
Die Datei ist jetzt aber nicht mehr UTF-8 formatiert. Ich kann nur sagen, daß ich die Datei bei mir importiert bekommen habe (mit UTF-8 und LF als Zeilenende). Nun mache ich das auch auf meinem Mac und der ist unter der Haube ja auch Unix-basiert. Ich kann Dir nicht sagen, was auf Deinem System den Import verhindert. Es gibt aber eine PHP-Variable, an der es noch liegen könnte allow_url_fopen muß auf On stehen. Das kannst Du ja noch mal auf der php_info-Seite überprüfen (Status-Seite > Link in der PHP-Zeile klicken).
Beste Grüße
Werner
Ja weiß ich leider auch nicht
am 09.02.2012 - 15:00 Uhr
Ja weiß ich leider auch nicht :)
https://rapidshare.com/files/362136819/testimport_csv.csv
jetzt ist es aber definetiv richtig... aber selbst mit dieser sehr speziellen datei geht es nicht.
wo finde ich diese status seite wo ich zur php_info seite komme?
Das findest Du unter
am 09.02.2012 - 16:34 Uhr
Das findest Du unter Verwalten > Berichte > Statusbericht.
Beste Grüße
Werner
ist
am 10.02.2012 - 09:26 Uhr
ist on:
http://www.abload.de/img/phpshjcj.png
dann kann es eigentlich nur daran liegen, dass ich den import falsch aufgebaut habe oder?
Oder gibt es noch eine andere möglichkeit sachen zu importieren?
Gruß
Bei Drupal 7 gibt es nur
am 10.02.2012 - 10:20 Uhr
Bei Drupal 7 gibt es nur Feeds. Bei Drupal 6 gibt es noch node_import. Ich glaube nicht, daß Du den Import grundsätzlich falsch aufgebaut hast. Das sieht mir eher nach Problemen mit Windows aus, aber da habe ich keine Ahnung. Ich kann am Wochenende mal versuchen ein Windows-System virtuell auf meinem Mac zu installieren und darein dann XAMPP. Mal sehen, wie sich das anfühlt.
Beste Grüße
Werner
Mein Admin hat gerade gesagt
am 10.02.2012 - 11:45 Uhr
Mein Admin hat gerade gesagt der Server läuft unter Unix.
Ich werd mal nen ganz einfach Inhaltstyp nur mit Ttitel und Beschreibung erstellen und es damit versuchen.
Gruß
Also gut ich bin noch mal
am 13.02.2012 - 14:15 Uhr
Also gut ich bin noch mal Schritt für Schritt dieses Tutorial durchgeangen:
http://atendesigngroup.com/blog/drupal-imports-using-feeds-module
Ich hab mir einen neuen Inhaltstyp erstellt dem ich ein Textfeld hinzugefügt habe (bla)
http://www.abload.de/img/test_inhalstyp_feldervajc1.png
Das einzige was halt auffällt, ist das dort schon 4 Felder standartmäßig definiert waren. Die haben keinen Typ und ich kann die auch nicht entfernen.
Titel kann ich noch identifizieren und das ist auch das einzige, was beim erstellen noch Pflichfeld ist:
http://www.abload.de/img/test_erstellenz8f8j.png
Als nächstes hab ich meine CSV-excel Datei mit Excel erstellt:
http://www.abload.de/img/inport_testlndax.png
Und sie über den Import versucht zu importieren:
http://www.abload.de/img/der_import2wiox.png
leider hab ich den selben Fehler wie vorher...
Ich weiß echt überhaupt nicht was ich noch ausprobieren kann oder woran es liegen könnte außer darn, das beim import noch informationen fehlen(diese 4 standart felder)
Gruß
Was ist bei Dir als
am 13.02.2012 - 14:23 Uhr
Was ist bei Dir als max_execution_time eingetragen? Evtl. hängt sich der Prozess dadurch auf, daß er nicht fertig werden kann in der vorgegebenen Zeit.
Beste Grüße
Werner
Local Value: 30 Master Value:
am 13.02.2012 - 14:35 Uhr
Local Value: 30
Master Value: 30
Kannst Du das erhöhen z.B.
am 13.02.2012 - 20:23 Uhr
Kannst Du das erhöhen z.B. auf 300 und tritt der Fehler beim Import dann immer noch auf? Wieviele Datensätze versuchst Du zu importieren?
Beste Grüße
Werner
Sind nur 4 Datensätze, würde
am 14.02.2012 - 09:33 Uhr
Sind nur 4 Datensätze, würde mich wundern. allerings weiß ich ja auch nicht was die 30 genau bedeutet.
Wie kann man das denn ändern?
Gruß
Bei 4 Datensätzen sollte es
am 14.02.2012 - 10:11 Uhr
Bei 4 Datensätzen sollte es da keine Probleme geben. 30 = 30 Sekunden Execution Time. Mir gehen zugegebener Maßen die Ideen aus.
Beste Grüße
Werner
Ja die "Fehlermeldung" ist
am 14.02.2012 - 10:23 Uhr
Ja die "Fehlermeldung" ist halt leider auch echt dürftig, das könnte ja fast alles sein.
An diesen vordefinierten Feldern bei den neuen Contenttypen die ich habe meinst du liegt das nicht(Versionsinformation usw.)? Weil bei dir, oder in dem Tutorial waren die nicht da.
Was kann ich noch selbstständig ausprobieren? Vieleicht den Feeds entwicklern mal ne Mail schreiben und fragen was das aufhängen beim Import bedeutet?
Gruß
Ich stehe gerade vor der
am 05.01.2013 - 17:39 Uhr
Ich stehe gerade vor der Aufgabe, ein CSV von einer fremden URL zu importieren.
Genauer gesagt handelt es sich um Belboon-Produktdaten von einem Job.
Ich laufe in das Utf8-Problem ein.
Es ist mir bekannt, weil ich es mit eigenen CSV-DAteien schon hatte.
Da habe ich aber von der eigenen Festplatte per Upload importiert und konnte die CSV vorher umwandeln.
Das kann ich bei den Belboon-Dateien nicht.
Gibt es eine Möglichkeit, den Feed dennoch zu zwingen?
schau mal feeds_tamper an
am 05.01.2013 - 17:53 Uhr
dort kann jeder Datensatz vor dem Speicher bearbeitet werden.
Dabei sollte auch eine Codierung möglich sein.
Wo ist "dort" ? Ich auf dem
am 05.01.2013 - 18:06 Uhr
Wo ist "dort" ?
Ich auf dem schlauch steh.;-)
in der Config
am 05.01.2013 - 18:12 Uhr
von feed_tamper kann jedes übertragene Feld angefasst und verändert werden.
Hmm...mit dem Tamüer würge
am 05.01.2013 - 20:43 Uhr
Hmm...mit dem Tamper würge ich auch schon ne Weile rum.
Ich finde nicht, mit welchem Plguin man das Utf8-Encoding machen kann.
Gibts da kein Plugin, das Umwandlungen mit PHP erlaubt?
Ich habe auch einen Anwendungsfall, wo ich einen Wert mit einer Datenbanksuche in einen anderen Wert umwandeln will.
Ah, ich sehe gerade, man kann
am 07.01.2013 - 18:07 Uhr
Ah, ich sehe gerade, man kann sich so ein Plugin relativ leicht selbst schreiben.
Und hier ist auch ein Beispiel:
http://drupal.org/node/951336
----editiert-----
das o.g. Plugin verursacht bei mir seltsame Fehler.
Ich arbeite nun mit diesem hier:
http://drupal.org/node/1297968
Oder du nimmst "Migrate"!Bei
am 05.01.2013 - 23:00 Uhr
Oder du nimmst "Migrate"!
Bei dem Modul ist es zwar etwas aufwändig sich einzuarbeiten aber es ist sehr mächtig und damit kannst du alles importieren. Direkt aus der Datenbank (wenn auf dem selben Server), aus einer CSV oder oder oder ...
Ich dachte immer, Migrate ist
am 06.01.2013 - 13:35 Uhr
Ich dachte immer, Migrate ist eher was für einmalige Vorgänge.
Ein wichtiges Feature von Feeds ist, daß ich ein beliebiges Feld als GUID definieren kann und dann Upates auf vorhandene bzw. Inserts auf neue Einträge machen kann.
Geht das mit Migrate auch?
Puh...jetzt habe ich mich so schön eingearbeitet in Feeds (womit ich auch gerade Inhalte von Drupal 6 auf 7 geschauftelt habe beim Upgrade)....
Nun habe ich ein Custom - Plugin für PHP (Tamper-Modul) in Verwendung und kann damit die Werte utf9-Encoden.
Soweit so schön.
Bleibt nur ein Problem:
Der Import bleibt hängen mit Hinweis Import 5% erledigt.
Dann muß ich das Unlock-Button betätigen.
Beim nächsten Versuch passiert genau das Gleiche.
Lösungshinweise sind willkommen.
Ich versuche es aber auch noch weiter.
(Ich hoffe, es ist OK, daß ich den Thread okkupiert habe ;-))
Dann ist Deine
am 06.01.2013 - 13:42 Uhr
Dann ist Deine max_execution_time in PHP zu klein für diese Aufgabe. Wie groß ist die gesetzt und wieweit kannst Du sie vergrößern?
Beste Grüße
Werner
Leider bringt das nichts,
am 06.01.2013 - 14:01 Uhr
Leider bringt das nichts, Werner.
Hab gerade noch mal nachgeschaut und mit phpinfo() überprüft.
max_execution_time stand auf 600.
Habe's jetzt versuchsweise auf 0 gesetzt und wo ich gerade schon mal dabei war noch diese Werte gesetzt:
php_value memory_limit 500Mphp_value max_input_time 600
php_value upload_max_filesize 100MB
Es bleibt bei 5%.
Gibt Feeds eine
am 06.01.2013 - 14:35 Uhr
Gibt Feeds eine Error-Information und wenn ja welche? Was ist der letzte importierte Datensatz? Welcher ist der nächste in der Liste? Wie/wodurch unterscheidet sich der letzte importierte Datensatz vom nächsten?
Um die kritische Stelle herum 5-10 Datensätze herausziehen und als neuen Feed importieren. Was passiert dann? Gibt es dabei Fehlermeldungen?
Du mußt da schon ein paar mehr Untersuchungen starten.
Beste Grüße
Werner
5% ist übrigens gelogen. Ich
am 06.01.2013 - 14:36 Uhr
5% ist übrigens gelogen.
Ich habe die vorhandenen Einträge noch mal rausgelöscht und es werden gar keine Datensätze eingelesen, auch nicht 5%.
Versuchsweise das ganze mit lokalem Upload getestet:
Wenn ich eine eingeschränkte Anzahl von Datensätzen verwende, dann funktioniert der Upload wunderbar.
Wenn ich die volle Datei verwende (1,5 MB bzw. 1025 Datensätze), dann kommt die Fehlermeldung mit 5%.
Zur Einstellung in der .htacess gibts auch noch Interessantes zu berichten:
Wenn ich die Einstellung
php_value upload_max_filesize auf 50 MB setze, dann kommt die Meldung:
Die Datei productdata116745.csv konnte nicht gespeichert werden, weil die maximal zulässige Größe von 50 MB für hochgeladene Dateien überschritten wurde.Das Spiel kann ich jetzt wiederholen und den Wert hochsetzen.
Die Meldung wird dann einfach angepasst. Bei 500 MB habe ich aufgehört zu testen.
Macht ja wenig Sinn, bei einer Detei mit 1,5 MB.
Wenn ich php_value upload_max_filesize auskommentiere, dann kommt die 5%-Meldung.
Ich blicks irgendwie nicht...
Hat sich überschnitten,
am 06.01.2013 - 14:49 Uhr
Hat sich überschnitten, Werner...
Wie geschrieben.
Feed gibt nur ne Fehlermeldung aus, wenn ich in der .htaccess einen Wert für upload_max_filesize setze.
Andernfalls nicht.
Die Versuche, welches die Kritische Datenmenge bzw. vielleicht sogar ein kritischer Datensatz ist, werde ich jetzt mal angehen...
Aber erst mal an die frische Luft ;-)
Die kritische
am 06.01.2013 - 15:08 Uhr
Die kritische Datensatz-Anzahl beträgt lächerliche 53 Stück.
Ich habe versuchsweise den Range von 50-60 eingelesen.
Kein Problem.
Es liegt also nicht an dem Datensatz Nr. 53 sondern an der Anzahl.
Naja, jetzt mache ich mich erst noch mal auf die Suche, ob es dazu schon Posts gibt.
Gott wie primitiv. Hat mich
am 06.01.2013 - 19:14 Uhr
Gott wie primitiv.
Hat mich nur eine Stunde lokales Debuggen gekostet ;-)
Ich hatte in den Einstellungen angehakt:
Import on submission
und
Process in background
In dem letzteren Fall greift die Konstante
define('FEEDS_PROCESS_LIMIT', 50);
die man so überschreiben kann.
http://drupal.org/node/1393450
Versuchsweise habe ich den Haken bei Process in background entfernt und schon können alle Datensätze eingelesen werden.
Natürlich soll später der Prozess nicht mehr händisch via der Seite www.meinedomain.de/import angestoßen werden, sondern per Cron.
Da muß ich mich dann noch mit den Feinheiten beschäftigen und auf welchen Wert ich die Variable am Besten setze.