powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Данные в текстбокс из запроса
7 сообщений из 7, страница 1 из 1
Данные в текстбокс из запроса
    #34214737
Jevgeniy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
На форме добавления заказа лежит текстбокс для отображения суммы набранного товара в данном заказе.
Связи такие: КЛИЕНТ(ID)-ЗАКАЗ(ID, CLIENT_ID)-СОСТОИТ(ZAKAZ_ID, PRODUCT_ID)-ПРОДУКТ(ID,PRICE)

2 варианта реализации.

1-й: Добавить в таблицу ЗАКАЗ поле СУММА и при помощи вычисляемого поля при добавлении записи в таблицу СОСТОИТ вычеслять сумму ЗАКАЗА и заносить в соответствующее поле, потом брать оттуда значения для текстбокса.

2-й: Написать функцию для кнопки добавления записи в таблицу СОСТОИТ, в которую включить что-то типа:
Код: plaintext
1.
2.
3.
local tt
tt='select product.price*sostoit.count from sostoit, product where sostoit.prodcut_ID=product.id'
thisform.textbox1.value=tt
где-то что-то видел подобное, но естественно не работает. В текстбокс пишет текст запроса.

Текст запроса для вычисляемого поля zakaz.summ представляю что-то типа следующего:
Код: plaintext
1.
2.
3.
local tt
tt=select product.price*sostoit.count from sostoit, product where sostoit.prodcut_ID=product.id
update into zakaz (summ) value (tt)


Как лучше сделать? Если вариант 2, то как лучше написать запрос? Где и как пишутся вычисляемые поля.
...
Рейтинг: 0 / 0
Данные в текстбокс из запроса
    #34214981
Jura.K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вообще то наверно так

Код: plaintext
1.
LOCAL ARRAY tt( 1 , 1 )
select product.price*sostoit.count from sostoit, product where sostoit.prodcut_ID=product.id INTO ARRAY tt

результат смотрим в tt(1,1)
...
Рейтинг: 0 / 0
Данные в текстбокс из запроса
    #34214995
Jura.K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Создайте массив
DIMENSION tt(1,1)
в ControlSource текстбокса пишем TT(1,1)

на форме ложим кнопку или прописываем в какое либо событие элементов управления текстбоксов и т.д. короче куда нужно

Код: plaintext
1.
select product.price*sostoit.count from sostoit, product where sostoit.prodcut_ID=product.id INTO ARRAY tt
thisform.refresh()
...
Рейтинг: 0 / 0
Данные в текстбокс из запроса
    #34216697
Jevgeniy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
2.
3.
4.
5.
DIMENSION tt( 1 , 1 )
select __product.price * form_new_zakaz.txtcount.value from __include, __product;
	where __include.prID=__product.id INTO ARRAY tt
thisform.refresh()
form_new_zakaz.text1.value=tt( 1 , 1 )
form_new_zakaz.text1.refresh
Хм, странно, если ставлю tt(1,1) на controlsource тексбокса, при запуске формы пишет что tt неизвестная переменная. Сделал как написано выше - в таблице product меняет цены на номер по порядку записи в таблице и выдает сообщение что алиас txtcount не наден, хотя он есть на форме и 5-ю строками выше он участвует в другом запросе. :(
...
Рейтинг: 0 / 0
Данные в текстбокс из запроса
    #34216714
Jevgeniy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кстати глюки с Product.price не из-за этого. Меняет значение price на порядковый номер по выполнению этого:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
LOCAL _zID 
_zID=__zakaz.ID

INSERT INTO __include (prid) VALUE (__product.id)
REPLACE __include.count WITH form_new_zakaz.txtcount.value
REPLACE __include.zid WITH _zID

...
Рейтинг: 0 / 0
Данные в текстбокс из запроса
    #34216758
Jura.K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
массив объявите до вызова формы
проблемма с видимостью данных
...
Рейтинг: 0 / 0
Данные в текстбокс из запроса
    #34216827
Jevgeniy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Огромное СПАСИБО за помощь. Разобрался
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Данные в текстбокс из запроса
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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