textUIProgram 类型的程序部件的语法图如下所示:
- Program programPartName ... end
- 将该部件标识为程序部件并指定名称和类型。如果程序名后面跟着左圆括号,则该程序是被调用基本程序。
如果未设置 alias 属性(如后文所述),则生成的程序的名称是
programPartName。如果未设置 alias 属性(如后文所述),则生成的程序的名称是 programPartName 或者(如果要生成 COBOL 的话)programPartName 的前 8 个字符。
有关其它规则,请参阅命名约定。
- mainTextUIProperties
- 主文本用户界面程序的属性是可选的:
- alias
- allowUnqualifiedItemReferences
- handleHardIOErrors
- includeReferencedFunctions
- inputForm
- inputRecord
- localSQLScope
- msgTablePrefix
- segmented
- throwNrfEofExceptions
有关详细信息,请参阅程序属性。
- parameter
- 指定参数名,该参数可以是数据项、记录或表单;也可以是记录动态数组或数据项动态数组。有关规则,请参阅命名约定。
如果调用程序的自变量是变量(不是常量或文字),则对参数进行的任何更改都将更改可供调用程序使用的内存区。
用逗号将每个参数与下一个参数隔开。有关其它详细信息,请参阅程序参数。
- calledProperties
- 被调用属性是可选的:
- alias
- allowUnqualifiedItemReferences
- includeReferencedFunctions
- msgTablePrefix
有关详细信息,请参阅程序属性。
- programData
- 变量和使用声明,如参数以外的程序数据中所述。
- mainFunctionPart
- 名为 main 的必需函数,该函数不接受参数。(能接受参数的程序代码只有程序本身以及除 main 以外的函数。)
有关编写函数的详细信息,请参阅 EGL 源格式的函数部件。
- functionPart
- 嵌入的函数,该函数对于除程序以外的任何逻辑部件都不可用。有关编写函数的详细信息,请参阅 EGL 源格式的函数部件。
下面是文本用户界面程序的示例:
Program HelloWorld type textUIprogram
{}
use myFormgroup;
myMessage char(25);
function main()
while (ConverseVar.eventKey not pf3)
myTextForm.msgField = " ";
myTextForm.msgField="myMessage";
converse myTextForm;
if (ConverseVar.eventKey is pf3)
exit program;
end
if (ConverseVar.eventKey is pf1)
myMessage = "Hello Word";
end
end
end
end