Im SAP gibt es an verschiedenen Stellen die Möglichkeit aus Listen direkt ein Excelfile zu exportieren . Möchte man z.B. automatisiert verschiedene Excels erzeugen und sie anschliessend nutzen um ein InfoSystem zu füttern, dann ist es lästig, wenn SAP das jeweilig heruntergeladene Excel gleich öffnet.
Deshalb habe ich eine Funktion entwickeln lassen, welche das Excel jeweils wieder automatisch schliesst. Hier mein zugehöriges InputScript mit welchem ich Daten aus der SE16N extrahiert haabe.
// VBAK: Anzeige der gefundenen Einträge
Screen SAPLSE16N.0200
Enter control="CONTAINERCTRL.GridViewCtrl" item="&MB_EXPORT;370;263" event="11"
// VBAK: Anzeige der gefundenen Einträge
Screen SAPLSE16N.0200
Enter control="CONTAINERCTRL.GridViewCtrl" item="&XXL" event="14"
RemoveFile "C:\Temp\Test.xlsx"
callvb utilities.popup.enter filename:="C:\Temp\Test.xlsx" popuptitle:="Speichern unter" confirmtitle:="Speichern unter bestätigen"
// VBAK: Anzeige der gefundenen Einträge
Screen SAPLSE16N.0200
Enter Wait=2000
Screen SAPLSE16N.0200
callvb excelquitdotnet2.iface.excel_quit excelfile:="C:\Temp\Test.xlsx"
// callvb excelquitdotnet2.iface.excel_kill_all
// callvb excelquitdotnet2.iface.excel_kill timespansecond:="10"
Enter "/3"
Sie finden über folgenden Link die zugehörige Datei excelquitdotnet2.zip
Die Bibliothek beeinhaltet 3 Funktionen:
- excel_quit als Parameter der Pfad und Name des Excelfile
- excel_kill_all (kein Parameter) löscht alle laufenden Excel Prozesse
- excel_kill ( Angabe einer Zeit in Sekunden) Dann wird Excel Prozess gelöscht, der innerhalb dieser Zeitspanne eröffnet wurde