Имя: Пароль:
1C
1С v8
1C 8.2 IMAP. Как перенести сообщение из одной папки в другую?
0 Crush
 
13.03.14
17:46
Подключаюсь так
Подключение = Новый ИнтернетПочта;
Подключение.Подключиться(ИПП, ПротоколИнтернетПочты.IMAP);

Читаю дерево каталогов так
Подключение.ПолучитьПочтовыеЯщики()

Могу читать сообщения из каждого каталога, установив его текущим при переподключении
Подключение.Подключиться(ИПП, ПротоколИнтернетПочты.IMAP);
Подключение.ТекущийПочтовыйЯщик    = ТекущийПочтовыйЯщик;

А как сообщения перенести из INBOX в какой-нибудь другой каталог?
1 Добрый хачик
 
13.03.14
17:53
вроде никак
2 Crush
 
13.03.14
19:39
А вот тогда мой вклад в коллективный разум!!:))

ВремПодключение    = Новый ИнтернетПочта;
ВремПодключение.Подключиться(ИПП, ПротоколИнтернетПочты.IMAP);
с=ВремПодключение.Выбрать(Истина,Сообщение.Идентификатор);
ВремПодключение.ТекущийПочтовыйЯщик    = "INBOX/Box2";
ВремПодключение.Послать(с[0],ОбработкаТекстаИнтернетПочтовогоСообщения.Обрабатывать,ПротоколИнтернетПочты.IMAP);
ВремПодключение.ОчиститьУдаленныеСообщения();
ВремПодключение.Отключиться();
3 Crush
 
13.03.14
19:49
Более корректный код:

    мИд    = Сообщение.Идентификатор;
    
    ВремПодключение                = Новый ИнтернетПочта;
    ВремПодключение.Подключиться(ИПП, ПротоколИнтернетПочты.IMAP);
    с=ВремПодключение.Выбрать(Ложь,мИд);
    ВремПодключение.ТекущийПочтовыйЯщик    = "INBOX/Box2";
    ВремПодключение.Послать(с[0],ОбработкаТекстаИнтернетПочтовогоСообщения.НеОбрабатывать,ПротоколИнтернетПочты.IMAP);
    ВремПодключение.ТекущийПочтовыйЯщик    = "";
    ВремПодключение.УдалитьСообщения(мИд);
    ВремПодключение.ОчиститьУдаленныеСообщения();
    ВремПодключение.Отключиться();