2013-02-25 2 views
1

40,000 개가 넘는 문서가있는 데이터베이스가 있습니다. 매달 문서를 저장하는보기가 있으며 때때로 잘못된 그림이 표시됩니다. 이 뷰는 중반 밤에 실행되는 updall 함수에 의해 자동으로 다시 빌드되지 않습니다. 따라서 Shift + F9를 수동으로 수행하여 정확한 숫자를 표시합니다. 우리 사용자는이 문제에 대한 영구적 인 해결책을 요구했습니다. 이 기능을 수행하는 가장 좋은 방법을 제안 해 주시겠습니까?색인을 다시 작성하는 Lotus 스크립트

서버 콘솔에서 updall 명령을 전달할 스케줄 된 에이전트를 준비했으며 지금 테스트 할 수 없으므로 뷰를 다시 빌드 할 것인지 잘 모릅니다. 친절하게 도와주세요.

+4

내 생각 엔 당신이보기 선택 수식에서 날짜를 사용하고 누군가가보기 옵션을 수동으로 새로 고침하도록 설정했기 때문입니다. 이 IBM Technote를 참조하십시오. http://www-01.ibm.com/support/docview.wss?uid=swg27002624 제 제안은이보기를 완전히 없애고 스케줄 된 에이전트를 사용하여 폴더로 대체하는 것입니다. Docuemnt를 해당 달의 첫 번째 날 폴더로 이동하십시오. –

답변

3

보기를 다시 작성해야합니다. 프로그램 문서 또는 콘솔 명령에 다음을 사용하십시오.

load updall yourdb.nsf -T yourview -R 

"-R"은 "사용한 모든보기를 다시 작성합니다."를 의미합니다. 그래서 -T 옵션이 작동하지 않을 수 있습니다. 그러나 한 달에 한 번만 실행하면 모든보기를 다시 작성하는 것이 좋습니다 (심지어 좋은 일).

... 
    dim vw as notesView 
    Set vw = db.GetView("All") 
    Call vw.Refresh 
    ... 

이 UI에 표시되는 뷰를 업데이트 백엔드보기 인덱스를 새로 고침하지 않지만 예약 에이전트에서 예상대로 작동합니다 :

+2

+1 프로그램 문서의 경우 에이전트가 필요하지 않습니다. –

2

당신은 스크립트에서 하나의보기를 새로 고칠 수 있습니다.

+1

뷰는 인덱서 작업에 의해 자동으로 인덱싱됩니다. 여기에 필요한 색인을 다시 작성하지 않습니다. 여기의 사례는 리차드가 자신의 발언에서 설명하는 것과 같습니다. –

-1

사실 Updall을 행사하기 전에, 당신은 일반적으로 수행해야합니다

load fixup yourdb.nsf 

프로그램 문서는 좋은 방법입니다.

+1

픽스 업을 실행하는 데는 많은 시간이 걸릴 수 있으며, 예외적으로 실행하거나 심각한 오류가 의심되는 경우에만 실행해야합니다. 재 작성 또는 updall이 뷰를 가져 오면 픽스 업은 필요하지 않습니다. – andora