2012-06-07 4 views
1

Что мне нужно сделать, если KeymarkDocField, идентифицированный lineId 2016, имеет нулевое значение, получите значение из другого KeymarkDocField, идентифицированного с помощью fieldOrderNumber 265, и установите его.Drools Правило не срабатывает

У меня есть следующее правило:

rule "Add Disbursement Date to NLS XML Output" 
when 
    $modify : KeymarkDocField(lineId == 2016, value == null)    
    KeymarkDocField($disDate : value, fieldOrderNumber == 265) 
then 
    modify($modify){ 
     setValue($disDate) 
    } 
end 

Все эта информация поступает из файла XML. Я просмотрел файл XML и проверил все данные правильно. Однако это правило не срабатывает. Я новичок в Drools и задаюсь вопросом, сможет ли кто-нибудь определить ошибку, которую я совершил.

ответ

0

Выяснил это. Это потому, что lineId возвращает String, not и int. Таким образом, сравнение не удалось.

Смежные вопросы