Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как правильно открыть таблицу? / 18 сообщений из 18, страница 1 из 1
21.03.2006, 11:51
    #33613945
Igrok4
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно открыть таблицу?
Столкнулся вот с какой проблемой.
При инициализации формы открываю таблицу, но никак не могу назначить 2 её поля в качестве источника данных для Combo в форме.

Если же таблица указана в Data Environment, то всё отлично работает. Правда источник данных я указываю в свойствах Combo в конструкторе формы.
Не подскажете как мне правильно сделать в первом случае? Спасибо!
...
Рейтинг: 0 / 0
21.03.2006, 11:55
    #33613958
Недоходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно открыть таблицу?
2 Igrok4

Таблу открываешь так use имя_таблы in 0

А что ты в комбо прописываешь?
...
Рейтинг: 0 / 0
21.03.2006, 12:03
    #33613987
m.a.v
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно открыть таблицу?
Igrok4
Если же таблица указана в Data Environment, то всё отлично работает. Правда источник данных я указываю в свойствах Combo в конструкторе формы.

Дело в том что когда источник указываешь в конструкторе таблица должна быть открыта до события init у ComboBox. Поэтому когда таблица в Data Environment (Уже открыта) все работает. Указывай источник после открытия в коде.
...
Рейтинг: 0 / 0
21.03.2006, 12:08
    #33614005
Igrok4
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно открыть таблицу?
Так и делаю. Открываю таблицу, присваиваю значения.
Или тип данных делаю неправильный?

Код: plaintext
1.
2.
3.
UseTable('kassa',v1)
SELECT kassa
ThisForm.combo3.RowSourceType =  6 
ThisForm.combo3.RowSource = name,numv
...
Рейтинг: 0 / 0
21.03.2006, 12:10
    #33614011
AleksMed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно открыть таблицу?
Код: plaintext
1.
2.
3.
4.
UseTable('kassa',v1)
SELECT kassa
ThisForm.combo3.RowSourceType =  6 
ThisForm.combo3.RowSource = "kassa.name,numv"
...
Рейтинг: 0 / 0
21.03.2006, 12:26
    #33614079
Igrok4
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно открыть таблицу?
Ошибка в строке: ThisForm.combo3.RowSourceType = 6

'field' phrase is not found.
...
Рейтинг: 0 / 0
21.03.2006, 12:28
    #33614093
Igrok4
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно открыть таблицу?
Ошибся
Вот в этой строке: ThisForm.combo3.RowSource = "kassa.name,numv"
...
Рейтинг: 0 / 0
21.03.2006, 12:36
    #33614115
Недоходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно открыть таблицу?
2 Igrok4
Почему UseTable а не просто use xxx in 0?
...
Рейтинг: 0 / 0
21.03.2006, 12:36
    #33614116
AleksMed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно открыть таблицу?
Тогда вопрос:
UseTable('kassa',v1) - это что?
...
Рейтинг: 0 / 0
21.03.2006, 12:58
    #33614194
Igrok4
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно открыть таблицу?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
PROCEDURE UseTable
 LPARAMETERS lcTableName, lcTablePath) 
 IF NOT USED(lcTableName) THEN 
   IF EMPTY(lcOrder) THEN 
    USE (lcTablePath + lcTableName) 
   ELSE 
    USE (lcTablePath + lcTableName) 	
   ENDIF 
 ENDIF 
ENDPROC

Да процедура не так и важна. Я проверял, таблица в момент выдачи ошибки открыта.
...
Рейтинг: 0 / 0
21.03.2006, 13:01
    #33614202
m.a.v
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно открыть таблицу?
Проверь правильность имен полей и не забудь ColumnCount=2
...
Рейтинг: 0 / 0
21.03.2006, 13:01
    #33614204
AleksMed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно открыть таблицу?
И упомянутые поля в ней присутствуют?
...
Рейтинг: 0 / 0
21.03.2006, 14:00
    #33614402
Igrok4
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно открыть таблицу?
AleksMedИ упомянутые поля в ней присутствуют?
Конечно присутствуют.
Ведь в случае с Data Environment всё работает с тем же самым kassa.dbf файлом.
...
Рейтинг: 0 / 0
21.03.2006, 14:57
    #33614610
Igrok4
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно открыть таблицу?
Хм...интересно.
Открыл таблицу с алиасом, и тип данных поставил 2. Всё заработало.
...
Рейтинг: 0 / 0
21.03.2006, 16:35
    #33614882
Igrok4
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно открыть таблицу?
"Продолжаем разговор." (С) Карлсон

Код: plaintext
1.
2.
3.
4.
USE (v1) IN  0  ALIAS kas
SELECT kas
ThisForm.Grid1.ColumnCount=  2 
ThisForm.grid1.RecordSourceType =  1 
ThisForm.grid1.RecordSource = 'kas.code,end'   && Грид в форме пустой!

А если так:
Код: plaintext
1.
2.
3.
4.
USE (v1) IN  0  ALIAS kas
SELECT kas
ThisForm.Grid1.ColumnCount=  2 
ThisForm.grid1.RecordSourceType =  1 
ThisForm.grid1.RecordSource = 'kas'			&& В таком случае Грид заполняется двумя первыми столбцами!

Как Грид заполнить нужными столбцами?
...
Рейтинг: 0 / 0
23.03.2006, 02:04
    #33618782
Igor Korolyov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно открыть таблицу?
Hi Igrok4!

Создать нужное число колонок (например установив ColumnCount = 2), потом
установить для колонок и для их внутренних контролов свойства так как тебе
нужно - в частности пропиши источники данных для колонок.

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
23.03.2006, 17:06
    #33621168
Igrok4
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно открыть таблицу?
Спасибо!
А можно для разных колонок указать в качестве источника данных поля из разных таблиц?
И что тогда указывать в
Код: plaintext
ThisForm.grid1.RecordSource =
? Обе таблицы через запятую?
...
Рейтинг: 0 / 0
23.03.2006, 23:28
    #33621971
ВладимирМ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно открыть таблицу?
Igrok4Спасибо!
А можно для разных колонок указать в качестве источника данных поля из разных таблиц?
И что тогда указывать в
Код: plaintext
ThisForm.grid1.RecordSource =
? Обе таблицы через запятую?
Нет. Источник данных для Grid по прежнему только одна таблица.

Однако если таблицы связаны через SET RELATION (или в DataEnvironment формы), то можно указать в качестве источника другого столбца поля другой таблицы:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
USE (v1) IN  0  ALIAS kas
SELECT kas
ThisForm.Grid1.ColumnCount=  3 
ThisForm.grid1.RecordSourceType =  1 
ThisForm.grid1.RecordSource = 'kas'
ThisForm.grid1.Column1.ControlSource = 'kas.code'
ThisForm.grid1.Column2.ControlSource = 'kas.end'
ThisForm.grid1.Column1.ControlSource = 'tab2.field'

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


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