получить данные из Customcontrol и записать их в поле на Xpages

Тема в разделе "Lotus - Xpages", создана пользователем Реник, 29 май 2011.

  1. Реник

    Реник Well-Known Member

    Регистрация:
    8 авг 2009
    Сообщения:
    97
    Симпатии:
    0
    Добрый день!

    В xpages вставил customcontrol, в который вписал представление. по нажатию на кнопке в диалоге вывожу эту вьюшку и могу в ней выделить документ. как можно значение поля из этого документа записать в поле на xpages ?
     
  2. Zeka

    Zeka Well-Known Member

    Регистрация:
    1 сен 2009
    Сообщения:
    219
    Симпатии:
    0
    В чём конкретно проблема?
    Взять значение из документа?
    Получить выбраный документ?
    Вписать значение в поле?

    При чём тут customcontrol?
     
  3. Реник

    Реник Well-Known Member

    Регистрация:
    8 авг 2009
    Сообщения:
    97
    Симпатии:
    0
    да. В новом документе не могу получить записать в документ полученное значение, а в уже сохранёном всё работает нормально
     
  4. Реник

    Реник Well-Known Member

    Регистрация:
    8 авг 2009
    Сообщения:
    97
    Симпатии:
    0
    точнее задача стоит так: по нажатию на кнопку вывести диалог с вьюшкой, из этой вьюшки выбираем документ, и в текущий xpages записываю значение из выбранного документа.
     
  5. xKlonx

    xKlonx Lotus team
    Lotus team

    Регистрация:
    10 сен 2009
    Сообщения:
    412
    Симпатии:
    0
    Реник
    Создаёте Dojo dialog, погуглите примеров много или посмотрите тут, на диалог кидаете вьюху, в свойствах вьюхи var присваиваете какоето значение например RowData, на событие онклик колонки вьюхи пишете код:
    Код (LotusScript):
       
    var NotesDoc:NotesDocument = null;

    //DocSource - сорц документа которому будем присваивать значение из вьюхи

    var doc:NotesDocument = database.getDocumentByUNID(RowData.getUniversalID())
    NotesDoc = DocSource.getDocument(true)

    NotesDoc.replaceItemValue( "название поля", doc.getItemValue( "название поля" ))                                           

    NotesDoc.computeWithForm(false,false)
    NotesDoc.save(true)
     
  6. Реник

    Реник Well-Known Member

    Регистрация:
    8 авг 2009
    Сообщения:
    97
    Симпатии:
    0
    диалог вывести получилось. Но столкнулся с другой проблемой: когда я нажимаю на колонку в диалоге в сохранённом документе, то код работает нормально (значение поля перезаписывает), но когда такие же манипуляции произвожу в новом документе,то код не отрабатывает. что может быть не так?
     
  7. hosm

    hosm * so what *

    Регистрация:
    18 май 2009
    Сообщения:
    2.450
    Симпатии:
    7
    NotesDoc определяется нормально по DocSource?
    А до команды NotesDoc.computeWithForm(false,false) форма у документа уже прописана?
     
  8. Реник

    Реник Well-Known Member

    Регистрация:
    8 авг 2009
    Сообщения:
    97
    Симпатии:
    0
    дело в том,что я решил просто проверить работает код или нет. вставил одну строку print ("ggdg") и всё. По идее в логе сервера должно отобразиться эта запись. В новом документе не отрабатывает этот код, в сохранённом отрабатыывает.
     
  9. hosm

    hosm * so what *

    Регистрация:
    18 май 2009
    Сообщения:
    2.450
    Симпатии:
    7
    для отладки посмотрите в сторону _dump()
     
  10. xKlonx

    xKlonx Lotus team
    Lotus team

    Регистрация:
    10 сен 2009
    Сообщения:
    412
    Симпатии:
    0
    Реник
    В яваскрипте польззуйтесь _dump("asdasd") вместо принт, проверьте
     
  11. Реник

    Реник Well-Known Member

    Регистрация:
    8 авг 2009
    Сообщения:
    97
    Симпатии:
    0
    пробовал не пишет в лог сервера эту запись

    Добавлено: вот что ещё заметил: у меня в настройках xpages стоит так,чтобы при ошибке переходить на другую страницу. так вот в новом документе при нажатии на кнопку он меня перекидывает на эту страницу (то есть получается, что какую-то ошибку видит), но что именно за ошибка я найти не могу, ни в логе, нигде её не указано. Где можно посмотреть?
     
  12. xKlonx

    xKlonx Lotus team
    Lotus team

    Регистрация:
    10 сен 2009
    Сообщения:
    412
    Симпатии:
    0
  13. Реник

    Реник Well-Known Member

    Регистрация:
    8 авг 2009
    Сообщения:
    97
    Симпатии:
    0
    ребята,всем спасибо. понял в чём проблема. У меня в документе стоит проверка на validation (если поле пустое,то высвечивается ошибка: заполните поле). Когда я в новом документе (где не заполнено полей) вызывал код,то он не отрабатывал,так как натыкался на указанную ошибку (поле не заполнено). Когда я заполнил поля,то всё отработало корректно.

    Значит тут вопрос в прямоте моих рук.
     
Загрузка...

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