이 코드로 문서를로드하는 데 문제가 있습니다.DynamicControl을 외부 데이터베이스의 데이터 소스와 함께 사용
var c = getComponent("dynp")
c.show("contact",{action:'editDocument',documentId:unid})
실제로는 단지 성가신 문제입니다.
내 var unid
은 다른 데이터베이스의 문서를 가리키고 있지만 c.show
은 해당 문서가 DynamicContent 코드와 동일한 데이터베이스에 있어야합니다. 는 I 그러므로 오류마다 호출 얻는 c.show("contact",{action:'editDocument',documentId:unid})
dynp 에러 mydynamic.xsp 예외 호출 방법 NotesDatabase.getDocumentByUNID (java.lang.String의)에 발생한 오류
맞춤형 컨트롤 데이터 소스는
<xp:dominoDocument formName="myForm" var="doc1" databaseName="#{javascript:getExternaldb()}" />
따라서 문서가 올바르게로드됩니다. 하지만 여전히 성가신 오류가 발생합니다 (관리자는 만족스럽지 않습니다)
이 오류를 방지하는 방법이 있습니까?
나는'ignoreRequestParams = "true/false"'를 시도하고 문서가 잘로드된다. 사용자 정의 컨트롤을 열기 전에 오류가 발생합니다. d.show 명령은 데이터 소스를 알기 전에 getDocumentByUNID를 사용한다고 생각합니다. 그러나'd.show'에서 매개 변수로 데이터베이스 이름을 전달할 수 있다면 괜찮을 것입니다. 하지만 지금 구문은 없습니까? –
다른 매개 변수의 구문은 속성 이름과 일치하는 것으로 보입니다. 따라서'databaseName = "# {javascript : getExternaldb()}"가 작동 할 것입니다 (CSJS 내에서 SSJS를 사용할 수 있으며 CSJS 브라우저로 전달되는 –
내가 올바른 구문을 'var에 DB를 발견했다. NotesDatabase = getExternalDb(); var에는 dbserver = db.getServer() VAR dbfilepath = @ReplaceSubstring (db.getFilePath(), "\\ ","/ "); VAR의 DBNAME = +는 dbserver"! "dbfilepath +]. VAR UNID viewentries.getDocument =() getUniversalID(); VAR의 D = getComponent ("dynC "); d.show ("contact", action : 'editDocument', databaseName : dbname, documentId : unid})};' –