Быстрый способ сохранить все вложения из выделенных документов

  • Автор темы phantom76
  • Дата начала
P

phantom76

Самое простое решение, сохранить все вложения из выбранных документов в представлении:

- помечаем документы в представлении
- на выделенных документах, правой кнопочкой мыши из контекстного меню выбираем "Forward"
- создается документ содержащий выделенный документы
- отправлять ничего не надо, в открывшемся документе кликаем правой кнопкой мыши по любому вложенному файлу,
в контекстном меню выбираем - "Save All" , указываем путь и сохраняем. Все.


P.S. Конечно , данную процедуру лучше реализовать на LS, но бывает иногда просят сделать очень срочно...
 

Мыш

Lotus Team
12.02.2008
1 228
30
BIT
138
Я бы не сказал, что способ "быстрый" - он же все аттачи перевставляет в новый док, да еще и рич-текст рендерит... Но для юзера подойдет! :)
 
P

phantom76

Я бы не сказал, что способ "быстрый" - он же все аттачи перевставляет в новый док, да еще и рич-текст рендерит... Но для юзера подойдет! :)

Именно, для юзера его и показал... Звонит юзер и говорит: "Как можно из данной базы срочно вынуть вложения по N документам?" . На предложения подождать, пока напишу агент, юзер не реагирует - ему нужно срочно в течение минуты- двух... вот оно решение - самое простое. Конечно я напишу агент и буду держать его на готове на будущее... Но для тех, кто сам не пишет - можно использовать данный способ.
 
D

Darker

Akupaka просто, подумал, что это лишнее, ведь человек проще способ придумал
 
A

Akupaka

Darker, у вас способы разные. Код бы не помешал в теме, может кому-то именно твой вариант подошел бы :)
 
D

Darker

Код:
	Dim s As New NotesSession
Dim col As NotesDocumentCollection
Dim doc As NotesDocument
Dim o As NotesEmbeddedObject
Set col=s.CurrentDatabase.UnprocessedDocuments
If col.Count=0 Then End
path="c:\Temp"
Set doc=col.GetFirstDocument
For i=1 To col.Count
attNames=Evaluate("@AttachmentNames(1)",doc)
Forall a In attNames
Set o=doc.GetAttachment(a)
o.ExtractFile(path+"\"+a)
End Forall
Set doc=col.GetNextDocument(doc)
Next
 
N

nvyush

Darker
Только не мешало бы проверочку — в разных документах могут оказаться одноимённые вложения.
 
H

hosm

+ темповую папку нормально получать...
PS: link removed
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 985
611
BIT
473
Darker
помимо ограничений с именами, упомянутых nvy , есть ограничения и по спсобу вложения, и типу поля боди (м.б. майм)
есть "универсальный" в широком дипозоне :) - тот что проекте для ПДФ (на кот. я здесь ссылался неоднократно)
он основан на DXL и SAX (с именами там "проблема" не решалась - не было задачи)
 
A

Akupaka

Господа, не допиливаем автора, а допиливаем код! :)
 
D

Darker

Может сюда еще прикрутить на валидность документа? а-ля (not .Isdeleted) и .isValid?
 
A

Akupaka

Если мне не изменяет память, то не все аттачи лежат в доке, могут лежать в РТ-полях, для таких надо идти через поле.
Вот, попробуй отправить док из вне на лотус, и изнутри. В первом случае вложения будут в доке, а во втором должны быть в поле Боди.
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 985
611
BIT
473
и не забываем про майм!
@AttachmentsNames(1) его не увидит

да и в "общем" - не всегда нужно получать оригинальный файл, и взаимодействие с ФС м.б. ограничено
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!