OpenEdge Progress-4GL 开发:如何从错误消息中了解我正在运行的程序?

问题描述

如之前的问题所述,我对 Progress-4GL 开发还很陌生。

我刚刚创建了一个 windows (*.w file),以及一个基于包含文件 (*.p file) 的过程文件 (*.i file)

我做错了什么,我收到一条错误消息,复制粘贴显示以下内容:

---------------------------
Fout
---------------------------
** Begin positie voor SUBSTRING,OVERLAY,enz. moet 1 of groter zijn. (82)
---------------------------
OK   
---------------------------

如您所见,这是错误 82 的荷兰语翻译:

** Starting position for SUBSTRING,etc. must be 1 or greater. (82)

The SUBSTRING,etc,functions require that the start position (second argument) be greater than or equal to 1. 
P

我想知道哪个过程/函数正在启动此错误消息。我正在使用 AppBuilder 版本 11.6 和相应的过程编辑器,因此调试的可能性非常有限。我在想的一件事是转储 Windows 进程,以确定调用堆栈,但我不确定如何执行此操作。我还尝试使用 Process Explorer 并检查“procwin32.exe”进程内线程的各个堆栈的堆栈,但我不确定如何继续。

顺便说一句,我经常在我的代码中添加消息框,如下所示(只是一个例子):

MESSAGE "begin procedure combobox-value-changed" VIEW-AS ALERT-BOX.

如您所见,过程名称是硬编码的,而在其他编程语言(如 C++)中,过程/函数名称可以如下所示:

OUTPUT("begin procedure %s",__FUNCTION__);

__FUNCTION__ 旁边,C++ 还知道 __FILE__(用于文件名)和 __LINE__(用于行号)。
Progress 4GL 中是否也存在此类预定义值,最好是 11.6 或之前版本?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)