Jeff Glass created DROOLS-5999:
----------------------------------
Summary: Global variable cannot be used in function call in when clause
Key: DROOLS-5999
URL:
https://issues.redhat.com/browse/DROOLS-5999
Project: Drools
Issue Type: Bug
Components: core engine
Affects Versions: 7.48.0.Final
Reporter: Jeff Glass
Assignee: Mario Fusco
Attachments: DroolsBugTest-2.java
With a rule like this:
{code:java}
global LocalDateTime $CURRENT_DATE
declare Job
createdDate : LocalDateTime
end
...
when
$Job : Job(createdDate.compareTo($CURRENT_DATE)>0)
{code}
Drools gives this error:
{code:java}
Parse exception:
Message [id=1, kieBase=defaultKieBase, level=ERROR,
path=com/guidewire/rules/service/language/DynamicRule1.drl, line=22, column=0
text=Unable to create reader for
'createdDate.compareTo($CURRENT_DATE)':[Error: unable to resolve method using
strict-mode: com.guidewire.rules.service.language.Job.$CURRENT_DATE()]
[Near : {... createdDate.compareTo($CURRENT_DATE) ....}]
^
{code}
Note that this works though:
{code:java}
$Job: Job($CURRENT_DATE.compareTo(createdDate)<=0)
{code}
--
This message was sent by Atlassian Jira
(v8.13.1#813001)