Running Ranking Rules on Waterlines throws an Error

Document ID : KB000095123
Last Modified Date : 11/05/2018
Show Technical Document Details
Issue:
There are several datatypes of attributes that can be registered for use with Portfolios. However, if MVLs are used to define and run Ranking Rules, then an error is thrown by the application. A sample screenshot is provided below.

Portfolio Waterlines Error

The following error messages in app-ca.log accompanies the error thrown in the UI:
ERROR 2018-05-08 14:13:52,537 [http-nio-80-exec-6086] object.AttributeImpl (clarity:admin:5314077__03DFDB39-7307-4640-8E05-751C8B6A466F:pfm.runRankingRules) MVL attribute: p_testatt07051812 with value of: java.lang.String
ERROR 2018-05-08 14:13:52,553 [http-nio-80-exec-6086] web.WebActionController (clarity:admin:5314077__03DFDB39-7307-4640-8E05-751C8B6A466F:pfm.runRankingRules) 
com.niku.union.web.WebException: WebServiceAdapter::processRequest -> failed to process service request
Environment:
This behaviour has been tested on the latest GA version of PPM, as of this writing - 15.4.
Cause:
The reason this error gets thrown is because, Ranking Rules can be run only on values that are quantifiable. The application tries to convert the values present in an MVL to a quantifiable value such as a Boolean, or a Number, and fails during that attempt at conversion. The app-ca.log indicates this. MVL values are not quantifiable, because of the nature of data that they hold.
Resolution:
Use only quantifiable data to run Ranking Rules on. To this end, mainly numeric attributes should be used in the Waterlines to run Ranking Rules on.