点击或拖拽改变大小

DataServer.GetLookupTable 方法

X#
从服务中的两个字段检索两列值数组,受当前活动选择的约束(如果有)。

命名空间:  XSharp.VO.SDK
程序集:  XSharp.VOSystemClasses (在 XSharp.VOSystemClasses.dll 中) 版本:2.22 GA
语法
 ABSTRACT METHOD GetLookupTable(
	nMaxRows,
	uField1,
	uField2,
	uSearchValue
) AS ARRAY CLIPPER
查看代码

参数

nMaxRows (Optional)
类型:__Usual
应检索的最大行数。如果省略,则最多检索100行。
uField1 (Optional)
类型:__Usual
要检索的第一个字段的名称、编号或符号。如果省略,则检索第一个字段。
uField2 (Optional)
类型:__Usual
要检索的第二个字段的名称、编号或符号。如果省略,则检索第二个字段。
uSearchValue (Optional)
类型:__Usual
在当前控制顺序下要搜索的值。系统执行 Seek() 操作,然后从那里开始加载数组。

返回值

类型:__Array
该方法返回在指定字段中找到的两列值数组,按顺序移动,直到指定的最大行数或文件结束。如果选择处于活动状态,则方法仅包括该选择中的记录。值在当前控制顺序下检索(如果有)。 请注意,该方法在开始填充数组之前不会重新定位到开头。要么提供起始值,要么在使用该方法之前显式定位服务。(这允许增量读取,分段构建数组。)
备注
在操作之前发送 NotifyIntentToMove 消息。 完成后发送 NotifyRecordChange 消息,并将服务定位在使用的最后一条记录或文件结束(最后一条文件记录)。 此方法的一种用途是填充用户界面中的翻译列表。生成的数组可以在 ATranslate() 中使用。
示例
以下示例构建查找表,例如将产品代码翻译为产品名称,反之亦然,从指定的产品编号开始:
X#
1oDB := DBServer{"products",#Shared,#ReadOnly}
2oDB:SetIndex("prodno")
3aProducts := oDB:GetLookupTable(500,#ProdNo,#ProdName, 22750)
4oDB:Close()
参见