Мастер рассылки e-mail 2.2 для управляемых форм

28.12.18

Интеграция - Email рассылки

Для пользователей: переделанный из старый разработки под 8.2 с использованием библиотеки Мастер рассылки e-mail 2.2 (ERP, УТ, БП) (Только управляемые формы), который теперь может запускаться под любой версией платформы с разрешенными или запрещенными модальными/синхронными вызовами в конфигурации. Также удобный выбор e-mail и их владельцев с помощью отбора динамического списка по любым критериям и галочки исключения.

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

Наименование Файл Версия Размер
Отправка Электронных Писем УФ 2.2
.epf 35,75Kb
17
.epf 2.2 35,75Kb 17 Скачать
Отправка Электронных Писем УФ 2.1
.epf 32,83Kb
7
.epf 2_1 32,83Kb 7 Скачать

С появлением платформы 8.3  появилась возможность настройки работы в конфигурации без модальных/ синхронных вызовов для поддержки работы через браузеры. При вызове старых методов теперь либо происходит ошибка, либо предупреждение. Подробнее об этом Вы можете  прочитать вот здесь: http://its.1c.ru/docs/v8nonmodal/

То есть теперь надо переписывать старые обработки с использованием новых методов. Но если переписать без затей, то клиент не сможет запустить ее на старой платформе/конфигурации.

Я столкнулся с решением этой проблемы в тексте обработки консоли управляемых запросов. Начав переделывать по этой технологии свои обработки, я столкнулся с недопустимым временем переделки. Для упрощения переделки я предлагаю свою библиотеку подмены  модальных/синхронных вызовов, и пример ее использования.

Библиотека замены модальных и синхронных вызовов 1.02

#Область LibreUniModal_1_02


////////////////////////////////////////////////////////////////////////////////
// ПРОЦЕДУРЫ И ФУНКЦИИ Библиотеки универсальных вызовов с автоматической поддержкой модальности
// Предназначены для простоты написания кода работающего в любой версии 8.2 - 8.3 с поддержкой модальности или без оной.
// Молочников Олег 2015г. Версия библиотеки 1.02
// Если Вы будете дорабатывать библиотеку, пожалуйста поделитесь исправлениями oleg.molochnikov@mail.ru
// 
// Для работы библиотеки необходимо добавить две переменные объекта
// МодальностьРазрешена Булево 
// ВерсияПриложения Строка
// 
// Следующий код нужно включить в процедуру "При создании на сервере"
// 
// СисИнфо = Новый СистемнаяИнформация;
// Объект.ВерсияПриложения = СисИнфо.ВерсияПриложения;
// 
// Если Лев(Объект.ВерсияПриложения, 3) = "8.2" Тогда
// Объект.МодальностьРазрешена = Истина;
// Иначе
// Выполнить("Объект.МодальностьРазрешена = Метаданные.РежимИспользованияМодальности = Метаданные.СвойстваОбъектов.РежимИспользованияМодальности.Использовать;");
// КонецЕсли;
//

&НаКлиенте
Процедура УниверсальныйПредупреждение(ТекстПредупреждения,ТаймаутПредупреждения=0,ЗаголовокПредупреждения="",КодПослеобработки="",ДополнительныеПараметры="")
	Если ТипЗнч(ДополнительныеПараметры) <> Тип("Структура") Тогда
		ДополнительныеПараметры=Новый Структура;
	КонецЕсли;
	
	ДополнительныеПараметры.Вставить("КодПослеобработки",КодПослеобработки);
	ДополнительныеПараметры.Вставить("ТекстПредупреждения",ТекстПредупреждения);
	
	Если Объект.МодальностьРазрешена Тогда
		КодВыполнения = 
		" Предупреждение(ТекстПредупреждения,ТаймаутПредупреждения,ЗаголовокПредупреждения);
 | УниверсальныйПредупреждениеЗавершение(ДополнительныеПараметры);";
	Иначе
		КодВыполнения = "
 | ПоказатьПредупреждение(Новый ОписаниеОповещения(""УниверсальныйПредупреждениеЗавершение"", ЭтаФорма,ДополнительныеПараметры), ТекстПредупреждения,ТаймаутПредупреждения,ЗаголовокПредупреждения);";
	КонецЕсли;
	
	Выполнить(КодВыполнения);
	
КонецПроцедуры
&НаКлиенте
Процедура УниверсальныйПредупреждениеЗавершение(ДополнительныеПараметры) Экспорт
	Если ДополнительныеПараметры.Свойство("КодПослеобработки") И ДополнительныеПараметры.КодПослеобработки<>"" Тогда
		Выполнить(ДополнительныеПараметры.КодПослеобработки);
	КонецЕсли;
КонецПроцедуры


&НаКлиенте
Процедура УниверсальныйОткрытьЗначение(ОбъектОткрытия,КодПослеобработки="",ДополнительныеПараметры="")
	Если ДополнительныеПараметры="" Тогда
		ДополнительныеПараметры=Новый Структура;
		ДополнительныеПараметры.Вставить("КодПослеобработки",КодПослеобработки);
		ДополнительныеПараметры.Вставить("ОбъектОткрытия",ОбъектОткрытия);
	КонецЕсли;
	
	Если Объект.МодальностьРазрешена Тогда
		КодВыполнения = 
		" ОткрытьЗначение(ОбъектОткрытия);
 | УниверсальныйОткрытьЗначениеЗавершение(ДополнительныеПараметры);";
	Иначе
		КодВыполнения = "
 | ПоказатьЗначение(Новый ОписаниеОповещения(""УниверсальныйОткрытьЗначениеЗавершение"", ЭтаФорма,ДополнительныеПараметры), ОбъектОткрытия);"; 
	КонецЕсли;
	
	Выполнить(КодВыполнения);
	
КонецПроцедуры
&НаКлиенте
Процедура УниверсальныйОткрытьЗначениеЗавершение(ДополнительныеПараметры) Экспорт
	Если ДополнительныеПараметры="" Тогда
		Возврат;
	КонецЕсли;
	Если ДополнительныеПараметры.Свойство("КодПослеобработки") И ДополнительныеПараметры.КодПослеобработки<>"" Тогда
		Выполнить(ДополнительныеПараметры.КодПослеобработки);
	КонецЕсли;
КонецПроцедуры

&НаКлиенте
Процедура УниверсальныйЗапуститьПриложение(СтрокаКоманды,ТекущийКаталог="",КодПослеобработки="",ДополнительныеПараметры="")
	Если ДополнительныеПараметры="" Тогда
		ДополнительныеПараметры=Новый Структура;
		ДополнительныеПараметры.Вставить("КодПослеобработки",КодПослеобработки);
		ДополнительныеПараметры.Вставить("ТекущийКаталог",ТекущийКаталог);
	КонецЕсли;
	
	Если Объект.МодальностьРазрешена Тогда
		КодВыполнения = 
		" ЗапуститьПриложение(СтрокаКоманды,ТекущийКаталог);
 | УниверсальныйЗапуститьПриложениеЗавершение(ДополнительныеПараметры);";
	Иначе
		КодВыполнения = "
 | НачатьЗапускПриложения(Новый ОписаниеОповещения(""УниверсальныйЗапуститьПриложениеЗавершение"", ЭтаФорма), СтрокаКоманды,ТекущийКаталог);"; 
	КонецЕсли;
	
	
	Выполнить(КодВыполнения);
	
КонецПроцедуры
&НаКлиенте
Процедура УниверсальныйЗапуститьПриложениеЗавершение(ДополнительныеПараметры) Экспорт
	Если ТипЗнч(ДополнительныеПараметры) <> Тип("Структура") Тогда
		ДополнительныеПараметры=Новый Структура;
	КонецЕсли;
	Если ДополнительныеПараметры.Свойство("КодПослеобработки") И ДополнительныеПараметры.КодПослеобработки<>"" Тогда
		Выполнить(ДополнительныеПараметры.КодПослеобработки);
	КонецЕсли;
КонецПроцедуры


&НаКлиенте
Процедура УниверсальныйВыборФайлов(Режим,МодульОбработкиФайла,ПолноеИмяФайла="",Фильтр="*",МножественныйВыбор=Ложь,Заголовок="Выберите файл",ДополнительныеПараметры="")
	
	Если ТипЗнч(ДополнительныеПараметры) <> Тип("Структура") Тогда
		ДополнительныеПараметры=Новый Структура;
	КонецЕсли;
	ДополнительныеПараметры.Вставить("МодульОбработкиФайла",МодульОбработкиФайла);
	ДополнительныеПараметры.Вставить("ПолноеИмяФайла",ПолноеИмяФайла);
	
    ДиалогОткрытияФайла = Новый ДиалогВыбораФайла(Режим);
    ДиалогОткрытияФайла.ПолноеИмяФайла = ПолноеИмяФайла;
    ДиалогОткрытияФайла.Фильтр = Фильтр;
    ДиалогОткрытияФайла.МножественныйВыбор = МножественныйВыбор;
    ДиалогОткрытияФайла.Заголовок = Заголовок;

	Если Объект.МодальностьРазрешена Тогда
		КодВыполнения = 
		"Если ДиалогОткрытияФайла.Выбрать() Тогда
 | УниверсальныйВыборФайловЗавершение(ДиалогОткрытияФайла.ВыбранныеФайлы, ДополнительныеПараметры);
 |КонецЕсли;";
	Иначе
		КодВыполнения = "
 |Оповещение = Новый ОписаниеОповещения(""УниверсальныйВыборФайловЗавершение"", ЭтаФорма,ДополнительныеПараметры);
 |ДиалогОткрытияФайла.Показать(Оповещение);"; 
	КонецЕсли;
	
	Выполнить(КодВыполнения);
	
КонецПроцедуры

&НаКлиенте
Процедура УниверсальныйВыборФайловЗавершение(ВыбранныеФайлы, ДополнительныеПараметры) Экспорт
	
	Если ВыбранныеФайлы=Неопределено ИЛИ ВыбранныеФайлы.Количество() = 0 Тогда
		Возврат;
	КонецЕсли;
	
	Для Каждого  ВыбранныйФайл из ВыбранныеФайлы Цикл
		Выполнить(ДополнительныеПараметры.МодульОбработкиФайла);
	КонецЦикла;	
КонецПроцедуры

&НаКлиенте
Процедура УниверсальныйВопрос(ТекстВопроса,МодульОбработки1,РежимДиалогаВопроса,Ответ1,Ответ2="", МодульОбработки2="",ДополнительныеПараметры="");
	Если ТипЗнч(ДополнительныеПараметры) <> Тип("Структура") Тогда
		ДополнительныеПараметры=Новый Структура;
	КонецЕсли;
	ДополнительныеПараметры.Вставить("Ответ1",Ответ1);
	ДополнительныеПараметры.Вставить("Ответ2",Ответ2);
	ДополнительныеПараметры.Вставить("МодульОбработки1",МодульОбработки1);
	ДополнительныеПараметры.Вставить("МодульОбработки2",МодульОбработки2);
	Если Объект.МодальностьРазрешена Тогда
		КодВыполнения = "
 |Результат = Вопрос(ТекстВопроса, РежимДиалогаВопрос.ДаНет, , КодВозвратаДиалога.Да);
 |УниверсальныйВопросЗавершение(Результат, ДополнительныеПараметры);";
	Иначе
		КодВыполнения = "
 |Оповещение = Новый ОписаниеОповещения(""УниверсальныйВопросЗавершение"", ЭтаФорма,ДополнительныеПараметры);
 |ПоказатьВопрос(Оповещение, ТекстВопроса, РежимДиалогаВопрос.ДаНет);"; 
	КонецЕсли;
	Выполнить(КодВыполнения);
КонецПроцедуры

&НаКлиенте
Процедура УниверсальныйВопросЗавершение(Результат, ДополнительныеПараметры) Экспорт
	Если Результат=ДополнительныеПараметры.Ответ1 Тогда
		Выполнить(ДополнительныеПараметры.МодульОбработки1);
	ИначеЕсли ДополнительныеПараметры.МодульОбработки2<>"" И Результат=ДополнительныеПараметры.Ответ2 Тогда	
		Выполнить(ДополнительныеПараметры.МодульОбработки2);
	КонецЕсли;
КонецПроцедуры

 #КонецОбласти

Для пользователей: Предлагаю вашему вниманию переделанный по этой технологии 

Мастер рассылки e-mail 2.2 (ERP,УТ, БП) (Только управляемые формы)

За основу, взята //infostart.ru/public/155390/?rate=1

Добавлены: Динамический список для отбора e-mail и их владельцев. Можно осуществлять быстрый отбор по любым полям справочников партнеры, контактной информации партнеров. Например отобрать по ответственному менеджеру, а  потом исключить галочками ненужных контактных лиц. 

Если поле "кому" пустое, то используется динамический список.

Добавлена кнопка предварительного тестирования перед отправкой.

рассылка e-mail

См. также

"Акты сверки +" Групповая подготовка и рассылка актов сверки для Бухгалтерии 3.0.

Взаиморасчеты Email рассылки Акт сверки Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Бухгалтерский учет Платные (руб)

Внешняя обработка для Бухгалтерии 3.0 - позволяет автоматически формировать документы «Акт сверки расчетов» с контрагентами за выбранный период с последующей фоновой отправкой на почту контрагента.

3000 руб.

25.11.2020    22068    162    4    

148

Автоматическая рассылка отчетов из 1С: Управление торговлей 10.3 и 1С:УПП по электронной почте

Email рассылки Оптовая торговля Платформа 1С v8.3 1С:Управление торговлей 10 1С:Управление производственным предприятием Управленческий учет Платные (руб)

Многим сотрудникам предприятия требуется актуальная и достоверная информация для принятия верных управленческих решений. Получить данную информацию можно при помощи отчетов, существующих в конфигурации «1С: Управление торговлей 10.3» или «1С:УПП». Но не всегда у пользователей есть время, возможность и/или желание формировать отчеты непосредственно в системе. Намного привычней и удобней получать готовые отчеты на электронную почту, не открывая 1С.

12000 руб.

16.04.2014    84238    100    91    

94

Email, SMS, Telegram рассылки из 1С - Директ Маркетинг

Управление взаимоотношениями с клиентами (CRM) Мессенджеры и боты SMS рассылки Email рассылки Платформа 1С v8.3 Конфигурации 1cv8 Управленческий учет Платные (руб)

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

7788 руб.

07.04.2014    83610    40    191    

127

Групповое создание актов сверок

Взаиморасчеты Email рассылки Акт сверки Платформа 1С v8.3 Бухгалтерский учет 1С:Управление торговлей 10 1С:Бухгалтерия 3.0 Бухгалтерский учет Платные (руб)

Обработки предназначены для массового создания актов сверки и отправки их по электронной почте для конфигураций Управление торговлей 10.3. и Бухгалтерия предприятия 3.0. Для Бухгалтерии 3.0 Разработка велась на 1С:Предприятие 8.3 (8.3.15.1830). проверялась на Бухгалтерия предприятия 3.0 (3.0.71.83) и 3.0.76.77 Для Управление торговлей 10.3 Разработка велась на 1С:Предприятие 8.3 релиз конфигурации (10.3.61.2) . РАБОТАЕТ НА БАЗОВЫХ и ПРОФ. ВЕРСИЯХ.

2000 руб.

24.04.2020    30337    117    66    

98

SALE! 15%

Массовая рассылка печатных форм любых документов по электронной почте

Email рассылки Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

За $m и Руб. Решение для массовой рассылки печатных форм (в том числе и дополнительных) любых документов, и произвольных файлов по электронной почте. Рассылка пакета документов. Добавление факсимильных печати и подписи. Произвольные шаблоны HTML/Simple text с автозаполнением любыми полями документа. Любые форматы файлов. Упаковка вложений в архив. Транслитерация имен файлов. Разбиение рассылки на произвольные порции. Обход спам-фильтров. Журналирование рассылок.

3600 3060 руб.

30.06.2022    8975    62    88    

25
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Franco 82 30.12.15 14:28 Сейчас в теме
Господа, а что значит «Выполнить(»?! Пользователи веб-клиента - идите лесом?!
2. milkers 2859 30.12.15 14:36 Сейчас в теме
(1) Franco, Пока да. Иначе обработка несовместима с 8.2. Надо думать, что можно сделать.
3. aspirator23 339 02.01.16 15:48 Сейчас в теме
Аналогично решал. Кроме стандартных вызовов, есть проблема с 1с-языком. В 8.3 появились функции и процедуры, которых нет в 8.2.
Решение похоже: либо использовать старые, либо выносить исполнение новых в зависимости от платформы в разные общие модули, формы обработок, отчетов.
Оставьте свое сообщение