内务 打印订单 窗口 - DigitalPlatform/dp2 GitHub Wiki
本文介绍内务的打印装订单窗口的使用和配置技巧。
- 分类号表 模板 需要在“打印订单选项”的模板定义中创建一个名为“分类号表”的模板。
内容示例如下:
A
B
C
T
!TP
每行定义一个分类号。所定义的分类号会出现在最终的表格中。 若某行第一个字符为 '!',表示此分类号不参与合计。例子中,T 已经进行了合计,就不要对 TP 再进行合计了,否则合计数会偏大。
- MARC过滤器 模板
需要在“打印订单选项”的模板定义中创建一个名为“MARC过滤器”的模板。这个模板用于定义如何抽取 MARC 记录中的分类号和出版社信息。
如果此模板缺省,软件会自动从内务的数据目录中寻找一个名为 default_getclass.fltx 的配置文件,这是内务安装时候自动创建的一个配置文件,它负责定义中图法的类号抽取规则。也就是说,如果是对中图法进行分类统计,“MARC过滤器”模板可以缺省。
典型的 MARC过滤器模板内容如下:
<?xml version="1.0" encoding="utf-8" ?>
<filter>
<using>
<![CDATA[
using System;
using System.IO;
using System.Text;
using System.Web;
using DigitalPlatform.MarcDom;
using dp2Circulation;
]]>
</using>
<ref>system.dll</ref>
<ref>system.web.dll</ref>
<ref>system.windows.forms.dll</ref>
<def>
<![CDATA[
string strClass = "";
string strPublisher = "";
]]>
</def>
<!-- UNIMARC 格式过滤规则 -->
<record syntax="unimarc">
<!-- 690 中图法分类号 -->
<field name="690">
<subfield name="a">
if (string.IsNullOrEmpty(Root.strClass) == true)
Root.strClass = this.Content;
</subfield>
</field>
<!-- 210 出版社 -->
<field name="210">
<subfield name="a">
if (string.IsNullOrEmpty(Root.strPublisher) == false)
Root.strPublisher += "; ";
Root.strPublisher += this.Content;
</subfield>
<subfield name="c">
Root.strPublisher += ":" + this.Content;
</subfield>
</field>
</record>
<!-- USMARC 格式过滤规则 -->
<record syntax="usmarc">
<!-- 093 中图法分类号 -->
<field name="093">
<subfield name="a">
if (string.IsNullOrEmpty(Root.strClass) == true)
Root.strClass = this.Content;
</subfield>
</field>
<!-- 260 出版社 -->
<field name="260">
<subfield name="a">
if (string.IsNullOrEmpty(Root.strPublisher) == false)
Root.strPublisher += "; ";
Root.strPublisher += this.Content;
</subfield>
<subfield name="b">
Root.strPublisher += this.Content.Replace(",","").Trim();
</subfield>
</field>
<end>
<![CDATA[
]]>
</end>
</record>
<end>
<![CDATA[
Host.ColumnTable["biblioclass"] = strClass;
Host.ColumnTable["bibliopublisher"] = strPublisher;
]]>
</end>
</filter>
- 分类统计页 和 分类统计页(含验收) 模板
“打印订单选项”的模板定义中, “分类统计页”和“分类统计页(含验收)”模板用于定义分类统计页的格式。如果是包含验收信息(“装载”属性页的“验收情况”checkbox勾选),则用后者。
注:按住 Ctrl 打开打印订单窗,“装载”属性页的“验收情况”checkbox才可用,否则这个 checkbox 是 Disabled 的状态。
此模板可以缺省,如果缺省,软件会自动用内务数据目录中的文件 default_printorder_classstatis.template 或 default_printorder_classstatis_accept.template 替代。
典型的 default_printorder_classstatis.template 文件内容如下:
<html>
<head>
%link%
</head>
<body>
<div class='pageheader'>%date% %seller% 分类统计表 - 批次号或文件名: %batchno_or_recpathfilename%</div>
<div class='tabletitle'>%date% %seller% 分类统计表</div>
{table}
<div class='pagefooter'></div>
</body>
</html>
典型的 default_printorder_classstatis_accept.template 文件内容如下:
<html>
<head>
%link%
</head>
<body>
<div class='pageheader'>%date% %seller% 分类统计表 - 批次号或文件名: %batchno_or_recpathfilename%</div>
<div class='tabletitle'>%date% %seller% 分类统计表</div>
{table}
<div class='pagefooter'></div>
</body>
</html>
- 出版社表 模板
需要在“打印订单选项”的模板定义中创建一个名为“出版社表”的模板。
内容示例如下:
北京:人民出版社
北京:人民教育出版社
每行定义一个出版社名称。所定义的出版社会出现在最终的表格中。 若出现 * 行,则表示任何出版社名称都会出现在最终的表格中。
- MARC过滤器 模板
需要在“打印订单选项”的模板定义中,模板定义中创建一个名为“MARC过滤器”的模板。这个模板用于定义如何抽取 MARC 记录中的分类号和出版社信息。
配置方法参见前面的“如何打印分类统计表”的“MARC过滤器模板”一节。“MARC过滤器”是分类统计表和出版社统计表共用的。
- 出版社统计页 和 出版社统计页(含验收) 模板
“打印订单选项”的模板定义中, “出版社统计页”和“出版社统计页(含验收)”模板用于定义出版社统计页的格式。如果是包含验收信息(“装载”属性页的“验收情况”checkbox勾选),则用后者。
注:按住 Ctrl 打开打印订单窗,“装载”属性页的“验收情况”checkbox才可用,否则这个 checkbox 是 Disabled 的状态。
此模板可以缺省,如果缺省,软件会自动用内务数据目录中的文件 default_printorder_publisherstatis.template 或 default_printorder_publisherstatis_accept.template 替代。
典型的 default_printorder_publisherstatis.template 文件内容如下:
<html>
<head>
%link%
</head>
<body>
<div class='pageheader'>%date% %seller% 出版社分类统计表 - 批次号或文件名: %batchno_or_recpathfilename%</div>
<div class='tabletitle'>%date% %seller% 出版社分类统计表</div>
{table}
<div class='pagefooter'></div>
</body>
</html>
典型的 default_printorder_publisherstatis_accept.template 文件内容如下:
<html>
<head>
%link%
</head>
<body>
<div class='pageheader'>%date% %seller% 出版社分类号统计表 - 批次号或文件名: %batchno_or_recpathfilename%</div>
<div class='tabletitle'>%date% %seller% 出版社分类号统计表</div>
{table}
<div class='pagefooter'></div>
</body>
</html>