Technology Blogs by Members
Explore a vibrant mix of technical expertise, industry insights, and tech buzz in member blogs covering SAP products, technology, and events. Get in the mix!
cancel
Showing results for 
Search instead for 
Did you mean: 
Stefan-Schnell
Active Contributor
2,793
More than eight years ago I introduced the Scripting Tracker here. Unfortunately I lost my S-User, due to a change of employer, so I could not continue my original post. Scripting Tracker is always under development. And with the jump of the SAP GUI for Windows 8.00 to the 64-bit architecture also came the same change of the Scripting Tracker. The current major release 6 offers a 32-bit and a 64-bit version. Furthermore the recorder was ported to the dotNET Framework platform, it is now a dotNET application. In this blog I describe how the recorder can be decoupled and integrated as a separate application in other contexts.

The Decoupling


This is a very easy step. After the download of Scripting Trackers zip file, extract the following files into a directory of your choice:

  • Recorder.exe
    The dotNET recorder application

  • Recorder.exe.config
    An XML file which contains configuration details

  • Interop.SAPFEWSELib.dll
    A type definition converted with Microsoft Type Library Importer tool


This already completes all the preparatory steps.

The Execution of the Recoder


To run the recorder type recorder.exe and the following parameters in your console window:



























Parameter Description
ConnID Connection number as integer, default 0.
SessID Session number as integer, default 0.
FileType Type of file as string, default PS1. Permitted values are:

  • PS1 for PowerShell

  • CS for C#

  • VB for VisualBasic.Net

  • PY for Python

  • JAVA for Java

  • AU3 for AutoIt

  • VBS for VBScript


AddInfo Flag to add additional information as string,
default false or 0. Permitted values are true, 1, false or 0.
NWBC Flag to automate SAP Business Client as string,
default false or 0. Permitted values are true, 1, false or 0.

Now, according to the specified parameters, the recording of the activities in the SAP GUI for Windows is activated and the source code is displayed in the console window.

Examples


Console Window


Recorder.exe ConnID:1 SessID.1 FileType:CS AddInfo:true NWBC:false

This command executes the Recorder in a console window, to connect to SAP session 1 of
connection 1 and records the SAP GUI Scripting commands in C# style with additional information.



PowerShell Console


.\Recoder.exe ConnID:0 SessID:0 FileType:PY

This command executes the Recorder in a PowerShell console window, to connect to SAP session
0 of connection 0 and records the SAP GUI Scripting commands in Python style.



PowerShell ISE


.\Recorder.exe

This command executes the Recorder in a PowerShell ISE window, with the default parameter
values.


Hint: In a console window you can break the recording process with the esc key, but in PowerShell ISE you break it with Ctrl+Break.

Bash Console


./Recorder.exe ConnID:3 SessID:1 FileType:VB

This command executes the Recorder in a bash console window, to connect SAP session 1 of
connection 3 and records the SAP GUI Scripting command in VB.NET style.



Redirecting the Output


If you don't want to copy the code from the console, with a redirect it is also possible to write the source code into a file.
./Recorder.exe FileType:Java > test.java

This command executes the Recorder in a bash console window, to connect SAP session 0 of
connection 0, records the SAP GUI Scripting commands in Java style and redirects the output to the
file test.java.

Refinish


Only the activities are recorded, the execution frame must be provided by yourself. The resulting source code is then to copied into it.

Conclusion


It was an important and right step to port the Scripting Tracker Recorder into a dotNET application. AnyCPU was chosen as the target platform, so this application can handle both 32-bit and 64-bit. This allows activities to be recorded in the SAP GUI for Windows 8.00, regardless of the architecture. In addition, the recorder can now be used in completely different integration scenarios, even outside of Scripting Tracker. It is lightweight and very easy to handle. This opens up new areas for interested developers in the context of SAP GUI Scripting, because a consolidated basis can be used here.
5 Comments
0 Kudos
Hi, Stefan

I tried to get your programs running on Win10, but Defender blocks their execution (see message below). Could you please sign your executables according to Microsoft standards?

Thanks a lot

Beat

----
Der Computer wurde durch Windows geschützt

Von Microsoft Defender SmartScreen wurde der Start einer unbekannten App verhindert. Die Ausführung dieser App stellt u. U. ein Risiko für den PC dar.














App: Tracker.exe
Herausgeber: Unbekannter Herausgeber


 
Girish2000
Explorer
0 Kudos

Hi @Stefan-Schnell ,

Is there a way to retrieve a full dump of the objects present on the screen, including the properties of each element? I'm currently only able to get a list of IDs, and I need help to obtain the properties as well.

Thank you!

Girish2000_0-1731313558134.png

 

Stefan-Schnell
Active Contributor

Hello @Girish2000,

nope, but you can DIY, you can find an approach here: Loop through SAPGUI ... It is VBA, but it bases on SAP GUI Scripting so it shouldn't be difficult to make an adaptation.

Best regards
Stefan

Girish2000
Explorer
0 Kudos

Hi @Stefan-Schnell .

I want to use your SAP Script Tracker Recorder, but I would like to capture the actual events directly from SAP without converting them into any other language. Is this possible?

Stefan-Schnell
Active Contributor
0 Kudos

Hello @Girish2000,

as far as I understand you right, you want to capture only the events from the SAP GUI. This is not an option of the recorder. But you can find an approach to realize your own recorder here: SAP GUI Scripting Recorder with Powershell.

Best regards
Stefan

Labels in this area