• Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе

    «Анализ защищенности веб-приложений»

    🔥 Записаться бесплатно!

  • CTF с учебными материалами Codeby Games

    Обучение кибербезопасности в игровой форме. Более 200 заданий по Active Directory, OSINT, PWN, Веб, Стеганографии, Реверс-инжинирингу, Форензике и Криптографии. Школа CTF с бесплатными курсами по всем категориям.

Проблемы с embedded view

Amfion

Green Team
26.05.2010
145
2
BIT
0
Domino 6.5.1

Возникают проблемы с Embedded View. Embedded View отображает неверные поручения. Возникает когда документ долго остается открытым. Вечером оставляю открытый документ, утром в нем отображаются неверная выборка для Embedded View. Переоткрываю документ все ок.
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 933
609
BIT
177
добавлю свою печаль :)
эмбеднута вьюшка в таблицу (типа вкладки), отбор отображения по категории + подменяется (в зависимости от ключа) источник (другая вьюшка). При открытии дока отображается как если бы ключ пустой (хотя ключ показывает верный)
в постопен есть обновление дока (принудительное)
НО если кликнуть на область таблицы - вьюшка отобразится правильно
Это поведение появилось с нотусей 8.5+ (в 7-ке все отображалось правильно)
 

Leoric

Lotus Team
15.10.2003
66
9
BIT
16
Ух ты, не думал, что где-то еще стоит это ископаемое :)

А по теме... если нажать F9 ок не становится?
Посмотрите также на то, как обновляется индекс вида, возможно стоит не постоянный, а ежечасный к примеру.
 

Amfion

Green Team
26.05.2010
145
2
BIT
0
Ух ты, не думал, что где-то еще стоит это ископаемое :)

А по теме... если нажать F9 ок не становится?
Посмотрите также на то, как обновляется индекс вида, возможно стоит не постоянный, а ежечасный к примеру.
Да по F9 тоже все ок становится. Наскока знаю Embedded View появился тока в 6 может были глюки и надо fix какой накотить. Выбор правда идет респонс документов для view.

Индекс авто после первого использования.
 
Последнее редактирование модератором:

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 933
609
BIT
177
в PO (PostOpen) событие формы впилить код source.Refresh
[DOUBLEPOST=1425550859,1425550765][/DOUBLEPOST]у вьюшки есть свой рефреш, но вопрос - будет ли он действовать для встроенной
[DOUBLEPOST=1425550939][/DOUBLEPOST]еще есть NotesUIWorkspace.ViewRefresh - действует по контексту (обновление именно воркспейса)
 

savl

Lotus Team
28.10.2011
2 597
310
BIT
159
@lmike, по твоей проблеме: начиная с 8.5.1 лотус переводит фокус с открытого документа / фреймсета - черт знает куда.
У меня в адресную строку.
В 9-ке это сохранилось, возможно стоит сделать перевод фокуса внутрь документа при открытии.

@Amfion, если документ открыть всю ночь, то все логично, так как он не обновляется (F9).
Если в PO впилить Refresh, то надо быть уверенным, что документ в режиме редактирования.
Да, он так же обновит встроенную вьюху.
Где-то тут был JavaScript таймер, который по кнопке на форме жал и она обновлялась..
[DOUBLEPOST=1425552763,1425552660][/DOUBLEPOST]О, нашел линк
 

Leoric

Lotus Team
15.10.2003
66
9
BIT
16
Да по F9 тоже все ок становится. Наскока знаю Embedded View появился тока в 6 может были глюки и надо fix какой накотить. Выбор правда идет респонс документов для view.

Индекс авто после первого использования.
Это нормальная ситуация, если в левом верхнем углу вида есть значек refresh, то у вас на экране в вид не соответствует индексу сервера.
Посмотрите в сторону таймера и автообновления через ViewRefresh, на PostOpen код ничего не даст по идее, т.к. документ уже открыт и остается открытым.

P.S. А почему клиент не 7.0.4? Насколько я помню разница там не критичная, а стабильность получше стала...
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 933
609
BIT
177
начиная с 8.5.1 лотус переводит фокус с открытого документа
самое "смешное" что все интерактивные команды типа перемесить фокус в доке - работают
и если давить на клаву - будет набираться текст
вощем с фокусом там какие-то фокусы (индусыматьих)
 

Amfion

Green Team
26.05.2010
145
2
BIT
0
в PO (PostOpen) событие формы впилить код source.Refresh
[DOUBLEPOST=1425550859,1425550765][/DOUBLEPOST]у вьюшки есть свой рефреш, но вопрос - будет ли он действовать для встроенной
[DOUBLEPOST=1425550939][/DOUBLEPOST]еще есть NotesUIWorkspace.ViewRefresh - действует по контексту (обновление именно воркспейса)
Так а как это сделать. Пользователь открывает док и оставляет на пару часов и результат тот что выше. Он не хочет переоткрывать или нажимать что то.
[DOUBLEPOST=1425556512][/DOUBLEPOST]
Это нормальная ситуация, если в левом верхнем углу вида есть значек refresh, то у вас на экране в вид не соответствует индексу сервера.
Посмотрите в сторону таймера и автообновления через ViewRefresh, на PostOpen код ничего не даст по идее, т.к. документ уже открыт и остается открытым.

P.S. А почему клиент не 7.0.4? Насколько я помню разница там не критичная, а стабильность получше стала...
Скоро планируем переход на 9. а что значит в сторону таймера.
[DOUBLEPOST=1425556552][/DOUBLEPOST]
Так а как это сделать. Пользователь открывает док и оставляет на пару часов и результат тот что выше. Он не хочет переоткрывать или нажимать что то.
[DOUBLEPOST=1425556512][/DOUBLEPOST]
Скоро планируем переход на 9. а что значит в сторону таймера.
поясни что ты имел ввиду под
Посмотрите в сторону таймера и автообновления через ViewRefresh
 

Amfion

Green Team
26.05.2010
145
2
BIT
0
Непонятно почему он отображает спустя пару часов то чего там быть не должно.
 

Leoric

Lotus Team
15.10.2003
66
9
BIT
16
Непонятно почему он отображает спустя пару часов то чего там быть не должно.
Индекс view строится на сервере. А т.к. Lotus это распределенная система, то на клиенте может быть что угодно. Синхронизация с сервером = F9 либо программный вызов спец функция перечисленных выше.

Над моим ответом savl привел ссылку на действия по таймеру. (таймер надо JS, а не NotesTimer, подробности в теме по ссылке)
 

savl

Lotus Team
28.10.2011
2 597
310
BIT
159
Так а как это сделать. Пользователь открывает док и оставляет на пару часов и результат тот что выше. Он не хочет переоткрывать или нажимать что то.
@Amfion, у нас тоже есть такие, честно отвечаем - если переоткрыть все обновится, хотят не хотят - переоткрывают.
javaScript таймер, я выше ссылку кидал где расписано как сделать.
Нужен designer естественно и редактировать дизайн базы.
 

erdi

Green Team
20.08.2008
264
17
BIT
0
это не проблема 6-ки
у меня на 8.5.3 и на 9-ке такая же беда периодически появляется...иногда даже это приводило к абсолютно непредсказуемым последствиям
точного ответа, какое именно действие вызывает такой эффект - я не нашел
частично удалось компенсировать его поигравшись с настройками автообновления вьюшки + проанализировал где, когда и как часто вызывается notesUIWorkspace.ViewRefresh
 

alexas1

Green Team
10.04.2014
1 202
225
BIT
34
... подменяется (в зависимости от ключа) источник (другая вьюшка). При открытии дока отображается как если бы ключ пустой (хотя ключ показывает верный) ...
Ключ не из листбокса-ли? (или подобное, embView, в том числе ). Тогда конечный embView ShowSingleCat может "недовычисляеться" (от вёрстки зависит).
Двойной рефреш постоупен? Не?
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 933
609
BIT
177
Ключ не из листбокса-ли? (или подобное, embView, в том числе ). Тогда конечный embView ShowSingleCat может "недовычисляеться" (от вёрстки зависит).
@If(condition="";"FieldsWOFormula";"FieldsCategorizedWOFormula")
формула для категории UID+condition
да хоть тройной ;) - ему пох
[DOUBLEPOST=1425563589,1425563512][/DOUBLEPOST]причем condition CFD и оно гарантировано не пустое
Код:
REM {С formversion версии 3: typeChooser содержит сам префикс, а не название};
@if(formversion=3;
@Do(tmp:={|}+typeChooser;
@If(!@IsDocBeingEdited;@Return(tmp);"");
FIELD tmp_condition:=tmp;
@Return(tmp));
"");
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 933
609
BIT
177
кастыль следующий, в JSHeader:
JavaScript:
function runFake(){
document.forms[0].fake.click();
}
window.setTimeout("runFake();", 500);
в кнопке uidoc.Refresh
в PO: Set uidoc=source
uidoc - глобальна для формы
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 933
609
BIT
177
приходилось делать просто computed с запретом сохранения.
именно затем и сделано
Код:
FIELD tmp_condition:=tmp;
[DOUBLEPOST=1425569876,1425569756][/DOUBLEPOST]а в ЛС
Код:
Dim item As NotesItem
Set item=doc.GetFirstItem({tmp_condition})
item.SaveToDisk=False
condition=item.Text
 

alexas1

Green Team
10.04.2014
1 202
225
BIT
34
Ну, те ничо полезного не кинешь :happy:
Опыт - колоссаль. С трёшки на нотусне сидишь?
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 933
609
BIT
177
починил (нашел свою лагу еще с древних времен)...
убрал @If(!@IsDocBeingEdited;@Return(tmp);"");
и поменял @If(tmp_condition="" | tmp_condition="|0" ;"FieldsWOFormula";"FieldsCategorizedWOFormula")
UID+@If(tmp_condition="|0";"";tmp_condition)
всем спасибо - а тобы и копать не начал :)
[DOUBLEPOST=1425570812,1425570775][/DOUBLEPOST]
Ну, те ничо полезного не кинешь :happy:
Опыт - колоссаль. С трёшки на нотусне сидишь?
с 4-ки
 
Мы в соцсетях:

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