Встроеный почтовый клиент
Внимание! Данный форум является модерируемым.
Для получения к нему доступа необходимо зарегистрироваться или авторизоваться на сайте.
Доступ к форуму партнерам «1C-Рарус» по дистрибуции предоставляется на сайте
rarus-soft.ru
ИнтернетПочта (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 совсем другой механизм получения и хранения данных почты.
Причем пробовал перенастроить протокол получения почты на IMAP скорости выполнения не добавило
По поводу свойства "ПараметрыОтбора" нужно проанализировать.
Проблема в том что у метода "ПолучитьЗаголовки" раньше (в пору разработки УТ10.3) не было никаких параметров, отборы появились уже позже. И как я понимаю, с тех пор механизм не подстраивали под новые возможности платформы. А поскольку с CRM делаются спарки типовых конфигураций УТ, УПП и КА - там почтовый клиент не модифицировался тоже.
На данный момент самое правильное решение - не хранить в папке "Входящие" все письма, а переносить их после получения в спец. папку или Архив.
Как видим из встроенной справки можно получать с сервера только новые письма.
Вы опустили самую часть описания:
<МассивИдентификаторов> (необязательный)
Тип: Массив.
Для получения всех идентификаторов сообщений из почтового ящика необходимо передать пустой массив. Если же надо получить идентификаторы только новых сообщений, то необходимо передать массив, заполненный ранее полученными идентификаторами (свойство Идентификатор).
Я не проверял еще, но мне кажется свойство отбора "Новые" позволит лишь указать: надо получить все письма, кроме переданных (Новые = Истина) или наоборот, только те что переданы , то есть старые письма (Новые = Ложь)...
А вот свойство "ПослеДатыОтправления" интересное, нужно проверить как оно работает. Если позволяет выбирать без всяких переданных идентификаторов только те письма, что пришли после некой даты (например не старше месяца от текущей даты) - это стоит вынести в настройку учетной записи...
Есть один почтовый ящик, к которому есть доступ у всех только на чтение. Получение почты в этот ящик происходит регламентным заданием каждые 5 минут.
Дальше вот какое НО:
Администраторы нормально открывают почту и видят вложения
Обычные пользователи у которых доступ только на чтение не видят вложений. Для того, чтобы они увидели пользователю с правами администратора необходимо открыть письмо. Дальше обычные пользователи начинают видеть вложения в данном письме.
Сумбурно объяснил, если не понятно - спрашивайте.
Есть один почтовый ящик, к которому есть доступ у всех только на чтение. Получение почты в этот ящик происходит регламентным заданием каждые 5 минут.
Дальше вот какое НО:
Администраторы нормально открывают почту и видят вложения
Обычные пользователи у которых доступ только на чтение не видят вложений. Для того, чтобы они увидели пользователю с правами администратора необходимо открыть письмо. Дальше обычные пользователи начинают видеть вложения в данном письме.
Сумбурно объяснил, если не понятно - спрашивайте.
У нас в компании тоже есть такая "особенность" работы с почтой. Причем она то появляется, то исчезает непонятно с чем связано.
вставлю свои 5 копеек
Есть один почтовый ящик, к которому есть доступ у всех только на чтение. Получение почты в этот ящик происходит регламентным заданием каждые 5 минут.
Дальше вот какое НО:
Администраторы нормально открывают почту и видят вложения
Обычные пользователи у которых доступ только на чтение не видят вложений. Для того, чтобы они увидели пользователю с правами администратора необходимо открыть письмо. Дальше обычные пользователи начинают видеть вложения в данном письме.
Сумбурно объяснил, если не понятно - спрашивайте.
Скажите пож-та про какую Конфигурацию в данном сообщение идет речь, чтобы я смогла проверить...
1С:Предприятие 8.2 (8.2.19.68)
"Внимание! Фильтрация заголовков работает только при работе по протоколу IMAP. При работе по протоколу POP3 отбор писем не выполняется - метод вернет полный массив сообщений, даже если установлены ПараметрыОтбора "
А метод ПолучитьИдентификаторы() тоже только для IMAP работает?
Проверить пока возможности нет.
Если вы будете проверять сами, отпишитесь пожалуйста тут о результатах!
Обновление заняло 1,5 часа ужс.. но не в этом дело...
в аннотации к обновлению написано:
Два вопроса:
1. При удалении писем вложения в томе остаются - это так и должно быть?
2. Где находится обработка по переносу старых вложений?
при попытке открыть старые вложения происходит следующее:
{ОбщийМодуль.ПрисоединенныеФайлыКлиент.Модуль(165)}: Ошибка при вызове метода контекста (ПолучитьФайлы)
Если ПолучитьФайлы(ПолучаемыеФайлы, ПолученныеФайлы, , Ложь) Тогда
по причине:
Ошибка доступа к файлу 'C:\Users\anfe\AppData\Roaming\1C\Файлы\КомплекснаяАвтоматизаци
Возврат Константы[ИмяПараметраВР].Получить();
Подскажите, обновил с горем пополам КА+CRM 1.1/1.4.7 до 1.1/1.4.8
Обновление заняло 1,5 часа ужс.. но не в этом дело...
в аннотации к обновлению написано:
Два вопроса:
1. При удалении писем вложения в томе остаются - это так и должно быть?
2. Где находится обработка по переносу старых вложений?
Реализована возможность хранить вложения электронной почты во внешних томах -находится тут: Константы-Настройки программы-Электронные документы.
Прикрепленные файлы
и еще:
Возврат Константы[ИмяПараметраВР].Получить();
вот такая ошибка при запуске обработки
Возможно понадобится доступ к копии вашей базе, сможете его предоставить?
Только копию придется развернуть.
Ошибка при добавлении присоединенного файла "test.txt":
Ошибка в ограничении доступа к данным.
объект: 'Справочник.ВложенияЭлектронныхПисем'; право: 'Добавление'
{(3, 17)}: Поле не найдено "ТекущаяТаблица.Объект.УчетнаяЗапись.ДоступКУчетнойЗаписи.Пользователь"
ТекущаяТаблица.<<?>>Объект.УчетнаяЗапись.ДоступКУчетнойЗаписи.Пользователь = &ТекущийПользователь
зачем же я обновился
подскажите, можно этот вопрос как то решить?
В спарке КА действительно есть ошибки, которых нет в самой CRM.
Будет возможность оперативно внести изменения через удаленный доступ к вашей базе, чтобы не ждать выхода нового релиза?
База снята с поддержки?