Flatten builtin pages, add third-party and platform scopes, and import financial and data warehouse references. Keep the existing generated index without rebuilding after signature normalization.
11 KiB
Third / COM
以下为调用第三方运行环境或外部组件的函数。
本页提供 COM 运行环境初始化和按 GUID 创建 COM 对象的函数。
下文创建 COM 对象的示例使用 Windows 自带的 Scripting.Dictionary,不会启动 Excel 等桌面程序。
在 COM 模式下(例如通过 Excel COM 对象操作 XLS 文件),COM 的 ERROR 类型和 TSL 之间按以下规则转换:
- COM 转 TSL:
ERROR转为特殊的NAN,可用cverrget取回错误号。 - TSL 转 COM:用
cverr把错误号转为携带该错误号的特殊NAN。
coInitialize()
声明:function
Ole初始化。
返回:any
示例
return coInitialize();
// 输出:0
coUnInitialize()
声明:function
Ole结束。
返回:any
示例
coInitialize();
return coUnInitialize();
// 输出:0
createComObject(guid, obj)
声明:function
创建COM对象。如果创建成功则返回真,否则返回假。
| 参数 | 类型 | 说明 |
|---|---|---|
guid |
string | 对象的类GUID串。 |
obj |
comobj | 保存创建的对象。 |
返回:bool
示例
obj := nil;
return createComObject('{EE09B103-97E0-11CF-978F-00A02463E06F}', obj);
// 输出:1
cverr(v)
声明:function
将 COM 错误号转为携带该错误号的特殊 NAN 数据。
这些错误号由 Excel 定义。常见值包括:
0x800A07D7:#DIV/0!0x800A07FA:#N/A0x800A07ED:#NAME?0x800A07D0:#NULL!0x800A07F4:#NUM!0x800A07E7:#REF!0x800A07DF:#VALUE!
在 AnalyseNG.NET 的 excelSetCell 或 excelSetCells 中,系统会自动把普通 NAN 和 INF 转为相应的 Excel 错误;由 cverr 生成的特殊 NAN 会保留指定错误号。
| 参数 | 类型 | 说明 |
|---|---|---|
v |
int64 |
返回:real
示例
return cverr(0x800A07E7);
// 输出:NAN
cverrget(v)
声明:function
获取特殊 NAN 中的 COM 错误号。返回值的高位不确定,只应使用低 32 位。
使用 .& 0xFFFFFFFFL 取低 32 位;不带 L 的 0xFFFFFFFF 会被解释为 -1,无法清除高位。
| 参数 | 类型 | 说明 |
|---|---|---|
v |
double |
返回:int64
示例
error_value := cverr(0x800A07E7);
return cverrget(error_value) .& 0xFFFFFFFFL;
// 输出:2148141031
getOleObject(class_name, method, obj)
声明:function
获取一个ComObj对象类型。
| 参数 | 类型 | 说明 |
|---|---|---|
class_name |
string | 字符串,对象的类名。 |
method |
integer | 整数,产生方法的方法,1:获取一个存在的对象,2:新建一个对象,其他值:如果存在则获取一个存在对象,不存在则创建。 |
obj |
comobj | 保存返回的对象。 |
返回:bool
示例
obj := nil;
return getOleObject('Scripting.Dictionary', 2, obj);
// 输出:1
TSExpert.CoExec
声明:class
天软客户端 COM 自动化接口
以下调用项是该接口的实例方法和属性,不是 TSL 全局函数
adminCommand(command, timeout, no_data_timeout, recv_string, broad_string, err_msg)
声明:function
提交管理员命令
可见性:public
| 参数 | 类型 | 说明 |
|---|---|---|
command |
widestring | 提交的管理员命令串 |
timeout |
integer | 命令超时的毫秒数 |
no_data_timeout |
integer | 收到首个数据后无数据等待的毫秒数 |
recv_string |
olevariant | 输出参数,返回命令结果串 |
broad_string |
olevariant | 输出参数,返回广播消息串 |
err_msg |
olevariant | 输出参数,发生错误时返回错误信息 |
返回:olevariant
返回 0 表示成功,其他值为错误码
getSysParam(param_name)
声明:function
返回系统参数的值
可见性:public
| 参数 | 类型 | 说明 |
|---|---|---|
param_name |
widestring | 系统参数名 |
返回:olevariant
localCallFunc(func_name, params)
声明:function
利用本地解释器执行一个函数
可见性:public
| 参数 | 类型 | 说明 |
|---|---|---|
func_name |
widestring | 需要调用的函数名 |
params |
olevariant | 保存调用参数的 Variant 数组 |
返回:olevariant
localExecute(execute_str)
声明:function
利用本地解释器执行一段 TSL 脚本
可见性:public
| 参数 | 类型 | 说明 |
|---|---|---|
execute_str |
widestring | 需要执行的脚本 |
返回:olevariant
remoteCallFunc(func_name, params)
声明:function
利用平台执行一个函数
可见性:public
| 参数 | 类型 | 说明 |
|---|---|---|
func_name |
widestring | 需要调用的函数名 |
params |
olevariant | 保存调用参数的 Variant 数组 |
返回:olevariant
remoteExecute(execute_str)
声明:function
利用平台执行一段 TSL 脚本
可见性:public
| 参数 | 类型 | 说明 |
|---|---|---|
execute_str |
widestring | 需要执行的脚本 |
返回:olevariant
resetSysParam()
声明:function
重置系统参数
可见性:public
时间重置为当前时间,证券重置为上证指数,周期重置为日线,复权类型重置为不复权,复权基准日重置为 0,保留小数位数重置为 4,股票列表和时间列表重置为空
setSysParam(param_name, param_value)
声明:function
设置系统参数,对本地执行和平台执行均有效
可见性:public
| 参数 | 类型 | 说明 |
|---|---|---|
param_name |
widestring | 系统参数名 |
param_value |
olevariant | 要设置的参数值 |
simplyAdminCommand(command, timeout, no_data_timeout)
声明:function
提交管理员命令并返回命令结果串
可见性:public
| 参数 | 类型 | 说明 |
|---|---|---|
command |
widestring | 提交的管理员命令串 |
timeout |
integer | 命令超时的毫秒数 |
no_data_timeout |
integer | 收到首个数据后无数据等待的毫秒数 |
返回:olevariant
bk
声明:property
默认板块系统参数
可见性:public
类型:widestring
访问:read / write
bks
声明:property
板块组参数,批量调用时使用;取消批量板块时设置 bk
可见性:public
类型:olevariant
访问:read / write
computeBitsOption
声明:property
计算位数选项,0 表示自动选择,1 表示 32 位服务器,2 表示 64 位服务器
可见性:public
类型:byte
访问:read / write
computeService
声明:property
计算服务群组,空字符串表示默认服务,auto 表示自动选择,其他值表示指定服务群组
可见性:public
类型:string
访问:read / write
cycle
声明:property
当前周期系统参数
可见性:public
类型:widestring
访问:read / write
i64Trans
声明:property
TSL Int64 到 COM 的转换规则:0 转为 64 位整数,1 转为 32 位整数,2 转为双精度浮点数
可见性:public
类型:integer
访问:read / write
keepRawData
声明:property
二维数据转换规则:0 将单行和单列转为一维数组,1 保留原始结构,2 仅转换单列,3 仅转换单行
可见性:public
类型:integer
访问:read / write
logined
声明:property
是否已经登录成功
可见性:public
类型:olevariant
访问:read
nDay
声明:property
NDAY 默认返回的点数系统参数
可见性:public
类型:integer
访问:read / write
nilTrans
声明:property
TSL NIL 到 COM 的转换规则
可见性:public
类型:integer
访问:read / write
取值规则:
0—Unassigned1—Empty2—NULL3—NAN4— 整数05— 浮点数06— 空字符串7— 字符串NIL8— 字符串NULL9— 字符串-10— 字符串/
其他值转换为 Unassigned
precision
声明:property
返回结果保留的小数位数
可见性:public
类型:integer
访问:read / write
rate
声明:property
当前复权类型系统参数
可见性:public
类型:integer
访问:read / write
rateDay
声明:property
复权基准日系统参数
可见性:public
类型:tdatetime
访问:read / write
resultFileName
声明:property
结果文件名,非空时将结果写入文件;扩展名为 .csv 或 .xml 时使用对应格式,其他扩展名使用 Excel 格式
可见性:public
类型:widestring
访问:read / write
standardArray
声明:property
标准数组返回类型:0 表示任意类型,1 表示浮点数组,2 表示字符串数组,3 表示整数数组
可见性:public
类型:integer
访问:read / write
stock
声明:property
当前证券代码系统参数
可见性:public
类型:widestring
访问:read / write
stocks
声明:property
股票组参数,批量调用时使用;取消批量证券时设置 stock
可见性:public
类型:olevariant
访问:read / write
textResult
声明:property
文本结果模式,设置为 1 时将任意返回值转换为 TSL 可解析的数据结构文本
可见性:public
类型:integer
访问:read / write
time
声明:property
当前环境时间系统参数
可见性:public
类型:tdatetime
访问:read / write
times
声明:property
时间组参数,批量调用时使用;取消批量时间时设置 time
可见性:public
类型:olevariant
访问:read / write