• ⚡️ Последний шанс: Вебинар по пентесту стартует через 30 минут!

    Друзья, ровно через 30 минут (8 июля в 19:00) начинается наш практический вебинар по пентесту и поиску уязвимостей!

    Если вы хотите:
    🕵️‍♀️ Узнать, как находить и эксплуатировать уязвимости в веб-приложениях.
    💡 Получить ценные инсайты от настоящего эксперта.
    🚀 Сделать решительный шаг в мир кибербезопасности.
    То этот вебинар для вас!

    Ведущий вебинара – Александр Медведев – эксперт с более чем 10-летним опытом в сфере информационной безопасности, пятикратный победитель Standoff и обладатель престижных сертификаций: OSWE, OSCP, PNPT, CEH, CWAPT.

    Успейте присоединиться! Зарегистрироваться сейчас

    Возникли сложности с регистрацией? Пишите нам: @Codeby_Academy
    Будем вас ждать!

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

  • Автор темы Автор темы Реник
  • Дата начала Дата начала
Р

Реник

Добрый день!

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

При чём тут customcontrol?
 
да. В новом документе не могу получить записать в документ полученное значение, а в уже сохранёном всё работает нормально
 
точнее задача стоит так: по нажатию на кнопку вывести диалог с вьюшкой, из этой вьюшки выбираем документ, и в текущий xpages записываю значение из выбранного документа.
 
Реник
Создаёте Dojo dialog, погуглите примеров много или посмотрите , на диалог кидаете вьюху, в свойствах вьюхи var присваиваете какоето значение например RowData, на событие онклик колонки вьюхи пишете код:
Код:
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)
 
диалог вывести получилось. Но столкнулся с другой проблемой: когда я нажимаю на колонку в диалоге в сохранённом документе, то код работает нормально (значение поля перезаписывает), но когда такие же манипуляции произвожу в новом документе,то код не отрабатывает. что может быть не так?
 
NotesDoc определяется нормально по DocSource?
А до команды NotesDoc.computeWithForm(false,false) форма у документа уже прописана?
 
дело в том,что я решил просто проверить работает код или нет. вставил одну строку print ("ggdg") и всё. По идее в логе сервера должно отобразиться эта запись. В новом документе не отрабатывает этот код, в сохранённом отрабатыывает.
 
для отладки посмотрите в сторону _dump()
 
пробовал не пишет в лог сервера эту запись

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

Значит тут вопрос в прямоте моих рук.
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab