IMan 4.25 - WHERE clause not parsed correctly (4 replies)
It looks like in general there is an issue with the parsing of the WHERE clause. Adding extra parenthesis, while not illegal, causes issue in IMan.
Example:
Original query from issue: (IDCUST = %IDCUST AND (UPPER(Email) UPPER(%Email))) OR (UPPER(Email) = UPPER(%Email) AND IDCUST %IDCUST)
Updated query: ((IDCUST = %IDCUST) AND (UPPER(Email) UPPER(%Email))) OR (UPPER(Email) = UPPER(%Email) AND IDCUST %IDCUST)
The only difference in the updated query is the extra parenthesis around "(IDCUST = %IDCUST)"
This change will cause IMan to throw the following error almost immediately: The field [IDCUST)] does not exist.
As a side note, in MSSQL you seem to be able to add unnecessary parenthesis as well
It didn't paste very well, so here's another screenshot of it. The red boxes highlight the added parenthesis which caused the The field [IDCUST)] does not exist error to start.
Randy, simply place square brackets around the field name.
I.e. %[Email]
Thanks
We are using an DB Writer to update a table. After updating IMan from 3.21 to 4.25, we are seeing a weird error thrown.
The WHERE clause is:
(IDCUST = %IDCUST AND UPPER(Email) UPPER(%Email)) OR (UPPER(Email) = UPPER(%Email) AND IDCUST %IDCUST)
The error we are seeing is "The field [Email))] does not exist.
It appears that something is not being parsed correctly in our WHERE clause.