Spotlight on the Enhanced Search (F4 Help)
I would like to highlight the Enhanced Search functionality that has been delivered with AS ABAP 7.4 SP05 and improved with higher SPs.
Lately, I’ve received some requests from different channels around the enhanced options of the search helps and especially about suppressing them (when set to active). So I would like to handle the topic in this blog.
The type-ahead – aka search-as-you-type – function allows a faster, search engine-like user interaction by showing possible search results from the standard F4 help already in a down box beneath the search field. This option works on all SAP-certified databases (anyDB).
In addition, the Fuzzy Search option allows a fault-tolerant, cross-column full-text search. This option doesn’t work on all databases currently – But it does on SAP HANA! An accuracy value can be specified for the error tolerance of the full-text search.
Both enhanced options of the Search Help are supported in classical dynpro screens (SAP GUI), but not yet in Web Dynpro. But like we at SAP, you surely have a lot of dynpro-based applications in use and thus lot of users who can benefits from this functionality. Nevertheless a type-ahead function can be provided in Web Dynpro applications using Suggested Values for Input Fields in Web Dynpro.
[New] Starting with WEBCUIF EhP3 SP05, the type-ahead option of the Search Help is supported in the Web Client UI Framework
Watch the video tutorial below and learn how to enable and use the new functionality.
PS: The demo in the video is based on AS ABAP 7.4 SP05, but with 7.4 SP06 and higher (recommended), developers do not longer have to modify the dynpros in order to enable the enhanced search.
“No programming – Just setting!” sounds good, but as it always is, when you tell developers that everything works automatically, questions around exceptions handling are raised up… 🙂
In the present context: How to deactivate the enhanced search?
They are two possibilities to do that and I would like to explain how to achieve it:
- User-specific deactivation
- Field-specific deactivation (global)
User-specific deactivation of the enhanced search
An end-user can influence the enhanced search function. The prerequisite here is that it must be set to active in the search help. The user-specific deactivation can be done in SAP Logon under Options > Interaction Design > Visualization 2 .
Three options are available in the Enhanced Search area.:
- Show Enhanced Search Automatically
- Show Enhanced Search With Shortcut (Ctrl+Shift+Q)
- Do Not Show Enhanced Search
Deactivation of the enhanced search for specific fields (for all users)
A developer can explicitly (programmatically) suppress the enhanced search for specific fields.
He has to do as follows in the relevant programm:
- Create a PBO module that disables the function on the relevant fields (see below)
MODULE disable_type_ahead_xxxx OUTPUT. cl_dsh_dynpro_properties=> disable_type_ahead ( fields = value #( ( conv string( 'INPUT-FIELD_1' ) ) ( conv string( 'INPUT-FIELD_2' ) ) ) ). ENDMODULE.
PS: For those who are not familiar with the syntax used above: This is still ABAP!
You can read more about the new modern and declarative ABAP language syntax in this blog by Horst Keller.
- Call the PBO module the appropriate PBO section of the relevant dynpro screen
Central deactivation of the enhanced search (for all users)
An administrator can deactivate the enhanced search centrally in an ABAP system.
He has to perform the following steps: :
- Go to transaction SDSH_CONFIG
- Switch to the Change mode
- Deselect the Use proposal search for input fields option.
You can find more information about the deactivation of the enhanced search in SAP Note 1971775.
That’s it! Read more about the enhanced search in the online ABAP documentation on the SAP Help Portal.
30.06.2015: Section about the central deactivation of the enhanced search has been added.
Thank you sharing this! Just one addition: Attached to note http://service.sap.com/sap/support/notes/1994773 you find a list of all type-ahead-enabled transactions of ERPEH7_SP04.
Thank you! 🙂
Never heard about SDSH_CONFIG.Thanks for sharing the info.
On a curious note,why somebody would be interesting in deactivating this kind of functionality.Infact,it makes life easier as far as search is concerned.What could be the scenarios when we will be faced with a requirement to deactivate type-head or Fuzzy search options of a search help.
Thanks for this nice summary.
If someone is on lower SP level eg SP4, and wants to play around, there is an example available here:
Very nicely explained.
Thanks for sharing.
I just added the "Additional Information" box at the bottom of the blog.
Kind regards, Carine
That's a really nice feature, and it really enhances the user experience on SAPGUI.
It is now also supported on WEBCUIF (a.k.a. CRM UI). A "Type-Ahead" F4 Help object used on an input field will also show a multi-column dropdown (up to now the Smart Value Help would show only one value set).
See WEBCUIF EhP3 SP05 - Release Notes for more details.
thanks for this additinal information. I'kll add it to the additional Info box.
Thx Carine! 🙂
is it possible to search for long text values, e. g. material long text?
No, search help (F4 Help) cannot be created for long texts (SAPScripts, ... - e.g. read with the function module READ_TEXT). You can only create a search help in SE11 on short texts (e.g. on MAKTG: material description in table MAKT).
Kind regards, Carine
Very nice document. Thanks for posting.
It is good see it has come to SAP at last. Better late than never. I keep getting this request from clients about this and now I know it can be done if they upgrade to a compatible system.
Very nicely explained. Thanks for sharing this.
thanks it is a nice blog,
I have one question,
is it possible to deactivate enhanced options of the standard sap search help?
I want to activate custom included search help's enhanced options instead of it
do you know if this feature is also planned for Webgui (SAP GUI for HTML)?
Thanks for sharing
Does anybody know if we can restrict what appears.
For example if we type a customer number can we omit customers who are flagged as dormant?
If you create a custom search help, yes. Either via the view conditions or via a search help exit.
thanks for this very good instruction !! it was working for an dynpro.
how I can implement it for HTML INPUT (cl_dd_form_area->add_input_element)
Great insight .. thanks Carine.
I actually have a weird issue with the enhanced search help ... would appreciate any insights you might be able to give ... posted as a question here Enhanced Search Help and weird input field length limitations behavior
I'm searching a way to actvate the enhanced research by transaction code.
I want to add this spotlight in alv f4 for field GL? I wanna know if this possible in alv.
I was try adding ref_fieldname and ref_tabname in field catalog but spotlight is not visible.
server is SAP ECC6 EHP8. could you give me some information about it. its possible or not ?
Thanks for the detailed explanation, Carine. My users were confused about the new search behavior and reported the "fuzzy search" as a bug. It will take some getting used to, but I think it could prove to be a useful feature when they're not quite sure what they're searching for.
Our application(sap hana 1511) had a weird issue about the enhanced search,it's that the enhanced search of the filed "Component" of cs01/cs02 is disabled,while the other trasaction like mm03 is OK.We are confused about this.
Thanks for sharing this !!!
I have a question about using the enhanced search on Material description on field MATNR ( Type Matnr ) used in an ALV Grid.
I created a Popup by using ALV Framework class CL_GUI_ALV_GRID which contains field Material as an Editable field but the Enhanced search does not work on field Matnr.
The enhanced Search on field Material works in VA02 and also it works fine in a Test report where a Parameter is created via : Parameters PA_MATNR type Matnr.
To get the enhanced search work on field Matnr in an ALV Grid do I need to use class CL_SALV_GUI_TABLE_IDA ?
Please see if time permits