我现在使用的是IBM的 Lotus Dimion 8.5

  以下内容是个人的浅显了解,在此记录下,已作为后续记录的翻看

  第一次接触文档型数据库,确实颠覆了我对数据模型的认知,我之前一直用sql的

  文档型数据库与关系型数据库的对比:

      文档型数据库       关系型数据库     

     数据库文件          数据库                 

     表单                   表

     文档               一条记录      

     域                     字段  

  Domion分为3大部分: 用一个模块的数据库举例

      1.表单 :表单分为主表单和子表单,一个主流程表单可能由多个子表单组成,主表单类似模板,里面存一些公用的信息,

子表单实现具体的功能,所以如果在主表单里面看到 <计算的值>  就是嵌套的子表单,在前端界面如果想找当前页面对应的数据库以及Form,

    可以右键看属性,看在哪个 Form里面,以此来定位问题   表单上的按钮是在一个通用的子表单里面,按钮的js事件大概都是在这个里面写的

       表单可以直接从视图里面取值: 域值的取值是:

      @DbLookup 返回表的一列中通过关键字匹配选定的值。

      name:=@DbLookup(class : "NoCache" ; "" : 数据库; "视图";关键字;视图的第几列);
      @If(@IsError(name);"";name)

    

  

        2。代理(Agent):代理是表单和数据的一个中间处理环节,表单里面可以直接调用代理,调用方法有在页面加载时 主表单的WebQueryOpen

    输入执行代理 @Command([ToolsRunMacro]; "代理名称");  还有一种就是通过js 调用 代码如下:     

var xmlhttp;
function GetInfo(){
var thisFrm = document.forms[0];
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); xmlhttp.onreadystatechange = SetInfo;
//调用代理的方式:
xmlhttp.open("Post", "/oadata/数据库名.nsf/代理名?openagent", true);
xmlhttp.send(); } function SetInfo(){
var thisFrm = document.forms[0];
if(xmlhttp.readyState == 4 && xmlhttp.status == 200){
var xmlDoc = xmlhttp.responseXML.documentElement;
alert(xmlDoc.xml);
}
}

  代理的类型有多种:常用的LotusScript 、公式、简单操作、java、引入的java(因为接触的LotusScript较多,所以就说或LotusScript)

       LotusScript 是纯vb的语法,(相当于类)Initialize 初始化加载方法  ,可直接调用Script下面的LotusScript   (需要引用:Use "类名")

Script下面可写通用的类方法, 在当前操作的数据库里面可以直接得到当前操作的表单的数据   (以下代码列示)   

        Dim session As NotesSession
Set session = New NotesSession
Dim doc As NotesDocument
Set doc = session.DocumentContext
Dim db As NotesDatabase
Set db = session.CurrentDatabase
Dim depdb As NotesDatabase
Dim personview As NotesView
Dim persondoc As notesdocument 'doc 就得到了当前操作的文档的所有域的内容 'doc.域的名称得到值 '如果是想得到其它数据库里面的数据
’先连接上数据库
Set depdb=session.Getdatabase(db.Server, "oadata\AIS_Org.nsf")
'根据数据库查询它的视图
Set personview=depdb.getview("视图名")
’根据源文档的信息从当前视图里面查询 注意:以上视图名的第一列一定是这个Key列才能查询到
Set persondoc=personview.Getdocumentbykey(“Key”, True) '然后就可以对persondoc.列名 得到想要的值

  3.视图(View)

    Domion  OA的数据查询都是根据视图作为查询的数据源,视图里面可以定义改数据内容 :

SELECT form="mainform"  & sys_SuperUserdeal != "1" & sys_SoftDelete != "1"

      mainform 表名  是该数据库里面所有表单的记录  ! & 后面跟的是条件,类似与where 后面的列条件 以上就可以定义一个视图,

      视图里面有此表单里面的所有域的值(相当于是物理表里面的列)

 以上作为一个初学者还可以看看,希望有大牛可以知道纠错!

Domion OA 日记的更多相关文章

  1. 小白日记14:kali渗透测试--NMAP

    NAMP 被认为是最强大的扫描器 所有参数 root@kali:~# nmap Nmap 7.01 ( https://nmap.org ) Usage: nmap [Scan Type(s)] [O ...

  2. OA|开放获取期刊|掠夺性期刊|DOI|ORCID|图书馆服务|零次文献|信息素质|

    OA|开放获取期刊|掠夺性期刊|DOI|ORCID|图书馆服务|零次文献| 信息检索 信息素质是什么? 信息素质是指一个人的信息需求.信息意识.信息知识.信息道德.信息能力方面的基本素质. Some ...

  3. 标准产品+定制开发:专注打造企业OA、智慧政务云平台——山东森普软件,交付率最高的技术型软件公司

    一.公司简介山东森普信息技术有限公司(以下简称森普软件)是一家专门致力于移动互联网产品.企业管理软件定制开发的技术型企业.公司总部设在全国五大软件园之一的济南齐鲁软件园.森普SimPro是由Simpl ...

  4. 微信小程序开发日记——高仿知乎日报(下)

    本人对知乎日报是情有独钟,看我的博客和github就知道了,写了几个不同技术类型的知乎日报APP 要做微信小程序首先要对html,css,js有一定的基础,还有对微信小程序的API也要非常熟悉 我将该 ...

  5. 微信小程序开发日记——高仿知乎日报(中)

    本人对知乎日报是情有独钟,看我的博客和github就知道了,写了几个不同技术类型的知乎日报APP要做微信小程序首先要对html,css,js有一定的基础,还有对微信小程序的API也要非常熟悉 我将该教 ...

  6. 微信小程序开发日记——高仿知乎日报(上)

    本人对知乎日报是情有独钟,看我的博客和github就知道了,写了几个不同技术类型的知乎日报APP 要做微信小程序首先要对html,css,js有一定的基础,还有对微信小程序的API也要非常熟悉 我将该 ...

  7. 港真,到底应该选择OA还是BPM?

    越来越多企业意识到流程管理的重要性,但是,选择OA还是BPM,却让他们产生了选择困难症. 一方面,企业皆注重流程的高效运转,最好内外部的业务都能用一个系统来解决.所有流程一天就能上线什么的,那就更好啦 ...

  8. Linux学习日记-使用EF6 Code First(四)

    一.在linux上使用EF 开发环境 VS2013+mono 3.10.0 +EF 6.1.0 先检测一下EF是不是6的 如果不是  请参阅 Linux学习日记-EF6的安装升级(三) 由于我的数据库 ...

  9. 从零到有——我的OA如何成长

    早前发文说要分享,马上进入了财务系统的开发,拖到现在,见笑了. 我在月初离职了,所以到处跑,找工作,想想南京.苏州.无锡(去玩的).杭州(路过).上海.珠海.深圳.广州.觉得找工作也差不多尾声了,就留 ...

随机推荐

  1. Environment中针对的读写权限判断

    Android应用开发中,常使用Environment类去获取外部存储目录,在访问外部存储之前一定要先判断外部存储是否已经是可使用(已挂载&可使用)状态,并且需要在AndroidManifes ...

  2. 关于Win7 64位 mysql 5.7下载安装问题

    1.从官网下载mysql: 网址:http://dev.mysql.com/downloads/mysql/ 这是我们要找的,win7 64位 点击下载: 出现如图所示,我们不必要登录注册,点击红线内 ...

  3. ectouch第三讲之加载调用机制

    加载与调用机制:         当地址栏键入/mobile,就会加载入口文件index.php:从入口文件里面会调用EcTouch.php公共入口文件,当进入公共入口文件,会定义一些变量,然后加载公 ...

  4. PostgreSQL中如何查看一个表所对应的文件

    通过pg_relation_filepath可以直接表(索引)对象对应的物理文件在哪里? 上面截图是“德哥”做的ppt:上面有详细解释! 当然也可以通过 系统表 pg_class 可以直接查出对应的物 ...

  5. ACM题目————还是畅通工程

    Submit Status Description 某省调查乡村交通状况,得到的统计表中列出了任意两村庄间的距离.省政府“畅通工程”的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路 ...

  6. java程序 输入10个数字并求和

    课程作业: 模仿JavaAppArguments.java示例,编写编写一个程序,此程序从命令行接受多个数字,求和之后输出结果. 设计思想: 先从命令行读出数字,然后计算各个数字之和.求出结果. 流程 ...

  7. html里文本保留换行格式

    用<pre></pre>把文本包起来

  8. Python模块学习

    6. Modules If you quit from the Python interpreter and enter it again, the definitions you have made ...

  9. Uniform Generator 分类: HDU 2015-06-19 23:26 11人阅读 评论(0) 收藏

    Uniform Generator Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) T ...

  10. CentOS 修改线程数限制等(limits.conf)

    修改/etc/security/limits.conf,例如启动程序的用户为webadmin,则添加以下配置: webadmin - nofile 65536 webadmin - nproc 655 ...