powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Обновить из одной формы другую?
7 сообщений из 7, страница 1 из 1
Обновить из одной формы другую?
    #37310680
Ulrich22
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Коллеги, что-то туплю... :( Забыл, давно не нужно было... Есть возможность обновить из одной формы другую?

Короче, есть две таблицы, связанные по Set relation, Одна показывается в Grid на одной форме, другая в текст-боксах и пейджфреме на другой. Вот нужно, чтобы при перемещении по гриду по первой форме/таблице автоматически обновлялась другая.

Пишу в AfterRowColChange:

PART1FORM.REFRESH

- не срабатывает, пишет ошибку 1923 - OBJECT PART1FORM не найден...

Заранее спасибо за помощь! :)
...
Рейтинг: 0 / 0
Обновить из одной формы другую?
    #37310834
Banditos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ulrich22,

А смысл сего?
У Вас сразу две разные формы отображаются пользователю? И пользователю важно все время видеть одновременно актуальную информацию в обеих формах?
Может, имеет смысл менять информацию только в активных формах?
...
Рейтинг: 0 / 0
Обновить из одной формы другую?
    #37310914
Ulrich22
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Banditos,

сейчас так и сделано. При переходе (активации) на вторую форму она автоматически обновляется. Просто в первой форме показываются ошибки в заполнении анкеты (по результатам логических тестов), а во второй - сама анкета. Пользователи хотят, чтобы при перемещении по ошибкам можно было сразу видеть анкету. А сводить всё это на одну форму муторно - места на одной не хватает, информации очень-очень много... Вот и думаем как...
...
Рейтинг: 0 / 0
Обновить из одной формы другую?
    #37310916
Ulrich22
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Banditos,

да, формы видно обе сразу, одна несколько перекрывает другую, но увидеть ключевые характеристики всё же можно.
...
Рейтинг: 0 / 0
Обновить из одной формы другую?
    #37310969
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вообще-то, сообщение об ошибке надо понимать буквально. Вот что написано, то и есть. В данном случае непонятно, на каком основании Вы решили что будет существовать переменная памяти с именем PART1FORM. Только потому, что так называется файл с расширением SCX?

В принципе, возможно несколько стратегий решения данной задачи:

1. Использовать существующие массивы _SCREEN.Forms() и _VFP.Forms() перебирая которые можно идентифицировать нужную форму, скажем, по свойству Name

Код: plaintext
1.
2.
3.
4.
5.
6.
Local loForm
For each loForm in _SCREEN.Forms 
    if UPPER(loForm.name) == "PART1FORM"
        loForm.refresh()
    endif
endfor

Замечание : Если искомая форма In Screen, то можно обратится напрямую по имени в коллекции _VFP.Forms()

Код: plaintext
1.
2.
if type([_VFP.Forms("PART1FORM")]) = "O"
    _VFP.Forms("PART1FORM").Refresh
endif

2. При открытии подчиненной формы передать в нее ссылку на главную. Как следствие, подчиненная форма всегда будет знать какую именно форму следует обновить

3. Создать собственный диспетчер форм, который будет отслеживать как факт открытия форм, так и их подчиненность друг другу.
...
Рейтинг: 0 / 0
Обновить из одной формы другую?
    #37311013
Ulrich22
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ВладимирМ,

спасибо огромное, как всегда, исчерпывающе. Форма In Screen и первый вариант отлично подошёл... :)
...
Рейтинг: 0 / 0
Обновить из одной формы другую?
    #37311178
Banditos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ulrich22Banditos,

да, формы видно обе сразу, одна несколько перекрывает другую, но увидеть ключевые характеристики всё же можно.
Имхо.
Т.е. смысла во второй форме никого нету. Способность увидеть на теневой форме "немножко ключевых характеристик" - это не решение, а привыкание работать таким образом.
Намного лучше тогда "ключевые" характеристики выкинуть в первую форму.
А вторую форму открывать только по желанию пользователя - собственно, для того, чтобы увидеть все характеристики.
Например, пользователь двигается по гриду стрелками и на этой же форме постоянно показываются несколько "ключевых" моментов, а при нажатии Ентер - открывается вторая форма с подробным описанием характеристик.
И уж тем более при использовании Пейджфрейма - здесь вообще, кроме текущей страницы ничего не увидишь, пока именно не ткнешь в него на нужную страницу.
Посему обновлять все страницы пейджфрейма на теневой форме - дурной тон. Лучше его заполнять параметрами ОДИН РАЗ при запуске второй формы ДЛЯ КОНКРЕТНОЙ записи.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Обновить из одной формы другую?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]