Catalog Search – Business RequirementWholesale distributors usually have several 10K to 100K materials maintained in their ERP system but can procure about 10 times as much from their suppliers. My favourite example is a plumbing wholesaler who has plenty of white bathtubes maintained in his system, but has no master data about colored bathtub models from his suppliers. So when a customer asks for a specific yellow bathtube very likely there are no master data available for such a product, and therefore it would not be found via the (existing) material search. However the yellow bathtub can procured from supplier, if only the master data for this particular item were maintained in the system.

Catalog Search CapabilitiesIn the new catalog search as part of the Enhanced Material Search with Creation, you can now search for supplier catalog products very intuitively and in the same way as for existing material, even within the same screen. No screen switch, different transaction etc. required. Enter (or keep) the same search criteria as for the material search and press the button “Catalog Search” instead of “Material Search” (see screenshot):

The search results are displayed in the same way as the results for existing materials, just without those field data that are not in the catalog. That’s the reason why some fields here are empty, e.g. the material column with the material numbers. Well, not quite, for two of the results of the example there is a material number displayed, and all the other information of an existing material. Why’s that?

These two results with material numbers are the “white bathtubes”, meaning supplier products that have already been maintained in your system. But how is that recognized? Very simple: Before the search results of a catalog search request are displayed the application does an existence check for all search results by comparing the combination of “vendor” and “vendor material number” with the data of the ERP purchasing info records. And when such a combination matches with a purchasing info record the material number is known (the material obviously already exists), and then all information is pulled out of ERP to display material number, stock level, sales price etc. For all other supplier products just the information from the data respository is shown (product title/short text, EAN/UPC number if known, purchasing price, …). When you scroll the results to the right more information like vendor, vendor material number, vendor sub range etc. is displayed.

1-Click Material Creation out of Catalog Search results

OK, now you have found the yellow bathtube, but it has no material number. How can I order it without having a material number? Very easy: Create a new material out of it! Create a new material??? Isn’t this very complicated??? No, it’s not – it’s just one click on the button “Create Material”, that’s all, see here:

Hang on, one click, and a whole material master with all the material master data is created???? This can’t be true – but in fact it is!

You only have to have the new material creation capabilities configured to your needs, and have reference materials for all your required vendors and reference plants for all distribution channels maintained. This sounds like a lot of work, but actually it’s not at all.

Of course not the total set of all views in material master are created, but the necessary views to both sell and purchase the material:

Optional, but recommended: TREX for existing materials is updated for the new material.

Of course, the sales rep has to have the necessary (standard) autorizations to create a new material.

OK, with one click you have now created a new material master, with a material number displayed in the search result. This material can now be transferred to the sales order like any other existing material. Just mark the search result that now has a material number, and press “Add to Order”. That’s all. Great, isn’t it?

Material Creation options

Of course, there are also much more options to create a new material, e.g. using an existing material as a copy template, or completely from scratch using a small 2-step process. The complete material creation capabilities will be outlined in my 3rd and 5th blog.

Data repository options

But the one million dollar question still remains: How do I get the all the supplier product data in your system? Not in your system, but in a data repository, preferably a TREX index, or a catalog management system!

In the Enhanced Material Search with Creation as part of the SAP ERP standard Sales Order in Enhancement Pack 2, we have introduced an option to search in two repositories:

The second repository holds supplier product information from all those supplier products you would like to have searchable within Sales Order. Therefore the supplier product data have to be collected from the suppliers, have to be harmonized in terms of format and data structure, and maybe updated and enriched with own data e.g. in a catalog management system in advance. More about this supplier data preprocessing later. Let’s assume for the moment the supplier catalog data are all in place in the second repository and can be searched using the catalog search.

TREX vs. Direct Search via BADI

Let’s have a closer look at the repository for the supplier catalog products.

Option 1 is a TREX index that holds the supplier catalog data is strongly recommended. SAP provides the predefined TREX business object (“index”) WSD_CAT, which must be filled with your supplier product data in advance, and of course with delta information from time to time.

Option 2 is to search through a BADI/user exit in a catalog management system of your choice, without using a TREX.

Option 2 is not recommended. As the index for existing materials is always a TREX index (TREX Business object BUS1001006), and so the search semantics would be different between the two repositories if the respository for catalog products is not TREX. Another good argument for a TREX is it’s extreme performance combined with low hardware costs. The indices are held completely in memory, so a small actual dual processor server with 2-4 GByte RAM and RAID 5 can already be sufficient.

Therefore I only outline the necessary tasks to get the supplier data into a TREX.

How to built a supplier catalog TREX

This, in fact, is the most effort in the whole setup. Supplier catalogs are received in plenty of formats, in excel, xml, csv, access, flatfiles, …, all with a different data structure. To harmonize and enrich these data is a tremendous amount of work, but depending on your usage of the catalog search, an electronic catalog can be a huge benefit to your sales reps and can be worth the effort.

These are the general steps for a simple catalog data management solution:

Import of the supplier product data (conversion into a common file or table format – individually for each incoming catalog format)

Data harmonization (to have the same data structure among all catalog imports)

Data enrichment (optional step, but you may want to enrich ERP data like SAP vendor number, but also material group, product hierarchy to use the keyword search even within the catalog search, …)

This work is certainly not done for ALL your supplier catalogs, only for the important ones. Fewer times requested products from niche vendors can be certainly handled as before, or a material can be created out of the information a paper catalog provides.

So first, you have to find an application with which import a catalog. Unfortuntely, SAP does not offer an out-of-the-box solution here, that fits perfect to the whole Catalog Search process of supplier data import, harmonization and import triggered from TREX.

Best would be, of course, a catalog management system or kind of mass master data handling,e.g. directly within SAP ERP:

A professional Catalog Management like a hybris Product Catalog Managementor a 3rd party PIM solution is best suited for all kinds of data processing and management, with subscription, import rules, template support etc.

SAP Partner solutions are a good option. I personally worked with FIS GmbH and itelligence AG. Both have long-established SAP ERP based Business All-in-One solutions (FIS/wws by FIS GmbH, it.trade/it.wholesale by itelligence) with a catalog management application in place. I’m sure there are more partner solutions out there with such solutions.

A simple low-comfort option is to create an own z-table within SAP ERP, with a data structure that fits to the total of all important catalog field data. SAP note 1127400 explains the necessary steps in detail.

Microsoft Excel 2003 is suitable for test purposes only, because it is limited to 65535 lines – by far not enough for typical supplier catalogs. So it should be an application or table with unlimited lines, best a Catalog Management system. With Microsoft Excel 2007 you can maintain ~1 Mio lines, which might be sufficient for some customers. No idea how many lines Excel 2010/2013 can manage.

As an alternative you can bypass the search engine for the Catalog Search and the SES business object WSD_CAT, by implementing the Business Add-In BADI_WSD_CATALOG with method DO_SEARCH, to search directly in an external catalog management system.

P.S. The Enhanced Material Search with Creation is available from SAP ERP Core 6.0 EhP2, contained in SAP_APPL 602 in Business Function SD_01, to be activated with transaction SFW5. No industry switch is required. The Enhanced Material Search is designed as a module that can be implemented in other applications as well. This must be done on project basis. Customizing is specific to the calling application. For the EhP5 extensions please read Enhanced Material Search – Part 5: Major improvements in Enhancement Package 5.

We have EPR6 with EhP2 and have downloaded the Internal Sales Rep business pack. We want to pilot lean sales order entry in a portal and would like to be able to use Enhanced Material Search with Creation from the portal as well. Is this possible?

from the Internal Sales Rep role (running within an SAP Eterprise Portal, in a browser) you can call the standard sales order ERP transaction va01 which opens in a separate browser window.

That means the standard va01 is called as webgui transaction in a separate browser window, but outside the portal content environment. I suppose this is because of session ID timeout reasons.

Of course the enhanced material search as part of the va01 can run in a webgui (=SAPgui screen translated by the Web Application Server). When you call va01, and the enhanced material search is activated and customized of course you can use it in this environment.

From the ISR role point of view a hyperlink calls a connected ERP system and therein a transaction, which is opened in an own broser window. So there is no “real” integration of the va01 in the ISR, but you can call it without entering your logon data again, using Single Sign On (SSO).

As of now the Enhanced Material Search is implemented in two sales order solutions:

– in ERP Sales Order with described functionality. – In EhP4 for the coming Service Pack 2, the webdynpro based “Configurable sales UI” order entry solution will also use parts of the functionality.

No purchase order environment is supported yet, but it’s planned for the future to implement it in the ERP Purchase Order, Purchase Requisistion, and Seasonal Procurement transactions WPOhf2c/x,WPOhf3c/x, WPOhf4c/x

unfortunately there is no standard integration of the Enhanced Material Search with SRM, MDM or any other catalog management system established with Enhancement Package 2 to 4.

The specific reason for a missing MDM interface to a search engine is that MDM in its current release isn’t able to export all their catalog data in one turn to a search engine, and (even more important) to track data changes and post these changes in a delta update to the search engine.

An option with EhP 2 to 4 would be to bypass the search engine completely for a catalog search, while searching directly in MDM. At least the Enhanced Material Search provides such a BadI (), but I don’t know if MDM offers a way to answer catalog search request from a 3rd party tool (like the Enhanced Material Search is, from an MDM perspective). No one has ever done it.

If this is an option and you can’t wait until next year when EhP5 will be released, I can try to find out about this on MDM side and let you know.

However, in case you can wait for Enhancement Package 5, I have good news for you! From Enhancement Package 5 MDM is able to export its catalog data to a TREX managed by the new search engine framework SAP Enterprise Search, and post MDM catalog data changes as a delta update to the Enterprise Search. The Enhanced Material Search will of course work together with the SAP Enterprise Search as an additional alternative to the Search Engine Service.

In MDM this interface will be called MDM-Enterprise Search adapter. The MDM itself will not know about the Enhanced Material Search. MDM will just publish the data to the TREX index of the Enterprise Search, and the Enhanced Material Search will only communicate with the Enterprise Search.

You can read between the lines that the Enhanced Material Search will be further extended and improved in EhP5. It is still 8-9 months to rampup up, so at this early point in time I can only say that the Enhanced Material Search will be implemented in major procurement transactions, will support the creation of SAP for Retail generic articles + variants, support the SAP Enterprise Search and will offer a standard implementation of SAP for Retail based catalog system “PRICAT” to the Enterprise Search. I will write a new article about the coming extension early next year.

The Enhanced Material Search is already implemented in the webdynpro based Sales UI as of EhP4, however in a very limited functionality. The limitation are caused by the separation of UI and functionality demanded by webdynpro. Therefore not everything form the SAPGui based feature set of the Enhanced Material Search could be used in a webdynpro environment.

In Webdynpro based Sales UI you have the material search with the prices and ATP quantity displayed in the results, plus the detail view of plants depending on your own plant.However, it is not possible to perform a catalog search, material creation, etc. Most parts of the customizing was sapgui based, so it couldn’t be re-used when implementing the Enhanced Material Search in webdynpro Sales UI.

So the webdynpro based Sales UI has about 40% of the SAPGui functionality of the Enhanced Material Search.

I can offer you a short webinar to compare the two implementations. Please send me an email to ingo.woesner@sap.com in case you are still in doubt if the Webdynpro based implementation can still fit your requirements.

Our aim is to have this supplier catalogue in MDM and then be able to use the ‘enhanced search and material creation’ functionality accessed from the sales order in SAP to do the searching and subsequently the actual creation of material by use of data defined in the MDM catalog (via TREX).I have found note 1127400 which describes how the TREX index WSD_CAT is filled with the supplier data, but I am still a little confused about how and where the actual connection to the MDM is defined. Is this done as part of the BADI(s) as described in note 1127400 or are there some other technical stuff that needs to be maintained.I will appreciate if you could provide me with an overview of the technical landscape.

just a few days ago I have learned that the MDM Interface to Enterprise Search, which was planned for Netweaver 7.2, is still not released in the current 7.3 release due to higher reasons I do not know.

So right now there is no way to extract mass data from MDM to a TREX managed by the Enterprise Search. Also, I do not see any different way when using MDM. The only chance for you is to use the alternatives, which are described in my 5th blog.

Sorry for the bad news, there is nothing I can do here for the moment.

Our Issue is, we are probably not going to implement SP5 right now anyway as it will require huge amount of testing etc.

Our current component version is SAP ECC 6.0 EhP4.

Earlier were aiming to have the vendor catalog maintained in MDM and then somehow publish those supplier data to the Search Engine. When the data is then published on the Search Engine we should be able to use the BADI’s as described in note 1127400 in order to index the data for index WSD_CAT.

But as SAP MDM has not yet an interface to the export its catalog to TREX yet, and we are currently on EhP4, Can suggests us some other suitable solution, In the blog above read but about SAP Partner solutions but could understand what exactly it is, Please expleain briefly regarding the approach if possible.

the partner solutions are all-in-one-solutions with own application add-ons in ERP. For the management of supplier product data, they use tables of their own namespace in ERP, and have build an application around it to import, manage and export these data.

Of course you can do all this in z-namespace. The partner solutions are business proofed, include support, but require a license. In case you are interested please contact the partners directly.

the delta update of the search engine service must have implemented the function to read the change pointers, and there must be change pointers for the changed data. I think the latter is not inplace, so the delta update cannot find any changes, because there are not marked,nor the index service is implemebted in a way to read change pointers. So right now you cannot grab any changed data, because you cannot identify them.

I cannot help you with coding guidance because I am not a developer. Can you debug how this is done for the index BUS1001006 (Standard Materials)?

In case you do a full indexation every time please consider 10 to 30 milliseconds per data entry, which is 300.000 (30 ms) to ~1 Mio (10ms) per day.