1. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

    Скрыть объявление

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

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

  1. lionk

    lionk Well-Known Member

    Репутация:
    0
    Регистрация:
    5 апр 2007
    Сообщения:
    310
    Симпатии:
    3
    Делаю вложение фотграфии в РТ поле, и импорт (отображаю картинку) в другом поле.
    Но файл прикрепляется к телу документа а не кладётся в поле, и приходится в 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
     
  2. lmike

    lmike нет, пердело совершенство
    Lotus team

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

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