Hallo liebe Entwickler.

Im Moment bin ich dabei ein Formular zu erzeugen. Soweit so gut und es funktioniert wie ich es mir vorstelle. Nun mein Problem. Es sind mehrere Formulare die sich in nur wenigen Feldern unterscheiden. Mein Vorhaben ist es, wird ein bestimmtes Feld ausgefüllt, sollen bestimmte Felder verborgen werden bzw. andere erscheinen. Mit hyperref und insdljs sollte es möglich sein. Ich weißt allerdings nicht wie genau. Kann mir jemand bitte einen Rat geben?

Vereinfacht gesagt: Es gibt Formular A, Formular B und Formular C. Jedes dieser Formulare haben zum Teil andere Felder zum Ausfüllen. Ich möchte alle drei Formulare in ein/e Formular/PDF vereinen. In Abhängigkeit einer Eingabe (Pulldown Menü) sollen weitere Felder sichtbar bzw. unsichtbar werden.

Anbei ein Minimalbeispiel meiner tex Datei:


Code:
    \documentclass[ 
12pt,                       % Schriftgröße 
a4paper,                    % Papierformat 
oneside,                    % einseitiges Dokument 
final                       % Status des Dokuments (final/draft) 
]{scrreprt} 
\usepackage[ngerman]{babel} 
\usepackage[utf8x]{inputenc} 
\usepackage[T1]{fontenc} 
\usepackage{hyperref} 
\usepackage[pdftex]{eqexam} 
\usepackage[pdftex]{insdljs} 
\begin{insDLJS}[Daten]{Daten}{Auswertung} 
var done=0; 
function StartFunc(){ 
if(!done){ 
done=1; 
this.getField(’Wessenprofil’).display=display.hidden; 
this.getField(’Mailadr’).display=display.hidden; 
this.getField(’AgentOne’).display=display.hidden; 
this.getField(’Telber’).display=display.hidden; 
this.getField(’Signatur’).display=display.hidden; 
this.getField(’Drucker’).display=display.hidden; 
this.getField(’Keyboard’).display=display.hidden; 
this.getField(’Textbau’).display=display.hidden; 
this.getField(’Favorit’).display=display.hidden; 
%app. alert (’Das Formular wurde ge\u00F6 ffnet .’,3 ); 
} 
} 

function VeraenderungFunc() 
{ 

if((event.value==’vccc’)||(event.value==’CallCenter’)) 
{ 
this.getField(’Wessenprofil’).display=display.visible; 
this.getField(’Mailadr’).display=display.visible; 
this.getField(’AgentOne’).display=display.visible; 
this.getField(’Telber’).display=display.visible; 
this.getField(’Signatur’).display=display.visible; 
this.getField(’Drucker’).display=display.visible; 
this.getField(’Keyboard’).display=display.visible; 
this.getField(’Textbau’).display=display.visible; 
this.getField(’Favorit’).display=display.visible; 

this.getField(’Wessenprofil’).value=’Wessenprofil’; 
this.getField(’Mailadr’).value=’Mailadr’; 
this.getField(’AgentOne’).value=’AgentOne’; 
this.getField(’Telber’).value=’Telber’; 
this.getField(’Signatur’).value=’Signatur’; 
this.getField(’Drucker’).value=’Drucker’; 
this.getField(’Keyboard’).value=’Keyboard’; 
this.getField(’Textbau’).value=’Textbau’; 
this.getField(’Favorit’).value=’Favorit’; 

this.getField(’Wessenprofil’).setFocus(); 
} 

elseif((event.value==’cc’)||(event.value==’CustomerCare’)) 
{ 
this.getField(’Wessenprofil’).display=display.visible; 
this.getField(’Mailadr’).display=display.visible; 
this.getField(’AgentOne’).display=display.hidden; 
this.getField(’Telber’).display=display.hidden; 
this.getField(’Signatur’).display=display.hidden; 
this.getField(’Drucker’).display=display.hidden; 
this.getField(’Keyboard’).display=display.hidden; 
this.getField(’Textbau’).display=display.hidden; 
this.getField(’Favorit’).display=display.hidden; 

this.getField(’Wessenprofil’).value=’Wessenprofil’; 
this.getField(’Mailadr’).value=’Mailadr’; 
this.getField(’AgentOne’).value=’AgentOne’; 
this.getField(’Telber’).value=’Telber’; 
this.getField(’Signatur’).value=’Signatur’; 
this.getField(’Drucker’).value=’Drucker’; 
this.getField(’Keyboard’).value=’Keyboard’; 
this.getField(’Textbau’).value=’Textbau’; 
this.getField(’Favorit’).value=’Favorit’; 

this.getField(’Wessenprofil’).setFocus(); 
} 

} 
\end{insDLJS} 

\begin{document} 

\begin{Form} 
\renewcommand*{\DefaultOptionsofText}{print,borderstyle=U} 
\begin{tabular}{p{7.45cm}p{7.45cm}} 

Vorname    & Nachname                                   \\ 
\TextField[name=Vorname, width=7.45cm]{}    & \TextField[name=Nachname,width=7.45cm]{}      \\ 
&                                                   \\ 
Personalnummer  &                                           \\ 
\TextField[name=Personalnummer, width=7.45cm]{} &                               \\ 
&                                                   \\ \\ \hline \\ 
\textbf{Bei Neueinstellung}    &                                \\ 
Abteilung       & Ab                                    \\ 
\ChoiceMenu[combo,name=Einsatzort,width=7.45cm]{}   &                   \\ 
& \TextField[name=Abdatum,width=7.45cm]{}                                                   \\ 
&                                                   \\ \\ \hline \\ 
\textbf{Bei Abteilungswechsel}  &                           \\ 
 Abteilung jetzt    & Bis                                   \\ 
\TextField[name=Einsatzortjetzt, width=7.45cm]{} & \TextField[name=Bis,width=7.45cm]{}      \\ 
&                                                   \\ 
Abteilung dann  & Ab                                    \\ 
\TextField[name=Einsatzortdann, width=7.45cm]{} & \TextField[name=Abdatum,width=7.45cm]{}   \\ 
&                                                   \\ \\ \hline \\ 
\textbf{Bei Austritt aus dem Unternehmen}   &                       \\ 
Letzter Tag der Beschäftigung       &                       \\ 
\TextField[name=Letztertag, width=7.45cm]{} &                       \\ 
&                                                   \\ 
\end{tabular} 
\end{Form} 

\TextField[name=Wessenprofil,width=7.45cm,validate={VeraenderungFunc();}]{Wessen Profil}                             \\\\ 
\TextField[name=Mailadr,width=7.45cm,height=1.5cm,validate={VeraenderungFunc();}]{Welche Mailadresse}               \\\\ 
\CheckBox[width=0.5cm, height=0.5cm, name=AgentOne,validate={VeraenderungFunc();}]{Ja oder nein}                    \\\\ 
\TextField[name=Telber,width=7.45cm,validate={VeraenderungFunc();}]{Bereich Telefon}                                \\\\ 
\TextField[name=Signatur,width=7.45cm,height=1.5cm,validate={VeraenderungFunc();}]{Welche Signatur}                 \\\\ 
\TextField[name=Drucker,width=7.45cm,validate={VeraenderungFunc();}]{Welcher Drucker}                               \\\\ 
\TextField[name=Keyboard,width=7.45cm,validate={VeraenderungFunc();}]{Keyboardlayout}                               \\\\ 
\TextField[name=Textbau,width=7.45cm,validate={VeraenderungFunc();}]{Welche Textbausteine}                          \\\\ 
\TextField[name=Favorit,width=7.45cm,validate={VeraenderungFunc();}]{Welche Favoriten}                              \\\\ 

\end{document}