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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 01.11.2007, 10:06   #1  
Михаил Андреев is offline
Михаил Андреев
Участник
Компания АМАНД
Лучший по профессии 2009
 
1,300 / 239 (10) ++++++
Регистрация: 09.11.2001
Адрес: Химки, Московская область
Цитата:
Сообщение от exodus Посмотреть сообщение
Мне нужно выбрав основное средство в модуле ОСНОВНЫЕ СРЕДСТВА и щелкнув на кнопку получить сумму затрат на ремонт на определенный период.Очень плохо что все необходимые данные разбросаны по разным таблицам. Получается мне для каждой табицы надо писать цикл.Или как-то можно поубавить циклы,подскажите?
Не видя связей таблиц, нереально ответить правильно. Если предположить, что никаких вычислений или запросов внутри циклов (внешних) нет, а связи типа 1:N или N:1 и всегда есть, тогда могу предположить, что это можно сделать одним запросом типа
X++:
select sum(  ) from   
join ,
.
Запрос, насколько я понял, будет включать порядка 4 таблиц. Другими словами, начинаем запрос с таблицы затрат, фильтруя её по периоду, и далее накладываем фильтры по связям до конкретного ОС.
Но, повторюсь, не зная точно, каким образом связаны таблицы, однозначно ответить на вопрос невозможно. Если где-то связь необязательна или есть вычисления или запросы внутри циклов, данный метод не подойдёт.
__________________
Михаил Андреев
https://www.amand.ru
Старый 06.11.2007, 07:38   #2  
exodus is offline
exodus
Участник
 
23 / 10 (1) +
Регистрация: 22.10.2007
Я сделал как вы рекомендовали

X++:
 select sum(TOR_QuantityOperation) from prodjournalroute
              //  group by transdate
                  where prodjournalroute.TransDate >= FromDate 
                    && prodjournalroute.TransDate <= ToDat
                     join  tor_Worktable
                       where tor_Worktable.Code == prodTable.tor_WorkCode
                         &&  tor_Worktable.WorkGroup == TOR_WorkGroup::TR
                          join prodtable
                             where prodtable.ProdId == prodjournalroute.ProdId
                          join tor_ordersobj
                             where tor_ordersobj.ProdId == prodtable.ProdId
                          join tor_eo_table
                            where tor_eo_table.EO_Id == tor_ordersobj.EOId
                               && tor_eo_table.RAssetId == rassettable.AccountNum;
но у меня при выполнении кода выдает следующую ошибку
Нажмите на изображение для увеличения
Название: 9.JPG
Просмотров: 332
Размер:	27.5 Кб
ID:	3020
подскажите что надо исправить в коде
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Оптимизация класса Tax Lihgt DAX: Программирование 43 27.05.2022 11:05
Оптимизация кода с LedgerTrans Poleax DAX: Программирование 18 07.11.2008 12:32
проблема с настройкой штрихового кода Nic DAX: Функционал 4 27.12.2004 09:04
Оптимизация кода X++ Владимир Максимов DAX: Программирование 8 19.01.2004 15:24
Использование штрихового кода (barcode) в Аксапта Pavlo AKA Panok DAX: Функционал 9 17.10.2003 15:13
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

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

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

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