Минимизировать циклические переходы между клиентом и базой данных с помощью oracle forms 10

#oracle #oracle10g #oracleforms

#Oracle #oracle10g #oracleforms

Вопрос:

наши клиенты работают в особых условиях, и их задержка высока.

Все наши oracle forms 10 вызывают процедуру, Которая переводит все метки и т. Д., Которые Будут отображаться в форме. Таким образом, для перевода каждой метки выполняется вызов от клиента к базе данных (процедура перевода меток представляет собой пакет базы данных, а данные находятся в таблице).

Мы хотели бы сократить все эти циклы, и я подумал, что если я смогу хранить локально (в .jar?) Весь словарь (около 1 мегабайт при экспорте в текст) Я мог бы повысить производительность. На самом деле выполняется около 300 переходов назад и вперед каждый раз, когда мы открываем новую форму.

Итак, моя цель — локально хранить некоторые данные — иметь возможность локально (через подключенную библиотеку?) для чтения данных

Я немного растерялся. Как я могу это сделать (st) и как я могу получить к нему доступ?

Заранее большое спасибо

Комментарии:

1. Одним из решений может быть «объединение» переводов каким-либо образом на сервере базы данных, например, возможно, путем: а) предоставления приложению способа отправки SELECT инструкции в базу данных для получения всех переводов одновременно, или, б) предоставления новой версии вашей процедуры базы данных, которая позволяет приложениюпередайте коллекцию меток для перевода, а затем верните коллекцию, содержащую результаты.

2. да, это первое, что я попробовал, но я обнаружил, что во многих других местах выполняется вызов словаря. Если я смогу получать данные локально, а не через базу данных, у меня будет решение, которое сократит, возможно, 75% вызовов.

Ответ №1:

Что вы могли бы сделать, так это создать присоединенную библиотеку с пакетом с глобальными константами для всех ваших переводов. Затем вы можете вызвать их, поскольку это пакет forms, а не пакет db, вызовы не выполняются.