включить текст в блочной форме oracle

#oracle #textbox #block #oracleforms

#Oracle #текстовое поле #блок #oracleforms

Вопрос:

У меня проблема с включением текста в блочной форме oracle. как включить текстовое поле qty_actual в блоке, когда штрих-код = номер детали, а затем включить qty_actual, помогите мне, пожалуйста.

код :

 set_block_property('part_lokases',default_where,'part_part_no =||':barcode.txtb');
go_block('part_lokases');
execute_query;
set_block_property('part_lokases',default_where,'');
go_item('part_lokases.qty_actual');
set_item_property('part_lokases.qty_actual',ENABLED,PROPERTY_TRUE);
  

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

1. Прежде всего, существует логическая проблема с порядком последних двух строк вашего кода. Их следует заменить, сначала включить элемент, а затем навести на него курсор. ( Действительно, set_item_property похоже, заменено на set_item_instance_property для вашего случая, как уже сказал @littlefoot ).

Ответ №1:

Поскольку это табличная форма, вам придется использовать SET_ITEM_INSTANCE_PROPERTY встроенную процедуру. Что-то вроде этого:

 if :tabular_block.par_number = :barcode.part_number then
   set_item_instance_property('tabular_block.qty_actual', current_record, insert_allowed, property_true);
   set_item_instance_property('tabular_block.qty_actual', current_record, update_allowed, property_true);
else
   set_item_instance_property('tabular_block.qty_actual', current_record, insert_allowed, property_false);
   set_item_instance_property('tabular_block.qty_actual', current_record, update_allowed, property_false);
end if;
  

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

1. спасибо @Littlefoot, но мне нужно включить текстовое поле qty_actual (в определенном поле, например, на картинке) в блоке part_lokases, если barcode.txtb = part_lokases.part_part_no

2. Ну, это то, что я сказал, не так ли? Хотя на момент написания ответа я не знал имен блоков, но — вы должны быть в состоянии исправить это самостоятельно. Суть в следующем: используйте SET_ITEM_INSTANCE_PROPERTY , а не SET_ITEM_PROPERTY.