CRM and CX Blogs by SAP
Stay up-to-date on the latest developments and product news about intelligent customer experience and CRM technologies through blog posts from SAP experts.
cancel
Showing results for 
Search instead for 
Did you mean: 
bruce_li
Contributor

Purporse

When searching by search criteria 'valid from' and 'valid to ' or timeframe, the result list sometimes make some

customers confused as they think the result list is not per the given search criteria.        

        

For example:        

 

Some customers think the result should be the one with (01.01.2010 <= valid from, valid to <= 31.12.2010 )        

This is not correct.        

Standard Behavior

       

The standard behavior is that All valid documents (with "start date" earlier than "the end of the validity period" and         

"end date" later than "the start of the validity period") will be returned as search results.        

That is to say in this example the one with (valid_from <= 31.12.2010  Valid_to >= 01.01.2010). Please check

following chart.        

Regarding this standard behavior, you can refer to point 8 of note 1318262 RFW: FAQ - Reporting framework.        

        

Another example:        

Please note:        

        

The reason is because the 'valid from' and 'valid to ' on result list by searching sales agreement on web ui, are showing

the valid date of header.        

        

But when searching sales agreement, system will search data by using valid date of table CRMD_ORDER_INDEX

as search condition, which is the valid date of item.        

        

The above entries(Valid From:07.07.2009, Valid To: 31.12.2009 ) are shown in result list is because: in table

CRMD_ORDER_INDEX they all include items such as following.        

                 

CRMD_ORDER_INDEX~DATE_1  (valid from)  06.08.2009 22:00:00        

CRMD_ORDER_INDEX~DATE 2  (valid to)  06.08.2010 22:00:00        

        

As the 'valid from' and 'valid to ' of item is 06.08.2009 and 06.08.2010 which fulfills the above condition

'valid from <= 20101231 and valid to >= 20100101', so these agreements are shown in result list.

        

Other hints:        

        

You can always check internal table IT_WHERE in debug mode by set breakpoint at below method when you search

opportunity, sales agreemetns by webui role or search transactions in interaction history, inbox by ic agent role.        

        

CL_CRM_REPORT_ACC_DYNAMIC===== / CL_CRM_REPORT_ACC_DYNAMIC        

METHOD                         / DATABASE_ACCESS        

        

  IF gr_question->gv_db_hint IS INITIAL.        

    IF et_guidlist IS REQUESTED.        

      SELECT DISTINCT (i_select)        

             FROM (i_from)        

             UP TO i_up_to_n ROWS        

             INTO TABLE et_guidlist        

             WHERE (it_where). <<<<<<<<        

        

IT_WHERE        

->        

CRMD_ORDER_INDEX~DATE_1 LE '20110101000000 ' AND        

CRMD_ORDER_INDEX~DATE_2 GE '20100101000000 '        

->        

3 Comments