Digital-агентство Программист 1С
Портфолио
О нас
  • О компании
  • Партнеры
  • Реквизиты
  • Вопрос ответ
Услуги
  • Продвижение сайтов
    • SEO-продвижение
    • Seo-оптимизация сайта
    • Продвижение сайта статьями
    • SMM-продвижение в социальных сетях
    • Продвижение бренда в Инстаграм
    • Продвижение товаров интернет-магазина
  • Настройка и ведение контекстной рекламы
    • Настройка и ведение контекстной рекламы Яндекс.Директ
    • Google Adwords
    • Комплексная контекстная реклама
    • Аудит контекстной рекламы
  • Создание сайтов
    • Создание Интернет-магазина
    • Создание Корпоративного сайта
    • Наполнение интернет-магазина и сайтов
    • Дизайн и редизайн сайта
    • Интеграция сайта с Яндекс Маркетом
    • Коллтрекинг Mango
    • Web-аналитика и настройка счетчиков
  • Услуги 1С для бизнеса
    • Внедрение 1С
    • Hастройка 1С
    • Обслуживание 1С
    • Услуги программиста 1С
    • Сопровождение 1С
    • Автоматизация 1С
    • Доработка 1С
    • Интеграция 1С:Предприятие с Яндекс Маркетом
    • Маркировка импорта обуви
    • Интеграция OZON и 1C Предприятие
  • Автоматизация салона красоты
    • 1С:Предприятие для Салона красоты
    • CRM-система для Салона красоты
    • Создание сайта салона красоты
    • Продвижение сайта салона красоты
    • Реклама для Салона красоты
Блог
Контакты
Ещё
    Задать вопрос
    info@programmist1c.ru
    Люберцы, ул. Октябрьский проспект, 241Б,этаж 3 ,офис 301.
    Digital-агентство Программист 1С
    Портфолио
    О нас
    • О компании
    • Партнеры
    • Реквизиты
    • Вопрос ответ
    Услуги
    • Продвижение сайтов
      Продвижение сайтов
      • SEO-продвижение —
      • Seo-оптимизация сайта —
      • Продвижение сайта статьями —
      • SMM-продвижение в социальных сетях —
      • Продвижение бренда в Инстаграм —
      • Продвижение товаров интернет-магазина
    • Настройка и ведение контекстной рекламы
      Настройка и ведение контекстной рекламы
      • Настройка и ведение контекстной рекламы Яндекс.Директ —
      • Google Adwords —
      • Комплексная контекстная реклама —
      • Аудит контекстной рекламы
    • Создание сайтов
      Создание сайтов
      • Создание Интернет-магазина —
      • Создание Корпоративного сайта —
      • Наполнение интернет-магазина и сайтов —
      • Дизайн и редизайн сайта —
      • Интеграция сайта с Яндекс Маркетом —
      • Коллтрекинг Mango —
      • Web-аналитика и настройка счетчиков
    • Услуги 1С для бизнеса
      Услуги 1С для бизнеса
      • Внедрение 1С —
      • Hастройка 1С —
      • Обслуживание 1С —
      • Услуги программиста 1С —
      • Сопровождение 1С —
      • Автоматизация 1С —
      • Доработка 1С —
      • Интеграция 1С:Предприятие с Яндекс Маркетом —
      • Маркировка импорта обуви —
      • Интеграция OZON и 1C Предприятие
    • Автоматизация салона красоты
      Автоматизация салона красоты
      • 1С:Предприятие для Салона красоты —
      • CRM-система для Салона красоты —
      • Создание сайта салона красоты —
      • Продвижение сайта салона красоты —
      • Реклама для Салона красоты
    Блог
    Контакты
      Digital-агентство Программист 1С
      Портфолио
      О нас
      • О компании
      • Партнеры
      • Реквизиты
      • Вопрос ответ
      Услуги
      • Продвижение сайтов
        Продвижение сайтов
        • SEO-продвижение —
        • Seo-оптимизация сайта —
        • Продвижение сайта статьями —
        • SMM-продвижение в социальных сетях —
        • Продвижение бренда в Инстаграм —
        • Продвижение товаров интернет-магазина
      • Настройка и ведение контекстной рекламы
        Настройка и ведение контекстной рекламы
        • Настройка и ведение контекстной рекламы Яндекс.Директ —
        • Google Adwords —
        • Комплексная контекстная реклама —
        • Аудит контекстной рекламы
      • Создание сайтов
        Создание сайтов
        • Создание Интернет-магазина —
        • Создание Корпоративного сайта —
        • Наполнение интернет-магазина и сайтов —
        • Дизайн и редизайн сайта —
        • Интеграция сайта с Яндекс Маркетом —
        • Коллтрекинг Mango —
        • Web-аналитика и настройка счетчиков
      • Услуги 1С для бизнеса
        Услуги 1С для бизнеса
        • Внедрение 1С —
        • Hастройка 1С —
        • Обслуживание 1С —
        • Услуги программиста 1С —
        • Сопровождение 1С —
        • Автоматизация 1С —
        • Доработка 1С —
        • Интеграция 1С:Предприятие с Яндекс Маркетом —
        • Маркировка импорта обуви —
        • Интеграция OZON и 1C Предприятие
      • Автоматизация салона красоты
        Автоматизация салона красоты
        • 1С:Предприятие для Салона красоты —
        • CRM-система для Салона красоты —
        • Создание сайта салона красоты —
        • Продвижение сайта салона красоты —
        • Реклама для Салона красоты
      Блог
      Контакты
        Digital-агентство Программист 1С
        Digital-агентство Программист 1С
        • Портфолио
        • О нас
          • Назад
          • О нас
          • О компании
          • Партнеры
          • Реквизиты
          • Вопрос ответ
        • Услуги
          • Назад
          • Услуги
          • Продвижение сайтов
            • Назад
            • Продвижение сайтов
            • SEO-продвижение
            • Seo-оптимизация сайта
            • Продвижение сайта статьями
            • SMM-продвижение в социальных сетях
            • Продвижение бренда в Инстаграм
            • Продвижение товаров интернет-магазина
          • Настройка и ведение контекстной рекламы
            • Назад
            • Настройка и ведение контекстной рекламы
            • Настройка и ведение контекстной рекламы Яндекс.Директ
            • Google Adwords
            • Комплексная контекстная реклама
            • Аудит контекстной рекламы
          • Создание сайтов
            • Назад
            • Создание сайтов
            • Создание Интернет-магазина
            • Создание Корпоративного сайта
            • Наполнение интернет-магазина и сайтов
            • Дизайн и редизайн сайта
            • Интеграция сайта с Яндекс Маркетом
            • Коллтрекинг Mango
            • Web-аналитика и настройка счетчиков
          • Услуги 1С для бизнеса
            • Назад
            • Услуги 1С для бизнеса
            • Внедрение 1С
            • Hастройка 1С
            • Обслуживание 1С
            • Услуги программиста 1С
            • Сопровождение 1С
            • Автоматизация 1С
            • Доработка 1С
            • Интеграция 1С:Предприятие с Яндекс Маркетом
            • Маркировка импорта обуви
            • Интеграция OZON и 1C Предприятие
          • Автоматизация салона красоты
            • Назад
            • Автоматизация салона красоты
            • 1С:Предприятие для Салона красоты
            • CRM-система для Салона красоты
            • Создание сайта салона красоты
            • Продвижение сайта салона красоты
            • Реклама для Салона красоты
        • Блог
        • Контакты
        info@programmist1c.ru
        Люберцы, ул. Октябрьский проспект, 241Б,этаж 3 ,офис 301.
        • Главная
        • Примеры программирования

        v8: Получение списка свойств и событий объекта

        Мы всегда на связи
        К сожалению, в 1С невозможно получить список свойств и событий объекта. Данная статья призвана восполнить этот печальный пробел. Стыдитесь, товарищ Нуралиев. Не все типы объектов я расписал, буду благодарен, если вы допишете и восполните пробелы.
        Автор статьи: Гений 1С | Редакторы: TormozIT, Camino
        Последняя редакция №19 от 01.09.06
        URL:


        Ключевые слова: элемент управления, событие, свойство


        Список функций:
        •    п_СписокСвойствЭлементаУправления - получаем список свойств элемента управления в структуру.
        •    п_СвойстваЭлементаУправления - получаем список свойств и их значений элемента управления в структуру.
        •    п_СписокСобытийЭлементаУправления - получаем список событий элемента управления в структуру.
        •    п_СобытияЭлементаУправления- получаем список событий и их значений элемента управления в структуру.

        Функция п_СписокСвойствЭлементаУправления(Элемент) Экспорт
            Перем Рез;
            Если ТипЗнч(Элемент)=Тип("Кнопка") Тогда
                Рез=Новый Структура("ВертикальноеПоложение,ГоризонтальноеПоложение,Доступность,Заголовок,Картинка,Кнопки,МногострочныйРежим,Подсказка,ПоложениеКартинки,РазмерКартинки,РежимМеню,СочетаниеКлавиш,ЦветРамки,ЦветТекстаКнопки,ЦветФонаКнопки,Шрифт");
            ИначеЕсли ТипЗнч(Элемент)=Тип("КоманднаяПанель") Тогда
                Рез=Новый Структура("АвтоЗаполнение,Вспомогательная,ВыравниваниеКнопок,Доступность,Кнопки,Ориентация,Подсказка,ПрозрачныйФон,Рамка,ЦветРамки,ЦветТекстаКнопки,ЦветФона,ЦветФонаКнопки,Шрифт");
            ИначеЕсли ТипЗнч(Элемент)=Тип("Надпись") Тогда
                Рез=Новый Структура("БегущаяСтрока,ВертикальноеПоложение,ВыделятьОтрицательные,ГиперСсылка,ГоризонтальноеПоложение,Доступность,Заголовок,Картинка,Подсказка,ПоложениеКартинкиНадписи,ПрозрачныйФон,РазмерКартинки,Рамка,СочетаниеКлавиш,Формат,ЦветРамки,ЦветТекста,ЦветФона,Шрифт");
            ИначеЕсли ТипЗнч(Элемент)=Тип("Панель") Тогда
                Рез=Новый Структура("АвтоПорядокОбхода,Доступность,Картинка,ОтображениеЗакладок,Подсказка,ПорядокОбхода,ПрозрачныйФон,РазмерКартинки,Рамка,РаспределятьПоСтраницам,РежимПрокручиваемыхСтраниц,Страницы,ТекущаяСтраница,ЦветРамки,ЦветТекста,ЦветФона,Шрифт");
            ИначеЕсли ТипЗнч(Элемент)=Тип("Переключатель") Тогда
                Рез=Новый Структура("ВертикальноеПоложение,ВыбираемоеЗначение,ГоризонтальноеПоложение,Доступность,Заголовок,Подсказка,ПоложениеЗаголовка,ПрозрачныйФон,Рамка,ЦветРамки,ЦветТекста,ЦветТекстаПоля,ЦветФона,ЦветФонаПоля,Шрифт");
            ИначеЕсли ТипЗнч(Элемент)=Тип("ПолеВвода") Тогда
                Рез=Новый Структура("АвтоВыборНезаполненного,АвтоОтметкаНезаполненного,АвтоПереносСтрок,ВертикальноеПоложение,ВыбиратьТип,ВыборНезаполненного,ВыделенныйТекст,ВыделятьОтрицательные,ВысотаСпискаВыбора,ГоризонтальноеПоложение,Доступность,Картинка,КартинкаКнопкиВыбора,КнопкаВыбора,КнопкаОткрытия,КнопкаОчистки,КнопкаРегулирования,КнопкаСпискаВыбора,МаксимальноеЗначение,Маска,МинимальноеЗначение,МногострочныйРежим,ОграничениеТипа,ОтметкаНезаполненного,Подсказка,ПрозрачныйФон,Рамка,РасширенноеРедактирование,РедактированиеТекста,РежимВыбораИзСписка,РежимВыбораНезаполненного,РежимПароля,СочетаниеКлавиш,СписокВыбора,ТолькоПросмотр,Формат,ЦветРамки,ЦветТекстаКнопки,ЦветТекстаПоля,ЦветФонаКнопки,ЦветФонаПоля,ШиринаСпискаВыбора,Шрифт,ЭлементСвязиПоТипу");
            ИначеЕсли ТипЗнч(Элемент)=Тип("ПолеСписка") Тогда
                Рез=Новый Структура("Доступность,ОтображатьКартинку,ОтображатьПометку,Подсказка,Рамка,ТекущаяСтрока,ТолькоПросмотр,ЦветРамки,ЦветТекстаПоля,ЦветФонаПоля");
            ИначеЕсли ТипЗнч(Элемент)=Тип("ПолеТабличногоДокумента") Тогда
                Рез=Новый Структура("ВертикальнаяПолосаПрокрутки,ГоризонтальнаяПолосаПрокрутки,Доступность,ОтображатьВыделение,РазрешитьНачалоПеретаскивания,РазрешитьПеретаскивание,Рамка,ЦветРамки");
            ИначеЕсли ТипЗнч(Элемент)=Тип("РамкаГруппы") Тогда
                Рез=Новый Структура("Доступность,Заголовок,Подсказка,ПрозрачныйФон,Рамка,ЦветРамки,ЦветТекста,ЦветФона,Шрифт");
            Иначе
                Рез=Новый Структура();
            КонецЕсли;
            Рез.Вставить("Видимость");
            Рез.Вставить("ИзменяетДанные");
            Рез.Вставить("ПервыйВГруппе");
            Рез.Вставить("ПропускатьПриВводе");
            Рез.Вставить("ТипЗначения");
            
            //Опасные значения
            Рез.Вставить("Данные");
            Рез.Вставить("Значение");
            Рез.Вставить("Имя");
            Рез.Вставить("КнопкаПоУмолчанию");
            Рез.Вставить("ИсточникДействий");
            Рез.Вставить("КонтекстноеМеню");
            
            Рез.Вставить("Лево");
            Рез.Вставить("Высота");
            Рез.Вставить("Верх");
            Рез.Вставить("ТипЗначения");
            Рез.Вставить("Подсказка");
            Рез.Вставить("ПорядокОбхода");
            Рез.Вставить("ПорядокОтображения");
            Рез.Вставить("ПрозрачныйФон");
            Рез.Вставить("Рамка");
            Рез.Вставить("Свертка");
            Рез.Вставить("Ширина");
            Возврат Рез;
        КонецФункции
        
        Функция п_СвойстваЭлементаУправления(Элемент) Экспорт
            Рез=п_СписокСвойствЭлементаУправления(Элемент);
            ЗаполнитьЗначенияСвойств(Рез, Элемент);
            Возврат Рез;
        КонецФункции
        
        Функция п_СписокСобытийЭлементаУправления(Элемент) Экспорт
            Перем Рез;
            Если ТипЗнч(Элемент)=Тип("Кнопка") Тогда
                Рез=Новый Структура("Нажатие");
            ИначеЕсли ТипЗнч(Элемент)=Тип("КоманднаяПанель") Тогда
                Рез=Новый Структура("");
            ИначеЕсли ТипЗнч(Элемент)=Тип("Надпись") Тогда
                Рез=Новый Структура("Нажатие");
            ИначеЕсли ТипЗнч(Элемент)=Тип("Панель") Тогда
                Рез=Новый Структура("ПриСменеСтраницы");
            ИначеЕсли ТипЗнч(Элемент)=Тип("Переключатель") Тогда
                Рез=Новый Структура("ПриИзменении");
            ИначеЕсли ТипЗнч(Элемент)=Тип("ПолеВвода") Тогда
                Рез=Новый Структура("АвтоПодборТекста,НачалоВыбора,НачалоВыбораИзСписка,ОбработкаВыбора,ОкончаниеВводаТекста,Открытие,Очистка,ПриИзменении,Регулирование");
            ИначеЕсли ТипЗнч(Элемент)=Тип("ПолеСписка") Тогда
                Рез=Новый Структура("Выбор,ПриАктивизацииСтроки,ПриИзмененииФлажка");
            ИначеЕсли ТипЗнч(Элемент)=Тип("ПолеТабличногоДокумента") Тогда
                Рез=Новый Структура("Выбор,НачалоПеретаскивания,ОбработкаРасшифровки,ОкончаниеПеретаскивания,Перетаскивание,ПриАктивизацииОбласти,ПриИзмененииСодержимогоОбласти,ПроверкаПеретаскивания");
            ИначеЕсли ТипЗнч(Элемент)=Тип("РамкаГруппы") Тогда
                Рез=Новый Структура("");
            Иначе
                Рез=Новый Структура();
            КонецЕсли;
            Возврат Рез;
        КонецФункции
        
        Функция п_СобытияЭлементаУправления(Элемент) Экспорт
            Рез=п_СписокСобытийЭлементаУправления(Элемент);
            ЗаполнитьЗначенияСвойств(Рез, Элемент);
            Возврат Рез;
        КонецФункции


        TormozIT
        Однажды мне пришлось сохранять отбор. Оказалось, это не так то и просто. Пришлось создавать структуру структур для того, чтобы сымитировать структуру отбора. Вот тут то мне и понадобилась функция, которая бы возвращала контейнер, в котором я бы мог сохранить элемент структуры отбора.
        // Получает структуру свойств объекта по имени типа или объекту.
        //
        // Параметры:
        //  пОбъект      - Произвольный - имя типа или сам объект.
        //
        // Возвращаемое значение:
        //               – Структура – свойств.
        //
        Функция ЛксПолучитьСтруктуруСвойствОбъекта(пОбъект) Экспорт 
        
            СтруктураСвойств = Новый Структура;
            Если Ложь
                ИЛИ ТипЗнч(пОбъект) = Тип("ЭлементОтбора")
                ИЛИ пОбъект = "ЭлементОтбора"
            Тогда 
                СтруктураСвойств.Вставить("ВидСравнения");
                СтруктураСвойств.Вставить("Значение");
                СтруктураСвойств.Вставить("ЗначениеПо");
                СтруктураСвойств.Вставить("ЗначениеС");
                СтруктураСвойств.Вставить("Имя");
                СтруктураСвойств.Вставить("Использование");
                СтруктураСвойств.Вставить("Представление");
                СтруктураСвойств.Вставить("ПутьКДанным");
                СтруктураСвойств.Вставить("ТипЗначения");
            КонецЕсли;
            Возврат СтруктураСвойств;
        
        КонецФункции // ЛксПолучитьСтруктуруСвойствОбъекта()
        
        
        // Получает копию универсального объекта Отбор.
        //
        // Параметры:
        //  пОтбор  – Отбор – копируемый отбор.
        //
        // Возвращаемое значение:
        //               – Структура – копия отбора.
        //
        Функция ЛксПолучитьКопиюОтбора(пОтбор)
        
            КопияОтбора = Новый Структура;
            Для Каждого ЭлементОтбора Из пОтбор Цикл
                ЭлементКопииОтбора = ЛксПолучитьСтруктуруСвойствОбъекта(ЭлементОтбора);
                ЗаполнитьЗначенияСвойств(ЭлементКопииОтбора, ЭлементОтбора);
                КопияОтбора.Вставить(ЭлементОтбора.Имя, ЭлементКопииОтбора);
            КонецЦикла;    
            Возврат КопияОтбора;
            
        КонецФункции // ЛксПолучитьКопиюОтбора()
        
        
        Услуги
        Продвижение сайтов
        Настройка и ведение контекстной рекламы
        Создание сайтов
        Услуги 1С для бизнеса
        Автоматизация салона красоты
        Компания
        О компании
        Партнеры
        Реквизиты
        Вопрос ответ
        Проекты
        Пресс-центр
        Контакты
        Подписка на рассылку
        info@programmist1c.ru
        Люберцы, ул. Октябрьский проспект, 241Б,этаж 3 ,офис 301.
        Политика конфиденциальности
        © 2026 Все права защищены.
        ООО «УСПЕХ» ОРГН:1105027007843