powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / как это пишется???
9 сообщений из 9, страница 1 из 1
как это пишется???
    #34423067
вот допустим написал я запрос: select pole1, pole2 from table1
как сделать чтобы pole1 высыпалось в первый столбец грида, а pole2 во второй? (простите, просто я не знаю как это на фоксе пишется...)
Т.е. чему надо присвоить этот запрос и как вывалить рез-тат в грид???
(VF6.0)
...
Рейтинг: 0 / 0
как это пишется???
    #34423100
Фотография Aleksey-K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. На этапе дизайна формы (класса) создаете GRID ( пусть его имя grid1 ) с двумя колонками, вводите названия колонок, устанавливаете ReadOnly у всего GRID в .T. (если надо), меняете размеры колонок и пр.
2. В INIT формы пишете свой запрос, но не забываете сохранить его результат в курсоре:
select pole1, pole2 from table1 INTO CURSOR myCursor1
Затем "привязываете" ваш GRID к новому курсору myCursor1:
Код: plaintext
1.
2.
3.
4.
WITH THISFORM.grid1
	.RecordSource = "myCursor1"
	.Column1.ControlSource = "myCursor1.pole1"
	.Column2.ControlSource = "myCursor1.pole2"
ENDWITH
С уважением, Алексей
P.S. Лучше перейти на последнюю версию VFP - VFP 9.0
P.P.S. Пробуйте, экспериментируйте. Visual FoxPro интерпретатор, что упрощает отладку.
...
Рейтинг: 0 / 0
как это пишется???
    #34424591
супер! Спасибо. Получилось.
А теперь то что меня и вправду озадачило.

Если например пишу так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
IF !USED("sgb") 
	USE path_bd+"t_sgb" ALIAS sgb 
ENDIF
IF !USED("sgbR") 
	USE path_bd+"t_sgbR" ALIAS sgbR
ENDIF	
SELECT sgb  && ошибка Alias 'sgb' is not found  Почему??? я ведь открыл USE!
SELECT sgbR  && аналогично
Зато можно написать так:
Код: plaintext
1.
2.
3.
4.
USE path_bd+"t_sgb" ALIAS sgb 
SELECT sgb
USE path_bd+"t_sgbR" ALIAS sgbR
SELECT sgbR
, но тогда:
Код: plaintext
1.
SELECT a.id, b.id FROM sgb a, sgbR b ... && аналогичная ошибка: Alias 'sgb' is not found
Что с этим можно сделать?
...
Рейтинг: 0 / 0
как это пишется???
    #34424606
AleksMed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
IF !USED("sgb") 
	USE path_bd+"t_sgb" IN  [b]0 [/b] ALIAS sgb 
ENDIF
IF !USED("sgbR") 
	USE path_bd+"t_sgbR" IN  [b]0 [/b] ALIAS sgbR
ENDIF	
...
Рейтинг: 0 / 0
как это пишется???
    #34424612
AleksMed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
IF !USED("sgb") 
	USE path_bd+"t_sgb" IN  0  ALIAS sgb 
ENDIF
IF !USED("sgbR") 
	USE path_bd+"t_sgbR" IN  0  ALIAS sgbR
ENDIF	

...
Рейтинг: 0 / 0
как это пишется???
    #34424736
Фотография Aleksey-K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как советует AleksMed или перед USE ... надо выбрать свободную область командой
SELECT 0
С уважением, Алексей
...
Рейтинг: 0 / 0
как это пишется???
    #34427177
хитрый фокс, нет чтоб самому нулевую область выделять! :) вобщем in 0 помогло. thank you!
пытаюсь щас сделать такую вещь:

создал процедуру "proc_", хочу в неё передавать сформированный курсор. Ну допустим:
Код: plaintext
SELECT * FROM table INTO CURSOR cur_a
а в proc_ написать:
Код: plaintext
1.
2.
3.
WITH .grid1
   .RecordSource = "cur_a
   .Column1.ControlSource = "cur_a.shifr"
....

Как передается курсор в метод?

пробовал так:
ThisForm.proc_(cursor cur_a) и так:
ThisForm.proc_(@cur_a) и так:
ThisForm.proc_(cur_a)
всяко ошибка. А если запихать запрос в строку то потом из строки тоже ничего не добудешь...
...
Рейтинг: 0 / 0
как это пишется???
    #34427198
Фотография Aleksey-K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В VFP курсор не объект. Если вы отсались в пределах одной DataSession, то он вам доступен из любого метода формы. Можете передать его имя, как строку, а затем в методе обращаться примерно так:
LPARAMETERS m.lcCursor

SELECT * FROM (m.lcCursor) INTO ....
или так для выбора переданного курсора в качестве текущего:
SELECT (m.lcCursor)

С уважением, Алексей
...
Рейтинг: 0 / 0
как это пишется???
    #34427950
SELECT * FROM .. INTO CURSOR cur_a
DO ThisForm.proc_(cur_a) && переменная cur_a не найдена! И если cur_a пишу в ковычках, все равно вываливается ошибка
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / как это пишется???
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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