Вход | Регистрация


ИнтернетПочта IMAP отбор по Дате

ИнтернетПочта IMAP отбор по Дате
Я
   spiller26
 
11.04.18 - 15:28
Пытаюсь получить почту с отбором по Дате, но всё равно выбирает все.
Хотя другие параметры отбора работают.
  
&НаСервере
Процедура ПолучитьНаСервере()
    
    Профиль = Новый ИнтернетПочтовыйПрофиль;

    Профиль.АутентификацияPOP3 = Ложь;
    Профиль.АутентификацияSMTP = Ложь;

    // IMAP

    Профиль.ИспользоватьSSLIMAP = Истина;
    Профиль.АдресСервераIMAP = Объект.АдресСервераIMAP;
    Профиль.ПортIMAP = Объект.ПортIMAP;     
    Профиль.ПользовательIMAP = Объект.ПользовательIMAP;
    Профиль.ПарольIMAP = Объект.ПарольIMAP;
    Профиль.ТолькоЗащищеннаяАутентификацияIMAP = Ложь;

    ПочтаIMAP = Новый ИнтернетПочта;

    Сообщ = Новый СообщениеПользователю();
    
    Попытка
        ПочтаIMAP.Подключиться(Профиль, ПротоколИнтернетПочты.IMAP);//ПротоколИнтернетПочты.POP3

        ПараметрыОтбораIMAP = Новый Структура;
        ПараметрыОтбораIMAP.Вставить("Seen", Ложь);
        ПараметрыОтбораIMAP.Вставить("Deleted", Ложь);
        ПараметрыОтбораIMAP.Вставить("PostDating", Дата("20180410"));
        ПочтаIMAP.ПолучитьЗаголовки(ПараметрыОтбораIMAP);
        МассивСообщений = Новый Массив;
        МассивСообщений = ПочтаIMAP.Выбрать(Ложь);
    Исключение
        Сообщ.Текст = " - Ошибка при подключении или приеме" + ОписаниеОшибки();
        Сообщ.Сообщить();
        Возврат;
    КонецПопытки;
    
    МассивСообщенийОбмена = Новый Массив;

    Если МассивСообщений.Количество() = 0 Тогда
        Сообщ.Текст = "Сообщений в почтовом ящике нет.";
        Сообщ.Сообщить();
        Возврат;
    КонецЕсли;
    
    Для Индекс = 0 По МассивСообщений.Количество() - 1 Цикл          
        //

    КонецЦикла;
    
    Сообщ.Текст = "Сообщения получены!";
    Сообщ.Сообщить();
    ПочтаIMAP.Отключиться(); 
    
КонецПроцедуры
 
 
   mehfk
 
1 - 11.04.18 - 15:33
Вообще, ПолучитьЗаголовки не комильфо, по возможности лучше использовать ПолучитьИдентификаторы.
   mehfk
 
2 - 11.04.18 - 15:36
ПочтаIMAP.ПолучитьЗаголовки(ПараметрыОтбораIMAP);
        МассивСообщений = Новый Массив;
        МассивСообщений = ПочтаIMAP.Выбрать(Ложь);

Ну получил ты Заголовки, никуда не сохранил, а выбираешь-то ты все равно все письма.
   mehfk
 
3 - 11.04.18 - 15:36
Сделай так, что-ли.
МассивЗаголовковСообщенийИлиИдентификаторов = ПочтаIMAP.ПолучитьЗаголовки(ПараметрыОтбораIMAP);
МассивСообщений = Новый Массив;
МассивСообщений = ПочтаIMAP.Выбрать(Ложь, МассивЗаголовковСообщенийИлиИдентификаторов);
   spiller26
 
4 - 11.04.18 - 15:42
(3) Не прокатило
   mehfk
 
5 - 11.04.18 - 15:46
Се ля ви.
   Azverin
 
6 - 11.04.18 - 15:50
на сколько помню, там хитро с этим - читать справку.
   spiller26
 
7 - 11.04.18 - 16:00
(5, 6) Вот где загвоздка была 
 ПараметрыОтбораIMAP.Вставить("Seen", Ложь);
Прочитано было письмо, и статус естественно у письма Прочитано = Истина

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует