Show TOC

 Technical Aspects of the Search in SAP E-Recruiting

Communication with the Search Engine TREX

SAP E-Recruiting uses SAP’s own search engine Search and Classification (TREX) as one of its search engines.

Communication between SAP E-Recruiting and TREX is handled using an RFC connection.The application uses SAP Gateway to send search and index queries to the RFC server along this connection. The RFC server routes these queries to the TREX server and then returns the answer to the application.

In addition to the RFC connection, communication between TREX and SAP E-Recruiting requires a Search Server Relation (SSR). Among other data, the Search Server Relation contains information about the TREX search engine used in the application. The SSR is a prerequisite for the generation of an index category .

An index category is a logical unit for identical sets of documents. Document information, such as author or language, is stored there for indexing. The index category is assigned to exactly one SSR and one search engine. When the index category is created, language-dependent indices are created on the TREX side that contain information about the indexed documents in the relevant language.

Communication Between SAP E-Recruiting and TREX

Document Storage

The documents themselves are stored and managed in the Knowledge Provider (KPro). KPro is a service of Web Application Server (Web AS) that provides interfaces for accessing the search engine TREX, and thus enables TREX to be implemented in SAP E-Recruiting .

Since KPro can be used by multiple applications, SAP E-Recruiting documents must be distinguishable from the documents of other applications. This is achieved using document spaces . SAP E-Recruiting uses the document space HR_KW .

In addition to being assigned to the document space HR_KW, documents are assigned to a document class . The document class specifies the type of information contained in a document, or the purpose of the document. All applications (including SAP E-Recruiting ) that use an HR object as a key attribute use the document class HR_DOC .

Search Profiles and Search Profile Types

Documents relevant for searches in SAP E-Recruiting are XML search profiles on the one hand, and attachments in the form of files such as candidates’ resumes or references on the other hand.

A search profile represents a structured set of diverse object data that enables you to find objects in SAP E-Recruiting , such as candidates, requisitions, or job postings. This implies that each object has a search profile whose data is available in XML format and that is assigned to a search profile type .

Search profile types map the different object types in SAP E-Recruiting and serve as templates for creating search profiles. All search profiles that are derived from one search profile type have the same XML data structure.A specific Builder Class is assigned to a search profile type. This is used to create the XML search profile of the search profile type.

You assign fields of an information category to a search profile type in order to define the structure of the search profile of a given search profile type or to specify which data of an object in SAP E-Recruiting should be able to be found.

An information category is a logical unit used for grouping fields belonging to a specific infotype or business partner . Each information category is assigned a structure , a content extraction class and an object type . The structure indicates which fields are available in the information category. The object type assignment plays a role when defining search template elements and when assigning information category fields to a search profile type. When a search profile of a given search profile type is generated or updated, the content extraction class uses the builder class to fill the fields with data of the objects assigned.

The following graphic illustrates the structure of a search profile.

Structure of a Search Profile

In addition to specifying the content of an XML search profile of a search profile type, you also specify the type of information contained in the search profile. This influences how the TREX search engine searches for and finds information or field content. Information category fields of the type free text can only be found in a free text search . Fields of the type entity can only be found using the attribute search .

Multiple languages can be assigned to a search profile type. The corresponding search profile for an object in SAP E-Recruiting is then created in the different language versions. The object can then be found in the different search languages.

A search profile is created or, if one already exists, updated whenever the data of the associated object in SAP E-Recruiting changes, for example, when a candidate updates his or her candidate profile or creates a new one. In this case, an entry is made in table T77RFC_SPT_CP . This entry contains the relevant HR object.

The table entries are processed at regular intervals by a periodic service . The periodic service reads the HR objects from the table, checks whether the corresponding search profile exists, triggers creation, update, or deletion of the search profiles by means of the builder classes, and finally triggers the indexing process by TREX.

It sometimes makes sense to update all search profiles of a search profile type. This could be the case, for example, if a new information category field is added to a search profile type and the field should be available in the existing search profiles as well. When a search profile type is updated, the HR objects of all existing valid objects of SAP E-Recruiting that match the selected search profile type are written to table T77RCF_SPT_CP and later processed by a periodic service.

User Interface of the Search

The structure of the user interface of a search application is defined using a search template group . As a rule, a search template group consists of a set of search templates, where each search template must be assigned to the same object type.Most search template groups consist of one search template for free text search and several search templates for attribute searches. The purpose of search templates is to group search template elements into content-specific groups.

Search template elements are assigned to a specific element type . Element types specify how search template elements appear on the user interface of the search.For example, a search template element can represent an input field or a drop-down list.

If the element type represents a value help, the search template element can be assigned a class, and where relevant, a field of this class for collecting the value help. Each search template element is also assigned a field from an information category . This sets up the connection between the search template element and the relevant field of a search profile type and thus the corresponding search profile. This ensures that the right search profile fields are searched during an attribute search.

Schematic Structure of a Search Application

Example of a Search Application User interface