1

我正在编写 Temenos T24 VERSION(输入屏幕)授权例程(AUTH.ROUTINE)来进行一些处理,我需要授权以在出现错误时停止。这是我编写错误处理的方式:

AF=1; AV=1; AS=1
ETEXT = "Some error message"
CALL STORE.END.ERROR
MESSAGE = "ERROR"

此类错误处理在字段 1 中显示错误消息,多值 1,子值 1,不允许继续。但是,对记录本身的更改已经提交到数据库。

在 AUTH.ROUTINE 版本中停止授权的正确方法是什么?

4

3 回答 3

3

首先要对字段级别进行任何检查,然后最好使用 Validation Rtn,因为它将在触发授权例程之前调用。

现在我来解决您的问题,为什么即使它抛出错误它也会更新字段值是因为在对文件执行 F.WRITE 之后执行授权例程以避免这种情况,您需要编写 BeforeAuth 例程,因为它也会得到在 Authorize 阶段但在执行 F.Write 之前触发,因此您的目的将得到满足,即如果出现错误数据将不会在表中更新。

于 2017-09-20T08:30:46.107 回答
1

'E' 是在授权时设置错误的常用变量。

E = "Some Error Message" V$ERROR = @TRUE ;* 使浏览器爆炸并关闭记录而不保存

T24核心处理然后处理正在设置的'E',不需要CALL STORE.END.ERROR

于 2018-11-13T21:20:18.253 回答
1

您不应在 AUTH.ROUTINE 阶段执行错误检查,因为这些将被忽略。此时,预计所有验证和交叉验证都已完成并通过。

Auth 例程通常用于提交后处理

于 2018-11-21T04:51:52.057 回答