When the user checks the Item 1 checkbox, then its label is assigned to the text item (:CTRL.ITM for this example).
if :ctrl.item1 = 'Y' then :ctrl.itm := get_item_property('CTRL.ITEM1', label); end if;
The above example assumes the name of your block is CTRL, and the name of the text item is ITM for that block.
:ctrl.itm := get_item_property(:system.cursor_item, label);
It would fire and rebuild the label each time a checkbox was changed.
declare v_symptoms varchar2(240) := 'Has '; begin -- -- Check to include the symptoms -- if :patient.diabetic_check = 'Y' then v_symptoms := v_symptoms || 'diabetes, '; end if; if :patient.has_stomach_pain = 'Y' then v_symptoms := v_symptoms || 'stomach pain, '; end if; if :patient.has_headache = 'Y' then v_symptoms := v_symptoms || 'headache, '; end if; if :patient.has_broken_leg = 'Y' then v_symptoms := v_symptoms || 'broken leg, '; end if; -- -- Check to see if they have any symptoms. If they do record -- them in the text item. -- if v_symptoms = 'Has ' then :patient.symptoms := null; else :patient.symptoms := rtrim(v_symptoms, ', '); end if; end;