我现在使用的是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. Web前端开发工程师面试题

    Web前端开发工程师面试题1.说说css的优先级?2.在移动端中,常常使用tap作为点击事件,好处是?会带来什么问题?3.原生JS的window,onload与Jquery的$(document).r ...

  2. [转]如何:在设备上安装 SQL Server Compact 3.5

    将设备连接到计算机,或者将仿真程序插入底座. 有关更多信息,请参见如何:将设备仿真程序插入底座和移除底座. 说明: 计算机上必须已安装了 Windows Mobile Device Center 或 ...

  3. 文本框textarea实时提示还可以输入多少文字

    <!DOCTYPE HTML><html><head><meta http-equiv="Content-Type" content=&q ...

  4. 【PHP设计模式 02_JieKou.php】面向接口开发

    <?php /** * [面向接口开发] * */ header("Content-type: text/html; charset=utf-8"); /*共同接口--连接数 ...

  5. iOS开发- 蓝牙后台接收数据(BLE4.0)

    最近在做一个蓝牙相关的项目, 需要在应用进入后台, 或者手机属于锁屏状态的情况下, 仍然保持蓝牙连接, 并且能正常接收数据. 本来以后会很麻烦, 但是学习了下..发现就2步而已.简单的不能再简单了. ...

  6. cocospod 安装和使用

    一 ruby 安装 要安装coocspod 首先需要安装ruby,可以先安装xcode,在安装macport 下载地址,最后执行命令 port install ruby 二.安装CocoaPods 1 ...

  7. PHP正则表达式之定界符和原子介绍

    1,正则表达式的定界符. 除了字母.数字和反斜线\以外的任何字符都可以为定界符号,比如 | |.//.{}.!!等等,但是需要注意,如果没有特殊需要,我们都使用正斜线//作为正则表达式的定界符号. 2 ...

  8. Win7家庭版包“已停止工作”

    在VS2010上依据接口,写了个WiFi共享软件,在Win7旗舰班上正确无误,而在却在Win7家庭版上运行不了,报“已停止工作”错误. 解决方法: 1.下载安装vs2010对应的.Net平台:Micr ...

  9. C#:实现托盘

    1.向窗体上添加如下控件:MenuStrip menuStrip1, NotifyIcon ni_frmMain,Timer timer1, ContentMenuStrip cms_notify.其 ...

  10. Android关机闹钟实现

    Android关机闹钟实现 时间转换网站:http://tool.chinaz.com/Tools/unixtime.aspx 1.apk层 这个还是比较简单的,百度一下就可以看到apk的代码,我之前 ...