INFOSTART EVENT 2018 EDUCATION

Второй тур голосования за доклады.
Окончание 5 сентября.

Белозеров Дмитрий | Системный архитектор | LMSoft

«Кодогенерация и метагенерация в 1С»

Примерно год назад жизнь заставила меня задуматься над таким вопросом - а не разработать ли язык (точнее псевдоязык), с помощью которого можно было бы программно работать с метаданными 1С, писать скрипты, которые выполняют те же действия, которые выполняет разработчик в конфигураторе... В этом докладе хочу рассказать о том как мы разрабатывали такой инструмент, с какими сложностями и нюансами столкнулись, и что получилось в итоге. Мы рассмотрим реальные кейсы использования автоматической генерации метаданных 1С, в которых использование такого подхода дает серьёзные преимущества и сильно облегчает жизнь разработчика (иногда настолько облегчает что можно обойтись вообще без него :), увидим как инструмент генерации можно вписать в общий контур continuous integration. А ещё обсудим перспективы использования подобных практик (генерация конфигурации на основе формализованных функциональных моделей, реализация библиотечного подхода к разработке прикладных решений).

Отключение интернет-поддержки при старте БП 2.0.32.4

Администрирование - Сервисные утилиты

87
С обновлением на БП 2.0.32.4 у многих возникла проблема с запуском - база зависала на старте на попытке подключения к web-ИТС. Данная обработка предназначена для отключения интернет-поддержки без ковыряния конфигурации.

С обновлением на БП 2.0.32.4 у многих возникла проблема с запуском - база зависала на старте на попытке подключения к web-ИТС. Данная обработка предназначена для отключения интернет-поддержки без ковыряния конфигурации.

 

 

Можно просто запустить следующий код на выполнение при помощи похожей обработки.

 

ВыбПользователи   = ПользователиИнформационнойБазы.ПолучитьПользователей();

Если ВыбПользователи.Количество()>0 тогда
       Для Каждого Пользователь Из ВыбПользователи Цикл
             ХранилищеОбщихНастроек.Сохранить("ИнтернетПоддержкаПользователей","ПовторитьПопыткуПодключенияПриСтартеПрограммы", Ложь, , Пользователь.Имя);
             ХранилищеОбщихНастроек.Сохранить("ИнтернетПоддержкаПользователей", "ВсегдаПоказыватьПриСтартеПрограммы", Ложь , Пользователь.Имя);
             Сообщить("Для пользователя " + Пользователь.Имя + " интернет-поддержка отключена");
       КонецЦикла;
 Иначе
       ХранилищеОбщихНастроек.Сохранить("ИнтернетПоддержкаПользователей", "ПовторитьПопыткуПодключенияПриСтартеПрограммы", Ложь);
       ХранилищеОбщихНастроек.Сохранить("ИнтернетПоддержкаПользователей", "ВсегдаПоказыватьПриСтартеПрограммы", Ложь);
       Сообщить("Интернет-поддержка отключена");
КонецЕсли;

 

Если конфигурацию не жалко, можно и просто снять выполнение процедуры Интернет-поддержки. Для этого

В модуле обычного приложения ищем процедуру ПроверитьЗапускСтартовогоПомощникаИПанелиФункций()

В ней в самом конце комментируем строчку

// Запуск интернет-поддержки работы пользователей.
ИнтернетПоддержкаПользователейКлиент.СтартоватьМеханизм("systemStart");



Проверка web-ИТС теперь отключена при запуске.

 

UPD 04/04/12  Обработка исправлена для работы с более поздними версиями

 

 
87

Скачать файлы

Наименование Файл Версия Размер
отключениеПроверки.epf
.epf 5,71Kb
08.05.18
385
.epf 5,71Kb 385 Скачать бесплатно

См. также

Комментарии
Сортировка: Древо
1. Поручик 4113 26.01.12 21:01 Сейчас в теме
(0) http://infostart.ru/public/105722/

Убери своё поделие.
Светлый ум; heseh; +2 Ответить
3. dachnik 100 26.01.12 21:08 Сейчас в теме
(1) Позвольте поинтересоваться, вы сравнивали обработки или просто чешется?
2. Поручик 4113 26.01.12 21:06 Сейчас в теме
Плагиат, надранный с мисты и отсюда.
17. free-lancer-2018 13.04.12 12:43 Сейчас в теме
(2) Поручик, какая разница, плагиат или нет? Главное, что увидел тут и воспользовался.

Миста - вообще скатилась до уровня быдло-форума.
spetzpozh; ArikiteSun; +2 1 Ответить
18. Поручик 4113 13.04.12 12:47 Сейчас в теме
(17) Ты о чём? Все уже давно забыли эту хрень.
4. q_i 353 27.01.12 17:32 Сейчас в теме
а мне эта публикация даже больше нравится, чем "Установка даты напоминания интернет поддержки БП 2.0.32", т.к. здесь прямо в тексте написано какой код выполнить.
CrazyCD; wolfsoft; +2 Ответить
5. q_i 353 31.01.12 11:10 Сейчас в теме
по-моему, запятой не хватает:
ХранилищеОбщихНастроек.Сохранить("ИнтернетПоддержкаПользователей", "ВсегдаПоказыватьПриСтартеПрограммы", Ложь , Пользователь.Имя);
даже если просто сравнить с:
ХранилищеОбщихНастроек.Сохранить("ИнтернетПоддержкаПользователей","ПовторитьПопыткуПодключенияПриСтартеПрограммы", Ложь, , Пользователь.Имя);
6. heseh 100 01.02.12 09:03 Сейчас в теме
Если конфигурацию не жалко

Жалко знаете ли...

Поручик +1
7. scape 275 01.02.12 10:16 Сейчас в теме
8. Hellisad 01.02.12 16:48 Сейчас в теме
9. redgoll 03.02.12 12:49 Сейчас в теме
Главное, что рейтинг не нужно тратить, скачивая обработку. Так что +1 от меня товарищи.
12. q_i 353 07.02.12 11:48 Сейчас в теме
(9) redgoll, хочешь завещать свой рейтинг детям? ;)
13. redgoll 07.02.12 12:14 Сейчас в теме
(12) q_i, просто, дружище, он не настолько высок, чтобы его тратить понапрасну. А сидеть-накручивать, честно говоря, некогда.
spetzpozh; +1 1 Ответить
10. artspeed 172 04.02.12 14:16 Сейчас в теме
Не нарушает ли эта обработка
1) конфигурацию
2) Права 1С.

???

За идею +1
11. Lenka_Boo 06.02.12 09:19 Сейчас в теме
Миста, не миста, а флудить вынуждают.
Информацию считаю пользительной.
Так что +1.
14. maxster545 09.02.12 08:55 Сейчас в теме
15. Lokiy 134 12.03.12 07:45 Сейчас в теме
В Типовой бухгалтерии появился общий модуль Пользователи - теперь обработка выпадает с ошибкой,
автор- переименуй переменную.

вот модуль:

Процедура КнопкаВыполнитьНажатие(Кнопка)
ВыбПользователи = ПользователиИнформационнойБазы.ПолучитьПользователей();
Если ВыбПользователи.Количество()>0 тогда
Для Каждого Пользователь Из ВыбПользователи Цикл
ХранилищеОбщихНастроек.Сохранить("ИнтернетПоддержкаПользователей", "ПовторитьПопыткуПодключенияПриСтартеПрограммы", Ложь, , Пользователь.Имя);
ХранилищеОбщихНастроек.Сохранить("ИнтернетПоддержкаПользователей", "ВсегдаПоказыватьПриСтартеПрограммы", Ложь , Пользователь.Имя);
Сообщить("Для пользователя " + Пользователь.Имя + " интернет-поддержка отключена");
КонецЦикла;
Иначе
ХранилищеОбщихНастроек.Сохранить("ИнтернетПоддержкаПользователей", "ПовторитьПопыткуПодключенияПриСтартеПрограммы", Ложь);
ХранилищеОбщихНастроек.Сохранить("ИнтернетПоддержкаПользователей", "ВсегдаПоказыватьПриСтартеПрограммы", Ложь);
Сообщить("Интернет-поддержка отключена");
КонецЕсли;
КонецПроцедуры
16. dachnik 100 05.04.12 01:43 Сейчас в теме
(15) Lokiy, спасибо, исправился. Моя локальная переменная пересеклась с появившейся глобальной. Теперь работает и в версии 34.7
19. vfon 16.07.12 15:18 Сейчас в теме
Автору спасибо! Рекомендую!

Эта СУПЕР-поддержка достала!
....Для НЕ продвинутых пользователей - она слишком сложна и путана
....Для Продвинутых пользователей (когда это необходимо) - нет проблем - адрес в браузер и ву-а-ля....
А вот задержка ПРИ КАЖДОМ ЗАПУСКЕ на 5-15 сек (в зависимости от состояния сервера и интернета) это слишком.
Вот не пробовал, а сколько она будет ждать, если не доберется до узла 1С при неполадках в Интернете?


Алгоритм реализован в '1С:Предприятие 8.2 (8.2.15.318)' для 'Бухгалтерия предприятия, редакция 2.0 (2.0.37.10)'
Сделана внешняя обработка (она не затрагивает конфигурацию, находящуюся на поддержке).
Однократный запуск и ЭТО отключено.
Возможно после обновления конфы эти параметры снова сбросятся на вкл. Web-поддержки.
Придется обработку повторить.
prettyj; spetzpozh; +2 1 Ответить
20. ArikiteSun 12.09.12 17:58 Сейчас в теме
Автору спасибо за идею.

Немного модифицировал обработку и раздал своим лентяям :)

Еще раз спасибо
+1
spetzpozh; +1 1 Ответить
21. tango 481 12.09.12 18:06 Сейчас в теме
22. dachnik 100 25.09.12 14:17 Сейчас в теме
(21) tango, простите новичка, просто нужен был рейтинг, а он пропал у меня, после того как по просьбе я снял свою первую публикацию с адаптациями сф1137 от 1с под старые конфы.
Впрочем, я считаю, что моя публикация хоть и дублирует функционал обработки, на которую ссылается Поручик (она у меня, кстати не сработала, т.к. на тот момент не работала с базами без пользователей), но оформлена лучшим образом. Пусть будет.
linuxmaster; +1 Ответить
23. lev6975 20.06.14 13:05 Сейчас в теме
Создайте внешнюю обработку с формой по умолчанию, и в событии кнопки"Выполнить"вставьте:
ИнтернетПоддержкаПользователейВызовСервера.УстановитьНастройкуПовторитьПопыткуПодключенияПриСтартеПрогр­аммы(Ложь);
Ну, и, исполните её в предприятии, оно и исчезнет(пока в сервисе не нажмёте на"интернет-поддержка пользователей":-)))
Оставьте свое сообщение