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

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

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

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

Editable View

savl

Lotus Team
28.10.2011
2 597
310
BIT
180
Нет, это другая тема. Та тема закрыта, благодаря alexas1
...
То как alexas1 предагает сделать, является именно продолжением той самой темы, иначе это не реализовать.
21 век же на дворе. вот и ищуюся альтернативы...
Может тогда действительно перейти на xPage? Просто в клиенте ругих альтернатив вроде как и нет, только лишние действия.
С другой стороны они заставляют соображать, нужно ли это делать или нет, особенно если они необязательны.

хм... есть одна мысль... но нужен ответ:
Сколько сотрудников максимально доступно для выбора?
Как определяете/ограничиваете нужный список?
 

maliy

Green Team
20.03.2007
180
2
BIT
45
Может тогда действительно перейти на xPage?
Пока нет возможности, в будущем возможно....
Сколько сотрудников максимально доступно для выбора?
Как определяете/ограничиваете нужный список?
есть список пользователей, человек 50. во вью их вывожу, и не как не ограничиваю, можно отослать хоть всем..
 

alexas1

Green Team
10.04.2014
1 202
225
BIT
37
maliy Хотите делать креативный дизайн - делайте. Не тратьте время на "притягивание за уши" шаблонных контролов, если Ваша логика сильно выходит за рамки того, для чего они предназначены.
В классических нотусах только View, кастомизируется под более или менее произвольную интерфейсную логику (если необходимо использовать "репиторы" данных).

Кста, почему нет возможности ипользовать хэпаги? Совсем старые клиенты? ("21 век же на дворе" :) )
 

maliy

Green Team
20.03.2007
180
2
BIT
45
alexas1, дело не в дизайне, а в функционале. Поэтому и ищу варианты.
xPage - я пока в глаза не видел. И переделывать существующее на xPage в данный момент нет времени. Есть пару задач- которые нужно сделать, о них я выше писал, одну задачу с вашей помощью сделал, остальные - буду думать.
Про 21 век - имел ввиду что на других платформах - эти задачи решаются на шаблонных контролах, а здесь приходится извращаться, задачи исходят не из моих прихотей, а от пользователей, и вот пользовательские пожелания я перекладываю вот в такие(как на картинке на пред.странице к примеру) варианты, которые повторюсь на других платформах - решаются стандартными контролами, а в обычном лотусе нужно извращаться...
 

alexas1

Green Team
10.04.2014
1 202
225
BIT
37
maliy как обеспечить функционал Вы уже знаете. Вам не нравится именно дизайн интерфейса - Non-User-Friendly с ненужными кликами. И это правильно.
"Про 21 век - имел ввиду что на других платформах - эти задачи решаются на шаблонных контролах"(с) - и здесь так-же. Только Вы пытаетесь использовать давно устаревшую технологию (по мнению IBM и моего тоже). Вся "новая технология" - в Xpeges.
Что-бы их использовать, готовые базы переделывать не надо. Добавляется только новый интерфейс на Xpages где необходимо.
Кодинг его дизайна ничем не отличается от обычных вэб-страничек. Хэпаги прекрасно работают в клиенте, за что вендору огромный респект.

А по поводу решения этой конкретной задачи, "стандартными" средствами и с Вашими запросами, альтернативы тому что я предложил, нет. Уж поверьте.
Или переходите с PickList на EmbeddedView или смиритесь.
 

maliy

Green Team
20.03.2007
180
2
BIT
45
В продолжение темы
link removed,
сделал View, первую колонку поставил галочку Editable column. Во View в событии
Inviewedit
Sub Inviewedit(Source As Notesuiview, Requesttype As Integer, Colprogname As Variant, Columnvalue As Variant, Continue As Variant)
Dim doc As NotesDocument
Dim caret As String

caret = Source.CaretNoteID
If caret = "0" Then Exit Sub


Set db = Source.View.Parent
Set doc = db.GetDocumentByID(caret)


If doc.field1(0) ="не главный" Then
Call doc.ReplaceItemValue("field1", "главный")
Else
Call doc.ReplaceItemValue("field1", "не главный")
End If
Call doc.Save(1,1)

End Sub
то есть по нажатию в области по документам на 1 колонке у меня меняется "главный"/"не главный", кстати если открыть эту View в PickList, то тоже меняется. Теперь вопрос: мне нужно оставить главным только одну запись, если предыдущая тоже "главный", то нужно поменять на "не главный", в итоге я так понимаю нужно где то временно хранить Unid предыдущего клик-нутого документа, как это правильно организовать?или тупиковый вариант?
 
H

hosm

у меня вот вопрос: с данным функционалом на данном сервере будет работать одновременно только 1 пользователь?
 
H

hosm

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

alexas1

Green Team
10.04.2014
1 202
225
BIT
37
нужно где то временно хранить Unid предыдущего клик-нутого документа, как это правильно организовать?или тупиковый вариант?
Нормальный вариант.
Сохраняйте все Ваши кэши в профильном доке (частном профайле). И проблемы с многопользовательностью, которую упомянула OKEN не будет. У меня, обычно, для каждого юзера есть свой профайл (без формы), который так и называется cache. Если, то, что запоминаете, не нужно надолго, можете профайл не сохранять - все работы с ним будут происходить в памяти, так что, всё шустро.
 
H

hosm

alexas1 Чего-то я не понимаю, а во вьюхе-то можно эти данные из кеша отобразить визуально?
Т.е. автор говорит, что пользователи видеть хотят, что выбрали - Петя выбрал главным Иванова, Вася при этом выбрал Петрова, Саша - Сидорова, а вот Катя - никого не хочет выбирать главным.
Что будет во вьюхе в пиклисте в итоге отображаться у каждого из них?
 

alexas1

Green Team
10.04.2014
1 202
225
BIT
37
alexas1 Чего-то я не понимаю, а во вьюхе-то можно эти данные из кеша отобразить визуально?
Не из этого кэша нет.
Автор говорит только про организацию логики выбора (только юниды нужные, временно, для скрипта, хранить) и записи результатов в доки, из которых и будет нужное отображаться.
Я так понял.
т.е. хранить выбор в доке в многозначном поле со значением для каждого юзера и фильтрацией (в общем-то категоризацией) в виде по юзеру.
Так можно. Делал.

Прям из профайла в вид визуализировать можно. Только это будет единственный на всю базу общий для всех профайл.
Практически плохо применимо - несколько раз пытался натянуть эту возможность - плохо. Фактически происходит полное перестроение индекса, при каждом открытии вьюхи - тормоза нереальные.
 
H

hosm

выше по ссылке в топике "мелких вопросов" хотел визуальный чекбокс или что-то подобное. Визуализацию нужную более-менее легко в веб можно сделать, и , кажется, проще будет в икспеджах, чем со стандартным механизмом лотуса.
 

alexas1

Green Team
10.04.2014
1 202
225
BIT
37
выше по ссылке в топике "мелких вопросов" хотел визуальный чекбокс или что-то подобное. Визуализацию нужную более-менее легко в веб можно сделать, и , кажется, проще будет в икспеджах, чем со стандартным механизмом лотуса.
точно, Xpages лучше. Тяжко от классики в вэб уходить многим. Инерция. Лучше, конечно, сразу "правильные" технологии использовать.
 
Мы в соцсетях:

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