Ergebnis 1 bis 12 von 12

Thema: EFG: Änderungen am Formular haben keinen Einfluss auf "Formular-Daten"

  1. #1
    Contao-Nutzer
    Registriert seit
    13.07.2011.
    Beiträge
    180

    Standard EFG: Änderungen am Formular haben keinen Einfluss auf "Formular-Daten"

    Hallo!

    Ich habe für einen Kunden ein schönes Formular erstellt, Typ "Automatic Form" (formauto; 1.0.9 stable). Da wir individuelle Mail-Bestätigungen und einen schönen XLS-Export der Daten benötigen haben wir zudem EFG (1.16.5 stable) eingesetzt. Das klappte bisher einwandfrei.

    Nun mussten wir auf Kundenwunsch hin das Formular um ein Feld erweitern, was soweit problemlos geklappt hat. Im Backend wird das neue Feld in der Detailansicht eines Datensatzes unter "Formulargenerator" einwandfrei angezeigt. Wenn ich nun aber die Formulardaten des Formulars unter "Formular-Daten" (EFP) aufrufe, dann fehlt da das entsprechende Feld. Auch im Export wird das Feld nicht angezeigt.

    Wir hatten das Problem schon einmal und haben es dann so gelöst, dass wir im Formulargenearator bei den Einstellungen des entsprechenden Formulars einfach eine neue Zieltabelle eingegeben haben. Danach waren die Felder auch bei den EFG-Anzeigen vorhanden. Aktuell ist das aber kein gangbarer Weg, denn wir haben schon einen rechten Haufen erfasster Formulardaten.

    Ich bin nun etwas ratlos. In der Datenbank ist das Feld vorhanden und die Seitenbesucher können das Formular und insbesondere das neue Feld auch problemlos ausfüllen, wobei die Daten korrekt gespeichert werden. Nur bei der Anzeige und beim Export via EFG haben wir Probleme. Gibt's hier eventuell irgend einen Caching-Mechanismus, den ich nicht kenne oder hat mir jemand sonst einen Tipp, wie ich das Problem beheben kann? Ich bin für jede Hilfe dankbar!

    Liebe Grüsse
    Peri

  2. #2
    Alter Contao-Hase Avatar von bizon
    Registriert seit
    16.06.2010.
    Beiträge
    1.125

    Standard

    Wir hatten das Problem schon einmal und haben es dann so gelöst, dass wir im Formulargenearator bei den Einstellungen des entsprechenden Formulars einfach eine neue Zieltabelle eingegeben haben. Danach waren die Felder auch bei den EFG-Anzeigen vorhanden.
    Das zeigt doch schon in die richtige Richtung. Einfach das Formular in den Einstellungen neu speichern, dann wird die Ausgabe der Formulardaten neu generiert.

  3. #3
    Contao-Nutzer
    Registriert seit
    13.07.2011.
    Beiträge
    180

    Standard

    Zitat Zitat von bizon Beitrag anzeigen
    Einfach das Formular in den Einstellungen neu speichern, dann wird die Ausgabe der Formulardaten neu generiert.
    Das ist nicht so einfach, denn in diesem Fall kriege ich die Fehlermeldung "Query error: Table 'xxx' already exists (CREATE TABLE ..." bei "Tabelle speichern" unter "Formulardaten speichern". Das heisst, hier kann ich scheinbar gar nicht speichern...

  4. #4
    Alter Contao-Hase Avatar von bizon
    Registriert seit
    16.06.2010.
    Beiträge
    1.125

    Standard

    Das funktioniert bei mir tadellos.
    D.h. der Fehler liegt evtl. in der Bezeichnung der Felder.
    Bei den Feldnamen verwende ich keine Umlaute, nur Kleinbuchstaben, keine Sonderzeichen außer Unterstrich, keine Leerzeichen.

  5. #5
    Contao-Nutzer
    Registriert seit
    13.07.2011.
    Beiträge
    180

    Standard

    Zitat Zitat von bizon Beitrag anzeigen
    D.h. der Fehler liegt evtl. in der Bezeichnung der Felder.
    Bei den Feldnamen verwende ich keine Umlaute, nur Kleinbuchstaben, keine Sonderzeichen außer Unterstrich, keine Leerzeichen.
    Meine Tabelle nutzt Buchstaben (klein und gross), Zahlen sowie den Underscore (Unterstrich). Könnte es daran liegen? Sollte aber wohl irgendwo dokumentiert sein, nicht?

  6. #6
    Alter Contao-Hase Avatar von bizon
    Registriert seit
    16.06.2010.
    Beiträge
    1.125

    Standard

    Sicher ist das dokumentiert. Contao nutzt MySql-Datenbanken und auf den MySql-Seiten kannst du nachlesen, was zu beachten ist. Konsquente Kleinschreibung der Tabellennamen umgeht alle evtl. möglichen Fallstricke.

    Zweite mögliche Fehlerquelle ist die Eingabe in die Tabellenfelder mittels copy und paste. Besonders wichtig dabei ist, auf durchgehende UTF-8 Codierung zu achten. Das bedeutet für Windows-Nutzer immer den Umweg über einen UTF-8 fähigen Editor.

  7. #7
    Contao-Nutzer
    Registriert seit
    13.07.2011.
    Beiträge
    180

    Standard

    Zitat Zitat von bizon Beitrag anzeigen
    Sicher ist das dokumentiert. Contao nutzt MySql-Datenbanken und auf den MySql-Seiten kannst du nachlesen, was zu beachten ist. Konsquente Kleinschreibung der Tabellennamen umgeht alle evtl. möglichen Fallstricke.
    OK, danke dir. Ich werde mir das zu merken versuchen.

    Im Moment wird die einzige Lösung für das Problem wohl sein, dass ich die Zieltabelle für das Formular neu definiere (und mich dabei an die von dir erwähnten Konventionen halte) und danach die bereits bestehenden Datensätze der "alten" Tabelle via SQL in die neue Tabelle kopiere. Würdest du mir da zustimmen oder habe ich was vergessen oder falsch gedacht?

  8. #8
    Alter Contao-Hase Avatar von bizon
    Registriert seit
    16.06.2010.
    Beiträge
    1.125

    Standard

    Schwer zu sagen, ob das reicht, weil ja die Ursache für den Fehler noch nicht bekannt ist. Warum soll eine bereits vorhandene Tabelle beim Speichern neu angelegt werden? Ich glaube dabei nicht, dass das von [efg] initiiert wird und [formauto] habe ich bisher nicht eingesetzt.

    Aber das wäre dann wohl das Ausschlussverfahren und wie die Tabelle angelegt und gefüllt wurde, kannst nur du selbst wissen.

  9. #9
    Contao-Nutzer
    Registriert seit
    13.07.2011.
    Beiträge
    180

    Standard

    Zitat Zitat von bizon Beitrag anzeigen
    Schwer zu sagen, ob das reicht, weil ja die Ursache für den Fehler noch nicht bekannt ist. Warum soll eine bereits vorhandene Tabelle beim Speichern neu angelegt werden?
    Ich werde das lokal mal ausprobieren indem ich das gleiche Teil nochmal anlege und dann mit den Tabellen- und Spaltennamen rumspiele, bis ich ein Formular ohne Fehlermeldung aktualisieren kann.

    Danke für deine Hilfe!

    Gruss,
    Peri

  10. #10
    Contao-Nutzer
    Registriert seit
    30.09.2009.
    Ort
    Bayern
    Beiträge
    201

    Standard

    mal ganz auf Verdacht:
    spielt da beim Export nicht auch das Modul Auflistung-Formulardaten eine Rolle?
    In dem Modul muss man die entsprechenden Felder aktivieren.
    Hatte das Problem vor kurzem auch.

    LG

    Karl

  11. #11
    Contao-Fan Avatar von tom
    Registriert seit
    16.06.2009.
    Ort
    Ludwigsburg
    Beiträge
    385

    Standard

    Hallo zusammen,

    Ich bin nun etwas ratlos. In der Datenbank ist das Feld vorhanden und die Seitenbesucher können das Formular und insbesondere das neue Feld auch problemlos ausfüllen, wobei die Daten korrekt gespeichert werden. Nur bei der Anzeige und beim Export via EFG haben wir Probleme. Gibt's hier eventuell irgend einen Caching-Mechanismus, den ich nicht kenne oder hat mir jemand sonst einen Tipp, wie ich das Problem beheben kann? Ich bin für jede Hilfe dankbar!
    nach Änderungen an oder Ergänzung von Formularfeldern im Formulargenerator muss das Formular selbst nochmals gespeichert werden.
    Erst dann werden auch die "Formular-Daten" entsprechend angepasst (beim Speichern des Formulars werden dca-Dateien für die "Formular-Daten" erstellt/aktualisiert).

    Das ist nicht so einfach, denn in diesem Fall kriege ich die Fehlermeldung "Query error: Table 'xxx' already exists (CREATE TABLE ..." bei "Tabelle speichern" unter "Formulardaten speichern". Das heisst, hier kann ich scheinbar gar nicht speichern...
    Der SQL-Fehler wird sicherlich nicht von EFG und nicht vom Contao Core verursacht, da beide keine Tabelle(n) erstellen.
    Vermutlich ist 'formauto' der Grund. Um das zu prüfen, würde ich mal vor dem Speichern des Formulars diese Erweiterung in den Systemeinstellungen deaktivieren (vermutlich gibt's dann keinen Fehler), anschließend wieder aktivieren.

    spielt da beim Export nicht auch das Modul Auflistung-Formulardaten eine Rolle?
    In dem Modul muss man die entsprechenden Felder aktivieren.
    Für den Export im Backend spielt das Modul Auflistung Formulardaten keine Rolle.

    Schöne Grüße
    Tom

  12. #12
    Contao-Nutzer
    Registriert seit
    13.07.2011.
    Beiträge
    180

    Standard

    Hi Tom

    Zitat Zitat von tom Beitrag anzeigen
    Der SQL-Fehler wird sicherlich nicht von EFG und nicht vom Contao Core verursacht, da beide keine Tabelle(n) erstellen. Vermutlich ist 'formauto' der Grund. Um das zu prüfen, würde ich mal vor dem Speichern des Formulars diese Erweiterung in den Systemeinstellungen deaktivieren (vermutlich gibt's dann keinen Fehler), anschließend wieder aktivieren.
    Vielen Dank für diesen Tipp! War genau so wie von dir vermutet und vorhergesehen. formauto deaktiviert, Formular gespeichert (kein Fehler mehr), formauto wieder aktiviert. Jetzt sind die Felder in der Detailanzeige und im Excel-Export vorhanden. Perfekt!

    Genial, dass du dich noch gemeldet hast, das hat mir Arbeit und vermutlich viel Ärger erspart. Vielen lieben Dank für deine Hilfe!!

    Gruss,
    Peri

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •