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

Тема в разделе "Lotus - Программирование", создана пользователем lionk, 8 ноя 2010.

  1. lionk

    lionk Well-Known Member

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

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

    Код (LotusScript):
    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
     
  2. lmike

    lmike нет, пердело совершенство
    Команда форума Lotus team

    Регистрация:
    27 авг 2008
    Сообщения:
    6.083
    Симпатии:
    300
    в нек. случ. - луча закрывать UI док, вкладывать, сохранять, открывать заново...
    а не долбаться у кривым UI ;)
    вот, например
     
Загрузка...

Поделиться этой страницей