点击或拖拽改变大小

Functions.AFields 方法

X#
用当前数据库文件的结构填充数组。 注意:
AFields() 是一个兼容性函数,因此不推荐使用。
它已被 DBStruct() 取代,后者不需要在调用前存在任何数组,并返回一个包含当前数据库文件结构的多维数组。

命名空间:  XSharp.RT
程序集:  XSharp.RT (在 XSharp.RT.dll 中) 版本:2.22 GA
语法
 FUNCTION AFields(
	acFieldNames,
	acTypes,
	anWidths,
	anDecimals
) AS DWORD CLIPPER
查看代码

参数

acFieldNames (Optional)
类型:__Usual
要用字段名填充的数组。
acTypes (Optional)
类型:__Usual
要用 acFieldNames 中字段类型填充的数组。
anWidths (Optional)
类型:__Usual
要用 acFieldNames 中字段宽度填充的数组。
anDecimals (Optional)
类型:__Usual
要用 acFieldNames 中字段定义的小数位数填充的数组。
如果字段类型不是数值型,系统将 0 赋给 anDecimals

返回值

类型:UInt32
字段数量或最短数组参数的长度,以较小者为准。
如果未指定参数,或当前工作区没有使用中的文件,AFields() 返回 0。
备注
AFields() 用当前打开的数据库文件的结构填充一系列数组(结构属性数组),每个数组中每个字段对应一个元素。
AFields() 的工作方式类似于 ADir(),用信息填充一系列现有数组。 要使用 AFields(),你必须首先创建用于保存数据库结构信息的数组,每个数组的元素数量与字段数量相同(即 FCount())。一旦结构属性数组存在,你就可以调用 AFields() 来用每个字段的信息填充它们。 默认情况下,此函数在当前选定的工作区上操作。
可以通过在别名表达式中指定来使其在未选定的工作区上操作。
示例
这个例子使用带别名表达式的 AFields() 来填充数组,其中包含在未选定工作区中打开的 SALES.DBF 的结构:
X#
 1PROCEDURE Start()
 2    LOCAL acFieldNames, aTypes, aWidths, ;
 3            aDecimals AS ARRAY
 4    USE sales NEW
 5    USE customer NEW
 6    acFieldNames := Sales->(ArrayNew(FCount()))
 7    acTypes      := Sales->(ArrayNew(FCount()))
 8    anWidths     := Sales->(ArrayNew(FCount()))
 9    anDecimals   := Sales->(ArrayNew(FCount()))
10    Sales->(AFields(acFieldNames, acTypes, anWidths, anDecimals))
参见