powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / И опять с Grid
6 сообщений из 6, страница 1 из 1
И опять с Grid
    #35948934
TorAx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть таблица выбираемая из 6 разных в Грид. По клику на Гриде открывается другая форма в которой редактируется запись. Куда сунуть селект, чтобы в Гриде после закрытия формы редактирования, отображался результат в Гриде.
Сейчас селект в событии Лоад. Пытался в активейт и в готфокус - Грид в результате пустой.

П.С. Больно не бить - еще 2 месяца назад писал только на 2.6.
...
Рейтинг: 0 / 0
И опять с Grid
    #35949057
TorAx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пока рещил вопрос тупым методом - "закрыл форму-открыл форму". Но это ... некрасиво. Хочется "красивого" решения.
...
Рейтинг: 0 / 0
И опять с Grid
    #35949305
Danmer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У меня в свойствах грида стоит AllowCellSelection - .F.

В самом гриде на процедуре Dbclick - do form myform

После редактирования записи на форме закрываю кнопкой с процедурой thisform.Release

После этого в гриде все само обновляется....
...
Рейтинг: 0 / 0
И опять с Grid
    #35954509
TorAx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо. Вроде понял. Буду копать дальше.
...
Рейтинг: 0 / 0
И опять с Grid
    #35957862
CTAC-KO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если надо на ходу менять таблицу, отображаемую в гриде, скажем с целью обновить данные перевыборкой, т.к. какбы физически, то это делается по такой схеме - сначала у грида очищается его RecordSource, затем происходит выборка, т.е. твой SELECT, затем RecordSource устанавливаешь на результат выборкии + задаешь сурсы для его колонок. Я это делаю в методе INIT Grid-a:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
WITH this
.RecordSource = ""

SELECT ;
   Professions.ProfID,;
   Professions.Profession,;
   Professions.Archived;
 FROM Professions;
Into cursor curProfessions

.RecordSource="curProfessions"
.column1.ControlSource = "curProfessions.Profession"
.column2.ControlSource = "curProfessions.Archived"

ENDWITH
таким образом, во-первых на старте формы данные в грид нормально загрузятся по-любоу, а во-вторых, чтобы обновить данные в гриде методом перевыборки ("физически") достаточно выполнить его метод Init в любом методе формы т.е.,
Код: plaintext
thisform.Grid1.Init
Но, это для физической перевыборки данных, т.е. для случаев, когда такое реально надо.
А если ты просто добавляешь запись в таблицу грида или удаляешь ее оттуда, то достаточно будет выполнить в любом методе формы просто рефреш
Код: plaintext
thisform.Grid1.Refresh
...
Рейтинг: 0 / 0
И опять с Grid
    #35957919
ПД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Может быть более простой путь будет- слелать LocalView
(аналог вашей выборки из 6 таблиц)
Тогда можно обойтись без плясок с отвязываением- привязыванием данных у
грида, и достаточно будет Requery дл яэтого LV
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / И опять с Grid
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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