Итак в 1С есть справочники. Например, справочник товаров (номенклатуры). Там мы укажем список товаров, которыми торгует наша организация.
С помощью такого справочника мы можем организовать прайс-лист для клиентов, а также отчет о продажах для руководства.
Товары бывают разные. Например, продукты и химия. Что делать, если руководитель попросит сделать отчет – сколько денег мы заработали на продуктах, а сколько на химии?
Легко! – ответим мы. Нужно добавить справочник Видов товаров, а в справочнике Номенклатура добавить такой реквизит. Теперь когда мы вводим новый товар – нужно будет выбрать вид товара.
Однако девочки не рады такому нововведению – ведь теперь нужно им заполнять целое дополнительное поле, а у них и так много работы и они ничего не успевают. Да и вообще! – говорят они – у нас 900 наименований продуктов, и только 50 наименований химии! Даже дураку ясно, что нужно по умолчанию ставить вид товара продукты.
Отлично! – отметим мы. И… что делать?
Константы 1С
Константы 1С – это объект 1С. В окне конфигуратора ветка Константы 1С находится вверху.
Каждая константа – это одно значение, выбранного Вами типа. Списки и таблицы можно хранить с помощью значения «ХранилищеЗначений».
В константах можно хранить значения по умолчанию. Одно такое значение в константе. Таким образом в константах можно хранить настройки программы.
В режиме Предприятие константы 1С находятся в меню Операции/Константы. В типовых конфигурациях их часто выносят в меню Сервис/Настройки программы (в толстом клиенте)
или в меню Администрирование/Настройки/Настройки параметры учета (в тонком клиенте).
Для редактирования констант открывается форма констант по умолчанию. Каждое поле на такой форме – это одна константа.
Добавить форму констант можно двумя способами:
- Нажать правой кнопкой на ветку Константы 1С и выбрать пункт меню Создать форму констант
- Добавить форму в ветку Общие/Общие формы и в мастере выбрать тип формы – Форма констант.
Посмотреть (и выбрать) форму констант можно следующим образом:
- Войти в свойства конфигурации (правой кнопкой мыши на верхней корневой ветке конфигурации, которую программисты обычно называют «Голова») и использовать свойство Основная форма констант.
Форма констант отличается тем, что основной реквизит формы имеет тип «КонстантыНабор». Это позволяет записывать константы 1С не поштучно, а сразу набором.
Кстати, реквизит формы становится «основным», если в свойствах формы он указан в свойстве Данные.
В программе на языке 1С к любой константе можно обратиться легко и просто:
Знч = Константы.НужнаяКонстанта.Получить(); //считываем
Константы.НужнаяКонстанта.Установить(Знч); //записываем
Параметры сеанса 1С
Итак задачка решена просто и с изяществом – мы создаем константу, в которой будем хранить вид товара по умолчанию.
При создании нового товара программа на языке 1С в событии ПриОткрытииФормы() будет устанавливать значение поля Вид товара в тот, который назначен в константе. Вуаля!
Теперь программа работает, но мы на этом не остановимся! Еще бы – мы же крутые программисты, мы хотим, чтобы программа не просто работала, но и работала быстро!
Где хранятся константы 1С? В базе данных, в специальной таблице. Каждый раз, когда оператор создает новый товар, клиент 1С будет ломиться на сервер и считывать значение константы 1С. А что если операторов 200 человек? Оптимально ли это?
Что же тогда делать?
И тут мы вспоминаем про параметры сеанса 1С. Это значения наподобии констант, которые заполняются в момент старта 1С в режиме Предприятие и доступны сразу на клиенте. Иначе говоря – это некий кеш на стороне клиента.
Кроме того, если в константе список мы можем хранить только в хранилище значений, то в параметр сеанса 1С мы ее уже можем распаковать, правда она будет не динамической – с типом ФиксированныйМассив.
Параметры сеанса 1С это тоже объект 1С, в окне конфигурации находится в ветке Общие/Параметры сеанса 1С.
Мало добавить параметр сеанса 1С, потому что если он не заполнен, то программа покажет ошибку.
Заполнение (установка) параметров сеанса 1С должна производиться при старте 1С в режиме Предприятие. Нажмите правой кнопкой на верхнюю ветку конфигурации (программисты называют ее «Голова») и выберите пункт меню Открыть модуль сеанса.
В модуле уже может быть функция УстановкаПараметровСеанса(). Если таковой еще нет, то выберите это события в соответствующем выпадающем списке. Вот пример установки значения параметра сеанса 1С:
ПараметрыСеанса.НужныйПараметр = Знч; //запись, один раз в самом начале
Знч = ПараметрыСеанса.НужныйПараметр; //чтение, строго после записи.
Добавить комментарий
Для отправки комментария вам необходимо авторизоваться.