2010-03-04 59 views
0

我無法處理單頁面子文件中的頁面向上選項....不知道如何返回到以前的rrn,以便可以顯示上一頁....在單個頁面子文件中處理頁面向上

+0

你能否提供一些更多的細節? – 2010-03-04 22:01:17

+0

實際上,我無法使用rrn,因此,當我按下頁面時,我可以檢索以前的記錄...我應該使用什麼邏輯來加載單頁面子文件中的以前的記錄... – 2010-03-05 04:11:40

+0

您的意思是數據的RRN你用來填充子文件或子文件記錄的RRN的文件? – 2010-03-12 14:51:30

回答

1

所需的邏輯是:

  • 檢查的輥軋關鍵
  • 的指標。如果這一指標是真的,那麼清除子文件
  • 你的文件指針必須去13行(無論什麼)回來。做到這一點與READB,SETLL,鏈條和recordnumber,還是其他什麼東西(這是由你)
  • 重建你的子文件

不要忘記重置您的子文件號碼!!!!!!!! !

對於小文件,一次構建完整的子文件並讓iSeries執行處理要容易得多。

1

最簡單的可能是在向前翻頁時使用FETCH NEXT FOR sflRows...,向後翻頁時使用FETCH RELATIVE previousSflRows FOR sflRows...。您將設置sflRows變量爲您在單個頁面上具有的子文件行數。並設置前面的FlRows爲該數字的兩倍,但將其設爲負數。

因此,在SFLPAG = 10的情況下,您可以一次向前10排FETCH。在第一頁之後,文件位置將在第11行。在第2頁之後,它將在21;並且在第3頁之後,在31處。

當時,如果用戶想要返回頁面,則prevSflRows值將導致FETCH讀取從(31-20)或文件位置11開始的行。這就是確切地說,這是第一次顯示子文件的第2頁。