powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Передача данных в Grid
13 сообщений из 38, страница 2 из 2
Передача данных в Grid
    #33884199
Фотография Aleksey-K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Scorpio_mdОбъявление глобальных переменных, и потом передача их на предыдущую форму, это не выход, неужели нет другого способа ??
Это вы правы! Проблема передачи (и возврата ) значений в (из) модальную форму неоднократно тут обсуждалась. Вариантов несколько. Я, например, если параметров не очень много, использую переменные, но не PUBLIC, а PRIVATE. Они создаются и инициируются ДО запуска модальной формы и, разумеется, видимы в ней, но не создают проблем, присущих PUBLIC. Если параметров много, то можно использовать временный курсор и т.п.
С уважением, Алексей.
...
Рейтинг: 0 / 0
Передача данных в Grid
    #33884217
Scorpio_md
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не очень понял про курсор, я пробовал открыть курсор, который создается ранее для гридп, но в форме ввода новых данных его не видно.
...
Рейтинг: 0 / 0
Передача данных в Grid
    #33884236
Фотография Aleksey-K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Scorpio_mdНе очень понял про курсор, я пробовал открыть курсор, который создается ранее для гридп, но в форме ввода новых данных его не видно.
Я имею в виду, что до запуска своей модальной формы модно создать курсор командой CREATE CUROR .... , добавить в него одну строку из текущей строки GRID и редактировать ее (строку) в своей модальной форме.
По положительному выходу из модальной формы, обновляйте курсор, который отображает GRID из временного курсора и закрываете его.
С уважением, Алексей.
P.S. Не забудьте, что если "главная" форма использует Private DataSession, то модальную надо переключить в туже DataSessonID, иначе курсор не будет виден.
...
Рейтинг: 0 / 0
Передача данных в Grid
    #33884249
Гена_2006
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
млин. может скоро начну писать как Алекс = на класах..
но пока делаю вот так:

Код: plaintext
Thisform.gridrequery(Vil.id, Fam.id)

где gridrequery

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
PARAMETERS nVId, nFid

Thisform.grid1.RecordSource = ''

thisform.sqlconnector1.csqlstring = ;
"SELECT id, cNumber, 
TRIM(both ' ' from Fio.cSurname||' '||Fio.cName||' '||Fio.cFather) AS cFio " + ;
"FROM fio " + ;
"WHERE ......" 

thisform.sqlconnector1.spexecute(thisform.sqlconnector1.csqlstring, 'Bp')

IF thisform.sqlconnector1.spresult <>  1 
	thisform.sqlconnector1.sqlerror()
ELSE

WITH THISFORM.grid1
	.ColumnCount =  2 
	.RecordSource = 'Bp'
	.HeaderHeight =  50 
**************************************************	
	.Column1.ControlSource = "Bp.cNumber"
	.Column1.Width =  50 
	.Column1.Name = "Column1"
	.Column1.ReadOnly = .T.
	.column1.header1.Caption = "Номер"
	.column1.header1.Alignment =  2 
	.column1.header1.WordWrap = .T.
		
	.Column2.ControlSource = "ALLTRIM(Bp.cFio)"
	.Column2.Width =  150 
	.Column2.Name = "Column5"
	.Column2.ReadOnly = .T.
	.column2.header1.Caption = "ФИО"
	.column2.header1.Alignment =  2 
	.column2.header1.WordWrap = .T.	

ENDWITH

ENDIF


и все работает, конечно этот код БОЛЕЕ громоздок, но разве в нем есть идеологические ошибки?????

Был бы рад услышать ваши мнения, только если что не так - подправьте... а то, пока мыслить классами как-то не получается... да и в примере

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
LOCAL m.nCount, m.i
m.nCount= 0 
m.i= 0 
lcNameAlias	=	'['+this.calias+']'

DIMENSION af[ 1 , 1 ]
this.RecordSource=''

cSql	=	this.csql

SQLExec(gnconnect,cSQL,&lcNameAlias)

SELECT &lcNameAlias
IF this.flag_poisk= 1 
	LOCATE FOR id=this.id
........................

я так понимаю имена хедеров грида == именам полей курсора... а это как-то некрасиво...
...
Рейтинг: 0 / 0
Передача данных в Grid
    #33884593
Фотография космонахт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Scorpio_mdОбъявление глобальных переменных, и потом передача их на предыдущую форму, это не выход, неужели нет другого способа ??


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


ничто не слишком!
...
Рейтинг: 0 / 0
Передача данных в Grid
    #33884618
Фотография космонахт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторя так понимаю имена хедеров грида == именам полей курсора... а это как-то некрасиво...
Нет. Имена недеров здесь не зависят от полей курсора

А вот этот код

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
IF this.RecordSourceType= 1  && alias
	this.RecordSource=&lcNameAlias

	m.nCount=AFIELDS(af,&lcNameAlias)
	
	FOR m.i= 1  TO this.ColumnCount
		 this.Columns(m.i).controlsource= af(m.i, 1 )
	ENDFOR

ENDIF 





необходим для того, чтобы после перетаскивания колонок грида пользователем, после обновления курсора данные оставались в своих колонках.
...
Рейтинг: 0 / 0
Передача данных в Grid
    #33884680
alex11100
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
космонахт

ну любитель макроподстановок, ну ...

кто-же такому научил!
низя! низя ! низя!
...
Рейтинг: 0 / 0
Передача данных в Grid
    #33884735
Гена_2006
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
так моя методика - нормальная.. или огрехи??
старшие товарищи - подскажите!!!
...
Рейтинг: 0 / 0
Передача данных в Grid
    #33884762
Гена_2006
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
космонахт авторя так понимаю имена хедеров грида == именам полей курсора... а это как-то некрасиво...
Нет. Имена недеров здесь не зависят от полей курсора


как же так7 ведь хедеры для грида в коде нигде не описаны.. откуда тогда он их берет???
...
Рейтинг: 0 / 0
Передача данных в Grid
    #33884915
Scorpio_md
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я не знаю правильно сделал или нет, но пошел по пути наименьшего сопротивления. На форму кинул грид, его отформатировал, убрал лишние поля которые не хочу видет, а в RECORDSOURCE - оставил пустое значене.
Затем создал курсор и присвоил только тогда его к RECORDSOURCE. Проблемнее было при обновлении, там пришлось все колонки которые я убрал сразу в гриде их пришлось програмно прятать и менять САPTIONы.
Я не знаю на сколько это правильно но работает.
...
Рейтинг: 0 / 0
Передача данных в Grid
    #33884939
Фотография космонахт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex11100 ну любитель макроподстановок, ну ...

Ну не нравятся макроподстановки, не используй. В чем проблемы то. Суть не в этом. Главное, что sys(2015) здесь не катит

авторкак же так7 ведь хедеры для грида в коде нигде не описаны.. откуда тогда он их берет???

В коде много чего не описано. Сорировка по столбцам, например.
А количество клонок, недеры надо определить до того.

ничто не слишком!
...
Рейтинг: 0 / 0
Передача данных в Grid
    #33885002
Гена_2006
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
космонахт
В коде много чего не описано. Сорировка по столбцам, например.
А количество клонок, недеры надо определить до того.


не.. все же я собственный метод буду юзать.. родное - обкатанное и так далее
...
Рейтинг: 0 / 0
Передача данных в Grid
    #33885014
Фотография космонахт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гена_2006 не.. все же я собственный метод буду юзать.. родное - обкатанное и так далее
Правильно. Самая короткая дорога - та, которую знаешь)

ничто не слишком!
...
Рейтинг: 0 / 0
13 сообщений из 38, страница 2 из 2
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Передача данных в Grid
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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