Решено Проблемы с выгрузкой файлов

JohnLemon

Well-Known Member
20.08.2014
274
5
#1
Здравствуйте при выгрузке файлов, при совпадении имен как я понимаю почему то одному файлу присвается имя что в роде ATTH89S2.
Выгружаю так:
Код:
If (o.Type = EMBED_ATTACHMENT) Then
Call o.ExtractFile("C:\Temp\" & doc.universalId & "\"& o.Name)
End If
 

JohnLemon

Well-Known Member
20.08.2014
274
5
#4
Проблема в основном в том что нету расширения ) И не понятно во что и как переименовывать и как открыть )
 

maffl

Member
23.12.2013
15
10
#5
И не понятно во что и как переименовывать и как открыть
Есть такая функция Dir. Почитайте. Перед выгрузкой можно делать проверку в цикле, и если файл существует, вставлять в название индекс ( "название(1).ext","название(2).ext",...)
 

JohnLemon

Well-Known Member
20.08.2014
274
5
#6
Перед выгрузкой можно делать проверку в цикле, и если файл существует, вставлять в название индекс ( "название(1).ext","название(2).ext",...)
Файл то существует, и это нормальный файл и если к нему добавить расширение txt Он будет открываться и читаться, просто я так понимаю лотус сам как то разруливает имена файлов если они одинаковые и присваивает ATTH89S2 одному из файлов в качестве имени (. А вот с расширением проблемки...
 

susinmn

Well-Known Member
16.10.2007
529
8
#7
Здравствуйте при выгрузке файлов, при совпадении имен как я понимаю почему то одному файлу присвается имя что в роде ATTH89S2.
Выгружаю так:
Код:
If (o.Type = EMBED_ATTACHMENT) Then
Call o.ExtractFile("C:\Temp\" & doc.universalId & "\"& o.Name)
End If
А так o.Source?
 

maffl

Member
23.12.2013
15
10
#8
А я предлагаю самому именовать файл.
Код:
If (o.Type = EMBED_ATTACHMENT) Then
path = "C:\Temp\" & doc.universalId & "\"& o.Name
'тут намутить цикл и в цикле проверять сущ-е файлов. Если такого файла еще не сущ-т - можем выгрузить.
If dir(path) <> "" then path = "C:\Temp\" & doc.universalId & "\"& i & o.Name
Call o.ExtractFile(path)
End If
 

lmike

нет, пердело совершенство
Lotus team
27.08.2008
6 492
367
#11
пора уже прекратить мучать жывотное всякими экстрактами :)
вот два файла в ДХЛ:
XML:
....
<item name='$FILE' summary='true' sign='true' seal='true'><object><file hosttype='msdos'
compression='none' flags='storedindoc' encoding='none' name='HD.txt' size='1049'
storagesize='814' desiredcompression='huffman'>
.....
<item name='$FILE' summary='true' sign='true' seal='true'><object><file hosttype='msdos'
compression='none' flags='storedindoc' encoding='none' name='HD.002.txt'
size='1049' storagesize='814' desiredcompression='huffman'>
 
я думаю лишним будет опять тыкать в LAX палочкой ;)
 
выложу еще версию через потоки (выложенная ранее, где-то здесь, база - в память ДХЛ грузит)
 
Последнее редактирование модератором:

lmike

нет, пердело совершенство
Lotus team
27.08.2008
6 492
367
#12
файл переименовать в 7z (на всяк случай - если не поймет 7z его)
 
куда выгружает - должен писать в джава консоль (по-моему - в каталог нотусни)
агент testSaxForFiles
 

Вложения

lmike

нет, пердело совершенство
Lotus team
27.08.2008
6 492
367
#13
в БД есть еще "увлекательные моменты" Crypto по ГОСТУ (без либ, только примеры) выгрузка выделенных доков как ДХЛ, в корень диска, то что обсуждали с @k85 , ну и примитивная либа обработки ошибок (кот. присут. в кусках моего кода здесь)
 
еще XSLT - тоже здесь обсуждалось - получение опред. нод из хмл
 
Последнее редактирование модератором: