0

我的要求是,我有数百个视图。我想让它们成为标准颜色和 UI。很简单,我用于通过 NotesViewColumn 类更改列标题和列值的字体颜色。但我不知道哪个类具有操作栏和查看备用颜色和 Heaer 样式等属性,

在 javascript 中也是受欢迎的。,但它应该改变其作为设计师级别的属性。

提前致谢

4

3 回答 3

2

您有 3 个选项:

  1. 最简单的一个:去 Ytria 购买ezView。应该花不到一个小时来整理您的观点
  2. 创建一个外观与您希望视图外观相同的视图,然后遍历脚本中的所有视图,重命名它们,根据您的视图模板创建一个新视图,并从旧视图复制视图列并调整视图选择公式(全部在 LotusScript 中)
  3. 在 DXL 中导出您的视图并运行一些 XSLT 或搜索/替换以调整属性

希望有帮助

于 2012-09-04T12:20:57.310 回答
2

我刚刚运行了这个代理,将我的(小)测试数据库中的所有视图更改为具有备用行颜色,并且它起作用了。

Sub Initialize
Dim session As New NotesSession
Dim db As NotesDatabase
Dim exporter As NotesDXLExporter
Dim importer As NotesDXLImporter

Dim out As String
Dim infile As string
Dim pointer As long
Dim filenum As Integer
Dim altrow As integer


Dim unid As String
Dim doc As notesdocument
Set db = session.currentdatabase
Set exporter = session.Createdxlexporter
Set importer = session.Createdxlimporter

Dim count As Integer
count = 1
ForAll v In db.views
    unid = v.UniversalID
    Set doc = db.getdocumentbyunid(unid)
    out =  exporter.Export(doc)
    altrow = instr(out, "altrowcolor")
    If altrow > 0 Then
        pointer = InStr(altrow, out, "=")
        out = Left(out,pointer) & "'#f7f7f7'" & Mid(out, pointer+10)
    else
        pointer = InStr(out, "bgcolor=")
        pointer = InStr(pointer, out, " ")
        out = Left(out,pointer) & "altrowcolor='#f7f7f7' " & Mid(out, pointer+1)
    End if
    Call importer.setinput(out)
    Call importer.setoutput(db)
    importer.Designimportoption = 5
    importer.Documentimportoption = 5
    Call importer.Process()
    out = ""
    infile = ""
    count = count + 1
End ForAll
Print count & " views processed"
End Sub

如果您的视图设计更大,您可能希望使用 NotesStream 而不是 String 来表示“out”。在这种情况下,从帮助文件中,我相信必须先关闭并重新打开流,然后才能将其用于导入。

为了进一步研究,我建议将“out”写入文件,并检查 xml 以查找其他“隐藏”参数。玩得开心,菲尔

于 2012-09-06T12:24:34.410 回答
1

我也可以推荐ezView。让修改视图变得轻而易举。我还使用 actionBarEZ 跨应用程序修改操作栏。我在博客中介绍了我在 Domino Designer 中使用的一些不同的开发工具,您可以在此处找到条目:http: //www.bleedyellow.com/blogs/texasswede/entry/mydevelopmenttools

于 2012-09-04T14:48:02.000 回答