title: How to retain block position after a query -oracle forms
body: <p>I have an oracle form with a data_block which displays 25 items.</p>
  
  <p>On the form I have a scrollbar and a 'delete' button.  When an item in the data block is selected, and the 'delete' button is pressed, it deletes the selected item from the database and then executes the data_block query.</p>
  
  <p>By default, this returns the user to the top of the list.</p>
  
  <p>I am trying to navigate to the record just before the one that is deleted from the list.</p>
  
  <p>This can be done using the GO_RECORD(number) Built in Function(BIF) (assuming number is the saved value of :System.cursor_record).</p>
  
  <p>And this is where I run into a problem.  The GO_RECORD BIF will bring the record to the top or bottom of the displayed list of items.  This can cause the list to shift up 20 items without warning.</p>
  
  <p>i.e.
  For example Records 23 - 47 from the data_block are being displayed, and record 33 is selected.
  If record 33 is deleted and we use the function GO_RECORD(32), then the records diplayed will be 32-56 (effectively shifting the list down 9 records).</p>
  
  <p>I'm assuming that in order to avoid this shift I will need to have some way of detemining the position of the record in the display (as opposed to the data_block).</p>
  
  <p>Does anyone know if this functionality exists?</p>
  
  <p>Or does anyone have another approach that might get me the same result?</p>