网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 论文素材 设计下载 最新论文 下载排行 论文上传 在线投稿 联系我们
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > VC++ > 正文
用Visual C++增强Notes打印功能
来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/15
下载{$ArticleTitle}原创论文样式

Lotus公司推出的Lotus Domino/Notes作为办公自动化系统的平台近年来在国内得到了广泛的应用,许多的政府主管部门、金融单位、企事业单位都使用了Notes以及在Notes上开发的各种办公系统,工作效率得到了极大的提高。

  在实际的应用中,为了存档以及供没安装Notes系统的部门传阅,许多在Notes系统中流转的电子文档需要打印出来。不幸的是,Notes提供的打印功能很弱,一个文档只能按照给定表单的版式进行打印。但在实际的使用中,如政府部门,内容相同的一个文档,其上行公文和下行公文的版式是不一样的,这就需要将同一文档用多种样式打印。最直接的想法当然是在Designer中修改表单的版式,但由于应用系统一般是隐藏设计的,表单无法修改。还有就是最终用户的计算机水平有限,直接修改表单从技术上讲也行不通。

  这时一个可行的做法就是:用VC++给用户提供一个"所见即所得"的编辑界面,并列出Notes文档中各部分的内容,让用户以拖放的方式将相关内容放到适当的位置上,同时还可以加入文字、图片等修饰内容,然后按照最终的版式在Notes外部直接生成一个Notes表单,并用此表单进行打印。这种方法既绕过了隐藏设计的障碍,又降低了对最终用户的技术要求。当然这一切都得益于Notes提供的API函数。

  由于只需一个NSFItemScan函数就能收集到Notes文档中所有的域,而又有多种灵活的方式实现"所见即所得"的排版功能,因此在提出上述的思路后,本文将主要介绍如何构造Notes表单。
  一 Notes表单结构简介

  一个表单中有三个必需的域:$TITLE、$INFO和$BODY,辅助性的还有$FIELDS域及属性为placeholder的各域。

  1.$TITLE域

  $TITLE域的类型为TYPE_TEXT,其中保存表单的名称,Notes客户端窗口中"创建"菜单下列出的各表单名即为各表单note中$TITLE域的值。在Notes提供的C API头文件"stdnames.h"中有预定义的常量ITEM_NAME_TEMPLATE_NAME代表表单note的名称域,为保证程序的向后兼容,建议使用常量而避免直接使用$TITLE。

  2.$INFO域

  由于表单和文档的创建有关,$INFO域定义了通过此表单创建的文档的一些属性。实际上$INFO域中存储的是一个名为CDDOCUMENT的结构体,对生成文档属性的设定就是通过对该结构体中各分量的不同赋值实现的。结构体CDDOCUMENT 的定义及说明见Lotus C API 的参考文档。

  $INFO域的类型为TYPE_COMPOSITE,对应的预定义常量为ITEM_NAME_DOCUMENT。

  3. $BODY域

  $BODY域是表单note中的核心域,整个表单显示和打印时的格式,还有通过此表单生成的文档所包含的域及其类型,都是在本域中定义的。由于$BODY域的结构非常复杂,本文将在第二部分专门介绍。$BODY域也是TYPE_COMPOSITE类型的,名称预定义常量为ITEM_NAME_TEMPLATE。

  4. $FIELDS域

  $FIELDS域是一个TYPE_TEXT_LIST类型的域,其中包含了用此表单生成的文档包含的所有域。但专为打印生成的表单中可以没有此域。

  5. "placeholder"域

  对$BODY域中定义的将来文档中要含有的每一个域,在表单中都对应一个类型为TYPE_INVALID_OR_UNKNOWN而标志为ITEM_PLACEHOLDER的域,域名和$BODY域中定义的一样,而其值为NULL。
标志为ITEM_PLACEHOLDER的域将被加入到"域名表"中,这样当用户选择了客户端中的"设计"菜单中的"视图"子菜单后,在弹出的对话框中选择"添加域"时,该域名才会被显示出来。
同样,这些域在打印的表单中不是必需的。

二 $BODY域详解

  $BODY域中可以包含各种Notes对象,如文本、域、图像、热点、链接等,还有一些辅助性对象,如段定义、段引用等。为方便管理,所有这些对象的定义都是通过不同的结构
  • 上一篇资讯: 自动过滤选择的组合框
  • 网学推荐

    免费论文

    原创论文

    浏览:
    设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
    版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
    湘ICP备09003080号