Репортик
Репортик
Пожaловались мне тут, что на репортике (aspx) кнопарик "залипает".
Хорошо так залипает - до того, что вторую копию репортика запустить не удается...
Начал копать на предмет - ну и где же собак порылся...
Каждый запрос выполняется за 0.00:00:00 секунды.
А вот репортик в целом - где-то за 8 минут... ну на рабочем сервере чутка по-быстрее... примерно на порядок... где-то чуть больше минуты...
Полез смотреть в чем же дело... и получил вот такой результатат [кол-во, имя] (тут не все, но в остатке - малость)
185 -- loadDTGlassTypes()
185 --loadColour()
185 --loadDTAUF_POS_unplanned()
1 --loadDTDistinctProcessings()
658 --loadDTItemsSalesPrice() : 1
6 --loadDTItemsSalesPrice() : 2
6 --loadDTItemsSalesPrice() : 3
1 --loadDTOrders_unplanned_2()
185 --loadPlanMode()
5920 --loadQtyProcessing()
Итого - построение месячного отчетика - 7333 запроса к серверу... 8 минут трансфера запросов и данных... причем объем данных - меньше чем оbзапросов...
Сижу и думаю как быть - логика построения цен там достаточно неприятная...
правда Я зарекся делать бизнес-логику на уровне хранения данных
ну посмотрим что ты запоёшь когда миллионы записей нужно будет обрабатывать.
эта фигня тоже не помогает?
А кто палчИт?
Мну? Не-а...
Мну посмотрел чем можно заменить 5000+ запросов к серверу.
Получилось... смешно...
Дело в том, что все 5000+ запросов порождают, после нехилых пересчетов, скромную табличку - три колонки, 24 строки.
Ну Я ввожу новый запрос и весь пересчет убираю нафиг... остается только заполнить данными другую табличку...
Попутно выяснили, что в базе нет некоторых нужных данных... т.е. - вообще нет - справочники не заполнены - все чисто на подстановках кодов работает... Хи-хи...