Domion OA 日记
我现在使用的是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 日记的更多相关文章
- 小白日记14:kali渗透测试--NMAP
NAMP 被认为是最强大的扫描器 所有参数 root@kali:~# nmap Nmap 7.01 ( https://nmap.org ) Usage: nmap [Scan Type(s)] [O ...
- OA|开放获取期刊|掠夺性期刊|DOI|ORCID|图书馆服务|零次文献|信息素质|
OA|开放获取期刊|掠夺性期刊|DOI|ORCID|图书馆服务|零次文献| 信息检索 信息素质是什么? 信息素质是指一个人的信息需求.信息意识.信息知识.信息道德.信息能力方面的基本素质. Some ...
- 标准产品+定制开发:专注打造企业OA、智慧政务云平台——山东森普软件,交付率最高的技术型软件公司
一.公司简介山东森普信息技术有限公司(以下简称森普软件)是一家专门致力于移动互联网产品.企业管理软件定制开发的技术型企业.公司总部设在全国五大软件园之一的济南齐鲁软件园.森普SimPro是由Simpl ...
- 微信小程序开发日记——高仿知乎日报(下)
本人对知乎日报是情有独钟,看我的博客和github就知道了,写了几个不同技术类型的知乎日报APP 要做微信小程序首先要对html,css,js有一定的基础,还有对微信小程序的API也要非常熟悉 我将该 ...
- 微信小程序开发日记——高仿知乎日报(中)
本人对知乎日报是情有独钟,看我的博客和github就知道了,写了几个不同技术类型的知乎日报APP要做微信小程序首先要对html,css,js有一定的基础,还有对微信小程序的API也要非常熟悉 我将该教 ...
- 微信小程序开发日记——高仿知乎日报(上)
本人对知乎日报是情有独钟,看我的博客和github就知道了,写了几个不同技术类型的知乎日报APP 要做微信小程序首先要对html,css,js有一定的基础,还有对微信小程序的API也要非常熟悉 我将该 ...
- 港真,到底应该选择OA还是BPM?
越来越多企业意识到流程管理的重要性,但是,选择OA还是BPM,却让他们产生了选择困难症. 一方面,企业皆注重流程的高效运转,最好内外部的业务都能用一个系统来解决.所有流程一天就能上线什么的,那就更好啦 ...
- Linux学习日记-使用EF6 Code First(四)
一.在linux上使用EF 开发环境 VS2013+mono 3.10.0 +EF 6.1.0 先检测一下EF是不是6的 如果不是 请参阅 Linux学习日记-EF6的安装升级(三) 由于我的数据库 ...
- 从零到有——我的OA如何成长
早前发文说要分享,马上进入了财务系统的开发,拖到现在,见笑了. 我在月初离职了,所以到处跑,找工作,想想南京.苏州.无锡(去玩的).杭州(路过).上海.珠海.深圳.广州.觉得找工作也差不多尾声了,就留 ...
随机推荐
- linux内核栈用户栈切换【转】
转自:http://www.kerneltravel.net/kernel-book/%E7%AC%AC%E5%9B%9B%E7%AB%A0%20%E8%BF%9B%E7%A8%8B%E6%8F%8F ...
- 使用Jconsole监控weblogic的配置方法
在项目中发现full gc非常频繁.达到了每分钟13次.我怀疑可能会有内存泄露.于是在晚上找了内存泄露的资料. 内存长期占用并导致系统不稳定一般有两种可能: 1. 对象被大量创建而且被缓存,在旧的对象 ...
- 【Pro ASP.NET MVC 3 Framework】.学习笔记.7.SportsStore:购物车
3 创建购物车 每个商品旁边都要显示Add to cart按钮.点击按钮后,会显示客户已经选中的商品的摘要,包括总金额.在购物车里,用户可以点击继续购物按钮返回product目录.也可以点击Check ...
- centos7.1-64bit安装qtcreator
首先,启用 EPEL Repository: yum -y install epel-release 启用 EPEL Repository 後, 可以用 yum 直接安裝qtcreator: yum ...
- jstl和jsp脚本变量相互访问
1.jsp脚本访问jstl标准动作的变量,可以通过隐式的范围变量来获取,对于页面作用域的变量,可以通过pageContext.getAttribute()来获取,也可以通过动作来获取: <c:s ...
- HDU 3887:Counting Offspring(DFS序+树状数组)
http://acm.hdu.edu.cn/showproblem.php?pid=3887 题意:给出一个有根树,问对于每一个节点它的子树中有多少个节点的值是小于它的. 思路:这题和那道苹果树是一样 ...
- greenplum集群安装
一.环境配置 1.地址分配 192.168.1.201 mdw master 192.168.1.202 sdw1 segment1 192.168.1.203 sdw2 segment2 2.创建用 ...
- rtc关机闹钟6 AlarmManagerService研究
这个是 private void setLocked(int type, long when) { if (mNativeData != 0) { // The kernel n ...
- 【转】cvs2svn 把CVS档案库转换为SVN档案库
转载地址:http://jackdown.blog.sohu.com/66646130.html 在linux下的操作 1).安装 下载:Python 2.0 地址:http://www.pyth ...
- 使用Texture2D创建Cubemap
网上有很多,但大多使用Camera.RenderToCubemap接口,不能满足需求. 写了段代码可以载入Texture2D生成Cubemap(在Editor下运行): /// <summary ...