값이 현재 데이터베이스의 문서를 반복하는 반복이 있습니다.이 문서에는 데이터베이스와 뷰 이름이 있습니다. 반복은 데이터베이스와보기를 열고 그 안에에서 데이터를 검색 :이 모든 브라우저에서 잘 작동XPiNC에서 다른 데이터베이스의 뷰를 참조 할 수 없습니다.
var dbOther:NotesDatabase = session.getDatabase(null, doc.getItemValueString("Database"));
if(dbOther != null){
var lookupView:NotesView = dbOther.getView(doc.getItemValueString("ViewName"));
var viewNav:NotesViewNavigator = lookupView.createViewNavFromCategory(key);
}
하지만 나는 다음과 같은 오류가 Notes 클라이언트에서 xpage을 볼 경우 : 예외는 방법 NotesDatabase를 호출 발생했습니다. getView (string) null
Server 및 FilePath 속성을 로그에 기록하여 dbOther 변수가 설정되었는지 테스트했습니다. getViews 및 getAliases를 사용하여 루프를 생성하여 뷰를 볼 수 있는지 확인한 후 모든 뷰 별칭이 문제없이 로그에 기록되었습니다.
값을 문서에서 올바르게 선택하지 않았지만 동일한 오류가 발생하는 경우 수동으로보기 이름을 입력했습니다.
XPiNC의 다른 데이터베이스에있는보기에 연결할 수있는 방법이 있습니까? 나는 당신의 페이지에 뷰 데이터 소스를 동적으로 추가 할 수있게 해주는 XSnippet을 발견했다. 나는 이것이 내 문제를 해결할 수 있다고 생각하지만, 모든 것을 다시 쓰기 전에 대체 솔루션이 있는지 찾아야한다.
오랜만에이 문제에 대해 읽었습니다. http://xpages.info/XPagesHome.nsf/Entry.xsp?documentId=B21BE03574FE36AD852578CB0066B5AD. 기본적으로 저자는 데이터베이스를 호출하기 위해'@Name ("[CN]", @ Subset (@DbName(), 1)) + "!! dbname.nsf"구문을 사용했습니다. 이게 너에게 도움이 될지도 모른다. – Naveen
나는 원래 그 글을 썼다. 그것은 문제였습니다. 나는 그것이 이후 버전에서 수정되었다고 말했지만, 나는 그것을 실제로 확인하지 못했다. 더 이상 XPiNC를 많이 사용하지 않습니다. –
이 솔루션을 게시하기 전에 찾았지만 NotesDatabase 개체로 설정하는 방법을 잘 모르겠습니다. 데이터베이스를 검색했지만 getView를 사용하는 방법을 알지 못했습니다. –