powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Проблема с combobox
8 сообщений из 8, страница 1 из 1
Проблема с combobox
    #33283374
burik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Друзья помогите? У меня на форме есть 2 combobbox к которым я привязываю таблицы. Мне нужно чтобы вибирая значения из 1-й таблицы при помощи combo1 изменялись данные в combo2. Тоисть я строю отношение один ко многим.
Подскажите как это сделать.
...
Рейтинг: 0 / 0
Проблема с combobox
    #33283745
Фотография FoxLamer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно так:
1. Добавляем свойства cField, cSql, cAlias, id, cIdField к родительскому Combo
2. В Init прописываем следующий код

LOCAL lcSql, lcNameAlias, lcField, lcMacro

lcField = '['+this.cField+']'
lcNameAlias = '['+this.cAlias+']'

this.RowSource='' &&отключаем источник

this.RowSourceType= 6 && fields

lcSql = this.сSql

SQLExec(gnconnect,lcSQL,&lcNameAlias) && для КС

* для ФС
* lcSql=this.cSql
* &lcSql

lcMacro = 'this.id ='+ this.сidField
&lcMacro

this.RowSource=&lcField &&подключаем источник


3. В методе InteractiveChange Combo:
LOCAL lcMacro
lcMacro = 'this.id ='+ this.сidField
&lcMacro

4. На форму кидаем Combo1 и Combo2 унаследованные от нашего Сombo

Для Combo1 в дизайне устанавливаем свойства:

Combo1.cAlias='имя курсора1'
Combo1.cField='поле в курсоре1 для отображения в комбобоксе1'
Combo1.cIdField='уникальное поле в курсоре1'
Combo1.cSql='EXEC DBNAME.DBO.PROCNAME' - для КС
или Combo1.cSql='SELECT * FROM TABLEXXX INTO CURSOR '+this.cAlias - для ФС

Для Combo2 в дизайне устанавливаем свойства:

Combo2.cAlias='имя курсора2'
Combo2.cField='поле в курсоре2 для отображения в комбобоксе2'
Combo2.cIdField='уникальное поле в курсоре2'
Combo2.cSql='EXEC DBNAME.DBO.PROCNAME2 ?thisform.combo2.id' - для КС
или Combo2.cSql='SELECT * FROM TABLEYYY WHERE parent_id= '+allt(str(thisform.combo1.id))+' INTO CURSOR ' +this.cAlias - для ФС


5. В методе Init формы :

this.combo2.init

5. В методе InteractiveChange Combo1:
dodefault()
thisform.Combo2.init
...
Рейтинг: 0 / 0
Проблема с combobox
    #33283822
Фотография FM32YO aka KID
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
дико извиняюсь
'EXEC DBNAME.DBO.PROCNAME2 ?thisform.combo2.id' - это выполнение хранимой процедуры на СКЛ Сервере?
то есть для каждого комбобокса надо свою ХП?
а если комбо будет 5 - то надо 5 ХП?????
...
Рейтинг: 0 / 0
Проблема с combobox
    #33283895
Фотография FoxLamer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, процедура. Но можно и прямой запрос SELECT * FROM ....
Для 5 комбобоксов может быть и 5 и 1 процедура с разными параметрами. Это зависит от тех данных, которые Вы выбираете...
...
Рейтинг: 0 / 0
Проблема с combobox
    #33283991
Фотография FM32YO aka KID
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
дико извиняюсь
'EXEC DBNAME.DBO.PROCNAME2 ?thisform.combo2.id' - это выполнение хранимой процедуры на СКЛ Сервере?
то есть для каждого комбобокса надо свою ХП?
а если комбо будет 5 - то надо 5 ХП?????
...
Рейтинг: 0 / 0
Проблема с combobox
    #33283995
Фотография FM32YO aka KID
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FoxLamerДа, процедура. Но можно и прямой запрос SELECT * FROM ....
Для 5 комбобоксов может быть и 5 и 1 процедура с разными параметрами. Это зависит от тех данных, которые Вы выбираете...


спасибо.. так и понял.. просто для выборок с сервера предвочитаю передавать просто Селекты.. а процедуры для чего-то по-сложней
...
Рейтинг: 0 / 0
Проблема с combobox
    #33284049
Фотография FoxLamer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 FM32YO aka KID
Использование ХР дает возможность для внесения изменений в условия выборки данных с сервера и бизнес-логику, не изменяя код на клиенте...
Кому-то это нужно, а кому-то и нет. Мне это необходимо.
...
Рейтинг: 0 / 0
Проблема с combobox
    #33297045
burik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Большое спасибо! У меня все получилось.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Проблема с combobox
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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