powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle Forms [игнор отключен] [закрыт для гостей] / Перезапрос на форме
6 сообщений из 6, страница 1 из 1
Перезапрос на форме
    #37652971
dogalevs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть форма. Есть блок, основанный на обзоре.
На этом блоке товар с характеристиками.
Работает по полям поиск по лавам.

План действий: Открыл форму. Нажал F7 - выбрал нужные характеристики (например только лопаты)..нажал F8. Результат показаны только лопаты. Заказываю нужные, ставя в чекбокс галочку, по которой заполняется таблица РЕЗЕРВА.

И после проставления галочки как бы БЛОК где я до этого выбьрал лопаты, показывает весь товар и ЛОПАТЫ и не ЛОПАТЫ.

Собсно вопрос... как сохранить то, что выбрали до проставления ГАЛОЧКИ...и это же показывать после проставления ГАЛОЧКИ??

на галке триггер заполнения таблицы РЕЗЕРВА...и в конце как раз уход на блок и EXECUTE QUERY
...
Рейтинг: 0 / 0
Перезапрос на форме
    #37653038
Griffo Proudfoot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вам нужно почитать учебник по формсу.
Способов много, например:

SET_BLOCK_PROPERTY ('your_block_name', DEFAULT_WHERE, 'where lower(good_name) like ''%лопат%''');
...
Рейтинг: 0 / 0
Перезапрос на форме
    #37653517
dogalevs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Griffo Proudfoot,

нужно! но некогда)

Вы привели пример, который работает на ЛОПАТЫ только.

А мне нужно в зависимости от того, что я выберу. Например 5 характеристик. Я введу поиск по двум: 1) - ЛОПАТЫ 2) - ТИП-Штыковая

мне выдаст результат Все Штыковые Лопаты...

В следующий раз я могу выбрать ВЕДРА...

так вот что прописать на галке вместо EXECUTE_QUERY чтоб выполнялся execute_query с результатами последней выборки.
...
Рейтинг: 0 / 0
Перезапрос на форме
    #37653530
tru55
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну дык формируй динамически строку для WHERE в зависимости от своих условий
...
Рейтинг: 0 / 0
Перезапрос на форме
    #37653533
dogalevs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tru55,

можете как пример синтаксиса показать? на примере одного поля
...
Рейтинг: 0 / 0
Перезапрос на форме
    #37653596
Griffo Proudfoot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dogalevsЯ введу поиск по двум: 1) - ЛОПАТЫ 2) - ТИП-Штыковая

мне выдаст результат Все Штыковые Лопаты...

В следующий раз я могу выбрать ВЕДРА...


способ №2
Добавить небазовый (управляющий) блок с полями (например) god_name и good_type.
В процедуре поиска предусмотреть присвоение соотвю значений в эти поля, например:
:ctrl.good_name := :base_block_name.good_name; -- ('ЛОПАТЫ' или 'ВЕДРА')
:ctrl.good_type := :base_block_name.good_type; -- (Штыковые)

Создать триггер PRE-QUERY на базовом блоке с заданием параметров поиска

:base_block_name.good_name := :ctrl.good_name; -- ('ЛОПАТЫ' или 'ВЕДРА')
:base_block_name.good_type := :ctrl.good_type; -- (Штыковые)

dogalevsчтоб выполнялся execute_query с результатами последней выборки.

способ №3

SET_BLOCK_PROPERTY ('your_block_name', DEFAULT_WHERE, substr (:system.last_query,instr (lower(:system.last_query),'where')));

не зная вашей задачи трудно подсказать лучший способ.
а в форуме за вас вашу работу никто делать не будет :)

dogalevsнужно! но некогда)


с такими познаниями на минимальную доработку формы вы потратите на порядок больше времени, чем на изучение документации.

PS
что хранить наименования и типы товаров лучше в справочных таблицах, а в поиске оперировать их кодами.
в общем, непочатый край...
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Oracle Forms [игнор отключен] [закрыт для гостей] / Перезапрос на форме
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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