ABAP: check if a function module exists programmatically
If you need to check if a function module within your program try running the following function: RH_FUNCTION_EXIST.
SAP: WE20 partner set up “Please enter a permitted partner number”
A new inbound IDOC failed to process with a “EDI: Partner profile not available” error.
I’ve attempted to set up a new partner but failed to do so due to the “Please enter a permitted partner number” error when using WE20 transaction and setting up a new LS partner.
A quick debugging session revealed that the program was checking a TBDLS table [Logical Systems].
After this I’ve simply used SPRO transaction to update the:
Spro – IMG – Basis Components – Application Link Enabling (ALE) - Sending and Receiving Systems – Logical Systems – Define Logical System
Add the new logical system and you will be able to set up the new partner now.
SAP tp: return codes
For each step that takes place within the tp command there could be 8 different possible return codes [0, 4, 6, 8, 12, 13, 14, 16]. The meaning for each of those codes is as follows:
Transport imported successfully:
0: Transport successful
4: Warning occurred
Transport did not import successfully:
6: Post-processing is required
8: Transport carried out with an error [individual object could not be transported successfully]
ex: objects could not be overwritten
Transport termination:
12 and greater: transport was terminated
Microsoft Outlook Problem [inserted images are not displaying]
I ran in to a problem with my Microsoft Outlook application. Suddenly some [not all] embeded [not attachments] images in my inbound emails would not display.
I know the data was there for I could see the red box [representing an un-loaded image] and I could copy and paste the actual data in to a separate application like Microsoft Word [copying the image allowed me to see the whole file].
So as always I did some digging online and found a solution:
1. Locate the Outlook Temporary Items folder by opening the Registry and finding HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Outlook\Security. Double click on the OutlookSecureTempFolder key.
2. Right click the Value Data field and select Copy. It should be in the form of %USERPROFILE%\Local Settings\Temporary Internet Files\OLK6 where OLK6 is some randomly generated string that always starts with OLK.
3. Open Windows Explorer, paste in the Address field and press Enter (or select GO). You will be navigated to this folder.
4. Select All the files in this folder and Delete.
5. Launch Outlook. The images should now appear in the Email.
That fixed my problem.
SAP: STMS transport stuck
When coming across a situation where thetransprts are stalling/hanging in the STMS queue there are a few things that you can do:
The fist and most obvious course of action is to contact your Basis support team.
Given that you are reading this article you probably wanted or were forced to figure this one out on your own so here are a few helpful actions that you can take to narrow down the problem:
TP processes:
Go to the SM51 and check if any of the TP processes are still running, you might be required to kill these before proceeding haulted imports.
Check the TP System Log:
You can do this by STMS – Overview – Imports – Select Queue System – Goto – tp system log – F5
This will show you a step by step log of what has occured in the system, you would be able to see which transports are being processed and what has completed.
Check the Import Monitor:
You can do this by STMS – Overview – Imports – Select Queue System – Goto – Import Monitor
This will show you the queue of active transports [if any], if you see that there is a collection of unprocessed imports then you need to flush the queue.
Check TMS background job:
You can also check if the background job RDDIMPDP is running.
From tim to time it happens that the import queue becomes inconsistent and the system stalls, as a result you can be stranded without any of your transports moving ot he next system.
Tables:
TMSTLOCKR: will unlock a given transport from the transport queue [the transport truck will dissapear after deleting of the entry int he table]
TRBAT: will contain values correspondign to active imports, if you have a stuck transport that is haulting a collection of other transports a simple delete from this table will re-initialize the queue and push the backed up imports forward.
TRJOB: should also be cleared in order to continue the regular flow of backe up transports
For any additonal information please refer to the following notes:
818065, 302859, 556941, 556946, 71353, 49242, 323726, 56311, 24800, 486991, 506771, 138200
SAP: deleted users [when/who]?
Actions that are done to a user profile, be that creation, modification or deletion are tracked in a table USH04.
The field PROFS will reflect each of the actions referencing the following characters:
A: add
M: modify
D: delete
Simply enter the user you are interested in and see what has occured over the year.
SAP GUI: enable/disable input field history on text fields
This is sort of a usless but still somewhat interesting fact: I ran in to a problem where a user wasn’t able to see his history when he entered data in to his sap gui. It didn’t matter which field it was every time he would re-login he would not see the data he entered just minutes ago.
I did some reasearch and seen a lot of posts about SAPHistory*.mdb file in the SapWorkDir directory. The user’s history was was being generated so the problem was being caused by something else.
Then I came across a post talking about Low Speed Connection [Reduced Network Traffic] setting which can be found by going through your login pad, clicking on the system and displaying the properties window – followed by going to the Network tab. From what I’ve read it seems that having the setting set to Low Speed Connection could cause the problem of missing input field history. Even though this seemed promissing after getting the user to try a different machine with the High Speed enabled he was still showing the problem.
The final peace of information that I’ve aquired from the web was a little neat SAP feature: if you get to an input field and hold down your Ctrl button you can right click on your mouse and get a pop-up window that would allow you to Disable/Enable History functionality. Typically the field is set to Defaut Settings, so the only thing left to do was to figure out if the user’s default settings were set to Disable History for his SAP system.
to be continued…
PS: another interesting fact that I picked up somewhere: if you scroll up/down using your keyboard in the history field you can delete entries by pushing the delete key. I know, it’s neat.
SAP: set a printer to print on a Single Side
By default SAP printers are set up to print pages based on printer’s default settings. To change that behaviour and control how the data is printed you can do the following:
- Execute transaction: SPAD
- Select your output device and enter the configuration screen
- On a 4.6C version you can go to the Output attributes tab and look at the “Output attributes for list drivers and Smart Forms” section
- Examine the drop down for the Print mode
- Typically by default you will see DEFAULT as the setting that is displayed, simply change the value to S SIMPLEX to allow the data to be prined on a Single Side
For more information on the matter for SAP version 7.0 you can have a look at this document.
SAP: Check the Passwords of Standard Users in All Clients
A quick way to check the status of all the standard users in your SAP system is to run a program RSUSR003.
SAP: debugging in pop-up windows
Debugging in SAP is something that I do almost on a daily basis, most of the time I get by just by typing the /h command in the transaction window and executing the program but this is not always possible.
The scenario that I speak of occurs when you are debugging a pop-up window. When you are working with a pop-up window there is no convenient transaction window where you can turn on the debugger. So what do you do?
Simple.
Create a new file; lets call it debugger.txt and populate the contents of the file with the following lines:
[Function]
Title=Debugger Session
Command=/h
Type=SystemCommand
Save the file and leave it on your desktop.
Now when ever you get to a pop-up window that you want to debug simply drag the debugger.txt file in to the window and you will activate the debugging session.
Happy hunting!