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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 24.03.2004, 11:42   #1  
Omeo is offline
Omeo
Участник
 
129 / 50 (2) ++++
Регистрация: 18.03.2004
Адрес: Moscow
? проблема с lookup'ом
вот такой код для lookup'а:

qDBS = query.addDataSource(tableNum(ProdTable));

qDBS.addRange(fieldNum(ProdTable,ProdStatus)).value(queryValue(ProdStatus::Completed));

qDBS.orderMode(ORDERMODE::OrderBy);
qDBS.addSortField(fieldNum(ProdTable,DlvDate),SortOrder:escending);

qDBS.addRange(fieldNum(ProdTable,ProdId)).value("!"+queryValue(ProdPasport.ProdId));

проблема в следующем: запрос строится нормальный но в lookup'е все равно есть запись с ProdTable.ProdId == ProdPasport.ProdId
Старый 24.03.2004, 12:33   #2  
George Nordic is offline
George Nordic
Модератор
Аватар для George Nordic
Злыдни
 
4,479 / 1250 (50) ++++++++
Регистрация: 17.12.2003
Адрес: Moscow
Записей в блоге: 9
Omeo!

В данном случае у Вас ProdPasport.RecId == 0 (проверьте - может, у вас не выбирается данная таблица), соответственно, и ProdPasport.ProdId == "".
Поэтому все и не работает.
Старый 24.03.2004, 12:38   #3  
Omeo is offline
Omeo
Участник
 
129 / 50 (2) ++++
Регистрация: 18.03.2004
Адрес: Moscow
ну вот, напрмер, запрос который в QueryBuildDataSource:

SELECT * FROM ProdTable ORDER BY ProdTable.DlvDate DESC WHERE ((ProdStatus = Завершено)) AND ((NOT (ProdId = 0101000805)))

но в lookup'е я все равно могу найти запись с ID 0101000805
Старый 24.03.2004, 12:56   #4  
George Nordic is offline
George Nordic
Модератор
Аватар для George Nordic
Злыдни
 
4,479 / 1250 (50) ++++++++
Регистрация: 17.12.2003
Адрес: Moscow
Записей в блоге: 9
Попробуйте такой код:

PHP код:

          Query                   query
;
          
QueryRun                queryrun;
          
QueryBuildDataSource    qbds;
          
QueryBuildRange         qbr;
          
TableId                 tableId;
          
FieldId                 fieldId;
          
FieldId                 joinedFieldId;
          ;
          
query = new Query();

          
tableId tablenum(ProdTable);
          
qbds query.addDataSource(tableId);
          
tableId tablenum(ProdPassport);
          
qbds qbds.addDataSource(tableId);
          
          
fieldId         fieldnum(ProdTableполе свяи relaton на ProdPassport);
          
joinedFieldId   fieldnum(ProdPassportполе свзя (relationс ProdTable);
          
qbds.addLink(fieldIdjoinedFieldId);
          
qbds.joinMode(JoinMode::ExistsJoin);

          
fieldId fieldnum(ProdTableProdStatus);
          
qbr qbds.addRange(fieldId);
          
qbr.value(queryValue(ProdStatus::Completed));
          
qbds.orderMode(ORDERMODE::OrderBy);
          
fieldId fieldnum(ProdTableDlvDate);
          
qbds.addSortField(fieldIdSortOrder::Ascending);
          
qbr.value(/*Ваши параметры. Теперь ProdPassport - Это Ваша таблица? - в зоны видимости*/);
          
//ползуйтесь
          
info(query.dataSourceNo(1).toString());
          
//что бы посмотреть, что получилось 
Не бойтесь, что код такой длинный - здесь краткость - вовсе не сестра нашего брата
Задо в дебагере легче оттрасировать, и понять, где ошибка!
Старый 24.03.2004, 12:58   #5  
George Nordic is offline
George Nordic
Модератор
Аватар для George Nordic
Злыдни
 
4,479 / 1250 (50) ++++++++
Регистрация: 17.12.2003
Адрес: Moscow
Записей в блоге: 9
Кстати, а что это за таблица - ProdPassport? Ваша собственная?
Производство курочите...
Старый 24.03.2004, 13:24   #6  
Omeo is offline
Omeo
Участник
 
129 / 50 (2) ++++
Регистрация: 18.03.2004
Адрес: Moscow
спасибо за помощь

только помогло с JoinMode::NoExistsJoin
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Проблема со своим lookup-ом sweeper DAX: Программирование 9 15.01.2009 18:38
Подскажите в чем проблема у Lookup AndrianG DAX: Программирование 2 06.01.2009 17:38
Проблема с Lookup Form artem-t DAX: Программирование 5 17.01.2007 13:15
lookup - проблема. Помогите! kashperuk DAX: Программирование 14 10.12.2004 15:28
Проблема с Lookup Berty Wooster DAX: Программирование 2 10.02.2004 14:58

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

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

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