Refresh Embeddedview

  • Автор темы StarikStarik2705
  • Дата начала
S

StarikStarik2705

#1
в общем поступила задача отрефрешить встроеное представление, и всё бы ничего да вот нельзя карточку переводить в режим редактирования, кто то сталкивался с такой задачей?
при режиме чтения uiDoc естественно плюёться если хочешь рефреш сделать.
 

savl

Lotus team
28.10.2011
2 131
102
#2
2 раза вызвать
Код:
call ws.viewrefresh()
Не знаю, кто-то пишет помогает, кто-то пишет нет.
Можно переоткрывать документ.
Как рефрешить предлагают? нажатие кнопки, открытие?
 
S

StarikStarik2705

#3
2 раза вызвать
Код:
call ws.viewrefresh()
Не знаю, кто-то пишет помогает, кто-то пишет нет.
Можно переоткрывать документ.
Как рефрешить предлагают? нажатие кнопки, открытие?

в общем я что сделал, над всттроеной вьюхой есть две кнопки(стрелочка вниз и вверх) сортировки, по нажатию на них док переходил в режим редактирования и происходили махинации в полях, в следствии чего в подстроеную вьюху попадала отсортированая. потом uidoc.refresh и на екране видим что то изменилось. Но тут поступила команда. а давай без переоткрытия?! вот и выплыло как сделать не знаю
 

erdi

Well-known member
20.08.2008
265
17
#4
а встроенная вьюха что отоброжает? точнее текущий документ в этой вьюхе? и когда происходит изменения в текущем документе во вьюхе этот же документ должен куда-то переместиться(вверх,вниз)?
я правильно понимаю?
 
S

StarikStarik2705

#5
а встроенная вьюха что отоброжает? точнее текущий документ в этой вьюхе? и когда происходит изменения в текущем документе во вьюхе этот же документ должен куда-то переместиться(вверх,вниз)?
я правильно понимаю?
встроеная вьюха отображает дочерние документы того кто на екране. текущий док - форма обычная а в ней представление встроено.
я аттач прикрепил там наглядно показано
 

Вложения

  • 1.4 МБ Просмотры: 11

savl

Lotus team
28.10.2011
2 131
102
#6
CтарыйStarik
Кнопки сортируют по колонкам... Махинации с полями...
Какого рода сортировка? не по названию?
 
S

StarikStarik2705

#7
CтарыйStarik
Кнопки сортируют по колонкам... Махинации с полями...
Какого рода сортировка? не по названию?

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

savl

Lotus team
28.10.2011
2 131
102
#8
Вот это фокус... хм... Может как-то по другому сделать? во фреймах форму открывать и представление туда подсовывать.
При нажатии кнопки менять содержимое фрейма где вид лежит.

А так при текущем положении: можно создать таблицу с вкладками, сделать ее переключаемой программно по этим стрелкам.
Нажал стрелку, отобразил вкладку с вьюхой, нажал другую отобразил другую вкладку.
По сути ничего не меняется, только немого код и лишняя таблица в поле.
 
S

StarikStarik2705

#9
Вот это фокус... хм... Может как-то по другому сделать? во фреймах форму открывать и представление туда подсовывать.
При нажатии кнопки менять содержимое фрейма где вид лежит.

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

savl

Lotus team
28.10.2011
2 131
102
#10
я с переоткрытием сделал, но хотелось бы без него.
Программное переключение таблиц посмотри. С минимальными переписываниями сделаешь и работает в режиме чтения, без переоткрытия.
 

Мыш

Премиум
12.02.2008
1 096
10
#13
не переоткрывать документ, и прорефрешить её
Пардон, там советы как раз на эту тему. Через ToolsRunMacro решается (если "внедряющий док" ((вот загнул-то!)) в режиме чтения - тоже поможет). Другое дело, что, возможно, не во всех случаях - у Вас, я так понимаю, достаточно навороченный код на кнопках, разные вьюхи выбираются...
 
S

StarikStarik2705

#14
Пардон, там советы как раз на эту тему. Через ToolsRunMacro решается (если "внедряющий док" ((вот загнул-то!)) в режиме чтения - тоже поможет). Другое дело, что, возможно, не во всех случаях - у Вас, я так понимаю, достаточно навороченный код на кнопках, разные вьюхи выбираются...
нет кода понты на самом деле
Dim w As New NotesUIWorkspace
Dim doc As NotesDocument
Dim view As NotesView
Dim uidoc As NotesuiDocument
Set uidoc = w.CurrentDocument
Set doc = w.CurrentDocument.Document
Set view = doc.ParentDatabase.GetView(doc.GetItemValue("TmpView")( 0 ))
Call view.Refresh


Dim unid As String
unid = Cstr(doc.UniversalID)
Delete doc
Call w.CurrentDocument.Close(False)
Set doc = uidoc.Document.ParentDatabase.GetDocumentByUNID(unid)
Call doc.ReplaceItemValue("SortView","2A")
Call w.EditDocument(False,doc)
 

Kee_Keekkenen

Well-known member
05.09.2006
639
4
#15
я почитал но моя задача состоит в том что бы не переоткрывать документ, и прорефрешить её
на такой случай можно винапи заюзать, типа кликнул на кнопку, установил фокус сделал смещение в нужную сторону, эмулировал нажатие f9..
 

VladSh

начинающий
Lotus team
11.12.2009
1 260
5
#16
Задача изначально описана неправильно. Надо не отрефрешить вьюху в режиме чтения, а подменить её.
На будущее: точнее выражайтесь, т.к. люди тратят своё время.

P.S. Вообще-то для перехода в другую вьюху достаточно этот самый переход в свойствах колонки прописать.
 

Мыш

Премиум
12.02.2008
1 096
10
#17
Надо не отрефрешить вьюху в режиме чтения, а подменить её.
Т.е., надо подменить вид в Embedded Selection у Embedded View? Я делал так (правда, все равно противное "моргание" на экране присутствует):

В Embedded Selection:
@Environment("My_View")

В кнопке, переключающей на конкретный вид:
@Environment("My_View"; <Имя нужного вида>");
@Command([ViewSwitchForm]; <Имя формы, в которой находится embedded view>)
 
S

StarikStarik2705

#18
Т.е., надо подменить вид в Embedded Selection у Embedded View? Я делал так (правда, все равно противное "моргание" на экране присутствует):

В Embedded Selection:
@Environment("My_View")

В кнопке, переключающей на конкретный вид:
@Environment("My_View"; <Имя нужного вида>");
@Command([ViewSwitchForm]; <Имя формы, в которой находится embedded view>)
благодарю, эт было то что нужно