Generischer XML-Import: Felder doppelt

XML/CSV Import- und Exportfunktionen, webEdition XML Import - NICHT Backup
rhorbas
webEdition Gold Partner
webEdition Gold Partner
Beiträge: 205
Registriert: Do 1. Jan 1970, 02:00

Generischer XML-Import: Felder doppelt

Beitragvon rhorbas » Fr 17. Jun 2016, 12:21

Ich bekomme aus einem CMS (Censhare) eine XML-Datei, die ich mir nach den Feldern meiner Vorlagen umforme: (Auszug)

Code: Alles auswählen

<issue>
<article>
  <Seite>28</Seite>
  <teaser></teaser>
  <Description></Description>
  <autor></autor>
</article>
<article>(...)
</issue>
Die Vorlagen dazu sehen so aus (Auszug):

Code: Alles auswählen

<we:input type="text" name="Seite"/>
<we:input type="text" name="autor"/>
<we:input type="text" name="teaser"/>
und zwar für EditMode und NotEditmode.

Außerdem habe ich in der Hauptvorlage noch ein paar Felder wie <we:textarea name="css_extra" />.

Wenn ich die XML-Datei nun importieren möchte, werden mir die Feldnamen aus der gewählten Vorlagen und der Hauptvorlage angeboten. Da ich sie entsprechend in der XML-Datei benannt habe, sind sdie vorhandenen schon gewählt. Allerdings tauchen Felder wie "teaser" gleich mehrfach auf. Ich dachte, das sei kein Problem, aber tatsächlich werden die auch mehrfach geschrieben. Wenn man im Editmode der Artikel dann das Feld bearbeitet, hat man nur Zugriff auf eines dieser Felder, und in Listviews wird aber ein anderer Record ausgespielt.

Wähle ich beim Import nur eines der Felder, dann ist manchmal der Inhalt geschrieben, manchmal nicht.

Wie bekomme ich das in den Griff? Woher bezieht der Importdialog seine Feldnamen, und kann ich etwas tun, um die doppelte Belegung zu verhindern?

rhorbas
webEdition Gold Partner
webEdition Gold Partner
Beiträge: 205
Registriert: Do 1. Jan 1970, 02:00

Re: Generischer XML-Import: Felder doppelt

Beitragvon rhorbas » Fr 17. Jun 2016, 15:34

So, ich habe einen Workaround, um die Probleme zu vermeiden:

* ich habe eine neue Vorlage erstellt, die nur die Felder beinhaltet, die ich importieren will
* die Vorlage hat keine Hauptvorlage und keinen NotEditmode
* diese Vorlage habe ich dem Dokumenttypen als weitere Vorlage zugewiesen
* beim Zuordnen der Felder passt alles exakt und ist nur einmal vorhanden
* nach dem Import muss die Redaktion nur die Vorlage umstellen, fertig

Mich würde aber trotzdem interessieren, ob es ohne Workaround geht.

Zum Projekt: Das war ganz schön langwierig, hat sich aber gelohnt. Der Verlag benutzt für die Zeitschrift das CMS censhare, das kann XML exportieren, ein Dienstleister hat den Import nach unseren Wünschen angepasst (das war am langwierigsten). Weil die Datei immer noch nicht unseren Wünschen entsprach, habe ich ein Tool geschrieben, das sie uns dann entsprechend nachbearbeitet.
Vorher hat die Redaktion das Heft per Copy & Paste eingepflegt, das dauerte pro Ausgabe leicht mal 3-4 Stunden. Jetzt geht es in 10 Minuten (rund 70 Druckseiten).

AndreasWitt

Re: Generischer XML-Import: Felder doppelt

Beitragvon AndreasWitt » Fr 17. Jun 2016, 19:43

Hallo rhorbas,

danke für deine ausführliche Beschreibung. Derzeit haben wir in der Tat noch einige Probleme mit dem Im/Export-Modul. Einige davon werden bereits in der Version 7.0.1 behoben. Daneben ist noch mal ein umfangreiche Überarbeitung des Moduls in Version 7.1 geplant. Ich werde dein Thema gleich mal in der Bugbase aufnehmen, so dass wir das gleich mal mit testen können.

Grüße,

Andreas

rhorbas
webEdition Gold Partner
webEdition Gold Partner
Beiträge: 205
Registriert: Do 1. Jan 1970, 02:00

Re: Generischer XML-Import: Felder doppelt

Beitragvon rhorbas » Fr 17. Jun 2016, 20:15

Das wäre fein! :-)

Aktuell sieht es mir so aus, als ob der Import seine Feldnamen aus allen Erwähnungen der Felder in allen beteiligten Templates ziehen würde, egal ob die an der Seite beteiligt sind oder nicht.
Ich habe zum Beispiel in der Hauptvorlage im NotEditmode eine Stelle, die (in etwa) lautet:

Code: Alles auswählen

<we:ifTemplate id="70" comment="Inhaltsverzeichnis">
    <we:input type="text" name="Ausgabe" to="global" nameto="Ausgabe"/>
     (...)
</we:ifTemplate>
Und ich bin mir ziemlich sicher, dass dieses "Ausgabe" eines der überflüssigen Felder im Dialog ist (es taucht gleich mehrfach auf).

Vielleicht könnte man ja eine Option einbauen, ob die Hauptvorlage überhaupt mit einbezogen werden soll.

mokraemer
Senior Member
Beiträge: 3619
Registriert: So 8. Aug 2010, 01:23
Wohnort: Mainz

Re: Generischer XML-Import: Felder doppelt

Beitragvon mokraemer » Mo 20. Jun 2016, 14:12

@rhorbas: ja das ist sicherlich so. Der neue Tagparser wurde erst mit 6.3.0 eingeführt, aber unabhängig davon gibt es hier nur wenige Tags die man auswerten dürfte oder bei denen man das überhaupt kann. Es ist hier prinzipbedingt nicht möglich anders, als über das Namens-Attribut im Tag eine Zuordnung zu machen. Ohne mir das hier explizit angesehen zu haben, sind Blöcke nicht berücksichtigt oder als explizite Ausnahme speziell behandelt, anders ist das gar nicht möglich einen Import auf Dokumenten zu machen.

Allerdings sollten hier doppelte Feldbezeichner gefiltert werden, das werden wir dann mit dem vorhandenen Bug beheben.
webEdition-Kern-Entwickler

AndreasWitt

Re: Generischer XML-Import: Felder doppelt

Beitragvon AndreasWitt » Mi 22. Jun 2016, 19:19

... in der Version 7.0.1 sollte der Fehler jetzt behoben sein.

rhorbas
webEdition Gold Partner
webEdition Gold Partner
Beiträge: 205
Registriert: Do 1. Jan 1970, 02:00

Re: Generischer XML-Import: Felder doppelt

Beitragvon rhorbas » Do 23. Jun 2016, 13:11

Danke, ich teste das nächste Woche mal!


Zurück zu „Import- /Exportfunktionen“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 9 Gäste