Было нечто подобное.
Как выяснилось кусок кода
X++:
&& InventTrans.costamountPosted > 0 - InventTrans.costamountadjustment
выдавал такую ошибку.
На оракл он уходил так :
X++:
AND (COSTAMOUNTPOSTED>(:IN5-COSTAMOUNTADJUSTMENT))))
Причем когда включил литералы, то обнаружил что уходит вот такой запрос !!!
X++:
AND (COSTAMOUNTPOSTED>(7.<00373231303336E50-COSTAMOUNTADJUSTMENT)))
или
X++:
AND (COSTAMOUNTPOSTED>(7.;00323438363336E50-COSTAMOUNTADJUSTMENT)))
т.е. константа 0 парсером преобразовывалась в не совсем 0
Самое неприятное, что такое происходило не всегда, а например на 3-м или 5-м вызове запроса. (и это было уже совсем подстава)
т.е. нередко уходил вполне нормальный запрос с нулем, а не странной константой "7.<00373231303336E50"
Точного рецепта как это побороть не дам - начисто в голове забылось

По-моему я шаманил с типом константы в коде, т.е. вместо 0 писал 0.0 а также могло влиять то с какого месте от знака неравенства стоит операнд.