Отметка строк в дереве и прочие примеры работы с деревом

28.12.10

Разработка - Универсальные функции

Обработка, содержащая форму, которую можно применять универсально, и формочку для тестирования. Примеры работы с деревом для применения где угодно.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
ОтметкаСтрокДерева.epf
.epf 17,31Kb
512
512 Скачать (1 SM) Купить за 1 850 руб.

Умеет:

  • Отмечать строки в переданном дереве флажками (флажок выводится в первой колонке, имя колонки флажка передаётся, если колонки нет - добавляется);
  • Возвращать результат отметки в виде:
    • Дерева значений
    • Таблицы значений
    • Списка значений 
  • Только "концевые" строки или все; только отмеченные или все - в любых комбинациях.

Для вызова: Отмеченное=ПолучитьОбщуюФорму("ФормаОтметкиДерева").ОтметитьСтрокиДерева(ТвоеДерево,"КолонкаПометки"[,Новый Структура("флТолькоОтмеченные,флТолькоКонцевые,ЧтоВозвращать,флПоказВозвращаемогоЗначения,КолонкаПредставления,ЗаголовокФормы,Таймаут",Истина,Истина,"Дерево,Список,Таблица",Истина,ТвоеДерево.Колонки[1].Имя,"Поставьте флажки, где успеете:",10)])[.Дерево/Список/Таблица]; 
Результат вызова - структура; можно обращаться сразу к результатному дереву/списку/таблице, по ключу структуры (Дерево,Таблица,Список). Если от выбора отказались или не успели - возвращает Неопределено.

Форма для тестирования открывается уже максимально настроенной.

Форму отметки можно сразу перетаскивать в общие, дополнительной настройки не требует.

Зачем: кроме того, что обработка содержит примеры разнообразных трансформаций дерева путём рекурсивных обходов (и только их!), в ней же - обработка установки "серого" флага на родителей, отметки дочерних строк, пример полной инкапсуляции обработки (вызов одной строкой). И простейший таймер :)

Ну и не всегда можно обойтись отметкой варианта/вариантов из списка, бывают и сложные ситуации :)

 

См. также

Универсальные функции Программист Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Благодаря этим пяти строчкам можно больше не заморачиваться с загрузкой из внешних файлов. Пользуюсь везде, всегда и постоянно.

21.05.2024    20593    dimanich70    81    

145

Универсальные функции Программист Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Задача: вставить картинку из буфера обмена на форму средствами платформы 1С.

1 стартмани

18.03.2024    4123    3    John_d    11    

57

Универсальные функции Программист Стажер Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Пришлось помучиться с GUID-ами немного, решил поделиться опытом, мало ли кому пригодится.

12.02.2024    18730    atdonya    24    

58

Универсальные функции Программист Платформа 1С v8.3 Бесплатно (free)

На заключительных этапах, когда идет отладка или доработка интерфейса, необходимо много раз переоткрыть внешний объект. Вот один из способов автоматизации этого.

30.11.2023    5542    ke.92@mail.ru    16    

65

WEB-интеграция Универсальные функции Механизмы платформы 1С Программист Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

При работе с интеграциями рано или поздно придется столкнуться с получением JSON файлов. И, конечно же, жизнь заставит проверять файлы перед тем, как записывать данные в БД.

28.08.2023    14940    YA_418728146    7    

168

Пакетная печать Печатные формы Адаптация типовых решений Универсальные функции Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Абонемент ($m)

Расширение для программ 1С:Управление торговлей, 1С:Комплексная автоматизация, 1С:ERP, которое позволяет распечатывать печатные формы для непроведенных документов. Можно настроить, каким пользователям, какие конкретные формы документов разрешено печатать без проведения документа.

2 стартмани

22.08.2023    3626    57    progmaster    8    

4

Инструментарий разработчика Универсальные функции Платформа 1С v8.3 Конфигурации 1cv8 1С:Розница 2 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x Абонемент ($m)

Копирует в буфер значения из списков, из ячеек отчетов, таблиц, настроек списков, других отборов и вставляет в выбранную настройку отбора. Работает с Объект не найден. Работает как в одной так и между разными базами 1С. Использует комбинации [Alt+C] Копировать список, [Alt+V] Вставить список. Также для копирования данных используется стандартная [Ctrl+C] (например из открытого xls, mxl, doc и т.п. файла скопировать список наименований)

1 стартмани

13.10.2022    18544    171    sapervodichka    112    

135
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Sintson 413 28.12.10 13:56 Сейчас в теме
2. alexk-is 6544 28.12.10 14:46 Сейчас в теме
Почему кнопки такие ...хм... длинные?
5. e.kogan 1895 29.12.10 12:41 Сейчас в теме
(2) В форме тестирования кнопки длинные, чтоб не промахнуться :) Ну - и это ж всё-таки просто для тестирования, могу я поизвращаться как захотелось? ;)
3. cool.vlad4 2 28.12.10 14:51 Сейчас в теме
А не знаю пока зачем мне это, но плюс, автор все равно молодец.
4. Yashazz 4794 29.12.10 12:40 Сейчас в теме
(3) А это нам с Эстер давно надо было сделать, в конфе нашей много таких мест, где пригодится; вот, сделано. Эстер молодец!
6. v.l. 435 30.12.10 12:15 Сейчас в теме
(0) Вещь хорошая, но чтобі зазря не качать, есть вопросы:
Комментарии и описание в модуле?
Всё будет понятно и для пассажиров бронепоезда?
7. Збянтэжаны Саўка 245 04.07.11 12:57 Сейчас в теме
(0) Прекрасная работа, хоть и маленькая и компактная, але ж вельмi змястоўная!
Дзякуй велькi.
8. tindir 04.07.12 07:10 Сейчас в теме
А данная Обработка может работать с любыми деревьями? то есть есть ли ограничения по структуре дерева, без внесения изменений?
9. e.kogan 1895 04.07.12 10:05 Сейчас в теме
(8) Ограничений не ставила.
(6) А чтоб я помнила :) Вроде должно быть понятно.
10. Murom 28.03.13 11:16 Сейчас в теме
Скачал чтоб посмотреть как ставить метки на дереве с 3 значениями.
Посмотрел как тут реализовано и ... написал по своему.
Чего мне не хватает так это сохранение развернутых узлов дерева и пометок после переформировании дерева...
Думал вдруг здесь это найдется. НО , если б не искал готовое, то уже сам бы написал :)
За обработку спасибо и плюсик.
11. e.kogan 1895 28.03.13 11:45 Сейчас в теме
(10) Murom, а в чём проблема с сохранением, если есть какой-нибудь ключ у строки дерева?..
12. Murom 28.03.13 12:07 Сейчас в теме
(11)
Эх, уважаемая (судя по аватару смею решить что вы девушка), ключ добавить не проблема.
Но ключ будет рассчитываться как-то при построении дерева, а это значит если я буду перезаполнять дерево, то ключи у нового дерева могут не совпасть.
Поэтому т.к. у меня в дереве 3 колонки и они достоверно идентифицируют нужный мне узел, то привязаться решил к этим 3 значениям. По ним буду сохранять статус развернут/неразвернут и пометку.
13. e.kogan 1895 28.03.13 12:14 Сейчас в теме
(12) Murom, так я именно о ключе, который однозначно идентифицирует строку по смыслу, и говорю - простом ли, составном ли.
14. Murom 28.03.13 12:44 Сейчас в теме
(13)
В таком случае вы правы. Не сразу понял я ваш пост про ключ.
Оставьте свое сообщение