Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Данные из разных таблиц в Grid / 15 сообщений из 15, страница 1 из 1
22.11.2008, 23:51
    #35669985
Strict
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Данные из разных таблиц в Grid
Здравствуйте! Как сделать так чтобы в Grid отображалось содержимое полей из разных таблиц, связанных ключом? Например, у меня есть таблица "клиенты" и "договора", связанные номером клиента. ФИО хранится в таблице клиенты и мне нужно вывести те ФИО, чьи номера присутствуют в таблице "договора".
...
Рейтинг: 0 / 0
23.11.2008, 09:45
    #35670126
Aleksey-K
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Данные из разных таблиц в Grid
1. Связанные таблицы (SET RELATION...)
2. Запрос с JOIN в курсор и отображением в гриде этого курсора (мой выбор)
С уважением, Алексей
...
Рейтинг: 0 / 0
23.11.2008, 14:34
    #35670285
Strict
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Данные из разных таблиц в Grid
Спасибо, Алексей! А какие ещё есть варианты ? Просто я начинающий и не знаю всех возможностей FoxPro.
...
Рейтинг: 0 / 0
23.11.2008, 15:46
    #35670325
Burn
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Данные из разных таблиц в Grid
StrictСпасибо, Алексей! А какие ещё есть варианты ? Просто я начинающий и не знаю всех возможностей FoxPro.
Есть - использовать в качестве источника для стобца выражение типа:
IIF(Seek(<строка поиска>,<дочерная таблица>),<нужное поле>,'')
Но это банальная замена SET RELATION
...
Рейтинг: 0 / 0
23.11.2008, 16:42
    #35670382
Strict
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Данные из разных таблиц в Grid
Не хочу показаться назойливым, но если можете напишите кто-нибудь подробнее. В общем помогите чем можете, курсовой проект никак не могу доделать. Проект делаю в FoxPro 6, так препод требует. И ещё есть вопросы не по теме, новую тему создавать не хочется, поэтому спрашиваю здесь.
1) У меня содержимое таблицы отображается в Grid`е, я ввожу номер клиента, помечаю запись с этим номером на удаление, применяю pack, после чего выходит сообщение "File must be opened exclusively". Как с этим бороться ?
2) Как удалять запись без использования маркера удаления, кликнув по строке в Grid`е, а потом "Удалить" ?
...
Рейтинг: 0 / 0
23.11.2008, 18:17
    #35670430
Dag
Dag
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Данные из разных таблиц в Grid
Strict 1) У меня содержимое таблицы отображается в Grid`е, я ввожу номер клиента, помечаю запись с этим номером на удаление, применяю pack, после чего выходит сообщение "File must be opened exclusively". Как с этим бороться ?/quot]

Команду Pack выполнять в отдельной процедуре. Смотри на foxclub

[quot Strict] 2) Как удалять запись без использования маркера удаления, кликнув по строке в Grid`е, а потом "Удалить" ?

Смотри HELP на команду DELETE
...
Рейтинг: 0 / 0
23.11.2008, 19:13
    #35670453
Strict
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Данные из разных таблиц в Grid
Понятно, Dag. У меня ещё вопрос. Есть несколько ComboBox`ов:
Первый содержит список клиентов
Второй - наименования вкладов (содержатся в таблице spvkld)
Третий - сроки (содер. в таб. srok)
Эти таблицы привязаны к таблице stavka, которая построена след. образом:
номер вклада срок (месяцев) ставка
1 1 0,015
1 3 0,03
1 6 0,05
2 1 0,01
2 3 0,02
2 6 0,06
2 12 0,09
Как сделать так чтобы выбрав в Combo2 наименование 1-го вклада в Combo3 содержались только
варианты 1,3,6,а выбрав наим. 2-го - 1,3,6,12 ? Вроде бы донес, то что хочу узнать.
...
Рейтинг: 0 / 0
23.11.2008, 19:14
    #35670454
Strict
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Данные из разных таблиц в Grid
Понятно, Dag. У меня ещё вопрос. Есть несколько ComboBox`ов:
Первый содержит список клиентов
Второй - наименования вкладов (содержатся в таблице spvkld)
Третий - сроки (содер. в таб. srok)
Эти таблицы привязаны к таблице stavka, которая построена след. образом:
номер вклада срок (месяцев) ставка
1 1 0,015
1 3 0,03
1 6 0,05
2 1 0,01
2 3 0,02
2 6 0,06
2 12 0,09
Как сделать так чтобы выбрав в Combo2 наименование 1-го вклада в Combo3 содержались только
варианты 1,3,6,а выбрав наим. 2-го - 1,3,6,12 ? Вроде бы донес, то что хочу узнать.
...
Рейтинг: 0 / 0
23.11.2008, 19:56
    #35670482
Dag
Dag
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Данные из разных таблиц в Grid
...
Рейтинг: 0 / 0
23.11.2008, 20:12
    #35670496
Dag
Dag
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Данные из разных таблиц в Grid
Я бы в качестве RecordSourceType для комбо назначил значение alias, делал нужные выборки командой Select-SQL и подключал получившиеся курсоры как источники данных для комбо.
Например, поместить в метод InteractiveChange (или Valid) combo2

Код: plaintext
1.
2.
3.
4.
5.
This.Parent.combo3.RowSource=''
sele srok from stavka into cursor  tmp WHERE nomer_vklada == This.Value
This.Parent.combo3.RowSourceType=  2 
This.Parent.combo3.RowSource ='Tmp.srok' 
ThisForm.Refresh() 


Где-то так.
...
Рейтинг: 0 / 0
23.11.2008, 20:43
    #35670514
Strict
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Данные из разных таблиц в Grid
Благодарю! Сейчас попробую.
...
Рейтинг: 0 / 0
24.11.2008, 21:06
    #35672748
Strict
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Данные из разных таблиц в Grid
В общем забил в combo4 след. код:

private nam,nvalut
nam=thisform.combo2.value (наименование вклада)
nvalut=thisform.combo4.value (валюта)
select kolmes from stavka,spvkld,valut WHERE (spvkld.name==nam)and(spvkld.kvkld==stavka.numv)and(valut.name==nvalut)and(valut.nval==stavka.nval) into cursor tmp
Thisform.combo3.RowSource ='tmp.kolmes'
Thisform.combo3.RowSourceType= 2
thisform.refresh

Возникла следующая проблема:
Выбираю значение в combo2, затем в combo4 выбираю RUB, но поле остается пустым, потом снова выбираю RUB, в поле появляется RUB, но возникает ошибка "Cannot access the selected table".Как это лечить ?
...
Рейтинг: 0 / 0
24.11.2008, 21:21
    #35672756
Dag
Dag
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Данные из разных таблиц в Grid
КУда именно (в какой метод ) забил код?
Формируется ли курсор tmp и содержит ли он нужную информацию?
Перед пересозданием курсора-источника данных нужно отключить его у потребителя (combo3)

This.Parent.combo3.RowSource=''
...
Рейтинг: 0 / 0
24.11.2008, 23:19
    #35672852
Strict
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Данные из разных таблиц в Grid
Забил в метод InteractiveChange. Курсор формируется, после его создания использовал browse, в таблице содержатся нужные данные.
...
Рейтинг: 0 / 0
25.11.2008, 09:17
    #35673146
Strict
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Данные из разных таблиц в Grid
Поправил код,теперь при выборе в combo4 какого-либо значения, поле остается пустым, хотя в combo2 отображается содержимое, соответствующее выбору в combo4.
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Данные из разных таблиц в Grid / 15 сообщений из 15, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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