Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Добавить колонку в таблицу / 5 сообщений из 5, страница 1 из 1
11.02.2007, 18:34
    #34322085
faustt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавить колонку в таблицу
Добрый день. На форме есть Grid и в Init'e я сначала делаю локальную таблицу:
Create Cursor table ;
(Field1 C(30), Field2 C(30), Field3 C(2), Field4 C(50), Field5 C(50))
Затем тамже в Init'e строю сам Grid из 5 полей, и подвязываю каждую колонку на сответствующее поле из курсора:
grid1.columncount=5
grid1.column1.controlsource='rable.field1'
......
Далее мне нужно, чтобы после того как я изменил колонку(подвязанную на Field5), у меня автоматически добавилось новое поле в талицу Field6, и новая колонка в грид. Поэтому я делаю в Gride на событие BeforeRowColChange:

LPARAMETERS nColIndex
IF (nColIndex=5)

ALTER table zapros ADD COLUMN Field6 C(50)

this.ColumnCount=6
this.Columns(this.ColumnCount).ControlSource='table.field6'
this.Columns(this.ColumnCount).header1.Caption="TEST"
this.Columns(co).Width=210

ENDIF
Но выдает ошибку, "Columns is not an object".

Подскажите если кто что знает, спасибо=)
...
Рейтинг: 0 / 0
11.02.2007, 19:48
    #34322162
ВладимирМ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавить колонку в таблицу
1) Для курсоров команда ALTER TABLE не работает. В этом просто нет никакого смысла. Проще сразу сделать курсор с нужными полями.

2) Если все-таки нужно изменить структуру таблицы, являющуюся источником Grid, то перед этой операцией надо "отвязать" таблицу от Grid. В противном случае, подобная операция автоматически разрушает структуру Grid.

Пропадают настройки Grid, события столбцов, заголовков, ячеек

3) Если бы Вы описали саму задачу, а не тот способ, которым Вы пытаетесь ее решить, можно было бы посоветовать что-то более предметное.
...
Рейтинг: 0 / 0
11.02.2007, 21:51
    #34322319
faustt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавить колонку в таблицу
Alter Table добавляет в курсор колонку, проверял!=)
В Microsoft SQL Management Studio, есть Query Desighner, там рядом с колонкой Filtr, есть колонка "Or..", так вот если ее заполнить то рядом сразу появляется еще одна колонка "Or..". Это позволяет конструировать запросы. Вот примерно такую штуку мне и надо написать..
...
Рейтинг: 0 / 0
12.02.2007, 06:16
    #34322549
w3d
w3d
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавить колонку в таблицу
fausttAlter Table добавляет в курсор колонку, проверял!=)
Только в том случае, если курсор создан как READWRITE.
...
Рейтинг: 0 / 0
13.02.2007, 13:47
    #34327027
Sea_Cat
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавить колонку в таблицу
Чтобы добавить колонку в GRID, нужно использовать его метод ADDCOLUMN. ColunnCount трогать не надо - он увеличится автоматически.
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Добавить колонку в таблицу / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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