2010-03-04 2 views
0

단일 페이지 하위 파일에서 페이지 위로 옵션을 처리 할 수 ​​없습니다 .... 이전 페이지가 표시 될 수 있도록 이전 rrn으로 돌아가는 방법을 모릅니다 ....단일 페이지 서브 파일에서 페이지 위로 처리

+0

더 자세히 설명해 주시겠습니까? –

+0

실제로 내가 페이지를 눌러 이전 레코드를 검색 할 수 있도록 rrn을 haldle 수 없습니다 ... 어떤 논리를 사용하여 단일 페이지 서브 파일에 이전 레코드를로드해야합니까 ... –

+0

데이터의 RRN을 의미합니까 파일을 사용하여 서브 파일 또는 서브 파일 레코드의 RRN을 채우십시오. –

답변

1

필요한 논리는 다음과 같습니다 그 표시가 사실이라면

  • 확인 rolldown 키
  • 의 표시등이, 다시 13 행 (무엇이든) 이동해야합니다 서브
  • 파일 포인터를 취소합니다. readb, setll, 체인 및 recordnumber, 또는 뭔가 다른 (즉 당신에게 달려있다) 것을
  • 이 서브 다시 마십시오

은 서브 파일 번호가 !!!!!!!! 재설정하는 것을 잊지 마세요 !!!

작은 파일의 경우, 전체 서브 파일을 한 번에 빌드하고 iSeries가 처리하도록하십시오.

1

앞으로 페이징 할 때 FETCH NEXT FOR sflRows...을 사용하고 페이징을 뒤로 할 때 FETCH RELATIVE previousSflRows FOR sflRows...을 사용하는 것이 가장 간단 할 수 있습니다. sflRows 변수를 단일 페이지에있는 서브 파일 행의 수로 설정합니다. 그리고 previousSflRows를 그 수의 2 배가되도록 설정합니다. 그러나 음수로 만듭니다.

그래서 SFLPAG = 10이면 한 번에 FETCH 개의 행을 사용할 수 있습니다. 첫 번째 페이지가 끝나면 파일 위치는 11 번째 줄에 표시됩니다. 2 페이지가 지나면 21에 있습니다. 페이지 3 이후 31 일.

그 시점에서 사용자가 페이지를 되돌리려는 경우 prevSflRows 값은 FETCH에서 (31-20) 또는 파일 위치 11에서 시작하는 행을 읽습니다. 정확히 서브 파일의 페이지 2가 처음 표시된 곳입니다.