Линк на фотку в РТ поле

G

Guest

Программер
Да, ту разобрался.
Код:
	Dim ws As New NotesUIWorkspace
Dim uidocST As NotesUIDocument
Set uidocST=ws.CurrentDocument
Dim RTItem As NotesRichTextItem
fn= ws.OpenFileDialog(False, "Выбрать файл", "GIF Image|*.gif", "c:\My Documents")
Forall FileName In fn
Call uidocST.GotoField("Foto")
Call uidocST.Import("GIF Image", FileName)

Set RTItem= New NotesRichTextItem(uidocST.Document, "Att" )
Call RTItem.EmbedObject(EMBED_ATTACHMENT, "", FileName) ' крепим аттачмент
End Forall
Тут вот косяк вылез....файл атачится к полю "Att" и атачится к полю "Foto"....хрен пойми почему.

Хм, а почему не сохраняешь док в конце ?
 
G

Guest

А вообще переоткрыть конечно нужно, атачи сразу не увидишь
 
O

Omh

Конечно, хранить 2 версии одного файла в документе (импортнутую и аттаченную) - не самый клёвый выход... :)
 
S

Sandr

Omh
Человек наверняка экспериментирует :) Врядли в конце останутся 2 версии одного файла...
 

Kizarek86

Green Team
20.07.2007
875
8
BIT
119
Sandr
Ну ищю варианты как можно сделать... почему в оба поля то вставляется атач?)
 
S

Sandr

Sandr
Ну ищю варианты как можно сделать... почему в оба поля то вставляется атач?)
В смысле?
Вы же в оба сами вставляете

тут:
Код:
		Call uidocST.Import("GIF Image", FileName)
и тут:
Код:
		Call RTItem.EmbedObject(EMBED_ATTACHMENT, "", FileName) ' крепим аттачмент
 

Kizarek86

Green Team
20.07.2007
875
8
BIT
119
Sandr
Код:
Call uidocST.Import("GIF Image", FileName)
мы тут разьве атачим файл?
 
G

Guest

Так что, картинка в доке не появляется, а аттача аж два ?
 

Kizarek86

Green Team
20.07.2007
875
8
BIT
119
Картинка должна появится в поле "foto"
Код:
		Call uidocST.GotoField("Foto")
Call uidocST.Import("GIF Image", FileName)
что она и делает.

а атач в другом поле (Att), чтобы он был но пользователь его не видел.
Код:
		Set RTItem= New NotesRichTextItem(uidocST.Document, "Att" )
Call RTItem.EmbedObject(EMBED_ATTACHMENT, "", FileName) ' крепим аттачмент
а атачит в оба поля.
 

Kizarek86

Green Team
20.07.2007
875
8
BIT
119
пля(

а мона сделать чтобы там только картинка была? без иконки приатаченого файла?)
 
G

Guest

Чтобы пользователь не видел аттача, просто скрой его от лотуса..А вот почему аттач появляется в обоих полях, ума не приложу..

Только предусмотри удаление предыдущего RTF с атачем каждый раз при нажатии кнопки "Добавить", чтобы не множить их в документе
 

Kizarek86

Green Team
20.07.2007
875
8
BIT
119
Программер
Ну Sandr грит что Импорт тоже атачит...хотя я незаметил)


кстати во все поля РТ вставляет атачи...чё то я косячу где то...
 

Kizarek86

Green Team
20.07.2007
875
8
BIT
119
Sandr
ну так я про что...у меня то есть...
это вот эта бяка атачит ко всем полям РТ, а не к "Att" файл
Код:
 Set RTItem= New NotesRichTextItem(uidocST.Document, "Att" )
Call RTItem.EmbedObject(EMBED_ATTACHMENT, "", FileName)
 
G

Guest

Sandr
ну так я про что...у меня то есть...
это вот эта бяка атачит ко всем полям РТ, а не к "Att" файл
Код:
 Set RTItem= New NotesRichTextItem(uidocST.Document, "Att" )
Call RTItem.EmbedObject(EMBED_ATTACHMENT, "", FileName)

Улучил сейчас свободную минутку и скопировал твой код себе на кнопку...Все работает, как по маслу !
Ниче не пойму, что у тебя стряслось
 

Kizarek86

Green Team
20.07.2007
875
8
BIT
119
код кнопки:
Код:
	Dim ws As New NotesUIWorkspace
Dim uidocST As NotesUIDocument
Set uidocST=ws.CurrentDocument
Set docST = uidocST .Document

fn= ws.OpenFileDialog(False, "Выбрать файл", "GIF Image|*.gif", "c:\My Documents")
Forall FileName In fn
Name1 = FileName
End Forall
Call uidocST.GotoField("foto")
Call uidocST.Import("GIF Image", Name1)
Dim RTItem As NotesRichTextItem
Set RTItem= New NotesRichTextItem(uidocST.Document, "att" )
Call RTItem.EmbedObject(EMBED_ATTACHMENT , "", Name1) ' крепим аттачмент
unid = docST.univaersalID
Call docST.save(True, False)
Call uidocST.Save
Call uidocST.close
On Error Resume Next
Set docST = db.getdocumentByUNID(unid)
Call ws.EditDocument(True, docST)

Поле "foto" - Текст РТФ, стоит галка "Хранить данные в HTML и MIME"
Поле "att" - тоже самое...

А можно файл к документу атачить а не к полю?мб это поможет)

Кстати, атачит вообще непонятно куда....просто ярлык висит во всех рт полях...если хоть из 1 поля удалить, удаляется везде после переоткрытия.
 
S

Sandr

Аттачить к документу можно.
notesDocument.EmbedObject

ЗЫ: Что-то непонятное у Вас творится.. попытался воспроизвести - не вышло такой глюки...
 
Мы в соцсетях:

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