Oracle Forms: как передать переменную между окнами с помощью всплывающего меню

Я создал форму для главной таблицы, теперь я хочу открыть другую форму, отображающую подробности, когда щелкните правой кнопкой мыши поле и выберите «Подробности».

Как я могу получить «ЗАКАЗ ПУНКТА» и передать значение в новую форму, чтобы отобразить соответствующую информацию? Если это не указано ясно, пожалуйста, прокомментируйте. Спасибо

Пример изображения


person Frank    schedule 04.01.2013    source источник


Ответы (1)


Одним из параметров процедуры call_form или open_form является список параметров. Этот список параметров используется для передачи параметров. В форме вызова:

  1. создать список параметров

  2. добавить параметр в параметр

  3. call_form, используя этот список параметров:

DECLARE
    fParams ParamList := null;
BEGIN 
  fParams := Get_Parameter_List('SOME_NAME'); 
  IF (not Id_Null(fParams)) THEN 
    destroy_parameter_list(fList);
  END IF;

  fParams := Create_Parameter_List('SOME_NAME');
  Add_Parameter(fParams, 'PARAM_NAME', TEXT_PARAMETER, 'PARAM_VALUE'); 
  OPEN_FORM('Form_Name', ACTIVATE, SESSION, NO_SHARE_LIBRARY_DATA, fParams);
END;

В вызываемой форме: вы должны объявить параметр в разделе "Параметры" с то же именем, что и в add_parameter. После этого вы можете ссылаться на параметр, используя :parameter.param_name.

Одно предостережение: вы не можете использовать :parameter в предложении where блоков данных. Скопируйте параметр в другой элемент блока данных и используйте этот.

person Vlisisids Akis    schedule 07.01.2013