Имя: Пароль:
1C
 
Вытащить письма из Outlook
0 Smile
 
10.05.11
12:39
Всем привет!
Такая ситуация: пришло письмо, в нем вложены пересланные письма, в которых в свою очередь вложены файлы в формате пдф. Нужно вытащить эти пдф, не получается. даже не знаю куда копать, помогите пожалуйста ( вот скрин всего этого безобразия http://s19.radikal.ru/i192/1105/8b/7a4e6e1e2e73.jpg

Очень срочно надо, помогите пожауйста :)
1 Denp
 
10.05.11
12:40
(0) ДКМ сначала на пересылаемое письмо, потом уже в его окне ДКМ на вложение
2 Wobland
 
10.05.11
12:40
попробуй открыть батом
3 Smile
 
10.05.11
13:50
(1) простите, а что такое ДКМ?
(2) дык бата ни у кого нет и не будет, у всех аутлук, и вот надо именно с его помощью сделать (
4 Wobland
 
10.05.11
13:52
(3) 1) полагаю, двойной щелчок ;)
2) а поставить?
5 Nutsiiam
 
10.05.11
13:55
(0) у письма аутлуковского есть коллекция Attachments. Собственно, чтобы решить твою задачу, нужно в цикле обойти ее, посмотреть расширения вложений - то что в pdf - то сохранить. Как сохранить - посмотри в VBA для аутлука. Там специальный метод есть на эту тему.
6 Wobland
 
10.05.11
13:56
(5) а я говорю, мышью немножко потыкать проще, чем обработку писать ;)
7 Smile
 
10.05.11
13:56
(4) а зачем мне щелкать-то на нем :) я ж пытаюсь программно сделать, т.е. нажмут кнопку, после чего будет подключение к почте, вытаскивание из вложенных писем файлы пдф, а потом планируется сделать пересылку именно этих пдфников соответствующим адресатам, опять же программно. С этим-то вроде нормально - мысли есть, а вот как вытащить эти пдфники - это трабл...(

а смысл ставить бат, если у всех юзеров стоит аутлук. Те, кому будут пересылаться файлы, тоже аутлук, в общем бат не канает совсем
8 Nutsiiam
 
10.05.11
13:57
в (5) - если задача правда сводится в программному сохранению из аутлука :) Если руками, то тогда да - читай (1) =)
9 Nutsiiam
 
10.05.11
13:57
(7) как вытащить эти файлы - я тебе уже написал. Обойди коллекцию атачов и сохрани их. Все. Задача на 5 мин. под чашечку кофе =)
10 Smile
 
10.05.11
13:58
(5)(9) спасибо большое, попробую сделать так :)
11 Wobland
 
10.05.11
13:58
(9) а вот при чём тут аутлук, когда можно прямо в почту смотреть (можно ведь?)
12 Smile
 
10.05.11
13:59
(8) именно программный метод нужно, я ж написала :) руками-то и смысла бы не было что-то писать )
13 Smile
 
10.05.11
14:01
(11) можно наверное
14 Nutsiiam
 
10.05.11
14:01
(10) там один подводный камень в виде GetDefaultFolder. В метод нужно прокидывать цифру - номер папки в дереве. Камень вот в чем - если у пользователей до фига разных фильтров по раскидке разных файлов по разным файлам - скорее всего будут проблемы. В 2010 аутлуке вроде полечили. Еще один камень - какие письма анализировать, т.к. они могут быть не прочитанные и прочитанные.

В любом случае, я те советую для начала любой скрипт сохранения атачев на любом языке найти - там поймешь куда надо копать уже.
15 Smile
 
10.05.11
14:02
вот смотрите, пыталась сделать так:

   тз=новый ТаблицаЗначений;
   тз.Колонки.Добавить("Кому");
   тз.Колонки.Добавить("ОтКого");
   тз.Колонки.Добавить("Тема");
   тз.Колонки.Добавить("Текст");
   тз.Колонки.Добавить("Дата");
   тз.Колонки.Добавить("ПутьВложения");
   
   Получатели = "";
   Файлы = "";
   // Как и в работе с 7.7 все это работает
   // только с Microsoft Outlook Express или
   // Microsoft Outlook
   Почта = Новый Почта;
   // Более подробно о "Подключиться()" можно прочитать
   // в синтакс-помошнике
   Почта.Подключиться();
   // Выбираем все сообщения
   СообщенияСписок = Почта.Выбрать(истина,Ложь);
   Для каждого Сообщение Из СообщенияСписок Цикл
       
       //Добавляем строку в табличную часть
       ТабСтрока = тз.Добавить();
       //Получателей может быть много
       Для каждого Получатель Из Сообщение.Получатели Цикл
           
           Получатели = Получатель.Пользователь +" <" + Получатель.Адрес+ " >";
           
       КонецЦикла;
       ТабСтрока.Кому=Получатели;
       Попытка
           ТабСтрока.ОтКого= Сообщение.Отправитель.Адрес;
       Исключение
           ТабСтрока.ОтКого=Сообщение.Отправитель;
       КонецПопытки;
       ТабСтрока.Тема = Сообщение.Тема;
       ТабСтрока.Текст = Сообщение.Текст;
       ТабСтрока.Дата = Сообщение.ДатаПолучения;
       // Перебираем вложения письма, их
       // тоже может быть много
       Для каждого Вложение Из Сообщение.Вложения Цикл
                   
           для Каждого влож из вложение.вложения цикл
               Влож.Данные.Записать(Влож.Наименование);
               Файлы=Файлы+Влож.Наименование+", ";

               Сообщить("проба");
           КонецЦикла;
       КонецЦикла;
       ТабСтрока.ПутьВложения = Файлы;
       //Конец 1С почта
   КонецЦикла;
   ЭлементыФормы.ТабличноеПоле.Значение=тз;
   ЭлементыФормы.ТабличноеПоле.СоздатьКолонки();
16 Smile
 
10.05.11
14:03
(14) ну тут-то без проблем, в Почта есть метод Выбрать(), где есть соответствующие параметры:

Почта.Выбрать (Mail.Get)
Почта (Mail)
Выбрать (Get)
Синтаксис:

Выбрать(<НепрочитанныеСообщения>, <Конверты>)
Параметры:

<НепрочитанныеСообщения> (необязательный)

Тип: Булево. Истина - выбирать только непрочитанные сообщения.
Значение по умолчанию: Истина
<Конверты> (необязательный)

Тип: Булево. Истина - выбирать только конверты сообщений (вложения не переносятся в возвращаемые сообщения).
Значение по умолчанию: Истина
Возвращаемое значение:

Тип: Массив. Массив объектов типа ПочтовоеСообщение.
Описание:

Используется для получения сообщений с сервера.

Доступность:

Толстый клиент.
Пример:

Почта = Новый Почта;
Почта.Подключиться();
Сообщения = Почта.Выбрать(Ложь, Ложь);
Почта.Отключиться();
17 Smile
 
10.05.11
14:04
мне нужны будут именно непрочитанные, все читать нафик не надо
18 Smile
 
10.05.11
14:15
нашла как с помощью ОЛЕ отправить письмо, помогите пожалуйста переделать чтобы наоборот читать полученные письма из аутлука с помощью того же ОЛЕ:

App = Новый COMОбъект("Outlook.Application");

НовоеПисьмо = App.CreateItem(0);
НовоеПисьмо.Recipients.Add(Адрес);
НовоеПисьмо.Subject = Заголовок;
НовоеПисьмо.Attachments.Add(ИмяФайла);

Попытка
НовоеПисьмо.Display();
Исключение

КонецПопытки
19 Wobland
 
10.05.11
14:19
20 Smile
 
10.05.11
14:24
(19) спасибо конечно большое, но я так не умею, как там написано :(
21 Smile
 
10.05.11
14:26
ведь загвоздка-то вся в том, что в письме вложено письмо, а пдф-файл во вложенном письме. проблем бы не было, если б файл был в первом.
22 Nutsiiam
 
10.05.11
14:35
так вложения - это та же коллекция обычных писем. Обходи ее, обходи атачи у этих писем и сохраняй их.
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn