powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / И снова курсор
10 сообщений из 10, страница 1 из 1
И снова курсор
    #33484618
Алексb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Можно ли переименовать курсор?
Например select * ... into cursor tmp1
а теперь переименовать tmp1 в tmp2
проблема в том, что мне нужно создать курсор проверить его содержимое
и если устраивает привязать к гриду, а грид работает с tmp2.
...
Рейтинг: 0 / 0
И снова курсор
    #33484833
Недоходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Зделай select * from temp1 into cursor temp2 вот и все. Делов та?
...
Рейтинг: 0 / 0
И снова курсор
    #33484950
piva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НедоходящийЗделай select * from temp1 into cursor temp2 вот и все. Делов та? Ага и будешь опять весь свой грид настраивать
Я бы сделал так
select * ... into cursor tmp1
Код: plaintext
1.
2.
3.
4.
5.
if used('tmp2')
  zap in TMP2
  append from dbf("tmp1")
else
  use dbf("tmp1") again in  0  alias tmp2
endif
...
Рейтинг: 0 / 0
И снова курсор
    #33485132
Недоходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 piva
Несовсем понял что имееться ввиду опять настраивать.
...
Рейтинг: 0 / 0
И снова курсор
    #33485143
alex11100
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Недоходящий
проблема лисы, в том, что контролы
живут его так, как они этого хотят
грид еще та песня
(лезет куда его не просят при ините)

если у грида убить источник и снова поднять
нужна перепривязать все контролы коллекции грида

пива показал как менять наполнение источника без его гроханья
...
Рейтинг: 0 / 0
И снова курсор
    #33485267
Maltsev Max
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
piva НедоходящийЗделай select * from temp1 into cursor temp2 вот и все. Делов та? Ага и будешь опять весь свой грид настраивать
Я бы сделал так
select * ... into cursor tmp1
Код: plaintext
1.
2.
3.
4.
5.
if used('tmp2')
  zap in TMP2
  append from dbf("tmp1")
else
  use dbf("tmp1") again in  0  alias tmp2
endif

Есть еще вариант:
Код: plaintext
1.
2.
3.
ThisForm.Grid1.RecordSource=""
select * From tmp1 into cursor tmp2
ThisForm.Grid1.RecordSource="tmp2"
...
Рейтинг: 0 / 0
И снова курсор
    #33485489
Фотография Aleksey-K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Maltsev Max
Код: plaintext
1.
2.
3.
ThisForm.Grid1.RecordSource=""
select * From tmp1 into cursor tmp2
ThisForm.Grid1.RecordSource="tmp2"

Не совсем годится. Если колонки в GRID не соответсвуют порядку колонок в tmp2, то все равно пройтись по ControlSource всех колонок.
С уважением, Алексей.
...
Рейтинг: 0 / 0
И снова курсор
    #33485546
Недоходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
зачем проходиться. можно в select вместо * прописать название полонок в том порядке в коком надо и все будет соответствовать
...
Рейтинг: 0 / 0
И снова курсор
    #33485718
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
АлексbМожно ли переименовать курсор?
Например select * ... into cursor tmp1
а теперь переименовать tmp1 в tmp2
проблема в том, что мне нужно создать курсор проверить его содержимое
и если устраивает привязать к гриду, а грид работает с tmp2.
Если собственно отвечать на заданный вопрос, то для этого достаточно открыть тот же курсор с другим алиасом:

Код: plaintext
1.
2.
3.
select * ... into cursor tmp1
USE (DBF('tmp1')) IN  0  AGAIN ALIAS tmp2
USE IN tmp1

Однако если речь идет о том, чтобы изменить источник данных для Grid, то это не имеет смысла.

Если к моменту выполнения запроса Grid уже создан, то такая операция разрушит структуру Grid. Т.е. "в лучшем случае" пропадут все пользовательские методы и объекты вставленные в Grid на этапе проектирования, а "в худшем" получишь белый прямоугольник вместо Grid.

В общем случае, замена источника данных для Grid выполняется примерно так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
* Сброс источника данных Grid  
  ThisForm.Grid1.RecordSource = ""  
 * Выполнение переоткрытия таблицы, модификация данных, выбор другой таблицы  
  ...  
 * Восстановление источника данных Grid  
  ThisForm.Grid1.RecordSource = "Table"  
  ThisForm.Grid1.Column1.ControlSource = "Table.Field1"  
  ThisForm.Grid1.Column2.ControlSource = "Table.Field2"  
  ThisForm.Grid1.Column3.ControlSource = "Table.Field3"

Имя нового источника данных для Grid может и отличаться от того, что было раньше.
...
Рейтинг: 0 / 0
И снова курсор
    #33542424
Алексb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем большое спасибо!
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / И снова курсор
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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