Это обновление публикации Самые используемые методы БСП 3.1.9
На момент публикации БСП 3.1.12 - является последней версией и на ней построены все новые типовые конфигурации.
Как читать справочник:
Цифра перед строкой означает количество использований метода в коде конфигурации ERP 2.6.1.
Сверху расположены самые используемые разделы, внутри разделов методы отсортированы по количеству использований. Учитывались только методы модулей подсистемы «Базовая функциональность» БСП.
Ссылка на ИТС (документация БСП 3.1.12)
Часть 1. Базовая функциональность
Возвращает ссылку на общий модуль или модуль менеджера по имени. Из БСП могут быть подключены не все подсистемы, и прямое указание на несуществующий общий модуль в коде приведет к ошибке компиляции.
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбновлениеКонфигурации") Тогда
МодульОбновлениеКонфигурации = ОбщегоНазначения.ОбщийМодуль("ОбновлениеКонфигурации");
МодульОбновлениеКонфигурации.КаталогСкрипта();
КонецЕсли;
Рекомендуется указывать имя переменной в виде Модуль<ИмяОбщегоМодуля> для облегчения поиска вызовов функций таких модулей в дальнейшем при рекфакторинге и анализе кода.
Правильно:
МодульУправлениеПечатью = ОбщегоНазначения.ОбщийМодуль("УправлениеПечатью");
Неправильно:
Модуль = ОбщегоНазначения.ОбщийМодуль("УправлениеПечатью");
Возвращает Истина, если функциональная подсистема существует в конфигурации. Предназначена для реализации вызова необязательной подсистемы (условного вызова). Если функциональная подсистема существует, но снят флажок "Включать в командный интерфейс", то вернет ложь (см. ОбщегоНазначенияПереопределяемый.ПриОпределенииОтключенныхПодсистем)
Предусмотрено две одноименных функции:
ОбщегоНазначения.ПодсистемаСуществует для вызова с сервера
ОбщегоНазначенияКлиент.ПодсистемаСуществует для вызова с клиента
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайлами = ОбщегоНазначения.ОбщийМодуль("РаботаСФайлами");
МодульРаботаСФайлами.ПриСозданииНаСервере(ЭтотОбъект, ПараметрыГиперссылки);
КонецЕсли;
Возвращает ссылку на справочник ИдентификаторыОбъектовМетаданных, соответствующую объекту метаданных.
Идентификатор = ОбщегоНазначения.ИдентификаторОбъектаМетаданных(ТипЗнч(Ссылка));
Идентификатор = ОбщегоНазначения.ИдентификаторОбъектаМетаданных(ОбъектМетаданных);
Идентификатор = ОбщегоНазначения.ИдентификаторОбъектаМетаданных("Справочник.Организации");
Создает объект ОписаниеТипов, содержащий тип Строка
ОписаниеТипаСтрока = ОбщегоНазначения.ОписаниеТипаСтрока;
ОписаниеТипаСтрока50 = ОбщегоНазначения.ОписаниеТипаСтрока(50);
Создает объект ОписаниеТипов, содержащий тип Число
ТипИдентификатора = ОбщегоНазначения.ОписаниеТипаЧисло(15, 0);
Возвращает менеджер объекта по полному имени объекта метаданных.
Ограничение: не обрабатываются точки маршрутов бизнес-процессов.
ОбъектМетаданных = Метаданные.Документы.Найти(ВидДокумента);
ПолноеИмя = ОбъектМетаданных.ПолноеИмя(); // "Справочник.Товары"
МенеджерПечати = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(ПолноеИмя);
МенеджерПечати.ДобавитьКомандыПечати(МассивКоманд);
Позволяет определить, есть ли среди реквизитов объекта реквизит с переданным именем.
МетаданныеСправочник = Метаданные.Справочники[ИмяСправочника];
ЕстьРеквизит = ОбщегоНазначения.ЕстьРеквизитОбъекта("Статус", МетаданныеСправочник);
Возвращает менеджер объекта по ссылке на объект.
Ограничение: не обрабатываются точки маршрутов бизнес-процессов.
МенеджерСправочника = ОбщегоНазначения.МенеджерОбъектаПоСсылке(СсылкаНаОрганизацию);
ПустаяСсылка = МенеджерСправочника.ПустаяСсылка();
Создает объект ОписаниеТипов, содержащий тип Дата
ОписаниеТипаДата = ОбщегоНазначения.ОписаниеТипаДата(ЧастиДаты.Дата);
Проверяет физическое наличие записи в информационной базе данных о переданном значении ссылки.
Если ЗначениеЗаполнено(Ссылка) И ОбщегоНазначения.СсылкаСуществует(Ссылка) Тогда
Объект = Ссылка.ПолучитьОбъект();
КонецЕсли;
Проверка того, что переданный тип является ссылочным типом данных.
Для типа Неопределено возвращается Ложь.
ПроверяемыйТип = ТипЗнч(Ссылка);
Результат = ОбщегоНазначения.ЭтоСсылка(ПроверяемыйТип);
Возвращает ОбъектМетаданных, быстро найденный по полному имени. Более производительный аналог метода платформы Метаданные.НайтиПоПолномуИмени для корневых объектов метаданных.
ОбъектМетаданных = ОбщегоНазначения.ОбъектМетаданныхПоПолномуИмени(ЭлементСоответствия.Ключ);
Возвращает полное имя объекта метаданных по переданному значению ссылки.
Результат = ОбщегоНазначения.ИмяТаблицыПоСсылке(Ссылка) // "Справочник.Номенклатура"
Часто используется в механизме блокировок
Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить(ОбщегоНазначения.ИмяТаблицыПоСсылке(ДокументСсылка));
ЭлементБлокировки.УстановитьЗначение("Ссылка", ДокументСсылка);
Блокировка.Заблокировать();
Или для получения соответствующих макетов, открытия форм, динамического изменения запросов.
Добавляет описание переименования объекта метаданных при переходе на указанную версию конфигурации.
Добавление выполняется в структуру Итог, которая передается в процедуру ОбщегоНазначенияПереопределяемый.ПриДобавленииПереименованийОбъектовМетаданных.
ОбщегоНазначения.ДобавитьПереименование(Итог, "2.1.2.14",
"Подсистема._ДемоПодсистемы",
"Подсистема._ДемоСервисныеПодсистемы");
Определяет принадлежность объекта метаданных к общему типу "Документ".
Если ОбщегоНазначения.ЭтоДокумент(МетаданныеОбъекта.ПустаяСсылка().Метаданные()) Тогда
Определяет доступность объекта метаданных по функциональным опциям.
ДоступенПоФункциональнымОпциям = ОбщегоНазначения.ОбъектМетаданныхДоступенПоФункциональнымОпциям(ОбъектМетаданных);
Проверяет, что переданное значение имеет ссылочный тип данных.
Если ОбщегоНазначения.ЗначениеСсылочногоТипа(Организация) Тогда
Организация = Организация.ПолучитьОбъект();
КонецЕсли;
Возвращает объект метаданных по переданному идентификатору - ссылке на справочник ИдентификаторыОбъектовМетаданных или ИдентификаторыОбъектовРасширений.
МетаданныеОтчета = ОбщегоНазначения.ОбъектМетаданныхПоИдентификатору(ПараметрыОткрытия.Отчет, Ложь);
Определяет принадлежность объекта метаданных к общему типу "Справочник".
Если ОбщегоНазначения.ЭтоСправочник(МетаданныеЭлемента) Тогда
Возвращает коллекцию типа соответствие ссылок на элементы справочника ИдентификаторыОбъектовМетаданных для массива объектов метаданных
ПолныеИмена = Новый Массив;
ПолныеИмена.Добавить(Метаданные.Справочники.Валюты.ПолноеИмя());
ПолныеИмена.Добавить(Метаданные.РегистрыСведений.КурсыВалют.ПолноеИмя());
Идентификаторы = ОбщегоНазначения.ИдентификаторыОбъектовМетаданных(ПолныеИмена);
Определяет принадлежность объекта метаданных к типу регистр.
ИначеЕсли ОбщегоНазначения.ЭтоРегистр(МетаданныеЭлемента) Тогда
Определяет принадлежность объекта метаданных к ссылочному типу
ОбъектМетаданных = Ссылка.Метаданные();
Результат = ОбщегоНазначения.ЭтоОбъектСсылочногоТипа(ОбъектМетаданных);
Определяет принадлежность объекта метаданных к общему типу "Регистр сведений".
И Не ОбщегоНазначения.ЭтоРегистрСведений(ОбъектМетаданных)
Проверяет, что указанный режим соответствует удалению набора записей.
Если ЭтоРегистр И ОбщегоНазначения.ЭтоУдалениеНабораЗаписей(Режим.Замещение) Тогда
Определяет принадлежность объекта метаданных к общему типу "План видов характеристик".
ИначеЕсли ОбщегоНазначения.ЭтоПланВидовХарактеристик(МетаданныеОбъекта) И МетаданныеОбъекта.ПредставлениеОбъекта <> "" Тогда
Возвращает описание типа, включающего в себя все возможные ссылочные типы конфигурации.
ОписаниеТипаВсеСсылки = ОбщегоНазначения.ОписаниеТипаВсеСсылки();
Определяет принадлежность объекта метаданных к общему типу "Перечисление".
И ОбщегоНазначения.ЭтоПеречисление(Метаданные.НайтиПоТипу(ТипРеквизитаОбъектаИС)) Тогда
Возвращает объекты метаданных по переданным идентификаторам.
ОбъектыМетаданныхПоИдентификаторам = ОбщегоНазначения.ОбъектыМетаданныхПоИдентификаторам(
МассивИсточников,
Ложь);
Определяет принадлежность объекта метаданных к общему типу "Задача".
И Не ОбщегоНазначения.ЭтоЗадача(ОбъектМетаданных)
Определяет принадлежность объекта метаданных к общему типу "План счетов".
И Не ОбщегоНазначения.ЭтоПланСчетов(ОбъектМетаданных)
Возвращает признак того, что реквизит входит в подмножество стандартных реквизитов.
МетаданныеОбъекта = Ссылка.Метаданные();
Результат = ОбщегоНазначения.ЭтоСтандартныйРеквизит(МетаданныеОбъекта.СтандартныеРеквизиты, "ПометкаУдаления");
Возвращает имя базового типа по переданному значению объекта метаданных.
ОбъектМетаданных = Ссылка.Метаданные();
ИмяБазовогоТипа = ОбщегоНазначения.ИмяБазовогоТипаПоОбъектуМетаданных(ОбъектМетаданных);
//"Справочники".
Определяет принадлежность объекта метаданных к общему типу "План видов расчета".
И Не ОбщегоНазначения.ЭтоПланВидовРасчета(ОбъектМетаданных)
Определяет принадлежность объекта метаданных к общему типу "Регистр бухгалтерии".
И Не ОбщегоНазначения.ЭтоРегистрБухгалтерии(ОбъектМетаданных)
Определяет принадлежность объекта метаданных к общему типу "Журнал документов".
Если ОбщегоНазначения.ЭтоЖурналДокументов(ОбъектМетаданных) Тогда
Определяет принадлежность объекта метаданных к общему типу "Регистр накопления".
И Не ОбщегоНазначения.ЭтоРегистрНакопления(ОбъектМетаданных)
Определяет принадлежность объекта метаданных к общему типу "Бизнес-процесс".
И Не ОбщегоНазначения.ЭтоБизнесПроцесс(ОбъектМетаданных)
Возвращает строковое представление типа, например, "СправочникСсылка.ИмяОбъекта", "ДокументСсылка.ИмяОбъекта".
Для остальных типов приводит тип к строке, например "Число".
Результат = ОбщегоНазначения.СтроковоеПредставлениеТипа(Тип)
Проверяет, является ли элемент справочника или плана видов характеристик группой элементов.
ВидимостьЭлементаСклад = ОбщегоНазначения.ОбъектЯвляетсяГруппой(Форма.Склад);
Определяет принадлежность объекта метаданных к общему типу "Константа".
ИначеЕсли ОбщегоНазначения.ЭтоКонстанта(Метаданные.НайтиПоПолномуИмени(ЗначениеОтбора)) Тогда
Определяет принадлежность объекта метаданных к общему типу "Регистр расчета".
И Не ОбщегоНазначения.ЭтоРегистрРасчета(ОбъектМетаданных)
Возвращает имя вида объектов метаданных по ссылке на объект.
Ограничение: не обрабатываются точки маршрутов бизнес-процессов.
ВидОбъекта = ОбщегоНазначения.ВидОбъектаПоСсылке(НоменклатураСсылка); // "Справочник"
Возвращает имя значения перечисления типа платформы.
ИмяТипаПлатформы = ОбщегоНазначенияКлиентСервер.ИмяТипаПлатформы(СистемнаяИнформация.ТипПлатформы);
Определяет принадлежность объекта метаданных к общему типу "План обмена".
Если ОбщегоНазначения.ЭтоПланОбмена(МетаданныеАвтора) Тогда
Возвращает имя вида объектов метаданных по типу объекта.
Ограничение: не обрабатываются точки маршрутов бизнес-процессов.
ВидОбъекта = ОбщегоНазначения.ВидОбъектаПоТипу(ТипЗнч(Ссылка)); // "Документ"
Возвращает идентификатор Интернет-поддержки основной конфигурации.
ПараметрыЗапроса.Вставить("name", ОбщегоНазначения.ИдентификаторИнтернетПоддержкиКонфигурации());
Проверить, что описание типа состоит из единственного типа значения и
совпадает с нужным типом.
Результат = ОбщегоНазначения.ОписаниеТипаСостоитИзТипа(ОписаниеТипа, Тип("Массив"));
Возвращает внутренний идентификатор кластера серверов.
Подставляет параметры в строку. Максимально возможное число параметров - 9. Параметры в строке задаются как %<номер параметра>. Нумерация параметров начинается с единицы.
Запрос.Текст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
ШаблонТекстаЗапроса,
ТекстПоляРегистра,
ТекстПоляРегистраСМинусом,
Разбивает строку на несколько строк по указанному разделителю. Разделитель может иметь любую длину. В случаях, когда разделителем является строка из одного символа, и не используется параметр СокращатьНепечатаемыеСимволы, рекомендуется использовать функцию платформы СтрРазделить.
Поля = СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок(ПоляГруппировкиСтрокой, ",", Истина, Истина);
Проверяет, содержит ли строка только цифры или пустая.
Результат = СтроковыеФункцииКлиентСервер.ТолькоЦифрыВСтроке("0123"); // Истина
ПробелыЗапрещены = Ложь;
Результат = СтроковыеФункцииКлиентСервер.ТолькоЦифрыВСтроке("01 2 3",, ПробелыЗапрещены); // Истина
Форматирует строку в соответствии с заданным шаблоном с использованием html-тегов. Возвращает объект типа ФорматированнаяСтрока, которая используется для хранения и отображения строк с оформлением.
В качестве оформления могут использоваться:
- цвет текста,
- цвет фона,
- шрифт текста,
- картинки,
- гиперссылки.
Предусмотрено две одноименных функции: СтроковыеФункции.ФорматированнаяСтрока для вызова с сервера СтроковыеФункцииКлиент.ФорматированнаяСтрока для вызова с клиента
СтроковыеФункцииКлиент.ФорматированнаяСтрока(НСтр("ru='
<span style=""color: ЗаблокированныйРеквизитЦвет; font: ВажнаяНадписьШрифт"">Минимальная</span> версия программы <b>1.1</b>.
<a href = ""Обновление"">Обновите</a> программу.'"));
СтроковыеФункцииКлиент.ФорматированнаяСтрока(НСтр("ru='Режим: <img src="?_=1720191071"РедактироватьВДиалоге"">
<a style=""color: ИзмененноеЗначениеРеквизитаЦвет; background-color: ИзмененноеЗначениеРеквизитаФон""
href=""e1cib/command/Обработка.Редактор"">Редактирование</a>'"));
СтроковыеФункции.ФорматированнаяСтрока(НСтр("ru='Текущая дата <img src="?_=1720191071"Календарь"">
<span style=""font:ВажнаяНадписьШрифт"">%1</span>'"), ТекущаяДатаСеанса());
Преобразует исходную строку в число без вызова исключений.
"10", "+10", "010", вернет 10;
"(10)", "-10", вернет -10;
"10,2", "10.2", вернет 10.2;
"000", " ", "", вернет 0;
"10текст", вернет Неопределено
СтроковыеФункцииКлиентСервер.СтрокаВЧисло("1234,12"); // 1234.12
Дополняет строку символами слева или справа до заданной длины и возвращает ее.
При этом удаляются незначащие символы слева и справа (подробнее про незначащие символы
см. синтакс-помощник к методу платформы СокрЛП).
По умолчанию функция дополняет строку символами "0" (ноль) слева.
Результат = СтроковыеФункцииКлиентСервер.ДополнитьСтроку("1234", 10, "0", "Слева");
// Возвращает: "0000001234".
Результат = СтроковыеФункцииКлиентСервер.ДополнитьСтроку(" 1234 ", 10, "#", "Справа");
// Строка = " 1234 "; ДлинаСтроки = 10; Символ = "#"; Режим = "Справа"
// Возвращает: "1234######".
Формирует представление числа для определенного языка и параметров числа.
Строка = СтроковыеФункцииКлиентСервер.СтрокаСЧисломДляЛюбогоЯзыка(
НСтр("ru=';остался %1 день;;осталось %1 дня;осталось %1 дней;осталось %1 дня';
|en=';%1 day left;;;;%1 days left'"),
0.05,, "ЧДЦ=1");
Заменяет в шаблоне строки имена параметров на их значения. Параметры в строке выделяются с двух сторон квадратными скобками.
Значения = Новый Структура("Фамилия, Имя", "Петров", "Иван");
Результат = СтроковыеФункцииКлиентСервер.ВставитьПараметрыВСтроку("Привет, [Имя] [Фамилия].", Значения);
// - возвращает: "Привет, Иван Петров".
Преобразует исходную строку в дату.
Если дату не удалось распознать, то возвращается пустая дата (01.01.01 00:00:00).
Формат даты должен быть в виде "ДД.ММ.ГГГГ" или "ДД/ММ/ГГ" или "ДД-ММ-ГГ ЧЧ:ММ:CC",
Например, "23.02.1980" или "23/02/80 09:15:45"
ДатаНачала = СтроковыеФункцииКлиентСервер.СтрокаВДату(ДатаСтрокой);
Проверяет, является ли строка уникальным идентификатором.
В качестве уникального идентификатора предполагается строка вида
"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", где X = [0..9,a..f].
ЭтоУИД = СтроковыеФункцииКлиентСервер.ЭтоУникальныйИдентификатор(ЗначениеИдентификатора);
Преобразует исходную строку в транслит.
Может использоваться для отправки SMS-сообщений латиницей или для сохранения файлов и папок, чтобы обеспечить возможность их переноса между разными операционными системами.
Обратное преобразование из латинских символов не предусмотрено.
Предусмотрено две одноименных функции: СтроковыеФункции.СтрокаЛатиницей для вызова с сервера СтроковыеФункцииКлиент.СтрокаЛатиницей для вызова с клиента
Результат = СтроковыеФункции.СтрокаЛатиницей(Значение);
Результат = СтроковыеФункцииКлиент.СтрокаЛатиницей(Значение)
Удаляет из строки указанное количество символов справа.
ГодыПредставление = "2024 г";
СтроковыеФункцииКлиентСервер.УдалитьПоследнийСимволВСтроке(ГодыПредставление, 2);
Выполняет замену символов в строке.
Предназначена для простых случаев - например, для замены латиницы на похожие кириллические символы.
НовСтрока = СтроковыеФункцииКлиентСервер.ЗаменитьОдниСимволыДругими("ё", НаименованиеДляСловаря, "е");
Проверяет, содержит ли строка только символы латинского алфавита и указанные допустимые символы
ТолькоНациональныеСимволы = Ложь;
РезультатПроверки = СтроковыеФункцииКлиентСервер.ТолькоЛатиницаВСтроке(ФИО, ТолькоНациональныеСимволы, ДопустимыеСимволы);
Устарела. Следует использовать см. СтроковыеФункцииКлиентСервер.СтрокаСЧисломДляЛюбогоЯзыка.
СтроковыеФункцииКлиентСервер.ЧислоЦифрамиПредметИсчисленияПрописью(
МаксимальнаяСуммаОплатыВБаллах,
НСтр("ru = 'балл, балла, баллов';
|en = 'point, points, points'")));
Проверяет, содержит ли строка только символы кириллического алфавита и указанные допустимые символы
ДопустимоКромеКириллицы = ".";
Регион = "Мурманская обл.";
АдресКорректный = СтроковыеФункцииКлиентСервер.ТолькоКириллицаВСтроке(
Регион,
Ложь,
ДопустимоКромеКириллицы);
Разбивает строку на несколько строк, используя заданный набор разделителей. Если параметр РазделителиСлов не задан, то разделителем слов считается любой из символов, не относящихся к символам латиницы, кириллицы, цифры, подчеркивания.
// возвратит массив значений: "один", "два2_", "три"
СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивСлов("один-@#два2_!три");
// возвратит массив значений: "один-", "два2", "три"
СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивСлов("один-@#два2_!три", "#@!_");
// возвратит массив значений: "один-", "#два2", "три"
СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивСлов("один-@#два2_!три", "@!_");
Формирует строку повторяющихся символов заданной длины
Отступ = СтроковыеФункцииКлиентСервер.СформироватьСтрокуСимволов(" ", Уровень);
Удаляет крайние повторяющиеся символы слева или справа в строке.
СтроковыеФункцииКлиентСервер.УдалитьПовторяющиесяСимволы(ПрефиксОрганизации, "0");
Получает значения параметров из строки
Результат = СтроковыеФункцииКлиентСервер.ПараметрыИзСтроки("File=""c:\InfoBases\Trade""; Usr=""Director"";""", ";");
// - вернет структуру:
// ключ "File" и значение "c:\InfoBases\Trade"
// ключ "Usr" и значение "Director".
ПутьККонфигурации = СтрокаСоединенияИнформационнойБазы();
Структура = СтроковыеФункцииКлиентСервер.ПараметрыИзСтроки(ПутьККонфигурации);
// Вернет структуру:
//Ref "base"
//Srvr "server:1860"
Определяет, является ли символ разделителем. Разделителем считаются все символы, не являющиеся цифрами, латинскими и кириллическими буквами, а также знаком подчеркивания. Можно определить дополнительные символы.
// - В строке не должно быть разделителей.
ЕстьРазделители = Ложь;
Для Позиция = 1 По СтрДлина(Идентификатор) Цикл
Если СтроковыеФункцииКлиентСервер.ЭтоРазделительСлов(КодСимвола(Идентификатор, Позиция)) Тогда
ОбщегоНазначения.СообщитьПользователю("Идентификатор содержит недопустимые символы");
Прервать;
КонецЕсли;
КонецЦикла;
Выполняет преобразование арабского числа в римское.
Результат = СтроковыеФункцииКлиентСервер.ПреобразоватьЧислоВРимскуюНотацию(17); // = "XVII".
Устарела. Следует использовать см. СтроковыеФункцииКлиентСервер.СтрокаСЧисломДляЛюбогоЯзыка.
СтроковыеФункцииКлиентСервер.ФормаМножественногоЧисла("день", "дня", "дней", Форма.КоличествоДней));
Подставляет параметры в строку. Число параметров в строке не ограничено. Параметры в строке задаются как %<номер параметра>. Нумерация параметров начинается с единицы.
ЗначенияПараметров = Новый Массив;
ЗначенияПараметров.Добавить("Вася");
ЗначенияПараметров.Добавить("Зоопарк");
Результат = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтрокуИзМассива("%1 пошел в %2", ЗначенияПараметров);
// - вернет строку "Вася пошел в Зоопарк".
Очищает текст в формате HTML от тегов и возвращает неформатированный текст. Также убирает скрипты и заголовки.
ТекстСодержания = СтроковыеФункцииКлиентСервер.ИзвлечьТекстИзHTML(ТекстHTML);
Возвращает представление периода в нижнем регистре или с заглавной буквы, если с него начинается фраза (предложение).
Например, если требуется вывести представление периода в заголовке отчета в формате "Продажи за [ДатаНачала] - [ДатаОкончания]", то ожидается, что результат будет выглядеть так: "Продажи за февраль 2020 г. - март 2020 г.". Т.е. - со строчной буквы, т.к. "февраль 2020 г. - март 2020 г." не является началом предложения.
КнопкаВыбораПериода.Заголовок = СтроковыеФункцииКлиент.ПредставлениеПериодаВТексте(
Период.ДатаНачала, Период.ДатаОкончания);
Выполняет преобразование римского числа в арабское.
Результат = СтроковыеФункцииКлиентСервер.ПреобразоватьЧислоВАрабскуюНотацию("XVII"); // = 17
Проверяет наличие в строке посторонних символов.
ТолькоСимволы = СтроковыеФункцииКлиентСервер.ТолькоСимволыНациональногоАлфавитаВСтроке(
СтрЗаменить(ЭлементыКонтрагента[ТекущийИндекс], " ", ""));
Удаляет двойные кавычки с начала и конца строки, если они есть.
НовСтрока = СтроковыеФункцииКлиентСервер.СократитьДвойныеКавычки(Строка);
Создает массив и помещает в него переданное значение.
СписокФизическихЛиц = ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(ФизическоеЛицо);
// заменяет две строки кода
СписокФизическихЛиц = Новый Массив;
СписокФизическихЛиц.Добавить(ФизическоеЛицо);
На мой взгляд, данная функция только снижает скорость написания и читаемость кода.
Создает полную копию структуры, соответствия, массива, списка или таблицы значений, рекурсивно, с учетом типов дочерних элементов. При этом содержимое значений объектных типов (СправочникОбъект, ДокументОбъект и т.п.) не копируются, а возвращаются ссылки на исходный объект.
НовыеПараметрыФормирования = ОбщегоНазначения.СкопироватьРекурсивно(ПараметрыЗапроса);
Возвращает значение свойства структуры с возможностью задать значение по умолчанию если структура = Неопределено или отсутствует свойство.
Контрагент = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Параметры.ПараметрыВыбора, "Контрагент", Объект.Контрагент);
Проверяет наличие реквизита или свойства у произвольного объекта без обращения к метаданным.
Результат = ОбщегоНазначенияКлиентСервер.ЕстьРеквизитИлиСвойствоОбъекта(СсылкаНаОбъект, "Склад");
Результат = ОбщегоНазначенияКлиентСервер.ЕстьРеквизитИлиСвойствоОбъекта(СтрокаТаблицы, "ВидЦен");
Дополняет массив МассивПриемник значениями из массива МассивИсточник. Есть возможность проверки на уникальные значения.
ТолькоУникальныеЗначения = Ложь;
ОбщегоНазначенияКлиентСервер.ДополнитьМассив(МассивДокументов, ДокументыКОбработке, ТолькоУникальныеЗначения);
Возвращает фрагмент текста запроса, отделяющего один запрос от другого.
Запрос.Текст = Запрос.Текст + ОбщегоНазначения.РазделительПакетаЗапросов() + ТекстАктуализацииЗакрытияМесяца;
Создает массив и копирует в него значения, содержащиеся в колонке любой коллекции строк. Есть возможность копировать только уникальные значения.
МассивПоказателей = ОбщегоНазначения.ВыгрузитьКолонку(Объект.Показатели, "Показатель", ТолькоУникальныеЗначения);
Дополняет таблицу значений - приемник данными из таблицы значений - источника. При этом нужно помнить, что типы ТаблицаЗначений, ДеревоЗначений, ТабличнаяЧасть недоступны на клиенте.
ОбщегоНазначенияКлиентСервер.ДополнитьТаблицу(Отбор, ТаблицаОтбора);
Удаляет одно значение из массива.
ОбщегоНазначенияКлиентСервер.УдалитьЗначениеИзМассива(ДоступныеСвойства, "ВидВремени");
Процедура удаляет из массива МассивРеквизитов элементы, соответствующие именам реквизитов объекта из массива МассивНепроверяемыхРеквизитов.
Для использования в обработчиках события ОбработкаПроверкиЗаполнения модулей объектов.
Процедура ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты)
МассивНепроверяемыхРеквизитов = Новый Массив;
Если ЭтоКорректировка Тогда
МассивНепроверяемыхРеквизитов.Добавить("Дата");
КонецЕсли;
ОбщегоНазначения.УдалитьНепроверяемыеРеквизитыИзМассива(ПроверяемыеРеквизиты, МассивНепроверяемыхРеквизитов);
КонецПроцедуры
Возвращает копию исходного массива с уникальными значениями.
Организации = ОбщегоНазначенияКлиентСервер.СвернутьМассив(Организации);
Дополняет структуру значениями из другой структуры. При пересечении возможен выбор заменять, пропускать или вызывать исключение.
Заменять = Ложь;
ОбщегоНазначенияКлиентСервер.ДополнитьСтруктуру(ОсновныеПараметры, СлужебныеПараметры, Заменять);
Возвращает разность массивов. Разностью двух массивов является массив, содержащий
все элементы первого массива, не существующие во втором массиве.
Результат = ОбщегоНазначенияКлиентСервер.РазностьМассивов(МассивОбъектов, НапечатанныеОбъекты);
Вызывает исключение, если тип значения параметра процедуры или функции отличается от ожидаемого. Для быстрой диагностики типов параметров, передаваемых в процедуры и функции программного интерфейса.
В связи с особенностью реализации ОписанияТипов всегда включает в себя тип <Неопределено>. Если требуется жесткая проверка типа, используйте в параметре ОжидаемыеТипы конкретный тип, массив или соответствие типов.
ОбщегоНазначенияКлиентСервер.ПроверитьПараметр("РаботаСФайлами.ДвоичныеДанныеФайла",
"ПрисоединенныйФайл",
ПрисоединенныйФайл,
Метаданные.ОпределяемыеТипы.ПрисоединенныйФайл.Тип);
Преобразует строку таблицы значений в структуру.
Свойства структуры и их значения совпадают с колонками переданной строки.
СтруктураСтроки = ОбщегоНазначения.СтрокаТаблицыЗначенийВСтруктуру(НайденнаяСтрока);
Преобразует таблицу значений в массив структур.
Может использоваться для передачи на клиент данных в том случае, если таблица значений содержит только такие значения, которые могут быть переданы с сервера на клиент.
Полученный массив содержит структуры, каждая из которых повторяет структуру колонок таблицы значений.
Не рекомендуется использовать для преобразования таблиц значений с большим количеством строк.
МассивРезультат = ОбщегоНазначения.ТаблицаЗначенийВМассив(ТЗ);
Возвращает строковое имя значения перечисления по его ссылке.
Вызывает исключение, если передано несуществующее значение перечисления
(например, удаленное в конфигурации или от отключенного расширения конфигурации).
Результат = ОбщегоНазначения.ИмяЗначенияПеречисления(Перечисления.ЮридическоеФизическоеЛицо.ФизическоеЛицо);
// Результат = "ФизическоеЛицо";
Возвращает пустой уникальный идентификатор.
ПустойИдентификатор = ОбщегоНазначенияКлиентСервер.ПустойУникальныйИдентификатор();
// УникальныйИдентификатор - 00000000-0000-0000-0000-000000000000
Вызывает исключение с текстом Сообщение, если Условие не равно Истина. Применяется для самодиагностики кода.
Процедура СократитьСтрокуКонтрольнойСуммой(Строка, МаксимальнаяДлина) Экспорт
ОбщегоНазначенияКлиентСервер.Проверить(МаксимальнаяДлина >= 32, НСтр("ru = 'Параметр МаксимальнаяДлина не может быть меньше 32'"),
"ОбщегоНазначения.СократитьСтрокуКонтрольнойСуммой");
// выдаст исключение с текстом
// "Параметр МаксимальнаяДлина не может быть меньше 32 в ОбщегоНазначения.СократитьСтрокуКонтрольнойСуммой"
КонецПроцедуры
Дополняет соответствие значениями из другого соответствия.
ОбщегоНазначенияКлиентСервер.ДополнитьСоответствие(Заголовки, ДопЗаголовки);
Удаляет все вхождения переданного значения из массива.
ОбщегоНазначенияКлиентСервер.УдалитьВсеВхожденияЗначенияИзМассива(
Организации,
Справочники.Организации.ПустаяСсылка());
Вычисляет контрольную сумму для произвольных данных по указанному алгоритму.
НовыйДанныеКорзиныХэшСумма = ОбщегоНазначения.КонтрольнаяСуммаСтрокой(ДанныеКорзины);
Если НовыйДанныеКорзиныХэшСумма <> ДанныеКорзиныХэшСумма Тогда
ДанныеКорзиныХэшСумма = НовыйДанныеКорзиныХэшСумма;
ПеречитатьКорзину(ДанныеКорзины);
КонецЕсли;
Сравнивает две коллекции строк (ТаблицаЗначений, ДеревоЗначений и т.д.), для которых доступен обход посредством оператора Для каждого … Из … Цикл.
Сравниваемые коллекции должны отвечать следующим требованиям:
- доступен обход посредством оператора Для каждого … Из … Цикл,
- наличие в обеих коллекциях всех колонок, перечисленных в параметре ИменаКолонок
(если ИменаКолонок не заполнен - все колонки первой коллекции должны существовать во второй коллекции).
Также позволяет сравнивать массивы.
Если Не ОбщегоНазначения.КоллекцииИдентичны(Настройки, ТекущиеНастройки) Тогда
ОбновитьНастройки();
КонецЕсли;
Устарела. Следует использовать ОбщегоНазначенияКлиент.СкопироватьРекурсивно или ОбщегоНазначения.СкопироватьРекурсивно Создает копию значения типа Структура, рекурсивно, с учетом типов значений свойств. Если свойства структуры содержат значения объектных типов (СправочникОбъект, ДокументОбъект и т.п.
Результат = ОбщегоНазначенияКлиентСервер.СкопироватьСтруктуру(ПараметрыРедактированияВидовЗапасов);
Возвращает описание предмета в виде текстовой строки.
Для документов возвращается представление, для остальных ссылочных типов возвращается представление и тип в скобках, например, "Ножницы (Номенклатура)".
Для пустых ссылок, Неопределено или незаполненных значений примитивных типов возвращается "не задан".
// Возвращаемое значение:
// Строка - например, "Ножницы (Номенклатура)", "Заказ клиента № 0001 от 01.01.2001" или "не задан".
Форма.ПредметСтрокой = ОбщегоНазначения.ПредметСтрокой(Форма.Объект.Предмет);
Создает структуру, содержащую имена и значения измерений, ресурсов и реквизитов переданного менеджера записи регистра сведений.
Настройки = РегистрыСведений.НастройкиЗаявленийНаОтпуск.СоздатьМенеджерЗаписи();
Настройки.Прочитать();
СтруктураНастроек = ОбщегоНазначения.СтруктураПоМенеджеруЗаписи(
Настройки, Метаданные.РегистрыСведений.НастройкиЗаявленийНаОтпуск);
Возвращает строковое представление объекта, заданное в свойствах объекта метаданных. В зависимости от того, какие свойства объекта метаданных заполнены, функция возвращают одно из них в указанном порядке: Расширенное представление объекта, Представление объекта, Синоним или Имя.
ВыбранноеИмя = ОбщегоНазначения.ПредставлениеОбъекта(МетаданныеТипа);
Преобразует текст указанного формата XML в таблицу значений, при этом колонки таблицы формируются на основе описания в XML.
КлассификаторXML = Обработки.ЗагрузкаКурсовВалют.ПолучитьМакет("ОбщероссийскийКлассификаторВалют").ПолучитьТекст();
КлассификаторТаблица = ОбщегоНазначения.ПрочитатьXMLВТаблицу(КлассификаторXML).Данные;
Возвращает фрагмент текста запроса, объединяющего результаты запросов в один запрос.
Запрос.Текст = Запрос.Текст + СтрСоединить(ЧастиЗапроса, ОбщегоНазначения.ТекстОбъединитьВсе());
Дополняет список значений СписокПриемник значениями списка СписокИсточник. При этом если в списке-приемнике уже есть элемент с добавляемым значением, то у него заменяется представление на новое из списка-источника.
Дополнение = ОбщегоНазначенияКлиентСервер.ДополнитьСписок(Список, Выбранные, Истина, Истина);
Дополняет таблицу значений Таблица значениями из массива Массив. Строки добавляются безусловно, другие колонки при наличии остаются незаполненными.
ОбщегоНазначенияКлиентСервер.ДополнитьТаблицуИзМассива(Таблица, МассивПодчиненныеПодразделения, "Подразделение");
Устарела. Следует использовать ОбщегоНазначенияКлиент.СкопироватьРекурсивно или ОбщегоНазначения.СкопироватьРекурсивно Создает копию значения типа Массив, рекурсивно, с учетом типов значений элементов массива. Если элементы массива содержат значения объектных типов (СправочникОбъект, ДокументОбъект и т.п.
НедоступныеСвойства = ОбщегоНазначенияКлиентСервер.СкопироватьМассив(СвойстваНачисления.НедоступныеСвойства);
Фиксирует данные типов Структура, Соответствие, Массив с учетом вложенности. Если это массив структур, возвращается фиксированный массив фиксированных структур.
Параметры = ОбщегоНазначения.ФиксированныеДанные(РассчитанныеПараметры);
Сравнивает данные сложной структуры с учетом вложенности. Отличие от КоллекцииИдентичны в том, что может сравнивать не только коллекции, но и ХранилищеЗначения, Строка и т.д.
ДанныеСовпадают = ОбщегоНазначения.ДанныеСовпадают(ТаблицаДоОбновления, ТаблицаПослеОбновления);
Создает массив и помещает в него переданные значения.
ОбщегоНазначенияКлиентСервер.МассивЗначений(ПервичныйДокумент));
Возвращает строковое представление списка, заданное в свойствах объекта метаданных. В зависимости от того, какие свойства объекта метаданных заполнены, функция возвращают одно из них в указанном порядке: Расширенное представление списка, Представление списка, Синоним или Имя.
ПредставлениеСписка = ОбщегоНазначения.ПредставлениеСписка(ОбъектМетаданных);
Устарела. Следует использовать ОбщегоНазначенияКлиент.СкопироватьРекурсивно или ОбщегоНазначения.СкопироватьРекурсивно Создает копию значения типа СписокЗначений, рекурсивно, с учетом типов его значений. Если в списке значений есть значения объектных типов (СправочникОбъект, ДокументОбъект и т.п.
ЭтотОбъект["ТекущиеМногострочныеЧасти"] = ОбщегоНазначенияКлиентСервер.СкопироватьСписокЗначений(МногострочныеЧасти);
Получает строку, содержащую ключи структуры, разделенные символом разделителя.
ИсключаемыеПоляСтрокой = ОбщегоНазначенияКлиентСервер.КлючиСтруктурыВСтроку(ИсключаемыеПоля, ",");
Сравнивает элементы списков значений или массивов по значениям.
Результат = ОбщегоНазначенияКлиентСервер.СпискиЗначенийИдентичны(ИдентификаторыДоЗаполнения, ИдентификаторыПослеЗаполнения);
Производит замену ссылок во всех данных. После замены неиспользуемые ссылки опционально удаляются. Замена ссылок происходит с транзакциями по изменяемому объекту и его связям, не по анализируемой ссылке. При вызове в неразделенном сеансе не выявляет ссылок в разделенных областях. Если описаны связи подчиненных и основных объектов (см.
РезультатЗамены = ОбщегоНазначения.ЗаменитьСсылки(ПарыЗамен,
Новый Структура("СпособУдаления,ВключатьБизнесЛогику,ПривилегированнаяЗапись", "Непосредственно", Ложь, Истина));
Возвращает РежимЗамещения.Удаление или Неопределено, если не поддерживается в текущей версии 1С:Предприятия.
РежимУдаления = ОбщегоНазначения.РежимУдаленияНабораЗаписей();
Возвращает РежимЗамещения.Слияние или Неопределено, если не поддерживается в текущей версии 1С:Предприятия.
РежимСлияния = ОбщегоНазначения.РежимСлиянияНабораЗаписей();
Возвращает указанные поля строк регистра из базы данных, которые будут записаны при записи указанного набора записей с учетом режима замещения.
СтарыеЗаписи = ОбщегоНазначения.ЗаписиНабораИзБазыДанных(НаборЗаписей, Замещение, СписокПолей);
Сокращает строку до нужной длины, при этом обрезанная часть хешируется, обеспечивая уникальность строки. Проверяет длину строки на входе и, в случае превышения максимальной длины, преобразует ее конец по алгоритму MD5 в уникальную строку из 32 символов.
КлючНазначенияИспользования = ОбщегоНазначения.СократитьСтрокуКонтрольнойСуммой(ВыбранныеТипы, 128);
Удаляет все вхождения значений указанного типа.
ОбщегоНазначенияКлиентСервер.УдалитьВсеВхожденияТипаИзМассива(СписокСотрудников, Тип("СправочникСсылка.ФизическиеЛица"));
Возвращает код основного языка информационной базы, например "ru".
На котором программно записываются автогенерируемые строки в информационную базу.
Например, при начальном заполнении информационной базы данными из макета, автогенерации комментария к проводке или определении значения параметра ИмяСобытия метода ЗаписьЖурналаРегистрации.
Предусмотрено две одноименных функции: ОбщегоНазначения.КодОсновногоЯзыка для вызова с сервера ОбщегоНазначенияКлиент.КодОсновногоЯзыка для вызова с клиента
Результат = ОбщегоНазначения.КодОсновногоЯзыка();
Возвращает значения реквизита, прочитанного из информационной базы по ссылке на объект.
Рекомендуется использовать вместо обращения к реквизитам объекта через точку от ссылки на объект для быстрого чтения отдельных реквизитов объекта из базы данных. При чтении отдельных реквизитов объекта из базы данных нужно помнить, что вызов метода ПолучитьОбъект или обращение к реквизитам объекта через точку от ссылки приводит к загрузке объекта из базы целиком, вместе с его табличными частями.
Если необходимо прочитать реквизит независимо от прав текущего пользователя, то следует использовать предварительный переход в привилегированный режим.
Если передано имя несуществующего реквизита, то вызывается исключение "Поле объекта не существует".
Результат = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Ссылка, ИмяРеквизита, ВыбратьРазрешенные, КодЯзыка)
Клиентского варианта функции в БСП нет, но можно поискать в других модулях с суффиксом ВызовСервера или КлиентСервер:
ВидНоменклатуры = ОбщегоНазначенияУТВызовСервера.ЗначениеРеквизитаОбъекта(Владелец, "ВидНоменклатуры");
Код = ОтборыСписковКлиентСервер.ЗначениеРеквизитаОбъекта(ТекСтрока.Балансировка,"Код");
Возвращает структуру, содержащую значения реквизитов, прочитанные из информационной базы по ссылке на объект.
Рекомендуется использовать вместо обращения к реквизитам объекта через точку от ссылки на объект для быстрого чтения отдельных реквизитов объекта из базы данных.
Если необходимо зачитать реквизит независимо от прав текущего пользователя, то следует использовать предварительный переход в привилегированный режим.
Результат = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Ссылка, Реквизиты, ВыбратьРазрешенные, КодЯзыка)
Возвращает ссылку предопределенного элемента по его полному имени. Повторные вызовы кэшируются.
Для клиентских вызовов есть встроенная функция ПредопределенноеЗначение(<ИмяПредопределенногоЗначения>), которая также кэшируется. Но рекомендуется использовать ОбщегоНазначенияКлиент.ПредопределенноеЗначение, т.к. при удалении предопределенного элемента из БД или очистке реквизита ИмяПредопределенного, встроенная функция выдаст исключение. А функция БСП вернет Неопределено.
Отпуск = ОбщегоНазначения.ПредопределенныйЭлемент("Справочник.ВидыОтпусков." + ВидОтпуска);
Статус = ОбщегоНазначенияКлиент.ПредопределенныйЭлемент("Перечисление.СтатусыЗаказов.Создание");
Возвращает значения реквизита, прочитанного из информационной базы для нескольких объектов.
Рекомендуется использовать вместо обращения к реквизитам объекта через точку от ссылки на объект для быстрого чтения отдельных реквизитов объекта из базы данных.
Если необходимо зачитать реквизит независимо от прав текущего пользователя, то следует использовать предварительный переход в привилегированный режим.
Если передано имя несуществующего реквизита, то вызывается исключение "Поле объекта не существует".
Результат = ОбщегоНазначения.ЗначениеРеквизитаОбъектов(МассивСсылок, ИмяРеквизита, ВыбратьРазрешенные, КодЯзыка);
Возвращает значения реквизитов, прочитанные из информационной базы для нескольких объектов.
Рекомендуется использовать вместо обращения к реквизитам объекта через точку от ссылки на объект
для быстрого чтения отдельных реквизитов объекта из базы данных.
Если необходимо зачитать реквизит независимо от прав текущего пользователя,
то следует использовать предварительный переход в привилегированный режим.
Если передано имя несуществующего реквизита, то вызывается исключение "Поле объекта не существует".
Результат = ОбщегоНазначения.ЗначенияРеквизитовОбъектов(Ссылки, Реквизиты, ВыбратьРазрешенные, КодЯзыка);
Выполняет попытку проведения документов. Возвращает массив структур с ключом Ссылка и значением ОписаниеОшибки.
ДанныеОНепроведенныхДокументах = ОбщегоНазначения.ПровестиДокументы(МассивСсылок);
ДанныеОНепроведенныхДокументах = ОбщегоНазначенияВызовСервера.ПровестиДокументы(МассивСсылок);
Возвращает признак того, что для пользователя установлен язык интерфейса соответствующий основному языку информационной базы.
Результат = ОбщегоНазначения.ЭтоОсновнойЯзык();
Проверяет статус проведения переданных документов и возвращает те из них, которые не проведены.
// Сервер
НепроведенныеДокументы = ОбщегоНазначения.ПроверитьПроведенностьДокументов(СписокДокументов);
// Клиент
НепроведенныеДокументы = ОбщегоНазначенияВызовСервера.ПроверитьПроведенностьДокументов(СписокДокументов);
Проверяет наличие ссылок на объект в базе данных. При вызове в неразделенном сеансе не выявляет ссылок в разделенных областях.
// Сервер
СсылкиОбнаружены = ОбщегоНазначения.ЕстьСсылкиНаОбъект(СсылкаНаОбъект);
// Клиент
СсылкиОбнаружены = ОбщегоНазначенияВызовСервера.ЕстьСсылкиНаОбъект(СсылкаНаОбъект);
Получает все места использования ссылок.
Если какая-либо ссылка нигде не используется, то строк для нее в результирующей таблице не будет.
При вызове в неразделенном сеансе не выявляет ссылок в разделенных областях.
ТаблицаПоиска = ОбщегоНазначения.МестаИспользования(НаборСсылок);
Формирует и выводит сообщение, которое может быть связано с элементом управления формы.
Ограничение на использование метода Сообщить
Стандарты формирования сообщений
Предусмотрено две одноименных функции: ОбщегоНазначения.СообщитьПользователю для вызова с сервера ОбщегоНазначенияКлиент.СообщитьПользователю для вызова с клиента
// 1. Для вывода сообщения у поля управляемой формы, связанного с реквизитом объекта:
// ОбщегоНазначения.СообщитьПользователю(
// НСтр("ru = 'Сообщение об ошибке.'"), ,
// "ПолеВРеквизитеФормыОбъект",
// "Объект");
//
// Альтернативный вариант использования в форме объекта:
// ОбщегоНазначения.СообщитьПользователю(
// НСтр("ru = 'Сообщение об ошибке.'"), ,
// "Объект.ПолеВРеквизитеФормыОбъект");
//
// 2. Для вывода сообщения рядом с полем управляемой формы, связанным с реквизитом формы:
// ОбщегоНазначения.СообщитьПользователю(
// НСтр("ru = 'Сообщение об ошибке.'"), ,
// "ИмяРеквизитаФормы");
//
// 3. Для вывода сообщения связанного с объектом информационной базы:
// ОбщегоНазначения.СообщитьПользователю(
// НСтр("ru = 'Сообщение об ошибке.'"), ОбъектИнформационнойБазы, "Ответственный",,Отказ);
//
// 4. Для вывода сообщения по ссылке на объект информационной базы:
// ОбщегоНазначения.СообщитьПользователю(
// НСтр("ru = 'Сообщение об ошибке.'"), Ссылка, , , Отказ);
Случаи некорректного использования: 1. Передача одновременно параметров КлючДанных и ПутьКДанным. 2. Передача в параметре КлючДанных значения типа отличного от допустимого. 3. Установка ссылки без установки поля (и/или пути к данным).
Формирует путь к заданной строке НомерСтроки и колонке ИмяРеквизита табличной части ИмяТабличнойЧасти для выдачи сообщений в форме.
Для совместного использования с процедурой СообщитьПользователю (для передачи в параметры Поле или ПутьКДанным).
Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = Текст;
Сообщение.Поле = ОбщегоНазначенияКлиентСервер.ПутьКТабличнойЧасти("Товары", ТекущаяСтрокаТовары.НомерСтроки, "ВидЦены");
Сообщение.Сообщить();
// Сообщение.Поле = "Товары[3].ВидЦены"
Добавляет в список ошибок новую ошибку пользователя для дальнейшей отправки с помощью процедуры СообщитьОшибкиПользователю().
Предназначена для накопления списка ошибок с последующей обработкой этого списка, перед тем как вывести пользователю. Полученный список ошибок можно, например, отсортировать по важности, очистить от дублей, а также вывести пользователю в ином виде, чем выводит метод СообщитьПользователю, например в табличный документ.
ТекстОшибки = "Редактируемое значение";
ОбщегоНазначенияКлиентСервер.ДобавитьОшибкуПользователю(Ошибки,
"Объект.НаименованиеДляПечати",
ТекстОшибки, "");
ОбщегоНазначенияКлиентСервер.СообщитьОшибкиПользователю(Ошибки, Отказ);
Формирует текст ошибок заполнения полей и списков.
Результат = ОбщегоНазначенияКлиентСервер.ТекстОшибкиЗаполнения(ВидПоля, ВидСообщения, ИмяПоля, НомерСтроки, ИмяСписка, ТекстСообщения);
Текст = ОбщегоНазначенияКлиентСервер.ТекстОшибкиЗаполнения("Поле", "Заполнение", "Номенклатура");
// Текст = "Поле Номенклатура не заполнено"
Текст = ОбщегоНазначенияКлиентСервер.ТекстОшибкиЗаполнения("Колонка", "Корректность", "Товары");
// Текст = "Некорректно заполнена колонка Артикул в строке 10 списка "Товары".
Выводит накопленные методом ДобавитьОшибкуПользователю ошибки, при этом использует нужные шаблоны текстов ошибок в зависимости от количества однотипных ошибок. Не подходит для отправки сообщений из фонового заданий длительной операции.
ОбщегоНазначенияКлиентСервер.СообщитьОшибкиПользователю(Ошибки, Отказ);
Открыть стандартную форму ожидания завершения длительной операции или использовать собственную форму и подключить обработчик оповещения о завершении и прогрессе выполнения процедуры длительной операции.
Если приложение запущено в режиме отладки (параметр /C РежимОтладки), форма прогресса не отобразится.
Применяется совместно с функцией ДлительныеОперации.ВыполнитьВФоне для повышения отзывчивости пользовательского интерфейса, заменяя длительный серверный вызов на запуск фонового задания.
Оповещение = Новый ОписаниеОповещения("ПослеОбновленияКомпонентСПортала", ЭтотОбъект);
ДлительныеОперацииКлиент.ОжидатьЗавершение(ДлительнаяОперация, Оповещение, ПараметрыОжидания);
Возвращает инициализированную структуру для параметра ПараметрыОжидания процедуры ДлительныеОперацииКлиент.ОжидатьЗавершение.
&НаКлиенте
Процедура УдалитьДубли()
ФоновоеЗадание = УдалитьДублиСервер();
НастройкиОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект);
НастройкиОжидания.ВыводитьОкноОжидания = Истина;
Обработчик = Новый ОписаниеОповещения("ПослеУдаленияДублей", ЭтотОбъект);
ДлительныеОперацииКлиент.ОжидатьЗавершение(ФоновоеЗадание, Обработчик, НастройкиОжидания);
КонецПроцедуры
Вместо этой функции рекомендуется использовать функции ВыполнитьФункцию и ВыполнитьПроцедуру.
ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор);
ДлительнаяОперация = ДлительныеОперации.ВыполнитьВФоне("Обработка.МояОбработка.ВыполнитьДействие",
ПараметрыПроцедуры, ПараметрыВыполнения);
Возвращает новую структуру для параметра ПараметрыВыполнения функции ВыполнитьВФоне.
Если ЗапуститьВФоне = Ложь и ЗапуститьНеВФоне = Ложь, то задание будет выполнено в фоне по возможности.
Запуск выполняется сразу в основном потоке при выполнении любого из следующих условий:
- если вызов выполняется в файловой базе во внешнем соединении (в этом режиме фоновые задания не поддерживаются);
- если приложение запущено в режиме отладки (параметр /C РежимОтладки) - для упрощения отладки конфигурации;
- если в файловой ИБ имеются активные фоновые задания - для снижения времени ожидания пользователя;
- если выполняется функция модуля внешней обработки или внешнего отчета, но есть способ обхода
ПараметрыПроцедуры = Новый Структура("ДополнительнаяОбработкаСсылка, ИдентификаторКоманды, ОбъектыНазначения");
ПараметрыПроцедуры.ДополнительнаяОбработкаСсылка = ВыполняемаяКоманда.Ссылка;
ПараметрыПроцедуры.ИдентификаторКоманды = ВыполняемаяКоманда.Идентификатор;
ПараметрыПроцедуры.ОбъектыНазначения = ВыполняемаяКоманда.ОбъектыНазначения;
НастройкиЗапуска = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор);
НастройкиЗапуска.НаименованиеФоновогоЗадания = "Дополнительные отчеты и обработки: Выполнение серверного метода обработки");
ДлительнаяОперация = ДлительныеОперации.ВыполнитьВФоне(ИмяПроцедуры, ПараметрыПроцедуры, НастройкиЗапуска);
Запустить выполнение функции в фоновом задании, если это возможно.
Вызываемая функция может быть с произвольным числом параметров, но не более 7.
Значения передаваемых параметров функции, а также возвращаемое значение должны быть сериализуемыми.
Параметры функции не должны быть возвращаемыми.
Не следует использовать эту функцию, если необходимо безусловно запускать фоновое задание.
Рекомендуется применять совместно с функцией ДлительныеОперацииКлиент.ОжидатьЗавершение, если невозможно, тогда для проверки завершения операции использовать функцию ЗаданиеВыполнено.
В общем виде процесс запуска и обработки результата длительной операции в модуле формы выглядит следующим образом:
// 1) Функция, которая будет исполняться в фоне, располагается в модуле менеджера объекта или в серверном общем модуле:
Функция РассчитатьЗначение(Знач МойПараметр1, Знач МойПараметр2) Экспорт
...
Возврат Результат;
КонецФункции
// 2) Запуск операции на сервере и подключение обработчика ожидания:
&НаКлиенте
Процедура РассчитатьЗначение()
ДлительнаяОперация = НачатьВыполнениеНаСервере();
ОповещениеОЗавершении = Новый ОписаниеОповещения("ОбработатьРезультат", ЭтотОбъект);
ПараметрыОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект);
ДлительныеОперацииКлиент.ОжидатьЗавершение(ДлительнаяОперация, ОповещениеОЗавершении, ПараметрыОжидания);
КонецПроцедуры
&НаСервере
Функция НачатьВыполнениеНаСервере()
ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияФункции(УникальныйИдентификатор);
Возврат ДлительныеОперации.ВыполнитьФункцию(ПараметрыВыполнения, "Обработка.МояОбработка.РассчитатьЗначение",
МойПараметр1, МойПараметр2);
КонецФункции
// 3) Обработка результата длительной операции:
&НаКлиенте
Процедура ОбработатьРезультат(Результат, ДополнительныеПараметры) Экспорт
Если Результат = Неопределено Тогда
Возврат;
КонецЕсли;
ВывестиРезультат(Результат.АдресРезультата);
КонецПроцедуры
ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор);
ПараметрыВыполнения.НаименованиеФоновогоЗадания = "Формирование идентификатора оплаты.";
РезультатВыполнения = ДлительныеОперации.ВыполнитьФункцию(
ПараметрыВыполнения,
"ИнтеграцияСПлатежнымиСистемами.ИдентификаторОплаты",
ОснованиеПлатежа,
ТорговаяТочка);
Отменяет выполнение фонового задания по переданному идентификатору. При этом если в длительной операции открывались транзакции, то будет произведен откат последней открытой транзакции.
Таким образом, если длительная операция выполняет обработку (запись) данных, то для полной отмены всей операции следует выполнять запись в одной транзакции (в таком случае, будет отменена вся транзакция целиком). Если же достаточно, чтобы длительная операция была не отменена целиком, а прервана на достигнутом этапе, то, напротив, открывать одну длинную транзакцию не требуется.
Если ЗначениеЗаполнено(ФоновоеЗаданиеИдентификатор) Тогда
ДлительныеОперации.ОтменитьВыполнениеЗадания(ФоновоеЗаданиеИдентификатор);
ФоновоеЗаданиеИдентификатор = Неопределено;
КонецЕсли;
Конструктор коллекции ПараметрыВыполненияФункции для функции ВыполнитьФункцию.
ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияФункции(Новый УникальныйИдентификатор);
ПараметрыВыполнения.ЗапуститьВФоне = Истина;
ДлительнаяОперация = ДлительныеОперации.ВыполнитьФункцию(ПараметрыВыполнения, "УправлениеПечатью.НапечататьВФайл",
Результат, СписокОбъектов, УправлениеПечатью.НастройкиСохранения());
Устарела. Следует использовать ОжидатьЗавершение с параметром ПараметрыОжидания.ВыводитьОкноОжидания = Истина. Заполняет структуру параметров значениями по умолчанию.
ДлительныеОперацииКлиент.ИнициализироватьПараметрыОбработчикаОжидания(ПараметрыОбработчикаОжидания);
Запустить выполнение процедуры в фоновом задании, если это возможно.
Асинхронное выполнение длительных операций
Вызываемая процедура может быть с произвольным числом параметров, но не более 7.
Значения передаваемых параметров процедуры, а также возвращаемое значение должны быть сериализуемыми.
Параметры процедуры не должны быть возвращаемыми.
Не следует использовать эту функцию, если необходимо безусловно запускать фоновое задание.
Рекомендуется применять совместно с функцией ДлительныеОперацииКлиент.ОжидатьЗавершение,
если невозможно, тогда для проверки завершения операции использовать функцию ЗаданиеВыполнено.
&НаСервереБезКонтекста
Функция УстановитьСтатусЗагруженВФоне(Организация, Идентификатор, ДокументСсылка)
НаименованиеЗадания = НСтр("ru = 'Установка статуса ""Загружен"" для документа 1С:Бизнес-сеть';
|en = 'Set the ""Imported"" status for 1C:Business Network document'",
ОбщегоНазначения.КодОсновногоЯзыка());
ИмяМетода = "БизнесСеть.УстановитьСтатусЗагружен";
ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияПроцедуры();
ПараметрыВыполнения.НаименованиеФоновогоЗадания = НаименованиеЗадания;
ПараметрыВыполнения.ЗапуститьВФоне = Истина;
Возврат ДлительныеОперации.ВыполнитьПроцедуру(ПараметрыВыполнения, ИмяМетода, Организация, Идентификатор,
ДокументСсылка);
КонецФункции
Регистрирует информацию о ходе выполнения длительной операции.
Не следует использовать для передачи результата работы длительной операции по частям.
Во избежание избыточного потребления памяти и ее утечек при выполнении одной длительной операции
не следует сообщать прогресс более 100 раз.
Если прогресс сообщается менее чем через 3 сек после предыдущего вызова, то последнее сообщение
удаляется и заменяется на новое (если используется система взаимодействия, то отправка нового
сообщения не выполняется, а будет выполнена спустя некоторое время - не быстрее 3 сек).
После отправки прогресса отправляются все сообщения, накопленные в очереди сообщений фонового задания.
Для того чтобы выводить ход выполнения длительной операции для пользователя, следует установить
свойство ВыводитьПрогрессВыполнения в Истина (см. ДлительныеОперацииКлиент.ПараметрыОжидания).
Его также можно получать отдельно при помощи функции ДлительныеОперации.ПрочитатьПрогресс.
НовыйПроцент = Цел(Контекст.ИндексТекущейТаблицы / Контекст.ОчищаемыеТаблицы.Количество() * 100);
Если НовыйПроцент > ПоследнийПроцент Тогда
ДлительныеОперации.СообщитьПрогресс(НовыйПроцент);
ПоследнийПроцент = НовыйПроцент;
КонецЕсли;
Проверяет состояние фонового задания по переданному идентификатору. При аварийном завершении задания вызывает исключение с текстом ошибки, возникшем в нем, и уточнением вида "См. также журнал регистрации".
ЗаданиеВыполнено = ДлительныеОперации.ЗаданиеВыполнено(ИдентификаторЗадания);
Возвращает результат оповещения, указанного в параметре ОповещениеОЗавершении процедуры ДлительныеОперацииКлиент.ОжидатьЗавершение.
Результат = ДлительныеОперацииКлиент.НовыйРезультатДлительнойОперации();
Устарела. Следует использовать ВыполнитьВФоне.
РезультатЗапускаЗадания = ДлительныеОперации.ЗапуститьВыполнениеВФоне(
УникальныйИдентификатор,
"Справочники.ВидыЗапасов.ЗаменитьДублиВидовЗапасов",
ПараметрыЗадания,
Устарела. Следует использовать ОжидатьЗавершение с параметром ПараметрыОжидания.ВыводитьОкноОжидания = Истина. Заполняет структуру параметров новыми расчетными значениями.
ДлительныеОперацииКлиент.ОбновитьПараметрыОбработчикаОжидания(ПараметрыОбработчикаОжидания);
Устарела. Следует использовать ОжидатьЗавершение с параметром ПараметрыОжидания.ВыводитьОкноОжидания = Истина. Закрывает форму-индикатор длительной операции.
ДлительныеОперацииКлиент.ЗакрытьФормуДлительнойОперации(ФормаДлительнойОперации);
Устарела. Следует использовать ОжидатьЗавершение с параметром ПараметрыОжидания.ВыводитьОкноОжидания = Истина. Открывает форму-индикатор длительной операции.
ФормаДлительнойОперации = ДлительныеОперацииКлиент.ОткрытьФормуДлительнойОперации(
ЭтотОбъект, ФоновоеЗадание.ИдентификаторЗадания);
Конструктор коллекции ПараметрыВыполненияПроцедуры для функции ВыполнитьПроцедуру.
Если ЗапуститьВФоне = Ложь и ЗапуститьНеВФоне = Ложь, то задание будет выполнено в фоне по возможности.
Запуск выполняется сразу в основном потоке при выполнении любого из следующих условий:
- если вызов выполняется в файловой базе во внешнем соединении (в этом режиме фоновые задания не поддерживаются);
- если приложение запущено в режиме отладки (параметр /C РежимОтладки) - для упрощения отладки конфигурации;
- если в файловой ИБ имеются активные фоновые задания - для снижения времени ожидания пользователя;
- если выполняется функция модуля внешней обработки или внешнего отчета.
НаименованиеЗадания = "Установка статуса ""Загружен"" для документа 1С:Бизнес-сеть";
ИмяМетода = "БизнесСеть.УстановитьСтатусЗагружен";
ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияПроцедуры();
ПараметрыВыполнения.НаименованиеФоновогоЗадания = НаименованиеЗадания;
ПараметрыВыполнения.ЗапуститьВФоне = Истина;
ДлительнаяОперация = ДлительныеОперации.ВыполнитьПроцедуру(ПараметрыВыполнения, ИмяМетода, Организация, Идентификатор, ДокументСсылка);
Параметры: ИдентификаторЗадания - УникальныйИдентификатор Задание - ФоновоеЗадание - возвращаемое значение - найденное фоновое задание. - Неопределено - если фоновое задание не найдено. Возвращаемое значение: см. НовыйРезультатВыполненияОперации
ДлительнаяОперация = ДлительныеОперации.ОперацияВыполнена(ИдентификаторЗадания);
Считывает информацию о ходе выполнения длительной операции, записанную процедурой ДлительныеОперации.СообщитьПрогресс.
Рекомендуется получать прогресс через обработчик оповещения, который подключается с помощью ДлительныеОперацииКлиент.ОжидатьЗавершение.
Прогресс = ДлительныеОперации.ПрочитатьПрогресс(ИдентификаторЗаданияФормированиеБюджетов);
Если Прогресс <> Неопределено Тогда
ФоновоеЗаданиеПроцент = Прогресс.Процент;
КонецЕсли;
Возвращает пустую структуру для передачи как результат оповещения, указанного в свойстве ОповещениеОПрогрессеВыполнения параметра ПараметрыОжидания процедуры ДлительныеОперацииКлиент.ОжидатьЗавершение.
Запустить выполнение функции в многопоточном фоновом задании, если это возможно.
Вызываемая процедура может быть с произвольным числом параметров, но не более 7.
Значения передаваемых параметров процедуры, а также возвращаемое значение должны быть сериализуемыми.
Параметры процедуры не должны быть возвращаемыми.
Многопоточные длительные операции в неразделенном сеансе не поддерживаются.
Не следует использовать эту функцию, если необходимо безусловно запускать фоновое задание.
Рекомендуется применять совместно с функцией ДлительныеОперацииКлиент.ОжидатьЗавершение,
если невозможно, тогда для проверки завершения операции использовать функцию ЗаданиеВыполнено.
ПараметрыВыполнения = МодульДлительныеОперации.ПараметрыВыполненияВФоне(ИдентификаторФормы);
ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Групповое изменение реквизитов';
|en = 'Bulk attribute edit'");
ПараметрыВыполнения.ВнешнийОтчетОбработка = Параметры.ВнешнийОтчетОбработка;
НастройкиИзменения = НастройкиИзменения(Параметры, ВыполнятьКодАлгоритмаВБезопасномРежиме);
Для ИндексПорции = 0 По ВерхняяГраницаПорций Цикл
МассивПараметров = Новый Массив;
МассивПараметров.Добавить(МассивПорций[ИндексПорции]);
МассивПараметров.Добавить(РезультатИзменения);
МассивПараметров.Добавить(НастройкиИзменения);
ПараметрыМетода.Вставить(ИндексПорции, МассивПараметров);
КонецЦикла;
ИмяФункции = "ВнешняяОбработка.ГрупповоеИзменениеРеквизитов.МодульОбъекта.РезультатИзмененияПорцииОбъектов";
РезультатВыполнения = МодульДлительныеОперации.ВыполнитьФункциюВНесколькоПотоков(ИмяФункции,
ПараметрыВыполнения, ПараметрыМетода);
Получает сообщения пользователю, отфильтровывает служебные сообщения о состоянии длительной операции.
Операция = ДлительныеОперации.ВыполнитьВФоне(...);
...
Сообщения = ДлительныеОперации.СообщенияПользователю(Истина, Операция.ИдентификаторЗадания);
Запускает выполнение процедуры в многопоточном фоновом задании, если это возможно.
Вызываемая процедура может быть с произвольным числом параметров, но не более 7.
Значения передаваемых параметров процедуры, а также возвращаемое значение должны быть сериализуемыми.
Параметры процедуры не должны быть возвращаемыми.
Многопоточные длительные операции в неразделенном сеансе не поддерживаются.
Не следует использовать эту функцию, если необходимо безусловно запускать фоновое задание. Рекомендуется применять совместно с функцией ДлительныеОперацииКлиент.ОжидатьЗавершение, если невозможно, тогда для проверки завершения операции использовать функцию ЗаданиеВыполнено.
ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор);
ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Загрузка адресного классификатора с сайта';
|en = 'Import address classifier from site'");
ПараметрыЗагрузки = АдресныйКлассификаторСлужебный.ПараметрыЗагрузкиКлассификатораАдресов();
ПараметрыЗагрузки.ЗагружатьИсториюАдресов = ЗагружатьИсторию;
ПараметрыЗагрузки.КаталогФайлов = ВременныйКаталог;
ПараметрыМетода = Новый Соответствие();
Для Каждого КодРегиона Из КодыРегионов Цикл
ПараметрыВызоваСервера = Новый Массив;
ПараметрыВызоваСервера.Добавить(КодРегиона);
ПараметрыВызоваСервера.Добавить(ПараметрыЗагрузки);
ПараметрыМетода.Вставить(КодРегиона.Представление, ПараметрыВызоваСервера);
КонецЦикла;
ФоновоеЗадание = ДлительныеОперации.ВыполнитьПроцедуруВНесколькоПотоков("АдресныйКлассификаторСлужебный.ЗагрузкаРегионаАдресногоКлассификатораССайта",
ПараметрыВыполнения, ПараметрыМетода);
Возвращаемое значение: Структура: * Статус - Строка - "Выполняется", если задание еще не завершилось; "Выполнено", если задание было успешно выполнено; "Ошибка", если задание завершено с ошибкой; "Отменено", если задание отменено пользователем или администратором. * ИнформацияОбОшибке - ИнформацияОб
ДлительнаяОперация = ДлительныеОперации.НовыйРезультатВыполненияОперации();
Продолжение процедуры ЗапуститьФоновоеЗаданиеСКонтекстомКлиента.
Возврат "ДлительныеОперации.ВыполнитьСКонтекстомКлиента";
Параметры: Результаты - см. ОбщегоНазначенияПереопределяемый.ПриПериодическомПолученииДанныхКлиентаНаСервере.Результаты ОбсужденияАктивны - Булево - для доставки сообщений используется Система взаимодействия. Интервал - Число - уточняемое значение - число секунд до следующей проверки.
ДлительныеОперацииКлиент.ПослеПериодическогоПолученияДанныхКлиентаНаСервере(
ДополнительныеРезультаты, ОбсужденияАктивны, Интервал);
Возвращает допустимое количество потоков на все многопоточные длительные операции с учетом управляющих потоков.
КоличествоПотоковДлительныхОпераций = ДлительныеОперации.ДопустимоеКоличествоПотоков();
Параметры: Данные - см. СерверныеОповещения.НовыеДанныеСообщения Возвращаемое значение: Булево
Если ДлительныеОперации.ПропуститьОповещение(СодержимоеОповещения) Тогда
Возвращаемое значение: Строка
ИмяПроцедуры = ДлительныеОперации.ПолноеИмяПрикладнойПроцедурыДлительнойОперации();
Возвращает Истина, если текущий сеанс является сеансом фонового задания длительной операции или имя метода фонового задания не указано ни в одном из регламентных заданий.
Если ДлительныеОперации.ПропуститьОбработчикПередЗапускомПрограммы() Тогда
Только для процедуры ПриПериодическомПолученииДанныхКлиентаНаСервере.
Устанавливает свойство ИмяСвойства элемента формы с именем ИмяЭлемента в значение Значение.
Применяется в тех случаях, когда элемента формы может не быть на форме из-за отсутствия прав у пользователя на объект, реквизит объекта или команду.
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(
Элементы,
"ВыбратьФайлОтвета",
"Видимость",
Истина);
Получает значение реквизита формы по пути к нему
ПутьКРеквизиту = "Объект.СтатусДокумента";
Значение = ОбщегоНазначенияКлиентСервер.ПолучитьРеквизитФормыПоПути(Форма, ПутьКРеквизиту);
Устанавливает реквизит формы по пути.
Позволяет не устанавливать значение реквизита, если у него уже установлено какое-то значение.
ПутьКЗначению = "МаксимальноеЗначение" + НомерПоказателя;
ОбщегоНазначенияКлиентСервер.УстановитьРеквизитФормыПоПути(ДокументОбъект, ПутьКЗначению, НовоеЗначение);
Задает вопрос о продолжении действия, которое приведет к потере изменений:
"Данные были изменены. Сохранить изменения?"
Для использования в обработчиках события ПередЗакрытием модулей форм объектов, которые возможно записать в информационную базу.
Отображение вопроса зависит свойства модифицированности формы.
&НаКлиенте
Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка)
Оповещение = Новый ОписаниеОповещения("ЗаписатьИЗакрытьНаКлиенте", ЭтотОбъект);
ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ, ЗавершениеРаботы, ТекстПредупреждения);
КонецПроцедуры
Получает картинку для вывода на странице с комментарием в зависимости от наличия текста в комментарии.
Элементы.СтраницаКомментарий.Картинка = ОбщегоНазначенияКлиентСервер.КартинкаКомментария(Объект.Комментарий);
// Объект.Комментарий не пустой, поэтому возвращает картинку БиблиотекаКартинок.Комментарий
Обновляет интерфейс программы сохраняя текущее активное окно.
ОбщегоНазначенияКлиент.ОбновитьИнтерфейсПрограммы();
Оповещает открытые формы и динамические списки об изменении одного объекта.
ОбщегоНазначенияКлиент.ОповеститьОбИзмененииОбъекта(Объект.Ссылка);
Возвращает значение свойства ИмяСвойства элемента формы с именем ИмяЭлемента.
Применяется в тех случаях, когда элемент формы может не быть на форме из-за отсутствия прав у пользователя на объект, реквизит объекта или команду.
УдержаниеВидимость = ОбщегоНазначенияКлиентСервер.ЗначениеСвойстваЭлементаФормы(Форма.Элементы, "Удержание", "Видимость");
Задает вопрос о продолжении действия, которое приведет к закрытию формы.
Для использования в обработчиках события ПередЗакрытием модулей форм.
См. также процедуру ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы.
ТекстПредупреждения = НСтр("ru = 'Закрыть помощник?'");
ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияПроизвольнойФормы(
ЭтотОбъект, Отказ, ЗавершениеРаботы, ТекстПредупреждения, "ЗакрытьФормуБезПодтверждения");
Выполняет поиск элемента отбора в коллекции по заданному представлению.
ГруппаОтборПоРазделам = ОбщегоНазначенияКлиентСервер.НайтиЭлементОтбораПоПредставлению(Список.Отбор.Элементы, "ОтборПоРазделам");
Устарела. Следует использовать ФайловаяСистемаКлиент.ПодключитьРасширениеДляРаботы1СПредприятия Предлагает пользователю установить расширение для работы с 1С:Предприятием в веб-клиенте. Предназначена для использования в начале участков кода, в которых ведется работа с файлами.
ОбщегоНазначенияКлиент.ПоказатьВопросОбУстановкеРасширенияРаботыСФайлами(Оповещение);
Оповещает открытые формы и динамические списки об изменении сразу нескольких объектов.
ОбщегоНазначенияКлиент.ОповеститьОбИзмененииОбъектов(ИзмененныеДокументы);
Возвращает тип платформы клиента.
Возврат ОбщегоНазначенияКлиент.ТипПлатформыКлиента() = ТипПлатформы.Windows_x86
Устарела. Следует использовать ФайловаяСистемаКлиент.ПодключитьРасширениеДляРаботы1СПредприятия Предлагает пользователю подключить расширение для работы с 1С:Предприятием в веб-клиенте, и в случае отказа выдает предупреждение о невозможности продолжения операции.
ОбщегоНазначенияКлиент.ПроверитьРасширениеРаботыСФайламиПодключено(Оповещение, ТекстСообщения);
Открывает форму выбора формата вложений.
ОбщегоНазначенияКлиент.ПоказатьВыборФорматаВложений(ОписаниеОповещения, ВыбранныеНастройкиФормата(), ЭтотОбъект);
Устарела. Следует использовать ФайловаяСистемаКлиент.ОткрытьФайл Открывает файл в программе просмотра, ассоциированной с расширением файла в операционной системе. Блокирует возможность открытия файлов, расширение которых относятся к исполняемым файлам.
ОбщегоНазначенияКлиент.ОткрытьФайлВПрограммеПросмотра("" + ПутьКФайлу + "", Оповещение);
Проверяет, возможно ли выполнить резервное копирование в пользовательском режиме.
И ОбщегоНазначенияКлиент.ПредлагатьСоздаватьРезервныеКопии();
Проверяет, что в параметре команды Параметр передан объект ожидаемого типа ОжидаемыйТип. В противном случае, выдает стандартное сообщение и возвращает Ложь. Такая ситуация возможна, например, если в списке выделена строка группировки.
Добавить или заменить существующий элемент отбора динамического списка.
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(ДинамическийСписок, ИмяПоля, ПравоеЗначение, ВидСравнения, Представление, Использование, РежимОтображения, ИдентификаторПользовательскойНастройки)
Установить или обновить значение параметра ИмяПараметра динамического списка Список.
ОбщегоНазначенияКлиентСервер.УстановитьПараметрДинамическогоСписка(Список, "Номенклатура", Параметры.Номенклатура, Истина);
Добавить элемент компоновки в контейнер элементов компоновки.
ОбщегоНазначенияКлиентСервер.ДобавитьЭлементКомпоновки(
ГруппаЭлементов,
"ДатаРегистрации",
ВидСравненияКомпоновкиДанных.БольшеИлиРавно,
Форма.ОтборПериод.ДатаНачала);
Добавить или заменить существующий элемент отбора. В отличие от УстановитьЭлементОтбораДинамическогоСписка в параметры передается не ДинамическийСписок, а ОтборКомпоновкиДанных или ГруппаЭлементовОтбораКомпоновкиДанных.
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора(ОбластьПоискаДобавления, ИмяПоля, ПравоеЗначение, ВидСравнения, Представление, Использование, РежимОтображения, ИдентификаторПользовательскойНастройки)
Установить текст запроса, основную таблицу или динамическое считывание в динамическом списке.
Устанавливать эти свойства следует за один вызов этой процедуры, чтобы не снижалась производительность.
СвойстваСписка = ОбщегоНазначения.СтруктураСвойствДинамическогоСписка();
СвойстваСписка.ТекстЗапроса = "ВЫБРАТЬ Ссылка, Код Из Справочник.Номенклатура";
ОбщегоНазначения.УстановитьСвойстваДинамическогоСписка(Элементы.Список, СвойстваСписка);
Добавить группу отбора в ОтборКомпоновкиДанных или в ГруппаЭлементовОтбораКомпоновкиДанных
ГруппаИли = ОбщегоНазначенияКлиентСервер.СоздатьГруппуЭлементовОтбора(
Список.КомпоновщикНастроек.ФиксированныеНастройки.Отбор.Элементы, "ДатаОкончанияДействия",
ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли);
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора(
ГруппаИли,
"ДатаОкончанияДействия",
ТекущаяДатаСеанса(),
ВидСравненияКомпоновкиДанных.Больше);
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора(
ГруппаИли,
"ДатаОкончанияДействия",
Дата(1, 1, 1),
ВидСравненияКомпоновкиДанных.Равно);
Создает структуру для второго параметра СвойстваСписка процедуры УстановитьСвойстваДинамическогоСписка.
СвойстваСписка = ОбщегоНазначения.СтруктураСвойствДинамическогоСписка();
СвойстваСписка.ТекстЗапроса = ТекстЗапроса;
СвойстваСписка.ОсновнаяТаблица = "Справочник.ВидыНоменклатуры";
СвойстваСписка.ДинамическоеСчитываниеДанных = Истина;
ОбщегоНазначения.УстановитьСвойстваДинамическогоСписка(Элементы.Список, СвойстваСписка);
Удалить элемент группы отбора динамического списка.
ОбщегоНазначенияКлиентСервер.УдалитьЭлементыГруппыОтбораДинамическогоСписка(Список, "Владелец");
Найти элемент или группу отбора по заданному имени поля или представлению. В качестве области поиска передается ОтборКомпоновкиДанных или ГруппаЭлементовОтбораКомпоновкиДанных.
ЭлементыОтбора = ОбщегоНазначенияКлиентСервер.НайтиЭлементыИГруппыОтбора(
ОбщегоНазначенияУТКлиентСервер.ПолучитьОтборДинамическогоСписка(Список), "Владелец");
Удалить элементы отбора с заданным именем поля или представлением. В качестве параметра передается Отбор или ГруппаЭлементовОтбораКомпоновкиДанных
ОбщегоНазначенияКлиентСервер.УдалитьЭлементыГруппыОтбора(ГруппаОтбора, "ВАрхиве");
Изменить элемент отбора с заданным именем поля или представлением.
ОбщегоНазначенияКлиентСервер.ИзменитьЭлементыОтбора(Список.Отбор, "Идентификатор",,,,ИспользуетсяОтбор);
Возвращает признак работы в режиме разделения данных по областям (технически это признак условного разделения).
Возвращает Ложь, если конфигурация не может работать в режиме разделения данных (не содержит общих реквизитов, предназначенных для разделения данных).
РазделениеВключено = ОбщегоНазначения.РазделениеВключено();
Возвращает признак возможности обращения к разделенным данным (которые входят в состав разделителей).
Признак относится к сеансу, но может меняться во время работы сеанса, если разделение было включено в самом сеансе, поэтому проверку следует делать непосредственно перед обращением к разделенным данным.
Возвращает Истина, если конфигурация не может работать в режиме разделения данных (не содержит общих реквизитов, предназначенных для разделения данных).
ДоступноИспользованиеРазделенныхДанных = ОбщегоНазначения.ДоступноИспользованиеРазделенныхДанных();
Определяет режим эксплуатации информационной базы файловый (Истина) или серверный (Ложь).
При проверке используется СтрокаСоединенияИнформационнойБазы, которую можно указать явно.
// Сервер
ИБФайловая = ОбщегоНазначения.ИнформационнаяБазаФайловая();
//Клиент
ИБФайловая = ОбщегоНазначенияКлиент.ИнформационнаяБазаФайловая();
Возвращает Истина, если клиентское приложение является мобильным клиентом.
Результат = ОбщегоНазначения.ЭтоМобильныйКлиент();
Возвращает истина, если включен режим отладки - режим, в котором отключено выполнение в фоне, и фоновые задания выполняются последовательно в рамках одного сеанса.
// Сервер
Результат = ОбщегоНазначения.РежимОтладки();
// Клиент
Результат = ОбщегоНазначенияКлиент.РежимОтладки();
Возвращает Истина, если клиентское приложение является Веб-клиентом.
Результат = ОбщегоНазначения.ЭтоВебКлиент();
Определяет, что эта информационная база является подчиненным узлом распределенной информационной базы (РИБ).
ЭтоПодчиненныйУзелРИБ = ОбщегоНазначения.ЭтоПодчиненныйУзелРИБ();
Возвращает Истина, если эта информационная база подключена к 1С:Fresh.
Результат = ОбщегоНазначения.ЭтоАвтономноеРабочееМесто();
Возвращает Истина, если клиентское приложение запущено под управлением ОС Windows.
// Сервер
Результат = ОбщегоНазначения.ЭтоWindowsКлиент();
// Клиент
Результат = ОбщегоНазначенияКлиент.ЭтоWindowsКлиент();
Возвращает Истина, если клиентское приложение запущено под управлением ОС Linux.
// Сервер
Результат = ОбщегоНазначения.ЭтоLinuxКлиент();
// Клиент
Результат = ОбщегоНазначенияКлиент.ЭтоLinuxКлиент();
Возвращает Истина, если клиентское приложение запущено под управлением macOS.
// Сервер
Результат = ОбщегоНазначения.ЭтоMacOSКлиент();
// Клиент
Результат = ОбщегоНазначенияКлиент.ЭтоMacOSКлиент();
Возвращает Истина, если текущий сеанс выполняется на сервере, работающем под управлением ОС Windows.
Результат = ОбщегоНазначения.ЭтоWindowsСервер();
Возвращает Истина, если клиентское приложение подключено к базе через веб-сервер.
// Сервер
Результат = ОбщегоНазначения.КлиентПодключенЧерезВебСервер();
// Клиент
Результат = ОбщегоНазначенияКлиент.КлиентПодключенЧерезВебСервер();
Возвращает Истина, если текущий сеанс выполняется на сервере, работающем под управлением ОС Linux.
Результат = ОбщегоНазначения.ЭтоLinuxСервер();
Возвращает структуру
Структура:
- ИмяФормыПерсональныхНастроек - Строка - имя формы для редактирования персональных настроек.
- ЗапрашиватьПодтверждениеПриЗавершенииПрограммы - Булево - по умолчанию Истина. Если установить в Ложь, то подтверждение при завершении работы программы не будет запрашиваться, если явно не разрешить в персональных настройках программы.
- МинимальнаяВерсияПлатформы - Строка - минимальная версии платформы, требуемая для запуска программы. Запуск программы на версии платформы ниже указанной будет невозможен. Например, "8.3.6.1650".
- РекомендуемаяВерсияПлатформы - Строка - рекомендуемая версия платформы для запуска программы. Например, "8.3.8.2137".
- ОтключитьИдентификаторыОбъектовМетаданных - Булево - отключает заполнение справочников ИдентификаторыОбъектовМетаданных и ИдентификаторыОбъектовРасширений, процедуру выгрузки и загрузки в узлах РИБ. Для частичного встраивания отдельных функций библиотеки в конфигурации без постановки на поддержку.
- РекомендуемыйОбъемОперативнойПамяти - Число - объем памяти в гигабайтах, рекомендуемый для комфортной работы в программе.
ПараметрыБазовойФункциональности = ОбщегоНазначения.ОбщиеПараметрыБазовойФункциональности();
Раскладывает полное имя файла на составляющие.
ПолноеИмяФайла = "c:\temp\test.txt";
ЧастиИмениФайла = ОбщегоНазначенияКлиентСервер.РазложитьПолноеИмяФайла(ПолноеИмяФайла);
// В результате структура полей будет заполнена следующим образом:
// ПолноеИмя: "c:\temp\test.txt",
// Путь: "c:\temp\",
// Имя: "test.txt",
// Расширение: ".txt",
// ИмяБезРасширения: "test".
Добавляет к переданному пути каталога конечный символ-разделитель, если он отсутствует.
КаталогФайлов = ОбщегоНазначенияКлиентСервер.ДобавитьКонечныйРазделительПути("C:\Temp");
// КаталогФайлов = "C:\Temp\"
Заменяет недопустимые символы в имени файла.
Результат = ОбщегоНазначенияКлиентСервер.ЗаменитьНедопустимыеСимволыВИмениФайла(ИмяФайла, НаЧтоМенять)
Инициализирует структуру параметров для загрузки файла из файловой системы. Для использования в ФайловаяСистемаКлиент.ЗагрузитьФайл и ФайловаяСистемаКлиент.ЗагрузитьФайлы
ПараметрыЗагрузки = ФайловаяСистемаКлиент.ПараметрыЗагрузкиФайла();
Составляет полное имя файла из имени каталога и имени файла.
ИмяАрхива = ОбщегоНазначенияКлиентСервер.ПолучитьПолноеИмяФайла(КаталогСборки, "data.zip");
Удаляет временный файл.
ФайловаяСистема.УдалитьВременныйФайл(ИмяФайлаЗапроса);
Показывает диалог выбора файла и помещает выбранный файл во временное хранилище. Совмещает работу методов глобального контекста НачатьПомещениеФайла и НачатьПомещениеФайлов, возвращая идентичный результат вне зависимости от того, подключено или нет расширение для работы с 1С:Предприятием.
ФайловаяСистемаКлиент.ЗагрузитьФайл(Обработчик, ПараметрыЗагрузки);
Получает файл и сохраняет его в локальную файловую систему пользователя.
ФайловаяСистемаКлиент.СохранитьФайл(Неопределено, Адрес);
Выделяет из имени файла его расширение (набор символов после последней точки).
Результат = ОбщегоНазначенияКлиентСервер.ПолучитьРасширениеИмениФайла("C:\Архив\data.zip");
// Результат = "zip"
Удаляет временный каталог вместе с его содержимым, если возможно. Если временный каталог не может быть удален (например, он занят каким-то процессом), то в журнал регистрации записывается соответствующее предупреждение, а процедура завершается.
ФайловаяСистема.УдалитьВременныйКаталог(ИмяВременногоКаталога);
Преобразует расширение файла в нижний регистр и убирает точку. Имя файла или полный путь файла передавать нельзя
ПутьКФайлу = "c:\Arh\1.zip";
СтруктураПути = ОбщегоНазначенияКлиентСервер.РазложитьПолноеИмяФайла(ПутьКФайлу);
// СтруктураПути.Расширение = ".zip"
РасширениеБезТочки = ОбщегоНазначенияКлиентСервер.РасширениеБезТочки(СтруктураПути.Расширение);
// РасширениеБезТочки = "zip"
Инициализирует структуру параметров для сохранения файла в файловую систему. Для использования в ФайловаяСистемаКлиент.СохранитьФайл.
ПараметрыСохранения = ФайловаяСистемаКлиент.ПараметрыСохраненияФайла();
Возвращает имя файла с расширением.
Если расширение пустое, тогда точка не добавляется.
Имя = ОбщегоНазначенияКлиентСервер.ПолучитьИмяСРасширением(Файл.Наименование, Файл.Расширение);
Предлагает пользователю установить расширение для работы с 1С:Предприятием в веб-клиенте. Предназначена для использования в начале участков кода, в которых ведется работа с файлами.
ФайловаяСистемаКлиент.ПодключитьРасширениеДляРаботы1СПредприятия(Оповещение, ТекстПредложения, Ложь);
Получает файлы и сохраняет их в локальную файловую систему пользователя.
ФайловаяСистемаКлиент.СохранитьФайлы(Оповещение, ПолучаемыеФайлы, ПараметрыСохранения);
Показывает диалог выбора файлов и помещает выбранные файлы во временное хранилище. Совмещает работу методов глобального контекста НачатьПомещениеФайла и НачатьПомещениеФайлов, возвращая идентичный результат вне зависимости от того, подключено или нет расширение для работы с 1С:Предприятием.
ФайловаяСистемаКлиент.ЗагрузитьФайлы(Оповещение, ПараметрыЗагрузки);
Инициализирует структуру параметров для сохранения файла в файловую систему. Для использования в ФайловаяСистемаКлиент.СохранитьФайлы.
ПараметрыСохранения = ФайловаяСистемаКлиент.ПараметрыСохраненияФайлов();
Проверяет наличие недопустимых символов в имени файла.
МассивНайденныхНедопустимыхСимволов = ОбщегоНазначенияКлиентСервер.НайтиНедопустимыеСимволыВИмениФайла(ИмяФайла);
Если МассивНайденныхНедопустимыхСимволов.Количество() <> 0 Тогда
ИмяФайла = ОбщегоНазначенияКлиентСервер.ЗаменитьНедопустимыеСимволыВИмениФайла(ИмяФайла, "");
КонецЕсли;
Возвращает путь к общему сетевому каталогу временных файлов.
Для корректной работы программы в клиент-серверном варианте временные файлы следует размещать в общем сетевом каталоге, одинаково доступном с любого сервера в кластере.
Это обеспечит доступ со всех серверов кластера к временному файлу, например, для его обработки в фоновых заданиях, работающих параллельно
Путь к каталогу определяется в общих настройках администрирования.
Если путь не заполнен или информационная база развернута в файловом варианте, то каталог создается во временном каталоге пользователя.
Следует удалять временные файлы в каталоге самостоятельно после их использования, т.к. при активном создании файлов временные файлы могут занять значительную часть дискового пространства.
КаталогФайлов = ФайловаяСистема.ОбщийКаталогВременныхФайлов("Exchange");
Инициализирует структуру параметров для открытия файла. Для использования в ФайловаяСистемаКлиент.ОткрытьФайл.
ПараметрыОткрытияФайла = ФайловаяСистемаКлиент.ПараметрыОткрытияФайла();
Выполняет печать файла внешним приложением.
ФайловаяСистемаКлиент.НапечататьИзПриложенияПоИмениФайла(ИмяФайлаДляПечати);
Возвращает строку недопустимых символов из имени файла.
Согласно http://en.wikipedia.org/wiki/Filename - в разделе "Reserved characters and words".
СтрИсключения = ОбщегоНазначенияКлиентСервер.ПолучитьНедопустимыеСимволыВИмениФайла();
Раскладывает строку в массив строк, используя "./\" как разделитель.
МассивРеквизитов = ОбщегоНазначенияКлиентСервер.РазложитьСтрокуПоТочкамИСлэшам(ПриведенныйПуть);
Устанавливает представление поля Дата в списках, содержащих реквизит с составом даты Дата и время.
Подробнее см. Стандарт "Поле "Дата" в списках".
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
СтандартныеПодсистемыСервер.УстановитьУсловноеОформлениеПоляДата(ЭтотОбъект);
Вызывает метод ПоказатьИнформациюОбОшибке объекта ОбработкаОшибок. Требуется использовать для возможности автоматического тестирования, чтобы перехватывать ошибки с помощью расширения.
СтандартныеПодсистемыКлиент.ВывестиИнформациюОбОшибке(Результат.ИнформацияОбОшибке);
Показать форму вопроса
СтандартныеПодсистемыКлиент.ПоказатьВопросПользователю(ОписаниеОповещенияОЗавершении, ТекстВопроса, Кнопки, ДополнительныеПараметры)
Возвращает признак того, является ли конфигурация базовой.
Базовые версии конфигураций могут иметь программные ограничения, действие которых можно предусмотреть с помощью этой функции.
Конфигурация считается базовой, если в ее имени есть термин "Базовая", например, "УправлениеТорговлейБазовая".
Если СтандартныеПодсистемыСервер.ЭтоБазоваяВерсияКонфигурации()
ОбщегоНазначенияКлиентСервер.УдалитьЗначениеИзМассива(Обмены, Перечисления.ВидыТранспортаСообщенийОбмена.COM);
КонецЕсли;
Предусмотрено две одноименных функции: СтандартныеПодсистемыСервер.ЭтоБазоваяВерсияКонфигурации для вызова с сервера СтандартныеПодсистемыКлиент.ЭтоБазоваяВерсияКонфигурации для вызова с клиента
Возвращает новую структуру дополнительных параметров для процедуры ПоказатьВопросПользователю.
ПараметрыВопросаПользователю = СтандартныеПодсистемыКлиент.ПараметрыВопросаПользователю();
ПараметрыВопросаПользователю.Заголовок = ТекстЗаголовка;
ПараметрыВопросаПользователю.ПредлагатьБольшеНеЗадаватьЭтотВопрос = Ложь;
ПараметрыВопросаПользователю.Картинка = БиблиотекаКартинок.Информация32;
Кнопки = Новый СписокЗначений;
Кнопки.Добавить("ОК", НСтр("ru = 'ОК';
|en = 'OK'"));
СтандартныеПодсистемыКлиент.ПоказатьВопросПользователю(
Неопределено,
Строка.Подсказка,
Кнопки,
ПараметрыВопросаПользователю);
Возвращает значения параметра для текущей версии расширений. Если не заполнен, возвращает Неопределено.
ХранимыеСвойства = СтандартныеПодсистемыСервер.ПараметрРаботыРасширения(ИмяПараметра, Истина);
Параметры: ВызыватьИсключение - Булево - вызывать исключение, если параметры не инициализированы. Возвращает пустое фиксированное соответствие, если ТекущийРежимЗапуска() = Неопределено. Возвращаемое значение: ФиксированноеСоответствие из КлючИЗначение: * Ключ - Строка - "ПараметрЗапуска", "СтрокаСо
ПараметрЗапускаКлиента = СтандартныеПодсистемыСервер.ПараметрыКлиентаНаСервере().Получить("ПараметрЗапуска");
Устанавливает ключ назначения формы (ключ назначения использования и ключ сохранения положения окна). При необходимости копирует текущие настройки формы, если для соответствующего нового ключа они еще не были записаны.
СтандартныеПодсистемыСервер.УстановитьКлючНазначенияФормы(ЭтотОбъект, "ВыборПодбор");
Возвращает номер версии "Библиотеки стандартных подсистем" (БСП), встроенной в конфигурацию.
Результат = СтандартныеПодсистемыСервер.ВерсияБиблиотеки();
Устанавливает хранилище значения параметра для текущей версии расширений. Используется для заполнения значений параметров. Перед вызовом требуется установить привилегированный режим.
СтандартныеПодсистемыСервер.УстановитьПараметрРаботыРасширения(ИмяПараметра, ХранимыеСвойства, Истина);
Получает уникальный идентификатор информационной базы, с помощью которого можно различать различные экземпляры информационных баз, например, при сборе статистики или в механизмах внешнего управления базами.
Если идентификатор не заполнен, то его значение автоматически устанавливается и возвращается.
Идентификатор хранится в константе ИдентификаторИнформационнойБазы.
Константа ИдентификаторИнформационнойБазы не должна входить в составы планов обмена, чтобы иметь
различные значения в каждой информационной базе (узле РИБ).
Результат = СтандартныеПодсистемыСервер.ИдентификаторИнформационнойБазы()
Устанавливает / отменяет хранение ссылки на управляемую форму в глобальной переменной. Требуется для случаев, когда ссылка на форму передается через ДополнительныеПараметры в объекте ОписаниеОповещения, который не блокирует освобождение закрытой формы.
СтандартныеПодсистемыКлиент.УстановитьХранениеФормы(ЭтотОбъект, Истина);
Возвращает имя профиля безопасности информационной базы, который нужно установить перед выполнением методов Выполнить, Вычислить с сохранением текущего привилегированного режима (если установлен) и с возможностью включения привилегированного режима в коде конфигурации, если потребуется.
ПрофильБезопасностиИБ = СтандартныеПодсистемыСервер.ПрофильБезопасностиДляВыполнитьВычислить();
Возвращает информацию для технической поддержки, содержащая основную, системную и дополнительную информацию.
ФайлЛога.УстановитьТекст(СтандартныеПодсистемыКлиент.ИнформацияДляПоддержки());
Возвращает значение параметра работы программы.
Обновлен = СтандартныеПодсистемыСервер.ПараметрРаботыПрограммы(
"СтандартныеПодсистемы.БазоваяФункциональность.ИдентификаторыОбъектовМетаданных");
Возвращает сохраненные в информационной базы параметры администрирования.
Предназначена для использования в механизмах, требующих для свой работы
ввода параметров администрирования информационной базы и/или кластера серверов.
Например, блокировка установки соединений с информационной базой.
См. так же УстановитьПараметрыАдминистрирования.
Возвращаемое значение:
Структура - содержит свойства двух структур
АдминистрированиеКластераКлиентСервер.ПараметрыАдминистрированияКластера
и АдминистрированиеКластераКлиентСервер.ПараметрыАдминистрированияИнформационнойБазыКластера.
При этом поля, содержащие пароли, возвращаются пустыми. Если параметры администрирования
не были ранее сохранены при помощи функции УстановитьПараметрыАдминистрирования,
то будут возвращены автоматически вычисленные параметры администрирования по умолчанию.
Результат = СтандартныеПодсистемыСервер.ПараметрыАдминистрирования()
Выполняет проверку, что переданный объект имеет тип СправочникОбъект.ИдентификаторыОбъектовМетаданных.
Если СтандартныеПодсистемыСервер.ЭтоИдентификаторОбъектаМетаданных(Источник) Тогда
Возвращает описания форматов сохранения табличного документа.
Возвращаемое значение:
ТаблицаЗначений: * ТипФайлаТабличногоДокумента - ТипФайлаТабличногоДокумента - значение, соответствующее формату; * Ссылка - ПеречислениеСсылка.ФорматыСохраненияОтчетов - ссылка на метаданные, где хранится представление; * Представление - Строка - представление типа файла (заполняется из перечисления); * Расширение - Строка - тип файла для операционной системы; * Картинка - Картинка - картинка формата.
Результат = СтандартныеПодсистемыСервер.НастройкиФорматовСохраненияТабличногоДокумента()
Обновляет значение параметра работы программы, если изменилось. Перед вызовом требуется установить привилегированный режим.
СтандартныеПодсистемыСервер.ОбновитьПараметрРаботыПрограммы(
"СтандартныеПодсистемы.БазоваяФункциональность.ИдентификаторыОбъектовМетаданных", Истина);
Проверяет, что текущие данные определены и не являются группировкой. Предназначена для обработчиков таблиц формы динамических списков.
Если СтандартныеПодсистемыКлиент.ЭтоЭлементДинамическогоСписка(Элементы.ВнешниеПользователиСписок) Тогда
Возвращает описание полей ключа записи и ключевых полей строки набора записей, используемых в режимах замещения Обновление, Слияние, Удаление.
ОписаниеКлючаЗаписи = СтандартныеПодсистемыСервер.ОписаниеКлючаЗаписи(
НаборЗаписей.Метаданные().ПолноеИмя());
Устанавливает заголовок главного окна приложения, используя значение константы ЗаголовокПриложения и заголовок приложения по умолчанию.
СтандартныеПодсистемыКлиент.УстановитьРасширенныйЗаголовокПриложения();
Вызывается при необходимости открыть форму списка активных пользователей, которые в данный момент времени работают с системой.
&НаКлиенте
Процедура СписокАктивныхПользователейНажатие(Элемент)
СтандартныеПодсистемыКлиент.ОткрытьСписокАктивныхПользователей();
КонецПроцедуры
Проверяет, что в текущем сеансе доступна последняя версия программы, в противном случае, вызывает исключение с требованием перезапустить сеанс.
СтандартныеПодсистемыСервер.ПроверитьДинамическоеОбновлениеВерсииПрограммы();
Отключает выдачу предупреждения пользователю при завершении работы программы.
СтандартныеПодсистемыКлиент.ПропуститьПредупреждениеПередЗавершениемРаботыСистемы();
Параметры: Показатели - Неопределено - Массив из Строка МоментНачала - Дата ИмяПроцедуры - Строка Параметры - Неопределено - Структура Общий - Булево
СтандартныеПодсистемыСервер.ДобавитьОсновнойПоказатель(Показатели, МоментНачала,
"СтандартныеПодсистемыВызовСервера.ОбработатьПараметрыКлиентаНаСервере");
Возвращает признак того, что выполнение происходит на учебной платформе.
Используется, когда нужно поддержать работу кода, который зависит
от ограничений учебной версии платформы.
// Сервер
Результат = СтандартныеПодсистемыСервер.ЭтоУчебнаяПлатформа()
// Клиент
Результат = СтандартныеПодсистемыКлиент.ЭтоУчебнаяПлатформа()
Проверяет, что пойманное исключение - это ошибка, краткое представление которой начинается с текста, указанного при вызове процедуры УстановитьТребуетсяПерезапускСеанса.
И СтандартныеПодсистемыСервер.ЭтоОшибкаТребованияПерезапускаСеанса(ИнформацияОбОшибке) Тогда
Открыть выбор объектов метаданных.
СтандартныеПодсистемыКлиент.ВыбратьОбъектыМетаданных(ПараметрыФормы);
Открывает отчет об ошибке для проверки и настройки состава отчета, либо в режиме отправки (если указан адрес сервиса для отправки и администратор не настроил НеОтправлять в объекте РежимОтправкиИнформацииОбОшибке) либо в режиме записи в файл в противном случае.
СтандартныеПодсистемыКлиент.ПоказатьОтчетОбОшибке(ОтчетОбОшибке);
Добавить изменения параметра работы программы при переходе на текущую версию метаданных конфигурации. В дальнейшем изменения используются для условного добавления обязательных обработчиков обновления. При начальном заполнении ИБ или неразделенных данных добавление изменений пропускается.
СтандартныеПодсистемыСервер.ДобавитьИзмененияПараметраРаботыПрограммы(
"СтандартныеПодсистемы.Свойства.ПредопределенныеНаборыДополнительныхРеквизитовИСведений",
?(ЕстьТекущиеИзменения,
Новый ФиксированнаяСтруктура("ЕстьИзменения", Истина),
Отключает видимость указанному элементу, если ошибка не подходит по категории с учетом параметра ОшибкаТребуетЗавершениеРаботы.
СтандартныеПодсистемыКлиент.НастроитьВидимостьИЗаголовокСсылкиОтправкиОтчетаОбОшибке(
Элементы.СформироватьОтчетОбОшибке, ИнформацияОбОшибке);
Возвращает Истина, если при запуске указан параметр ОтключитьЛогикуНачалаРаботыСистемы.
Или СтандартныеПодсистемыСервер.ОтключенаЛогикаНачалаРаботыСистемы() Тогда
Разворачивает узлы указанного дерева на форме.
СтандартныеПодсистемыКлиент.РазвернутьУзлыДерева(ЭтотОбъект, "ДеревоПодсистем", "*", Истина);
Возвращает факт вызова процедуры УстановитьТребуетсяПерезапускСеанса и текст краткого представления ошибки установленный при вызове процедуры.
СтандартныеПодсистемыСервер.ТребуетсяПерезапускСеанса(ТекстВсехОшибок);
Возвращаемое значение: Булево
Если Не СтандартныеПодсистемыСервер.ЭтоРазделенныйРежимСеансаБезРазделителей() Тогда
Параметры: Заголовки - Соответствие - см. в синтакс-помощнике описание параметра Заголовки объекта HTTPОтвет. Возвращаемое значение: Соответствие
Заголовки = СтандартныеПодсистемыСервер.HTTPЗаголовкиВНижнийРегистр(ОтветHTTP.Заголовки);
Неинтерактивно отправляет отчет об ошибке, если ошибка подходит по категории для отправки с учетом параметра ЗавершениеРаботы и администратор настроил Отправлять в объекте РежимОтправкиИнформацииОбОшибке. Рекомендуется вызывать ПриЗакрытии своей формы ошибки.
СтандартныеПодсистемыКлиент.ОтправитьОтчетОбОшибке(СведенияОбОшибке.ОтчетОбОшибке, СведенияОбОшибке.ИнформацияОбОшибке);
Удаляет строку с параметром для текущей версии расширений. Перед вызовом требуется установить привилегированный режим.
СтандартныеПодсистемыСервер.УдалитьПараметрРаботыРасширения(ИмяПараметра, Неопределено);
Возвращает изменения параметра работы программы с учетом текущей версии конфигурации и текущей версии ИБ.
ПоследниеИзменения = СтандартныеПодсистемыСервер.ИзмененияПараметраРаботыПрограммы(
"СтандартныеПодсистемы.УправлениеДоступом.ПредопределенныеПрофилиГруппДоступа");
Параметры редактора табличного документа для СтандартныеПодсистемыКлиент.ПоказатьРедакторТабличногоДокумента.
ПараметрыФормы = СтандартныеПодсистемыКлиент.ПараметрыРедактораТабличногоДокумента();
Открыть табличный документ на просмотр или редактирование.
СтандартныеПодсистемыКлиент.ПоказатьРедакторТабличногоДокумента(ТабличныйДокумент, ПараметрыФормы);
Оповещает открытые форм и динамические списки о массовых изменениях объектов различных типов с помощью методов глобального контекста Оповестить и ОповеститьОбИзменении.
СтандартныеПодсистемыКлиент.ОповеститьФормыОбИзменении(ОповеститьФормы);
Формирует сведения, необходимые для оповещения на клиенте открытых форм и динамических списков о массовых изменениях объектов, которые произошли на сервере.
СсылкиНаОбъектыОповещения = СтандартныеПодсистемыСервер.ПодготовитьОповещениеФормОбИзменении(СсылкиНаОбъекты);
Выводит текст, который пользователь может скопировать.
СтандартныеПодсистемыКлиент.ПоказатьПодробнуюИнформацию(Неопределено, Элемент.Подсказка);
Преобразует строку в допустимое наименование колонки таблицы значений, заменяя недопустимые символы на код символа ограниченного символом подчеркивания.
ИмяКолонки = "КонтактнаяИнформация_" + СтандартныеПодсистемыСервер.ПреобразоватьСтрокуВДопустимоеНаименованиеКолонки(ВидКонтактнойИнформации.Наименование);
Устанавливает значение параметра работы программы. Перед вызовом требуется установить привилегированный режим.
СтандартныеПодсистемыСервер.УстановитьПараметрРаботыПрограммы(ИмяПараметра, ТекущаяДатаСеанса());
Сохраняет параметры администрирования информационной базы и кластера серверов. При сохранении поля, содержащие пароли, будут очищены в целях безопасности.
СтандартныеПодсистемыСервер.УстановитьПараметрыАдминистрирования(ПараметрыАдминистрирования);
Возвращает элементы стиля конфигурации.
Элементы.ГруппаБиллинг.ЦветФона = СтандартныеПодсистемыКлиент.ЭлементыСтиля()["ЦветФонаПредупрежденияБРД"];
Возвращает версию режима совместимости в формате нумерации редакций и версий, например, 8.3.15.0.
ВерсияПлатформы = СтандартныеПодсистемыСервер.ВерсияРежимаСовместимости();
Параметры: Ссылки - Массив из ЛюбаяСсылка - ФиксированныйМассив из ЛюбаяСсылка - ссылки на объекты. Если массив пуст, то результатом будет пустое соответствие. Реквизиты - Массив из Строка - ФиксированныйМассив из Строка - имена реквизитов в формате требований к свойствам структуры. - Строка - имена
СведенияОбУдаляемыхОбъектах = СтандартныеПодсистемыСервер.ЗначенияРеквизитовОбъектовЕслиСуществуют(УдаляемыеОбъекты,
"ПометкаУдаления,ВерсияДанных");
Каталог системных приложений, например, "C:\Windows\System32". Используется только в ОС Windows.
ПараметрыУстановкиБиблиотек.КаталогСистемныхПриложений = СтандартныеПодсистемыКлиент.КаталогСистемныхПриложений();
Параметры: Идентификатор - Строка - идентификатор компоненты. Местоположение - Строка - местоположение макета компоненты (без указания версии). ВнешняяКомпонента - Неопределено - Структура - данные внешней компоненты: * Идентификатор - Строка - идентификатор компоненты в справочнике. * Версия - Стро
КомпонентаПоследнейВерсииИзМакета = СтандартныеПодсистемыСервер.КомпонентаПоследнейВерсии(
ОписаниеКомпоненты.ИмяОбъекта, ОписаниеКомпоненты.ПолноеИмяМакета);
Асинхронный аналог метода платформы ВыполнитьОбработкуОповещения. Выполняет обработку оповещения асинхронно, подобно методам платформы, например НачатьПолучениеФайла. Используется, когда обработку оповещения нужно выполнить после синхронного завершения вызова, то есть с некоторой минимальной задержкой.
СтандартныеПодсистемыКлиент.НачатьВыполнениеОбработкиОповещения(Оповещение);
Возвращает представление начальной (главной) страницы.
НоваяПодстрокаИнтерфейса.Настройка = СтандартныеПодсистемыСервер.ПредставлениеНачальнойСтраницы();
Преобразовать адаптированное наименование колонки, в котором недопустимые символы заменены на код символа, ограниченного символом подчеркивания в обычную строку.
ИмяСвойства = СокрЛП(СтандартныеПодсистемыСервер.ПреобразоватьАдаптированноеНаименованиеКолонкиВСтроку(Сред(ИмяКолонки, СтрДлина(Префикс) + 1)));
Возвращает тип ссылки или ключа записи указанного объекта метаданных.
ТипСсылки = СтандартныеПодсистемыСервер.ТипСсылкиИлиКлючаЗаписиОбъектаМетаданных(
ОбъектМетаданныхВладельца);
Определяет формат сохранения в PDF в зависимости от используемой платформы.
Результат.ТипФайла = СтандартныеПодсистемыСервер.ТипФайлаТабличногоДокументаPDF();
Удаляет строку с параметром. Перед вызовом требуется установить привилегированный режим.
СтандартныеПодсистемыСервер.УдалитьПараметрРаботыПрограммы(ИмяПараметра, ЕстьИзменения);
Проверяет, что переданная таблица является регистром.
И Не СтандартныеПодсистемыСервер.ЭтоТаблицаРегистра(СвойстваКоллекции.ИмяВЕдЧисле)
Получает настройку необходимости выводить подтверждение при завершении работы программы для текущего пользователя. Предназначена для использования в форме персональных настроек пользователя.
ЗапрашиватьПодтверждениеПриЗавершенииПрограммы = СтандартныеПодсистемыСервер.ЗапрашиватьПодтверждениеПриЗавершенииПрограммы();
Возвращает имя исполняемого файла в зависимости от вида клиента.
ИмяИсполняемогоФайлаКонфигуратора = КаталогПрограммы + СтандартныеПодсистемыКлиент.ИмяИсполняемогоФайлаПриложения(Истина);
Только для внутреннего использования.
Параметры = СтандартныеПодсистемыКлиент.ПараметрыДействийПередЗавершениемРаботыСистемы(Истина);
См. ВыгрузкаЗагрузкаДанныхПереопределяемый.ПослеЗагрузкиДанных.
СтандартныеПодсистемыСервер.ПослеЗагрузкиДанных(Контейнер);
Процедура-обработчик подписки на событие ПередЗаписью для ПланОбменаОбъект. Используется для вызова обработчика события ПослеПолученияДанных при обмене в распределенной ИБ.
Вызывает исключение с требованием перезапустить сеанс из-за обновления версии программы.
СтандартныеПодсистемыСервер.ПотребоватьПерезапускСеансаПоПричинеДинамическогоОбновленияВерсииПрограммы();
Устанавливает параметр сеанса необходимости перезапуска с текстом краткого представления ошибки для проверки в исключении попытки.
СтандартныеПодсистемыСервер.УстановитьТребуетсяПерезапускСеанса(Результат.ТекстОшибки);
Вызов этой процедуры необходимо разместить в модуле сеанса в процедуре УстановкаПараметровСеанса согласно документации.
Возвращает уточнения при возникновении проблем с параметрами работы программы.
СтандартныеПодсистемыСервер.УточнениеОшибкиПараметровРаботыПрограммыДляРазработчика(), "");
Заполняет структуру параметров, необходимых для работы клиентского кода данной подсистемы при запуске конфигурации, т.е. в обработчиках событий. - ПередНачаломРаботыСистемы, - ПриНачалеРаботыСистемы.
ВсеДобавлены = СтандартныеПодсистемыСервер.ДобавитьПараметрыРаботыКлиентаПриЗапуске(Параметры);
Открывает форму списка объекта с позиционированием на объекте.
СтандартныеПодсистемыКлиент.ПоказатьВСписке(ОбъектФормы.Ссылка, Неопределено);
Параметры: ПолноеИмяМетода - Строка ВФоне - Булево Объект - Произвольный Текст - Произвольный - если указан не Null, тогда установить текст ошибки и не вызывать исключение.
СтандартныеПодсистемыСервер.ПроверитьМетодДляВызоваКакПроизвольныйКод(ПроверяемоеИмяПроцедуры, Истина, Объект);
Возвращает тип объекта или набора записей указанного объекта метаданных.
ТипОбъекта = СтандартныеПодсистемыСервер.ТипОбъектаИлиНабораЗаписейОбъектаМетаданных(
ОбъектМетаданныхВладельца);
Устанавливает общую форму ПустойРабочийСтол на рабочий стол с пустым составом форм.
СтандартныеПодсистемыСервер.УстановитьПустуюФормуНаПустойРабочийСтол();
Возвращает Истина, если текущий сеанс является сеансом фонового задания.
И Не СтандартныеПодсистемыСервер.ЭтоСеансФоновогоЗадания() Тогда
Проверяет, что в текущем сеансе есть динамическое изменение конфигурации базы и при этом нет режима обновления информационной базы.
И Не СтандартныеПодсистемыСервер.ВерсияПрограммыОбновленаДинамически() Тогда
Создает во всех списках недостающие предопределенные элементы с новыми ссылками (уникальными идентификаторами). Для вызова после отключения подчиненного узла РИБ от главного, или для автоматического восстановления отсутствующих предопределенных элементов.
СтандартныеПодсистемыСервер.ВосстановитьПредопределенныеЭлементы();
Только для внутреннего использования (процедура фонового задания).
ИмяПроцедуры = "СтандартныеПодсистемыСервер.ДобавитьНовуюВерсиюРасширений";
Только для внутреннего использования.
СтандартныеПодсистемыКлиент.ИдентификаторыОбъектовМетаданныхФормаСпискаСписокВыборЗначения(ЭтотОбъект,
Элемент, Значение, СтандартнаяОбработка);
Параметры: Модуль - Произвольный - ссылка на общий модуль, модуль менеджера, объект. Возвращаемое значение: ФиксированноеСоответствие, Неопределено
Возврат СтандартныеПодсистемыСервер.МетодыРазрешенныеДляВызоваКакПроизвольныйКод(Модуль);
Возвращает поддерживаемые режимы совместимости и минимальные версии платформы в зависимости от них. См. файл ReadMe.txt. Ниже этой версии платформы конфигурация не запускается, а показывает окно с требованием обновить платформу.
МинимальныеВерсииПлатформы = СтандартныеПодсистемыСервер.МинимальнаяВерсияПлатформыДляИспользования();
Для процедуры УточнитьВерсиюПлатформы. Здесь указываются отозванные версии платформы и рекомендуемые вместо них.
НоваяСборка = СтандартныеПодсистемыСервер.НомерВерсииПлатформыВместоОтозванной(СистемнаяИнформация.ВерсияПриложения);
Только для внутреннего использования (процедура фонового задания).
ИмяПроцедуры = "СтандартныеПодсистемыСервер.ОбновитьДатуПоследнегоИспользованияВерсииРасширений";
Параметры сравнения табличных документов для процедуры ПоказатьСравнениеТабличныхДокументов.
ПараметрыОткрытияФормы = СтандартныеПодсистемыКлиент.ПараметрыСравненияТабличныхДокументов();
Отрыть форму сравнения табличных документов, в которой можно посмотреть их отличия.
СтандартныеПодсистемыКлиент.ПоказатьСравнениеТабличныхДокументов(Неопределено, Неопределено,
ПараметрыОткрытияФормы);
Возвращает признак необходимости показа всплывающего уведомления об установленных обновлениях программы - динамическом обновлении программы, новых патчей и расширений.
ПоказыватьПредупреждениеОбУстановленныхОбновленияхПрограммы = СтандартныеПодсистемыСервер.ПоказыватьПредупреждениеОбУстановленныхОбновленияхПрограммы();
Вызывает исключение с требованием перезапустить сеанс из-за обновления расширений программы.
СтандартныеПодсистемыСервер.ПотребоватьПерезапускСеансаПоПричинеДинамическогоОбновленияРасширенийПрограммы();
Сохраняет ссылку на главный узел в константе ГлавныйУзел для возможности восстановления.
СтандартныеПодсистемыСервер.СохранитьГлавныйУзел();
Возвращает текущего пользователя информационной базы.
ТекущийПользователь = СтандартныеПодсистемыСервер.ТекущийПользователь();
Возвращаемое значение: Строка - техническая информация о версиях подсистем и расширениях
СтандартныеПодсистемыСервер.ТехническаяИнформацияОВерсияхПодсистемИРасширениях());
Многоязычные конфигурации
Если СтандартныеПодсистемыСервер.ТребуетсяУстановкаРегиональныхНастроекИнформационнойБазы() Тогда
Только для внутреннего использования (процедура фонового задания).
ИмяПроцедуры = "СтандартныеПодсистемыСервер.УстановитьПоследнююВерсиюРасширений";
Возвращает признак того, что конфигурация работает в режиме PaaS.
Или СтандартныеПодсистемыСервер.ЭтоИнформационнаяБазаВМоделиСервиса() Тогда
Для процедуры ДействияПриНачалеРаботыСистемы.
СтандартныеПодсистемыКлиент.ВызванныеПроцедурыПередНачаломРаботыСистемы());
Только для внутреннего использования. Продолжение процедуры ПередЗавершениемРаботыСистемы.
СтандартныеПодсистемыКлиент.ДействияПередЗавершениемРаботыСистемы(Параметры);
Проверяет доступность проведения списка документов текущему пользователю.
СтандартныеПодсистемыСервер.ДоступноПравоПроведения(Результат.НепроведенныеДокументы));
Обработчик регламентного задания ЗаполнениеПараметровРаботыРасширений.
Только для внутреннего использования (процедура фонового задания).
"СтандартныеПодсистемыСервер.ЗаполнитьВсеПараметрыРаботыРасширенийФоновоеЗадание",
Только для внутреннего использования.
СтандартныеПодсистемыСервер.ЗарегистрироватьИзменениеПриоритетныхДанныхДляПодчиненныхУзловРИБ();
Выполняет регистрацию изменений объекта на всех узлах плана обмена. Для разделенных конфигураций должны выполняться условия: - план обмена должен быть разделенным, - регистрируемый объект должен быть неразделенным.
СтандартныеПодсистемыСервер.ЗарегистрироватьОбъектНаВсехУзлах(Объект, ПланОбмена, Ложь);
Ниже этой версии платформы запуск конфигурации блокируется, так как не может выполниться инициализационный код и показать окно с требованием обновить платформу. Это значение не переопределяется, изменять можно только в случае, если конфигурация не может запуститься на указанной версии.
Только для внутреннего использования.
СтандартныеПодсистемыКлиент.НачатьИнтерактивнуюОбработкуПередЗавершениемРаботыСистемы();
Отправляет оповещение всем сеансам об устаревании повторно используемых значений.
СтандартныеПодсистемыСервер.ОповеститьВсеСеансыОбУстареванииПовторноИспользуемыхЗначений(Истина);
Переадресует оповещение без результата на оповещение с результатом.
СтандартныеПодсистемыКлиент.ОповещениеБезРезультата(Параметры.ОбработкаПродолжения),
Миграция данных регистра УдалитьБезопасноеХранилищеДанныхОбластейДанных в БезопасноеХранилищеДанныхОбластейДанных.
Обработчик.Процедура = "СтандартныеПодсистемыСервер.ПеренестиБезопасноеХранилищеДанныхОбластейДанных";
Для вызова из ОбщегоНазначения.ПолучитьВерсииИнтерфейсаЧерезВнешнееСоединение.
ВерсииИнтерфейсаXML = ВнешнееСоединение.СтандартныеПодсистемыСервер.ПоддерживаемыеВерсии(ИмяИнтерфейса);
Возвращает номера версий, поддерживаемых программным интерфейсом ИмяИнтерфейса, указанных в процедурах ПриОпределенииПоддерживаемыхВерсийПрограммныхИнтерфейсов.
МассивВерсий = СтандартныеПодсистемыСервер.ПоддерживаемыеВерсииПрограммногоИнтерфейса(InterfaceName);
После предупреждения вызывает процедуру с параметрами Результат, ДополнительныеПараметры.
СтандартныеПодсистемыКлиент.ПоказатьПредупреждениеИПродолжить(
Параметры, ПараметрыКлиента.ОшибкаПриНастройкеАвтономногоРабочегоМеста);
Сбрасывает дату обновления всех записей кэша версий, таким образом все записи кэша начинают считаться неактуальными.
Обработчик.Процедура = "СтандартныеПодсистемыСервер.ПометитьЗаписиКэшаВерсийНеактуальными";
Определяет пользовательское представление формата сохранения в PDF в зависимости от используемой платформы.
Возврат СтандартныеПодсистемыСервер.ПредставлениеТипаФайлаТабличногоДокументаPDF();
См. ПользователиПереопределяемый.ПриСохраненииПрочихНастроек.
СтандартныеПодсистемыСервер.ПриСохраненииПрочихНастроек(СведенияОПользователе, Настройки);
См. ПользователиПереопределяемый.ПриУдаленииПрочихНастроек.
СтандартныеПодсистемыСервер.ПриУдаленииПрочихНастроек(СведенияОПользователе, Настройки);
Формирует текст для вывода пользователю при необходимости динамического обновления.
ЧастиСообщения.Добавить(СтандартныеПодсистемыСервер.ТекстСообщенияПриДинамическомОбновлении(ПараметрыПроверки));
Устанавливает значение константам НеИспользоватьРазделениеПоОбластямДанных и СтандартныеПодсистемыВАвтономномРежиме на основании значения ИспользоватьРазделениеПоОбластямДанных.
Обработчик.Процедура = "СтандартныеПодсистемыСервер.УстановитьКонстантуНеИспользоватьРазделениеПоОбластямДанных";
Устарела. Веб-клиент более не поддерживает конфигурации, которые используют интерфейс версии 8.2. При работе в веб-клиенте отключена возможность переключения интерфейса между интерфейсом версии 8.2 и интерфейсом Такси.
Устанавливает общую форму ПустойРабочийСтол на рабочий стол.
СтандартныеПодсистемыСервер.УстановитьПустуюФормуНаРабочийСтол();
Проверяет, умещаются ли переданные табличные документы на страницу при печати.
Результат = ОбщегоНазначения.ПроверитьВыводТабличногоДокумента(ТабДокумент, ВыводимыеОбласти, РезультатПриОшибке)
Выполняет действия перед продолжением выполнения обработчика регламентного задания.
Например, проверяет возможность выполнения обработчика регламентного задания.
Если администратор не заблокировал выполнение регламентных заданий до окончания обновления ИБ, тогда требуется прекратить выполнение обработчика.
ОбщегоНазначения.ПриНачалеВыполненияРегламентногоЗадания(РегламентноеЗадание)
Устарела. Следует использовать АдминистрированиеКластера.ПараметрыАдминистрированияКластера. Конструктор структуры, описывающей параметры подключения к администрируемому кластеру серверов.
Асинхронное получение имени временного каталога.
ОписаниеОповещения = Новый ОписаниеОповещения("ПродолжитьОткрытиеФайлаMXLПослеСозданияКаталога", ЭтотОбъект, ВыбранноеВложение);
ФайловаяСистемаКлиент.СоздатьВременныйКаталог(ОписаниеОповещения);
Возвращает уточненный текст исключения для пользователя и категорию для вызова исключения с уточненным текстом.
Уточнение = ОбщегоНазначенияКлиентСервер.УточнениеИсключения(ИнформацияОбОшибке,
НСтр("ru = 'Не удалось вычислить курс валюты по формуле:';
|en = 'Failed to calculate the exchange rate using the formula:'"));
Устарела. Следует использовать АдминистрированиеКластера.ПараметрыАдминистрированияИнформационнойБазыКластера. Конструктор структуры, описывающей параметры подключения к администрируемой информационной базе кластера.
Подготавливает строку для использования в качестве шаблона поиска в запросе с оператором ПОДОБНО. Экранирует служебные символы, если они есть в строке.
Запрос.УстановитьПараметр("ИдентификаторДляФормулПодобие", ОбщегоНазначения.СформироватьСтрокуДляПоискаВЗапросе(Идентификатор) + "%");
Получает массив значений из отмеченных элементов списка значений.
ОрганизацииДляНастройки = ОбщегоНазначенияКлиентСервер.ОтмеченныеЭлементы(СписокОрганизаций);
Предлагает пользователю установить расширение для работы с 1С:Предприятием в веб-клиенте.
Предназначена для использования в начале участков кода, в которых ведется работа с файлами.
Оповещение = Новый ОписаниеОповещения("ПечатьДокументаЗавершение", ЭтотОбъект);
ТекстСообщения = НСтр("ru = 'Для печати документа необходимо установить расширение для работы с 1С:Предприятием.'");
ФайловаяСистемаКлиент.ПодключитьРасширениеДляРаботыСФайлами(Оповещение, ТекстСообщения);
Процедура ПечатьДокументаЗавершение(РасширениеПодключено, ДополнительныеПараметры) Экспорт
Если РасширениеПодключено Тогда
// код печати документа, рассчитывающий на то, что расширение подключено.
// ...
Иначе
// код печати документа, который работает без подключенного расширения.
// ...
КонецЕсли;
Показывает диалог выбора файла.
При работе в веб-клиенте пользователю будет показан диалог установки расширения для работы с файлами, если требуется.
ДиалогОткрытияФайла = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);
ДиалогОткрытияФайла.Фильтр = НСтр("ru = 'Данные загрузки (*.xml)|*.xml';
|en = 'Import data (*.xml)|*.xml'");
ДополнительныеПараметры = Новый Структура;
ДополнительныеПараметры.Вставить("ДляЗагрузки", Истина);
ДополнительныеПараметры.Вставить("ЗагружатьПослеВыбора", ЗагружатьПослеВыбора);
ОповещениеВыбора = Новый ОписаниеОповещения("ВыбранФайл", ЭтотОбъект, ДополнительныеПараметры);
ФайловаяСистемаКлиент.ПоказатьДиалогВыбора(ОповещениеВыбора, ДиалогОткрытияФайла);
Возвращает описания всех библиотек конфигурации, включая описание самой конфигурации.
ОписанияПодсистем = СтандартныеПодсистемыПовтИсп.ОписанияПодсистем();
Показывает диалог выбора каталога.
Оповещение = Новый ОписаниеОповещения("ПослеВыбораКаталога", ЭтотОбъект, РезультатВыгрузки);
ФайловаяСистемаКлиент.ВыбратьКаталог(Оповещение);
Возвращает признак использования в информационной базе полного РИБ (без фильтров). Проверка выполняется по более точному алгоритму, если используется подсистема "Обмен данными".
Если СтандартныеПодсистемыПовтИсп.ИспользуетсяРИБ() Тогда
Устанавливает состояние отмены при создании форм рабочего стола. Требуется, если при запуске программы возникает необходимость взаимодействия с пользователем (интерактивная обработка).
СтандартныеПодсистемыВызовСервера.СкрытьРабочийСтолПриНачалеРаботыСистемы(Ложь);
Формирует уникальное имя файла в указанной папке, при необходимости добавляя к имени файла порядковый номер, например: "файл (2).txt", "файл (3).txt" и т.п.
Результат = ФайловаяСистемаКлиент.УникальноеИмяФайла(ИмяФайла)
Возвращает связи подчиненных объектов с указанием типа поля связи.
Возврат ОбщегоНазначения.СвязиПодчиненныхОбъектовПоТипам();
См. Справочники.ИдентификаторыОбъектовМетаданных.СвойстваКоллекцийОбъектовМетаданных
СвойстваКоллекций = СтандартныеПодсистемыПовтИсп.СвойстваКоллекцийОбъектовМетаданных();
Возвращает соответствие имен предопределенных значений ссылкам на них.
ВидыСубконтоХозрасчетные = СтандартныеПодсистемыПовтИсп.СсылкиПоИменамПредопределенных(
"ПланВидовХарактеристик.ВидыСубконтоХозрасчетные");
Только для внутреннего использования.
СтандартныеПодсистемыПовтИсп.ИдентификаторыОбъектовМетаданныхПроверкаИспользования();
Проверяет, что указанный режим соответствует добавлению набора записей.
Или ОбщегоНазначения.ЭтоДобавлениеНабораЗаписей(Замещение) Тогда
Преобразует универсальную дату в дату формата rfc1123-date. См. https://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html, п. 3.3.1.
ПараметрыПолучения.Заголовки.Вставить("If-Modified-Since", ОбщегоНазначенияКлиентСервер.ДатаHTTP(ДатаИзмененияФайла));
Возвращает условие отбора и параметры запроса для выбора записей из базы данных по указанному набору записей с учетом режима замещения.
ОбщегоНазначения.ОтборЗаписейНабораИзБазыДанных(ЭтотОбъект, Замещение, Запрос);
Получает идентификатор (метод ПолучитьИдентификатор()) строки дерева значений для заданного значения поля строки дерева. Используется для позиционирования курсора в иерархических списках.
ОбщегоНазначенияКлиентСервер.ПолучитьИдентификаторСтрокиДереваПоЗначениюПоля(ИмяПоля, ИдентификаторСтроки, КоллекцияЭлементовДерева, КлючСтроки, ПрекратитьПоиск)
Возвращает адрес публикации информационной базы для формирования прямых ссылок на объекты ИБ для возможности перехода к ним пользователей, имеющих доступ к базе через публикацию в сети Интернет. Например, если такой адрес включить в электронное письмо, то из письма одним нажатием можно перейти к форме объекта в самой программе.
ПараметрыПубликации.Вставить("АдресБазыВИнтернете", ОбщегоНазначения.АдресПубликацииИнформационнойБазыВИнтернете());
Возвращает соответствие имен "функциональных" подсистем и значения Истина. У "функциональной" подсистемы снят флажок "Включать в командный интерфейс".
ИменаПодсистем = СтандартныеПодсистемыПовтИсп.ИменаПодсистем();
Конструктор параметров для функции ВыполнитьФоновоеЗадание.
ПараметрыВыполнения = ОбщегоНазначения.НовыеПараметрыВыполненияФоновогоЗадания();
Конструктор структуры для параметра ПараметрыЗамены функции ОбщегоНазначения.ЗаменитьСсылки.
ПараметрыЗамены = ОбщегоНазначения.ПараметрыЗаменыСсылок();
Рассчитывает показатели числовых ячеек в табличном документе.
Возврат ОбщегоНазначенияСлужебныйКлиентСервер.РасчетныеПоказателиЯчеек(
ТабличныйДокумент, ПараметрыРасчета.ВыделенныеОбласти);
Свойства видов объектов метаданных.
ПоВидамОбъектов = СтандартныеПодсистемыПовтИсп.СвойстваВидовОбъектовМетаданных().ПоВидамОбъектов;
Возвращает строку для вызова указанного метода с параметрами с помощью Выполнить/Вычислить. См. ВыполнитьМетодКонфигурации и см. ВыполнитьМетодОбъекта.
"ИмяМетода", ИмяМетода, "ОбщегоНазначения.СтрокаВызоваМетодаКакПроизвольногоКода");
Возвращает адрес публикации информационной базы для формирования прямых ссылок на объекты ИБ для возможности перехода к ним пользователей, имеющих доступ к базе через публикацию локальной сети. Например, если такой адрес включить в электронное письмо, то из письма за одно нажатие можно перейти к форме объекта в самой программе.
ОбщегоНазначения.АдресПубликацииИнформационнойБазыВЛокальнойСети();
Возвращает дату, преобразованную из формата rfc1123-date в тип Дата. См. https://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html, п. 3.3.1.
ДатаИзмененияФайла = ОбщегоНазначенияКлиентСервер.ДатаRFC1123(ДатаИзмененияФайлаRFC1123);
Процедура предназначена для заполнения реквизита формы типа ДанныеФормыДерево из объекта ДеревоЗначений
ОбщегоНазначения.ЗаполнитьКоллекциюЭлементовДереваДанныхФормы(КоллекцияЭлементовДерева, ДеревоЗначений)
Возвращает исключения при поиске мест использования объектов.
ИсключенияПоискаСсылок = ОбщегоНазначения.ИсключенияПоискаСсылок();
Сокращает имя файла с расширением, если оно превышает размер в 255 байт. При этом сокращается часть имени файла без расширения, в конец которой добавляется уникальное значение, вычисленное по алгоритму MD5.
ОбщегоНазначения.СократитьИмяФайла(Результат.ИмяФайла);
Проверяет, что указанный режим соответствует замещению набора записей.
Если ОбщегоНазначения.ЭтоЗамещениеНабораЗаписей(Замещение) Тогда
Проверяет, что указанный режим соответствует обновлению набора записей.
Или ОбщегоНазначения.ЭтоОбновлениеНабораЗаписей(Замещение)
Проверяет, что указанный режим соответствует слиянию набора записей.
Или ОбщегоНазначения.ЭтоСлияниеНабораЗаписей(Замещение)
Возвращает удаленные и добавленные строки регистра для указанного набора записей с учетом режима замещения.
Таблица = ОбщегоНазначения.ИзменениеЗаписейНабора(СтарыеЗаписи, НаборЗаписей, Замещение);
Возвращает объем оперативной памяти, доступной клиентскому приложению.
ОперативнаяПамять = ОбщегоНазначения.ОперативнаяПамятьДоступнаяКлиентскомуПриложению();
Только для внутреннего использования.
Если СтандартныеПодсистемыПовтИсп.ОтключитьИдентификаторыОбъектовМетаданных() Тогда
Возвращает системную информацию клиента, если есть клиентское приложение. До первого серверного вызова с клиента вернет Неопределено.
СистемнаяИнформацияКлиент = ОбщегоНазначения.СистемнаяИнформацияКлиента();
Определяет принадлежность объекта метаданных к общему типу "Последовательности".
Если ОбщегоНазначения.ЭтоПоследовательность(СведенияОМестеИспользования.Метаданные) Тогда
Параметры: КомандаЗапуска - Строка Возвращаемое значение: Строка
Возврат ОбщегоНазначенияСлужебныйКлиентСервер.БезопаснаяСтрокаКоманды(КомандаЗапуска);
Возвращаемое значение: Структура: * ПараллельноеОтложенноеОбновлениеСВерсии - Строка * РежимВыполненияОтложенныхОбработчиков - Строка * ОсновнойСерверныйМодуль - Строка * ЭтоКонфигурация - Булево * ИдентификаторИнтернетПоддержки - Строка * ТребуемыеПодсистемы - Массив * Версия - Строка * Имя - Строк
НовоеОписаниеПодсистемы = СтандартныеПодсистемыПовтИсп.НовоеОписаниеПодсистемы();
Конструктор структуры для параметра ПараметрыПроверкиАлгоритма функций ОбщегоНазначения.ВыполнитьВБезопасномРежиме и ОбщегоНазначения.ВычислитьВБезопасномРежиме.
Возвращает связи подчиненных объектов и перечень реквизитов, по которым осуществляется связь.
ПодчиненныеОбъекты = ОбщегоНазначения.ПодчиненныеОбъекты();
См. Справочники.ИдентификаторыОбъектовМетаданных.ПредставлениеИдентификатора
Представление = СтандартныеПодсистемыПовтИсп.ПредставлениеИдентификатораОбъектаМетаданных(Данные.Ссылка);
Возвращает список используемых в информационной базе узлов РИБ (без фильтров). Проверка выполняется по более точному алгоритму, если используется подсистема "Обмен данными".
УзлыРИБ = СтандартныеПодсистемыПовтИсп.УзлыРИБ();
Добавляет или изменяет значение реквизита в объекте.
ОбщегоНазначения.УстановитьЗначениеРеквизита(Объект, "Наименование", Наименование, КодЯзыка);
Доступность объектов метаданных по функциональным опциям.
ФункциональныеОпции = СтандартныеПодсистемыПовтИсп.ДоступностьОбъектовПоОпциям();
Возвращает имя используемого клиента, а для веб-браузера название и версию, если есть. До первого серверного вызова с клиента вернет Неопределено.
ИспользуемыйКлиент = ОбщегоНазначения.ИспользуемыйКлиент();
Ниже этой версии платформы конфигурация может запуститься и показать окно с требованием обновить платформу, если она выше, чем в СтандартныеПодсистемыСервер.МинимальнаяВерсияПлатформыДляЗапуска. Конкретные номера версий указаны в СтандартныеПодсистемыСервер.МинимальнаяВерсияПлатформыДляИспользования.
ВсеМинимальные = ОбщегоНазначения.МинимальнаяВерсияПлатформы();
Устанавливает признак разрешения работа с Интернет-сервисами из приложения. После вызова на клиенте рекомендуется вызвать оповещение о записи константы.
ОбщегоНазначения.НастроитьРаботуСИнтернетСервисами(Истина);
Устарела. Создает и возвращает экземпляр отчета или обработки по полному имени объекта метаданных.
ОбъектОтчета = ОбщегоНазначения.ОбъектПоПолномуИмени(ИмяОтчета);
Возвращает таблицу значений с описанием требуемых свойств всех реквизитов объекта метаданных.
Получает значения свойств стандартных реквизитов и пользовательских реквизитов (созданных в режиме конфигуратора).
ОбъектМетаданных = Метаданные.Справочники.Номенклатура;
ТаблицаОписанияСвойствОбъекта = ОбщегоНазначения.ОписаниеСвойствОбъекта(ОбъектМетаданных, "Имя, Тип");
Параметры, применяемых к элементам командного интерфейса, связанным с параметрическими функциональными опциями.
Параметры = Новый Структура(СтандартныеПодсистемыПовтИсп.ОпцииИнтерфейса());
Служебные объекты и объекты при загрузке из резервной копии, должны записываться без какой-либо прикладной логики.
ОбщегоНазначения.ОтключитьКонтрольЗаписи(НаборЗаписей);
Возвращает полное имя объекта метаданных по его типу.
ПолноеИмя = СтандартныеПодсистемыВызовСервера.ПолноеИмяОбъектаМетаданных(ТипЗнч(Значение));
Последняя версия компоненты из макета.
Результат.ПоследняяВерсияКомпонентыИзМакета = СтандартныеПодсистемыПовтИсп.ПоследняяВерсияКомпонентыИзМакета(
ПутьКМакетуДляПоискаПоследнейВерсии);
Возвращает данные из безопасного хранилища. Вызывающий код должен самостоятельно устанавливать привилегированный режим.
ПолучателиПароли = ОбщегоНазначения.ПрочитатьДанныеВладельцевИзБезопасногоХранилища(СписокПолучателей, "ПарольАрхива");
См. Справочники.ИдентификаторыОбъектовМетаданных.РолиПоКлючамОбъектовМетаданных
РолиПоКлючам = СтандартныеПодсистемыПовтИсп.РолиПоКлючамОбъектовМетаданных();
Устарела. Следует использовать ОбщегоНазначенияКлиентСервер.РазностьМассивов Вычисляет разность массивов. Разностью массивов А и В является массив, содержащий все элементы массива А не существующие в массиве В.
СотрудникиКУдалению = ОбщегоНазначенияКлиентСервер.СократитьМассив(СписокСотрудников, СотрудникиСЛьготнымСтажем);
Возвращает Истина при необходимости обновления конфигурации информационной базы подчиненного узла РИБ. В главном узле всегда Ложь.
ОбщегоНазначения.ТребуетсяОбновлениеКонфигурацииПодчиненногоУзлаРИБ());
Устанавливает условное оформление списка выбора
ОбщегоНазначения.УстановитьУсловноеОформлениеСпискаВыбора(ЭтотОбъект, "Группа", "ПолучателиПисьма.Группа");
Определяет, что эта информационная база является подчиненным узлом распределенной информационной базы (РИБ) с фильтром.
Возврат ОбщегоНазначения.ЭтоПодчиненныйУзелРИБСФильтром();
Возвращает признак того, что информационная база является распределенной (РИБ).
Элементы.СписокРасширенийПередаватьВПодчиненныеУзлыРИБ.Видимость = ОбщегоНазначения.ЭтоРаспределеннаяИнформационнаяБаза();
Список версий программных интерфейсов, доступных через web-сервис InterfaceVersions.
ПоддерживаемыеВерсии = ОбщегоНазначения.ВерсииИнтерфейсов();
Только для внутреннего использования.
СтандартныеПодсистемыВызовСервера.ЗаписатьОшибкуВЖурналРегистрацииПриЗапускеИлиЗавершении(
Ложь, "Запуск", ТекстОшибки);
Возвращает имя объекта метаданных по типу.
Результат = СтандартныеПодсистемыВызовСервера.ИмяОбъектаМетаданных(Тип);
Для файлового режима работы возвращает полное имя каталога, в котором расположена информационная база. Если режим работы клиент-серверный, то возвращается пустая строка.
КаталогИнформационнойБазы = ОбщегоНазначенияКлиентСервер.КаталогФайловойИнформационнойБазы();
См. Справочники.ИдентификаторыОбъектовМетаданных.КэшИдентификаторовОбъектовМетаданных
Возврат СтандартныеПодсистемыПовтИсп.КэшИдентификаторовОбъектовМетаданных(КлючДанныхПовторногоИспользования);
Дополнительные параметры для функции ОтборЗаписейНабораИзБазыДанных.
Параметры = ОбщегоНазначения.НовыеПараметрыОтбораЗаписейНабораИзБазыДанных();
См. РегистрыСведений.СведенияОПользователях.ОбработатьОтветПроОтключениеOpenIDConnect
СтандартныеПодсистемыВызовСервера.ОбработатьОтветПроОтключениеOpenIDConnect(Истина);
Переводит параметры сеанса в состояние "Не установлено".
ОбщегоНазначения.ОчиститьПараметрыСеанса(ПараметрыДляОчистки, Исключения)
Возвращает структуру для параметра ДополнительныеПараметры функции ОбщегоНазначения.МестаИспользования.
ПараметрыПоискаМестИспользования = ОбщегоНазначения.ПараметрыПоискаМестИспользования();
Формирует описание выделенных областей табличного документа.
ПараметрыРасчета = ОбщегоНазначенияКлиентСервер.ПараметрыРасчетаПоказателейЯчеек(ПолеТабличногоДокумента);
Возвращает параметры экрана используемого устройства.
ПараметрыЭкрана = ОбщегоНазначенияКлиентСервер.ПараметрыЭкранаУстройства();
Возвращает список планов обмена РИБ. Если конфигурация работает в модели сервиса, то возвращает список разделенных планов обмена РИБ.
Для Каждого ПланОбмена Из СтандартныеПодсистемыПовтИсп.ПланыОбменаРИБ() Цикл
Возвращает описания предметов СсылкиНаПредметы. Для документов возвращается представление, для остальных ссылочных типов возвращается представление и тип в скобках, например, "Ножницы (Номенклатура)". Для пустых ссылок или незаполненных значений примитивных типов возвращается "не задан".
СоответствиеПредставлений = ОбщегоНазначения.ПредметыСтрокой(СсылкиНаДокументы);
Возвращает представления переданных ссылок.
ПредставленияПоСсылкам = ОбщегоНазначения.ПредставленияСсылок(ПроверяемыеСсылки);
Возвращаемое значение: Структура: * НомерСеанса - Число * НачалоСеанса - Дата * КлючКомпьютера - Строка
СвойстваСеанса = СтандартныеПодсистемыПовтИсп.СвойстваТекущегоСеанса();
Устарела. Следует использовать ОбщегоНазначения.ЭтоMacOSКлиент Возвращает Истина, если клиентское приложение запущено под управлением ОС X.
Или ОбщегоНазначения.ЭтоOSXКлиент() Или ОбщегоНазначения.РазделениеВключено();
Проверяет наличие в ошибке хотя бы одного кода из указанных. При проверке учитываются все вложенные причины исключения.
Если Текст <> Null И ОбщегоНазначенияКлиентСервер.ЭтоИсключениеСКодомОшибки(ИнформацияОбОшибке(),
"СтандартныеПодсистемы.БазоваяФункциональность.ЭтоОшибкаПолученияОбщегоМодуляПоИмени
|СтандартныеПодсистемы.БазоваяФункциональность.ЭтоОшибкаПолученияМодуляМенеджераПоИмени") Тогда
См. РаботаВМоделиСервиса.ВойтиВОбластьДанных.
СтандартныеПодсистемыВызовСервера.ВойтиВОбластьДанных(ЗначениеРазделителя);
Следует использовать ВыполнитьМетодКонфигурации.
РезультатМетода.result = ОбщегоНазначения.ВызватьФункциюКонфигурации(
ИмяМодуля + "." + ИмяМетода, Параметры);
Устарела. Следует использовать ПолучениеФайловИзИнтернета.ДиагностикаСоединения Запускает диагностику сетевого ресурса. Не доступно в веб-клиенте. В модели сервиса функциональность ограничена получением описания ошибки.
Параметры: ПриЗапуске - Булево Показатели - Строка СтекВызовов - Строка
СтандартныеПодсистемыВызовСервера.ЗаписатьПоказателиПроизводительности(ПриЗапуске, Комментарий, СтекВызовов);
Устарела. Следует использовать ОбщегоНазначенияКлиентСервер.ДополнитьТаблицу Заполняет коллекцию-приемник значениями из коллекции-источник. В качестве коллекций источника и приемника могут выступать типы: ТаблицаЗначений; ДеревоЗначений; СписокЗначений и пр.
ОбщегоНазначенияКлиентСервер.ЗаполнитьКоллекциюСвойств(
ВидыЦенностейСтр010_040,
ВидыЦенностейСтр030);
Возвращаемое значение: Массив из Строка
ИменаКлиентскихМодулей = СтандартныеПодсистемыВызовСервера.ИменаКлиентскихМодулей();
Устарела. Следует использовать ОбщегоНазначения.РазделениеВключено И ОбщегоНазначения.ДоступноИспользованиеРазделенныхДанных.
Описание свойств фиксированной структуры.
Свойства = Новый Структура(СтандартныеПодсистемыПовтИсп.НовыеСвойстваВидаОбъектов()); // см. НовыеСвойстваВидаОбъектов
Возвращает Истина, если привилегированный режим был установлен при запуске с помощью параметра UsePrivilegedMode.
Если СтандартныеПодсистемыПовтИсп.ПривилегированныйРежимУстановленПриЗапуске() Тогда
Проверяет право на отключение логики работы системы и скрывает рабочий стол на сервере, если право есть, в противном случае вызывает исключение.
СтандартныеПодсистемыВызовСервера.ПроверитьПравоОтключитьЛогикуНачалаРаботыСистемы(СвойстваКлиента);
Сравнивает два расписания между собой.
Если ОбщегоНазначенияКлиентСервер.РасписанияОдинаковые(КлючИЗначение.Значение, Значение) Тогда
Определяет режим регистрации данных на узлах плана обмена.
РежимРегистрации = СтандартныеПодсистемыПовтИсп.РежимРегистрацииДанныхДляПланаОбмена(
Объект.ПолноеИмя(), ОбменДаннымиПовтИсп.ПланОбменаАвтономнойРаботы());
См. ПользователиСлужебный.РолиТекущегоПользователяСокращены
Если Не СтандартныеПодсистемыВызовСервера.РолиТекущегоПользователяСокращены() Тогда
Определяет, указаны ли места использования в исключениях поиска ссылок.
СлужебныеСвязиДанных = ОбщегоНазначения.СлужебныеСвязиДанных(ПрепятствующиеУдалению, ПараметрыВыполнения.ИсключенияПоискаСсылок);
См. Справочники.ИдентификаторыОбъектовМетаданных.ТаблицаПереименованияДляТекущейВерсии
ТаблицаПереименования = СтандартныеПодсистемыПовтИсп.ТаблицаПереименованияДляТекущейВерсии();
См. СерверныеОповещенияСлужебныйКлиентСервер.УведомленияКлиентаДоступны
СтандартныеПодсистемыКлиентПовтИсп.УведомленияКлиентаДоступны();
Возвращаемое значение: ФиксированноеСоответствие из КлючИЗначение: * Ключ - Строка - имя предопределенного неразделенного регламентного задания, которое используются в качестве шаблона для задания очереди. * Значение - Булево - значение Истина.
ШаблоныЗаданийОчереди = СтандартныеПодсистемыПовтИсп.ШаблоныЗаданийОчереди();
Возвращает информацию о том, являются ли переданные элементы предопределенными. Если нет прав доступа на уровне записей, то элемент не включается в результат. Если нет прав доступа к таблице, то вызывается исключение.
ЭтоПредопределенныеЭлементы = ОбщегоНазначения.ЭтоПредопределенныеЭлементы(ПомеченныеНаУдаление);
Загружает настройку из хранилища общих настроек, как метод платформы Загрузить,
объектов СтандартноеХранилищеНастроекМенеджер или ХранилищеНастроекМенеджер.<Имя хранилища>,
но с поддержкой длины ключа настроек более 128 символов путем хеширования части,
которая превышает 96 символов.
Кроме того, возвращает указанное значение по умолчанию, если настройки не существуют.
Если нет права СохранениеДанныхПользователя, возвращается значение по умолчанию без ошибки.
В возвращаемом значении очищаются ссылки на несуществующий объект в базе данных, а именно
- возвращаемая ссылка заменяется на указанное значение по умолчанию;
- из данных типа Массив ссылки удаляются;
- у данных типа Структура и Соответствие ключ не меняется, а значение устанавливается Неопределено;
- анализ значений в данных типа Массив, Структура, Соответствие выполняется рекурсивно.
// Сервер
Настройки = ОбщегоНазначения.ХранилищеОбщихНастроекЗагрузить(Параметры.КлючОбщихНастроек,
"НастройкиФоновогоЗадания_" + Параметры.УникальныйИдентификатор);
// Клиент
Результат = ОбщегоНазначенияВызовСервера.ХранилищеОбщихНастроекЗагрузить(
КлючОбъекта,
КлючНастроек,
ЗначениеПоУмолчанию,
ОписаниеНастроек,
ИмяПользователя);
Сохраняет настройку в хранилище общих настроек, как метод платформы Сохранить, объектов СтандартноеХранилищеНастроекМенеджер или ХранилищеНастроекМенеджер.<Имя хранилища>, но с поддержкой длины ключа настроек более 128 символов путем хеширования части, которая превышает 96 символов.
Если нет права СохранениеДанныхПользователя, сохранение пропускается без ошибки.
ОбщегоНазначения.ХранилищеОбщихНастроекСохранить("Справочники.Контрагенты", КлючНастроек, Настройки);
// Клиент
ОбщегоНазначенияВызовСервера.ХранилищеОбщихНастроекСохранить(
КлючОбъекта,
КлючНастроек,
Настройки,
ОписаниеНастроек,
ИмяПользователя,
ОбновитьПовторноИспользуемыеЗначения);
Загружает настройку из хранилища настроек данных форм, как метод платформы Загрузить,
объектов СтандартноеХранилищеНастроекМенеджер или ХранилищеНастроекМенеджер.<Имя хранилища>,
но с поддержкой длины ключа настроек более 128 символов путем хеширования части,
которая превышает 96 символов.
Кроме того, возвращает указанное значение по умолчанию, если настройки не существуют.
Если нет права СохранениеДанныхПользователя, возвращается значение по умолчанию без ошибки.
В возвращаемом значении очищаются ссылки на несуществующий объект в базе данных, а именно
- возвращаемая ссылка заменяется на указанное значение по умолчанию;
- из данных типа Массив ссылки удаляются;
- у данных типа Структура и Соответствие ключ не меняется, а значение устанавливается Неопределено;
- анализ значений в данных типа Массив, Структура, Соответствие выполняется рекурсивно.
// Сервер
Результат = ОбщегоНазначения.ХранилищеНастроекДанныхФормЗагрузить(
КлючОбъекта,
КлючНастроек,
ЗначениеПоУмолчанию,
ОписаниеНастроек,
ИмяПользователя);
// Клиент
Результат = ОбщегоНазначенияВызовСервера.ХранилищеНастроекДанныхФормЗагрузить(
КлючОбъекта,
КлючНастроек,
ЗначениеПоУмолчанию,
ОписаниеНастроек,
ИмяПользователя);
Сохраняет настройку в хранилище настроек данных форм, как метод платформы Сохранить,
объектов СтандартноеХранилищеНастроекМенеджер или ХранилищеНастроекМенеджер.<Имя хранилища>,
но с поддержкой длины ключа настроек более 128 символов путем хеширования части,
которая превышает 96 символов.
Если нет права СохранениеДанныхПользователя, сохранение пропускается без ошибки.
См. ОбщегоНазначения.ХранилищеНастроекДанныхФормСохранить
// Сервер
ОбщегоНазначения.ХранилищеНастроекДанныхФормСохранить(КлючОбъекта, КлючНастроек, Настройки, ОписаниеНастроек, ИмяПользователя, ОбновитьПовторноИспользуемыеЗначения)
// Клиент
ОбщегоНазначенияВызовСервера.ХранилищеНастроекДанныхФормСохранить(КлючОбъекта, КлючНастроек, Настройки, ОписаниеНастроек, ИмяПользователя, ОбновитьПовторноИспользуемыеЗначения)
Удаляет настройку из хранилища общих настроек, как метод платформы Удалить,
объектов СтандартноеХранилищеНастроекМенеджер или ХранилищеНастроекМенеджер.<Имя хранилища>,
но с поддержкой длины ключа настроек более 128 символов путем хеширования части,
которая превышает 96 символов.
Если нет права СохранениеДанныхПользователя, удаление пропускается без ошибки.
// Сервер
ОбщегоНазначения.ХранилищеОбщихНастроекУдалить(
КлючОбъекта,
КлючНастроек,
ИмяПользователя);
// Клиент
ОбщегоНазначенияВызовСервера.ХранилищеОбщихНастроекУдалить(
КлючОбъекта,
КлючНастроек,
ИмяПользователя);
Сохраняет настройку в хранилище системных настроек, как метод платформы Сохранить
объекта СтандартноеХранилищеНастроекМенеджер, но с поддержкой длины ключа настроек
более 128 символов путем хеширования части, которая превышает 96 символов.
Если нет права СохранениеДанныхПользователя, сохранение пропускается без ошибки.
// Сервер
ОбщегоНазначения.ХранилищеСистемныхНастроекСохранить(КлючОбъекта, КлючНастроек, Настройки, ОписаниеНастроек, ИмяПользователя, ОбновитьПовторноИспользуемыеЗначения)
// Клиент
ОбщегоНазначенияВызовСервера.ХранилищеСистемныхНастроекСохранить(КлючОбъекта, КлючНастроек, Настройки, ОписаниеНастроек, ИмяПользователя, ОбновитьПовторноИспользуемыеЗначения)
Загружает настройку из хранилища системных настроек, как метод платформы Загрузить,
объекта СтандартноеХранилищеНастроекМенеджер, но с поддержкой длины ключа настроек
более 128 символов путем хеширования части, которая превышает 96 символов.
Кроме того, возвращает указанное значение по умолчанию, если настройки не существуют.
Если нет права СохранениеДанныхПользователя, возвращается значение по умолчанию без ошибки.
В возвращаемом значении очищаются ссылки на несуществующий объект в базе данных, а именно:
- возвращаемая ссылка заменяется на указанное значение по умолчанию;
- из данных типа Массив ссылки удаляются;
- у данных типа Структура и Соответствие ключ не меняется, а значение устанавливается Неопределено;
- анализ значений в данных типа Массив, Структура, Соответствие выполняется рекурсивно
// Сервер
Результат = ОбщегоНазначения.ХранилищеСистемныхНастроекЗагрузить(КлючОбъекта, КлючНастроек, ЗначениеПоУмолчанию, ОписаниеНастроек, ИмяПользователя)
// Клиент
Результат = ОбщегоНазначенияВызовСервера.ХранилищеСистемныхНастроекЗагрузить(КлючОбъекта, КлючНастроек, ЗначениеПоУмолчанию, ОписаниеНастроек, ИмяПользователя)
Сохраняет несколько настроек в хранилище общих настроек, как метод платформы Сохранить,
объектов СтандартноеХранилищеНастроекМенеджер или ХранилищеНастроекМенеджер.<Имя хранилища>,
но с поддержкой длины ключа настроек более 128 символов путем хеширования части,
которая превышает 96 символов.
Если нет права СохранениеДанныхПользователя, сохранение пропускается без ошибки.
// Сервер
ОбщегоНазначения.ХранилищеОбщихНастроекСохранитьМассив(НесколькоНастроек, ОбновитьПовторноИспользуемыеЗначения)
// Клиент
ОбщегоНазначенияВызовСервера.ХранилищеОбщихНастроекСохранитьМассив(НесколькоНастроек, ОбновитьПовторноИспользуемыеЗначения)
Удаляет настройку из хранилища системных настроек, как метод платформы Удалить,
объекта СтандартноеХранилищеНастроекМенеджер, но с поддержкой длины ключа настроек
более 128 символов путем хеширования части, которая превышает 96 символов.
Если нет права СохранениеДанныхПользователя, удаление пропускается без ошибки.
// Сервер
ОбщегоНазначения.ХранилищеСистемныхНастроекУдалить(КлючОбъекта, КлючНастроек, ИмяПользователя)
// Клиент
ОбщегоНазначенияВызовСервера.ХранилищеСистемныхНастроекУдалить(КлючОбъекта, КлючНастроек, ИмяПользователя)
Удаляет настройку из хранилища настроек данных форм, как метод платформы Удалить,
объектов СтандартноеХранилищеНастроекМенеджер или ХранилищеНастроекМенеджер.<Имя хранилища>,
но с поддержкой длины ключа настроек более 128 символов путем хеширования части,
которая превышает 96 символов.
Если нет права СохранениеДанныхПользователя, удаление пропускается без ошибки.
ОбщегоНазначенияВызовСервера.ХранилищеНастроекДанныхФормУдалить(КлючОбъекта, КлючНастроек, ИмяПользователя)
Управляет состоянием поля табличного документа - выводит в поле табличного документа статус "НеИспользовать", "Неактуальность", "ФормированиеОтчета"
ОбщегоНазначенияКлиентСервер.УстановитьСостояниеПоляТабличногоДокумента(ПолеТабличногоДокумента, Состояние)
Возвращает текущую дату, приведенную к часовому поясу сеанса. Предназначена для использования вместо функции ТекущаяДата() в клиентском кодев тех случаях, когда нет возможности перевести выполнение алгоритма в серверный код. Функция возвращает время, близкое к результату функции ТекущаяДатаСеанса в серверном коде. Погрешность обусловлена временем выполнения серверного вызова. Кроме того, если на клиентском компьютере перевести время, то функция учтет это изменение не сразу, а только после следующего сброса кеша повторно используемых значений(см. также метод ОбновитьПовторноИспользуемыеЗначения). Поэтому алгоритмы, для которых точное время критически важно, следует размещать в серверном коде,а не в клиентском.
Результат = ОбщегоНазначенияКлиент.ДатаСеанса()
Возвращает значение настройки рабочей даты для пользователя или текущей даты сеанса, если рабочая дата пользователя не задана.
Результат = ОбщегоНазначения.ТекущаяДатаПользователя(ИмяПользователя)
Возвращает универсальную дату сеанса, получаемую из текущей даты сеанса. Функция возвращает время, близкое к результату функции УниверсальноеВремя() в серверном контексте. Погрешность обусловлена временем выполнения серверного вызова. Предназначена для использования вместо функции УниверсальноеВремя().
Результат = ОбщегоНазначенияКлиент.ДатаУниверсальная()
Преобразует локальную дату к формату "YYYY-MM-DDThh:mm:ssTZD" согласно ISO 8601.
// Сервер
Результат = ОбщегоНазначения.ПредставлениеЛокальнойДатыСоСмещением(ЛокальнаяДата)
// Клиент
Результат = ОбщегоНазначенияКлиент.ПредставлениеЛокальнойДатыСоСмещением(ЛокальнаяДата)
Возвращает значение настройки рабочей даты для пользователя.
Результат = ОбщегоНазначения.РабочаяДатаПользователя(ИмяПользователя)
Возвращает строковое представление интервала между переданными датами или относительно переданной даты и текущей даты сеанса.
Результат = ОбщегоНазначения.ИнтервалВремениСтрокой(ВремяНачала, ВремяОкончания);
// Результат = "менее одного дня"
// Результат = "3 дня"
// Результат = "более месяца"
// Результат = "более года"
В локальном режиме работы возвращает регламентные задания, соответствующие отбору. В модели сервиса - таблицу значений, в которой содержится описание найденных заданий в справочнике ОчередьЗаданий.
Отбор = Новый Структура();
Отбор.Вставить("Метаданные", "ОтправкаОтчетностиВБанк");
Задания = РегламентныеЗаданияСервер.НайтиЗадания(Отбор);
Изменяет задание очереди или регламентное.
В модели сервиса (разделение включено):
- в случае вызова в транзакции на задание устанавливается объектная блокировка,
- если задание создано на основе шаблона или предопределенное, может быть указано
только свойство Использование в параметре Параметры. Расписание в этом случае,
изменять нельзя, т.к. оно хранится централизованно в неразделенном Шаблоне задания,
отдельно для каждой области оно не сохраняется.
ПараметрыЗадания = Новый Структура;
ПараметрыЗадания.Вставить("Расписание", Расписание);
РегламентныеЗаданияСервер.ИзменитьЗадание(РегламентноеЗадание, ПараметрыЗадания);
Добавляет новое регламентное задание или новое задание в очередь при работе в модели сервиса.
ПараметрыЗадания = Новый Структура;
ПараметрыЗадания.Вставить("Расписание", Расписание);
ПараметрыЗадания.Вставить("Использование", Истина);
ПараметрыЗадания.Вставить("Метаданные", Метаданные.РегламентныеЗадания.ПроверкаВеденияУчета);
РегламентноеЗадание = РегламентныеЗаданияСервер.ДобавитьЗадание(ПараметрыЗадания);
Возвращает регламентное задание или задание из очереди при работе в модели сервиса.
Задание = РегламентныеЗаданияСервер.Задание(ИдентификаторЗадания);
Если Задание <> Неопределено Тогда
Форма.Расписание = Задание.Расписание;
Форма.РегламентноеЗаданиеИспользуется = Задание.Использование;
Форма.РасписаниеСтрокой = Строка(Форма.Расписание);
КонецЕсли;
Удаляет регламентное задание или задание из очереди при работе в модели сервиса.
Если ЗначениеЗаполнено(РегламентноеЗадание) Тогда
УстановитьПривилегированныйРежим(Истина);
РегламентныеЗаданияСервер.УдалитьЗадание(РегламентноеЗадание);
УстановитьПривилегированныйРежим(Ложь);
КонецЕсли;
Возвращает уникальный идентификатор задания из очереди или регламентного.
Для вызова требуются права администрирования или УстановитьПривилегированныйРежим.
УстановитьПривилегированныйРежим(Истина);
ИдентификаторЗадания = РегламентныеЗаданияСервер.УникальныйИдентификатор(Метаданные.РегламентныеЗадания.РассылкаОтчетов);
Возвращает признак установленной блокировки работы с внешними ресурсами. Такая блокировка устанавливается, например, при работе в копии БД.
Элементы.ГруппаРаботаСВнешнимиРесурсами.Видимость = Не РегламентныеЗаданияСервер.РаботаСВнешнимиРесурсамиЗаблокирована();
Возвращает РегламентноеЗадание из информационной базы.
В модели сервиса работает с регламентными заданиями платформы, а не с заданиями очереди, одинаково как в разделенном, так и в неразделенном режимах.
Результат = РегламентныеЗаданияСервер.ПолучитьРегламентноеЗадание(Идентификатор);
Устанавливает использование регламентного задания.
Перед вызовом требуется иметь право администрирования или УстановитьПривилегированныйРежим.
В модели сервиса работает с регламентными заданиями платформы, а не с заданиями очереди,
одинаково как в разделенном, так и в неразделенном режимах.
УстановитьПривилегированныйРежим(Истина);
РегламентныеЗаданияСервер.УстановитьИспользованиеРегламентногоЗадания(
Метаданные.РегламентныеЗадания.СинхронизацияДанныхСПриложениемВИнтернете, Ложь);
Устанавливает расписание регламентного задания.
Перед вызовом требуется иметь право администрирования или УстановитьПривилегированныйРежим.
В модели сервиса работает с регламентными заданиями платформы, а не с заданиями очереди,
одинаково как в разделенном, так и в неразделенном режимах.
УстановитьПривилегированныйРежим();
РасписаниеЗадания = Новый РасписаниеРегламентногоЗадания;
РасписаниеЗадания.ПериодПовтораДней = 1;
РасписаниеЗадания.ПериодПовтораВТечениеДня = 43200; // Каждые 12 часов.
РегламентныеЗаданияСервер.УстановитьРасписаниеРегламентногоЗадания(
ИдентификаторЗадания,
РасписаниеЗадания);
Запускает фоновое задание с проверкой вызываемой процедуры.
Задание = ОбщегоНазначения.ВыполнитьФоновоеЗадание(ИмяМетода, ПараметрыВыполнения);
Устанавливает исключительную управляемую блокировку для записи регламентных заданий. Технически, блокировка устанавливается на регистр сведений КэшПрограммныхИнтерфейсов.
РегламентныеЗаданияСервер.ЗаблокироватьРегламентноеЗадание(РегламентноеЗадание);
Преобразует структуру в РасписаниеРегламентногоЗадания.
РасписаниеЗначение = ОбщегоНазначенияКлиентСервер.СтруктураВРасписание(Расписание);
Запускает фоновое задание по регламентному заданию или выполняет его метод не в фоне. Пользователь для запуска всегда текущий (платформа не дает возможности его указать).
ФоновоеЗадание = РегламентныеЗаданияСервер.ВыполнитьЗадание(Задание, ПараметрыВыполненияЗадания);
Преобразует РасписаниеРегламентногоЗадания в структуру.
Результат = ОбщегоНазначенияКлиентСервер.РасписаниеВСтруктуру(Новое РасписаниеРегламентногоЗадания)
Описание
Расписание = РегламентныеЗаданияСервер.РасписаниеРегламентногоЗадания(Задания.УникальныйИдентификатор, Истина);
Конструктор параметров для функции ВыполнитьЗадание.
ПараметрыВыполнения = РегламентныеЗаданияСервер.НовыеПараметрыВыполненияЗадания();
Устанавливает требуемые значения параметров регламентного задания. В модели сервиса для задания, созданного на основе шаблона очереди заданий, может быть изменено только значение свойства Использование.
РегламентныеЗаданияСервер.УстановитьПараметрыРегламентногоЗадания(
Метаданные.РегламентныеЗадания.ЗагрузкаКурсовВалют, ИзменяемыеПараметры);
Изменяет регламентное задание (без учета очереди заданий модели сервиса).
РегламентныеЗаданияСервер.ИзменитьРегламентноеЗадание(Идентификатор, ПараметрыЗадания);
Разрешает работу с внешними ресурсами
РегламентныеЗаданияСервер.РазблокироватьРаботуСВнешнимиРесурсами()
Добавляет новое регламентное задание (без учета очереди заданий модели сервиса).
Задание = РегламентныеЗаданияСервер.ДобавитьРегламентноеЗадание(ПараметрыЗадания);
Возвращает использование регламентного задания.
Перед вызовом требуется иметь право администрирования или УстановитьПривилегированныйРежим.
В модели сервиса работает с регламентными заданиями платформы, а не с заданиями очереди,
одинаково как в разделенном, так и в неразделенном режимах.
УстановитьПривилегированныйРежим(Истина);
СинхронизироватьДанныеПоРасписанию = РегламентныеЗаданияСервер.РегламентноеЗаданиеИспользуется(
Метаданные.РегламентныеЗадания.СинхронизацияДанныхСПриложениемВИнтернете);
Возвращает результаты последнего запуска указанного регламентного задания. В том числе, если оно было запущено вручную из обработки "Регламентные и фоновые задания".
СвойстваПоследнегоЗадания = РегламентныеЗаданияСервер.СвойстваПоследнегоЗадания(ОбщееРегламентноеЗадание);
Устанавливает использование предопределенного регламентного задания.
РегламентныеЗаданияСервер.УстановитьИспользованиеПредопределенногоРегламентногоЗадания(
Метаданные.РегламентныеЗадания.УдалениеУстаревшихПараметровРаботыВерсийРасширений, Включить);
Запрещает работу с внешними ресурсами.
РегламентныеЗаданияСервер.ЗаблокироватьРаботуСВнешнимиРесурсами();
Параметры: МассивФоновыхЗаданий - Массив из ФоновоеЗадание ПоследнееФоновоеЗадание - ФоновоеЗадание - Неопределено Возвращаемое значение: ФоновоеЗадание, Неопределено
ПоследнееФоновоеЗадание = РегламентныеЗаданияСервер.ПоследнееФоновоеЗаданиеВМассиве(ВсеФоновыеЗадания);
Удаляет непредопределенное регламентное задание (без учета очереди заданий модели сервиса).
РегламентныеЗаданияСервер.УдалитьРегламентноеЗадание(Идентификатор);
Предназначена для ограничения прав, доступных в сеансе регламентного задания или для работы с системой взаимодействия. Когда список пользователей ИБ не пустой, создает и назначает регламентному заданию служебного пользователя для запуска, не имеющего никаких прав и никакой аутентификации (не требуется).
РегламентныеЗаданияСервер.УстановитьСлужебногоПользователяРегламентногоЗадания(
Метаданные.РегламентныеЗадания.ЗагрузкаКурсовВалют);
Открывает навигационную ссылку в программе, которая ассоциирована с протоколом навигационной ссылки. Допустимые протоколы: http, https, e1c, v8help, mailto, tel, skype. Для открытия проводника или файла в программе просмотра не следует формировать ссылку по протоколу file:// - для открытия проводника см. ОткрытьПроводник. - для открытия файла по расширению см. ОткрытьФайлВПрограммеПросмотра.
ФайловаяСистемаКлиент.ОткрытьНавигационнуюСсылку("e1cib/navigationpoint/startpage"); // начальная страница.
ФайловаяСистемаКлиент.ОткрытьНавигационнуюСсылку("v8help://1cv8/QueryLanguageFullTextSearchInData");
ФайловаяСистемаКлиент.ОткрытьНавигационнуюСсылку("https://1c.ru");
ФайловаяСистемаКлиент.ОткрытьНавигационнуюСсылку("mailto:help@1c.ru");
ФайловаяСистемаКлиент.ОткрытьНавигационнуюСсылку("skype:echo123?call");
Запускает внешнюю программу на исполнение (например, *.exe, *bat), или системную команду (например, ping, tracert или traceroute, обращаться к rac-клиенту). Позволяет также получать код возврата и значения потоков вывода (stdout) и ошибок (stderr) При запуске внешней программы в пакетном режиме поток вывода и поток ошибок может возвращаться на не ожидаемом языке. Для того чтобы передать внешней программе язык, на котором ожидается результат следует: - указать язык в параметре запуска этой программы (если такой параметр предусмотрен). Например, в пакетном режиме платформы 1С:Предприятие предусмотрен ключ "/L en"; - в других случаях явно установить кодировку исполнения пакетной команды. См. свойство КодировкаИсполнения возвращаемого значения ФайловаяСистема.ПараметрыЗапускаПрограммы.
// Сервер
// Простой запуск
ФайловаяСистема.ЗапуститьПрограмму("calc");
// Запуск с ожиданием завершения
ПараметрыЗапускаПрограммы = ФайловаяСистема.ПараметрыЗапускаПрограммы();
ПараметрыЗапускаПрограммы.ДождатьсяЗавершения = Истина;
ФайловаяСистема.ЗапуститьПрограмму("C:\Program Files\1cv8\common\1cestart.exe",
ПараметрыЗапускаПрограммы);
// Запуск с ожиданием завершения и получением потока вывода
ПараметрыЗапускаПрограммы = ФайловаяСистема.ПараметрыЗапускаПрограммы();
ПараметрыЗапускаПрограммы.ДождатьсяЗавершения = Истина;
ПараметрыЗапускаПрограммы.ПолучитьПотокВывода = Истина;
Результат = ФайловаяСистема("ping 127.0.0.1 -n 5", ПараметрыЗапускаПрограммы);
ОбщегоНазначений.СообщитьПользователю(Результат.ПотокВывода);
// Запуск с ожиданием завершения и получением потока вывода и с конкатенацией команды запуска
ПараметрыЗапускаПрограммы = ФайловаяСистема.ПараметрыЗапускаПрограммы();
ПараметрыЗапускаПрограммы.ДождатьсяЗавершения = Истина;
ПараметрыЗапускаПрограммы.ПолучитьПотокВывода = Истина;
КомандаЗапуска = Новый Массив;
КомандаЗапуска.Добавить("ping");
КомандаЗапуска.Добавить("127.0.0.1");
КомандаЗапуска.Добавить("-n");
КомандаЗапуска.Добавить(5);
Результат = ФайловаяСистема.ЗапуститьПрограмму(КомандаЗапуска, ПараметрыЗапускаПрограммы);
ОбщегоНазначений.СообщитьПользователю(Результат.ПотокВывода);
// Клиент
// Простой запуск
ФайловаяСистемаКлиент.ЗапуститьПрограмму("calc");
// Запуск с ожиданием завершения и получения кода возврата:
ПараметрыЗапускаПрограммы = ФайловаяСистемаКлиент.ПараметрыЗапускаПрограммы();
ПараметрыЗапускаПрограммы.ДождатьсяЗавершения = Истина;
ПараметрыЗапускаПрограммы.ПолучитьПотокВывода = Истина;
ПараметрыЗапускаПрограммы.ПолучитьПотокОшибок = Истина;
Результат = ФайловаяСистемаКлиент.ЗапуститьПрограмму("ping 127.0.0.1 -n 5", ПараметрыЗапускаПрограммы);
КодВозврата = Результат.КодВозврата;
ПотокВывода = Результат.ПотокВывода;
Открывает файл для просмотра или редактирования. Если файл открывается из двоичных данных во временном хранилище, предварительно сохраняет его во временный каталог.
ФайловаяСистемаКлиент.ОткрытьФайл(РасположениеФайла, ОбработчикЗавершения, ИмяФайла, ПараметрыОткрытия)
Конструктор параметров для ФайловаяСистемаКлиент.ЗапуститьПрограмму.
Результат = ФайловаяСистемаКлиент.ПараметрыЗапускаПрограммы()
Открывает проводник с указанным путем. Если передан путь к файлу, то выполняет позиционирование курсора в проводнике на этом файле.
// Для Windows
ФайловаяСистемаКлиент.ОткрытьПроводник("C:\Users");
ФайловаяСистемаКлиент.ОткрытьПроводник("C:\Program Files\1cv8\common\1cestart.exe");
// Для Linux
ФайловаяСистемаКлиент.ОткрытьПроводник("/home/");
ФайловаяСистемаКлиент.ОткрытьПроводник("/opt/1C/v8.3/x86_64/1cv8c");
Разбирает строку URI на составные части и возвращает в виде структуры. На основе RFC 3986.
Результат = ОбщегоНазначенияКлиентСервер.СтруктураURI(СтрокаURI)
Создает объект описания защищенного соединения OpenSSL. См. также описание объекта ЗащищенноеСоединениеOpenSSL в синтаксис-помощнике.
Результат = ОбщегоНазначенияКлиентСервер.НовоеЗащищенноеСоединение(СертификатКлиента, СертификатыУдостоверяющихЦентров)
Проверяет, что разрешена работа с Интернет-сервисами из приложения.
ЦентрализованноРазрешенаРаботаСНовостямиЧерезИнтернет = ОбщегоНазначения.РазделениеВключено() ИЛИ ОбщегоНазначения.РазрешенДоступКИнтернетСервисам();
Возвращает структуру параметров для функции СоздатьWSПрокси.
ПараметрыПодключения = ОбщегоНазначения.ПараметрыПодключенияWSПрокси();
Текст ошибки при отключенном доступе к сервисам интернета.
|%1'"), ОбщегоНазначения.ЗапрещенДоступКИнтернетСервисамТекстСообщения()));
Записывает конфиденциальные данные в безопасное хранилище. Вызывающий код должен самостоятельно устанавливать привилегированный режим. Безопасное хранилище недоступно для чтения пользователям (кроме администраторов), а доступно только коду, который делает обращения только к своей части данных и в том контексте, который предполагает чтение или запись конфиденциальных данных.
Процедура ПриЗаписиНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
Если ТекущийПользовательМожетИзменятьПароль Тогда
УстановитьПривилегированныйРежим(Истина);
ОбщегоНазначения.ЗаписатьДанныеВБезопасноеХранилище(ТекущийОбъект.Ссылка, Логин, "Логин");
ОбщегоНазначения.ЗаписатьДанныеВБезопасноеХранилище(ТекущийОбъект.Ссылка, Пароль);
УстановитьПривилегированныйРежим(Ложь);
КонецЕсли;
КонецПроцедуры
Процедура ПриЗаписиНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
Если ТекущийПользовательМожетИзменятьПароль Тогда
ЛогинИПароль = Новый Структура;
ЛогинИПароль.Вставить("Логин", Логин);
ЛогинИПароль.Вставить("Пароль", Пароль);
УстановитьПривилегированныйРежим(Истина);
ОбщегоНазначения.ЗаписатьДанныеВБезопасноеХранилище(ТекущийОбъект.Ссылка, ЛогинИПароль, Неопределено);
УстановитьПривилегированныйРежим(Ложь);
КонецЕсли;
КонецПроцедуры
Возвращает данные из безопасного хранилища. Вызывающий код должен самостоятельно устанавливать привилегированный режим. Безопасное хранилище недоступно для чтения пользователям (кроме администраторов), а доступно только коду, который делает обращения только к своей части данных и в том контексте, который предполагает чтение или запись конфиденциальных данных.
Если ТекущийПользовательМожетИзменятьПароль Тогда
УстановитьПривилегированныйРежим(Истина);
Логин = ОбщегоНазначения.ПрочитатьДанныеИзБезопасногоХранилища(ТекущийОбъект.Ссылка, "Логин");
Пароль = ОбщегоНазначения.ПрочитатьДанныеИзБезопасногоХранилища(ТекущийОбъект.Ссылка);
УстановитьПривилегированныйРежим(Ложь);
Иначе
Элементы.ГруппаЛогинИПароль.Видимость = Ложь;
КонецЕсли;
УстановитьПривилегированныйРежим(Истина);
ЛогинИПароль = ОбщегоНазначения.ПрочитатьДанныеИзБезопасногоХранилища(ТекущийОбъект.Ссылка, Неопределено);
Удаляет конфиденциальные данные в безопасное хранилище. Вызывающий код должен самостоятельно устанавливать привилегированный режим. Безопасное хранилище недоступно для чтения пользователям (кроме администраторов), а доступно только коду, который делает обращения только к своей части данных и в том контексте, который предполагает чтение или запись конфиденциальных данных.
Процедура ПередУдалением(Отказ)
// Проверка значения свойства ОбменДанными.Загрузка отсутствует, так как удалять данные
// из безопасного хранилища нужно даже при удалении объекта при обмене данными.
УстановитьПривилегированныйРежим(Истина);
ОбщегоНазначения.УдалитьДанныеИзБезопасногоХранилища(Ссылка);
УстановитьПривилегированныйРежим(Ложь);
КонецПроцедуры
Преобразует (сериализует) любое значение в XML-строку. Преобразованы в могут быть только те объекты, для которых в синтакс-помощнике указано, что они сериализуются. //infostart.ru/1c/tools/311011/
// тест
Результат = ОбщегоНазначения.ЗначениеВСтрокуXML("тест")
//
// f93e113e-c83a-11e2-8026-0015e9b8c48d
//
Результат = ОбщегоНазначения.ЗначениеВСтрокуXML(Номенклатура)
// Метод в основном используется для сохранения/загрузки настроек
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
СтрокаXML = ПолучитьИзВременногоХранилища(Параметры.АдресВоВременномХранилище);
Ведомость = ОбщегоНазначения.ЗначениеИзСтрокиXML(СтрокаXML); // ТЗ из XML строки
Обработка = РеквизитФормыВЗначение("Объект");
Обработка.Зарплата.Загрузить(Ведомость.Зарплата.Выгрузить());
КонецПроцедуры
&НаСервере
Процедура ЗаписатьНаСервере()
СтрокаXML = ПолучитьИзВременногоХранилища(АдресВоВременномХранилище);
Ведомость = ОбщегоНазначения.ЗначениеИзСтрокиXML(СтрокаXML); // ТЗ из XML строки
Обработка = РеквизитФормыВЗначение("Объект");
Ведомость.Зарплата.Загрузить(Обработка.Зарплата.Выгрузить());
СтрокаXML = ОбщегоНазначения.ЗначениеВСтрокуXML(Ведомость); // ТЗ в XML строку
ПоместитьВоВременноеХранилище(СтрокаXML, АдресВоВременномХранилище);
КонецПроцедуры
Выполняет преобразование (десериализацию) XML-строки в значение.
Результат = ОбщегоНазначения.ЗначениеИзСтрокиXML(СтрокаXML)
Заменяет недопустимые символы в XML-строке на заданные символы.
Результат = ОбщегоНазначенияКлиентСервер.ЗаменитьНедопустимыеСимволыXML(Текст, СимволЗамены)
Возвращает XML-представление XDTO-объекта.
Результат = ОбщегоНазначения.ОбъектXDTOВСтрокуXML(ОбъектXDTO, Фабрика)
Формирует XDTO-объект по XML-представлению.
Результат = ОбщегоНазначения.ОбъектXDTOИзСтрокиXML(СтрокаXML, Фабрика)
Удаляет недопустимые символы в XML-строке.
Результат = ОбщегоНазначенияКлиентСервер.УдалитьНедопустимыеСимволыXML(Текст)
Сравнить две строки версий.
Результат = ОбщегоНазначенияКлиентСервер.СравнитьВерсии(СтрокаВерсии1, СтрокаВерсии2)
Получает номер версии конфигурации без номера сборки.
Результат = ОбщегоНазначенияКлиентСервер.ВерсияКонфигурацииБезНомераСборки(Версия)
Сравнить две строки версий.
Результат = ОбщегоНазначенияКлиентСервер.СравнитьВерсииБезНомераСборки(СтрокаВерсии1, СтрокаВерсии2)
Выполнить экспортную процедуру по имени с уровнем привилегий конфигурации. При включении профилей безопасности для вызова оператора Выполнить() используется переход в безопасный режим с профилем безопасности, используемым для информационной базы (если выше по стеку не был установлен другой безопасный режим).
Параметры = Новый Массив();
Параметры.Добавить("1");
ОбщегоНазначения.ВыполнитьМетодКонфигурации("МойОбщийМодуль.МояПроцедура", Параметры);
Вычисляет переданное выражение, предварительно устанавливая безопасный режим выполнения кода и безопасный режим разделения данных для всех разделителей, присутствующих в составе конфигурации.
// Пример 1
Параметры = Новый Структура;
Параметры.Вставить("Значение1", 1);
Параметры.Вставить("Значение2", 10);
Результат = ОбщегоНазначения.ВычислитьВБезопасномРежиме("Параметры.Значение1 = Параметры.Значение2", Параметры);
// Пример 2
Результат = ОбщегоНазначения.ВычислитьВБезопасномРежиме("СтандартныеПодсистемыСервер.ВерсияБиблиотеки()");
Выполнить экспортную процедуру объекта встроенного языка по имени. При включении профилей безопасности для вызова оператора Выполнить() используется переход в безопасный режим с профилем безопасности, используемым для информационной базы (если выше по стеку не был установлен другой безопасный режим).
ОбщегоНазначения.ВыполнитьМетодОбъекта(Объект, ИмяМетода, Параметры)
Вычисляет переданное выражение, предварительно устанавливая безопасный режим выполнения кода и безопасный режим разделения данных для всех разделителей, присутствующих в составе конфигурации.
// Пример 1
Параметры = Новый Структура;
Параметры.Вставить("Значение1", 1);
Параметры.Вставить("Значение2", 10);
Результат = ОбщегоНазначения.ВычислитьВБезопасномРежиме("Параметры.Значение1 = Параметры.Значение2", Параметры);
// Пример 2
Результат = ОбщегоНазначения.ВычислитьВБезопасномРежиме("СтандартныеПодсистемыСервер.ВерсияБиблиотеки()");
Возвращает описание защиты от опасных действий с отключенными предупреждениями.
Результат = ОбщегоНазначения.ОписаниеЗащитыБезПредупреждений()
Записывает сообщение в журнал регистрации. Если параметр ЗаписатьСобытия = Истина, то запись выполняется сразу (обращение к серверу). Если ЗаписатьСобытия = Ложь (по умолчанию), то сообщение помещается в очередь, которая может быть записана позднее, при следующем вызове этой или другой процедуры, в которую передается в качестве параметра очередь СообщенияДляЖурналаРегистрации.
ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(СобытиеЖурналаРегистрации(), "Предупреждение",
НСтр("ru = 'Невозможно подключиться к сети Интернет для проверки обновлений.'"));
Открывает форму журнала регистрации с установленным отбором.
ЖурналРегистрацииКлиент.ОткрытьЖурналРегистрации(Отбор, Владелец)
Процедура пакетной записи сообщений в журнал регистрации. После записи переменная СобытияДляЖурналаРегистрации очищается.
ЖурналРегистрацииКлиент.ЗаписатьСобытияВЖурналРегистрации();
Выполняет чтение событий журнала регистрации в соответствии с установленным отбором.
ДлительнаяОперация = ДлительныеОперации.ВыполнитьВФоне("ЖурналРегистрации.ПрочитатьСобытияЖурналаРегистрации",
ПараметрыОтчета, ПараметрыВыполнения);
Возвращает адрес файла выгрузки журнала регистрации для техподдержки в формате XML. Отбор записей журнала регистрации в параметре ОтборЖурналаРегистрации соответствует методу ВыгрузитьЖурналРегистрации. Любое свойство отбора может отсутствовать или иметь значение Неопределено, что означает, что отбор не задан.
Возврат ЖурналРегистрации.ЖурналДляТехподдержки(ОтборЖурналаРегистрации, КоличествоПоказываемыхСобытий, УникальныйИдентификатор);
Определяет смещение времени сервера относительно времени программы.
СмещениеВремениСервера = ЖурналРегистрации.СмещениеВремениСервера();
Возвращаемое значение: Булево
ТолькоСтандартныеРазделители = ЖурналРегистрации.ТолькоСтандартныеРазделители();
Открывает форму просмотра события обработки "Журнал регистрации" для отображения в ней подробных данных выбранного события.
ЖурналРегистрацииКлиент.ПросмотрТекущегоСобытияВОтдельномОкне(ЭлементЖурнал().ТекущиеДанные);
Выполняет обработку выбора отдельного события в таблице событий.
ЖурналРегистрацииКлиент.СобытияВыбор(ПараметрыВыбора);
Создает пользовательское представление отбора журнала регистрации.
ЖурналРегистрации.СформироватьПредставлениеОтбора(ПредставлениеОтбора,
ОтборЖурналаРегистрации, ОтборЖурналаРегистрацииПоУмолчанию);
Запрашивает у пользователя ограничение периода и включает его в отбор журнала регистрации.
ЖурналРегистрацииКлиент.УстановитьИнтервалДатДляПросмотра(ИнтервалДат, ОтборЖурналаРегистрации, Оповещение)
Заполняет отбор в соответствии с значением в текущей колонке событий.
Если ЖурналРегистрацииКлиент.УстановитьОтборПоЗначениюВТекущейКолонке(Элемент.ТекущиеДанные,
ИмяТекущегоЭлемента, ОтборЖурналаРегистрации, КолонкиИсключения) Тогда
Параметры: ДанныеСобытия - Строка Возвращаемое значение: Структура - преобразование удалось Неопределено - преобразование не удалось
ДанныеСобытия = ЖурналРегистрации.ДанныеИзСтрокиXML(ДанныеСобытия);
Параметры: ДанныеСтрокой - Строка Возвращаемое значение: Произвольный
ДанныеСобытия = ЖурналРегистрации.ДанныеСобытия(Параметры.ДанныеСтрокой); // Структура
Параметры: ДанныеСобытия - Структура, ФиксированнаяСтруктура ПредставлениеКлючей - см. ПредставлениеКлючейСтруктур - Неопределено - получить автоматически ТолькоЗаполненные - Булево ИсключаемыеСвойства - Соответствие - Неопределено Возвращаемое значение: ДеревоЗначений: * Свойство - Строка * Значени
ДеревоЗначений = ЖурналРегистрации.ДеревоИзДанныхСтруктуры(ТаблицаЗначений);
Открывает форму для просмотра дополнительных данных события.
ЖурналРегистрацииКлиент.ОткрытьДанныеДляПросмотра(ЭлементЖурнал().ТекущиеДанные);
Возвращает пользователя информационной базы, которого можно указать в свойство Пользователь отбора журнала регистрации.
Возврат ЖурналРегистрации.ПользовательИБДляОтбора(ИдентификаторПользователяИБ);
Параметры: Роли - Массив из Строка Возвращаемое значение: ТаблицаЗначений: * Представление - Строка
РолиПользователяИБ = ЖурналРегистрации.ТаблицаРолей(ДанныеСобытия.Роли);
Открывает форму редактирования многострочного комментария.
ОбщегоНазначенияКлиент.ПоказатьФормуРедактированияКомментария(
Элемент.ТекстРедактирования, ЭтотОбъект, "Объект.Комментарий");
Открывает форму редактирования произвольного многострочного текста.
Оповещение = Новый ОписаниеОповещения("КомментарийЗавершениеВвода", ЭтотОбъект);
ОбщегоНазначенияКлиент.ПоказатьФормуРедактированияМногострочногоТекста(Оповещение, Элемент.ТекстРедактирования);
&НаКлиенте
Процедура КомментарийЗавершениеВвода(Знач ВведенныйТекст, Знач ДополнительныеПараметры) Экспорт
Если ВведенныйТекст = Неопределено Тогда
Возврат;
КонецЕсли;
Объект.МногострочныйКомментарий = ВведенныйТекст;
Модифицированность = Истина;
КонецПроцедуры
Возвращает значения параметров, необходимых для работы клиентского кода конфигурации без дополнительных серверных вызовов.
Результат = СтандартныеПодсистемыКлиент.ПараметрыРаботыКлиента()
Возвращает значения параметров, необходимых для работы клиентского кода при запуске конфигурации за один серверный вызов (для минимизации клиент-серверного взаимодействия и снижения времени запуска). С помощью этой функции можно обращаться к параметрам в клиентском коде, вызываемым из обработчиков событий: - ПередНачаломРаботыСистемы, - ПриНачалеРаботыСистемы. В этих обработчиках при запуске недопустимо использовать команды сброса кэша повторно используемых модулей, иначе запуск может привести к непредсказуемым ошибкам и лишним серверным вызовам.
Результат = СтандартныеПодсистемыКлиент.ПараметрыРаботыКлиентаПриЗапуске()
Возвращает новую структуру параметров для вывода предупреждения перед завершением работы программы. Для использования в ОбщегоНазначенияКлиентПереопределяемый.ПередЗавершениемРаботыСистемы.
Результат = СтандартныеПодсистемыКлиент.ПредупреждениеПриЗавершенииРаботы()
Проверяет соответствие ИНН требованиям.
Результат = РегламентированныеДанныеКлиентСервер.ИННСоответствуетТребованиям(ИНН, ЭтоЮридическоеЛицо, ТекстСообщения)
Проверяет соответствие КПП требованиям. Согласно приложению к приказу ФНС России от 29.06.2012 N ММВ-7-6/435@ "Об утверждении Порядка и условий присвоения, применения, а также изменения идентификационного номера налогоплательщика".
Результат = РегламентированныеДанныеКлиентСервер.КППСоответствуетТребованиям(КПП, ТекстСообщения)
Проверяет соответствие ОГРН требованиям.
Результат = РегламентированныеДанныеКлиентСервер.ОГРНСоответствуетТребованиям(ОГРН, ЭтоЮридическоеЛицо, ТекстСообщения)
Проверяет номер страхового свидетельства на соответствие требованиям ПФР.
Результат = РегламентированныеДанныеКлиентСервер.СтраховойНомерПФРСоответствуетТребованиям(СтраховойНомер, ТекстСообщения)
Проверяет соответствие кода ОКПО требованиям стандартов.
Результат = РегламентированныеДанныеКлиентСервер.КодПоОКПОСоответствуетТребованиям(ПроверяемыйКод, ЭтоЮридическоеЛицо, ТекстСообщения)
Проверка контрольного ключа в номере лицевого счета (9-й разряд номера счета), алгоритм установлен документом: "ПОРЯДОК РАСЧЕТА КОНТРОЛЬНОГО КЛЮЧА В НОМЕРЕ ЛИЦЕВОГО СЧЕТА" (утвержден ЦБ РФ 08.09.1997 N 515).
Результат = РегламентированныеДанныеКлиентСервер.КонтрольныйКлючЛицевогоСчетаСоответствуетТребованиям(НомерСчета, БИК, ЭтоБанк)
Выполняет пропорциональное распределение суммы в соответствии с заданными коэффициентами распределения.
Коэффициенты = Новый Массив;
Коэффициенты.Добавить(1);
Коэффициенты.Добавить(2);
Результат = ОбщегоНазначенияКлиентСервер.РаспределитьСуммуПропорциональноКоэффициентам(1, Коэффициенты);
// Результат = [0.33, 0.67]
Преобразует строку в формате JSON в значение при помощи метода глобального контекста ПрочитатьJSON. См. ограничения в синтакс-помощнике. Объекты JSON по умолчанию преобразует в значения типа Соответствие. Имена свойств со значением типа Дата необходимо явно указывать, чтобы было выполнено преобразование. Ожидаемый формат дат - ISO (YYYY-MM-DDThh:mm:ssZ).
Результат = ОбщегоНазначения.JSONВЗначение(Строка, ИменаСвойствСоЗначениямиДата, ПрочитатьВСоответствие)
Преобразует значение в строку JSON при помощи метода глобального контекста ЗаписатьJSON. Допускаются не все типы значений, подробности см. в синтакс-помощнике. Даты преобразуются в формат ISO (YYYY-MM-DDThh:mm:ssZ).
Результат = ОбщегоНазначения.ЗначениеВJSON(Значение)
Добавляет показатель производительности в обработчиках событий // сервер ПриПериодическомПолученииДанныхКлиентаНаСервере // клиент ПередПериодическойОтправкойДанныхКлиентаНаСервер и ПослеПериодическогоПолученияДанныхКлиентаНаСервере.
// Сервер
МоментНачала = ТекущаяУниверсальнаяДатаВМиллисекундах();
Попытка
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ЦентрМониторинга") Тогда
МодульЦентрМониторингаСлужебный = ОбщегоНазначения.ОбщийМодуль("ЦентрМониторингаСлужебный");
МодульЦентрМониторингаСлужебный.ПриПериодическомПолученииДанныхКлиентаНаСервере(Параметры, Результаты);
КонецЕсли;
Исключение
СерверныеОповещения.ОбработатьОшибку(ИнформацияОбОшибке());
КонецПопытки;
СерверныеОповещения.ДобавитьПоказатель(Результаты, МоментНачала,
"ЦентрМониторингаСлужебный.ПриПериодическомПолученииДанныхКлиентаНаСервере");
// Клиент
МоментНачала = ТекущаяУниверсальнаяДатаВМиллисекундах();
Попытка
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.ЦентрМониторинга") Тогда
МодульЦентрМониторингаКлиентСлужебный = ОбщегоНазначенияКлиент.ОбщийМодуль("ЦентрМониторингаКлиентСлужебный");
МодульЦентрМониторингаКлиентСлужебный.ПередПериодическойОтправкойДанныхКлиентаНаСервер(Параметры);
КонецЕсли;
Исключение
СерверныеОповещенияКлиент.ОбработатьОшибку(ИнформацияОбОшибке());
КонецПопытки;
СерверныеОповещенияКлиент.ДобавитьПоказатель(МоментНачала,
"ЦентрМониторингаКлиентСлужебный.ПередПериодическойОтправкойДанныхКлиентаНаСервер");
Добавляет серверное оповещение в очередь для доставки на клиент. Оповещение доставляется через систему взаимодействия, либо забирается в рамках общего серверного вызова.
СерверныеОповещения.ОтправитьСерверноеОповещение(ИмяОповещения, Результат, Адресаты, ОтправитьСразу)
Для процедуры ПриДобавленииСерверныхОповещений общего модуля ОбщегоНазначенияПереопределяемый.
Результат = СерверныеОповещения.НовоеСерверноеОповещение(Имя)
Регистрирует ошибку в журнале регистрации, пойманную в обработчиках события //сервер ПриПериодическомПолученииДанныхКлиентаНаСервере //клиент ПередПериодическойОтправкойДанныхКлиентаНаСервер и ПослеПериодическогоПолученияДанныхКлиентаНаСервере.
// Сервер
МоментНачала = ТекущаяУниверсальнаяДатаВМиллисекундах();
Попытка
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ЦентрМониторинга") Тогда
МодульЦентрМониторингаСлужебный = ОбщегоНазначения.ОбщийМодуль("ЦентрМониторингаСлужебный");
МодульЦентрМониторингаСлужебный.ПриПериодическомПолученииДанныхКлиентаНаСервере(Параметры, Результаты);
КонецЕсли;
Исключение
СерверныеОповещения.ОбработатьОшибку(ИнформацияОбОшибке());
КонецПопытки;
СерверныеОповещения.ДобавитьПоказатель(Результаты, МоментНачала,
"ЦентрМониторингаСлужебный.ПриПериодическомПолученииДанныхКлиентаНаСервере");
// Клиент
МоментНачала = ТекущаяУниверсальнаяДатаВМиллисекундах();
Попытка
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.ЦентрМониторинга") Тогда
МодульЦентрМониторингаКлиентСлужебный = ОбщегоНазначенияКлиент.ОбщийМодуль("ЦентрМониторингаКлиентСлужебный");
МодульЦентрМониторингаКлиентСлужебный.ПередПериодическойОтправкойДанныхКлиентаНаСервер(Параметры);
КонецЕсли;
Исключение
СерверныеОповещенияКлиент.ОбработатьОшибку(ИнформацияОбОшибке());
КонецПопытки;
СерверныеОповещенияКлиент.ДобавитьПоказатель(МоментНачала,
"ЦентрМониторингаКлиентСлужебный.ПередПериодическойОтправкойДанныхКлиентаНаСервер");
Возвращает строковый уникальный ключ сеанса, полученный из свойств сеанса НачалоСеанса и НомерСеанса.
Блокировка.Параметр = СерверныеОповещения.КлючСеанса();
Проверка завершения периодического ожидания для обработчиков события ПередПериодическойОтправкойДанныхКлиентаНаСервер.
ИмяСчетчика = "СтандартныеПодсистемы.ЦентрМониторинга";
Если Не СерверныеОповещенияКлиент.ЗакончилосьВремяОжидания(ИмяСчетчика) Тогда
Возврат;
КонецЕсли;
Параметры: Интервал - Число ПолучитьСейчас - Булево - если указать Истина, тогда при очередной проверке будет серверный вызов с получением накопленных оповещений.
СерверныеОповещенияКлиент.ПодключитьОбработчикПроверкиПолученияСерверныхОповещений(1, Истина);
Обработчик общего серверного вызова.
"СерверныеОповещения.НедоставленныеСерверныеОповещенияСеанса",
Обработчик фонового задания.
ФоновыеЗадания.Выполнить("СерверныеОповещения.ДоставкаСерверныхОповещенийСОтсрочкой",,, НаименованиеЗадания);
Возвращаемое значение: Структура: * ИмяОповещения - см. ОтправитьСерверноеОповещение.ИмяОповещения * Результат - см. ОтправитьСерверноеОповещение.Результат * Адресаты - см. ОтправитьСерверноеОповещение.Адресаты * ИдентификаторОповещения - Строка - строка уникального идентификатора. * ДатаДобавления
Возвращаемое значение: Структура: * ИдентификаторГруппы - УникальныйИдентификатор - идентификатор группы оповещений для записи регистр. - Неопределено - не заполнять. * ВидОповещенияВГруппе - УникальныйИдентификатор - идентификатор вида оповещения в группе оповещений. - Неопределено - не заполнять.
ДополнительныеПараметрыОтправки = СерверныеОповещения.ДополнительныеПараметрыОтправки();
Возвращаемое значение: Структура: * ДатаПоследнегоОповещения - Дата * ДополнительныеПараметры - Соответствие * СообщенияДляЖурналаРегистрации - Неопределено, СписокЗначений * ПериодическаяОтправкаДанных - Булево * РегистрироватьПоказатели - Булево
Параметры: ИмяОповещения - см. ОтправитьСерверноеОповещение.ИмяОповещения Результат - см. ОтправитьСерверноеОповещение.Результат Адресаты - см. ОтправитьСерверноеОповещение.Адресаты ОтправитьСразу - см. ОтправитьСерверноеОповещение.ОтправитьСразу ДополнительныеПараметры - см. ДополнительныеПараметры
СерверныеОповещения.ОтправитьСерверноеОповещениеСИдентификаторомГруппы(ИмяОповещения(),
ПараметрыОповещения, Адресаты, Не ЗаписатьСообщенияПользователю, ДополнительныеПараметрыОтправки);
Возвращаемое значение: Структура: * КлючСеанса - см. КлючСеанса * ИдентификаторПользователяИБ - УникальныйИдентификатор - идентификатор текущего пользователя. * ДатаПоследнегоОповещения - Дата * Оповещения - см. ОбщегоНазначенияПереопределяемый.ПриДобавленииСерверныхОповещений.Оповещения * Минимальн
Параметры: ИдентификаторГруппы - УникальныйИдентификатор - идентификатор группы оповещений для поиска записей регистре. ВидОповещенияВГруппе - УникальныйИдентификатор - идентификатор вида оповещения в группе оповещений для поиска записей регистре. ПоследнееОповещение - см. НовоеСерверноеОповещенияДл
Оповещения = СерверныеОповещения.СерверныеОповещенияДляКлиента(ИдентификаторЗадания,
ИдентификаторВидаОповещения(ВидОповещений), ПоследнееОповещение);
См. НовоеСостояниеПолучения
Возврат ?(СерверныеОповещенияКлиент.СостояниеПолучения().УведомленияКлиентаДоступны, 180, 30);
Формирует краткое представление из полного имени физического лица.
Результат = ФизическиеЛицаКлиентСервер.ФамилияИнициалы("Петров Василий Иванович");
- возвращает "Петров В. И.".
Раскладывает полное имя физического лица на составные части - фамилию, имя и отчество. Если в конце полного имени встречаются "оглы", "улы", "уулу", "кызы" или "гызы", то они также считаются частью отчества.
1. ФизическиеЛицаКлиентСервер.ЧастиИмени("Иванов Иван Иванович")
//вернет структуру со значениями свойств: "Иванов", "Иван", "Иванович".
2. ФизическиеЛицаКлиентСервер.ЧастиИмени("Смит Джон")
//вернет структуру со значениями свойств: "Смит", "Джон", "".
3. ФизическиеЛицаКлиентСервер.ЧастиИмени("Алиев Ахмед Октай оглы")
//вернет структуру со значениями свойств: "Алиев", "Ахмед", "Октай оглы".
Проверяет, верно ли написано ФИО физического лица. ФИО считается верным, если содержит только кириллицу, либо только латиницу.
Результат = ФизическиеЛицаКлиентСервер.ФИОНаписаноВерно(ФИО, ТолькоКириллица)
Проверяет email-адрес на соответствие требованиям стандартов RFC 5321, RFC 5322, а также RFC 5335, RFC 5336 и RFC 3696. Кроме того, функция ограничивает использование спецсимволов.
Результат = ОбщегоНазначенияКлиентСервер.АдресЭлектроннойПочтыСоответствуетТребованиям(Адрес, РазрешитьЛокальныеАдреса)
Проверяет, что введенная строка с email-адресами введена правильно. Формат строки: Z = ИмяПользователя|[Имя Пользователя] [<]пользователь@почтовый_сервер[>], Строка = Z[<разделитель*>Z]. Прим.: разделитель* - имеется ввиду любой разделитель адресов.
Результат = ОбщегоНазначенияКлиентСервер.РазобратьСтрокуСПочтовымиАдресами(Адреса, ВызыватьИсключение)
Разбирает строку с адресами электронной почты. При разборе проверяет корректность адресов.
Результат = ОбщегоНазначенияКлиентСервер.АдресаЭлектроннойПочтыИзСтроки(СписокАдресов)
Свойства фильтра сеансов. Для использования в функциях СеансыИнформационнойБазы, УдалитьСеансыИнформационнойБазы и аналогичных.
Свойства фильтра соединений. Для использования в функциях СоединенияСИнформационнойБазой, РазорватьСоединенияСИнформационнойБазой и аналогичных.
Свойства блокировки сеансов и регламентных заданий информационной базы.
Результат = АдминистрированиеКластера.СвойстваБлокировкиСеансовИРегламентныхЗаданий();
Свойства соединения с информационной базой.
Результат = АдминистрированиеКластера.СвойстваСоединения();
Удаляет сеансы с информационной базой по фильтру. Параметр ПараметрыАдминистрированияИБ может быть опущен в том случае, если аналогичные поля указаны в параметре ПараметрыАдминистрированияКластера. Если в параметре Фильтр задана структура (см. АдминистрированиеКластера.ФильтрСеансов), то сравнение всегда выполняется на равенство.
АдминистрированиеКластера.УдалитьСеансыИнформационнойБазы(ПараметрыАдминистрированияКластера, ПараметрыАдминистрированияИБ, Фильтр)
Проверяет корректность параметров администрирования.
АдминистрированиеКластера.ПроверитьПараметрыАдминистрирования(ПараметрыАдминистрирования,,
Параметры.ЗапрашиватьПараметрыАдминистрированияКластера, Параметры.ЗапрашиватьПараметрыАдминистрированияИБ);
Возвращает описания соединений с информационной базой.
Результат = АдминистрированиеКластера.СвойстваСоединений(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИдентификаторИнформационнойБазы, ПараметрыАдминистрированияИнформационнойБазы, Фильтр, ИспользоватьСловарь)
Назначает для информационной базы использование профиля безопасности.
АдминистрированиеКластера.УстановитьПрофильБезопасностиИнформационнойБазы(ПараметрыАдминистрированияКластера, ПараметрыАдминистрированияИнформационнойБазы, ЭлементСценария.Профиль);
Возвращает текущее состояние блокировки регламентных заданий для информационной базы.
Возврат АдминистрированиеКластера.БлокировкаРегламентныхЗаданийИнформационнойБазы(ПараметрыАдминистрирования);
Устанавливает новое состояние блокировки регламентных заданий для информационной базы.
АдминистрированиеКластера.УстановитьБлокировкуРегламентныхЗаданийИнформационнойБазы(
ПараметрыАдминистрирования, Неопределено, Объект.ЗапретитьРаботуРегламентныхЗаданий);
Возвращает текущее состояние блокировки сеансов и регламентных заданий для информационной базы.
Возвращает путь к консольному клиенту сервера администрирования.
Результат = АдминистрированиеКластера.ПутьККлиентуСервераАдминистрирования(ПараметрыАдминистрированияКластера)
Разрывает соединения с информационной базой по фильтру.
Возвращает описания информационных баз.
Возвращает описания кластеров серверов.
Возвращает описания рабочих процессов.
Возвращает описания рабочих серверов.
Возвращает описания сеансов информационной базы. Если в параметре Фильтр задана структура (см. АдминистрированиеКластера.ФильтрСеансов), то сравнение всегда выполняется на равенство.
Результат = АдминистрированиеКластера.СвойстваСеансов(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИдентификаторИнформационнойБазы, Фильтр, ИспользоватьСловарь)
Возвращает описания соединений с информационной базой.
Устанавливает новое состояние блокировки сеансов и регламентных заданий для информационной базы.
Назначает для информационной базы использование профиля безопасности безопасного режима.
Снимает блокировку сеансов и регламентных заданий для информационной базы.
Свойства профиля безопасности.
Результат = АдминистрированиеКластера.СвойстваПрофиляБезопасности()
Свойства виртуального каталога, к которому предоставляется доступ.
Результат = АдминистрированиеКластера.СвойстваВиртуальногоКаталога()
Свойства COM-класса, к которому предоставляется доступ.
Результат = АдминистрированиеКластера.СвойстваCOMКласса()
Свойства внешнего модуля, к которому предоставляется доступ.
Результат = АдминистрированиеКластера.СвойстваВнешнегоМодуля()
Свойства внешней компоненты, к которой предоставляется доступ.
Результат = АдминистрированиеКластера.СвойстваВнешнейКомпоненты()
Свойства Интернет-ресурса, к которому предоставляется доступ.
Результат = АдминистрированиеКластера.СвойстваИнтернетРесурса()
Свойства приложения операционной системы, к которому предоставляется доступ.
Результат = АдминистрированиеКластера.СвойстваПриложенияОС()
Проверяет существование в кластере серверов профиля безопасности.
Результат = АдминистрированиеКластера.ПрофильБезопасностиСуществует(ПараметрыАдминистрированияКластера, ИмяПрофиля)
Устанавливает свойства для существующего профиля безопасности по переданному описанию.
АдминистрированиеКластера.УстановитьСвойстваПрофиляБезопасности(ПараметрыАдминистрированияКластера, СвойстваПрофиляБезопасности)
Создает профиль безопасности по переданному описанию.
АдминистрированиеКластера.СоздатьПрофильБезопасности(ПараметрыАдминистрированияКластера, СвойстваПрофиляБезопасности)
Удаляет профиль безопасности.
АдминистрированиеКластера.УдалитьПрофильБезопасности(ПараметрыАдминистрированияКластера, ИмяПрофиля)
Возвращает свойства профиля безопасности.
Возвращает имя профиля безопасности, назначенного для информационной базы в качестве профиля безопасности безопасного режима.
Возвращает имя профиля безопасности, назначенного для информационной базы.
Получает цвет стиля по имени элемента стиля.
Результат = ОбщегоНазначенияКлиент.ЦветСтиля("ЦветОсобогоТекста")
Получает шрифт стиля по имени элемента стиля.
Результат = ОбщегоНазначенияКлиент.ШрифтСтиля("ВажнаяНадписьШрифт")
Возвращает имя COM-класса для работы с 1С:Предприятием 8 через COM-соединение.
Результат = ОбщегоНазначенияКлиентСервер.ИмяCOMСоединителя()
Устанавливает внешнее соединение с информационной базой по переданным параметрам подключения и возвращает указатель на это соединение.
Результат = ОбщегоНазначения.УстановитьВнешнееСоединениеСБазой(Параметры)
Выполняет регистрацию компоненты "comcntr.dll" для текущей версии платформы. В случае успешной регистрации, предлагает пользователю перезапустить клиентский сеанс для того чтобы регистрация вступила в силу. Вызывается перед клиентским кодом, который использует менеджер COM-соединений (V83.COMConnector) и инициируется интерактивными действиями пользователя.
ОбщегоНазначенияКлиент.ЗарегистрироватьCOMСоединитель(Ложь);
Конструктор параметра Параметры функций ОбщегоНазначения.УстановитьВнешнееСоединениеСБазой и ОбщегоНазначенияКлиент.УстановитьВнешнееСоединениеСБазой.
Результат = ОбщегоНазначенияКлиентСервер.СтруктураПараметровДляУстановкиВнешнегоСоединения()
Извлекает из строки соединения с информационной базой параметры подключения и передает параметры в структуру для установки внешнего соединения.
Результат = ОбщегоНазначенияКлиентСервер.ПолучитьПараметрыПодключенияИзСтрокиСоединенияИнформационнойБазы(СтрокаСоединения)
Возвращает CLSID COM-класса для работы с "1С:Предприятием 8" через COM-соединение.
Результат = ОбщегоНазначения.ИдентификаторCOMСоединителя(ИмяCOMСоединителя)
Конструктор объекта WSПрокси с дополнительными возможностями по сравнению с конструктором Новый WSПрокси: - создает WSОпределения; - кэширует файл WSDL для ускорения работы с веб-сервисом; - не требуется указание ИнтернетПрокси (используется автоматически, если настроен); - позволяет делать быструю проверку доступности сервиса с помощью операции Ping.
ПараметрыПодключения = ОбщегоНазначения.ПараметрыПодключенияWSПрокси();
ПараметрыПодключения.АдресWSDL = "http://webservice.net/webservice.asmx?wsdl";
ПараметрыПодключения.URIПространстваИмен = "http://www.webservice.net/WebService/1.0.0.1";
ПараметрыПодключения.ИмяСервиса = "WebService_1_0_0_1";
ПараметрыПодключения.Таймаут = 20;
Прокси = ОбщегоНазначения.СоздатьWSПрокси(ПараметрыПодключения);
Возвращает номера версий программных интерфейсов удаленной системы, доступной через веб-сервис. Позволяет обеспечивать полную обратную совместимость при изменениях в программных интерфейсах с помощью их явного версионирования. Например, если программный интерфейс выше определенной версии, то только в этом случае допустимо вызывать у него новую функцию. В целях экономии трафика при интенсивном взаимодействии между вызывающей и вызываемой сторонами сведения о версиях кэшируются на одни сутки. Если для целей отладки требуется сбросить кэш раньше этого времени, следует удалить соответствующие записи из регистра сведений КэшПрограммныхИнтерфейсов.
Версии = ПолучитьВерсииИнтерфейса("http://vsrvx/sm", "ivanov",, "СервисПередачиФайлов");
Возвращает номера версий программных интерфейсов удаленной системы, подключенной через внешнее соединение. Позволяет обеспечивать полную обратную совместимость при изменениях в программных интерфейсах с помощью их явного версионирования. Например, если программный интерфейс выше определенной версии, то только в этом случае допустимо вызывать у него новую функцию.
Версии = ОбщегоНазначения.ПолучитьВерсииИнтерфейсаЧерезВнешнееСоединение(ВнешнееСоединение, "СервисПередачиФайлов");
Возвращает структуру параметров для процедуры ПодключитьКомпонентуИзМакета.
ПараметрыПодключения = ОбщегоНазначенияКлиент.ПараметрыПодключенияКомпоненты();
ПараметрыПодключения.ТекстПояснения = НСтр("ru = 'Для использования сканера штрихкодов требуется
|внешняя компонента ""1С:Сканеры штрихкода (NativeApi)"".'");
Подключает компоненту, выполненную по технологии Native API и COM, в асинхронном режиме. Компонента должна храниться в макете конфигурации в виде ZIP-архива. Для веб-клиента предлагается диалог, подсказывающий пользователю действия по установке.
ОбщегоНазначенияКлиент.ПодключитьКомпонентуИзМакета(Оповещение,
"MAppDataExchange",
"ОбщийМакет.КомпонентаОбменДаннымиСМобильнымиПриложениями",
ПараметрыПодключения);
Возвращает структуру параметров для процедуры УстановитьКомпонентуИзМакета.
ПараметрыУстановки = ОбщегоНазначенияКлиент.ПараметрыУстановкиКомпоненты();
ПараметрыУстановки.ТекстПояснения = НСтр("ru = 'Для использования сканера штрихкодов требуется
|внешняя компонента ""1С:Сканеры штрихкода (NativeApi)"".'");
Устанавливает компоненту, выполненную по технологии Native API и COM асинхронном режиме. Компонента должна храниться в макете конфигурации в виде ZIP-архива.
Оповещение = Новый ОписаниеОповещения("УстановитьКомпонентуЗавершение", ЭтотОбъект);
ПараметрыУстановки = ОбщегоНазначенияКлиент.ПараметрыУстановкиКомпоненты();
ПараметрыУстановки.ТекстПояснения = НСтр("ru = 'Для оформления заявления на выпуск сертификата требуется
|внешняя компонента ""Криптография (CryptS)"".'");
ОбщегоНазначенияКлиент.УстановитьКомпонентуИзМакета(Оповещение,
"Обработка.ЗаявлениеНаВыпускНовогоКвалифицированногоСертификата.Макет.КомпонентаОбмена",
ПараметрыУстановки);
&НаКлиенте
Процедура УстановитьКомпонентуЗавершение(Результат, ДополнительныеПараметры) Экспорт
Если Не Результат.Установлено И Не ПустаяСтрока(Результат.ОписаниеОшибки) Тогда
ПоказатьПредупреждение(, Результат.ОписаниеОшибки);
КонецЕсли;
КонецПроцедуры
Свойства сеанса информационной базы.
* Номер - Число - номер сеанса. Уникален среди всех сеансов информационной базы,
* ИмяПользователя - Строка - имя аутентифицированного пользователя информационной базы,
* ИмяКлиентскогоКомпьютера - Строка - имя или сетевой адрес компьютера, установившего
сеанс с информационной базой,
* ИдентификаторКлиентскогоПриложения - Строка - идентификатор приложения, установившего сеанс.
Возможные значения - см. описание к функции глобального контекста ПредставлениеПриложения(),
* ИдентификаторЯзыка - Строка - идентификатор языка интерфейса,
* МоментСозданияСеанса - Дата - момент установки сеанса,
* МоментПоследнейАктивностиСеанса - Дата - момент последней активности сеанса,
* Блокировка - Число - номер сеанса, который является причиной ожидания управляемой транзакционной
блокировки в том случае, если сеанс выполняет установку управляемых транзакционных блокировок
и ожидает снятия блокировок, установленных другим сеансом (иначе - значение равно 0),
* БлокировкаСУБД - Число - номер сеанса, который является причиной ожидания транзакционной
блокировки в том случае, если сеанс исполняет запрос к СУБД и ожидает транзакционную
блокировку, установленную другим сеансом (иначе - значение равно 0),
* Передано - Число - объем данных, переданных меду сервером "1С:Предприятия" и клиентским приложением
данного сеанса с момента начала сеанса (в байтах),
* ПереданоЗа5Минут - Число - объем данных, переданных между сервером "1С:Предприятия" и клиентским
приложением данного сеанса за последние 5 минут (в байтах),
* СерверныхВызовов - Число - количество вызовов сервера "1С:Предприятия" от имена данного сеанса с
момента начала сеанса,
* СерверныхВызововЗа5Минут - Число - количество вызовов сервера "1С:Предприятия" от имени данного сеанса
за последние 5 минут,
* ДлительностьСерверныхВызовов - Число - время исполнения вызовов сервера "1С:Предприятия" от имени
данного сеанса с момента начала сеанса (в секундах),
* ДлительностьТекущегоСерверногоВызова - Число - интервал времени в миллисекундах, прошедший с момента начала
обращения, в случае, если сеанс выполняется вызов сервера "1С:Предприятия" (иначе - значение равно 0),
* ДлительностьСерверныхВызововЗа5Минут - Число - время исполнения вызовов сервера 1С:Предприятия от имени
данного сеанса за последние 5 минут (в миллисекундах),
* ПереданоСУБД - Число - количество данных, переданных и полученных от СУБД от имени данного сеанса с
момента начала сеанса (в байтах),
* ПереданоСУБДЗа5Минут - Число - количество данных, переданных и полученных от СУБД от имени данного сеанса
за последние 5 минут (в байтах),
* ДлительностьВызововСУБД - Число - время исполнения запросов к СУБД от имени данного сеанса с момента начала
сеанса (в миллисекундах),
* ДлительностьТекущегоВызоваСУБД - Число - интервал времени в миллисекундах, прошедший с начала выполнения
запроса в случае, если сеанс выполняет запрос к СУБД (иначе - значение равно 0),
* ДлительностьВызововСУБДЗа5Минут - Число - суммарное время исполнения запросов к СУБД от имени данного сеанса
за последние 5 минут (в миллисекундах).
* СоединениеСУБД - Строка - номер соединения с СУБД в терминах СУБД в том случае, если в момент получения списка
сеансов выполняется запрос к СУБД, открыта транзакция или определены временные таблицы (т.е. захвачено
соединение с СУБД). Если соединение с СУБД не захвачено - значение равно пустой строке,
* ВремяСоединенияСУБД - Число - время соединения с СУБД с момента захвата (в миллисекундах). Если соединение с.
СУБД не захвачено - значение равно 0,
* МоментЗахватаСоединенияСУБД - Дата - момент времени, когда соединение с СУБД было последний раз
захвачено другим сеансом.
* ОписаниеСоединения - Структура
- Неопределено - содержит описание соединения, которому назначен сеанс,
описание полей см. АдминистрированиеКластера.СвойстваОписанияСоединения(). Иначе - Неопределено.
* Спящий - Булево - сеанс находится в спящем режиме.
* ЗавершитьЧерез - Число - интервал времени в секундах, по истечении которого спящий сеанс завершается.
* ЗаснутьЧерез - Число - интервал времени в секундах, по истечении которого неактивный сеанс переводится в спящий
режим.
* ПрочитаноСДиска - Число - содержит количество данных в байтах, прочитанных с диска сеансом с момента начала сеанса.
* ПрочитаноСДискаВТекущемВызове - Число - содержит количество данных в байтах, прочитанных с диска с начала
выполнения текущего вызова.
* ПрочитаноСДискаЗа5Минут - Число - содержит количество данных в байтах, прочитанных с диска сеансом за последние
5 минут.
* Лицензия - Структура
- Неопределено - содержит информацию о клиентской лицензии, используемой этим сеансом,
описание полей см. АдминистрированиеКластера.СвойстваЛицензии().
Неопределено, если сеанс не использует лицензию.
* ЗанятоПамяти - Число - содержит объем памяти в байтах, занятый в процессе вызовов с момента начала сеанса.
* ЗанятоПамятиВТекущемВызове - Число - содержит объем памяти в байтах, занятый с начала выполнения текущего вызова.
Если в данный момент вызов не выполняется, содержит 0.
* ЗанятоПамятиЗа5Минут - Число - содержит объем памяти в байтах, занятый в процессе вызовов за последние 5 минут.
* ЗаписаноНаДиск - Число - содержит количество данных в байтах, записанных на диск сеансом с момента начала сеанса.
* ЗаписаноНаДискВТекущемВызове - Число - содержит количество данных в байтах, записанных на диск с начала
выполнения текущего вызова.
* ЗаписаноНаДискЗа5Минут - Число - содержит количество данных в байтах, записанных на диск сеансом за последние 5
минут.
* РабочийПроцесс - Структура
- Неопределено - содержит рабочий процесс, с которым установлено соединение, если
сеанс назначен соединению, описание полей см. АдминистрированиеКластера.СвойстваРабочегоПроцесса().
Иначе - Неопределено.
Результат = АдминистрированиеКластера.СвойстваСеанса()
Свойства лицензии.
Результат = АдминистрированиеКластера.СвойстваЛицензии()
Свойства описания соединения.
Результат = АдминистрированиеКластера.СвойстваОписанияСоединения()
Свойства рабочего процесса.
* ДоступнаяПроизводительность - Число - средняя за последние 5 минут доступная производительность. Определяется по времени реакции рабочего процесса на эталонный запрос. В соответствии с доступной производительностью кластер серверов принимает решение о распределении клиентов между рабочими процессами.
* ЗатраченоКлиентом - Число - показывает среднее время, затрачиваемое рабочим процессом на обратные вызовы методов клиентского приложения при выполнении одного клиентского обращения
* РеакцияСервера - Число - показывает среднее время обслуживания рабочим процессом одного клиентского обращения. Оно складывается из: значений свойств ЗатраченоСервером, ЗатраченоСУБД, ЗатраченоМенеджеромБлокировок, ЗатраченоКлиентом.
* ЗатраченоСУБД - Число - показывает среднее время, затрачиваемое рабочим процессом на обращения к серверу баз данных при выполнении одного клиентского обращения.
* ЗатраченоМенеджеромБлокировок - Число - показывает среднее время обращения к менеджеру блокировок.
* ЗатраченоСервером - Число - показывает среднее время, затрачиваемое самим рабочим процессом на выполнение одного клиентского обращения.
* КлиентскихПотоков - Число - показывает среднее количество клиентских потоков, исполняемых рабочим процессом кластера.
* ОтносительнаяПроизводительность - Число - относительная производительность процесса. Может находиться в диапазоне от 1 до 1000. Используется в процессе выбора рабочего процесса, к которому будет подсоединен очередной клиент. Клиенты распределяются между рабочими процессами пропорционально производительности рабочих процессов.
* Соединений - Число - количество соединений рабочего процесса с пользовательскими приложениями.
* ИмяКомпьютера - Строка - содержит имя или IP-адрес компьютера, на котором должен быть запущен рабочий процесс.
* Включен - Булево - устанавливается кластером при необходимости запустить или остановить рабочий процесс.
Истина - процесс должен быть запущен и будет запущен при возможности.
Ложь - процесс должен быть остановлен и будет остановлен после отсоединения всех пользователей или после истечения времени, заданного настройками кластера.
* Порт - Число - содержит номер основного IP-порта рабочего процесса. Этот порт выделяется динамически при старте рабочего процесса из диапазонов портов, определенных для соответствующего рабочего сервера.
* ПревышениеНадКритическимЗначением - Число - содержит время, в течение которого объем виртуальной памяти рабочего процесса превышает критическое значение, установленное для кластера, в секундах.
* ЗанятоПамяти - Число - содержит объем виртуальной памяти, занимаемой рабочим процессом, в килобайтах.
* Идентификатор - Строка - идентификатор активного рабочего процесса в терминах операционной системы.
* Запущен - Число - состояние рабочего процесса.
0 - процесс неактивен (либо не загружен в память, либо не может выполнять клиентские запросы);
1 - процесс активен (работает).
* КоличествоВызововПоКоторымПосчитанаСтатистика - Число - количество вызовов, по которым посчитана статистика.
* МоментЗапуска - Дата - содержит момент запуска рабочего процесса. Если процесс не запущен, то пустая дата.
* Использование - Число - определяет использование рабочего процесса кластером. Устанавливается администратором.
Возможные значения:
0 - не использовать, процесс не должен быть запущен;
1 - использовать, процесс должен быть запущен;
2 - использовать как резервный, процесс должен быть запущен только при невозможности запуска
процесса со значением 1 этого свойства.
* Лицензия - Структура
- Неопределено - содержит информацию о серверной лицензии, используемой рабочим процессом.
Неопределено - рабочий процесс не использует серверную лицензию.
Результат = АдминистрированиеКластера.СвойстваРабочегоПроцесса()
Возвращает описания сеансов информационной базы.
Возвращает признак того, что переданное значение является, либо не является, числом.
Результат = ОбщегоНазначенияКлиентСервер.ЭтоЧисло(ПроверяемоеЗначение)
Получает строки табличной части, помещенные во внутренний буфер обмена с помощью СкопироватьСтрокиВБуферОбмена.
Результат = ОбщегоНазначения.СтрокиИзБуфераОбмена()
Проверяет наличие сохраненных данных во внутреннем буфере обмена.
Результат = ОбщегоНазначения.ПустойБуферОбмена(Источник)
Помещает произвольные данные во внутренний буфер обмена, откуда их можно получить с помощью СтрокиИзБуфераОбмена.
ОбщегоНазначения.СкопироватьВБуферОбмена(Данные, Источник)
Помещает выделенные строки табличной части во внутренний буфер обмена откуда их можно получить с помощью СтрокиИзБуфераОбмена.
ОбщегоНазначения.СкопироватьСтрокиВБуферОбмена(ТабличнаяЧасть, ВыделенныеСтроки, Источник)
Возвращает суффикс текущего языка для мультиязычных реквизитов.
СуффиксТекущегоЯзыка = ОбщегоНазначения.СуффиксЯзыкаТекущегоПользователя();
Анализ производился на конфигурации 1С:ERP Управление предприятием 2.6.1.64 (БСП 3.1.12.310). Часть 2 пока в разработке.
Также рекомендую к ознакомлению статью по подсистеме БСП для отчетов:
Отчеты с общей формой отчета. Типовые сценарии.
Вступайте в нашу телеграмм-группу Инфостарт