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

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

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

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

Помогите с агентом

  • Автор темы IrinaK
  • Дата начала
I

IrinaK

Помогите, если можете! Мне необходимо, чтобы через агента можно было менять фото человека. Чтобы меня его данные я использовала: [codebox]@If((Form = "f2")|(Form="f2_1"); ""; @Do(@Prompt([Ok]; "Внимание !"; "Необходимо выбрать досье!"); @Return("")));
m := "Изменение информации";
ENVIRONMENT extcont_a :=@Prompt([OkCancelEdit]; m; "Новая фамилия:";name);
ENVIRONMENT extcont_n := @Environment("extcont_a") ;
@If(extcont_a = name ; ""; @PostedCommand([ToolsRunMacro]; "(nameupdate)"));
@PostedCommand([ToolsRunMacro]; "(message1)");
@All;
@All[/codebox]

файл nameupdate имеет код: [codebox]SELECT @All;
@If(@IsAvailable("Name"); @Do(@SetField("name"; @Environment("extcont_a"))); "");
@If(@IsAvailable("ContName"); @SetField("ContName"; @Environment("extcont_n")); "");
@If(Form = "f2"; @Do(@SetField("ff"; name));"")[/codebox]

а как сделать, чтобы можно было выбирать фото из моих документов? В самой форме я выбирала фото с помощью: [codebox]@Command([EditGotoField];"attach");
@Command( [FileImport] )[/codebox]
 
S

Sandr

Перепишите все на LS... Таким образом сможете избавится от использования Environment (хотя и тут без них обойтись можно) и к тому же сможете использовать OpenFileDialog, чего не сделать в агенте собачном...
 
I

IrinaK

Если в LS делать, то у меня получилось:[codebox] Dim ws As New NotesUIWorkspace
Dim uidocST As NotesUIDocument
Set uidocST=ws.CurrentDocument
Dim RTItem As NotesRichTextItem
fn= ws.OpenFileDialog(False, "Выбрать файл", "JPEG Image|*.jpeg", "c:\My Documents")
Forall FileName In fn
Call uidocST.GotoField("Foto")
Call uidocST.Import("jpeg Image", FileName)

Set RTItem= New NotesRichTextItem(uidocST.Document, "f2" )
Call RTItem.EmbedObject(EMBED_ATTACHMENT, "", FileName)
End Forall[/codebox]
появляется рисунок, но как его теперь сохранить к человеку, который выбран из представления????
 
A

Archi2001

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

uidocST - это разве не документ из представления? ... если да, то тогда просто его сохранить...
 
S

Sandr

Если в LS делать, то у меня получилось:[codebox] Dim ws As New NotesUIWorkspace
Dim uidocST As NotesUIDocument
Set uidocST=ws.CurrentDocument
Dim RTItem As NotesRichTextItem
fn= ws.OpenFileDialog(False, "Выбрать файл", "JPEG Image|*.jpeg", "c:\My Documents")
Forall FileName In fn
Call uidocST.GotoField("Foto")
Call uidocST.Import("jpeg Image", FileName)

Set RTItem= New NotesRichTextItem(uidocST.Document, "f2" )
Call RTItem.EmbedObject(EMBED_ATTACHMENT, "", FileName)
End Forall[/codebox]
появляется рисунок, но как его теперь сохранить к человеку, который выбран из представления????

Если это не тот документ в который Вы вставили рисунок, то прост оскопируйте итем с рисунком в нужный Вам документ. Желательно что бы на форме было РТ поле с тем именем итема который Вы скопировали...

Код:
dim persDoc as notesDocument
dim db as notesDatabase
dim s as new notessession
set db = s.currentDatabase
set persDoc = db.UnprocessedDocuments.getFirstDocument
Call RTItem.CopyItemToDocument( persDoc, "Body" )

Body - имя РТ поля в документе пользователя (в том, которое выделено в представлении)

Хотя все это не будет работать, если у Вас на уи открыт документ, так как Вы не получите выделенный документ во вьюхе при открытом на уи другом документе.
 
I

IrinaK

Спасибо.... что-то намудрила, но вроде работает нормально! А что в агенте с помощью @-формул нельзя открывать файлы? (Это так для общего развития)
 
K

K-Fire

Кстати, фото получается наверное как иконка отображается в документе? Или как картинка?
 
Мы в соцсетях:

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