issue with updateable browse

zee

New Member
I'm not very familiar with browses or queries, and am sure there's probably a basic problem I'm missing here. Hopefully one of you knowledgeable folks can point me in the right direction.

I took an example from Progress help, and modified for my use (removing the option to create a new record here).

Users are report problems occasionally and intermittently with a program similar to the below snippet of code. Sometimes (usually) it works as desired. Other times, the cursor sits and blinks in the lower right corner of the screen after displaying the browse, and the only option the user has is to F4 out. Exit and re-run, and it works.... most of the time.


10.1A. Character interface.

Code:
define temp-table det-line                    
       field dl_pod_nbr      like pod_nbr     
       field dl_pod_line     like pod_line    
       field dl_pod_due_date like pod_due_date
       field dl_pod_log01    like pod__log01                 
       index dl_pod_nbr is primary dl_pod_nbr ascending
       index dl-due-date dl_pod_due_date descending.


   def query q-det for det-line scrolling.

   def browse b-det query q-det     
       display      
         dl_pod_nbr 
         dl_pod_line

         dl_pod_log01       label "Update me"
       enable dl_pod_log01                      /* updateable field */
       with 15 down.

   form 
     b-det
     with frame f-det width 80.

/**** snip (fill temp-table) ****/

    ON ROW-LEAVE OF b-det IN FRAME f-det
    DO:

      if browse b-det:current-row-modified then do:

        /* Record is the same, so update it with exclusive-lock */
        ASSIGN INPUT BROWSE b-det dl_pod_log01.

        get current q-det no-lock.

        /*** snip (update related database records) ***/

      end.
    end. /* leave */


      open query q-det for each det-line.
      enable b-det with frame f-det.
      status input
         "blah blah blah".

      wait-for end-error of frame f-det.


Thanks for any input you can provide!!
 
Top