Refresh Embeddedview

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

StarikStarik2705

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

savl

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

StarikStarik2705

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


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

erdi

Green Team
20.08.2008
264
17
BIT
0
а встроенная вьюха что отоброжает? точнее текущий документ в этой вьюхе? и когда происходит изменения в текущем документе во вьюхе этот же документ должен куда-то переместиться(вверх,вниз)?
я правильно понимаю?
 
S

StarikStarik2705

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

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

Вложения

  • 1.bmp
    1,4 МБ · Просмотры: 469

savl

Lotus Team
28.10.2011
2 624
314
BIT
540
CтарыйStarik
Кнопки сортируют по колонкам... Махинации с полями...
Какого рода сортировка? не по названию?
 
S

StarikStarik2705

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


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

savl

Lotus Team
28.10.2011
2 624
314
BIT
540
Вот это фокус... хм... Может как-то по другому сделать? во фреймах форму открывать и представление туда подсовывать.
При нажатии кнопки менять содержимое фрейма где вид лежит.

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

StarikStarik2705

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

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

я с переоткрытием сделал, но хотелось бы без него. но если будет время на досуге попробую сделать с фреймом. Благодарю за помощь
 

savl

Lotus Team
28.10.2011
2 624
314
BIT
540
я с переоткрытием сделал, но хотелось бы без него.
Программное переключение таблиц посмотри. С минимальными переписываниями сделаешь и работает в режиме чтения, без переоткрытия.
 

Мыш

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

StarikStarik2705

Пардон, там советы как раз на эту тему. Через 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)
 
K

Kee_Keekkenen

я почитал но моя задача состоит в том что бы не переоткрывать документ, и прорефрешить её

на такой случай можно винапи заюзать, типа кликнул на кнопку, установил фокус сделал смещение в нужную сторону, эмулировал нажатие f9..
 

VladSh

начинающий
Lotus Team
11.12.2009
1 797
158
BIT
232
Задача изначально описана неправильно. Надо не отрефрешить вьюху в режиме чтения, а подменить её.
На будущее: точнее выражайтесь, т.к. люди тратят своё время.

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

Мыш

Lotus Team
12.02.2008
1 228
30
BIT
136
Надо не отрефрешить вьюху в режиме чтения, а подменить её.
Т.е., надо подменить вид в Embedded Selection у Embedded View? Я делал так (правда, все равно противное "моргание" на экране присутствует):

В Embedded Selection:
@Environment("My_View")

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

StarikStarik2705

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

В Embedded Selection:
@Environment("My_View")

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

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