diff --git a/src/cf/CommonForms/Настройки/Ext/Form.xml b/src/cf/CommonForms/Настройки/Ext/Form.xml
index dc5564a..c5a51c1 100644
--- a/src/cf/CommonForms/Настройки/Ext/Form.xml
+++ b/src/cf/CommonForms/Настройки/Ext/Form.xml
@@ -50,9 +50,6 @@
true
true
-
- НаборКонстант.ТелеграмВебХук
-
diff --git a/src/cf/CommonForms/Настройки/Ext/Form/Module.bsl b/src/cf/CommonForms/Настройки/Ext/Form/Module.bsl
index c6c6db7..1901d2c 100644
--- a/src/cf/CommonForms/Настройки/Ext/Form/Module.bsl
+++ b/src/cf/CommonForms/Настройки/Ext/Form/Module.bsl
@@ -11,14 +11,17 @@
&НаКлиенте
Процедура ПередЗаписью(Отказ, ПараметрыЗаписи)
- Если НаборКонстант.ТелеграмИспользоватьВебХук И НЕ ЗначениеЗаполнено(НаборКонстант.ТелеграмВебХук) Тогда
+ НужноУказатьВебхух = НаборКонстант.ТелеграмИспользоватьВебХук И НЕ ЗначениеЗаполнено(НаборКонстант.ТелеграмВебХук);
+
+ Если НужноУказатьВебхух Тогда
Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = "Не заполнен адрес вебхука";
Сообщение.Поле = "НаборКонстант.ТелеграмВебХук";
Сообщение.Сообщить();
+ ПараметрыЗаписи.Вставить("Модифицированность");
КонецЕсли;
- Если Модифицированность Тогда
+ Если Модифицированность ИЛИ НужноУказатьВебхух Тогда
ПараметрыЗаписи.Вставить("Модифицированность");
КонецЕсли;
@@ -28,7 +31,7 @@
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
КэшЗначений = Новый Структура;
- КэшЗначений.Вставить("ТелеграмИспользоватьВебХук", Константы.ТелеграмИспользоватьВебХук.Получить());
+ КэшЗначений.Вставить("ТелеграмИспользоватьВебХук", ПолучитьФункциональнуюОпцию("ТелеграмИспользоватьВебХук"));
КонецПроцедуры
@@ -43,7 +46,7 @@
КонецЕсли;
Если НЕ КэшЗначений.ТелеграмИспользоватьВебХук И ТекущийОбъект.ТелеграмИспользоватьВебХук Тогда
- ТелеграмМетодыВызовСервера.SetWebHook(ТекущийОбъект.ТелеграмВебХук);
+ ТелеграмМетодыВызовСервера.SetWebHook(ТекущийОбъект.ТелеграмВебХук);
КонецЕсли;
УстановитьПривилегированныйРежим(Ложь);
diff --git a/src/cf/Configuration.xml b/src/cf/Configuration.xml
index 2a2aff3..348b7c2 100644
--- a/src/cf/Configuration.xml
+++ b/src/cf/Configuration.xml
@@ -247,6 +247,7 @@
Русский
ТелеграмБот
Обновления
+ Администрирование
КартинкаБот
HttpОбщегоНазначенияВызовСервера
БотОбщегоНазначения
@@ -267,6 +268,7 @@
ТелеграмВебХук
ЛогироватьHttpЗапросы
ТелеграмИспользоватьВебХук
+ НачальноеЗаполнениеВыполнено
Настройки
ТелеграмПользователь
ТелеграмСообщение
@@ -279,6 +281,7 @@
ВидыДанныхКоллбэков
РаботаССообщениями
РаботаСОбновлениями
+ НачальноеЗаполнениеДанных
ТелеграмСообщения
ОтслеживаниеВерсийКонфигураций
УведомленияОНовыхВерсиях
diff --git a/src/cf/Constants/НачальноеЗаполнениеВыполнено.xml b/src/cf/Constants/НачальноеЗаполнениеВыполнено.xml
new file mode 100644
index 0000000..3d22056
--- /dev/null
+++ b/src/cf/Constants/НачальноеЗаполнениеВыполнено.xml
@@ -0,0 +1,58 @@
+
+
+
+
+
+ daee5ccf-9121-4c23-9f60-1e96fc9edbe5
+ 294e80f1-f93d-4bee-98b4-b7e41f72b54d
+
+
+ 0db0a252-b2e0-4689-9b34-0ce61b8ddc3a
+ 649d5178-b02c-4425-bc5c-a0d4b431d2e7
+
+
+ 40ee8abe-1064-4ca4-9e1a-c2086fcfa797
+ 980981e0-7957-48bb-9485-d0533ab0611e
+
+
+
+ НачальноеЗаполнениеВыполнено
+
+
+ ru
+ Начальное заполнение выполнено
+
+
+
+
+ xs:boolean
+
+ false
+
+
+
+ false
+
+
+
+ false
+
+ false
+ false
+
+
+ DontCheck
+ Items
+
+
+ Auto
+
+
+ Auto
+ Managed
+ DontUse
+ false
+ false
+
+
+
\ No newline at end of file
diff --git a/src/cf/DataProcessors/НачальноеЗаполнениеДанных.xml b/src/cf/DataProcessors/НачальноеЗаполнениеДанных.xml
new file mode 100644
index 0000000..b93b150
--- /dev/null
+++ b/src/cf/DataProcessors/НачальноеЗаполнениеДанных.xml
@@ -0,0 +1,34 @@
+
+
+
+
+
+ f6d22c74-3f20-4aec-81c6-a9f6dceea5f0
+ ee8a7198-3478-4b4c-b421-23f2818fad0b
+
+
+ b721b5f6-2068-4461-8368-e63a275a5f61
+ 9d497305-5abe-42e2-8945-bccfa03998bd
+
+
+
+ НачальноеЗаполнениеДанных
+
+
+ ru
+ Начальное заполнение данных
+
+
+
+ true
+ DataProcessor.НачальноеЗаполнениеДанных.Form.Форма
+
+ false
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/cf/DataProcessors/НачальноеЗаполнениеДанных/Forms/Форма.xml b/src/cf/DataProcessors/НачальноеЗаполнениеДанных/Forms/Форма.xml
new file mode 100644
index 0000000..c4f99ae
--- /dev/null
+++ b/src/cf/DataProcessors/НачальноеЗаполнениеДанных/Forms/Форма.xml
@@ -0,0 +1,22 @@
+
+
+
+
\ No newline at end of file
diff --git a/src/cf/DataProcessors/НачальноеЗаполнениеДанных/Forms/Форма/Ext/Form.xml b/src/cf/DataProcessors/НачальноеЗаполнениеДанных/Forms/Форма/Ext/Form.xml
new file mode 100644
index 0000000..bd7c3be
--- /dev/null
+++ b/src/cf/DataProcessors/НачальноеЗаполнениеДанных/Forms/Форма/Ext/Form.xml
@@ -0,0 +1,36 @@
+
+
\ No newline at end of file
diff --git a/src/cf/DataProcessors/НачальноеЗаполнениеДанных/Forms/Форма/Ext/Form/Module.bsl b/src/cf/DataProcessors/НачальноеЗаполнениеДанных/Forms/Форма/Ext/Form/Module.bsl
new file mode 100644
index 0000000..883556c
--- /dev/null
+++ b/src/cf/DataProcessors/НачальноеЗаполнениеДанных/Forms/Форма/Ext/Form/Module.bsl
@@ -0,0 +1,132 @@
+#Область ОбработчикиКомандФормы
+
+&НаКлиенте
+Процедура ПровестиИнициализацию(Команда)
+
+ Если НачальноеЗаполнениеВыполнено() И СлужебныеСтруктурыПроинициализированы() Тогда
+ СообщениеПользователю("Данные уже проинициализированы.");
+ Возврат;
+ ИначеЕсли СлужебныеСтруктурыПроинициализированы() Тогда
+ СообщениеПользователю("Данные уже проинициализированы.");
+ НачальноеЗаполнениеВыполненоУстановить(Истина);
+ Возврат;
+ КонецЕсли;
+
+ ПровестиИнициализациюНаСервере();
+ СообщениеПользователю("Данные проинициализированы успешно.");
+
+КонецПроцедуры
+
+#КонецОбласти
+
+#Область СлужебныеПроцедурыИФункции
+
+&НаСервереБезКонтекста
+Процедура ПровестиИнициализациюНаСервере()
+
+ НачатьТранзакцию();
+ ЗаполнитьСправочникКонфигурацииНачальнымиДанными();
+ НачальноеЗаполнениеВыполненоУстановить(Истина);
+ ЗафиксироватьТранзакцию();
+
+КонецПроцедуры
+
+&НаСервереБезКонтекста
+Функция СлужебныеСтруктурыПроинициализированы()
+
+ Результат = Ложь;
+ Если СправочникКонфигурацииЗаполненНачальнымиДанными() Тогда
+ Результат = Истина;
+ КонецЕсли;
+
+ Возврат Результат;
+
+КонецФункции
+
+&НаСервереБезКонтекста
+Функция СправочникКонфигурацииЗаполненНачальнымиДанными()
+
+ Запрос = Новый Запрос;
+ Запрос.Текст =
+ "ВЫБРАТЬ
+ | Конфигурации.Имя КАК Имя
+ |ИЗ
+ | Справочник.Конфигурации КАК Конфигурации
+ |ГДЕ
+ | Конфигурации.Имя В(&ИменаКонфигураций)";
+
+ ИменаКонфигураций = Новый Массив;
+ ИменаКонфигураций.Добавить("Accounting");
+ ИменаКонфигураций.Добавить("HRM");
+ ИменаКонфигураций.Добавить("ARAutomation");
+ ИменаКонфигураций.Добавить("SmallBusiness");
+
+ Запрос.УстановитьПараметр("ИменаКонфигураций", ИменаКонфигураций);
+
+ РезультатЗапроса = Запрос.Выполнить();
+
+ ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
+
+ Возврат ВыборкаДетальныеЗаписи.Количество() = ИменаКонфигураций.Количество();
+
+КонецФункции
+
+&НаСервереБезКонтекста
+Процедура ЗаполнитьСправочникКонфигурацииНачальнымиДанными()
+
+ НовыйСправочник = Справочники.Конфигурации.СоздатьЭлемент();
+ НовыйСправочник.Наименование = "Комплексная автоматизация";
+ НовыйСправочник.Имя = "ARAutomation";
+ НовыйСправочник.Код = "000000001";
+ НовыйСправочник.Записать();
+
+ НовыйСправочник = Справочники.Конфигурации.СоздатьЭлемент();
+ НовыйСправочник.Наименование = "Зарплата и управление персоналом";
+ НовыйСправочник.Имя = "HRM";
+ НовыйСправочник.Код = "000000002";
+ НовыйСправочник.Записать();
+
+ НовыйСправочник = Справочники.Конфигурации.СоздатьЭлемент();
+ НовыйСправочник.Наименование = "Бухгалтерия предприятия";
+ НовыйСправочник.Имя = "Accounting";
+ НовыйСправочник.Код = "000000003";
+ НовыйСправочник.Записать();
+
+ НовыйСправочник = Справочники.Конфигурации.СоздатьЭлемент();
+ НовыйСправочник.Наименование = "Управление нашей фирмой";
+ НовыйСправочник.Имя = "SmallBusiness";
+ НовыйСправочник.Код = "000000004";
+ НовыйСправочник.Записать();
+
+КонецПроцедуры
+
+&НаКлиенте
+Процедура СообщениеПользователю(ТекстСообщения)
+
+ Сообщение = Новый СообщениеПользователю;
+ Сообщение.Текст = СтрШаблон(НСтр("ru = '%1'"), ТекстСообщения);
+ Сообщение.Сообщить();
+
+КонецПроцедуры
+
+
+&НаСервереБезКонтекста
+Функция НачальноеЗаполнениеВыполнено()
+
+ Возврат Константы.НачальноеЗаполнениеВыполнено.Получить();
+
+КонецФункции
+
+
+&НаСервереБезКонтекста
+Процедура НачальноеЗаполнениеВыполненоУстановить(Признак)
+
+ Константы.НачальноеЗаполнениеВыполнено.Установить(Признак);
+
+КонецПроцедуры
+
+#КонецОбласти
+
+
+
+
diff --git a/src/cf/HTTPServices/HTTPСервис_Telegram/Ext/Module.bsl b/src/cf/HTTPServices/HTTPСервис_Telegram/Ext/Module.bsl
index 21e1e04..49d5e3c 100644
--- a/src/cf/HTTPServices/HTTPСервис_Telegram/Ext/Module.bsl
+++ b/src/cf/HTTPServices/HTTPСервис_Telegram/Ext/Module.bsl
@@ -2,7 +2,6 @@
Функция ШаблонURL1PostGetUpdate(Запрос)
Попытка
- //ТелеграмОбщегоНазначения.ОбработатьИСохранитьОбновленияТелеграм(Запрос.ПолучитьТелоКакСтроку());
БотОбщегоНазначения.ОбработкаКомандыБота(Запрос.ПолучитьТелоКакСтроку());
Ответ = HttpОбщегоНазначенияВызовСервера.ОтветУспех();
Возврат Ответ;
diff --git a/src/cf/Subsystems/Администрирование.xml b/src/cf/Subsystems/Администрирование.xml
new file mode 100644
index 0000000..cbce641
--- /dev/null
+++ b/src/cf/Subsystems/Администрирование.xml
@@ -0,0 +1,25 @@
+
+
+
+
+ Администрирование
+
+
+ ru
+ Администрирование
+
+
+
+ true
+ true
+ false
+
+
+
+ CommonForm.Настройки
+ DataProcessor.НачальноеЗаполнениеДанных
+
+
+
+
+
\ No newline at end of file
diff --git a/src/cf/VERSION b/src/cf/VERSION
index 99dc086..c638ccc 100644
--- a/src/cf/VERSION
+++ b/src/cf/VERSION
@@ -1,2 +1,2 @@
-22
+23