Ich soll an meiner Firma im Batch-Modus eine CSV-Datei erzeugen, die genau so aufgebaut ist wie die bisherige ALV-Liste aus dem Programm. Für die Erzeugung brauche ich also die entsprechende Variante, die für die ALV-Liste erstellt wurde.
Leider konnte ich nicht heraus finden, wie man die Variantenoptionen (Filtertabelle, Sortiertabelle und Feldkatalog) im Batch-Modus lesen kann. Bei meiner Programmierung habe ich zwei Varianten ausprobiert, die aber leider nicht funktioniert haben:
1. Variante:
- Instanz der Klasse CL_GUI_ALV_GRID erzeugen
- ALV-Liste erzeugen (Methode SET_TABLE_FOR_FIRST_DISPLAY)
- Variantenoptionen auslesen (z.B. mit der Methode GET_FILTER_CRITERIA)
Bei dieser Variante hat alles wunderbar im Online-Modus funktioniert. Allerdings hat sich die Methode SET_TABLE_FOR_FIRST_DISPLAY im Batch-Modus anders verhalten. Anstatt die ALV-Liste im Hintergrund zu erzeugen, erzeugt sie einen Spool. Nach dieser Erzeugung arbeitet das Programm nicht mehr weiter.
2. Variante:
Bei meinem zweiten Versuch habe ich versucht die Variantenoptionen über den Funktionsbaustein REUSE_ALV_VARIANT_SELECT zu lesen. Als Input-Parameter habe ich den Feldkatalog und das Layout mitgegeben. Als Output-Parameter habe ich die Variantenoptionen erwartet. Leider wurden die Output-Parameter nicht gefüllt.
Hat jemand eine Idee über welchen Weg ich die Variantenoptionen auslesen kann, oder wie ich die Spoolerzeugung aus der ersten Variante vermeiden kann?