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

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

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

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

Импорт атачментов в документ

Cleric-Lviv

Well-known member
03.01.2008
603
0
BIT
0
Всем привет.

Вобщем такой вопрос.
На форме я инициирую вложение атачментов по следующему принципу.
есть кнопка "прикрепить" на форме много полей рич-текст (16штук) (F1, F2, F3......) в ети поля должни попасть атачменти
При прикриплении я инициурую форму в которой видно в какое поле должен попасть какой файл. и там написано что все файли прикреплятся когда доку сохранить. но вот проблем не подкрепляются а остаются в дополнительной форме...

Sub Click(Source As Button)
Dim ws As New NotesUIWorkspace
Dim aDoc As NotesDocument
Dim c1 As New WinAPI
Dim path As String

Set aDoc = ws.CurrentDocument.Document
path = c1.GetDirDialog("Оберіть папку, де знаходяться файли заявки...")
If path <> "" Then
aDoc.Message = "Прикріплення файлів з каталогу " & path
aDoc.ff1=wSlash(path) + "F1.JPG"
adoc.upload_1="1"
aDoc.ff2=wSlash(path) + "F2.pdf"
adoc.upload_2="2"
aDoc.ff3=wSlash(path) + "F3.JPG"
adoc.upload_3="3"
aDoc.ff4=wSlash(path) + "F4.pdf"
adoc.upload_4="4"

'цикл ForAll, в якому визначаємо, які файли знаходяться в каталозі, та заповнюємо поля FF1, FF2, т.д., та upload_1, upload_2, і т.д.
flag = ws.DialogBox (".dlgAttach", True, True, False, False, False, False, "Файли", aDoc, True, False, True)
If flag Then
End If
Else
Msgbox "операцію перервано."
End If
Set c1 = Nothing
End Sub
 

Вложения

  • 2.JPG
    2.JPG
    27,6 КБ · Просмотры: 527

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 941
609
BIT
216
вопрос - зачем Вам куча РТ полей (это сплошной глюк)?
 

Cleric-Lviv

Well-known member
03.01.2008
603
0
BIT
0
вопрос - зачем Вам куча РТ полей (это сплошной глюк)
да ето не мне надо, моя б воля то только одно поле сделал б. мнесказали я и сделал, им надобно чтоб видеть есть ли дока тоесть если ето копия паспорта тогда под ето специальное поле если идентификационний номер то етот документ ципляется в другое поле и т.д

мне надобно перед процесом подтягивания файлов показать куда какой файл цеплять, если юзер согласен тогда при сохранении и подципить файли.
на картинке которую я приатачил видно 1 шаг (тоесть я показиваю какие файли и одкуда и куда к какому полю) но вот когда я сохраняю то файли атк и остаются в етой подформе а на главную форму в соответсвующие поля не переносятся
 

Medevic

Что это ? :)
Green Team
10.12.2004
3 334
1
BIT
4
Я вообще не вижу где ты приаттачиваешь файлы. Вижу только пути к файлам.
Теперь тебе надо использовать метод notesRichTextItem.EmbedObject для каждого ричтекст поля, указав путь к файлу.
 

Cleric-Lviv

Well-known member
03.01.2008
603
0
BIT
0
ну да сначала я показиваю форму и на форме уже видно ети пути для юзеров чтоб они смогли убедится в том что они именно ети файли хотят приатачить.
Но вот как мне ети файли потом подтянуть уже с форми на главную форму затрудняюсь.....
 

Medevic

Что это ? :)
Green Team
10.12.2004
3 334
1
BIT
4
У тебя в форме только пути хранятся. Тебе надо взять пути из документа aDoc, а дальше метод notesRichTextItem.EmbedObject.
 

Cleric-Lviv

Well-known member
03.01.2008
603
0
BIT
0
ето уже надобно на qverysave делать?
типа чтото етого?
If aDoc.ff1<> "" Then
Set rtItem.F1 = doc.GetFirstItem ("aDoc.ff1")
Set inputAttachment = rtItem.EmbedObject ( EMBED_ATTACHMENT, "",FilePath )
End If

где F1 ето поле куда надобно запихнуть документ
 

Medevic

Что это ? :)
Green Team
10.12.2004
3 334
1
BIT
4
Что-то типа:
Код:
Set rtItem = doc.GetFirstItem("F1")
Call rtItem.EmbedObject (EMBED_ATTACHMENT, "", doc.GetItemValue("aDoc.ff1")(0))
После чего документ надо сохранить(doc.Save) и переоткрыть. :(
 

Cleric-Lviv

Well-known member
03.01.2008
603
0
BIT
0
не канает когда запускаю дебагер то отанавливается на следующием шагу

If aDoc.ff1<> "" Then ---- с ошибкой object variable not set

на qvery save такой код

Sub Querysave(Source As Notesuidocument, Continue As Variant)
Dim rtItem As NotesRichTextItem
Dim aDoc As NotesDocument

If aDoc.ff1<> "" Then
Set rtItem = doc.GetFirstItem ("F1")
Call rtItem.EmbedObject (EMBED_ATTACHMENT, "", doc.GetItemValue("aDoc.ff1")(0))
End If

End Sub
 

Cleric-Lviv

Well-known member
03.01.2008
603
0
BIT
0
не совсем понятно..... в aDoc есть путь к документу
aDoc.ff1=wSlash(path) + "F1.JPG" ----путь к документу
adoc.upload_1="1" ---здесь даили нет(тоесть прицеплять доку или нет)
 
Мы в соцсетях:

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