#0
by belarus
Есть ТаблЗнач, в которой одна колонка Номенклатура. В ней 1000 строк. Как определить Номенклатуру с наибольшим Уровнем???
#11
by Andr10K
Создать запрос "Выбрать * ИЗ &ТЗ Поместить ВремТаб". Потом соединить с таблицей спр. Номенкл. по ссылке и сортировать
#13
by aleks-id
как вариант - добавить к ТЗ колонку Уровень, заполнить каждую строку ТЗ.Уровень = ТЗ.Номенклатура.Уровень потом запрос к ТЗ с функцией МАКСИМУМ(ТЗ.Уровень)
#14
by Maxus43
уровень запросом не определяется. Только перебором всей ТЗ и запоминанием максимального уровня, имхо
#15
by Andr10K
В запросе можно замутить рассчет уровня. Навскидку - проверять на NULL поля Ссылка.Родитель Ссылка.Родитель.Родитель Ссылка.Родитель.Родитель.Родитель ... Известно же какая макс. вложенность
#18
by aleks-id
хотя бред с запросом. можно на этапе заполнения уже определить максимум даже без колонки...
#20
by Maxus43
Где делаеш ТЗ, там и уровень проставляй. Запросом Уровень не получиш, только извращаться. По канонам 1с запросом этого не сделать
#21
by hhhh
ТЗ.Номенклатура.Уровень - это ведь тоже запрос, обращение к базе. Получается 1000 запросов в цикле.
#28
by aleks-id
лучше как в ибо все равно обходить таблицу. так нафига еще потом запрос делать если мы на этапе обхода уже вычислим уровень?
#30
by Andr10K
Самому стало интересно. Написал обработку с ТЧ, заполняемой номенклатурой. Сравнил метод "запросом" и "Уровень". Запросом раз в 5-7 быстрее ). Запросом удается проверять до 75 уровней, на 76 вылетает 1С... Причина мне не известна, т.к. глубина обращений "через точку" по документации не ограничена. Может дело в слишком длинной строке? Текст модуля формы:
#31
by Andr10K
В файловом варианте работает до 75 уровней, в сервером до 10. MS SQL SE: "Case expressions may only be nested to level 10" :( Выигрыш в скорости быстро растет при увеличении кол-ва элементов справочника. 6000-7000 - в 5-7 раз, 13000-14000 - в 15-20 раз.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- Создание ТЗ с вложенными ТЗ на основании плоской ТЗ методом группир. по колонкам
- ТЗ.Свернуть для ТЗ в ТЗ
- Как отключить в Excel автоматическое определение типа ячейки?
- Как в 1С8 можно расчитать цены номенклатуры контрагента из цен номенклатуры
- Определение текущей строки в табличной части документа
- Вывод уровней номенклатуры только заданного уровня в универсальном отчете
- v7: Как сделать подбор Номенклатуры из ТЗ в ТЗ?
- как сделат чтоб в печатную форму возле номенклатуры отображался код номенклатуры
- Определение программно выбранной закладки (станицы)
- Обработка подбор номенклатуры (поиск по любому слову номенклатуры )
- ЭДО УТ11. Сопоставление номенклатуры и номенклатуры поставщика в разных базах
- Условное оформление для уровня в динамическом списке
В этой группе 1С
- 1С++ монитор запросов?
- Универсальный обмен данными в формате XML. Режим отладки обработчиков загрузки
- При считывании дисконтной карты выдается код "ж00055,4" вместо 00055
- Обновление конфигурации из командной строки
- Ввод спецодежды и возврат на склад в УПП
- Сохранение истории проплат при переносе с одного заказа на другой УТ10.3
- ошибка Номер ГТД
- КД2 Пример переноса документа в операцию в v8.2
- v8.2 Как выбрать управляемую форму документа перед открытием
- 1С УПП Вопрос по плановой себестоимости!
- Запрос через COM-соединение выдает ошибку
- Печатная форма с использованием макета типа HTML документ
- УПП Выписка документов будущей датой
- В консоли сервера 8.1 не могу поменять пароль sa?
- файл 1sbtrans.txt
- файл 1sbtrans.txt
- СКД &П &П2
- ЗУП Классификатор использования рабочего времени
- КорректировкаЗаписейРегистров в "Конвертации данных"
- Удалить пустую организацию в последовательности БУ.