#0
by zelenprog
На 7-ке в самописной конфе используется регистр оборотов в качестве периодического регистра сведений. Измерения регистра: Контрагент, Номенклатура. Ресурс: Цена. Нужно узнать все последние цены. Как это можно быстро сделать? Простым перебором получается медленно: Цикл по всем контрагентам Цикл по номенклатуре Всех проходов цикла получается около 1.200.000. Примерно 20000 наименований номенклатуры, и 500 контрагентов. Скажите пожалуйста как ускорить? Желательно штатными средствами.
#2
by zelenprog
думал запросом, но ничего не надумал. запрос же ведь не умеет отдельные движения обрабатывать?
#4
by КонецЦикла
При массовом вызове (например, показе чего-то в форме списка) на ДБФ у меня когда-то тормозило дико Прямой запрос помог, получше стало
#5
by zelenprog
не хочется пока прямым... прямые я обычно выполняю через OLEDB, и его надо выполнять в разделенном режиме. а эта обработка выполняется в монопольном при свертке... короче с прямым запросом придется тоже что-то мудрить. а штатным способом никак?
#8
by Mikeware
Лить сразу все в ИТЗ я бы постеснялся, но, допустим, по каждой контре - вполне нормально. Или по каждой номенклатуре. Ну и, кстати, глянуть на галки отборов у измерений...
#9
by Ёпрст
>>>прямые я обычно выполняю через OLEDB, и его надо выполнять в разделенном режиме. Что мешает их выполнять монопольно ?
#14
by Nirvana
Нафига вообще так делать? Для такой задачи больше подходит подчинённый номенклатуре справочник с реквизитом "Контрагент" и периодическим реквизитом "Цена".
#15
by Mikeware
Для особо одаренных = объясняю: для того, чтобы уйти от периодики. скорость получения данных выше раза в три.
#16
by Ахиллес
Покайтесь, грешники, откажитесь от диавольских клюшек, придите в объятия святого снеговика!
#18
by Холст
по-моему впору объявлять конкурс на лучшую структуру для 1С 7.7, заменяющую периодики, с критерием наилучшей скорости ... никто не помнит, обсуждали такое, к чему пришли ?
#19
by Mikeware
справочник с прямым запросом. Регистр чуть-чуть медленнее. Зато с ним работать проще. баян, вобщем...
#21
by zelenprog
Помнится мне, что когда-то я столкнулся с такой ситуацией. Прямой запрос через OleDB в монопольном режиме не выполняется. В монопольном прямой запрос выполняется только через ODBC-драйвер. Но он работает хуже, чем Visual Foxpro OleDB driver. Поэтому тогда я все запросы сделал через OleDB driver. Может быть с тех пор что-то поменялось?
#23
by zelenprog
ну вы что парни? у меня же конкретный вопрос: 1) намекнули в что можно 1С-ным запросом. Так все-таки можно или нет? Если можно то как? По чему надо группировать в этом запросе? 2) в чем фишка прямых запросов? почему они у меня в монопольном режиме не выполняются?
#25
by zelenprog
ну вот попробовал прямым запросом в монопольном режиме... ошибка: FAILED! ICommandText::Execute: Cannot open file q:src
a103.dbf.
#26
by zelenprog
у меня сейчас сделано в цикле, см. запрос 1С-ный и не смог сделать, не знаю как группировать по движениям регистра. по-моему 1С-ным запросом так вообще нельзя сделать
#29
by zladenuw
и чего не понятно ............Сообщить(Запрос.Долж); ............Пока Запрос.Группировка("Сотр")=1 Цикл
#31
by Злопчинский
ээээ... а как реализовать регистр сведений на оборотном регистре? народ что-то базарил что это делается типа вообще типа измеренйи нет, а все указываешь в реквизитах движений??
#32
by Злопчинский
есть правленный фокспрошный дривер, который позволяет и в монопольном штрындячить
#34
by zelenprog
Пишешь в него движения. а потом выбираешь нужное движение на нужную дату и все... а где хранятся данные: в измерениях или реквизитах по-моему неважно. Просто когда ищешь движение на указанную дату для конкретных значений измерений и реквизитов - это работает быстро. А когда как у меня нужно по всем значениям - то вот и получается очень медленно
#35
by zelenprog
спасибо, попробую эту разработку. Насколько сложнодолго перейти на 1sqlite с прямых запросов?
#37
by Nirvana
Если тебе настолько неважен размер базы, то можешь попробовать сделать ещё один справочник (или регистр), где будут храниться только последние цены.
#38
by Холст
а как вам такая замена периодики на регистре (для числовой периодики): используем регистр остатков, "запись периодики" делаем так - на дату изменения данных минусуем число которое в текущем остатке, плюсуем новое значение на дату, в итоге на ТА всегда последнее актуальное значение нормальный вариант ?
#39
by Mikeware
растет сильно. И медленнее из-за пересчета итогов. зы. "назад в будущее", млин... это все обсуждалось году в 2004. уже пора или на снеговика перейти (и забыть периодику клюшек как непиятный сон), или понять, как оно работает...
#41
by zelenprog
"это по-твоему неважно..." и что дальше? где продолжение? понимай как хочешь... кстати недавно статья попалась в инете про намеки: запомнилась фраза в этой статье: "Просто нужно привыкнуть к тому, что слабый пол любит говорить намеками, как бы проверяя способности мужчины – сообразителен ли он ..." :)
#43
by Холст
"Зубры" профи ушли с 7.7 на 8.х, а фирмы с нетленками на 7.7 остались, поэтому знания по оптимизации 7.7 пока актуальны, в 2004 было одно поколение 1Сников, сейчас другое
Тэги: 1С 7.7 и ранее
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- Как мне получить запросом только движения по приходу из регистра?
- v7: v7 : НДС при возврате
- Есть ключ записи регистра сведений. Как получить имя этого регистра?
- v7: Что нужно чтоб подключить ККМ Меркурий 112F к 1с V7 Торговля + склад
- v7: v7.7 премещение элемента справочника
- v7: 1С v7.7 Бух учет (получить остаток по складам)
- v7: v8: v7: Кто-нибудь сумел скачать комплект отчетности за I квартал 2007 года
- v7: Как получить движения бух.операции при неинтерактивном проведении?
- Как получить имя регистра сведений из формы записи этого же регистра?
- Как получить из регистра сведений ПОСЛЕДНИЕ N записей?
- Как получить движения документа используя свойство Движения?
- v7: 1С V7.7 в сети
В этой группе 1С
- УТ 11. Запрет просмотра чужих документов.
- v8: Как получить срез последних на каждую дату в запросе?
- Передвинуть полосу прокрутки ТЧ
- УПП возврат отходов давальческого сырья
- Напоминание в 1с БП (как в ЗУП)
- Установка границы последовательности партионного учета в УПП
- Движение по регистру "НДС покупки"
- УФ. Табличная часть обработки. Как добавить картинку строк?
- БГУ - не удается в Журнале операций № 2 сделать с отбором по лицевому счету
- WMS RS Expert
- Отчет в СКД по периодическому регистру сведений, срез последних в группировке
- Запрос в другую базу
- v7: Выгрузка справочника "Подразделения" XML
- НДС в 1с УТ считывается неверно
- Оклад+сделка, не полный рабочий день
- КУДиР приходно-кассового ордера
- Загрузка данных в конфигурацию ЖКХ
- Сбиваются настройки интерфейса
- УФ. При пометке на удалении/снятии пометки оповестить. Как?
- Потеряли подчиненный узел РИБ. Можно ли восстановить?