Как использовать константы в форме 1с. Константы

Константы в 1С используются как правило для хранения одного значения в базе данных. Обычно в константах хранят редко или совсем не изменяемые значения, но которые часто используют. Например, версия программы, различные настройки, наименование организации, основные ответственные лица и т.д.

Для каждой константы указывается ее имя и тип данных. Обращение к константам в программном модуле осуществляется очень просто:

1. Чтение значения константы

// чтение значения Константы
Название = Константы. НазваниеОрганизации. Получить();

Обратите внимание на слово «Константы», а не «Константа», как было в версии 1С 7.7.

2. Запись нового значения константы

Для записи (установки) нового значения константы используется методУстановить()

// запись нового значения Константы
Константы. НазваниеОрганизации. Установить(«ООО Рога и копыта» );

3. Работу с набором констант

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

//создаем набор из трех констант

//обратите внимание, что мы лишь создаем набор констант и пока не знаем их значения

Набор= Константы. СоздатьНабор(«Руководитель,НазваниеОрганизации,АдресОрганизации» );

Так как при работе с набором констант мы может изменить (записать) значения всех констант набора одновременно, то сначал нам необходимо установить каждой константе новое значение, а затем с помощью методаЗаписать()произвести их одновременную запись.

//устанавливаем значение констант в наборе (не в базе)
Набор. Руководитель = «Иванов И.И.» ;
Набор. НазваниеОрганизации = «ООО Новые рога и копыта» ;
Набор. АдресОрганизации = «Россия, г. Москва, Кремль» ;
Набор. Записать(); //записываем в базу сразу значения трех констант

4. Сравнение со значением константы в запросах

Константы можно использовать в запросах. Например, нам может потребоваться в запросе сравнить данные со значением константы. В данном примере мы выбираем записи из справочника Номенклатура, у которых значение реквизита Код равно значению нашей константы КонстЧисло.

«ВЫБРАТЬ
| НашеЧисло.Значение,
| Номен.Код,
|ИЗ
| Константа.КонстЧисло КАК НашеЧисло,
| Справочник.Номенклатура КАК Номен
|ГДЕ
| Номен.Код = НашеЧисло.Значение»

Более подробно язык запросов 1С будет описан в следующих материалах справочника 1С.

Есть вопросы, что то нужно осветить подробнее, спрашивайте в комментариях.

Назначение и использование констант в системе «1С: Бухгалтерия»

Константы в программе «1С: Бухгалтерия» используются для хранения постоянной или редко изменяющейся информации. Информация, содержащаяся в константе, может быть изменена. Сохранив информацию в константе один раз, можно затем использовать ее многократно при формировании документов, в расчетах, при построении отчетов.

Практически в каждом отчете, генерируемом в программе «1С: Бухгалтерия», присутствуют такие константы, как Наименование предприятия, Руководитель, Главный бухгалтер. Используя константы, вы избавляете себя от кропотливой работы по редактированию бланков отчетов после, скажем, смены руководителя или изменения названия организации. Достаточно будет внести изменения в указанные константы, и все изменения автоматически будут отражены в тех местах, где эти константы используются.

Ш Выберите команду меню Операции ¦ Константы. На экране появится окно Список констант в виде таблицы с тремя колонками: Код, Наименование, Значение.

Ш Найдите нужную константу, например, Наименование организации.

Ш Перейдите в колонку Значение и измените, если нужно, название организации.

Типовая конфигурация программы содержит необходимый набор констант. Пользователю необходимо лишь ввести «свои» данные в значения этих констант. Невнимательность при заполнении значений констант может обернуться ошибками в документах, расчетах, отчетах. Поэтому будьте внимательны и аккуратны - программа не терпит небрежности.

Периодические константы и их применение

Само название «константа» предполагает постоянство значений, хранимых в них. Однако иногда информацию, содержащуюся в константе, приходится корректировать. Конечно, внести изменения в соответствующие константы труда не представляет. Но, как быть, если необходимо получить какой-то документ или отчет за период, когда эта константа имела «старое» значение. Для таких случаев в программе «1С: Бухгалтерия» некоторые константы могут хранить историю своего изменения. Такие константы называются периодическими. В отличие от обычных констант программа «1С: Бухгалтерия» хранит значения периодической константы по датам ее изменения. При обращении к значению периодической константы па некоторую дату выдается ее значение на эту дату, либо, если такое значение отсутствует, - на ближайшую предыдущую дату.

Периодическими константами являются, например, такие константы как: Руководитель, Гл. бухгалтер, Кассир.

В программе «1С: Бухгалтерия» для периодической константы можно вызвать окно История, отражающее изменение значения константы по датам. Для этого необходимо выполнить следующие действия:

Ш В окне Список Констант выберите периодическую константу, например, Руководитель.

Ш Нажмите кнопку(История) в окне Список Констант. На экране появится окно История (Рис. 9).

Рис. 9.

Окно История представляет собой таблицу, состоящую из двух граф: Дата изменения значения константы и Значение на эту дату. Окно История позволяет редактировать историю изменений значения константы напрямую: вводить новые строки, редактировать или удалять существующие.

Назначение, создание, возможные типы значений.
- Возможные способы для задания и получения значений констант в процессе эксплуатации системы.

Назначение, создание, возможные типы значений.

Цитата из книги «Конфигурирование и администрирование» пакета 1С:Предприятие:
В системе 1С:Предприятие константы предназначены для хранения постоянной или условно-постоянной информации. Такая информация либо совсем не изменяется в процессе деятельности предприятия, либо изменяется достаточно редко. Наиболее простой пример подобной информации - название организации, которое, как правило, не меняется.

Такая трактовка применения констант является довольно узкой. Более верным будет трактовать константы следующим образом:

«Константы - это суперглобальные переменные, значения которых сохраняются между сеансами работы с системой и одинаковы для всех пользователей системы.»

Константы применяются для возможности создания универсальных конфигураций, которые легко адаптировать для применения в нескольких организациях. Константы хранят значения которые могут применяться в различных частях системы. Цитата из книги «Конфигурирование и администрирование»:

Основная причина использования констант заключается в том, что в них один раз заносится какая-либо информация, которая затем может многократно использоваться при формировании документов, в расчетах, при построении отчетных форм. Информация, внесенная в константу время от времени может редактироваться, но сути константы это не меняет: единожды введенное в систему, значение константы используется многократно.

Константа может принимать базовые типы значений:

строка (константа не может иметь тип «Строка неограниченной длины»);
число;
дата;

Также константа может принимать в качестве значения объекты типообразующих объектов метаданных:

справочник;
документ;
перечисление;
счет;
«план счетов»;
«вид субконто»;
«вид расчета»;
«календарь».
Также константа может иметь «неопределенный» тип. В этом случае тип значения определяется программно при установке константы.

Константы определяются в «Конфигураторе» в окне «Конфигурация» в ветке «Константы».

Возможные способы для задания и получения значений констант в процессе эксплуатации системы.
Стандартным (штатным) способом заполнения или просмотра констант является использование окна «Список констант», которое можно открыть через меню «Операции» - «Константы» (пункт меню для вызова списка констант может быть переопределен при редактировании интерфейса конфигурации).

Программно работать с константами можно следующим образом. Получение значения константы:

Переменная = Константа.ИмяКонстанты;

Установка значения константы:

Константа.ИмяКонстанты = ЗначениеКонстанты;

Константы 1с Предприятие 8.2

Давайте рассмотрим, для чего нужны константы в 1с 8.2 . Прежде всего, константы — это данные, которые всегда остаются неизменными и имеют одно и то же значение, независимо от времени. Одна константа может хранить в себе одно значение. Это может быть название компании, ФИО главного бухгалтера или валюта финансовых взаиморасчетов. Чтобы создать константу, нужно зайти в конфигуратор 1с, найти в конфигурации объект «Константы» и, щелкнув дважды правой кнопкой мыши, выбрать «Добавить».

Далее нам необходимо указать два главных параметра для констант: имя и тип данных. Давайте для примера создадим константу 1с «Название организации». Теперь следует выбрать нужный тип данных. В нашем случае, это «строка». На картинке ниже представлен список других типов данных для констант 1с Предприятие 8.2 .


Как создать форму для констант 1с?

Чтобы пользователи могли сами изменять значения констант без помощи программистов, нужно создать форму для константы. Это можно сделать, щелкнув правой кнопкой мыши на объекте конфигурации «Константы».


После этого мы увидим следующее.


Нажав на кнопку «Готово», перед нами откроется внешний вид всех наших констант. В данном случае имеется только одна константа 1с и поле, куда мы можем записать название нашей организации.

Итак, константы в 1с хранят важные значения, которые не меняются со временем. Их можно создать через конфигуратор, а данные в них записываются с помощью форм для констант.

Константы используются для хранения одного значения в базе данных. Обычно в константах хранится редко изменяемая информация, например, название организации, адрес организации, фио руководителя и т.д.

Для каждой константы нужно обязательно указать ее имя и тип данных. Обращение к константам в программном модуле осуществляется очень просто:

1. Чтение значения константы

// чтение значения Константы
Название = Константы . НазваниеОрганизации . Получить ();

Обратите внимание на слово Константы (а не Константа, как было в версии 7.7).

2. Запись нового значения константы

Для записи (установки) нового значения константы используется метод Установить ()

// запись нового значения Константы
Константы . НазваниеОрганизации . Установить ("ООО Рога и копыта");

3. Работу с набором констант

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

//создаем набор из трех констант

//обратите внимание, что мы лишь создаем набор констант и пока не знаем их значения

Набор = Константы . СоздатьНабор ("Руководитель,НазваниеОрганизации,АдресОрганизации");

Так как при работе с набором констант мы может изменить (записать) значения всех констант набора одновременно, то сначал нам необходимо установить каждой константе новое значение, а затем с помощью метода Записать () произвести их одновременную запись.

//устанавливаем значение констант в наборе (не в базе)
Набор . Руководитель = "Иванов И.И.";
Набор.НазваниеОрганизации = "ООО Новые рога и копыта";
Набор.АдресОрганизации = "Россия, г. Москва, Кремль";
Набор . Записать (); //записываем в базу сразу значения трех констант

4. Сравнение со значением константы в запросах

Иногда нам может потребоваться в запросе сравнить данные со значением константы. В данном примере мы выбираем записи из справочника Напоминания, у которых значение реквизита Код равно значению нашей константы НашеЧисло. Более подробно язык запросов 1С мы рассмотрим в следующих материалах по встроенному языку 1С.

"ВЫБРАТЬ
| НашеЧ.Значение,
| Напоминания.Код,
|ИЗ
| Константа.НашеЧисло КАК НашеЧ,
| Справочник.Напоминания КАК Напоминания
|ГДЕ
| Напоминания.Код = НашеЧ.Значение"

Комментарии

    //теперь с помощью метода Получить() мы можем прочитать значения констант нашего набора

    Набор.Прочитать(); //прочитать из базы сразу три константы

    Интересно, здесь нет опечатки? Вроде речь шла о методе Получить().