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

Тема в разделе "Lotus - Программирование", создана пользователем IrinaK, 26 мар 2008.

  1. IrinaK

    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]
     
  2. Sandr

    Sandr Гость

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

    Omh Lotus team
    Lotus team

    Регистрация:
    4 июл 2007
    Сообщения:
    2.210
    Симпатии:
    0
    Sandr
    +1
     
  4. IrinaK

    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]
    появляется рисунок, но как его теперь сохранить к человеку, который выбран из представления????
     
  5. Archi2001

    Archi2001 Гость

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

    Sandr Гость

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

    Код (Text):
    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 - имя РТ поля в документе пользователя (в том, которое выделено в представлении)

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

    IrinaK Гость

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

    Sandr Гость

    низя
     
  9. K-Fire

    K-Fire Гость

    Кстати, фото получается наверное как иконка отображается в документе? Или как картинка?
     
  10. Archi2001

    Archi2001 Гость

    Как картинка :(
     
Загрузка...

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