Рассылка расчетных листков

1. n_spb 08.08.18 09:45 Сейчас в теме
ЗУП 3.1.6. Настроил рассылку расчетных листков по статье https://its.1c.ru/db/staff1c#content:34827:zup30. Возникла необходимость сделать отправку отчетов частями и с интервалом во времени т.к. при отправке всех сразу отчетов возникают проблемы с почтовым сервером. Подскажите, как это сделать? Насколько понимаю типовыми средствами это не сделать только программно?
+
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
3. Stref75 08.08.18 09:55 Сейчас в теме
(1) у меня к вам встречный вопрос - вы на какие адреса отправляете на корпоративные или на личные? У нас никак не могут определиться какие адреса безопасно использовать (с точки зрения конфиденциальности данных). Если корпоративные - то получается что на корпоративном почтовом сервере будут лежать данные по зарплате. Если личные - то то тут вроде как сохранность данных на совести каждого физлица указавшего свою почту.
+
4. n_spb 08.08.18 10:06 Сейчас в теме
(3) Примерно половина адресов личных, половина адресов рабочих.
+
2. Stref75 08.08.18 09:51 Сейчас в теме
разбить на несколько рассылок, каждая из которых содержит определенное кол-во получателей (например по подразделениям) и настроить расписание с интервалом отправки
+
5. n_spb 08.08.18 10:06 Сейчас в теме
(2) Разбивать пробовал все равно не все письма приходят.
+
6. Stref75 08.08.18 11:02 Сейчас в теме
(5) ну значит сисадмина теребить, чтобы снял лимит на отправку
+
7. n_spb 08.08.18 11:20 Сейчас в теме
(6) Не вариант к сожалению. Необходимо в 1с программно реализовать отправку писем с интервалом. Как это сделать?
+
8. Stref75 08.08.18 11:28 Сейчас в теме
взять типовой механизм и вставить в него какую-то эмуляцию задержки, цикл с проверкой системного времени например
+
9. n_spb 08.08.18 11:51 Сейчас в теме
(8) Куда именно вставить задержку?
+
10. Stref75 08.08.18 13:37 Сейчас в теме
есть общий модуль РассылкаОтчетов. В нем есть функция ВыполнитьРассылку. В этой функции есть такой код

// Доставка.
		Попытка
			ОтправитьОтчетыПолучателю(
				ВложенияПолучателя,
				ПараметрыДоставки,
				СтрокаПолучатель);
			РассылкаВыполнена = Истина;
			ПараметрыДоставки.ВыполненаПоЭлектроннойПочте = Истина;
		Исключение
			ЗаписьЖурнала(ПараметрыЖурнала, ,
				НСтр("ru = 'Не удалось отправить отчеты получателю %1:'"), ИнформацияОбОшибке(), 
				"'"+ Строка(СтрокаПолучатель.Ключ) +"'");
		КонецПопытки;
Показать


вот я бы перед этим куском вставил код
ВремяОкончания = ТекущаяДата() + 10;  // 10 - это количество секунд задержки
	Пока ТекущаяДата() <= ВремяОкончания Цикл	
	КонецЦикла;
+
11. Stref75 08.08.18 13:38 Сейчас в теме
но по идее и с разбивкой по получателям и разнесением заданий по времени должно прекрасно работать
+
12. n_spb 10.08.18 17:32 Сейчас в теме
(11) Стало гораздо лучше работать. Из 200 писем теперь не доходят два. Как найти причину почему не доходят эти два письма в 1с?
+
13. Stref75 13.08.18 06:14 Сейчас в теме
смотреть надо, что сервер сообщает, может там просто ошибка в адресе или ещё какая-то другая причина
+
14. n_spb 13.08.18 19:09 Сейчас в теме
(13) В общем модуле РассылкаОтчетов в функции ВыполнитьРассылку посмотрел отладчиком здесь
Для Каждого СтрокаПолучатель Из ДеревоОтчетов.Строки Цикл 
количество элементов для рассылки. Это количество меньше чем в пользовательском режиме отображается в получателях рассылки. Как раз на эту разницу письма и не приходят, т.е.приходят все письма просто несколько физ. лиц пока ким-то причинам не попадают в
ДеревоОтчетов.Строки
.
+
Внимание! Тема сдана в архив

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот