dp2 icon indicating copy to clipboard operation
dp2 copied to clipboard

内务前端书目查询窗 MarcQuery 脚本功能改进

Open DigitalPlatform opened this issue 8 months ago • 0 comments

为内务前端的书目查询窗的 MarcQuery 脚本功能增加了“自动保存修改”功能。

当用户利用 MarcQuery 脚本处理大量的书目记录时,以前是需要通过两步实现:

  1. 把需要处理的书目记录调入书目查询窗的浏览列表中,然后启动 MarcQuery 脚本执行;
  2. 脚本执行完成后,再选择并保存修改过的全部内存记录到数据库。

其中执行 MarcQuery 脚本和保存修改是分步执行的,用户很希望可以一次连续执行这两步操作。

改进后,原有“执行 MarcQuery 脚本”对话框增加了一个 checkbox “自动保存修改”。当勾选了这个 checkbox 以后,会自动出现以下几个 checkbox:

  • 强制保存
  • 不产生 operation 元素
  • 不产生操作日志
  • 不触发前端自动创建

“强制保存”指前端利用超级用户身份把书目记录原样保存到书目库中。要求当前账户具备 recover 权限。这个功能是为了从备份的书目文件中恢复记录到书目库而准备的,会跳过 dp2library 通常保存书目记录时进行的几个自动修改、增补数据字段的步骤,保持书目记录原样进入数据库,内容不发生改变。

“不产生 operation 元素”,顾名思义,如果不勾选这个 checkbox,是默认写入书目记录的时候,dp2library 会给每条即将写入的书目记录中添加必要的 operation 元素,以记载最近这一次修改的某些操作信息。operation 元素对了解一条记录的大致创建修改历史非常重要,除非特殊原因,不建议“不产生 operation 元素”。

“不产生操作日志”,如果不勾选这个 checkbox,默认写入书目记录的时候,dp2library 会产生操作日志记录。操作日志记录对系统安全性非常重要,除非特殊原因,不建议“不产生操作日志”。要求当前账户具备 recover 权限。

“不触发前端自动创建”,这里的“前端”指的是 dp2circulation (内务)前端,内务前端在修改后保存写入书目记录的时候,会自动在记录内容中创建和维持一个 998 字段,里面记载了操作者和创建时间等等信息。不勾选这个 checkbox,默认要自动创建和维护 998 字段。这些信息对了解一条记录的归属非常重要,除非特殊原因,不建议“不触发前端自动创建”。

注:当勾选了“强制保存” checkbox 以后,另外两个 checkbox 才会允许和它组合勾选: “不产生 operation 元素”、“不产生操作日志”。如果组合不当,写入阶段会报错,拒绝写入。

DigitalPlatform avatar May 08 '25 02:05 DigitalPlatform