【发布时间】:2020-04-10 07:31:59
【问题描述】:
我是进度 4GL 的新手。在我的程序中,我尝试使用progress 4GL 创建一个表单。该表单有两个字段,一个是数据库名称,另一个是数据库描述。默认情况下,此表单的范围应具有一个 DB 名称和描述,如果用户在 DB 名称字段中输入或保留空白,则警报框应给出一条消息。我已经开发了表单,但是当我运行它时,程序会继续运行,并且窗口表单进入无响应阶段。我没有机会输入数据库字段名称或将其留空。让我分享我的代码,请帮助找出问题所在以及为什么它会持续运行。
define variable cArcDB as character no-undo format "x(20)" INIT "qadb".
define variable cArcDBDesc as character no-undo format "x(25)" INIT "archive database".
define variable cTmp as character NO-UNDO.
form
cArcDB colon 25
cArcDBDesc colon 25
with frame frArchiveDB width 80 side-labels.
MAIN-LOOP:
REPEAT:
display
cArcDB
cArcDBDesc
with frame frArchiveDB.
set
cArcDB
with frame frArchiveDB editing:
if frame-field = "cArcDB" then do:
/* Find next/prev record from ttAppDB */
cTmp = cArcDB:input-value in frame frArchiveDB.
display
cArcDB
cArcDBDesc
with frame frArchiveDB.
end.
end. /* editing */
cArcDB = trim(cArcDB).
if cArcDB = "" then do:
/* Blank not allowed */
/* {us/bbi/pxmsg.i &MSGNUM=40 &ERRORLEVEL=3} */
next-prompt cArcDB with frame frArchiveDB.
undo MAIN-LOOP,retry MAIN-LOOP.
end.
END.
【问题讨论】:
标签: openedge progress-4gl