定制控件
- 新建定制控件(xcLayout)–扩展控件–应用程序布局–属性–应用程序布局–左列、中间列
- 新建XPage–添加扩展控件
-
条幅:
-
应用程序链接:添加项(容器结点)–添加子代(基本结点)
-
实用程序管理:
-
添加项(登陆注销结点)
-
基本结点–计算值(
context.getUser().getFullName();
)
-
-
-
标题栏:
- 计算数据库标题(database.getTitle();)
- 添加基本结点
-
搜索:
- 显示控件–页面名称(当前页)
- 必须有全局索引:
- 右击数据库–应用程序–属性–索引–创建索引–load updall(控制台刷新)
-
页脚:
- 加一些基本结点做快捷链接
-
法律信息:(COPYRIGHT © 2019 君风科技有限公司 ALL IGHTSRESERVED)
导航器
- 扩展控件–导航器
- 导航项–容器结点–所有属性–expandable(true)–容器结点可折叠
- 基本结点–href(byType.xsp)–这是当前库
添加视图 容器控件–视图–
-
视图–运行时打开方法(main)
-
数据(更换显示视图位置)
-
显示–标题–点击标题–…--页脚中显示分页器–缩进响应
-
视图列(日期)–数据–显示类型(日期时间)
-
视图列(标题)–显示–复选框/编辑/显示链接
过滤
- 按类型–选中视图–数据–按类别名称过滤(公告类型)
- –按列值过滤
- –在视图结果中搜索(不只过滤第一列)
视图–所有属性–数据
-
first(在第几条开始显示视图)
-
indexVar(indexV)–追加列–数据(计算值:
indexV
)
-
requestParamPrefix
- 新建XPage(mutipleView)–layout控件–中间加2*1表–添加视图(按标题)–添加视图(按时间)
- 按标题视图–所有属性–data–requestParamPrefix(subjet)
- 按时间视图–所有属性–data–requestParamPrefix(time)
- layout控件–搜索–参数名(subjectsearch)–页面名(mutipleView)
-
postOpenView
-
计算值
viewScope.count=view1.getAllEntries().getCount(); print(viewScope.count)
-
-
var(rowdata)–追加列–数据–计算值(
rowdata.getPosition
)
文档大小
- 视图添加列(简单功能文档大小)
- xpage–视图追加列–数据–试图列(文档大小)
只显示分类文档大小
-
再追加列–数据–计算值(
if(rowdata.isCategory()){ return rowdata.getColumnValue("$1") }
)
点击标题另起页面
-
页面–事件–onClientLoad–客户机(
dojo.query(’.xspLinkViewColumn’).attr(‘target’,’_blank’);
)
-
页面–事件–afterRestoreView(
view.postScript(“dojo.query(’.xspLinkViewColumn’).attr(;target),’_blank’”)
)
数据表格
-
XPage–添加控件–中间添加数据表格–选中数据表格–
-
数据表格–数据源–重复限制(15)–集合名称(rowdata)
-
添加标签(标题)–添加计算字段(数据源rowdata、绑定到标题)–添加标签(公告类型、发布人、发布日期)
-
添加按钮(编辑
context.redirectToPage(rowdata.getOpenPageURL(“main”, true))
)
-
添加按钮(删除
var doc:NotesDocument=rowdata.getDocument();
doc.remove(true);)
-
添加分页器(附加到dataTable1)
数据表格2
-
新建xpage–添加数据表格–重复限制12–集合名(rowDoc)–绑定数据方法(
database.getAllDocuments();
)
-
添加计算字段–绑定数据方法(标题/类型
rowDoc.getItemValueString(“subject”)
)
-
过滤搜索–数据表格–绑定数据方法(
var formula:string=“Form=“main” & type=“测试公告””;
var dc:NotesDocumentCollection = database.search(formula);
return dc;)
-
索引–添加(indexV)
重复、计算字段
- 新建xpage(repeat)–添加视图数据源–容器控件–添加重复viewEnty(绑定数据源view1)–核心控件–添加计算字段(绑定到viewEnty)
- 添加表格–把计算字段放到表格中
轮播图详见07
内容类型HTML
-
byTime–追加列(
var nd:NotesDocument=rowData.getDocument();
var mime = nd.getMIMEEntity(“content”);
if(mime!=null){
return mime.getContentAsText();
}else{
return nd.getItemValueString(“content”);
}
)–视图–显示–内容类型(HTML)
动态视图
-
新建定制控件(xcLeft)–添加表格(6*1)–添加链接(标签:按标题)–事件(
viewScope.viewName=“vwSubject”;
viewScope.xspName=“main.xsp”;
viewScope.readOnly=true;
)–部分更新–动态视图面板
-
新建xpage(dynamicView)–添加xcLayout–添加xcLeft–中间添加–E Library–动态视图面板–数据–视图–计算(
return viewScope.viewName==null ? “vwSubject”:“viewScope.viewName”
)
-
只读打开
-
动态视图–事件–onColumnClick(
context.redirectToPage(rowdata.getOpenPageURL(viewScope.xspName,viewScope.readOnly))
)–var(rowData)
-
数据视图
- 新建xpage(dataView)–添加xcLayout–添加xcNavigate–添加EL数据视图(按标题)
- –所有属性–格式
- –summaryColumn–columnName(subject)–Title(公告标题)
- –extraColumns–Name(type)–Title(公告类型)
- 改成类别视图–添加分类数据视图列-- 分页器-大小左边–分页器-添加行中间–分页器-展开折叠右边
属性定义
-
新建定制控件(xcBar)–新建属性(title、senderId(验证–必填字段)、message(可视false))–添加标签–名称计算(
compositeData.title
)–添加计算字段–值(
compositeData.message
)–添加编辑框(messageText )–添加按钮(sendMessage)onclick事件(
if(null !=compositeData.senderId){ var senderComponent = getComponent(compositeData.senderId); var senderProps = senderComponent.getPropertyMap(); if(null!=senderProps){ var messageText = getComponent("messageText"); if(null!=messageText){ var message = messageText.getValue(); senderProps.setProperty("message",message); //senderProps.getProperty("senderId"); //compositeData.message=null; } } }
)
-
新建xpage–添加xcBar*2–选中barOne–所有属性–senderId(barTwo)–title(bar one)–选中barTwo–所有属性–senderId(barOne)–title(bar two)