Прогресс 4GL — Как создать бесконечный обзор прокрутки

#openedge #progress-4gl

#openedge #прогресс-4gl

Вопрос:

Мы используем более старую символьную версию MFG / PRO от QAD, работающую на Progress версии 10.1. В одной из таблиц доставки я должен создать обзор, который будет отображать все записи в прокручиваемом обзоре (своего рода просмотр с бесконечной прокруткой). Сначала будут отображаться первые 10 записей, но пользователь сможет прокручивать вверх или вниз в обзоре, который должен загружать предыдущую или следующую запись (клавиша со стрелкой вверх или вниз).

Мне было интересно, как можно достичь чего-то подобного. Предварительная загрузка временной таблицы с миллионами записей не кажется хорошей идеей, запрос к базе данных при каждом нажатии клавиши со стрелкой вверх или вниз звучит одинаково плохо. Предоставляет ли DEFINE BROWSE способ достижения этого? Есть ли способ закодировать сценарий отложенной загрузки?

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

Любая помощь / указатели в этом отношении будут полезны. Кроме того, если можно поделиться некоторыми лучшими практиками.

Ответ №1:

Вы можете просмотреть END OFF-END события и в виджете обзор. Это предупредит вас, когда пользователь захочет прокрутить вперед / назад. Запрос, связанный с обзором, также содержит OFF-END событие, которое вы могли бы использовать для этого.

Документ в https://docs.progress.com/bundle/abl-reference/page/High-level-widget-events.html#High-level-widget-events