Добрый день всем!
Для начала предыстория. УТ 10.3, последний релиз. Были настроены
узлы РИБ с обновлением через почту. Для этого создано 5 независимых
ящиков на яндексе. Кроме файлов изменений и рекламы яндекса туда
ничего не ходит.
Сначала всё работало как часы ))) Потом база разрослась до 1,3 Гб
и всё перестало работать. Вернее, письма отправляются, но при
получении пишется, что входящий файл не найден.
По ходу разбирательства удалил из базы все документы электронных
сообщений и почистил справочник вложений. База ужалась на 600Мб.
Начал ковырять подробнее. В модуле УправлениеЭлектроннойПочтой
есть процедура ПолучениеОтправкаПисем. Далее по алгоритму:
Ветка "Если СоответствиеУчетныхЗаписейВсего.Количество() > 0 Тогда"
В ней цикл "Для каждого ЭлементСоответствия Из СоответствиеУчетныхЗаписейВсего Цикл"
В нём ветка "Если Получить Тогда".
Все письма загружаются из почты нормально. Данные присутствуют.
Обходим письма:
"Для каждого ИнтернетПисьмо Из МассивПисем Цикл"
И вот здесь начинаетсмя интересное.
ИнтернетПисьмо.Вложения.Количество() = 0
Здесь при вложении файла обмена Message_*_*.zip архив почему-то
попадает не во вложения, а в текст письма в формате base64
Пример текста письма ниже:
Ещё один момент.
Так как обновлений накопилось много, они не могли отправиться
почтой и соединение разрывалось. Для корректной работы
в дальнейшем я выгрузил изменения на флешку, перетянул их
в дочерние базы, а потом также из них перетянул нформацию
обратно. Файл изменений стал маленький.
По времени не помню, чтобы это точно совпало с глюком,
но +- неделя точно.
С яндексом и их спамообороной было много проблем. Перешел на мэйл ру. Можешь пропробывать сделать то же самое.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший