• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Забыл как делать вложения фйлов в РТ поле

  • Автор темы lionk
  • Дата начала
L

lionk

Делаю вложение фотграфии в РТ поле, и импорт (отображаю картинку) в другом поле.
Но файл прикрепляется к телу документа а не кладётся в поле, и приходится в postclose перекладывать его куда надо. Ну вобщем ситуация как с вложением файлов через веб.
Я шото забыл так и должно быть?
Или у меня гдето ошибка?
Использую клиент 8.0.

вот код вложения

Код:
Dim ws As New NotesUIWorkSpace

Dim doc As notesdocument

Dim files As Variant
Dim filepath As String
Dim filename As String
Dim in_path As String	
Dim out_path As String
Dim rtitem As NotesRichTextItem
Dim object As NotesEmbeddedObject


Dim js As JAVASESSION
Dim thumbnailClass As JAVACLASS
Dim thumbnailObject As JavaObject
Set js = New JAVASESSION
Set thumbnailClass = js.GetClass("ThumbNail")
Set thumbnailObject = thumbnailClass.CreateObject

imp_tn_x_res=187
imp_tn_y_res=205
imp_tn_quality=100
imp_tn_prefix="t_"

Dim returnCode As Variant


ONPD_Temp = LocateSystemTemp
files = FileOpenDialog("", "", ONPD_Image_Formats, "", "Оберіть фотографію")
' Check if user didn't select any file or canceled.	
If (Left(Files(0),8) = "{%Err%}-") Then
Exit Sub
End If

'	Forall filepath In files
filepath=files(0)
filename = Strrightback(filepath,"\")

out_path = ONPD_Temp+"\" + imp_tn_prefix + Strleftback(filename,".") + ".jpg"

'тут делаю ресайз фотки под необходимий размер
returnCode = thumbnailObject.ThumbnailThis(filepath, out_path , Cint(imp_tn_x_res), Cint(imp_tn_y_res),Cint(imp_tn_quality)) 

Call CurUIDoc.GotoField("fotort")
Call CurUIDoc.Import("JPEG Image",out_path)
'		Call CurUIDoc.GotoField("fotofile")

'		Call CurDoc.RemoveItem("$file")
Set rtitem = CurDoc.GetFirstItem("fotofile")
If rtitem Is Nothing Then Print "!!!!!!!!!!!!!!!!!!!!!!!!!1" 'рт поле всегда есть... 
Set object = rtitem.EmbedObject ( EMBED_ATTACHMENT, "", out_path)

Call CurDoc.ReplaceItemValue("fotoname",imp_tn_prefix + Strleftback(filename,".") + ".jpg")

Kill out_path
'		Call CurDoc.Save(1,0)

Call CurUiDoc.Refresh(True,True) ' после рефреша импорт отображается а вложение нет
Print "OK"
'End Forall
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 941
609
BIT
215
в нек. случ. - луча закрывать UI док, вкладывать, сохранять, открывать заново...
а не долбаться у кривым UI ;)
 
Мы в соцсетях:

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