Имя: Пароль:
1C
1С v8
1с СКД Большой объем данных
,
0 DmitriyDI
 
06.06.14
11:52
добро дня, делаю отчет на СКД запрос по оборотам, с получением цены на каждую дату, за год по всем товарам. объем базы 500гб, ну и не хватает ему чего-то, не знаю чего, пишет  Bad Allocation, думаю памяти оперативной, а нельзя никак разделить этот запрос на части, и отрабатывать по частям, а потом собирать это при выводе результата?
1 Господин ПЖ
 
06.06.14
11:54
какой смысл в сем действе?
2 DmitriyDI
 
06.06.14
11:55
(1) отчет чтобы вывел
3 DexterMorgan
 
06.06.14
11:55
делаю отчет на СКД запрос по оборотам, с получением цены на каждую дату, за год по всем товарам. объем базы 500гб

Тяжело ему, понимаешь?!
4 echo77
 
06.06.14
11:58
Как цены на каждую дату получаешь?
5 DexterMorgan
 
06.06.14
11:58
(0) Ну а вообще попробуй в цикле: "первые N", "упорядочить по" и с отбором по полю упорядочивания - ">"
6 DmitriyDI
 
06.06.14
12:00
(4) http://kb.mista.ru/article.php?id=92 как тут в пункте СКД написано
7 Fragster
 
гуру
06.06.14
12:01
(0) делаешь двумя наборами данных?
8 DmitriyDI
 
06.06.14
12:01
(5) не совсем понял
9 DmitriyDI
 
06.06.14
12:01
(7) да
10 Fragster
 
гуру
06.06.14
12:03
(9) посмотри в диспетчере задач - может тебе в клиенте памяти не хватает (в смысле 32битный процесс лопается)?
11 Господин ПЖ
 
06.06.14
12:04
(2) это не отчет а хавно... никто не будет читать эти простыни
12 Fragster
 
гуру
06.06.14
12:04
ну и да - текст запроса с ценами и картинку с параметрами соединения давай
13 Fragster
 
гуру
06.06.14
12:04
(11) может там 100-200 строк всего
14 DmitriyDI
 
06.06.14
12:04
(10)  я пробовал формировать на 1 сервере (работаю в толстом клиенте), там на 10% умирал, а вот запустил на другом там памяти 200гб оперативной, там на 30% ложиться, но памяти еще достаточно.
15 DmitriyDI
 
06.06.14
12:05
(13) ну да там только группы в разрезе складов, не так уж и много информации
16 Fragster
 
гуру
06.06.14
12:06
(14) дело не в оперативе, ты посмотри, дорастает до 1,5 ГБ процесс 1ски на клиенте, или нет?
17 DmitriyDI
 
06.06.14
12:07
(16) до 2,7 гб дорастает
18 DmitriyDI
 
06.06.14
12:08
(17)на момент ошибки
19 Fragster
 
гуру
06.06.14
12:08
(17) на клиенте? 1cv8.exe? 64битная ось, чтоле?
тогда давай (12)
20 DmitriyDI
 
06.06.14
12:09
(19) ,да 64,

ВЫБРАТЬ
    &Дата КАК Дата,
    ЦеныПродажиСрезПоследних.Товар КАК Товар,
    ЦеныПродажиСрезПоследних.Склад КАК Склад,
    ЦеныПродажиСрезПоследних.Цена КАК Цена
{ВЫБРАТЬ
    Дата,
    Товар.*,
    Склад.*,
    Цена}
ИЗ
    РегистрСведений.ЦеныПродажи.СрезПоследних(
            &Дата,
            Товар = &Товар
                И Склад = &Склад) КАК ЦеныПродажиСрезПоследних
{ГДЕ
    (&Дата),
    ЦеныПродажиСрезПоследних.Товар.*,
    ЦеныПродажиСрезПоследних.Склад.*,
    ЦеныПродажиСрезПоследних.Цена}
21 Fragster
 
гуру
06.06.14
12:12
а картинку соединения?
22 DmitriyDI
 
06.06.14
12:13
23 echo77
 
06.06.14
12:13
Срез последних на каждую дату лучше в запросе посчитать сразу - так быстрее
24 Fragster
 
гуру
06.06.14
12:13
(23) не всегда
25 Fragster
 
гуру
06.06.14
12:13
а колонок у тебя много?
26 Fragster
 
гуру
06.06.14
12:14
вернее есть ли группировка по колонкам в настройках?
походу тебе надо вырубить расшифровки
27 DmitriyDI
 
06.06.14
12:14
(26) да там идет по складам, сейчас попробую
28 DmitriyDI
 
06.06.14
12:15
Вопрос такой он вывод отчета начинает после того, как запрос сформирован?
29 Fragster
 
гуру
06.06.14
12:17
(27) для начала перенеси в строки
30 DmitriyDI
 
06.06.14
12:18
(26) (29) , спасибо, пробую сейчас
31 Fragster
 
гуру
06.06.14
12:18
и вместо группировок детальные записи можно _в некоторых случаях_ сделать - тоже на память клиента весьма положительно влияет
32 Fragster
 
гуру
06.06.14
14:44
как там?
33 DmitriyDI
 
06.06.14
17:13
(32) не получилось пока, что раздувается память также exeшника, делал просто по складам, без таблицы, и делал просто детальными записями, расшифровки в СКД отключал
34 х86
 
06.06.14
17:29
(0)была наподобии ситуация, на клиенте 1Ска отъедала 4-5 гига и падала
запускал на сервере, отчет съедал до 10-12 гигов

ЗЫЖ и я все запросом делал
35 Fragster
 
гуру
06.06.14
17:40
можно попробовать убрать из параметров склад и/или номенклатуру
36 Fragster
 
гуру
06.06.14
17:40
но вообще что-то не так
37 Fragster
 
гуру
06.06.14
17:43
а в основном запросе сколько в результате строк?
38 rsv
 
06.06.14
17:55
(0) Ограничте TOP 100 . Отбработает ?
39 DmitriyDI
 
06.06.14
18:02
(37) точно не скажу, могу посмотреть, сейчас проверим
40 Bober
 
06.06.14
20:01
(39) как вариант сделать это внутри одного набора - это будет намного быстрее работать, если пользователь не будет выбирать  поле цена, то система сама откинет запросы из набора.
41 SergeyKB
 
06.06.14
22:26
(0) создать форму отчёта на УФ (если работает на 8.2) уже предлагали ?

чтобы обработка данных перенеслась на сервер
42 DmitriyDI
 
07.06.14
11:24
(41) так я же и так на сервере формирую
Программист всегда исправляет последнюю ошибку.