|   |   | 
| 
 | объемные отчеты на основе внешних источников данных (ТаблицаЗначений -> СКД) | ☑ | ||
|---|---|---|---|---|
| 0
    
        892689 15.05.18✎ 12:15 | 
        Добрый день!
 Возможно эта проблема не имеет решения на текущий момент, но если подскажете альтернативные варианты, то буду несказанно рад) Проблема такая: Сделал мега-большой специфический расчетный отчет с данными в ТаблицеЗнаений. Эту ТаблицуЗначений использовал в качестве источника данных для СКД. НО: при очень большом количестве записей в ТаблицеЗначений при формировании отчета на СКД вылетает ошибка "нехватки памяти" Если повезет, то сам отчет все же выведется в макет, но через 15 минут. Искал возможности загрузить ТаблицуЗначений во временные таблицы запроса и последующего использования в СКД - ПИШУТ НЕВОЗМОЖНО! Подскажите, пожалуйста, альтернативные варианты? (совет делать все в одном запросе не подходит, т.к. ТаблицаЗначений формируется на основе не менее 10-ти запросов к WEB-сервисам других информационных баз) | |||
| 1
    
        kabanoff 15.05.18✎ 12:58 | 
        (0) На каком этапе вылетает? На этапе компоновки или на этапе вывода в форму отчета?     | |||
| 2
    
        Buster007 15.05.18✎ 13:20 | 
        И как проанализировать этот отчет? Подозреваю, что его будут выгружать и там уже накладывать фильтры. Не проще ли сразу их наложить?     | |||
| 3
    
        892689 15.05.18✎ 13:28 | 
        (1) Ошибка возникает на этапе вывода в форму отчета     | |||
| 4
    
        catena 15.05.18✎ 13:29 | 
        (3)а чем бы тогда помогла загрузка этой таблицы во времянку в запросе?     | |||
| 5
    
        892689 15.05.18✎ 13:30 | 
        (2) Фильтры уже сделал, но иногда будет необходима возможность просмотра всей консолидированной информации     | |||
| 6
    
        Timon1405 15.05.18✎ 13:30 | 
        отключите расшфровки в отчете     | |||
| 7
    
        fedoss 15.05.18✎ 13:31 | 
        Как вариант - пнуть эту таблицу на SQL сервер, а СКД данные получить уже оттуда     | |||
| 8
    
        catena 15.05.18✎ 13:31 | 
        (5)Может быть тогда имеет смысл завести под нее физическую таблицу? Регистр там...     | |||
| 9
    
        892689 15.05.18✎ 13:33 | 
        (4) В 1С если отчет СКД формируется на основе запроса - то все хорошо. Если этот же запрос просто выгрузить в ТаблицуЗначений и использовать в качестве внешнего источника для СКД, то при больших объемах время вывода в макет вырастает в 10 и более раз.     | |||
| 10
    
        fedoss 15.05.18✎ 13:40 | 
        Кстати, раз уж это "мега-большой специфический расчетный отчет" не проще регламентом периодически получать эти данные в физические таблицы (хошь прям внутри 1С, хошь во внешний источник), а СКД строить уже по данным этих таблиц?     | |||
| 11
    
        catena 15.05.18✎ 13:46 | 
        (9)Вы свое сообщение перечитайте - у СКД проблема именно с выводом этого объема.     | |||
| 12
    
        catena 15.05.18✎ 13:48 | 
        Есть у меня один упоротый отдел, который заказал себе такой отчет. Долго я их отговаривала, в результате плюнула, сделала им регистр, чтобы хотя бы базу не грузили в момент формирования. Ежемесячно его формируют, три часа сохраняют, три часа в екселе открывают и, с-ка, фильтры накладывают. Ночуют на работе, чтоб к концу месяца успеть. Дебилоиды.     | |||
| 13
    
        892689 15.05.18✎ 13:48 | 
        (10) Данные в каждую минуту меняются - это и остатки по всем складам всех организаций и взаиморасчеты и прочее. Вариант с физической таблицей подходит и не_подходит. Подходит - потому что гарантированно даст положительный результат. А вот какова скорость этого решения будет - пока неизвестно. Может быть он будет 30 минут только записывать эту таблицу. А если одновременно начнут формировать этот отчет 10 пользователей, то может и не прокатить     | |||
| 14
    
        892689 15.05.18✎ 13:52 | 
        (7) записывать данные напрямую в SQL не пробовал. Кто знает: это будет быстрее, чем запись в таблицу 1С?
 (если запись будет производится из самой 1С-ки) | |||
| 15
    
        RKx 15.05.18✎ 14:00 | 
        (0) 1с - х32, поди?     | |||
| 16
    
        kabanoff 15.05.18✎ 14:01 | 
        (3) Зачем пользователям такой отчет, в котором 100500 строк? Как они его будут потом анализировать?
 (14) Если использовать bulk-insert, то да, т.к. 1С пишет в SQL построчно. | |||
| 17
    
        RKx 15.05.18✎ 14:04 | 
        (0) "ТаблицаЗначений формируется на основе не менее 10-ти запросов к WEB-сервисам других информационных баз)" 
 Сделай регистр сведений, или справочник - не суть важно. Запихай туда свою ТЗ, и делай сколько угодно СКД... | |||
| 18
    
        fedoss 15.05.18✎ 14:05 | 
        (13) ну все равно есть какой-то разумный интервал обновления, судя по информации об отчете, он не моментально выполняется. Так что и данные можно обновлять периодически централизовано, а не получать для каждого пользователя.
 (14) Можно попробовать через ВнешнийИсточникДанныхТаблицаНаборЗаписей, должно быть быстрее записи в таблицу 1С. Хотя РСНаборЗаписей тоже должно быть довольно быстро. Все зависит от объема данных. | |||
| 19
    
        kittystark 15.05.18✎ 14:06 | 
        (0) перейти на х64 версию платформы/клиента     | |||
| 20
    
        RKx 15.05.18✎ 14:09 | 
        (14) Лицензию нарушить хочешь? Щас копирасты набегут...
 Гораздо быстрее. Я-бы, и обработал всё на SQL-сервере. А в ТЗ результат уже утянул-бы. | |||
| 21
    
        fedoss 15.05.18✎ 14:11 | 
        (20) Почему нарушить?? Никто не говорил про прямую запись в таблицы 1С     | |||
| 22
    
        scanduta 15.05.18✎ 14:13 | 
        (0) Была такая проблема в больших отчетах с 0.5 - 1 млн строк и выше.
 СКД очень долго их обрабатывает. Решили выгрузкой в excel без использования СКД | |||
| 23
    
        RKx 15.05.18✎ 14:13 | 
        (21) А как он СКД делать будет? Из внешних источников, или уложив ТЗ в темпдб?     | |||
| 24
    
        kabanoff 15.05.18✎ 14:21 | 
        (3) А вообще, как вариант, можно попробовать заменить вывод в Табличный документ на вывод в Таблицу значений. И если удастся вывести, то полученную таблицу сохранить в XLS.     | |||
| 25
    
        fedoss 15.05.18✎ 14:28 | 
        (23) Проще всего СКД по таблице ВИД     | |||
| 26
    
        892689 15.05.18✎ 15:46 | 
        (15) Да, сервер 32-х разрядный, как перенесут я сообщу результатах.     | |||
| 27
    
        892689 15.05.18✎ 15:48 | 
        (6) Спасибо, как-то сразу об этом не задумался, но проверить смогу только завтра. Интересно, какой % производительности это может дать;     | |||
| 28
    
        892689 15.05.18✎ 15:50 | 
        (22) Спасибо за идею с excel! Как вариант - очень даже подходит.     | |||
| 29
    
        Timon1405 15.05.18✎ 15:53 | 
        держите в курсе, тема интересная     | |||
| 30
    
        Buster007 15.05.18✎ 15:55 | 
        (28) удали им эксель на компе и все научаться пользоваться фильтрами в отчетах     | |||
| 31
    
        892689 15.05.18✎ 18:17 | 
        (29) Отключение расшифровки сократило время вывода на 16%, - не фонтан, но какой-никакой прирост.     | |||
| 32
    
        mistеr 15.05.18✎ 21:34 | 
        (13) >Данные в каждую минуту меняются - это и остатки по всем складам всех организаций и взаиморасчеты и прочее.
 У вас явная проблема с дизайном. Такие данные тащить в отчеты через веб сервисы неправильно. Их нужно загружать в базу-хранилище и строить отчеты там. Почитайте про 1С:Консолизацию, что ли. | |||
| 33
    
        mistеr 15.05.18✎ 21:34 | 
        1С:Консолидацию     | |||
| 34
    
        tesseract 16.05.18✎ 01:36 | 
        (13) Для таких случаев придумали тот же сервер отчетов, который потом стал BI.
 Каждую минуту данные не могут меняться. Может меняться некоторый процент данных. Вот их берем и записываем, например через регистр какой-нибудь, который после всех "ЯТутвСКЛИспользуюСтрокиЧерезЛайкЧерезКучуТаблицкоторыеЕщеФормируютсяИспользуяЗапросыВЦикле" даёт нормальный результат. | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |