AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 06.07.2005, 10:40   #1  
Perc is offline
Perc
Участник
 
194 / 57 (2) ++++
Регистрация: 05.03.2005
select * where ...
Вопрос новичка. Искал по форуму похожие проблемы, но там мутно для новичка написано.
Можно ли в запросах использовать конструкцию как написано ниже? У меня ошибка компиляции. Не могу поверить, что это не работает.

InventTable it;
;
oldkod='??001*';
while select forUpdate * from it where it.ItemId like oldkod
{
print it.itemid;
}

Если так писать нельзя, то как это делают в аксапте обычно?
Старый 06.07.2005, 10:48   #2  
MironovI is offline
MironovI
Участник
 
724 / 77 (4) ++++
Регистрация: 30.05.2005
Нет, такое она не скушает, но можно сделать query добавиив к нему range с значением '*трампам' и даже больше, можно и другие поисковые символы пользовать типа диапазонов, больше\меньше и т.д..
Старый 06.07.2005, 10:53   #3  
DenNik is offline
DenNik
Участник
 
62 / 9 (1) +
Регистрация: 24.05.2005
Примерно так

InventTable it;
;

oldkod='??001*';
while select
it
where it.itemId like oldkod
{
print it.itemid;
}
причём компилятор также может ругаться на то, что oldkod объявлен как str.
Удачи.
Старый 06.07.2005, 10:57   #4  
DenNik is offline
DenNik
Участник
 
62 / 9 (1) +
Регистрация: 24.05.2005
2 MironovI
с оператором Like всё должно пройти нормально, по крайней мере у меня всегда проходило (Ax 2.5)
Старый 06.07.2005, 11:10   #5  
Perc is offline
Perc
Участник
 
194 / 57 (2) ++++
Регистрация: 05.03.2005
Да жаль. не ожидал такого подвоха.
Буду мыслить по новому
Старый 06.07.2005, 11:11   #6  
MironovI is offline
MironovI
Участник
 
724 / 77 (4) ++++
Регистрация: 30.05.2005
Цитата:
Изначально опубликовано DenNik
2 MironovI
с оператором Like всё должно пройти нормально, по крайней мере у меня всегда проходило (Ax 2.5)
Я эту проблему еще из 2.5 помню кста.. как у вас работает не знаю.. вот что она скажет дословно на такую конструкцию: "Контейнерные и текстовые поля не могут быть использованы в выражении WHERE."

PS - обявление переменной oldkod скушали?..

static void Job19(Args _args)
{
InventTable it;
str oldkod;
;

oldkod='??001*';
while select
it
where it.itemId like oldkod
{
print it.itemid;
}
}
Старый 06.07.2005, 11:20   #7  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,361 / 2084 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Atlanta, GA, USA
Так это потому, что вы объявляли свою переменную как текстовую неограниченной длины.
Просто нужно сделать ее на основе Расширенного типа данных. И все будет ОК.
Или даже просто ограничить длину строку типа str 20
Старый 06.07.2005, 11:26   #8  
korolf76 is offline
korolf76
Участник
Ex AND Project
 
36 / 12 (1) ++
Регистрация: 26.10.2004
Адрес: Петербург
Правильно, надо объявлять как строку фиксированной длины

static void Job19(Args _args)
{
InventTable it;
str 6 oldkod;
;

oldkod='??001*';
while select
it
where it.itemId like oldkod
{
print it.itemid;
}
}
Старый 06.07.2005, 11:29   #9  
MironovI is offline
MironovI
Участник
 
724 / 77 (4) ++++
Регистрация: 30.05.2005
Респект
Старый 06.07.2005, 11:43   #10  
Perc is offline
Perc
Участник
 
194 / 57 (2) ++++
Регистрация: 05.03.2005
korolf76 огромное СПСБ.
Я чувствовал, что я на верном пути ... Теперь все встало на место.
Старый 06.07.2005, 12:31   #11  
NeveB is offline
NeveB
Участник
 
60 / 16 (1) ++
Регистрация: 14.11.2003
Адрес: Mosсow
Где-то в FAQ это было... в след. раз смотрите первым делом там.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
QueryBuildRange в select.. where propeller DAX: Программирование 11 30.09.2008 13:35
Разница NotInTTS и Found Logger DAX: База знаний и проекты 6 18.09.2008 12:35
Ошибка при старте АОСа zZ_TOP_Zz DAX: Администрирование 4 11.09.2008 16:08
gatesasbait: Reverse keyword on Select Statements Blog bot DAX Blogs 0 08.02.2008 00:10
Вопрос про Demand Planner slava09 DAX: Функционал 4 25.09.2006 11:43

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 04:58.