This article is intended as an introduction about the use of "Shortcut for SAP systems" and how to do the first steps.
Sc4SAP can be downloaded from our web page, it comes in a zip file. No installation is necessary, just copy the contents of the zip file in a suitable directory. I suggest to put it not in the same folders in which the applications normally are installed in because we need write access to some subdirectories, and that might be a problem using the typical folders like C:\Program Files (x86) or C:\Program Files.
It works fine even in a folder C:\Sc4SAP, which I used for this article.
Ok, so what we have got here? Maybe a look into the system requirements might be a good idea...
... Java Runtime Environment. Ok, got it on my computer.
... SAP Java Connector (JCO). Hmm, this is usually not installed on a standard computer.
... an accessible SAP system. Of course, that's why I have downloaded the program.
... an SAP GUI. Indispensible for my work, of course also available on my computer.
... ah, no transport requests, AddOn's or similar to be installed in the SAP system(s). That's nice!
There is a hint to use the check program "Sc4SAPStarter.exe", so let's try it.
That's what was expectable from reading the system requirements, the SAP Java Connector files are missing. But maybe it is somewhere on my computer or an accessible network drive, thus, press the button "Search for it...".
I'm a lucky guy, the file was found. With the "Copy file" button it can be copied into the Sc4SAP subdirectory.
After closing the dialog the check procedure starts again. We are one step further now, but there is still something missing. Another missing JCO file:
Ok, once again I press the "Search for it..." button. The missing file was found in the same directory as the one before, and I also copied it. Now the check program does not complain any longer and after a short time the "Shortcut for SAP systems" application is started.
First greeting with a popup window about connections:
Connections... aren't there still enough in my SAPLogon?
There are, but the use of connections to SAP systems in "Shortcut for SAP systems" includes the specification of a user - different from the SAPLogon. Thus, let's do what is required. After pressing OK a click on "Settings and configuration" a maintenance function for the connections can be used. So I entered data to a local SAP system that I have installed on my computer, just to try it out and see around what's there.
After pressing the "Add" button the data will be moved to the (up to now empty) list of the maintained connections.
By pressing the "Test" button I verify whether the data is correct. As there is sensible data in it the function can be protected with a password. If your computer can be accessed by other people, I recommend to do this.
Tip: you can have multiple connections to a single SAP system / client, for example one with a system user (which often have wide authorizations) and your own (dialog) user. Some functions need dialog capabilities. Having connections with both a dialog user and a system user will offer much possibilities!
I saved the connection data and closed the window. Back in the main window I see that all the functions, which were previously disabled because there was no connection maintained, are available now. By moving the mouse cursor to a button I get some information about the function in the right part of the window.
Let's try some functions, starting with the first one "Get a list of users". This does not sound spectacular and offers no information that I can not get by using the functions directly in the SAP system, nevertheless I get an impression how the program works in general. In the window I can see the users in my local SAP system and some messages at the bottom.
Let's try another function, maybe viewing some data of the system. After chosing the function "View table data" and entering a table the application get in contact with the SAP connection and verifys whether the table exists. The button right from the table name offers some information.
Reading the data works for the given table:
Ok, nothing spectacular until now. Only positive aspect is that in case my own dialog user does not have authorizations for viewing some data (or I don't have a user in the client) I can use this application and a connection with a system user.
Let's switch to another function. Setting passwords I always find a boring task and there is a function related to this.
There are some gaps in the SAP functions for setting passwords:
- There is no function allowing you to assign the same initial password to lots of users. This would be useful for example in case you have lots of test users. For each and every user the password has to be set individually. This is annoying.
- There is no function allowing you to assign individual passwords to lots of users. It's the same mess as in point #1. Especially in case of system users after a system copy it is essential to assign the same passwords as before, otherwise the interfaces would not work. There is usually a list available with the user ID's and their passwords, but each and every system user has to be maintained individually.
The "Set password" function in Sc4SAP looks quite promising and seems to close these gaps.
Let's try it, but I prefer to do this not in the currently used client 000. So first I have to switch back to the maintenance function for the connection and create a connection to client 001. Done in few seconds: I click on the connection to client 000, the values are copied to the input fields below the list, I change few input values and press "Add".
I switch back to the "Set password" function to try it. At this point - unless you don't have a license for the application - you will be faced with this annoying popup:
So you have to have a license for this function (like for all other functions too, that are valuable). You will find the necessary information for ordering a license in the "Settings and configuration" area in the "Licenses" function.
But I am a lucky guy and have a license, so I don't get to see the popup window and can do what I wanted to do, i.e. provide many users with a new initial password in one go. Via copy and paste I fill the text field with the user ID's and entered an initial password. Pressing "Execute" and... wow, quite fast, after a second it is done!
Now let's try the other option: set individual passwords for lots of users in one go. As I mentioned before a good use case for this is the assignment of the correct password of the system users after a system copy. This could be really annyoing. Mostly you use complex, generated passwords (if you don't do this so far, you should do it), and this means you have to copy and paste the password for every system user.
The function in ScSAP offers 2 text fields, left one for the users, right one for the passwords. Of course the amount of users and passwords has to be identical. Filling the text fields is done fast using Copy and Paste (assuming that there is an Excel file or similar containing all the system users and their passwords). Pressing "Execute" results in the same fast action as for the previously tried password function.
Meanwhile, because I did not close the used functions, my desktop is quite full with windows.
There is no restriction to use another function while others are still running or open. You can start other functions, e.g. to use them for other connections or other purposes, it doesn't matter. All of them operate individually, and you can start and use them as often and in parallel as you want.
Also this article got quite long meanwhile. Since this article was only meant to show the first contact with the application, I will not continue in detail for all other functions like this. But I want to give some general information which might be useful for you.
In case the function uses a connection in dialog mode (this could be necessary for example when files are to be uploaded or downloaded) there might be an SAP screen coming up with some information. For continuing your work in the Sc4SAP function you need to close this window by pressing the "Back", "Exit" or "Cancel" button, otherwise Sc4SAP does not recognize the end of the task.
When it is about transferring a file between your computer and the SAP system the SAPGUI might come up with a confirmation dialog. Until there is no confirmation the task will not continue. Sometimes the window does not appear visible in the foreground and is indicated by a blinking SAPGUI task in the Taskbar only. The confirmation dialog is not specific to Sc4SAP, it's part of the security concept of the SAPGUI.
The "Messages / log" area will be fed with information of your started task. Sometimes this information is not important, but sometimes it is. There are few visible lines only. In case you want to see more just click the button at the right over the "Messages / log" area and the lines will be shown in a separate window, which can be sized as you want.
In case you closed a function, but you need the information of the messages: it is not lost. All messages will be stored in the "logs" directory for enabling you to follow up what you have done so far and also get all the information that came up in the functions.
Nearly at the end of this article I would like to refer to my personal favorite functions, I think they are very, maybe most valuable of all functions.
- The "Copy user" function allows you to copy users on-the-fly between systems. As the user ID's can be given (or even specify "*" for all users) it is extremely flexible. And it offers also the possibility to store the user data in a file and use this file afterwards as source. Especially keeping users of a system that is to be overwritten via system copy can be done easily using this function: store the user data in front of the system copy in a file, afterwards use the file as source and copy the user back into the system. You don't have to bother any longer with client copies to temporarily created clients to park the users there!
- The "Process table data using R3trans" is extremely useful for dealing with table contents in a system or to copy / move data to other systems. Among other things, you can use it
- to copy data to another system or client (for example some customizing data)
- to keep a backup of system specific tables (e.g. RFC connections, partner profiles etc.) and getting more security of the operation of your SAP system by this (there is a blog available about this topic)
- to keep data of a system that will be overwritten via system copy (again: RFC connections etc.)
- to enable the project to repeat a test migration without having the need to do another system copy again (think of saving the customer tables KNA1, KNB1, ... in front of the test migration and restore them afterwards if necessary). It does not have to be a big test migration, you can also use this function for very individual program tests. If your program modifies table xyz then make a backup of this table and restore the table after the test to its previous state - ready for the next test! Don't bother with additional programs, individually to be developed, to get the tables back to an "untouched" status.
- to get information about 3rd party transport requests before they are imported in the system, using the "List data file content" action. As far as I know there is no other method to do so (and as far as I know no other product offers the "R3trans" functions to use them for other purposes than the transport stuff). Typically a sandbox system is to be set up for 3rd party transport requests, or you just take the risk to import a 3rd party transport into your system without knowledge about what's inside.
- to get access to a new client on a system, by copying the user tables into the new client (see this blog about this topic).
- There are some other functions for modifying data in the "View / modify data" section that can safe you a lot of time and money in your project work as well as in the IT support. Correction of data could become very cumbersome. With these functions it can be done really easily and fast and can be your rescue in time-critical situations. But of course they should be handled with care! Otherwise your data correction would end up in data corruption... :-(