Форум продуктов IBM Lotus
Общие вопросы => Разработка приложений => Тема начата: toli4sky от 11 Февраль 2016, 07:58:50
-
Здравствуйте!
Подскажите, пожалуйста, как можно реализовать конвертирование вложенного файла word в pdf без сохранения его на диск. Как его сохранить на диск в pdf я сделал, но таким способом получится, что надо сначала word сохранить, потом его через open поймать с диска, снова сохранить, но уже в pdf и потом только вкладывать во вложение, в сам документ Lotus.
Т.е. вопрос состоит в том, как преобразовать файл, так сказать в "потоке", без лишних сохранений.
Я делаю так (вкратце):
Dim wrdApp As Variant
Dim attach As NotesEmbeddedObject
Dim dDoc as NotesDocument
Set dDoc=мой документ
Set wrdApp= CreateObject("Word.Application")
Set vEmb=dDoc.GetFirstItem( "Files" )
Set attach=vEmb.EmbeddedObjects(0)
и все, тут затык, как attach прикрутить к wrdApp, что б в итоге его конвертнуть или может по другому как то это делается? сразу attach можно преобразовать?
-
Раз никто не вкурсе как это по нормальному делается, то напишу как это можно сделать через "Костыль". Может пригодится.
Dim wrdApp As Variant ' Объект MS Word
Set wrdApp= CreateObject("Word.Application")
wrdApp.Visible = False
Dim wordDoc As Variant
Dim word As Variant
Dim FullFilePath As String
' тут мы или открываем с диска или можем взять его с вложения из аттача
Set wordDoc = wrdApp.Documents.Open(Fullfilepath, False, True, False)
FullFilePath = StrLeftBack(FullFilePath, ".") 'надо в пути урезать расширение файла, а то получится файл.doc.pdf
Call wordDoc.ExportAsFixedFormat(FullFilePath, 17) ' сохранить в PDF
Call wordDoc.Close(0)
wrdApp.quit
' а далее, тот файл, который сохранится как .PDF либо новым объектом "подбираем" и вкладываем во вложение, либо просто открываем для работы