|
Существует ли решение по выводу отчета скд порциями, допустим по 100 тыс | ☑ | ||
---|---|---|---|---|
0
Ivan_495
07.07.17
✎
10:59
|
Существует ли решение по выводу отчета скд порциями, допустим по 100 тыс записей.
Есть запрос на при выводе 200 000 записей отрабатывает. Больше выводит не достаточно памяти. Расшифровка отключена.Почти все таблицы временные. |
|||
1
МихаилМ
07.07.17
✎
11:01
|
обсуждалось. в поиск
|
|||
2
МихаилМ
07.07.17
✎
11:09
|
вы неправильно выбрали инструмент.
скд хорош для интерактивного просмотра. как можно просмотреть 200к записей глазиками ? |
|||
3
Джинн
07.07.17
✎
11:10
|
(0) На хрен кому такой идиотский отчет?
|
|||
4
PLUT
07.07.17
✎
11:14
|
(2) (3) СКД это не только идиотские отчеты, но и просто система компоновки данных с выводом в ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначенийИмениБорисаГеоргиевичаНуралиева
|
|||
5
PLUT
07.07.17
✎
11:15
|
+(4) и еще в запросах нельзя гуиды (слово то какое) получать,а в СКД можно выводить с помощью XMLСтрока(Ссылка)
|
|||
6
Ivan_495
07.07.17
✎
11:16
|
а вообще скд работает с большими данными миллионы записей?
|
|||
7
МихаилМ
07.07.17
✎
11:17
|
(4)
скд очень долго выводит результат в коллекцию вывод 200к записей не дождаться. проверял . |
|||
8
Вафель
07.07.17
✎
11:18
|
в скд есть параметр "выводить первые ... "
|
|||
9
polosov
07.07.17
✎
11:20
|
(6) Нормально работает. Просто показывать это юзеру в таком количестве зачем?
|
|||
10
Ivan_495
07.07.17
✎
11:21
|
(9) показывать юзеру это начальство рашает)
|
|||
11
Ivan_495
07.07.17
✎
11:22
|
(7) только что за пару минут вывел более 200 000 записей на скд
|
|||
12
МихаилМ
07.07.17
✎
11:22
|
(6) скд сильно дефрагментирует память. поэтому даже если работает, то после такой работы сервер приложений будет очень тормозить до удаления рабочего процесса.
|
|||
13
Ivan_495
07.07.17
✎
11:23
|
(9) максимум сколько записей выводили?
|
|||
14
Вафель
07.07.17
✎
11:23
|
переходи на x64 клиент
|
|||
15
МихаилМ
07.07.17
✎
11:23
|
(11) куда вывели ?
|
|||
16
Ivan_495
07.07.17
✎
11:25
|
вывел в табличный документ
|
|||
17
Джинн
07.07.17
✎
11:26
|
(4) Вопрос не в СКД, вопрос в отчетах в сотни тысяч строк. Человек не в состоянии воспринять такой объем информации за раз.
|
|||
18
polosov
07.07.17
✎
11:27
|
(17) У него начальство уверено, что сможет.
|
|||
19
ДемонМаксвелла
07.07.17
✎
11:33
|
(0) давным-давно как-то столкнулся с такой проблемой. Решил просто - переделал вывод отчета скд на построчный программный, и если количество выводимых строк превышает определенное количество, вывод прекращается и вываливается сообщение об ошибке.
|
|||
20
Ivan_495
07.07.17
✎
11:34
|
(14) да вроде итак на 64х битном
|
|||
21
Вафель
07.07.17
✎
11:34
|
(19) А почему (8) не попробовал?
|
|||
22
polosov
07.07.17
✎
11:34
|
(19) Зачем сообщение об ошибке? Можно сразу базу закрывать и комп перезагружать.
|
|||
23
Timon1405
07.07.17
✎
11:36
|
(18) при чем здесь начальство.
допустим задача: ежедневно формировать отчет об остатках/прайс(а 200к позиций например в автозапчастях это вообще ничто) и посылать его конгтрагенту. как решать будете? |
|||
24
ДемонМаксвелла
07.07.17
✎
11:37
|
(21) не пришло в голову, особо не рыл, решил и забыл
(22) сообщение пользователю с просьбой сделать правильные отборы |
|||
25
Джинн
07.07.17
✎
11:37
|
(18) Как-то при мне одному директору принесли отчет в виде пачки бумаги. Он посмотрел на толщину, выкинул в корзину и сказал, чтобы ему больше не приносили отчеты более, чем на трех страницах. Включая пояснения. А если его подчиненные не в состоянии обработать информацию, систематизировать ее, выделить главное, требующее решения боса его уровня, то он найдет других подчиненных. Запомнил это на всю жизнь :)
|
|||
26
Джинн
07.07.17
✎
11:39
|
(23) На кой ляд контрагенту отчет о наличии 200к позиций? Особенно если к тому моменту, когда он созреет для заказа, многое уже будет продано? Не проще ли портал ему открыть, где он сможет видеть текущие запасы?
|
|||
27
polosov
07.07.17
✎
11:39
|
(25) Для огромных отчетов придумали графики, гистограммы и прочее графическое представление информации. Масштабированные естественно для оптимального восприятия.
|
|||
28
HeKrendel
07.07.17
✎
11:40
|
(25) Заявка на венчурное бабло - не более 4 страниц, где 1 страница - титульник, одна содержание, одна суть идеи, одна фин рез.
|
|||
29
Timon1405
07.07.17
✎
11:42
|
(26) на такой, например, что он захочет сравнить цены разных поставщиков, соберет со всех данные и будет сравнивать/выбирать лучшие цены/условия поставки. такие требования совсем не редкость.
|
|||
30
Ivan_495
07.07.17
✎
11:44
|
(21) ну вот и вывожу первые 300 000 , кто сказал что не пробовал
|
|||
31
Вафель
07.07.17
✎
11:45
|
(30) тебе вроде нужно вывести все, а не ограничить. юзай х64
|
|||
32
polosov
07.07.17
✎
11:46
|
(29) Это можно сделать обработкой.
|
|||
33
AlfaDog
07.07.17
✎
11:47
|
Была проблема такая, только был 1 млн строк.
Сделали напрямую сохранение в excel |
|||
34
Ivan_495
07.07.17
✎
11:47
|
(31) использую 64.
ВЫБРАТЬ первые 200 000 отработал ВЫбрать ПЕРВЫЕ 300 000 умер со слова 1с close |
|||
35
Вафель
07.07.17
✎
11:51
|
(34) и клиент и сервер?
|
|||
36
ДемонМаксвелла
07.07.17
✎
11:54
|
вообще "выбрать первые" - это неправильное решение. Пользователь должен знать, всё ему вывелось или не всё.
|
|||
37
Ivan_495
07.07.17
✎
12:03
|
(36) вот поэтому я и создал ветку
|
|||
38
Ivan_495
07.07.17
✎
12:09
|
насколько я выяснил тестовым путем
скд формирует но не может вывести на экран , если число записе больше 200 000. |
|||
39
Oftan_Idy
07.07.17
✎
12:33
|
(29) Выгрузить ему в xml ночью на сервере, сжать и выложить на ftp
|
|||
40
Ivan_495
07.07.17
✎
14:21
|
(39) а как выгрузить из скд в xml без вывода на экран?
|
|||
41
Вафель
07.07.17
✎
14:22
|
(40) получай выборку отдельно. потом выводи в таблицы любыми порциями
|
|||
42
Ivan_495
07.07.17
✎
14:38
|
а что 1с не умрёт если в запросе поставить первые 900 000
|
|||
43
Вафель
07.07.17
✎
14:39
|
(42) в запросе нет, но памяти изрядно съест
|
|||
44
Ivan_495
07.07.17
✎
14:42
|
(43) с ест всю память и завалит сервак
|
|||
45
Вафель
07.07.17
✎
14:43
|
(44) А сколько у тебя памяти?
|
|||
46
Timon1405
07.07.17
✎
15:28
|
(40)
ЗаписьXML = Новый ЗаписьXML(); ЗаписьXML.УстановитьСтроку(); ЗаписьXML.ЗаписатьНачалоЭлемента("result"); Пока Истина Цикл ЭлементРезультата = ПроцессорКомпоновки.Следующий(); Если ЭлементРезультата = Неопределено Тогда Прервать; КонецЕсли; СериализаторXDTO.ЗаписатьXML(ЗаписьXML, ЭлементРезультата, "item"); КонецЦикла; ЗаписьXML.ЗаписатьКонецЭлемента(); Результат = ЗаписьXML.Закрыть(); |
|||
47
Ivan_495
07.07.17
✎
15:33
|
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
ПроцессорВывода.УстановитьДокумент(ДокументРезультат); ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных); //ДокументРезультат.Показать(); ДокументРезультат.Записать("D:\Таблица2.mxl"); написал вот так, но на 300 000 ругнулась нет памяти и вылетела |
|||
48
PLUT
07.07.17
✎
17:37
|
(47) используй (4), т.е. вывод в коллекцию значений (ограничение - таблица должна быть "плоская" (как таблица значений)
затем последовательная запись: ТекстовыйФайлЗапись=Новый ЗаписьТекста(ИмяФайла,КодировкаТекста.Системная,,,); Описание: Предназначен для последовательной записи в текстовые файлы. Если будешь писать "на сервере", не забудь, что путь в имени файла должен быть доступен на сервере (шара какая-нибудь) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |