Показать сообщение отдельно
Старый 01.11.2007, 10:06   #4  
Михаил Андреев 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