Enhancement of RF Screens – LMOB
There are various links in SCN, which guide us on the use of RF programming and the steps to follow while developing a custom program. But what if a standard screen from LMOB function group needs to be modified??
Here is the complete steps, which can be referred to add the customer fields to standard RF screen belongs to LMOB function group.
- Get the Actual Screen Number based on Logical Screen Number in SPRO -> Logistic Execution -> Mobile Data Entry -> Define Screen Management
- For Example, to enhance the RF screen of Pick and Pack (LM45 Transaction) the Logical Screen for Pick and Pack is ‘0650’. In the Define Screen Management (defined above) the actual screen number in Narrow Format (16X20) is ‘2650’ and Large Format(8X40) is ‘0650’
- In the LMOB function group for every logical screen a dummy screen is available which contains the screen exit. The dummy screens can be identified as ‘1(logical screen). So for logical screen ‘650’ the dummy screen is ‘1650’.
The program mentioned in the green color is nothing but the user screen i.e the screen which has to be created in that program as a subscreen.
- Now copy the narrow format screen ‘2650’ in the program ‘SAPLXLHU’ as custom screen ‘9650’ (Follow the naming standards of custom screen number 9(logical screen)).
- In the function group XLHU, screen 9650 gets created. Now remove the OK_CODE from ‘Element list’ tab and screen type is changed to ‘Subscreen’
- Add the additional fields in the screen layout and populate those fields in PBO or get the values in PAI after a certain user action by capturing the SY-UCOMM.
- Now the subscreen ‘9650’ has to be embedded in the dummy screen 1650. To do this create a CMOD project and assign the enhancement component MWMRF650
Note: The enhancement component can be identified by using the F4 help in SMOD transaction. Use the package name as search criteria
- Activate the CMOD project. The screen exit 1650 gets implemented.
- Now the custom screen ‘9650’ is configured in the Screen Management (SPRO) for the narrow format (16X20)
- To run the RF transactions, the user must have a screen format configured in the LRFMD transaction.
Note: The Variant in the Screen Management and in the LRFMD transaction should be same.
- Run the transaction LM45
- If the user doesn’t want the additional fields then remove the variant in LRFMD transaction
- Now run the transaction LM45
Thank you very much for this!!
I have to modify the standard LM45 as well so this post is invaluable, there's not much info around about this process, even the SAP help I've found is not detailed at all.
I just have one question, I see the fields you added are ready for input (as I need), but the SAP help says "You can add fields that are available through standard transactions to the existing screens. Currently, these fields can only be used for display purposes.".
Can you confirm there's no problem in adding custom editable fields?
Again, many thanks!
Basically, when you implement the exits and do the configuration like setting the variant to '1' in screen management for your screen means you have defined a customer screen, not a standard one.
So you can add the custom editable fields in your screen, there wont be any problems.
Excellent. I will try this approach.
Hello Rakshith, I have a problem with which you may be able to help.
Due to changing requirements I ended up leaving screen 0650 as standard (2650) and instead I'm creating a custom version for logical screen 0402, that is i'm copying phisical screen SAPLLMOB 2029 to SAPLXLRF 9402 as a subscreen so I'm able to add a pushbutton (which goes to another completely custom screen). So far so good.
The problem I have is with the PBO logic of the custom subscreen. Because all the logic is now executed on the main (dummy) screen 1402, the custom subscreen is showing standard fields and buttons which should be hidden, focus is not set on the proper field, etc. The same problem I had with screen 0650, but on this one it is more notorious because it's more complex.
My question, how to handle this? I tried replicating 2029 logic by creating a FORM which in turn PERFORMs al the logic of the modules, but I don't like this solution and I'm also not sure it is working entirely properly:
Another option would of course be to use just LOOP AT SCREEN and SET CURSOR statements to leave the custom subscreen in the same way, but this would not be dynamic as the standard is, so I'm not sure it's the proper solution either.
Which is the way to do this? I find no information at all even on SAP support.
EDIT: Precisely, you can see the same problem on your blog screenshots: In your custom version of screen 0650 the "F1 Save" button is shown, while the standard version hides it.
Thanks for sharing.