Re: How to loop through records in a data block?

From: Pradhan <empradhan_at_dplus.net>
Date: Sat, 24 Apr 1999 00:36:28 -0400
Message-ID: <QSbU2.579$8j6.305_at_newsfeed.slurp.net>


Hi
i use following code to go through the block items and you may need to do some cosmetics as your requirement..

declare
block_name VARCHAR2(30) := 'loopscreen';  curr_item VARCHAR2(30);
 lst_item VARCHAR2(30);
 curr_type VARCHAR2(30);
begin

curr_item := Get_Block_Property(block_name, FIRST_ITEM);
 lst_item := Get_Block_Property(block_name, LAST_ITEM);
 curr_type  := Get_Item_Property(curr_item,ITEM_TYPE);
 IF curr_type IN ('TEXT ITEM','LIST') THEN   IF p_operation = 'DISABLE' THEN
   Set_Item_Property(curr_item,ENABLED,PROPERTY_FALSE);   ELSE
   Set_Item_Property(curr_item,ENABLED,PROPERTY_TRUE);   END IF;
 END IF;
 LOOP
  curr_item := Get_item_Property(curr_item, NEXTITEM);   curr_type := Get_Item_Property(curr_item,ITEM_TYPE);

  IF curr_type IN ('TEXT ITEM','LIST','CHECKBOX') THEN    IF Get_Item_Property(curr_item,DISPLAYED) = 'TRUE' THEN     IF p_operation = 'DISABLE' THEN
     Set_Item_Property(curr_item,ENABLED,PROPERTY_FALSE);     ELSE

     Set_Item_Property(curr_item,ENABLED,PROPERTY_TRUE);
     Set_Item_Property(curr_item,NAVIGABLE,PROPERTY_TRUE);
     Set_Item_Property(curr_item,UPDATE_ALLOWED,PROPERTY_TRUE);
    END IF;
   END IF;
  END IF;
  IF curr_item = lst_item THEN
   EXIT;
  END IF;
 END LOOP;
END; HTH and Good luck
Pradhan
suisum_at_ecn.ab.ca wrote in message <37212bdb.0_at_ecn.ab.ca>...
>I need to loop through all records in a data block. What is the condition
>for the WHILE loop, please?
>
>I have tried WHILE :SYSTEM.LAST_RECORD = 'FALSE' LOOP
>or WHILE :data_block.item IS NOT NULL LOOP
>
>But no luck, please help.
>
>--
>Best regards,
Received on Sat Apr 24 1999 - 06:36:28 CEST

Original text of this message