domino创建展示数据库设计的视图

【背景】

        一项目200多个数据库的同一个脚本库要要做优化,这个脚本库的代码都一样,但是一个个拷贝脚本库无疑工作量相当大。作为一个技术人员,无疑会想如果能批量替换设计就好了,可是在网上很难找到操作数据库设计的例子,特别是domino是linux平台更是少之又少。

       我记得之前呆过的一家公司,产品视图可以展示数据库设计,既然能展示数据库设计文档,那就相当于一个普通文档进行操作,这条道走不下去,可以换一条啊o(^▽^)o。下面详述创建展示数据库设计文档的视图过程。

 【视图展示效果】

domino创建展示数据库设计的视图_第1张图片

【实现步骤】

1、修改视图设计文档的"$FormulaClass"值为524,代码如下:

Sub Click(Source As Button)
	Dim ss As New NotesSession
	Dim ws As New NotesUIWorkspace
	Dim db As NotesDatabase
	Dim view As NotesView
	Dim designViewNote As NotesDocument
	
	Set db = ss.CurrentDatabase
	Set view = ws.CurrentView.View
	Set designViewNote = db.GetDocumentByUNID(view.UniversalId)
	
	designViewNote.replaceItemValue "$FormulaClass", Cstr(524)
	designViewNote.save True, True
End Sub

2、视图搜索条件:SELECT @IsAvailable($Title) & @IsAvailable($Flags)

3、视图类型列代码:

@If(@Contains($Flags;"FY");"Folder";$Flags="^Y";"shareColumn";@Contains($Flags;"Y");"View";@Contains($Flags;"CUAx3");"SubForm";@Contains($Flags;"t34Q");"ScriptLibDatabase";@Contains($Flags;"sj34Q");"ScriptLibJava";@Contains($Flags;"h534Q");"ScriptLibJS";@Contains($Flags;".5834Q");"ScriptLibJSS";@Contains($Flags;"s34Q");"ScriptLibrayLS";@Contains($Flags;"#34CQ");"Frameset";@Contains($Flags;"C34WQ");"Page";@Contains($Flags;"m");"Outline";$Title="$ACTIONS";"ShareAction";@Contains($Flags;"34567Cg~[");"java";@Contains($Flags;"34567Cg~,");"jar";@Contains($Flags;"gC~4K");"xpage";@Contains($Flags;"gC~4;");"customControl";@Contains($Flags;"34C=Q");"css";@Contains($Flags;"345CgQ");"files";@Contains($Flags;"f");"Agent";@Contains($Flags;"{456");"webservice";@Contains($Flags;"~C4g");"eclipse";@Contains($Flags;"34CiQ");"Image";"Form")

4、视图标题列代码:

title:=@Subset($Title;-1);
@If(@Contains(title;"|");@Right(title;"|");title)


至此,视图修改完成即可显示数据库设计文档了。另外,如果做做批量替换还是做好备份,数据库没几个就不要用这个方法了。

附上数据库下载地址: domino展示数据库设计文档视图的样例

你可能感兴趣的:(domino创建展示数据库设计的视图)