12.04.2011, 15:58 | #1 |
Участник
|
DAX 2009 + SQL2008 ключевые слова, например, StopList недопустимы в названии полей!
Обнаружили (и убили 5 часов, пока локализовали и смогли сформулировать) интересную особенность (багу??)
Проверяли на АХ2009, на Ах4 позже проверим, или сами проверьте и отпишите, плис. Условия для получения: БД в СКЛ должна быть в режиме совместимости с скл 2008 Делаем новую таблицу (мы, очевидно, это на нашей давносуществующей таблице нашли, с которой проблем до того не было и данные даже были). Делаем в ней поле с волшебным именем StopList (история пока умалчивает, какие еще слова - волшебные). Само по себе название поля вполне невинно, отражает смысл бизнес-процесса и вообще соотв БестПрактису. Такая табличка не проходит синхронизацию с ошибкой Описание ошибки SQL: [Microsoft][SQL Native Client][SQL Server]Incorrect syntax near the keyword 'STOPLIST'. При этом сформированный запрос (из лога ругани АХ) в самом СКЛ КвериАнализере тоже не проходит. То есть название полей НЕ ДОЛЖНЫ быть служебными словами, то есть АХ не умеет их оборачивать в некие кавычки-скобочки, как должно. Так что ли? ЛЕЧЕНИЕ: Поставить БД в режим совместимости с СКЛ 2005 - все ок ВОПРОС: Где узнать список этих ключевых слов? Тк переобзывание поля, даже одно, не так уж просто - в коде на него линки, в формах оно в куче мест. И сколько еще таких полей "опасны"? При разработке с нуля все ок, вас сразу пошлет в момент сохранения (сирхронизации) таблицы. Разработчик будет долго думать, что же не так - надеюсь, этот пост его спасет! Получается, что поле Select, Where, Join и прочие тоже опасны в скором времени? Либо, в АХ есть парсер ключевых слов, а о новом СтопЛист оно просто не в курсе. Тогда это надо лечить в самой АХ, тк поддержка СКЛ2008 не полная. |
|
|
За это сообщение автора поблагодарили: S.Kuskov (2). |
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|