Dieses Beispiel zeigt, wie Sie mit den Eigenschaften und Methoden des Instanzmanagers zur Laufzeit Informationen über Teilformulare abrufen und Vorgänge für Teilformularobjekte durchführen.
In diesem Beispiel verwendet der Formularbenutzer die Schaltflächen, um mit Hilfe von Subform3-Instanzen verschiedene Aktionen auszuführen. Wenn ein Formularbenutzer beispielsweise auf die Schaltfläche „Instanz unten einfügen“ klickt, wird unterhalb der aktuellen Instanz eine neue Subform3-Instanz eingefügt.
Hinweis: 
Möglicherweise ist es erforderlich, Teilformulare hinzuzufügen oder zu entfernen oder die Daten im Textfeld ändern, um die auf die Subform3-Instanzen angewendeten Änderungen sehen zu können.
Livecycle eg instance manager combo1 Teilformulare mit Hilfe des Instanzmanagers zur Laufzeit steuern
Tipp: 
Wenn keine Instanzen eines bestimmten Teilformulars in Ihrem Formular existieren, müssen Sie die Unterstrich-Notation (_) verwenden (siehe nachfolgende Beispiele). Weitere Informationen zur Verwendung der Unterstrich-Notation (_) finden Sie in der LiveCycle Designer ES Hilfe.
Das folgende Skript ermittelt, ob die maximal unterstützte Anzahl von Subform3-Instanzen bereits im Formular vorhanden ist. Falls ja, wird eine entsprechende Meldung eingeblendet. Falls nein, wird dem Formular eine neue Subform3-Instanz hinzugefügt.
if (advanced.Subform3.instanceManager.count ==
advanced.Subform3.instanceManager.max) {
xfa.host.messageBox(“You have reached the maximum number of items
allowed.”,”Combining Instance Manager Concepts”, 1);
}
else {
advanced.Subform3.instanceManager.addInstance(1);
xfa.form.recalculate(1);
}
Sie können dieses Skript auch mit der Unterstrich-Notation (_) schreiben, um die Eigenschaften und Methoden des Instanzmanagers zu referenzieren, wie in diesem Beispiel:
if (advanced._Subform3.count == advanced._Subform3.max) {
xfa.host.messageBox(“You have reached the maximum number of items
allowed.”, “Combining Instance Manager Concepts”, 1);
}
else {
advanced._Subform3.addInstance(1);
xfa.form.recalculate(1);
}
Das folgende Skript ermittelt, ob das Formular Subform3-Instanzen enthält. Falls nein, wird eine entsprechende Meldung eingeblendet. Falls ja, wird die erste Instanz aus dem Formular enthält.
if (advanced.Subform3.instanceManager.count == 0) {
xfa.host.messageBox(“There are no subform instances to remove.”,
“Combining Instance Manager Concepts”, 1);
}
else {
advanced.Subform3.instanceManager.removeInstance(0);
}
Sie können dieses Skript auch mit der Unterstrich-Notation (_) schreiben, um die Eigenschaften und Methoden des Instanzmanagers zu referenzieren, wie in diesem Beispiel:
if (advanced._Subform3.count == 0) {
xfa.host.messageBox(“There are no subform instances to remove.”,
“Combining Instance Manager Concepts”, 1);
}
else {
advanced._Subform3.removeInstance(0);
}
if (Subform3.instanceManager.count < Subform3.instanceManager.occur.max) {
var oNewInstance = Subform3.instanceManager.addInstance(1);
var nIndexFrom = oNewInstance.index;
var nIndexTo = Subform3.index + 1;
In diesem Fall wird, wenn das Skript den Wert für nIndexFrom referenziert, dem Formular an der von der Methode moveInstance angegebenen Stelle eine neue Instanz von Subform3 hinzugefügt:
Subform3.instanceManager.moveInstance(nIndexFrom, nIndexTo);
}
else {
xfa.host.messageBox(“You have reached the maximum number of items
allowed.”, “Combining Instance Manager Concepts”, 1);
}
Sie können dieses Skript auch mit der Unterstrich-Notation (_) schreiben, um die Eigenschaften und Methoden des Instanzmanagers zu referenzieren, wie in diesem Beispiel:
if (_Subform3.count < _Subform3.occur.max) {
var oNewInstance = _Subform3.addInstance(1);
var nIndexFrom = oNewInstance.index;
var nIndexTo = Subform3.index + 1;
_Subform3.moveInstance(nIndexFrom, nIndexTo);
}
else {
xfa.host.messageBox(“You have reached the maximum number of items allowed.”, “Combining Instance Manager Concepts”, 1);
}
if (Subform3.instanceManager.count > Subform3.instanceManager.occur.min) {
Dieses Skript entfernt mit Hilfe der Methode removeInstance eine Instanz von Subform3.
Hinweis: 
Dieses Skript gibt mit dem Wert parent.parent.index an, welche Subform3-Instanz entfernt werden muss. Die parent-Referenz bezeichnet den Container des Objekts, welches die Referenz verwendet. In diesem Fall würde die Referenz parent.index das unbenannte Teilformular bezeichnen, welches die Schaltflächen „Instanz unten einfügen“, „Diese Instanz löschen“, „Eine Zeile nach oben“ und „Eine Zeile nach unten“ enthält.
Subform3.instanceManager.removeInstance(parent.parent.index);
}
else {
xfa.host.messageBox(“You have reached the minimum number of items
allowed.”, “Combining Instance Manager Concepts”, 1);
}
Sie können dieses Skript auch mit der Unterstrich-Notation (_) schreiben, um die Eigenschaften und Methoden des Instanzmanagers zu referenzieren, wie in diesem Beispiel:
if (_Subform3.count > _Subform3.occur.min) {
Subform3.removeInstance(Subform3.index);
}
else {
xfa.host.messageBox(“You have reached the minimum number of items allowed.”,
“Combining Instance Manager Concepts”, 1);
}
if (Subform3.index != 0) {
var nIndexFrom = Subform3.index;
var nIndexTo = Subform3.index – 1;
Subform3.instanceManager.moveInstance(nIndexFrom, nIndexTo);
}
else {
xfa.host.messageBox(“The current item cannot be moved because it is the
first instance in the list.”, “Combining Instance Manager Concepts”, 1);
}
Sie können dieses Skript auch mit der Unterstrich-Notation (_) schreiben, um die Eigenschaften und Methoden des Instanzmanagers zu referenzieren, wie in diesem Beispiel:
if (Subform3.index != 0) {
var nIndexFrom = Subform3.index;
var nIndexTo = Subform3.index – 1;
Subform3.moveInstance(nIndexFrom, nIndexTo);
}
else {
xfa.host.messageBox(“The current item can’t be moved since it already is the first instance in the list.”, “Combining Instance Manager Concepts”, 1);
}
if ((nIndex + 1) < Subform3.instanceManager.count) {
// nIndexFrom and nIndexTo store the before and after index values to use with the moveInstance() method.
var nIndexFrom = nIndex;
var nIndexTo = nIndex + 1;
Subform3.instanceManager.moveInstance(nIndexFrom, nIndexTo);
}
else {
xfa.host.messageBox(“The current item cannot be moved because it is the last
instance in the list.”, “Combining Instance Manager Concepts”, 1);
}
Sie können dieses Skript auch mit der Unterstrich-Notation (_) schreiben, um die Eigenschaften und Methoden des Instanzmanagers zu referenzieren, wie in diesem Beispiel:
var nIndex = Subform3.index;
if ((nIndex + 1) < Subform3.instanceManager.count) {
var nIndexFrom = nIndex;
var nIndexTo = nIndex + 1;
_Subform3.moveInstance(nIndexFrom, nIndexTo);
}
else {
xfa.host.messageBox(“The current item can’t be moved since it already is the
last instance in the list.”, “Combining Instance Manager Concepts”, 1);
}

Teilformulare mit Hilfe des Instanzmanagers zur Laufzeit steuern