Leave to transaction/Call transaction
Wird in der Anwendungstransaktion ein LEAVE TO TRANSACTION XYZ oder ein CALL TRANSACTION XYZ prozessiert, wobei XYZ die Anwendungstransaktion selbst ist und nicht die Variantentransaktion, so geht der Bezug zur Variante verloren. Dies führt dazu, daß ab diesem Zeitpunkt die Werte aus der Variante nicht mehr eingespielt werden.
Eine mögliche Lösung wäre, die Standardvariante zu verwenden. Bei Standardvarianten wird kein neuer Transaktionscode benötigt. Beachten Sie in diesem Fall, daß alle Benutzer der Transaktion automatisch die Werte und Eigenschaften der Standardvariante erhalten.
Verschiedene Ausgabeeigenschaften pro Zeile in Step-Loops/Table Controls
Transaktionsvarianten können die Anzeigeeigenschaften bei Step-Loops und Table Controls nur spaltenweise ändern.
Wenn in Step-Loops/Table Controls Felder aus verschiedenen Zeilen verschiedene Ausgabeeigenschaften haben (z.B. in der ersten Zeile eingabebereit, in den nächsten Zeilen nur Ausgabe), so können folgende Effekte auftreten:
Step-Loop/Table Control über mehrere Seiten
Falls sich ein Table Control über mehrere Bildschirmseiten erstreckt, können keine Werte gesetzt werden, da das System in diesem Fall nicht erkennen kann, in welche Zeile der Wert gesetzt werden soll.
Entsprechendes gilt auch für Step-Loops.
Umsortieren von Eingaben in Step-Loops/Table Controls
Werden in der Anwendungstransaktion intern die Eingaben in Step-Loop/Table-Control-Felden umsortiert (z.B. alphabetisch), so erscheinen die Werte aus der Transaktionsvariante mehrfach und überschreiben Werte, die manuell eingegeben wurden.
Die Werte der Transaktionsvariante können nur statisch für bestimmte Zeilennummern im Step-Loop festgelegt werden. Wenn es weiterhin möglich sein soll, etwas zu ändern, können in diesem Fall keine Feldinhalte übernommen werden.
Bildschirme zusammenfassen
Es ist nicht möglich, mittels Transaktionsvarianten Felder aus verschiedenen Dynpros auszublenden und diese Dynpros dann zu einem Dynpro zusammenzufassen.
Technischer Hintergrund: Der Vorteil der Transaktionsvarianten liegt u.a. darin, daß sie die Programmlogik der zugrunde liegenden Anwendungstransaktion nicht ändern. Die Zusammenfassung mehrerer Dynpros zu einem Dynpro würde einen Eingriff in die Ablauflogik der verschiedenen Dynpros erforderlich machen. Dies ist nicht erwünscht.
Zusätzliche Bildschirmelemente
Über Transaktions- und Screenvarianten können keine zusätzlichen Bildschirmelemente auf das Dynpro gebracht werden. Die Varianten sollen der Vereinfachung des Transaktionsablaufs dienen und reduzieren die Komplexität des Bildes bzw. der Transaktion. Über die Erfassung eines GuiXT-Skriptes (
GuiXT) kann man bestimmte Bildelemente hinzufügen.Keine Bildfolgesteuerung innerhalb von Transaktionsvarianten
Der Funktionscode wird in einer Transaktionsvariante nur dann abgespeichert, wenn ein Dynpro mittels einer Variante ausgeblendet werden soll. In allen anderen Fällen wird der Funktionscode nicht gesichert, d.h. die Bildfolgesteuerung wird nicht aufgezeichnet. (
Für welche Felder können welche Eigenschaften übernommen werden?) Gesichert werden nur die Feldwerte und -einstellungen für die einzelnen Dynpros. Dies bedeutet, daß es möglich ist, eine Transaktionsvariante für verschiedene Transaktionsabläufe zu verwenden. Wird ein in der Variante enthaltenes Dynpro prozessiert, so werden die Werte aus der Variante eingemischt. Für Dynpros, die in der Variante enthalten sind, aber zur Laufzeit nicht prozessiert werden, werden von der Variante keine Werte gesetzt. Dies führt nicht zu Fehlern.Zu beachten ist, daß jedes Dynpro nur einmal in der Variante abgespeichert werden kann. (siehe auch:
Welche Bilder werden in die Variante übernommen?). Dies bedeutet, daß folgender Transaktionsablauf nicht über eine Transaktionsvariante abgebildet werden kann: Der Anwender möchte nacheinander verschiedene Menüeinträge wählen. Dabei verzweigt er einmal von Dynpro A auf Dynpro B, von dort auf Dynpro C. Wählt er einen anderen Menüeintrag, verzweigt er von Dynpro A auf Dynpro B, dann auf Dynpro D. Er möchte für Dynpro B unterschiedliche Werte erfassen. Grundsätzlich werden zur Erfassungszeit die zuletzt eingegebenen Werte für Dynpro B gespeichert und überschreiben somit die zuvor eingegebenen Werte.