Довідковий матеріал

Використання констант (8.2.13 і раніше)

Діє для платформи 1С:Підприємство версій 8.2.13 і раніше, а також для 8.2.14 у режимі сумісності з 8.2.13Для 8.2.14 з вимкненим режимом сумісності див. "Використання констант"Див. також

Див. також

 

Діє для платформи 1С:Підприємство версій 8.2.13 і раніше, а також для 8.2.14 у режимі сумісності з 8.2.13
Для 8.2.14 з вимкненим режимом сумісності див. «Використання констант»

Константи призначені для зберігання даних, що рідко змінюються. Тому

1) не рекомендується закладати в логіку роботи конфігурації часту зміну значень констант із коду;

2) не слід поміщати в константи великі обсяги даних, наприклад, бінарні дані – файли, макети, картинки тощо.
Наприклад, неправильно:

 

МояКартинка = Новый Картинка("C:\Мои документы\Картинка1.bmp");
ХранилищеКартинки = Новый ХранилищеЗначения(МояКартинка);
Константы.КонстантаСКартинкой.Установить(ХранилищеКартинки);

3) слід виконувати запис констант поза транзакціями.
Наприклад, неправильно:

 
 
 // Увеличиваем счетчик проведенных документов в константе
 Процедура ОбработкаПроведения(Отказ, РежимПроведения)
	 ТекущееЗначение = Константы.СчетчикПроведенныхДокументов.Получить();
	 Константы.СчетчикПроведенныхДокументов.Установить(ТекущееЗначение + 1);
 КонецПроцедуры

Ці вимоги зумовлені особливостями зберігання констант у 1С:Підприємстві: на час запису значення в константу робота інших сеансів призупиняється, якщо в цей самий час вони виконують запис цієї ж або будь-якої іншої константи. Докладніше про причини надлишкових блокувань і методи оптимізації див. базу знань «Технологічні питання великих впроваджень».

Водночас неприпустимо розв’язувати проблему надлишкових блокувань констант іншими методами, зокрема тотальним кешуванням констант у параметрах сеансу або у функціях загальних модулів із повторним використанням значень, що повертаються.

Див. також

  • Загальні відомості про надлишкові блокування
Записатися телефоном