2012-09-10 54 views
0

我正在嘗試使用Progress-4gl中的瀏覽器來運行控制鍵,以顯示瀏覽中選定行的數量以及所有行的臨時表的總數所選的行。我已經能夠輕鬆地獲得總行數,但是當試圖從我創建的臨時表中獲取總數時,它只有最後一個選定的行值。如何從選定的行中爲每個運行一個? 下面是一些代碼我對瀏覽:從瀏覽器中獲取所選行

on CTRL-L of browse-1 in frame a do: 
    assign buf-cnt = 0. 
    /*** FOR EACH BROWSE RECORD SELECTED **/ 
     assign jqty = jqty + int(tt.tt-qty). 
    assign jlines = browse-1:num-selected-rows. 
    display 
     jlineslabel "Selected Number Of Lines" 
     jqtylabel "Quantity Of All Lines" 
     with frame fselect down row 5 centered overlay. 
    pause. 
end. /* on CTRL-L */ 

回答

0

如果我沒有理解這個問題正常,你可能需要一個與瀏覽相關的查詢手柄的NUM-結果屬性 - 這將是瀏覽-1:查詢。所以:

jqty = browse-1:query:num-results. 
+0

對不起,我應該更具體一點。在瀏覽中,我需要累計從瀏覽中選擇的項目的總數量(來自臨時表格列),而不僅僅是總的列數。提前致謝。 –

+0

謝謝......我想通了,我也實現了更多功能的答案。我必須添加: do x = 1 to browse-1:num-selected-rows: stat = browse-1:fetch-selected-row(x)。 /** FOR EACH STATEMENT **/ 結束。/* do */ 感謝您的幫助@Tom Bascom –

0

任何人知道...

on CTRL-L of browse-1 in frame a do: 
assign buf-cnt = 0 
     jqty = 0. 
do x = 1 to browse-1:num-selected-rows: 
    stat = browse-1:fetch-selected-row(x). 
    for each usrw_wkfl no-lock where 
      usrw_wkfl.usrw_key1 = "862" and 
      entry(1,usrw_wkfl.usrw_key2) = tt.tt-part and 
      usrw_wkfl.usrw_key4 = tt.tt-dest and 
      usrw_wkfl.usrw_key3 = tt.tt-duedate and 
      usrw_wkfl.usrw_charfld[3] = tt.tt-qty: 
     assign jqty = jqty + int(tt.tt-qty). 
    end. /* for each usrw_wkfl */ 
end. /* do x = 1 to browse-1 */ 
assign jlines = browse-1:num-selected-rows 
     jtotal = browse-1:query:num-results. 
display 
     jlines   column-label "Selected Number!Of Lines" 
     jtotal   column-label "Total Number!Of Lines" 
     jqty   column-label "Quantity Of!All Lines" 
     with frame fselect down row 5 centered overlay. 
pause. 

結束。/* CTRL-L */