06.05.2008, 15:15 | #1 |
Участник
|
Функция QueryValue() экранирование слеша \
Коллеги, обнаружил интересную вещь, при работе с Query используется функция QueryValue()
Она преобразует входящую строку так что перед символами : пробел * " , . добавляется двойной слеш \\ Но почему то не добавляется двойной слеш перед символом \ Из-за этого глючат фильтры. Например, если номер накладной задать со слешем, допустим "01\1" то тогда невозможно распечатать отчет. (Класс TradeLoopTrans используемый для перебора строк использует QueryValue() - как следствие получается кривой фильтр и строчки не попадают) Есть соображения почему разработчики не добавляют "\\" для символа \ ? Можно было бы просто исправить код, чтобы обратный слеш тоже экранировался, но стремно, как бы в другом месте что-нибудь не отвалилось. Кто нибудь такое делал ? P.S. Ax 3.0 SP3 |
|
06.05.2008, 15:27 | #2 |
Участник
|
По ходу, исправили это только в 5-ке Там код метода SysQuery::value() почти такой же, как в 4-ке (переработанный со времен AX3), но quotableStr имеет вид ' *",.()\\'
|
|
|
За это сообщение автора поблагодарили: Logger (2), alex55 (1). |