В одной базе у меня хранятся сведения о пользователях. Из другой базы мне нужно было их вытягивать для текущего пользователя и отображать на странице. Покопавшись в справке, сделал это так:
<!--shcode--><pre><code class='Javascript'>var db:NotesDatabase = null;
var dbdoc:NotesDocumentCollection = null;
var curdoc:NotesDocument = null;
var vl:string = null;
db = sessionAsSigner.getDatabase(session.getServerName(),"docl.nsf",false);
if (db == null)
{
return "";
}
else
{
dbdoc = db.getAllDocuments();
if (dbdoc == null)
{
return "";
}
curdoc = dbdoc.getFirstDocument();
while(curdoc != null)
{
if (curdoc.getItemValue("idname").toString() != null || curdoc.getItemValue("idname").toString() != "")
{
vl = getComponent("djTextarea1").getValue();
getComponent("djTextarea1").setValue(vl + curdoc.getItemValue("idname").toString());
}
curdoc = dbdoc.getNextDocument();
}
}[/CODE]
А если значение поля idname известно, то можно не получать всю коллекцию:
<!--shcode--><pre><code class='Javascript'>var db:NotesDatabase = null;
var dbdoc:NotesDocumentCollection = null;
var curdoc:NotesDocument = null;
var formula:string = null;
db = sessionAsSigner.getDatabase(session.getServerName(),"docl.nsf",false);
if (db == null)
{
return "";
}
else
{
formula = "idname=\"" + session.getCommonUserName() + "\"";
dbdoc = db.search(formula);
if (dbdoc == null)
{
return "";
}
curdoc = dbdoc.getFirstDocument();
getComponent("djTextarea1").setValue(curdoc.getItemValue("idname").toString());
}[/CODE]