[GastForen Programme Web/Internet PDF Grundlagen / Web / eForms Formularfelder anhand Liste ausfüllen lassen

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Web/Internet - Webdesign, eForms
Themen
Beiträge
Moderatoren
Letzter Beitrag

Formularfelder anhand Liste ausfüllen lassen

TePoGraf
Beiträge gesamt: 55

2. Nov 2018, 16:36
Beitrag # 1 von 10
Bewertung:
(13484 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo zusammen

Folgende Thematik: Ich habe eine PDF-Datei in welcher diverse Formularfelder ausgefüllt werden müssen. Um das Eingeben wesentlich zu vereinfachen, sollen nun einige Felder automatisch ausgefüllt werden und zwar indem mittels eines Drop-Down-Feldes eine Auswahl getroffen wird, welche die Werte für die anderen Felder definiert.

Zwei Beispiele:

1. Ich selektiere "Typ A" im DropDown-Menü / es wird nun Breite "500mm" und Höhe "400mm" automatisch in die entsprechenden Felder übernommen

2. Ich selektiere "Typ B" im DropDown-Menü / es wird nun Breite "200mm" und Höhe "150mm" automatisch in die entsprechenden Felder übernommen

(Das ist hier der einfachheitshalber ganz simpel erklärt, dass Formular um welches es sich handelt, ist wesentlich komplexer.)

Das Ganze müsste dann wohl über eine hinterlegte ("unsichtbare") Tabelle gelöst werden, dessen Werte ausgelesen und in die Formularfelder übertragen werden können.

Frage: Ist so ein Vorhaben in Acrobat (allenfalls mit Javascript) überhaupt umsetzbar, oder kann ich das gleich aufgeben?

Für eure Hilfe bedanke ich mich bereits im Voraus bestens.

Gruss Manuel
X

Formularfelder anhand Liste ausfüllen lassen

olaflist
Beiträge gesamt: 1400

2. Nov 2018, 20:07
Beitrag # 2 von 10
Beitrag ID: #567333
Bewertung:
(13470 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Mittels JavaScript lässt sich dies umsetzen.

Zu beachten:
- die "Tabelle" ist soll im PDF enthalten sein, korrekt? Wie wird sie gepflegt wenn sich späte etwas ändert?
- solange es sich um wenige solche "Lookups" handelt, ist das sicher händisch beherrschbar; sind viele Lookups nötig, sollte man überlegen, ein kleines Programm zum Generieren des JavaScripts zu schreiben
- man kann bei Acrobat Reader/Pro einstellen, dass kein JavaScript ausgeführt werden soll; vor allem in manchen großen Firmen ist das so voreingestellt und kann vom Benutzer nicht geändert werden
- auf Smartphone und Tablet gibt es eingeschränkte oder gar keine Unterstützung für JavaScript in PDF (leider weiss ich nicht was de aktuelle Stand bei Acrobat auf iOS/Android ist, bitte ggf. nachforschen)
- in PDF-Programmen außer Acrobat Reader/Pro gibt es meistens keine Unterstützung für JavaScript

Sofern Du nicht selbst programmieren kannst/willst: Hier im Forum gibt's ja ein paar Spezialisten, die Dir sicher weiter helfen können und an Hand einer konkreten Aufgabenbeschreibung auch die Kostendimension nennen können. Dringend empfehle ich vor Projektbeginn einen 'proof of concept' - ein Auswahlmenü, mit einer kleinen Listen an Werten die in zwei anderen Feldern gesetzt werden. Das dann von unerfahrenen Benutzern auf den Geräten/Programmen ausprobieren, die auch später zum Einsatz kommen sollen. Dabei lernt man immer sehr viel und kann viel Zeit und Geld sparen.

Olaf


als Antwort auf: [#567329]

Formularfelder anhand Liste ausfüllen lassen

TePoGraf
Beiträge gesamt: 55

6. Nov 2018, 14:19
Beitrag # 3 von 10
Beitrag ID: #567387
Bewertung:
(13385 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Olaf

Vielen Dank für deine ausführliche Antwort, welche mir auf alle Fälle schon einmal weiterhilft. Nun weiss ich zumindest, dass ich mit JavaScript nicht gleich in eine Einbahnstrasse renne und sich die weitere Recherche in diese Richtung lohnen kann.

Betreffend Umfang der Lookups weiss ich zurzeit noch nicht genau Bescheid – wäre auf alle Fälle abzuklären. Auch besten Dank für die vielen weiteren Hinweise, so erspare ich mir wohl die eine oder andere böse Überraschung.

Beste Grüsse

Manuel

................

PS: Bin grosse Fan eurer Callas PDFToolbox – ein wirklich tolles und mächtiges Produkt!


als Antwort auf: [#567333]

Formularfelder anhand Liste ausfüllen lassen

Polylux
Beiträge gesamt: 1774

16. Nov 2018, 09:11
Beitrag # 4 von 10
Beitrag ID: #567606
Bewertung:
(13187 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo zusammen,

ich möchte mich hier mal an das Thema anschließen, da ich glaube ein Ähnliches Problem habe.
Zwei kleine Unterschiede:
1. Ich habe keine komplexe Tabelle im Hintergrund
2. Ich kann kein JavaScript oder anderen Programmiersprachen. (abgesehen von Turbo Pascal aus der Schule)

Bei mir geht es darum, dass ich im ersten DropDown-Feld ein Material auswähle (Forex, DiBond, Plexiglas) und im zweiten DropDown-Feld dann die Materialgröße in Abhängigkeit vom Material.

Es sind nur ca. 5 Materialien und 3 bis 4 zugehörige Größen
Kann ich das über einfache Klicke in Abhängikeit vom ersten DropDown-Feld zusammenstellen, oder geht das nur mit "Werte auslesen" Get-Felder und geschweiften Klammern?


als Antwort auf: [#567329]

Formularfelder anhand Liste ausfüllen lassen

taunus11
Beiträge gesamt: 609

16. Nov 2018, 11:36
Beitrag # 5 von 10
Beitrag ID: #567611
Bewertung:
(13172 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hier ist ein Beispiel:
https://practicalpdf.com/dependent-lists/

Bernd Alheit


als Antwort auf: [#567606]

Formularfelder anhand Liste ausfüllen lassen

Polylux
Beiträge gesamt: 1774

16. Nov 2018, 11:59
Beitrag # 6 von 10
Beitrag ID: #567612
Bewertung:
(13167 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Cool.
Danke Bernd.

So ein bisschen Script muss wohl sein.
Mal sehen ob ich das hinbekomme.
Die Herausforderung steht.
Werde mich damit beschäftigen.
Ich krieg das hin.


als Antwort auf: [#567611]

Formularfelder anhand Liste ausfüllen lassen

Polylux
Beiträge gesamt: 1774

19. Nov 2018, 09:31
Beitrag # 7 von 10
Beitrag ID: #567625
Bewertung:
(13053 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo, ich bins wieder,

an Hand des Beispiels konnte ich das Formular jetzt nach meinen Wünschen entsprechend aufbauen. Ich gebe zu, die Syntax ist mir etwas fremd und man muss scheinbar auch ganz genau auf jedes Komma achten... ;o)

An einer Sache scheitere ich jetzt mit meinen Versuchen:
Neben dem fixen Materialien und den zugehörigen Größen, hätte ich noch gerne ein Blanko-Feld im Dropdown, wo ich den Materialnamen und im Abhängigkeitsfeld dann auch die Größe per Hand eingeben kann.

Im Materialfeld vorne habe ich das hinbekommen:
Element: (Ein Leerzeichen) kann ich überschreiben
Exportwert: habe ich mal "leer" genannt.

Jetzt fehlt mir noch, was ich in dem Script schreiben muss, da er im Formularfeld dann keine Eingaben annimmt.

Ist wahrscheinlich sehr simple für Euch, ich scheitere aber daran.
Kann mir da noch jemand helfen?


als Antwort auf: [#567611]

Formularfelder anhand Liste ausfüllen lassen

Polylux
Beiträge gesamt: 1774

19. Nov 2018, 10:37
Beitrag # 8 von 10
Beitrag ID: #567626
Bewertung:
(13037 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Habe mir das noch mal angesehen und vermutlich muss da was in den unteren Code reingeschrieben werden. Deshalb stelle ich den jetzigen Code hier einfach mal rein:

Code
/* 
LICENSE:
acrojs_dependentList.js by Joel Geraci is licensed under a Creative Commons Attribution 4.0 International License.
https://creativecommons.org/licenses/by/4.0/

You are free to:
Share — copy and redistribute the material in any medium or format
Adapt — remix, transform, and build upon the material for any purpose, even commercially.

Setup:
For list boxes: Add this script to the "selection change" script of the master list box.
For combo boxes: Add this script to the "custom format" script of the dropdown box.

IMPORTANT!
Edit the following line to identify the field name of the dependent list box then edit the properties of the dependentListValues JSON object. Property names should correspond to the export values of the list items.
*/
var dependentListBoxFieldName = "dependentDropdown";
var dependentListValues =
{
"leer": [
[" ", "Test"]
],
"forex": [
["1220x2500", "1220x2500"],
["1220x2440", "1220x2440"],
["1220x3050", "1220x3050"],
["1530x3050", "1530x3050"]
],
"aludibond": [
["1250x2500", "1250x2500"],
["1000x3050", "1000x3050"],
["1500x3050", "1500x3050"],
["2000x3050", "2000x3050"]
],
"leichtschaum": [
["1400x3000", "1400x3000"],
["1530x3050", "1530x3050"]
],
"petg": [
["1250x2050", "1250x2050"],
["2050x3050", "2050x3050"]
],
"plexiglas": [
["1250x2050", "1250x2050"],
["2050x3050", "2050x3050"]
]
};
/*
You probably don't need to change anything from here down
*/
if ((event.target.type == "combobox" && event.name == "Format") || (event.target.type == "listbox" && event.name == "Keystroke")) {
if (event.target.type == "combobox") {
if (dependentListValues.hasOwnProperty(event.target.value)) {
this.getField(dependentListBoxFieldName).setItems(dependentListValues[event.target.value]);
}
else {
this.getField(dependentListBoxFieldName).clearItems();
}
}
if (event.target.type == "listbox" && dependentListValues.hasOwnProperty(event.changeEx)) {
this.getField(dependentListBoxFieldName).setItems(dependentListValues[event.changeEx]);
}
}
else {
app.alert("This script was not intended for this field type or event.");
}



als Antwort auf: [#567611]

Formularfelder anhand Liste ausfüllen lassen

Polylux
Beiträge gesamt: 1774

21. Nov 2018, 07:39
Beitrag # 9 von 10
Beitrag ID: #567653
Bewertung:
(12885 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Guten Morgen,

gar keine Rückmeldung finde ich komisch.
Woran liegt es?

a) Liegt es daran, dass die Aufgabe gar nicht so einfach ist?
b) Liegt es daran, dass es nicht lohnt mit meinem fehlenden Script-Wissen zu versuchen mir das beizubringen?
c) Liegt es daran, dass ich so schamlos einfach das vorhandene Script kopiert habe, ohne nennenswerte Eigenleistung?
d) Habe ich mich einfach nur unklar ausgedrückt und Ihr wisst gar nicht, was ich will?
e) Hätte ich lieber einen eigenen Thread aufmachen sollen, anstatt mich hier einzuklinken?
f) Oder habt ihr momentan einfach jede Menge zu tun und für sowas nebenbei keine Zeit?

Gebt mir doch ein kurzen Feedback.
Ich kann auch mit brutalen Antworten leben.
Ich möchte ja gar nicht, dass hier jemand für mich einfach Hundert Zeilen Code schreibt.

Viele Grüße


als Antwort auf: [#567611]

Formularfelder anhand Liste ausfüllen lassen

Polylux
Beiträge gesamt: 1774

21. Nov 2018, 09:51
Beitrag # 10 von 10
Beitrag ID: #567659
Bewertung:
(12868 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Ich bins wieder, in meinem Monolog hier.

Habe es jetzt endlich herausgefunden. Es war natürlich zu einfach und ich habe zu kompliziert gedacht. Ich dachte, da dieses Feld ja komplett über das Script vom vorherigen Feld gesteuert wird, müsste da auch irgend ein Code rein wie EVENT.RC oder sowas ähnliches. Aber nein.

Die Lösung: Beim zweiten DropDown-Feld muss das Feld "Benutzerdefinierte Eingabe zualssen" auch aktiviert werden.

Na trotzdem, Danke allen fürs interessierte oder amüsierte Mitlesen.


als Antwort auf: [#567653]
X