Встроеный почтовый клиент

Внимание! Данный форум является модерируемым.
Для получения к нему доступа необходимо зарегистрироваться или авторизоваться на сайте.

Страницы: Пред. 1 2 3 След.
RSS
Встроеный почтовый клиент, Медленая база при использовании встроеного почтового клиента
 
Цитата
Ситуация следующая: при получении писем конфигурация (как и любой другой почтовик) должна понять - какие письма нужно загрузить, а какие уже загружены. Почтовый сервер не может хранить информацию о том, какие письма кому он отдал.
При получении почты используется:
ИнтернетПочта (InternetMail)
ПолучитьИдентификаторы (GetUIDL)
Синтаксис:

ПолучитьИдентификаторы(<МассивИдентификаторов>, <ПараметрыОтбора>)
Параметры:

<МассивИдентификаторов> (необязательный)

<ПараметрыОтбора> (необязательный)

Тип: Структура.
В качестве ключей структуры используются названия свойств письма, по которым осуществляется отбор.
Значения могут быть выражения следующих типов: Строка, Дата, Число, Булево.
Тип значения определяется ключом. Например, если требуется отобрать письма до определённой даты, то в качестве значения необходимо использовать выражения типа Дата.
Если в качестве значения используется строка, то регистр не имеет значения.
Если заданы несколько ключей, то они применяются последовательно по логическому И.
ОтправленОтвет (Answered) - Булево. Отобрать сообщения, у которых установлен флаг – Answered;
............
Прочитанные (Seen) - Булево. Отобрать сообщения, которые были прочитаны или не прочитаны;
Новые (New) - Булево. Отобрать новые или старые сообщения.

Возвращаемое значение:
Тип: Массив.
Описание:
Возвращает массив, содержащий идентификаторы всех или новых сообщений, находящихся в почтовом ящике на сервере.

Как видим из встроенной справки можно получать с сервера только новые письма. В crm 2.0 этот фильтр не установлен скорее всего по причине корректного совместного использования встроенной почты и внешнего почтового клиента. Этот метод отрабатывает ооочень медленно, и занимает львиную долю времени при получении почты (как впринципе и видно из приведенного замера производительности). Причем пробовал перенастроить протокол получения почты на IMAP  скорости выполнения не добавило. У нас в CRM около 10 учетных записей электроной почты, подключеннных к CRM, регламентное задание получение писем отрабатывает где-то 5 мин, причем не важно лежит на сервере 1000 писем или 1-2. Скорость работы встроенного почтового клиента сильно огорчает. Причем производительность низкая на уровне платформы, а не CRM.

Цитата
Тот самый "МассивЗаголовковПисем", который и передается в метод, вызывающий зависание системы.

Тут-то как раз все быстро делается запросом. Идентификаторы не такие уж и длинные.По крайней мере у нас почтовый сервер такие выдает.
 
Цитата
Константин Калашников пишет:
ПолучитьИдентификаторы(<МассивИдентификаторов>, <ПараметрыОтбора>)
Цитата
Константин Калашников пишет:
Тут-то как раз все быстро делается запросом. Идентификаторы не такие уж и длинные.По крайней мере у нас почтовый сервер такие выдает.
Это вы говорите про метод "ПолучитьИдентификаторы()"
Но в УТ10.3 и соответственно в CRM используется метод "ПолучитьЗаголовки()", а не ПолучитьИдентификаторы().
А заголовок письма содержит довольно много информации. Если в папке входящих тысячи писем, то объем заголовков будет большим.

Цитата
Константин Калашников пишет:
В crm 2.0 этот фильтр не установлен скорее всего по причине корректного совместного использования встроенной почты и внешнего почтового клиента.
Вы пишете про CRM 2.0, а тема и обсуждаемый выше вопрос про CRM 1.4.
В CRM 2 совсем другой механизм получения и хранения данных почты.


Цитата
Константин Калашников пишет:
Причем пробовал перенастроить протокол получения почты на IMAP скорости выполнения не добавило
IMAP это по сути просто другой протокол получения данный, он не дает прироста в скорости. Мне кажется должно быть даже наоборот, несколько медленнее.


По поводу свойства  "ПараметрыОтбора" нужно проанализировать.
Проблема в том что у метода "ПолучитьЗаголовки" раньше (в пору разработки УТ10.3) не было никаких параметров, отборы появились уже позже. И как я понимаю, с тех пор механизм не подстраивали под новые возможности платформы. А поскольку с CRM делаются спарки  типовых конфигураций УТ, УПП и КА - там почтовый клиент не модифицировался тоже.

На данный момент самое правильное решение - не хранить в папке "Входящие" все письма, а переносить их после получения в спец. папку или Архив.
Изменено: Алексей Полубенский - 23.12.2013 06:28:24
 
Цитата
Константин Калашников пишет:
Как видим из встроенной справки можно получать с сервера только новые письма.

Вы опустили самую часть описания:
Цитата
Параметры:

<МассивИдентификаторов> (необязательный)

Тип: Массив.
Для получения всех идентификаторов сообщений из почтового ящика необходимо передать пустой массив. Если же надо получить идентификаторы только новых сообщений, то необходимо передать массив, заполненный ранее полученными идентификаторами (свойство Идентификатор).
Получение "только новых" определяется именно составом переданного массива идентификаторов. Как я уже писал выше, почтовый сервер не может определить какие сообщения новые, а какие старые. Он не хранит да и не может хранить такие данные, ведь почту из одного аккаунта можно получать много раз раз в разных почтовых системах на разных устройствах и в разное время. Поэтому нет единого понятия "новая почта". Почта может быть "новой" только в контексте конкретной ученой записи какого то почтового менеджера. И чтобы указать серверу, какие сообщения считать новыми, а какие старыми - и передается массив идентификаторов или заголовков ранее полученных писем. Так мы указываем что переданные письма являются старыми и нужно получить новые, то есть не находящиеся в это массиве.

Я не проверял еще, но мне кажется свойство отбора "Новые" позволит лишь указать: надо получить все письма, кроме переданных (Новые = Истина) или наоборот, только те что переданы , то есть старые письма (Новые = Ложь)...

А вот свойство "ПослеДатыОтправления" интересное, нужно проверить как оно работает. Если позволяет выбирать без всяких переданных идентификаторов  только те письма, что пришли после некой даты (например не старше месяца от текущей даты) - это стоит вынести в настройку учетной записи...
 
вставлю свои 5 копеек :)
Есть один почтовый ящик, к которому есть доступ у всех только на чтение. Получение почты в этот ящик происходит регламентным заданием каждые 5 минут.
Дальше вот какое НО:
Администраторы нормально открывают почту и видят вложения
Обычные пользователи у которых доступ только на чтение не видят вложений. Для того, чтобы они увидели пользователю с правами администратора необходимо открыть письмо. Дальше обычные пользователи начинают видеть вложения в данном письме.
Сумбурно объяснил, если не понятно - спрашивайте.
 
Цитата
вставлю свои 5 копеек  
Есть один почтовый ящик, к которому есть доступ у всех только на чтение. Получение почты в этот ящик происходит регламентным заданием каждые 5 минут.
Дальше вот какое НО:
Администраторы нормально открывают почту и видят вложения
Обычные пользователи у которых доступ только на чтение не видят вложений. Для того, чтобы они увидели пользователю с правами администратора необходимо открыть письмо. Дальше обычные пользователи начинают видеть вложения в данном письме.
Сумбурно объяснил, если не понятно - спрашивайте.

У нас в компании тоже есть такая "особенность" работы с почтой. Причем она то появляется, то исчезает непонятно с чем связано.
 
Цитата
Андрей Федотов пишет:
вставлю свои 5 копеек  
Есть один почтовый ящик, к которому есть доступ у всех только на чтение. Получение почты в этот ящик происходит регламентным заданием каждые 5 минут.
Дальше вот какое НО:
Администраторы нормально открывают почту и видят вложения
Обычные пользователи у которых доступ только на чтение не видят вложений. Для того, чтобы они увидели пользователю с правами администратора необходимо открыть письмо. Дальше обычные пользователи начинают видеть вложения в данном письме.
Сумбурно объяснил, если не понятно - спрашивайте.
Добрый день!
Скажите пож-та про какую Конфигурацию в данном сообщение идет речь, чтобы я смогла проверить...
 
Комплексная автоматизация, редакция 1.1 + CRM, редакция 1.4 (1.1.39/1.4.7) (1.1.39.1)
1С:Предприятие 8.2 (8.2.19.68)
 
Ответ разработчиков 1С

Цитата
в 8.2 в синтакс-помощнике к методу ПолучитьЗаголовки не указано, что фильтрация работает только для протокола IMAP. В 8.3 описание было дополнено:

"Внимание! Фильтрация заголовков работает только при работе по протоколу IMAP. При работе по протоколу POP3 отбор писем не выполняется - метод вернет полный массив сообщений, даже если установлены ПараметрыОтбора "
 
Цитата
в 8.2 в синтакс-помощнике к методу ПолучитьЗаголовки не указано, что фильтрация работает только для протокола IMAP. В 8.3 описание было дополнено:

А метод ПолучитьИдентификаторы() тоже только для IMAP работает?
 
В справке 8.3.4 ничего не сказано про это. Либо нет такого ограничения, либо просто не указано. Сейчас спрошу в форуме 1С.
Проверить пока возможности нет.
Если вы будете проверять сами, отпишитесь пожалуйста тут о результатах!
 
Ответ от разработчиков 1С
Цитата
Да, тоже самое справедливо и для метода ПолучитьИденитификаторы. Справку дополним.
 
Подскажите, обновил с горем пополам КА+CRM 1.1/1.4.7 до 1.1/1.4.8
Обновление заняло 1,5 часа  :o ужс.. но не в этом дело...
в аннотации к обновлению написано:
Цитата
Реализована возможность  хранить  вложения  электронной почты  во  внешних  томах (включается в Настройках на закладке "Электронная почта")
Включил тома. Вложения действительно стали появляться в томе.
Два вопроса:
1. При удалении писем вложения в томе остаются - это так и должно быть?
2. Где находится обработка по переносу старых вложений?
Изменено: Андрей Федотов - 10.01.2014 00:14:43
 
еще один не приятный момент после перехода на 1.4.8
при попытке открыть старые вложения происходит следующее:
Цитата

{ОбщийМодуль.ПрисоединенныеФайлыКлиент.Модуль(165)}: Ошибка при вызове метода контекста (ПолучитьФайлы)
Если ПолучитьФайлы(ПолучаемыеФайлы, ПолученныеФайлы, , Ложь) Тогда
по причине:
Ошибка доступа к файлу 'C:\Users\anfe\AppData\Roaming\1C\Файлы\КомплекснаяАвтоматизаци­я_CRMПроф\Андрей'
Вложения не переносил в том т.к. не могу найти обработку, новые письма пришедшие с вложениями открываются нормально.
 
и еще:
Цитата
{ОбщийМодуль.РаботаСОбщимиПеременнымиПовтИсп.Модуль(84)}: Поле объекта не обнаружено (ГЛСООТВЕТСТВИЕПРИСОЕДИНЕННЫХФАЙЛОВПИСЬМА)
Возврат Константы[ИмяПараметраВР].Получить();
вот это попал я....  :cry:
 
Цитата
Андрей Федотов пишет:
Подскажите, обновил с горем пополам КА+CRM 1.1/1.4.7 до 1.1/1.4.8
Обновление заняло 1,5 часа    ужс.. но не в этом дело...
в аннотации к обновлению написано:
Цитата
Реализована возможность  хранить  вложения  электронной почты  во  внешних  томах (включается в Настройках на закладке "Электронная почта")
Включил тома. Вложения действительно стали появляться в томе.
Два вопроса:
1. При удалении писем вложения в томе остаются - это так и должно быть?
2. Где находится обработка по переносу старых вложений?
Добрый день!
Реализована возможность  хранить  вложения  электронной почты  во  внешних  томах -находится тут: Константы-Настройки программы-Электронные документы.
Изменено: Мария Измайлова - 10.01.2014 09:42:16
 
Обработка Перенос файлов в томах -можно открыть через "Операции" -"Обработки"- "Перенос файлов в тома"
 
вот такая ошибка при запуске обработки
Изменено: Андрей Федотов - 10.01.2014 09:52:00
 
Цитата
Андрей Федотов пишет:
и еще:
Цитата
{ОбщийМодуль.РаботаСОбщимиПеременнымиПовтИсп.Модуль(84)}: Поле объекта не обнаружено (ГЛСООТВЕТСТВИЕПРИСОЕДИНЕННЫХФАЙЛОВПИСЬМА)
Возврат Константы[ИмяПараметраВР].Получить();
вот это попал я....  
В какой момент возникает данная ошибка?
 
Цитата
В какой момент возникает данная ошибка?
Если я правильно понимаю, то возникает в том случае если в письме входящем есть картинка. Картинка вставлена в тело письма.
 
Цитата
Андрей Федотов пишет:
вот такая ошибка при запуске обработки
А Вы не забыли поставить тип хранения файлов "В томах на диске" и указать там путь к тому?
 
Сейчас же оперативно начнем разбираться с данной ситуацией. На нашит тестовых базах все проходило гладко.
Возможно понадобится доступ к копии вашей базе, сможете его предоставить?
 
Алексей! да, смогу предоставить.
Только копию придется развернуть.

Цитата
А Вы не забыли поставить тип хранения файлов "В томах на диске" и указать там путь к тому?
нет, том создал и новые вложения писем уже попадают в него.
Изменено: Андрей Федотов - 10.01.2014 10:13:30
 
еще ошибка  :o теперь при попытке отправки письма пользователем не имеющим полных прав:
Цитата
Не отправлено: Электронное письмо  от 10.01.2014 11:53:25
Ошибка при добавлении присоединенного файла "test.txt":
Ошибка в ограничении доступа к данным.
объект: 'Справочник.ВложенияЭлектронныхПисем'; право: 'Добавление'
{(3, 17)}: Поле не найдено "ТекущаяТаблица.Объект.УчетнаяЗапись.ДоступКУчетнойЗаписи.Пользователь"
ТекущаяТаблица.<<?>>Объект.УчетнаяЗапись.ДоступКУчетнойЗаписи.Пользователь = &ТекущийПользователь

зачем же я обновился  :cry:
подскажите, можно этот вопрос как то решить?
 
Разработчик оперативно занимается  этим.
В спарке КА действительно есть ошибки, которых нет в самой CRM.
Будет возможность оперативно внести изменения через удаленный доступ к вашей базе, чтобы не ждать выхода нового релиза?
База снята с поддержки?
Изменено: Алексей Полубенский - 10.01.2014 12:18:32
 
сейчас снял, возможность есть.
Страницы: Пред. 1 2 3 След.
Читают тему
Поддержка отраслевых решений «1С-Рарус»
Услуги 1С