powered by simpleCommunicator - 2.0.55     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / TextBox,Command Button и обновление grid по запросу?
11 сообщений из 11, страница 1 из 1
TextBox,Command Button и обновление grid по запросу?
    #36003028
Kochegra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый вечер!
Не подскажете? Нужно следующее.
Есть форма с гридом (form1). Грид содержит таблицу Clients с полями: login(c10), name(c25), inn(c12) и еще несколько полей.
Создал еще одну форму (form2). В ней textbox и кнопка "Установить". Нужно следующее. Вводишь в textbox текст (логин) и жмешь установить. форма закрывается, а форма с гридом обновляется и остаются только строки удовлетворяющие тексту введенному в textboxe.
При всем при этом, хочется это сделать через запросик, т.к. кроме textboxa в дальнейшем планируется еще другие объекты для выборки использовать.
Например, select * from clients where upper(login) like upper('form2.text1.value').

Подскажите, чем воспользоваться? Как лучше сделать? Заранее благодарен за помощь.
...
Рейтинг: 0 / 0
TextBox,Command Button и обновление grid по запросу?
    #36003127
reware
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KochegraДобрый вечер!
Не подскажете? Нужно следующее.
Есть форма с гридом (form1). Грид содержит таблицу Clients с полями: login(c10), name(c25), inn(c12) и еще несколько полей.
Создал еще одну форму (form2). В ней textbox и кнопка "Установить". Нужно следующее. Вводишь в textbox текст (логин) и жмешь установить. форма закрывается, а форма с гридом обновляется и остаются только строки удовлетворяющие тексту введенному в textboxe.
При всем при этом, хочется это сделать через запросик, т.к. кроме textboxa в дальнейшем планируется еще другие объекты для выборки использовать.
Например, select * from clients where upper(login) like upper('form2.text1.value').

Подскажите, чем воспользоваться? Как лучше сделать? Заранее благодарен за помощь.

Так уже сами ведь практически все написали. Для пущей важности можно подправить (чуть-чуть, чтобы и вам работу оставить) :

Код: plaintext
1.
select * from clients where upper(login) like "%"+upper(alltrim(form2.text1.value))+"%" ;
 into cursor AnyCursor

И отображайте курсор AnyCursor.
...
Рейтинг: 0 / 0
TextBox,Command Button и обновление grid по запросу?
    #36003197
Kochegra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В том то и дело, что трудности с всем остальным. Подозревал, что курсор нужен.
Мне нужно курсор AnyCursor создать? После этого как его к гриду привязать?
И где курсор создавать?
...
Рейтинг: 0 / 0
TextBox,Command Button и обновление grid по запросу?
    #36003245
Dag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kochegra

Курсор создан тем кодом, то привел reware

Как привязывать к гриду курсор посмотри здесь
...
Рейтинг: 0 / 0
TextBox,Command Button и обновление grid по запросу?
    #36003699
Kochegra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дошел до следуещего (во вложении).
В form2 в методе click прописал

авторselect login,name_kr,inn,client,skzi,sign_cnt,station,d_sesion,d_create,d_valid;
from clients where upper(login) like "%"+upper(alltrim(thisform.text1.value))+"%" ;
into cursor AnyCursor

form1.grdClients.RecordSource=""
form1.grdClients.RecordSource="AnyCursor"
ThisForm.Release

Но как быть со связанными таблицами по полю login? Как их обновлять?
...
Рейтинг: 0 / 0
TextBox,Command Button и обновление grid по запросу?
    #36003749
Dag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поправить немного файл start
Код: plaintext
1.
2.
PUBLIC form1
DO FORM FORMS\form1 NAME form1 linked 

Мешать два подхода (курсоры и связи) в одном проекте я бы не стал. Либо все на курсорах, либо фильтры и связи. Заведи у формы Form1 св-во cFilter, тогда на форме 2 код переписать можно так

*Кнопка Сформировать
Код: plaintext
1.
2.
3.
4.
Form1.cFilter=upper(alltrim(thisform.text1.value))
SET FILTER TO (Form1.cFilter) $ UPPER(login) IN Clients
Form1.refresh()
ThisForm.Release

Кнопка сбросить

Код: plaintext
1.
2.
3.
SET FILTER TO IN clients 
Form1.Refresh()
ThisForm.Release
...
Рейтинг: 0 / 0
TextBox,Command Button и обновление grid по запросу?
    #36004302
Kochegra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dag, подскажи насчет cFilter. Как это свойство завести? Где прописать?
И такой вопрос: можно ли на курсорах задумываемое сделать? Можно как то связи между курсорами настроить?
...
Рейтинг: 0 / 0
TextBox,Command Button и обновление grid по запросу?
    #36004345
Dag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KochegraDag, подскажи насчет cFilter. Как это свойство завести? Где прописать?
И такой вопрос: можно ли на курсорах задумываемое сделать? Можно как то связи между курсорами настроить?

Открываешь форму в конструкторе (Modify). Далее меню Form-New Property.

Связи при работе с выборками я не использую. Когда нужно делаю выборку в очередной курсор по нужному идентификатору. Впрочем почитай про команду SET RELATION
...
Рейтинг: 0 / 0
TextBox,Command Button и обновление grid по запросу?
    #36004360
Dag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуй.
Кнопка 1
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
select login,name_kr,inn,client,skzi,sign_cnt,station,d_sesion,d_create,d_valid;
 from clients where upper(login) like "%"+upper(alltrim(thisform.text1.value))+"%" ;
 into cursor AnyCursor readwrite
form1.grdClients.RecordSource=""
form1.grdClients.RecordSource="AnyCursor"

SET RELATION TO login INTO accounts
SET RELATION TO login INTO signs ADDITIVE 

Form1.refresh()
ThisForm.Release
Кнопка 2
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
form1.grdClients.RecordSource=""
form1.grdClients.RecordSource="Clients"
form1.grdClients.Column1.ControlSource = "Clients.login" 
form1.grdClients.Column2.ControlSource = "Clients.name_kr" 
form1.grdClients.Column3.ControlSource = "Clients.inn" 
form1.grdClients.Column4.ControlSource = "Clients.client" 
form1.grdClients.Column5.ControlSource = "Clients.skzi" 
form1.grdClients.Column6.ControlSource = "Clients.sign_cnt" 
form1.grdClients.Column7.ControlSource = "Clients.station" 
form1.grdClients.Column8.ControlSource = "Clients.d_sesion" 
form1.grdClients.Column9.ControlSource = "Clients.d_create" 
form1.grdClients.Column10.ControlSource = "Clients.d_valid" 

USE IN SELECT([AnyCursor])
Form1.Refresh()
ThisForm.Release
...
Рейтинг: 0 / 0
TextBox,Command Button и обновление grid по запросу?
    #36006739
Kochegra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dag, т.е. если несколько фильтров нужно применить (вариант с фильтрами), то нужно несколько свойст для формы создавать (cFilter1,cFilter2,cFilter3...)?
Пока с фильтрами эксперементирую.
...
Рейтинг: 0 / 0
TextBox,Command Button и обновление grid по запросу?
    #36007080
Dag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это зависит от того, что планируешь делать с этими фильтрами. Удобнее завести несколько если они будут накладываться совместно
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / TextBox,Command Button и обновление grid по запросу?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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