В платформе 1С 8.3 имеется объект метаданных Константы. Смысл констант в языке программирования 1С несколько другой, чем в других языках. В 1С константы хранят постоянную или условно постоянную информацию, которая редко изменяется. Здесь я опираюсь на слово «изменяется».
Если в других языках программирования пользователь не может менять константу, то в платформе 1С имеется такая возможность, но по определению делать он это должен крайне редко. В этой статье мы будем учиться работать с константами: научимся создавать их, научимся работать с константами в командном интерфейсе 1С 8.3, узнаем, что такое форма констант и научимся программно обращаться к константе: получать значение константы и записывать константу.
Создание константы в 1С
Создадим несколько констант 1С. Обратите внимание на ветку Константы в дереве метаданных конфигуратора 1С, это именно то место, где в 1С расположен список констант. Найдем эту ветку в дереве, выделим её, и вызовем правой кнопкой мышки контекстное меню, в котором нас интересует команда «Добавить».
1С Новичок. Константа.
После выполнения этой команды, константа будет создана, а в правой части рабочего стола откроется палитра свойств новой константы. Здесь мы можем указать название константы и её тип. Пусть наша первая константа будет называться НазваниеОрганизации (тип строка (200)).
Создадим еще несколько констант с примитивными типами.
Дата начала работы организации (тип Дата).
Процент налога на прибыль (тип число)
Константы в командном интерфейсе 1С
Если я сейчас попробую сохранить конфигурацию, то выйдет сообщение, что мои новые константы не включены ни в одну подсистему.
Можно это сообщение проигнорировать и работать дальше (тогда доступ к значениям константан будет затруднен, но критических проблем не возникнет), а можно добавить константы в подсистему 1С.
В моей учебной конфигурации имеется подсистема НСИ, в эту подсистему я и добавлю все новые константы
Сделать это можно двумя способами.
Первый. Открыть редактор нужной подсистемы, и на закладке Состав включить вхождение нужной константы в подсистему.
Второй. У константы вызвать контекстное меню, в котором выполнить команду «Дополнительно».
В открывшейся в правой части окне «Дополнительно», на закладке Подсистемы нужно установить флаг рядом с той подсистемой, в которую хотите включить константу.
После включения всех констант в подсистему и обновления базы данных, мы сможем найти все новые константы в панели действий сервис.
Разберем, почему они там оказались.
Во-первых, если мы войдем в командный интерфейс подсистемы НСИ, в которую я добавил все константы, то найдем их в группе команд «Панель действий. Сервис», в эту группу платформа поместила команды на открытие констант автоматически, после того, как мы добавили константы в подсистему.
Во-вторых, у каждой константы имеется свойство Использовать стандартные команды, это свойство отвечает за то, будут ли использоваться стандартные команды работы с константой (открытие формы редактирования) или нет.
Например, если мы снимем это свойство у константы «Процент налога на прибыль».
То команда на открытие этой константы исчезнет, как и из командного интерфейса подсистемы.
Так и из командного интерфейса пользовательского приложения.
Если мы выполним команду на открытие константы из пользовательского интерфейса, то откроется форма для ввода (редактирования) константы (поле ввода может меняться в зависимости от типа данных константы).
Форма констант 1С
Редактировать константы в каждой отдельной форме иногда не совсем удобно, гораздо практичнее, чтобы все константы можно было отредактировать в одной форме. Для этих целей можно создать форму констант, посредством которой и будут редактироваться все константы, которые разработчик включит в эту форму.
Создадим форму констант. Для этого нужно выделить ветку метаданных Константы, вызвать контекстное меню, и выполнить команду «Создать форму констант…» этого меню.
Откроется конструктор общих форм.
Где советую обратить внимание на Тип Формы, и на свойство Использовать стандартные команды. Первое указывает, что это форма константа, а при установке второго будут созданы стандартные команды на открытие этой формы.
После нажатия кнопки Далее, необходимо будет выбрать, какие константы войдут в эту форму.
После того, как выбрали нужные константы, нажимаем кнопку Готово, и управляемая форма констант будет создана.
Замечу, что форма добавилась в ветку Общие формы ветки Общие дерева метаданных 1С.
Нам осталось включить общую форму констант в подсистему. Для этого вызовем контекстное меню общей формы констант и выполним команду «Дополнительно»
В открывшемся окне включим форму констант в подсистему 1С.
Также эту форму можно добавить в подсистему, напрямую во время редактирования подсистемы.
У всех остальных констант я отключил свойство Использовать стандартные команды, поэтому в командном интерфейсе отображается только новая форма констант.
Как в командном интерфейсе подсистемы в конфигураторе.
Так и в пользовательском режиме
Если эту форму открыть, то в ней будут поля ввода для всех констант, которые мы добавили при создании этой формы.
Что делать, если форма уже создана, но позже добавили новую константу, например «ИНН Организации».
Тогда следует добавить новую константу на форму. Для этого, нужно открыть форму на редактирование, развернуть в закладке Реквизиты дерево НаборКонстант, найти в этом дереве новую константу и перетащить её в элементы формы.
Как получить константу 1С
Для того чтобы получить значение какой-либо константы, нужно обратиться к менеджеру конкретной константы посредством менеджера всех констант, а потом воспользоваться методом Получить. Например, если мы по какой-то команде хотим в сообщение вывести название нашей организации из константы, для получения и вывода значения константы будем использовать следующий код.
Сообщить(НазваниеОрганизации); КонецПроцедуры КонецПроцедур
В этом случае процедура Получить(Команда) это обработчик команды, которая вызывает процедуру ПолучитьНаСервере. В этой процедуре используется объект Константы, который имеет тип КонстантыМенеджер, и посредством которого можно программно обратиться к любой константе.
Константы.НазваниеОрганизации – это уже менеджер конкретной константы, у которого есть метод Получить(), при помощи которого можно получить значение константы.
Вы заметили, что с менеджером команды я работаю в серверном контексте (под директивой НаСервере ). Это потому что менеджер констант имеете доступность Сервер, Толстый клиент и прочее «тяжелые» режимы. В тонком клиенте нельзя обратиться к менеджеру констант!
Установить значение константы
Если мы хотим программно установить значение новой константы, или изменить значение уже существующей константы, то мы можем воспользоваться тем же менеджером константы и его методом Установить.
КонецПроцедуры КонецПроцедуры
В параметрах метода менеджера Установить необходимо указать новое значение константы. Замечу, тип значения в параметре должен совпадать с типом константы. Точно также как и с получением значения, устанавливать значение константы нужно в серверном контексте.
Другие статьи по теме конфигурирования:
Более подробно и основательно начальные вопросы программирования в 1С есть вы можете изучить в
Книга «Программировать в 1С за 11 шагов»
Изучайте программирование в 1С в месте с моей книгой «Программировать в 1С за 11 шагов»
Книга написана понятным и простым языком — для новичка.
- Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
- Научитесь понимать архитектуру 1С;
- Станете писать код на языке 1С;
- Освоите основные приемы программирования;
- Закрепите полученные знания при помощи задачника.
О том как разрабатывать под управляемым приложением 1С, читайте в книге Книга «Основы разработки в 1С: Такси»
Отличное пособие по разработке в управляемом приложении 1С, как для начинающих разработчиков, так и для опытных программистов.
- Очень доступный и понятный язык изложения
- Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
- Поймете идеологию управляемого приложения 1С
- Узнаете, как разрабатывать управляемое приложение;
- Научитесь разрабатывать управляемые формы 1С;
- Сможете работать с основными и нужными элементами управляемых форм
- Программирование под управляемым приложением станет понятным
Промо-код на скидку в 15% — 48PVXHeYu
Эти книги, плюс книга по программированию оперативного учета имеются в едином комплекте: комплект книг по разработке в 1С.
Только для читателей моего блога,
промо-код на скидку в 300 рублей на весь комплект: blog
Если Вам понравился этот урок, был полезен или помог решить какую-нибудь проблему, то Вы можете поддержать мой проект, перечислив любую сумму.
можно оплатить вручную:
Яндекс.Деньги — 410012882996301
Web Money — R955262494655
Вступайте в мои группы:
Источник: www.1s-up.ru
Что такое константа в программе 1с предприятие
Вступайте в мою группу помощник программиста.
В ней мы обсуждаем программирование в 1С.
Полный синтаксис (нажмите, чтобы раскрыть)
Константы
Константы в системе 1С:Предприятие, как правило, служат для хранения информации, которая либо совсем не изменяется в процессе функционирования системы, либо изменяется достаточно редко. В константах хранится информация, характеризующая прикладную задачу в целом. Наиболее простой пример подобной информации — название организации, которое, как правило, не меняется.
В программных модулях для общих действий над заданными в конфигураторе константами (получение формы для управления константами, создание набора констант) служит объект КонстантыМенеджер. Для одновременного изменения значений определенной группы констант следует пользоваться объектом КонстантыНабор. Для чтения и записи значения определенной константы можно обращаться к объекту КонстантаМенеджер. .
Оглавление (нажмите, чтобы раскрыть)
- Как получить и изменить значение константы
- Работа с константой через менеджер значений
- Работа с константами через набор
- Как получить значения всех констант
- Скачать и выполнить эти примеры на компьютере
Константы.ЛучшийКлиент.Установить( Справочники.Клиенты.
НайтиПоНаименованию(«Марина») ); /// Работа с константой через менеджер значений в 1с 8.3, 8.2 // создаём и используем менеджер значений константы напрямую ЛюбимаяЕда = Константы.ЛюбимаяЕда.
СоздатьМенеджерЗначения(); // читаем значение ЛюбимаяЕда.Прочитать(); Сообщить(ЛюбимаяЕда.
Значение); // меняем значение ЛюбимаяЕда.Значение = Справочники.Еда.
НайтиПоНаименованию( «Крыжовник»); // записываем значение ЛюбимаяЕда.Записать(); /// Работа с константами через набор в 1с 8.3, 8.2 // подходит для работы сразу с группой констант НазванияКонстант = «ЛюбимаяЕда, ЛучшийКлиент»; НаборКонстант = Константы.
СоздатьНабор(НазванияКонстант); // читаем набор констант НаборКонстант.Прочитать(); Сообщить(НаборКонстант.
ЛюбимаяЕда); Сообщить(НаборКонстант.ЛучшийКлиент); // меняем значения констант НаборКонстант.ЛюбимаяЕда = Справочники.Еда.
НайтиПоНаименованию( «Чипсы»); НаборКонстант.ЛучшийКлиент = Справочники.Клиенты.
НайтиПоНаименованию( «Пётр»); // записываем набор НаборКонстант.Записать(); /// Как получить значения всех констант в 1с 8.3, 8.2 Для Каждого Константа Из Константы Цикл Сообщить(Строка(Константа) + » = » + Константа.Получить()); КонецЦикла; КонецПроцедуры /// Скачать и выполнить эти примеры на компьютере
Константы в языке 1С 8.3, 8.2 (в примерах)
С уважением, Владимир Милькин (преподаватель школы 1С программистов и разработчик обновлятора).
Как помочь сайту: расскажите (кнопки поделиться ниже) о нём своим друзьям и коллегам. Сделайте это один раз и вы внесете существенный вклад в развитие сайта. На сайте нет рекламы, но чем больше людей им пользуются, тем больше сил у меня для его поддержки.
Нажмите одну из кнопок, чтобы поделиться:
Источник: helpme1s.ru
Урок 2. Работа с константой
Всем привет. продолжаем изучать платформу 1С: Предприятие 8.3. Это уже второй урок, в котором мы начнем изучать основные объекты платформы для возможности разработки собственного приложения. Первый объект — это константа.
Прежде чем приступить ко второму уроку, прочитайте статью по первому уроку, чтобы не пропустить ничего важного. Прочитать первый урок можно по ссылке (или просто нажать на » Меня «) — https://zen.yandex.ru/media/id/604f11a1d95ba92fae888dd8/urok-1-ustanovka-platformy-1s-predpriiatie-8318-uchebnaia-versiia-604f11b36c861f010764c27c
Приступим к изучению!
Часть 1. Запуск созданной информационной базы ( Урок 1 )
Запустим ярлык на рабочем столе, откроется уже знакомое окно, в котором есть два режима: режим разработчика и режим пользователя. Так как в прошлом уроке мы мы создали информационную базу, нам ее еще раз создавать ненужно. Выделим нашу информационную базу «Автоматизация предприятия» и нажмем на кнопку «Конфигуратор». По нажатию на эту кнопку происходит переход в режим разработчика.
Здесь нужно понять лишь один смысл! Если мы хотим разработать что-то свое, то это только режим разработчика. Если мы хотим работать в существующей программе, то это режим пользователя. Платформа позволяет работать одному человеку сразу в двух режимах (сначала что-то разработал, потом заходишь и проверяешь).Учебная версия — она ограничена по функционалу и дает возможность работать только одному человеку. А если лицензия — то их может доходить и до 300 (все зависит от вида лицензии).
Нажимаем кнопку «Конфигуратор» (Рисунок 1).
Рисунок 1 — Главное окно запуска
Произошел переход в режим разработчика (Рисунок 2).
Рисунок 2 — Режим разработчика
На рисунке 2 показана иконка, на которую нужно нажать и у вас откроется дерево конфигурации (Рисунок 3).
Рисунок 3 — Дерево конфигурации
Дерево конфигурации — это дерево, которое имеет ветви, а каждая ветвь в свою очередь имеет какие-то отростки — объекты. Объекты — это константы, справочники, документы и так далее. Более подробно можно почитать нажав сюда.
Все, что сейчас находится в режиме разработчика — это инструменты, с которыми будет работать программист для создания своей программы, но это ничего не видно в режиме пользователя.
Как только разработчик создает справочник или константу, она сразу же отображается в режиме пользователя.
В прошлом уроке мы пробовали создавать справочник, но перед этим заходили в режим пользователя, чтобы убедиться в том, что там ничего нет. Добавили справочник и только после этого у пользователя появилась возможность сразу автоматизировать свою деятельность.
Ничего не создавая, перейдем в режим пользователя и еще раз убедимся в том, что там ничего нет. Для этого выполним команду: «Сервис-1С:Предприятие» (Рисунок 4).
Рисунок 4 — Запуск пользовательского режима
Откроется знакомое окно и оно действительно пустое (Рисунок 5).
Рисунок 5 — Пользовательский режим
На рисунке 5 отображается пользовательский режим, а сверху написано имя вашей программы и называется она «Конфигурация». Давайте изменим его и назовем «Автоматизация предприятия». Закроем режим «1С: Предприятие» на крестик в верхнем правом углу и вернемся в режим разработчика.
Выделим в дереве конфигурации корень этого дерева — слово Конфигурация, правой кнопкой мыши вызовем контекстное меню (или дважды щелкнем по нему правой кнопкой мыши) и выберем пункт «Свойства» (Рисунок 6).
Рисунок 6 — Свойства дерева конфигурации
Откроется палитра свойств (рисунок 7)
Рисунок 7 — Палитра свойств
Палитра свойств — это окно, в котором отображаются все свойства, доступные для данного объекта. В данном случае, это свойства всего дерева конфигурации.
В открывшейся палитре свойств нам сейчас важны два свойства, Имя и Синоним.
Имя — это идентификатор, который нужен для разработчика и виден от только разработчику. Он нужен программисту для того, чтобы он мог к нему с помощью кода обратиться и где-то использовать.
Синоним — это имя, которое будет отображаться в пользовательском режиме и будет видно пользователю. То есть это то свойство, которое необходимо для пользователя.
Имя и синоним могут быть одинаковыми. Правила задания свойства «Имя»:
1. Должно начинаться с буквы
2. Не может содержать пробелов и других специальных символов кроме подчеркивания «_»
3. Пишется слитно, но каждое слово с большой буквы — «АвтоматизацияПредприятия». Этот способ называется — верблюжий. В этом случае платформа понимает, что ей необходимо отделить каждое слово друг от друга (Рисунок 8).
Часть 2. Изменим имя конфигурации (программы)
Изменим имя «Конфигурация» на «АвтоматизацияПредприятия» и нажмем «Tab». В этом случае (Рисунок 8) синоним автоматически заполнится и разделится на два слова (но можно и просто перенести курсор в поле синоним), а свойство Имя останется также слитно — так и должно быть.
Рисунок 8 — Имя конфигурации
Таким образом мы изменили нашу программу (она называется конфигурация или программное решение — это термины 1С). Посмотрите на рисунок 8, в дереве объектов изменилось название. Теперь необходимо обновить программу, внести изменения и проверить все в пользовательском режиме. Нажмем клавишу F7 или значок на панели инструментов (Рисунок 9)
Рисунок 9 — Обновление программы
После того, как нажали клавишу или на этот значок, значок обновления должен стать серым и недоступным — это значит, что пока нет никаких изменений в вашей программе.
Перейдем теперь в режим пользователя и проверим изменения. Для этого необходимо выполнить команду «сервис-1С6Предприятие». Откроется знакомое окно, в котором будет название нашей программы (рисунок 10).
Рисунок 10 — Имя программы
Сейчас вы уже сделали первых два шага по разработке своей конфигурации и это уже совсем не плохо!
Часть 2. Создание константы
Теперь необходимо как-то дальше разработать программу, чтобы она подходила для вашего предприятия.
Для того, чтобы разработчик знал что делать, у него должно быть ТЗ — это техническое задание, в котором по пунктам расписано, что и как должно работать. ТЗ — это список всего функционала, который должен быть в программе. Список функционала зависит от целей предприятия. Чтобы понять то, что мы делаем и зачем, нужно всегда иметь перед собой ТЗ — его можно посмотреть, нажав сюда или перейти по ссылке — https://zen.yandex.ru/media/id/604f11a1d95ba92fae888dd8/urok-vvedenie-tz-etapy-razrabotki-po-604f4945011181447b164586.
Что такое константа? Константа — это объект дерева конфигурации, который предназначен для хранения постоянной величины или величины, которая меняется очень редко.
Константа я языках программирования — это то, что никогда не изменяется. Тем это и отличается в платформе. В платформе 1С это величина, которая изменяется крайне редко.
Вся платформа 1С создана так, что ее смысл понятен в русском языке. Константа в жизни каждого человека, это, например, его имя. Оно вроде является постоянной величиной, но его можно изменить. Или, это фамилия, инн, адрес и так далее. все это константы в понимании 1С.
Константа нужна для хранения «постоянной» величины. В нашем случае константами будут являться: 1. ИНН организации, имя директора магазина, адрес магазина и так далее — все это константы.
Перейдем в режим разработчика, выделим константу и правой кнопкой мыши добавим новую константу (или это можно сделать иначе. Выделить константы и нажать на плюсик в верхней панели дерева объектов).
Примечание: у платформы 1С есть всегда два способа работы с объектами, а иногда и более. Сейчас в этом убедимся.
Создаем константу и назовем ее «Владелец» (Рисунок 11-12)
Источник: dzen.ru