作业库异常处理


作业执行期间不能编辑/执行作业

在作业执行期间,当试图打开并执行一项作业时,执行与编辑不能执行,会显示信息:"不能执行因为作业'xxx'正在执行。","4008 执行过程正在运行。取消过程或检查当前状态。","作业当前正在被执行。以只读方式打开作业编辑窗口。"。
这是因为作业库的执行是作为独占访问来进行控制的。
如果作业执行完成后,因为独占访问控制可能会被释放,所以请等待作业执行的结束,并再次执行。
通常情况下,这是会被自动释放的,即使从硬件故障恢复,独占访问也会被释放。但是如果从故障恢复没有完成,那么自动恢复将不会被执行。
独占控制的恢复以及注意事项的请参照如下描述。
在作业执行期间,以下命名的文件被创建于实际作业库目录下的$$$rep_tmp目录中。 (目录下的作业库名目录被显示在作业库管理工具编辑作业库 对话框路径中) (位于作业库管理工具下,本产品安装目录下的rep\DefaultRepository)

_执行_用户编号_1.作业编号.wtd
"用户编号" 显示关于作业库中定义的用户编号的数字。
"作业编号" 显示作业库中管理员用户中定义作业的总数.关于作业编号,参照作业库目录。
"作业编号" 是存在于用户名\Jobs目录中名为"作业名.编号.wtd"的文件中的"编号" 部分,与作业库浏览器上的文件夹有相同的层次位置。
当发生了上述提到的错误并且作业没有被执行,请删除上述提到的文件。如果文件没有被适当的删除,本产品的独占控制过程不能正常处理。不建议删除非上述所提到的文件。
如果作业执行工具没有完成作业的执行,那么上述提到的文件不能被删除。在这种情况下,必须提前终了作业执行工具。可以通过外部工具Windows任务管理器来终了作业。 然而,不能从Windows任务调度强行结束,Windows服务进程。例如:作业从Windows任务调度中执行。如果需要结束该作业而不重启Windows,那么请从服务中使用停止进程工具,例如Windows资源工具箱。当作业执行工具在外部结束,那么作业执行状态的将不更新,因为该作业执行的过程没有执行。所以,请小心执行该操作。



对象编辑期间不能编辑对象

在编辑一项作业期间,当有人试图打开作业以及试图编辑作业/视表/连接源的属性时,会在作业编辑窗口中显示这样的提示消息:"当前作业在其他场所被编辑,以只读方式打开作业编辑窗口." 或 " XXX 当前正在被编辑。 XXX 属性以只读模式被显示。"这是因为对象的独占访问控制是作为独占访问来进行控制的。
如果作业执行完成后,因为独占访问控制可能会被释放,所以请等待作业执行的结束,并再次执行。通常情况下,这是会被自动释放的,即使从硬件故障恢复,独占访问也会被释放。但是如果从故障恢复没有完成,那么自动恢复将不会被执行。
独占控制的恢复以及注意事项的请参照如下描述。
作业执行期间不能编辑/执行作业相同,在作业执行期间,当作业库浏览器或连接源中的作业或视表被编辑时,在实际作业库目录下的 $$$rep_tmp目录中,会创建以下文件被创建。

_编辑_用户编号_对象类型.对象编号.wtd
"对象类型" 中,"1"表示是一个作业,"2"表示是一个视表,"3"表示是一个连接源。
对于"对象编号"的作业是指作业编号,并且和作业执行期间不能编辑/执行作业有着相同的步骤。
对于"对象编号"的视表,是指用户名\Views 目录来代替 用户名\Jobs。
对于"对象编号"的连接源,是指用户名\DBAdapters 目录来代替 用户名\Jobs。
当错误发生时,即使没有用户在网络上使用或编辑该对象,该对象也不能编辑。这与作业执行期间不能编辑/执行作业期间删除文件相似。

注意事项与作业执行期间不能编辑/执行作业也相同。



连接源使用期间不能删除对象

在视表中设置的连接源不能被删除。当前试图删除在视表中设置的连接源时,会显示这样的错误信息:"不能删除因为连接源 'xxx'在作业 'xxx' 视表中被使用。" 或者 "不能删除因为连接源'xxx' 在视表'xxx'中被使用。" 。
该错误信息显示的是最先找到的视表名。
当连接源在任何视表中都没有被使用,但是仍然不能被删除,那么请考虑一下连接源信息是否已经损坏。特别是当使用连接源的作业和视表不存在于作业库中以及当试图删除连接源时,会显示这样的错误信息"不能删除,因为连接源'xxx'的参照信息不正确。无效对象存在于参照信息中。" 。
在这种情况下,打开
作业库管理工具编辑作业库对话框,点击连接源信息系统再生成执行按钮。连接源信息重新生成。



作业或视表编辑期间不能删除连接源

当试图删除连接源时,会显示这样的错误信息 "不能在连接源中删除。作业或视表当前正被编辑。关闭所有作业之后再重新试一次。"。与前一项所描述的相同,视表中被设置的连接源不能被删除的情况。用来防止正在被编辑的视表或作业中视表设置的连接源的删除。
当没有使用作业库的网络共享时,按照错误信息所述,关闭所有属性窗体以及编辑窗体。当有多个Designer启动时,请对所有的Designer进行该操作。
当使用
作业库网络共享时,在该作业库上使用的所有的Designer中都需要执行该操作。
包括在网络使用时, 如果没有任何作业或视表为"当前正编辑",但是仍然有该错误,那么请参照对象编辑期间不能编辑对象过程,把显示的连接源信息删除。



不能登录到作业库

登录到作业库的Designer,实用工具,作业执行工具中,或者,通过作业库管理工具由Designer,实用工具,作业执行工具来编辑登陆作业库,显示的错误消息 "C1704 由于在其他场所已正被登录,无法操作。" 。
出于安全性考虑,作业库是作为独占访问来进行控制的。

如果作业执行完成后,因为独占访问控制可能会被释放,所以请等待作业执行的结束,并再次执行。通常情况下,这是会被自动释放的,即使从硬件故障恢复,独占访问也会被释放。但是如果从故障恢复没有完成,那么自动恢复将不会被执行。
独占控制的恢复以及注意事项的请参照如下描述。

登录到作业库期间,以下的文件类型可以被保留在实际作业库下的 $$$rep_tmp 目录中,与作业执行期间不能编辑/执行作业相同。

_登陆_实用工具类型_用户编号+机器名+进程ID.wtd
"实用工具类型" 中"1"表示Designer,"2" 表示作业库管理工具,"3"表示作业监视工具,"5"表示作业执行工具,"6"表示作业导入工具(作业导入),"7"表示作业导出工具 (作业导出)。
"进程ID" 相当于Windows任务管理的进程列表中的进程标识符的"PID"。
当在执行作业期间,尽管没有用户在网络上登录作业库,但是发生了"C1911 非法版权。"错误信息。这与作业执行期间不能 编辑/执行作业描述类似,把相关的文件删除。注意事项与作业执行期间不能编辑/执行作业也相同。



有关$$$rep_tmp目录的补充

位于实际作业库的目录下的$$$rep_tmp目录与一般的临时目录相比,有着不同的属性。它是存储管理动态更新文件的目录而不是单一存储临时文件的目录,与Windows临时目录相似。
因此,除了上述所描述的可以删除的部分以外,绝对不要删除其他的文件。即便是更新日期比较旧的文件也不能删除。
例如:在$$$rep_tmp目录中的一个文件。

_Status_Number.wtd
不要删除该文件。
该文件管理
作业执行状态以及视表过滤器执行状态