#0
by YHVVH
Замечено при больших списках(больше 100 элементов) тормозит это так и должно быть или у меня руки кривые? УложитьСписокОбъектов Есть варианты "ускорить" данное действие?
#12
by YHVVH
УложитьВсписокОбъектов отрабатывает по времени больше чем сам запрос. Как вариант придется сам запрос переписывать чтоб обойти тормоза. Есть ли варианты как закинуть во врменную таблицу 'SQL' списиок объектов из 1с 'побырому'?
#19
by ДенисЧ
ну ты же не хочешь пользоваться тупым, значит, зато и пользуйся острым... Вообще - вопрос очень странный. Как из памяти можно перенести в таблицу sql данные? Назови 3 способа.
#21
by Mikeware
совет есть... пока ищи стену покрепче, и яд понадежнее... Технологию опишу чуть позже..
#22
by YHVVH
почему странный, я же говорю есть список например товара или клиентов пользуюсь УложитьСписокОбъектов , если спсиок большой, то долго он отрабатывает. я так понимаю долго создает табличку эту временную , если я правильно выразился. попробовать инсерт сделать в цикле как вариант. Может кто как подругому делал. че сразу яд.
#23
by VitGun
вообще-то в доке к 1С++ крайне не рекомендуется использовать УложитьСписокОбъектов с большим количеством элементов. Так что это не баг, а фича...по сути эта процедура аналогична в SQL WHERE some_param IN ('00001','00002','00003'.......'00100') так все что после IN она и делает. а теперь представь размер такого запроса. оптимизатор вешается и сервер тоже. как вариант - пользовать временные таблицы, т.е выгрузить сначала туда список объектов которые должны попадать в условие и уже оттуда дергать значения
#25
by VitGun
эва как...глянул в доку - точно...в темп таблицу кладет...а где ж я тогда читал ересь которую сам написал в ? и был же вариант решения без УложитьСписокОбъектов...
#26
by YHVVH
вообще-то в доке к 1С++ крайне не рекомендуется использовать УложитьСписокОбъектов с большим количеством элементов это я усвоил хорошо.спасибо. как вариант - пользовать временные таблицы, т.е выгрузить сначала туда список объектов которые должны попадать в условие и уже оттуда дергать значения а тут не понятно что за временные таблички и как туда запихнуть данные.
#28
by v_rtex
попробуй вместо Поле IN (SELECT val FROM #ВТ) использовать INNER JOIN #ВТ ВТ ON ВТ.val=Поле хз.. вдруг поможет -)
#33
by YHVVH
ладно вопрос снят, решил в цикле инсертит во временную таблицу, так быстрей выходит.всем спасибо.Если кто не знаь то вот как сделал:
#35
by Кириллка
странно это все, не должно быть такого. Если пошел делать через курсоры, то советую укладывать параметризированным запросом - будет быстрее.
#37
by Z1
Иногда подходит укладывать не элементы а только папки ( без повторов ) список получается гораздо меньше. тогда вместо условия на ID надо ставить условие на PARENTID
#48
by Кириллка
+47 кстати (если ничего не изменилось), если вид справочника не указан параметром, то разворачивание иерархии не будет делаться.
#50
by Salimbek
А работать должна со всеми случаями. Кроме того, как сказал Ёпрст в в твоем случае выгоднее использовать 1sqlite т.к., по умолчанию, УложитьСписокОбъектов будет крутится в "memory", так что лишних обращений к диску не будет, да и оптимизатор быстрее будет работать. Кроме того, сортировка у Фокс-а, не совпадает с 1С-ной... Ну и еще много дополнительных бонусов (например возможность работы в монопольном режиме)
#52
by orefkov
И таки да, может ты указывал вид справочника, хотя разворот по иерархии тебе не нужен?
#53
by YHVVH
там проблема была с использованием 1sqlite , в случае разделенного доступа к 1с т.е. когда работают несколько юзеров, что то я не рискнул использовать эту ВК. где то была пробелма блокировки. так руки не дошли.
#54
by FN
Подозреваю что в спТоваров находится список товаров из табличной части дока... в таком случае лучше приджойнить табличку со строками документа с необходимыми условиями.
#57
by Z1
моя идея по subj ( сделано для sql) в declare @folders table алгоритм 0. в временной таблице для папок ставим признак папка. 1. в @folders помещаем только папки из начального списка 2. если папок нет @folders алгоритм останавливается.(что нужно 0 ) т.е. на вход подали список в котором только элементы. 3. в цикле добавляем в @folders только папки ! (аналогично как сейчас но без удаления из @folders) т.е. строим все папки без их удаления. 4.@folders соеденяем с основной таблицей справочника и в итоговую помещаем все элементы где parentid в @folders. Выигрыш с тем что есть что папок гораздо меньше чем элементов. но если это не встараивать внутрь 1с++ то весь выигрыш вообще потеряется на одной передачи из списка значений1c во временную таблицу. тексты могу скинуть ( описанный выше алгоритм работает под ms sql ) PS Легко сделать три режима 1 в итоговый список будут помещаться только элементы ( как сейчас ) 2 только папки ( несколько раз именно это и нужно было и из-за чего все это и придумал) 3 и элементы и папки
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- Не работает функия вопрос() в 8-ке/в SQL не работает в файл серверной работает
- v7: v7 : НДС при возврате
- v7: Что нужно чтоб подключить ККМ Меркурий 112F к 1с V7 Торговля + склад
- v7: v7.7 премещение элемента справочника
- v7: v8: v7: Кто-нибудь сумел скачать комплект отчетности за I квартал 2007 года
- v7: 1С V7.7 в сети
- v7: 1C:V7 starter program (for SQL) - обнаружена ошибка
- v7: Перенос данных Бухгалтерия из v7 в v8
- v7: v7 Перехват глобального события ПриЗаписи() или ОбработкаПроведения()
- v7: Конфигурация в Windows XP работает а на Windows 8 не работает
В этой группе 1С
- *.v8i - параметр OrderInList и OrderInTree
- как обрезать sql базу?
- Как вызвать удаленно функции 1С
- Не проводится "Закрытие месяца".
- Административная установка 8.2 - nethasp.ini
- Как распечатать счет-фактуру полученный
- Программирование под ТСД на WM
- Сложный отчет на основе ОтчетСписокКроссТаблица или СКД
- Как удалить неуникальные записи SQL-таблицы?
- Ошибка считывания вторичной информации
- Почему документ при записи может не регистрироваться в ТР последовательности?
- загрузить кладр в чистую конфигурацию
- Ошибка загрузки информационной базы. В информационную базу загружены не все данные
- Как выделить неск. строк в списке документов для их редактирования ?
- СЧет 62.Р в УПП
- Как COM объекту передать указатель на строку из 1С
- 1C 7.7 +CommerceML 2
- Как получить ссылку на документ из его модуля
- "Выгрузка данных в идентичную конфигурацию" и РИБ в чем разница.....
- Восстановление периферийной базы из центральной