AS400中的错误检测

时间:2017-07-27 14:44:24

标签: vba ibm-midrange

我现在是VBA的基础知识并使用它来发送或获取AS 400中的数据,但我不太了解IBM“Host Access类库”的文档。我想知道如何在AS400中检测错误现在我使用下面的脚本或者在运行宏之外跳过自己的错误。

AS400 error

Sub check_error()
    autECLSession.autECLOIA.WaitForAppAvailable
    autECLSession.autECLPS.wait 100
    autECLSession.autECLPS.SendKeys "[reset]"  
End Sub

当出现错误时,我无法使用某些命令,如autECLOIA.WaitForInputReady,所以我在'check_error'中使用'wait 100',但它并不总是有效。那么如何检测错误,有没有命令呢?还是一种处理它的方法?

1 个答案:

答案 0 :(得分:2)

遗憾的是,这是一个很大的话题,取决于应用程序。有很多方法可以在5250显示器上向用户呈现错误,一种方法无法适应所有情况。最好只询问我们您的具体用例,而不是所有用例。

但是,让我高度了解一些可以呈现错误的方法。

外部邮件队列 这是程序向* EXT消息队列发送状态消息的时间。这些消息显示在显示屏的最后一行。它们不会出现在作业日志中,通常不用于例外,但它们也不会结束程序。

计划消息队列 应用程序可以定义消息子文件,该文件是在屏幕上显示在80x24屏幕上的第1行和第24行之间,或者在132x27屏幕上的第1行和第27行之间。出现的位置,以及它使用的显示行数在显示文件DDS中定义。此消息子文件中消息的出现可能是错误的唯一指示,但它也可能包含信息性消息。您将不得不通过消息文本确定它是什么。与消息一起,字段也可以反向成像,或以指示错误的方式着色,但键盘未锁定,并且没有声音指示存在问题。

DDS错误消息 可以定义DDS错误消息,锁定键盘,反转图像字段,并显示错误消息。这些消息也可以显示在任何行上,可以在DDS中进行配置。除了典型的显示行外,还有一个附加行:80x24屏幕上有25个,132x27屏幕上有28个,这些消息可以访问。

自定义错误消息 有时,错误以完全自定义的方式表示,例如通过在屏幕上的某处填充文本字段。

重点是您需要了解您的应用程序,以及它如何提供用户反馈,如果没有这些知识,我们无法为您提供帮助。