我对EPL查询非常陌生。写了这个,它抛出了语法错误。
@Name('ExpressionTotalQuantitySoFar')
@Description('Gets the total quantity of a symbol so far')
create expression totalQuantitySoFar{ (TAX) =>
(Select sum(T.quantity) from TaxlotWindow as T where T.symbol = TAX.symbol and T.taxlotId < TAX.taxlotId)
};
create variable double totQty = 5.0 ;
@Name('ExpressionLongDebitBalanceTaxlotNoBox')
@Description('Check is if a trade side is invalid, returns rue for invalid statements')
create expression longDebitBalanceTaxlotNoBox{ (SECUR,TAX,ORD,AUE,FX) =>
totQty = totalQuantitySoFar(TAX)
case when (totQty > 0)
then cashImpactBase(SECUR,TAX,ORD,AUE,FX)*(-1)
else
0.0
end
};它给出了大小写附近的语法错误。
有什么帮助吗?
发布于 2014-08-27 22:01:26
发布时始终包含语法错误文本。否则你怎么能帮上忙呢。
我的建议是简化,直到语法正确为止。然后添加回来的东西。
很可能是这个奇怪的声明"totQty=..“原因就是它的错误。EPL表达式不是一种编程语言,不允许像Java或Scala那样声明变量。也许只需要使用Java静态方法来计算,而不需要编程语言。
https://stackoverflow.com/questions/25528838
复制相似问题