Добро пожаловать, Гость
Логин: Пароль: Запомнить меня
Программирование для начинающих - общие вопросы.
  • Страница:
  • 1
  • 2
  • 3
  • 4

ТЕМА:

Re: Выбор определенных записей в блоке данных (Forms 6) в Oracle 12 года 7 мес. назад #3576

Если ты пишешь на C++. Тогда все понятно. Подход Oracle Form сильно отличаеться от других.


Самый простой способ следующий

1 способ) Если это твоя таблица. То добавляешь в нее поле MARK_Flag или еще какое-то EVENT. Строишь блок форме та таблице ACCOUNTS . Пользователь отмечает твои записи жмет F10. Ты в триггере на таблице делаешь необходимые действия.

Если это таблица не твоя, то ты добавить поле в общем случае не можешь. Т.к если в формах могут используються процедуры?/функции параметры у которых типы основанные на таблицах, то они отваляться (в формах конечно такие функции лучше не использовать).

2 способ) Можно при клике/отметки записи в блоке менять ее статус с QUERY на CHANGED и обработку писать в триггере блока PRE-UPDATE. Когда пользователь выделил запись. Статус ее поменялся на CHANGED. Он навыделял несколько записей. Нажал Key-commit(F10) записи стали обновляться. В триггере PRE-UPDATE выполнились необходимые действия.

В любом из этих случае все работу по commit/rollback и блокировкам записей берет на себя Формс. И если у тебя что-то меняеться со счетом (его состояние (ОТКРЫТ, ЗАКРЫТ ) т.е какие-то поля счета, то Форс их перечитает автоматически ( если тебе надо)

Второй способ хуже.
--
Совсем правильно - это сначала рассказать какую операцию ты собираешься выполнять над счетом. Тогда возможно есть и другие варианты. Потому что одно дело когда он поднял форму и выбелил 3-4 записи. Другое дело, когда ему надо отобрать 2000 записей. Подходы к построению форм в разных случаях разные.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Re: Выбор определенных записей в блоке данных (Forms 6) в Oracle 12 года 7 мес. назад #3577

Я не говорил, что предложенное мной решение универсально. Все зависит от задачи.
IMHO, в предложенной в топике задаче не может быть очень много записей, иначе как бы ты стал отмечать записи среди 5000 :=)).
Я использую предложенное мной решение во многих формах и очень доволен (юзера тоже).
Ну а не нравится, не ешь

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Re: Выбор определенных записей в блоке данных (Forms 6) в Oracle 12 года 7 мес. назад #3578

>Я не говорил, что предложенное мной решение универсально. Все зависит от >задачи.

Меня вообще немного удивляет с какой готовностью и рвением люди кидаються на использование временных таблиц, масивов в памяти и тд.

>IMHO, в предложенной в топике задаче не может быть очень много записей, >иначе как бы ты стал отмечать записи среди 5000 :=)).
Тут ты прав. Надо подробнее узнать о задаче. И потом говорить.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Страница:
  • 1
  • 2
  • 3
  • 4
Время создания страницы: 0.196 секунд