Die Bestandteile
Ein INQUIRY-Formular mit Upload besteht aus bis zu acht Dateien. Die Namen im Beispiel sind frei gewählt, die Zusammenhänge dazwischen nicht.Die Namenskette
Diese acht Dateien verweisen aufeinander. Jeder dieser Verweise ist eine Stelle, an der ein Tippfehler die Funktion still abschaltet. Die folgende Tabelle ist deshalb die eigentliche Arbeitsgrundlage dieser Seite.Schritt 1: Freischaltung
Lassen Sie das Upload-Modul von der WEBSALE AG freischalten und klären Sie dabei folgende Punkte.
Die Option “Abschluss je Bestellposition” aus der Bestellvariante entfällt hier. Ein Formular hat keine Bestellpositionen.
Schritt 2: Die Shopkonfiguration ergänzen
Schritt 3: Das Formular in eine Shopseite einbinden
WS-ExternInclude() ruft das Formularprogramm auf und übergibt ihm die Formularkonfiguration.
Schritt 4: Die Formularkonfiguration anlegen
Legen Sie im Online-Servicebereich unter “Konfigurationen für Formulare (Inquiry)” die Dateianmeldung.config an.
Darin legen Sie die Templates, die Adressfelder und die E-Mails fest. Für den Upload kommt ein eigener Abschnitt hinzu.
Descr bestimmt die Beschriftung im Formular und ist unabhängig vom technischen Feldnamen. Im Beispiel trägt das Feld für den Nachnamen die Beschriftung “Firma”, denn in einem B2B-Formular gibt der Kunde seinen Firmennamen ein.
Passen Sie CountryDat an, wenn Ihr Subshop eine andere Sprache hat. Der Pfad zeigt auf die Länderliste, aus der die Auswahlliste im Formular entsteht.
Für zusätzliche Felder, die keine Adressfelder sind, gibt es <+CommonInput>.
Schritt 5: Das Eingabetemplate anlegen
Der Name muss zuInquiryPage passen. Der gesamte Inhalt steht in der Klammerung WS-Include und wird über den Aufruf aus Schritt 3 in die Shopseite eingesetzt.
_descr für die Beschriftung, _name für den Feldnamen, _input für die ID, _max für die Längenbegrenzung und der Feldname ohne Zusatz für den eingegebenen Wert. Die Klammerung _error markiert das Feld im Fehlerfall.
Der Upload läuft in einem iframe, weil er ein eigenes Programm mit eigenem Formular ist. Er kann deshalb nicht Teil des Adressformulars sein. Das ist der Grund für die etwas umständliche Konstruktion mit der Höhenanpassung in Schritt 8.
Für das Feld A-Country gibt es mit _list ein fertiges Auswahlfeld. Dort steht kein eigenes input-Element.
Referenz: WS-Include · FORM-SSLTemplate()
Schritt 6: Das Bestätigungstemplate anlegen
Der Name muss zuConfirmPage passen.
Schritt 7: Die Upload-Konfiguration anlegen
Legen Sie an derselben Stelle im Online-Servicebereich die Dateianmeldung_upload.config an. Der Name muss zu UploadIni aus Schritt 4 passen.
Extensions ist eine Positivliste. Was nicht darin steht, wird abgewiesen. Nehmen Sie nur auf, was Sie wirklich verarbeiten können, und denken Sie an beide Schreibweisen gebräuchlicher Endungen, beispielsweise TIF und TIFF.
Der Abschnitt <UploadMessages-Txt> kennt deutlich mehr Einträge als hier gezeigt. Viele davon betreffen ausschließlich den Upload zu Bestellungen und erscheinen bei einem Formular nie, beispielsweise alles rund um Upload-ID und Bestellpositionen. Die vollständige Liste steht in der Referenz.
Referenz: Beispielkonfiguration wsupload.config
Schritt 8: Das Upload-Template anlegen
Der Name muss zuUpload aus Schritt 7 passen. Dieses Template läuft im iframe und ist deshalb ein vollständiges HTML-Dokument mit eigenem head.
setiframeheight an mehreren Stellen sorgen dafür, dass der iframe im Elterndokument mitwächst, sobald sich sein Inhalt ändert. Ohne sie steht nach dem ersten Upload eine Bildlaufleiste im Rahmen.
Das Auswahlfeld für die Datei schickt das Formular über ein eigenes Skript selbst ab. Die Schaltfläche “Transfer starten” bleibt deshalb verborgen. Ohne dieses Skript brauchen Sie sie sichtbar.
WSUploadScripts ersetzt Skripte, die sich nicht in eine eigene Datei auslagern lassen. Das Tag muss im body stehen und darf nicht fehlen.
Referenz: Tags zum Upload-Modul
Schritt 9: Die Benachrichtigung an den Shopbetreiber (optional)
Konfigurieren Sie den Abschnitt<InquiryEmail> in anmeldung.config.
EmailAddress durch Kommas.
Schritt 10: Die Bestätigung an den Kunden (optional)
SendEmail kennt neben yes und no auch userselect. Damit entscheidet der Kunde im Formular selbst, ob er eine Bestätigung möchte.
Die Referenznummer gehört in diese E-Mail. Sie ist die einzige Angabe, mit der sich der Kunde bei einer Rückfrage auf seine Anmeldung beziehen kann.
Verwandte Themen
- Wegweiser: Formulare für Kundenanfragen
- Wegweiser: Upload-Modul
- Wegweiser: Upload-Modul integrieren
- Dokumentation: Formulare mit INQUIRY4
