Я создаю условия, как следующее:Drools - двойное количество
$event : EventObject(type=='Sale', $points:points, $playerid:playerid) from
entry-point eventstream
Последствием этого мне нужно передать переменные на следующее:
boolean givePointsToPlayer(String playerId,
String pointType,
double amount,
String notificationMessage)
Самый простой пример ниже я даю 3 балла этому игроку
updateAPIv1.givePointsToPlayer($playerid, 'Points', 3, 'Points Awarded');
update(engine.getPlayerById($playerid));
Тем не менее, я хочу передать $ points: points to 'double amount'.
Простой вопрос, который я знаю, но как бы я мог это сделать? Что-то вроде?
$points=double amount;
updateAPIv1.givePointsToPlayer($playerid, 'Points', amount, 'Points Awarded');
update(engine.getPlayerById($playerid));;
Оцените обратную связь. Благодарю.
*** Обновление Я попытался также
$event : EventObject(type=='Sale', $points:points, $playerid:playerid)
from entry-point eventstream
updateAPIv1.givePointsToPlayer($playerid, 'Points', $points, 'Points Awarded');
update(engine.getPlayerById($playerid));
, но я получаю следующие ошибки для этого
"Unable to create Field Extractor for 'points'
Field/method 'points' not found for class 'com.sap.gamification.model.EventObject"
"Rule Compilation error $points cannot be resolved "
Любые мысли по этому поводу?
спасибо за ответ. Я пробовал это, и это не сработало, например: $ event: EventObject (type == 'Sale', $ points: points, $ playerid: playerid) из entry-point eventstreamupdateAPIv1.givePointsToPlayer ($ playerid, 'Points', $ points, 'Points Awarded'); update (engine.getPlayerById ($ playerid)); – MacAodh
См. Обновление выше – MacAodh
См. Редактирование моего ответа. – laune