powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Представление и формы
9 сообщений из 9, страница 1 из 1
Представление и формы
    #33620814
OlgaLL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Помогите пожалуста !!!!!!!!!!!
Как осуществляется передача параметра из формы в представление (условие)
...
Рейтинг: 0 / 0
Представление и формы
    #33620867
Фотография Hel!Riser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
перед открытием представления или его перезапроса присвой значения переменным, кот у тя являюца параметрами в представлении
...
Рейтинг: 0 / 0
Представление и формы
    #33620947
OlgaLL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Задаю параметр и создаю представление в ините формы

fam=alltrim(thisformset.uslovie.text1.value)
open database
CREATE SQL VIEW famil AS SELECT * FROM pensioner
where pensioner.familia=fam
MODIFY VIEW famil

выходит ошибка чтo параметр fam не определен, не верен, неправильное условие.
...
Рейтинг: 0 / 0
Представление и формы
    #33621739
Фотография Hel!Riser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
CREATE SQL VIEW famil AS SELECT * FROM pensioner
where pensioner.familia=?fam
...
Рейтинг: 0 / 0
Представление и формы
    #33621989
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вообще-то, динамическое создание Local View - не есть хорошо. Много сопутствующих проблем.

Local View надо создавать на этапе проектирования структуры базы данных. Для динамических запросов разумнее напрямую писать SQL-запросы.

Параметр во View предваряется вопросительным знаком. Все то, что следует за символом вопросительного знака - это некое выражение, которое должно быть вычислено до выполнения запроса.

Т.е. создаешь Local View такого вида

Код: plaintext
1.
2.
CREATE SQL VIEW famil AS SELECT * FROM pensioner
where pensioner.familia=?fam

Добавляешь его в DataEnvironment формы и устанавливаешь для него свойство

NoDataOnLoad = .T.

Чтобы предотвратить запрос на значение параметра при открытии формы. Далее в INIT-формы присваиваешь значение параметру и наполняешь View данными:

Код: plaintext
1.
2.
3.
LOCAL fam
m.fam = "Иванов"
Requery("famil")
...
Рейтинг: 0 / 0
Представление и формы
    #33622600
OlgaLL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо всем за ответы!

Вопрос такой:
Когда указываешь конкретный параметр
m.fam = "Иванов"
то работает все конечно здорово

Когда же я пытаюсь определить значение параметра как
m.fam=alltrim(thisformset.uslovie.text1.value)
То значение оного как бы не читаеться и представление выдает все существующие данные.
Почему это поисходит???
...
Рейтинг: 0 / 0
Представление и формы
    #33623529
Juri0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А если создать заранее переменную m.fam='' и указать ее в качестве источника сontrol source для text1 ?
...
Рейтинг: 0 / 0
Представление и формы
    #33624651
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
OlgaLLКогда же я пытаюсь определить значение параметра как
m.fam=alltrim(thisformset.uslovie.text1.value)
То значение оного как бы не читаеться и представление выдает все существующие данные.
Почему это поисходит???
Это значит, что просто ничего не ввели! Пустая строка была прочитана.

Проверить можно так:

Код: plaintext
1.
2.
3.
IF EMPTY(thisformset.uslovie.text1.value)
* Условие отбора не задано
ENDIF

Все зависит от того, где именно происходит чтение значения. В каком методе (событии) какого объекта
...
Рейтинг: 0 / 0
Представление и формы
    #33624652
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Juri0А если создать заранее переменную m.fam='' и указать ее в качестве источника сontrol source для text1 ?
Не очень хорошее решение. В этом случае переменную придется объявлять как PUBLIC, что не есть хорошо. Тем более, это не решит поставленную задачу.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Представление и формы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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