powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / По гриду
5 сообщений из 5, страница 1 из 1
По гриду
    #33734312
katty_ai
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Имеется форма с гридом. В грид, после отработки представления, выводятся все найденные значения (ФИО). Как сделать, чтобы после щелчка мышью (ну, или перехода стрелками) на нужную строчку и нажатия кнопки "ОК", открывалась форма для полного просмотра данных на человека.
У записей в таблице есть уникальный номер. Я так понимаю, что надо запоминать этот номер и открывать форму именно с этой записью. А как передать это значение из грида?
...
Рейтинг: 0 / 0
По гриду
    #33734335
Фотография Aleksey-K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GRID привязан к таблице (локальному курсору), указателем которой управляет GRID. Вот и передавайте значение полей в поле редактирования из этой таблицы (локального курсора).
С уважением, Алексей
...
Рейтинг: 0 / 0
По гриду
    #33734356
katty_ai
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А можно чуть-чуть поподробнее?
...
Рейтинг: 0 / 0
По гриду
    #33734384
FoxFox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
S pomoshi Scatter i Gather mojno.Primerno tak :

SELECT table1
_recn = RECNO()

SCATTER MEMVAR

DO FORM c:\fox_prj\forms\new.scx

Thisform.refresh
...
Рейтинг: 0 / 0
По гриду
    #33740739
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По сути, Grid - это и есть таблица-источник, содержимое которого в нем и отображается. Перемещаясь по строкам Grid, ты, по сути, перемещаешся по записям таблицы-источника. Значит, чтобы узнать значение любого поля текущей записи таблицы-источника достаточно просто прочитать значение поля

?MyTable.MyFieldID

Вот прочитанное значение и передавай в подчиненную форму.

Код: plaintext
DO FORM ChileForm.SCX WITH MyTable.MyFieldID

Переданное значение будет принято подчиненной формой в событии INIT. Разумеется, если в нем первой исполняемой командой стоит PARAMETERS или LPARAMETERS.

Только следует учитывать тот факт, что к моменту выполнения события INIT-формы все таблицы, указанные в DataEnvironment формы уже открыты. Надо просто переместится на нужную запись командой поиска LOCATE или SEEK

Т.е. в событии INIT-подчиненной формы будет что-то вроде

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
PARAMETERS tnID
IF EMPTY(m.tnID) = .F.
	* Редактирование записи
	* Перемещаем указатель на нужную запись
	=SEEK(m.tnID,"MyTab","MyTag")
ELSE
	* Создание новой записи
	* Создаем новую запись
	SELECT MyTab
	APPEND BLANK
ENDIF
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / По гриду
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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