Erstellen einer Variante der sp01 mit Vorbelegungen
Kennen Sie das Problem, dass z.B. Rechnungen gar nicht oder zum falschen Zeitpunkt gedruckt werden? Der Grund dafür sind falsche Selektionsparameter, woraufhin die sp01 nicht die gewünschten Werte liefern. In diesem Beitrag erkläre ich Ihnen, welche Lösung wir für dieses Problem entwickelt haben.
Allgemeine Beschreibungen zur Vorbelegung von Varianten bei der sp01
Um Transaktionen mit vorbelegten Selektionskriterien auszuführen, gibt es die Möglichkeit, die Felder mit den entsprechenden Werten zu füllen und als Varianten abzuspeichern. Je nach Bedarf, können diese Varianten bei der Ausführung wieder genutzt werden. So wird sichergestellt, dass die Transaktion immer die gleichen Werte liefert.
Bei der sp01 können leider keine Varianten hinterlegt werden, weshalb ein anderer Lösungsansatz notwendig ist. Eine weitere Möglichkeit ist es, in einem eigenen Report, per SUBMIT die Transaktion aufzurufen und dabei Übergabeparameter zu definieren. Mit diesen wird der Report dann ausgeführt. Aufgrund des Programmtyps der sp01 ist jedoch auch dieser Weg nicht möglich.
Als letzte Lösung bleibt somit, die sp01 als eigenen Report nachzubauen, die Art der Selektion sowie die Anzeige zu verwenden. Im nachfolgenden Text zeige ich Ihnen, wie dieser Report aussieht, welche Funktionsbausteine nötig sind und wie es möglich ist, eigene Varianten zu hinterlegen.
Allgemeine Funktionsweise und Oberfläche
Um zu verstehen, wie der Report funktioniert, ist es am besten, wir sehen uns die GUI dazu einmal an. Wie Sie im unteren Bild sehen, ist die Oberfläche in zwei Teile aufgeteilt. Im oberen Drittel sind mehrere Radiobuttons. Hinter jeder Auswahlmöglichkeit verbirgt sich eine Variante mit definierten Vorbelegungen der Selektionsfelder. Darüber befindet sich ein zweizeiliger Infotext, der dem Druckereimitarbeiter die gewählte Variante genauer beschreibt.
Der untere Bereich beinhaltet alle relevanten Felder, um die Spools selektieren zu können. Je nachdem welche Variante ich oben ausgewählt habe, werden dementsprechend unten die Parameter gefüllt. Es sind auch Mehrfachbelegungen möglich. In diesem Fall war es ausdrücklich gewünscht, dass der Mitarbeiter auch hier noch Änderungen der Kriterien vornehmen kann.
Die Varianten und die dazugehörigen Parameter können von IT- sowie dem Admin der Druckerei über eine Customizing-Tabelle in der sm31 gepflegt werden. Für die Felder gibt es immer zwei Tabellenspalten, eine um Werte ein- und die andere um sie auszuschließen. Mit einem / können Mehrfachselektionen angegeben werden.
Selektion und Anzeige der Spools mit Hilfe von Funktionsbausteinen
Wie oben bereits erwähnt, war eine Anforderung, den Report möglichst exakt nach der sp01 zu bauen. So will man die Akzeptanz der Druckereimitarbeiter für das Programm sicherstellen.
Das folgende Bild zeigt den Funktionsbaustein, der, wie bei der sp01, zur Selektion der Druckaufträge verwendet wird. Bei den Exportingparametern kann eingestellt werden, welche Statuswerte berücksichtigt werden sollen. In den Tabellen sind die Parameter aus der Customizing-Tabelle für die einzelnen Varianten hinterlegt. Die Kriterien sind in Range-Tabellen hinterlegt. Dort kann, wie oben bereits beschrieben, definiert werden, ob diese in der Selektion aus- oder eingeschlossen werden.
Sollte es Parameter geben, die für alle Varianten gleichermaßen gelten, bietet es sich an, diese direkt in den Range-Tabellen zu definieren und nicht einzeln pro Variante im Customizing.
Um die selektierten Spools genauso wie in der sp01 darzustellen, benötigen Sie noch einen weiteren Funktionsbaustein. Dieser ist im nächsten Bild dargestellt. Als Tabellen definieren sie einfach zwei interne Tabellen. Mehr ist beim Aufruf nicht zu tun. Nach der Implementierung der beiden Funktionsbausteine werden Spools selektiert und angezeigt, wie bei der Transaktion sp01.
Haben Sie auch schon mal die Anforderung gehabt, Varianten für die sp01 zu hinterlegen oder andere Anpassungen an der Transaktion vorzunehmen? Wir freuen uns auf Ihre Erfahrungen in den Kommentaren oder kontaktieren Sie uns einfach direkt.