♻️ refactor(tsl): rebuild codegen taxonomy

Move generated builtin and dotnet function docs into the upgraded taxonomy, remove legacy route pages, and regenerate function_index.tsv from markdown headings.
This commit is contained in:
csh
2026-07-07 16:36:08 +08:00
parent 54c1c11e77
commit b6160676b4
763 changed files with 179921 additions and 154583 deletions
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,31 @@
# 运行时 / 数据库事务
### `sqlBeginTrans(db_alias)`
开始一个数据库事务。
| 参数 | 类型 | 说明 |
| ---------- | ------ | ------------ |
| `db_alias` | string | 数据库别名。 |
返回:int
### `sqlInTrans(db_alias)`
检查是否在一个数据库事务中。
| 参数 | 类型 | 说明 |
| ---------- | ------ | ------------ |
| `db_alias` | string | 数据库别名。 |
返回:int
### `sqlRollback(db_alias)`
回滚事务。
| 参数 | 类型 | 说明 |
| ---------- | ------ | ------------ |
| `db_alias` | string | 数据库别名。 |
返回:int
@@ -0,0 +1,203 @@
# 运行时 / 编码与压缩
### `convertDataToBuf(data, convert_type)`
将一个数据转换成内存存贮的BUFFER。
| 参数 | 类型 | 说明 |
| -------------- | ------ | ------------------------------------- |
| `data` | any | 任意类型,存贮的数据。 |
| `convert_type` | string | 字符串类型,指定转换的类型,类型如下: |
返回:string
### `decodeGraph(grap, _type, name, data, prop)`
分解图形,将Graph分解成为类型、名称、数据和属性两个数组,属性数组的下标为属性名,值为属性值。
| 参数 | 类型 | 说明 |
| ------ | ------ | -------------------------------------------- |
| `grap` | any | 图形,输入; |
| `_type` | any | 整数,图形类型,参见图形类型函数,输出值; |
| `name` | string | 字符串,图形类型名称,与返回值对应,输出值; |
| `data` | array | 二维数组,图形数据,输出值; |
| `prop` | array | 二维数组,图形属性组合,输出值; |
返回:array
### `decodeGraphGroup(graph_group, graph_array, graph_group_prop)`
分解图形组合,将GraphGroup分解成为TGraph数组以及属性数组,属性数组的下标为属性名,值为属性值。
| 参数 | 类型 | 说明 |
| ------------------ | ----- | -------------------------------- |
| `graph_group` | any | 图形,组合图形; |
| `graph_array` | array | 图形,分解后的图形组合,输出值; |
| `graph_group_prop` | array | 一维数组,图形属性及对应的值; |
返回:array
### `decoderadixstr(s, presufflen, radix)`
对指定进制格式的源码字符串进行解码。与Encoderadixstr的功能相反。
| 参数 | 类型 | 说明 |
| ------------ | ------ | --------------------------------------------------------------------------------------------------------------------- |
| `s` | string | 字符串 |
| `presufflen` | int | 整型,前缀或者后缀长度。 |
| `radix` | int | 整数,最高位(31位)为1的时候,表明为后缀方式,否则为前缀模式。第30位为1表明采用小写字母。低6位为进制,最大支持36进制。 |
返回:string
### `decoderadixwstr(s, presufflen, radix)`
对指定进制指定格式的宽字节源码串进行解码。与Encoderadixwstr的功能相反。
| 参数 | 类型 | 说明 |
| ------------ | ------ | --------------------------------------------------------------------------------------------------------------------- |
| `s` | string | 字符串 |
| `presufflen` | int | 整型,前缀或者后缀长度。 |
| `radix` | int | 整数,最高位(31位)为1的时候,表明为后缀方式,否则为前缀模式。第30位为1表明采用小写字母。低6位为进制,最大支持36进制。 |
返回:string
### `encodeGraphGroup(graph_array, graph_group_prop)`
返回根据指定的TGraph数组和属性数组组合成的图形组合。
| 参数 | 类型 | 说明 |
| ------------------ | ----- | -------------------- |
| `graph_array` | array | 一维数组,图形组合; |
| `graph_group_prop` | array | 二维数组,属性组合; |
返回:TgraphGroup
#### 示例
```tsl
setsysparam(pn_stock(),'SZ000002');
setsysparam(pn_date(),inttodate(20140117));
setsysparam(pn_nday(),250);
t1:=NDay2(gfopen(), Open() ,
gfclose(), close(),
gfhigh(), high(),
gflow(),  low(),
gftime(), datetimetostr(sp_time()),
gfColor(), IfThen3(Close(), Open(),
ClRed() ,  //涨颜色
clYellow() , //平颜色
Clblue()   //跌颜色
),
gffill(),ifThen3(Close(), Open(), flClear(), flSolid(),flSolid())
);
t2:=NDay2('MA10',Ma(Close(),10));
g1:=graph(gtKline(),'KLine',t1);
g2:=graph(gtline(),'MA10',t2);
return EncodeGraphGroup(array(g1,g2),array());
```
### `encoderadixstr(s, presuff, radix)`
将字符串转换为指定进制格式的源码。
| 参数 | 类型 | 说明 |
| --------- | ------ | ---------------------------------------------------------------------------------------------------------------------- |
| `s` | string | 字符串 |
| `presuff` | string | 字符串,指定的前缀或者后缀串。 |
| `radix` | int | 整数,最高位(31位)为1的时候,表明为后缀方式,否则为前缀模式。第30位 为1表明采用小写字母。低6位为进制,最大支持36进制。 |
返回:string
### `encoderadixwstr(s, presuff, radix)`
将字符串按宽字节码转换成指定进制格式的源码。而Encoderadixstr是按多字节字码进行转换。
| 参数 | 类型 | 说明 |
| --------- | ------ | ---------------------------------------------------------------------------------------------------------------------- |
| `s` | string | 字符串 |
| `presuff` | string | 字符串,指定的前缀或者后缀串。 |
| `radix` | int | 整数,最高位(31位)为1的时候,表明为后缀方式,否则为前缀模式。第30位 为1表明采用小写字母。低6位为进制,最大支持36进制。 |
返回:string
### `exportJsonString(data, n, return_value)`
将TSL结构数据转换为json串。对于非ASCII编码的文字转换为转义字符。 天软中的nan,inf,-inf会相应地转换为NaN,Infinity,-Infinity,该处理是为了便捷与python处理的兼容,在交互中,将天软的数据结果转化为json串再传递到python中,可以解决编码不一导致转码效率低下的问题。但同时该类特殊数值的处理无法保障在其他语言中也能转换正常。
| 参数 | 类型 | 说明 |
| -------------- | ------- | ----------------------------------------------------------------------------- |
| `data` | anytype | 天软数据,任意数据类型。 |
| `n` | int | 可选参数,要保留的小数位数。为0时保留1位小数,大于16或小于0时保留全部小数位数 |
| `return_value` | string | 字符串,json串 |
返回:string
### `getMsgDigest(arg)`
信息摘要函数相关函数。
| 参数 | 类型 | 说明 |
| ------------- | ------ | ------------------------------------------------------------------------------------------ |
| `arg` | string | 要计算摘要的字符串 |
| `digest_type` | int | 摘要算法编号:`0` CRC32`1` MD5`2` SHA1`3` SHA224`4` SHA256`5` SHA384`6` SHA512 |
| `alias` | string | 文件所在目录别名;不用别名时传空字符串 |
| `filename` | int | 要计算摘要的文件路径 |
| `digest_type` | any | 摘要算法编号:`0` CRC32`1` MD5`2` SHA1`3` SHA224`4` SHA256`5` SHA384`6` SHA512 |
返回:string
## 信息摘要及编码 / 进制编码函数
### `makeLcid(language_id, sort_id)`
LCID编码函数。
| 参数 | 类型 | 说明 |
| ------------- | ---- | ---------------- |
| `language_id` | int | 语言ID标识ID。 |
| `sort_id` | int | 排序顺序标识ID。 |
返回:int
### `unicodeEsc2()`
多语言支持函数相关函数。
返回:string
### `unicodetoUtf8(s)`
Unicode串转为UTF8串。天软字符串前加L表示宽字节字符串,即Unicode串。
| 参数 | 类型 | 说明 |
| ---- | ------ | --------------------------- |
| `s` | string | 字符串,Unicode编码字符串。 |
返回:string
### `unicompress(_type, data, compresslevel, return_value)`
统一压缩函数,对字符串或二进制进行压缩。 type目前支持zstd,zlib,lz4三种类型,压缩级别在zstd和zlib模式下生效。
| 参数 | 类型 | 说明 |
| --------------- | ------ | ------------------------------------------------ |
| `_type` | string | 压缩类型,目前支持zstd,zlib,lz4三种类型 |
| `data` | string | 字符串或二进制类型, |
| `compresslevel` | int | 可选参数,压缩级别,目前仅在zstd和zlib模式下生效 |
| `return_value` | string | 压缩后的串 |
返回:string
### `uniuncompress(_type, data, srclen, return_value)`
统一解压函数。 type目前支持zstd,zlib,lz4三种类型,srclen的设置是解压的大小,不设定会自动识别,设定后会比较大小是否相符,如果知道原大小,则应该设定该参数。
| 参数 | 类型 | 说明 |
| -------------- | ------ | ---------------------------------------------------------------------------------------- |
| `_type` | string | 解压类型 |
| `data` | string | 字符串或二进制类型,被解压的串 |
| `srclen` | int | 解压的大小,不设定会自动识别,设定后会比较大小是否相符,如果知道原大小,则应该设定该参数 |
| `return_value` | int | 解压后的串 |
返回:string
+310
View File
@@ -0,0 +1,310 @@
# 运行时 / 文件与目录
### `createDir(alias, dir_name)`
创建目录。如果本地不存在该目录,可创建目录;如果该目录已存在,则创建失败,返回0。
| 参数 | 类型 | 说明 |
| ---------- | ------ | -------------------------- |
| `alias` | string | 字符串类型。参考目录别名。 |
| `dir_name` | string | 字符串类型。创建的目录名。 |
返回:bool
### `exportFile(filename, arg2, arg3, data)`
文件访问函数相关函数。
| 参数 | 类型 | 说明 |
| ---------- | ------ | ---- |
| `filename` | int | |
| `arg2` | string | |
| `arg3` | string | |
| `data` | array | |
返回:string
### `fileAge(alias, file_name)`
取得文件的时间。
| 参数 | 类型 | 说明 |
| ----------- | ------ | -------------------------- |
| `alias` | string | 字符串类型。参考目录别名。 |
| `file_name` | string | 字符串类型。文件名称。 |
返回:int
### `fileAttr(alias, file_name)`
取得文件的属性。该值是各种属性的和,可以参考WINDOWS API。 值 说明 32(0x20) 备份文件 2048(0x800) 压缩文件 64(0x40) 系统保留属性 16(0x10) 目录 16384 (0x4000) 加密文件或目录 2 (0x2) 隐藏的文件或目录 32768 (0x8000) 文件完整性 128 (0x80) 常规文件 8192 (0x2000) 非索引文件 131072 (0x20000) 不扫描的数据文件 4096 (0x1000) 离线文件,主要是共享文件可在脱机状态下使用 1 (0x1) 只读文件 1024 (0x400) 符号链接文件 512 (0x200) 稀疏文件,文件中出现大量的0数据 4 (0x4) 操作系统文件 256 (0x100) 临时文件 65536 (0x10000) 虚拟属性,系统保留属性
| 参数 | 类型 | 说明 |
| ----------- | ------ | -------------------------- |
| `alias` | string | 字符串类型。参考目录别名。 |
| `file_name` | string | 字符串类型。文件名称。 |
返回:int
### `fileCopy(src_alias, src_name, dest_alias, dest_name, fail_if_exists)`
文件拷贝。注:目标文件名的路径必须存在,否则会复制不成功。
| 参数 | 类型 | 说明 |
| ---------------- | ------ | -------------------------------------------- |
| `src_alias` | string | 源文件目录别名,字符串类型。参考目录别名。 |
| `src_name` | bool | 源文件名,字符串类型。源文件名。 |
| `dest_alias` | string | 目标文件目录别名,字符串类型。参考目录别名。 |
| `dest_name` | string | 目标文件名,字符串类型。源文件名。 |
| `fail_if_exists` | string | object |
返回:bool
### `fileDateToDateTime(filename)`
日期时间处理函数。
| 参数 | 类型 | 说明 |
| ---------- | ---- | ---- |
| `filename` | int | |
返回:datetime
### `fileDelete(alias, file_name)`
删除文件。
| 参数 | 类型 | 说明 |
| ----------- | ------ | -------------------------- |
| `alias` | string | 字符串类型。参考目录别名。 |
| `file_name` | string | 字符串类型。文件名称。 |
返回:bool
### `fileExists(alias, file_name)`
判定文件是否存在。
| 参数 | 类型 | 说明 |
| ----------- | ------ | -------------------------- |
| `alias` | string | 字符串类型。参考目录别名。 |
| `file_name` | string | 字符串类型。文件名称。 |
返回:bool
### `fileInfo(alias, name)`
获取指定文件基本信息。
| 参数 | 类型 | 说明 |
| ------- | ------ | ---------------------------------- |
| `alias` | string | 字符串,目录别名,可传入空字符串。 |
| `name` | string | 字符串,文件路径。 |
返回:array
### `fileList(alias, file_name)`
列出目录。
| 参数 | 类型 | 说明 |
| ----------- | ------ | ---------------------------------------- |
| `alias` | string | 字符串类型。参考目录别名。 |
| `file_name` | string | 字符串类型。查找的文件名称,支持通配符。 |
返回:array
### `fileMode(alias, file_name)`
获取文件模式数值。此函数在Windows上与FileAttr表现一致,具体可以参考FileAttr中的相关说明。在Linux上采用Linux的原始定义。仅NG客户端中支持。
| 参数 | 类型 | 说明 |
| ----------- | ------ | ---- |
| `alias` | string | |
| `file_name` | string | |
返回:int
### `fileMove(src_alias, srcname, dest_alias, destname, flag, return_value)`
文件移动,指定的目标路径必须已存在(路径不存在时,移动失败),移动成功后,原文件不再存在,只在目标路径中保存。 相比filerename而言支持跨卷移动。
| 参数 | 类型 | 说明 |
| -------------- | ------------------------------------------------ | --------------------------------- |
| `src_alias` | string | 源文件目录别名,参考FAQ:目录别名 |
| `srcname` | int | 源文件名 |
| `dest_alias` | string | 目标目录别名 |
| `destname` | string | 目标文件名 |
| `flag` | string | 可选参数,移动模式。 |
| `return_value` | 不支持跨卷移动,目标文件已存在时移动失败,默认值 | object |
返回:bool
### `fileRename(alias, file_name, new_name)`
文件更名,也可用于文件的移动(大多数情况下不支持跨卷移动)。
| 参数 | 类型 | 说明 |
| ----------- | ------ | ------------------------------ |
| `alias` | string | 字符串类型。参考目录别名。 |
| `file_name` | string | 字符串类型。文件名称。 |
| `new_name` | string | 字符串类型。更名后的文件名称。 |
返回:bool
### `fileSize(alias, file_name)`
取得文件大小。
| 参数 | 类型 | 说明 |
| ----------- | ------ | -------------------------- |
| `alias` | string | 字符串类型。参考目录别名。 |
| `file_name` | string | 字符串类型。文件名称。 |
返回:int
### `fileTime(alias, file_name)`
取得文件的最后更新时间。
| 参数 | 类型 | 说明 |
| ----------- | ------ | -------------------------- |
| `alias` | string | 字符串类型。参考目录别名。 |
| `file_name` | string | 字符串类型。文件名称。 |
返回:datetime
### `getDeviceFree(alias, name)`
获取指定路径所在设备的剩余存储空间信息。
| 参数 | 类型 | 说明 |
| ------- | ------ | ---------------------------------- |
| `alias` | string | 字符串,目录别名,可传入空字符串。 |
| `name` | string | 字符串,文件路径 |
返回:array
### `getdeviceinfo(alias, name)`
获取指定路径所在设备的存储空间等信息。
| 参数 | 类型 | 说明 |
| ------- | ------ | ---------------------------------- |
| `alias` | string | 字符串,目录别名,可传入空字符串。 |
| `name` | string | 字符串,文件路径 |
返回:array
### `importFile(filename, arg2, arg3, data2)`
文件访问函数相关函数。
| 参数 | 类型 | 说明 |
| ---------- | ------ | ---- |
| `filename` | int | |
| `arg2` | string | |
| `arg3` | array | |
| `data2` | bool | |
返回:bool
### `readFile(filename, arg2, arg3, arg4, size, data)`
文件访问函数相关函数。
| 参数 | 类型 | 说明 |
| ---------- | ------ | ---- |
| `filename` | int | |
| `arg2` | string | |
| `arg3` | int | |
| `arg4` | int | |
| `size` | string | |
| `data` | int | |
返回:bool
### `removeDir(alias, dir_name)`
删除目录。只能删除空目录;如果要删除的目录下有文件,删除失败。
| 参数 | 类型 | 说明 |
| ---------- | ------ | -------------------------- |
| `alias` | string | 字符串类型。参考目录别名。 |
| `dir_name` | string | 字符串类型。创建的目录名。 |
返回:bool
### `setFileAge(alias, file_name, age)`
设置文件的时间。
| 参数 | 类型 | 说明 |
| ----------- | ------ | ---------------------------------------------------- |
| `alias` | string | 字符串类型。参考目录别名。 |
| `file_name` | int | 字符串类型。文件名称。 |
| `age` | string | 整数类型,该参数可以用DateTimeToFileDate转换转换获取 |
返回:int
### `setFileAttr(alias, file_name, attr)`
设置文件的属性。
| 参数 | 类型 | 说明 |
| ----------- | ------ | ----------------------------------------------------------------------------- |
| `alias` | string | 字符串类型。参考目录别名。 |
| `file_name` | string | 字符串类型。文件名称。 |
| `attr` | any | 整数类型,文件的属性,为各种文件属性的和,可以参考WINDOWS API,详见FileAttr。 |
返回:any
### `setFileMode(alias, file_name, mode)`
设置文件的模式。仅NG客户端中支持。
| 参数 | 类型 | 说明 |
| ----------- | ------ | ---- |
| `alias` | string | |
| `file_name` | int | |
| `mode` | any | |
返回:int
### `setFileTime(alias, file_name, time)`
设置文件的时间。
| 参数 | 类型 | 说明 |
| ----------- | -------- | -------------------------- |
| `alias` | string | 字符串类型。参考目录别名。 |
| `file_name` | datetime | 字符串类型。文件名称。 |
| `time` | string | 日期类型,文件时间 |
返回:int
### `tsModuleInfo(n)`
返回进程以及TSLInterp.dll的时间以及大小信息。如果有系统权限信息,用TS_ModuleInfo(1)返回所有模块的文件名和时间。
| 参数 | 类型 | 说明 |
| ---- | ---- | ----------------------------------------------------------------------------------------------------------------------------------------- |
| `n` | any | 整型,获取系统信息类型;无参或为0时,返回进程以及TSLInterp.dll的时间以及大小信息;为1时,若有系统权限信信息,则返回所有模块的文件名和时间 |
返回:array
## 用户和函数相关函数
### `writeToLog(dir, sub_dir, value)`
向虚拟目录写日志。其中Dir为虚拟目录名,SubDir为文件名,成功写入日志后,会生成命名为’SubDir’+写入日期+’.log’的TXT文件,文件内容为写入时间->Value。用户使用其应当申请好服务器权限。 20250512升级:优化多个线程同时写入时存在丢失情况: 1、增加重试次数,重试20次间隔0.5秒。 2、增加返回内容。 注意:在极端情况下(超多多线程下同时写入)可能还会存在写入失败情况,此时可通过返回结果继续处理
| 参数 | 类型 | 说明 |
| --------- | ------ | -------------------------------------------------------------------------------------------------------------------------------- |
| `dir` | string | 字符串,虚拟目录别名,一般在安装目录\Tinysoft\Analyse.NET\Plugin\filemgr.ini中进行配置。如果没有配置别名,该参数赋值为空字符""。 |
| `sub_dir` | string | 字符串,文件名 |
| `value` | string | 字符串,需要写入日志的内容 |
返回:any
## 网络访问以及相关函数
+387
View File
@@ -0,0 +1,387 @@
# 运行时 / 通用
### `call(func_name, p1, pn)`
根据名称或者函数指针调用指定的函数,后面带的参数将自动送入该函数。
| 参数 | 类型 | 说明 |
| ----------- | ------ | ------------- |
| `func_name` | string | TFunction |
| `p1` | any | 整数,参数1 |
| `pn` | any | 整数,参数N。 |
返回:any
### `checkGlobalCacheExpired(value)`
判断全局缓存引用是否已经过期。
| 参数 | 类型 | 说明 |
| ------- | ---- | ------------------------------------ |
| `value` | any | `getGlobalCache(...)` 取出的缓存引用 |
返回:bool
### `dbglocalcancel(id, return_value)`
注销任务。该功能可以用来终止运行的WEB任务。 其任务ID为dbglocalrunning中返回信息中的id字段以十六进制模式转换为64位整数。
| 参数 | 类型 | 说明 |
| -------------- | ---- | ----------------------------------------------------------------- |
| `id` | int | 为dbglocalrunning中返回信息中的id字段以十六进制模式转换为64位整数 |
| `return_value` | bool | object |
返回:bool
### `divMod(dividend, divisor, remainder)`
计算整数除法的整数商和余数。也就是用参数Dividend除以参数Divisor,得到的整数商存到参数Result中,把余数存到参数Remainder中
| 参数 | 类型 | 说明 |
| ----------- | ---- | ------------ |
| `dividend` | int | 整数,被除数 |
| `divisor` | int | 整数,除数 |
| `remainder` | int | 整数,余数 |
返回:float
### `eastrq(b, c, q)`
Eastrq 相关函数。
| 参数 | 类型 | 说明 |
| ---- | ----- | ---------------- |
| `b` | array | 一维数字数组类型 |
| `c` | array | 一维数字数组类型 |
| `q` | array | 二维数字数组类型 |
返回:int
### `ensureRange(amin, amax)`
这个函数可以保证返回某个区间之内的数,参数Amin和参数Amax是这个区间的上限和下限。 如果参数Avalue大于等于参数Amin并且小于等于参数Amax,则返回Avalue 如果参数Avalue大于参数Amax,则返回Amax的值 如果参数Avalue小于参数Amin,则返回Amin的值
| 参数 | 类型 | 说明 |
| ------ | ----- | ---- |
| `amin` | float | 实数 |
| `amax` | float | 实数 |
返回:float
### `exportJsonStringMbcs(data, n, return_value)`
将TSL结构数据转换为json串。和ExportJSONString不同的是,该函数不会对中文进行转码处理,保留中文原码。
| 参数 | 类型 | 说明 |
| -------------- | ------- | ----------------------------------------------------------------------------- |
| `data` | AnyType | 天软数据,任意数据类型。 |
| `n` | int | 可选参数,要保留的小数位数。为0时保留1位小数,大于16或小于0时保留全部小数位数 |
| `return_value` | string | 字符串,json串 |
返回:string
### `frameconcat(arrdic, _type)`
数据表-拼接
| 参数 | 类型 | 说明 |
| -------- | --------- | --------------------------------------------------------------- |
| `arrdic` | array | Array of number,数组的数组,需要拼接的数组集合 |
| `_type` | Usrdefine | Usrdefine,数组拼接方式,默认为0行并=0;列并=1;非完全矩阵列并=2 |
返回:array
#### 示例
```tsl
a := ones(3,3);
b := ones(2,3);
frameconcat(array(a,b));
```
### `getEigenValue(a, eigen_value)`
通过赋值得到EigenValue
| 参数 | 类型 | 说明 |
| ------------- | ----- | ---------------- |
| `a` | array | 二维数字数组类型 |
| `eigen_value` | array | 一维数字数组类型 |
返回:any
### `hJMethodPgm(call_back)`
H_J算法测试
| 参数 | 类型 | 说明 |
| ----------- | ------ | ---------------------------- |
| `call_back` | string | 字符串类型,计算目标值的回调 |
返回:array
### `inRange(amin, amax)`
判断Avalue是否在\[Amin, Amax\]范围内
| 参数 | 类型 | 说明 |
| ------ | ----- | ---- |
| `amin` | float | 实数 |
| `amax` | float | 实数 |
返回:bool
### `interestRate(nperiods, payment, present_value, future_value, payment_time)`
返回要求收益率,使得这项投资从现值PresentValue实现终值FutureValue,在共NPeriods个周期后实现。如果周期定义为一年,那么结果就是要求的年收益率。
| 参数 | 类型 | 说明 |
| --------------- | ----- | ---------------------------------------- |
| `nperiods` | int | 整数,表示还款的总期数 |
| `payment` | float | 实数,表示投资期内,每期投入值,一般为负 |
| `present_value` | float | 实数,表示贷款总额 |
| `future_value` | int | 实数,表示投资的未来值 |
| `payment_time` | int | PaymentTime决定现金流是在期初或期末发生 |
返回:float
### `invoke(obj, member_name, member_value, p1, pn)`
调用类的成员方法或对类的成员变量进行赋值操作。支持对重载方法的调用。
| 参数 | 类型 | 说明 |
| -------------- | --------- | ------------------------------------------------------- |
| `obj` | TSLObject | TSLObject,实例对象 |
| `member_name` | string | 字符串(小写),成员(方法或属性)的名称 |
| `member_value` | bool | object |
| `p1` | any | 任意值,成员属性时需要赋的值或成员方法时的第一个参数;… |
| `pn` | any | 任意值,成员方法的第n个参数 |
返回:any
## 未细分函数
### `logined()`
判定是否已经登录成功。只读属性。
返回:any
### `milliSecondSpan()`
范围生成函数相关函数。
返回:float
### `mswap(value, dim1, dim2)`
交换多维 FMArray 的两个维度。
| 参数 | 类型 | 说明 |
| ------- | ----- | -------------- |
| `value` | array | 输入 FMArray |
| `dim1` | any | 第一个维度下标 |
| `dim2` | any | 第二个维度下标 |
返回:array
## 数学函数 / 矩阵运算及分解
### `nils(length)`
生成元素为 `nil` 的一维结果。
| 参数 | 类型 | 说明 |
| -------- | ---- | -------- |
| `length` | any | 一维长度 |
返回:array
### `noTechCacheDo()`
和TechCacheDo相反的是,在NoTechCacheDo语句段中调用的所有相关计算,将均取消缓存。
返回:any
### `ones(length)`
生成元素为 `1` 的一维结果。
| 参数 | 类型 | 说明 |
| -------- | ---- | -------- |
| `length` | any | 一维长度 |
返回:array
### `outPutGrowRatio(v1, v2)`
增长率(%)
| 参数 | 类型 | 说明 |
| ---- | ----- | ------------ |
| `v1` | float | 实型,期末值 |
| `v2` | float | 实型,期初值 |
返回:float
#### 示例
```tsl
//返回13到14的增长率(%)
outPutGrowRatio(14,13);
//结果:7.69
```
### `outPutGrowRatio2(v1, v2)`
增长率(%)
| 参数 | 类型 | 说明 |
| ---- | ----- | ------------ |
| `v1` | float | 实型,期末值 |
| `v2` | float | 实型,期初值 |
返回:float
#### 示例
```tsl
//返回13到14的增长率(%)
outPutGrowRatio2(14,13);
//结果:7.69
```
### `outPutGrowValue2(v1, v2)`
增长
| 参数 | 类型 | 说明 |
| ---- | ----- | ------------ |
| `v1` | float | 实型,期末值 |
| `v2` | float | 实型,期初值 |
返回:float
#### 示例
```tsl
//返回13与14差值
outPutGrowValue2(13,14);
//结果:-1
```
### `raiseError(func_name, err_str)`
显示调试出错信息
| 参数 | 类型 | 说明 |
| ----------- | ------ | -------------------------- |
| `func_name` | string | 字符串类型,出错的函数名称 |
| `err_str` | string | 字符串类型,出错提示 |
返回:Error
### `reIndexCopy(data, index_info1, index_info1_2, index_info_n)`
ReIndexCopy和Reindex的差异:ReIndex修改原有的结果集,而ReIndexCopy不修改原结果集返回一个新结果集。
| 参数 | 类型 | 说明 |
| --------------- | ----- | -------------------- |
| `data` | array | 数组,需重构的数组; |
| `index_info1` | array | Array |
| `index_info1_2` | array | Array |
| `index_info_n` | any | Array |
返回:array
## 未细分函数
#### 示例
```tsl
实现:将指定列下标转为数组的行下标--可用于快速建立哈希表
setsysparam(pn_stock(),"SH000001");
setsysparam(pn_date(),20240822T);
t:=nday(10,'time',datetostr(sp_time()),'close',close());
return reindexcopy(t,t[:,"time"]);
```
### `reportSeriesSplit(table_name)`
报告期数据处理。注意,该函数主要用于客户端结果处理,不提供给用户程序编辑。
| 参数 | 类型 | 说明 |
| ------------ | ------ | -------------------- |
| `table_name` | string | 字符串,用户数据名称 |
返回:any
### `rotatedComponentMatrix(cm, eigen_value, eigen_vector)`
该函数已废弃
| 参数 | 类型 | 说明 |
| -------------- | ----- | -------------------------- |
| `cm` | array | 二维数字数组,相关系数矩阵 |
| `eigen_value` | array | 一维数字数组,特征根 |
| `eigen_vector` | array | 二维数字数组,特征向量 |
返回:array
#### 示例
```tsl
//设置样本矩阵
zt:=array((0.7592,1.7593,21.9279,48.5626,55.1679),
(0.0490,0.4457,2.2255,82.2658,192.4348),
(-2.2313,-1.3096,-59.8883,3.9922,-80.2419),
(0.1364,0.539,4.3910,55.1438,46.0612),
(0.7233,1.9467,15.6127,111.3018,58.3969));
z_t_s:=Standarize_II(z_t); //标准化
mt_Transposition(z_t_s,z); //转置
r:=correlationMatrix(z); //相关系数矩阵
Eigen_Jacobi(r,eigen_value,eigen_vector); //特征值&特征向量
cm:=componentMatrix(eigen_value,eigen_vector,max_eigen_value); //载荷矩阵
rotatedComponentMatrix(cm);
//结果:
```
### `sendRunningData(data, nwdow)`
直接函数相关函数。
| 参数 | 类型 | 说明 |
| ------- | ------ | -------------------------------- |
| `data` | any | 要发送到运行结果窗口的数据 |
| `nwdow` | string | 结果窗口名称;省略时在原窗口输出 |
返回:any
## 错误处理
### `setUid(uid)`
设置当前的用户为指定的用户,需要有特殊权限,如果成功则返回真。
| 参数 | 类型 | 说明 |
| ----- | ------ | ---------------- |
| `uid` | string | 字符串,用户名。 |
返回:bool
### `techCacheDo()`
TechCacheDo打开技术类缓存 相关函数。
返回:any
### `user(name)`
执行指定用户的函数,只有当你已经得到该用户的授权才可以 例如:如果已经被用户user1授权,且user1拥有函数sample,那么我们可以用user('user1').sample来执行user1的sample函数。
| 参数 | 类型 | 说明 |
| ------ | ------ | ---------------- |
| `name` | string | 字符串,用户名。 |
返回:any
+18
View File
@@ -0,0 +1,18 @@
# 运行时
函数数:386
| 叶子 | 文件 | 函数数 |
| --- | --- | ---: |
| 运行时 / 数组 | [运行时 / 数组](array.md) | 67 |
| 运行时 / 数据库事务 | [运行时 / 数据库事务](db_transaction.md) | 3 |
| 运行时 / 编码与压缩 | [运行时 / 编码与压缩](encoding_compress.md) | 15 |
| 运行时 / 文件与目录 | [运行时 / 文件与目录](file_dir.md) | 26 |
| 运行时 / 通用 | [运行时 / 通用](general.md) | 30 |
| 运行时 / INI配置 | [运行时 / INI配置](ini_config.md) | 24 |
| 运行时 / 数学与统计 | [运行时 / 数学与统计](math_stats.md) | 127 |
| 运行时 / 其他 | [运行时 / 其他](misc.md) | 2 |
| 运行时 / 网络与HTTP | [运行时 / 网络与HTTP](network_http.md) | 17 |
| 运行时 / 字符串 | [运行时 / 字符串](string.md) | 42 |
| 运行时 / 系统与进程 | [运行时 / 系统与进程](system_process.md) | 27 |
| 运行时 / 类型转换 | [运行时 / 类型转换](type_convert.md) | 6 |
@@ -0,0 +1,321 @@
# 运行时 / INI配置
### `iniDeleteKey(alias, file_name, section, ident)`
删除INI中的标识符。
| 参数 | 类型 | 说明 |
| ----------- | ------ | ----------------------------------- |
| `alias` | string | 字符串类型。目录名称 |
| `file_name` | string | 字符串类型。INI文件名称 |
| `section` | string | 字符串类型。INI文件中的节名称 |
| `ident` | string | 字符串类型。INI文件中要删除的键名称 |
返回:any
### `iniEraseSection(alias, file_name, section)`
删除INI中的段。
| 参数 | 类型 | 说明 |
| ----------- | ------ | ----------------------------- |
| `alias` | string | 字符串类型,目录名称; |
| `file_name` | string | 字符串类型,INI文件名称; |
| `section` | string | 字符串类型,INI文件的节名称; |
返回:any
### `iniReadBinaryStream(alias, file_name, section, ident, _type)`
从INI中读stream类型内容,读取后的内容支持数组,字符串,二进制流以及stream类型进行输出
| 参数 | 类型 | 说明 |
| ----------- | ------ | --------------------------------- |
| `alias` | string | 字符串类型。参考目录别名。 |
| `file_name` | string | 字符串类型。INI文件名称。 |
| `section` | string | 字符串类型。INI文件中的节点名称。 |
| `ident` | string | 字符串类型。INI文件中的键名称。 |
| `_type` | string | TStream |
返回:string
### `iniReadBool(alias, file_name, section, ident, _default)`
从INI中读Bool类型。
| 参数 | 类型 | 说明 |
| ----------- | ------ | --------------------------- |
| `alias` | string | 字符串类型。目录名称 |
| `file_name` | bool | 字符串类型。INI文件名称 |
| `section` | string | 字符串类型。INI文件的节名称 |
| `ident` | string | 字符串类型。INI文件的键名称 |
| `_default` | string | object |
返回:bool
### `iniReadDate(alias, file_name, section, ident, _default)`
从INI中读日期类型。 老版客户端中,支持读yyyy/mm/dd的日期格式,新版本客户端支持yyyy-mm-dd的日期格式,与其它函数日期格式表现一致。
| 参数 | 类型 | 说明 |
| ----------- | -------- | ----------------------------------------------------- |
| `alias` | string | 字符串类型。目录名称 |
| `file_name` | datetime | 字符串类型。INI文件名称 |
| `section` | any | 字符串类型。INI文件的节名称 |
| `ident` | any | 字符串类型。INI文件的键名称 |
| `_default` | any | 日期类型。获取失败时返回的替代值,默认的INI文件的键值 |
返回:datetime
### `iniReadDateTime(alias, file_name, section, ident, _default)`
从INI中读日期时间类型。 老版客户端中,支持读yyyy/mm/dd hh:nn:ss的日期格式,新版本客户端支持yyyy-mm-dd hh:nn:ss的日期格式,与其它函数日期格式表现一致。
| 参数 | 类型 | 说明 |
| ----------- | -------- | --------------------------------- |
| `alias` | string | 字符串类型。目录名称 |
| `file_name` | datetime | 字符串类型。INI文件名称 |
| `section` | string | 字符串类型。INI文件的节名称 |
| `ident` | string | 字符串类型。INI文件的键名称 |
| `_default` | string | 日期时间类型。默认的INI文件的键值 |
返回:datetime
### `iniReadFloat(alias, file_name, section, ident, _default)`
从INI中读浮点类型。
| 参数 | 类型 | 说明 |
| ----------- | ------ | ----------------------------- |
| `alias` | string | 字符串类型。目录名称 |
| `file_name` | float | 字符串类型。INI文件名称 |
| `section` | string | 字符串类型。INI文件的节名称 |
| `ident` | string | 字符串类型。INI文件的键名称 |
| `_default` | string | 浮点类型。默认的INI文件的键值 |
返回:float
### `iniReadInteger(alias, file_name, section, ident, _default)`
从INI中读整数类型。
| 参数 | 类型 | 说明 |
| ----------- | ------ | ----------------------------- |
| `alias` | string | 字符串类型。目录名称 |
| `file_name` | int | 字符串类型。INI文件名称 |
| `section` | string | 字符串类型。INI文件的节名称 |
| `ident` | string | 字符串类型。INI文件的键名称 |
| `_default` | string | 整数类型。默认的INI文件的键值 |
返回:int
### `iniReadSection(alias, file_name, section)`
从INI中读出一个节点中所有键名称。
| 参数 | 类型 | 说明 |
| ----------- | ------ | --------------------------- |
| `alias` | string | 字符串类型。目录名称 |
| `file_name` | string | 字符串类型。INI文件名称 |
| `section` | string | 字符串类型。INI文件的节名称 |
返回:array
### `iniReadSections(alias, file_name)`
从INI中读出所有的节名称。
| 参数 | 类型 | 说明 |
| ----------- | ------ | ----------------------- |
| `alias` | string | 字符串类型。目录名称 |
| `file_name` | string | 字符串类型。INI文件名称 |
返回:array
### `iniReadSectionsw(alias, file_name)`
从INI中读出所有的节名称,其中,名称字符串为宽字节字符串,IniReadSections返回的名称字符串为多字节字符串。
| 参数 | 类型 | 说明 |
| ----------- | ------ | ----------------------- |
| `alias` | string | 字符串类型。目录名称 |
| `file_name` | string | 字符串类型。INI文件名称 |
返回:array
### `iniReadSectionValues(alias, file_name, section)`
从INI中读指定节所有的键的值。
| 参数 | 类型 | 说明 |
| ----------- | ------ | --------------------------- |
| `alias` | string | 字符串类型。目录名称 |
| `file_name` | string | 字符串类型。INI文件名称 |
| `section` | string | 字符串类型。INI文件的节名称 |
返回:array
### `iniReadString(alias, file_name, section, ident, _default)`
从INI中读字符类型。
| 参数 | 类型 | 说明 |
| ----------- | ------ | ----------------------------- |
| `alias` | string | 字符串类型。目录名称 |
| `file_name` | string | 字符串类型。INI文件的名称 |
| `section` | string | 字符串类型。InI文件的节名称 |
| `ident` | string | 字符串类型。INI文件的键名称 |
| `_default` | string | 字符串类型。INI文件默认的键值 |
返回:string
### `iniReadTime(alias, file_name, section, ident, _default)`
从INI中读时间类型。
| 参数 | 类型 | 说明 |
| ----------- | ------ | --------------------------- |
| `alias` | string | 字符串类型。目录名称 |
| `file_name` | TTime | 字符串类型。INI文件名称 |
| `section` | string | 字符串类型。INI文件的节名称 |
| `ident` | string | 字符串类型。INI文件的键名称 |
| `_default` | string | 时间类型。INI文件默认的键值 |
返回:TTime
### `iniSectionExists(alias, file_name, section)`
判断INI中的节名称是否存在。
| 参数 | 类型 | 说明 |
| ----------- | ------ | --------------------------- |
| `alias` | string | 字符串类型。目录名称 |
| `file_name` | string | 字符串类型。INI文件名称 |
| `section` | string | 字符串类型。INI文件的节名称 |
返回:bool
### `iniValueExists(alias, file_name, section, ident)`
判断INI中的指定的节名称下的键名称是否有值。
| 参数 | 类型 | 说明 |
| ----------- | ------ | --------------------------- |
| `alias` | string | 字符串类型。目录名称 |
| `file_name` | string | 字符串类型。INI文件名称 |
| `section` | string | 字符串类型。INI文件的节名称 |
| `ident` | string | 字符串类型。INI文件的键名称 |
返回:bool
### `iniWriteBinaryStream(alias, file_name, section, ident, value)`
将数据转成数据流写入INI文件中。支持写入数组,字符串,binary,stream类型等。如果不存在FileName,或者不存在Section,或者不存在Ident,则其会根据输入的FileNameSectionIdent创建对应的INI文件,INI文件的节名称,INI文件的键名称,并将字节流Value写入到INI文件指定的键
| 参数 | 类型 | 说明 |
| ----------- | ------ | ------------------------------- |
| `alias` | string | 字符串类型。参考目录别名。 |
| `file_name` | string | 字符串类型。INI文件名称。 |
| `section` | string | 字符串类型。INI文件中的节名称。 |
| `ident` | string | 字符串类型。INI文件中的键名称。 |
| `value` | string | Integer\\ |
返回:int
### `iniWriteBool(alias, file_name, section, ident, value)`
将BOOL值写入INI。如果不存在FileName,或者不存在Section,或者不存在Ident,则其会根据输入的FileNameSectionIdent创建对应的INI文件,INI文件的节名称,INI文件的键名称,并将Bool值Value写入到INI文件指定的键
| 参数 | 类型 | 说明 |
| ----------- | ------ | --------------------------- |
| `alias` | string | 字符串类型。目录名称 |
| `file_name` | string | 字符串类型。INI文件名称 |
| `section` | string | 字符串类型。INI文件的节名称 |
| `ident` | string | 字符串类型。INI文件的键名称 |
| `value` | bool | object |
返回:string
### `iniWriteDate(alias, file_name, section, ident, value)`
将日期值写入INI。如果不存在FileName,或者不存在Section,或者不存在Ident,则其会根据输入的FileNameSectionIdent创建对应的INI文件,INI文件的节名称,INI文件的键名称,并将日期值Value写入到INI文件指定的键
| 参数 | 类型 | 说明 |
| ----------- | -------- | --------------------------- |
| `alias` | string | 字符串类型。目录名称 |
| `file_name` | string | 字符串类型。INI文件名称 |
| `section` | string | 字符串类型。INI文件的节名称 |
| `ident` | string | 字符串类型。INI文件的键名称 |
| `value` | datetime | 日期类型。要写入的日期值 |
返回:string
### `iniWriteDateTime(alias, file_name, section, ident, value)`
将日期时间值写入INI。如果不存在FileName,或者不存在Section,或者不存在Ident,则其会根据输入的FileNameSectionIdent创建对应的INI文件,INI文件的节名称,INI文件的键名称,并将日期时间值Value写入到INI文件指定的键
| 参数 | 类型 | 说明 |
| ----------- | -------- | -------------------------------- |
| `alias` | string | 字符串类型。目录名称 |
| `file_name` | string | 字符串类型。INI文件名称 |
| `section` | string | 字符串类型。INI文件的节名称 |
| `ident` | string | 字符串类型。INI文件的键名称 |
| `value` | datetime | 日期时间类型。要写入的日期时间值 |
返回:string
### `iniWriteFloat(alias, file_name, section, ident, value)`
将浮点值写入INI。如果不存在FileName,或者不存在Section,或者不存在Ident,则其会根据输入的FileNameSectionIdent创建对应的INI文件,INI文件的节名称,INI文件的键名称,并将浮点值Value写入到INI文件指定的键
| 参数 | 类型 | 说明 |
| ----------- | ------ | --------------------------- |
| `alias` | string | 字符串类型。目录名称 |
| `file_name` | string | 字符串类型。INI文件名称 |
| `section` | string | 字符串类型。INI文件的节名称 |
| `ident` | string | 字符串类型。INI文件的键名称 |
| `value` | float | 浮点类型。要写入的浮点数值 |
返回:string
### `iniWriteInteger(alias, file_name, section, ident, value)`
将整数值写入INI。如果不存在FileName,或者不存在Section,或者不存在Ident,则其会根据输入的FileNameSectionIdent创建对应的INI文件,INI文件的节名称,INI文件的键名称,并将整数值Value写入到INI文件指定的键
| 参数 | 类型 | 说明 |
| ----------- | ------ | --------------------------- |
| `alias` | string | 字符串类型。目录名称 |
| `file_name` | string | 字符串类型。INI文件名称 |
| `section` | string | 字符串类型。INI文件的节名称 |
| `ident` | string | 字符串类型。INI文件的键名称 |
| `value` | float | 整数类型。要写入的整数值 |
返回:string
### `iniWriteString(alias, file_name, section, ident, value)`
将字符串值写入INI。如果不存在FileName,或者不存在Section,或者不存在Ident,则其会根据输入的FileNameSectionIdent创建对应的INI文件,INI文件的节名称,INI文件的键名称,并将字符串Value写入到INI文件指定的键
| 参数 | 类型 | 说明 |
| ----------- | ------ | --------------------------- |
| `alias` | string | 字符串类型。目录名称 |
| `file_name` | string | 字符串类型。INI文件名称 |
| `section` | string | 字符串类型。INI文件的节名称 |
| `ident` | string | 字符串类型。INI文件的键名称 |
| `value` | string | 字符串类型。要写入的字符串 |
返回:string
### `iniWriteTime(alias, file_name, section, ident, value)`
将时间值写入INI。如果不存在FileName,或者不存在Section,或者不存在Ident,则其会根据输入的FileNameSectionIdent创建对应的INI文件,INI文件的节名称,INI文件的键名称,并将时间值Value写入到INI文件指定的键
| 参数 | 类型 | 说明 |
| ----------- | -------- | --------------------------- |
| `alias` | string | 字符串类型。目录名称 |
| `file_name` | string | 字符串类型。INI文件名称 |
| `section` | string | 字符串类型。INI文件的节名称 |
| `ident` | string | 字符串类型。INI文件的键名称 |
| `value` | datetime | 时间类型。要写入的时间值 |
返回:string
File diff suppressed because it is too large Load Diff
+21
View File
@@ -0,0 +1,21 @@
# 运行时 / 其他
### `isValidDateDay(a_year)`
判断参数指定的年以及此年的第ADayOfYear天是否是有效日期。返回值类型是布尔型真假值 所谓有效,意味着: 年Ayear介于1和9999之间 ADayOfYear介于1和指定Ayear年的最大天数
| 参数 | 类型 | 说明 |
| -------- | ---- | --------------------------------------------------------------------- |
| `a_year` | int | 整数,年,指定的年份;ADayOfYearASecond:整数,表示在Ayear年份的第几天 |
返回:bool
### `recodeSecond(a_value)`
将参数ASecond指定的秒数(0至59)替换掉参数AValue中的相应的秒数信息,得到的日期时间类型返回
| 参数 | 类型 | 说明 |
| --------- | -------- | ------------------------------------------------- |
| `a_value` | datetime | 日期时间类型;AMinute:整数,秒数,定义域\[059\] |
返回:datetime
@@ -0,0 +1,216 @@
# 运行时 / 网络与HTTP
### `appendHttpHeader(session, header)`
向指定会话中添加请求头信息
| 参数 | 类型 | 说明 |
| --------- | ------ | ------------------ |
| `session` | any | Session ID |
| `header` | string | 要添加的请求头信息 |
返回:any
### `clearHttpHeader(session)`
清除会话中的请求头信息
| 参数 | 类型 | 说明 |
| --------- | ---- | -------------------------------------------------- |
| `session` | any | 可选参数,整数类型,session ID,缺省时指当前会话。 |
返回:any
### `createhttpsession(return_value)`
创建一个http Session对象,并返回会话ID,即Session id。仅新一代TSL语言支持该函数。
| 参数 | 类型 | 说明 |
| -------------- | ---- | -------------- |
| `return_value` | int | 返回session ID |
返回:intptr
### `destroyHttpSession(session, return_value)`
销毁一个Http Session对象,并返回销毁结果,销毁成功返回True。 仅新一代TSL语言支持该函数。
| 参数 | 类型 | 说明 |
| -------------- | ---- | -------------------------------------------------- |
| `session` | int | 可选参数,整数类型,Session ID,缺省时指当前会话。 |
| `return_value` | bool | object |
返回:bool
### `getHttp(session, url, time_out, value, code)`
网络访问以及相关函数相关函数。
| 参数 | 类型 | 说明 |
| ---------- | ------ | ---- |
| `session` | int | int |
| `url` | string | int |
| `time_out` | int | |
| `value` | string | |
| `code` | int | |
返回:bool
### `getHttpContent(session, frompos, return_value)`
获得HTTP返回的具体内容,可以从frompos开始取,缺省是取全部。 这个可以方便在progress回调函数中实现文件的临时存贮,亦可以动态打印内容。 仅新一代TSL语言支持该函数。
| 参数 | 类型 | 说明 |
| -------------- | ------ | --------------------------------------------------- |
| `session` | intptr | 指定session ID |
| `frompos` | int | 可选参数,指定开始位置,位置从1开始,缺省时指取全部 |
| `return_value` | int | 获取到的具体内容 |
返回:string
### `getHttpCookies(session)`
获取指定会话、来自服务器设置的Cookies信息
| 参数 | 类型 | 说明 |
| --------- | ---- | ---------- |
| `session` | any | Session ID |
返回:any
### `getHttpResponseHeader(session, return_value)`
获得HTTP返回的头信息,可以在header回调中看全部合成的header,也可以从已经完成会话的时候获得会话的头部信息。
| 参数 | 类型 | 说明 |
| -------------- | ------ | --------------------------------------------------------------------------- |
| `session` | int | 可选参数,指定session ID。缺省时指当前会话。仅新一代TSL语言支持该可选参数。 |
| `return_value` | string | 当前下载到的完整的头部信息 |
返回:string
### `internetRequest(session, url, refer, header, post_data, user_name, pass_word, result_type, response_code, time_out)`
发送Internet访问请求,主要用于Web建立网站。
| 参数 | 类型 | 说明 |
| --------------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `session` | int | 可选参数,整数类型,session ID,缺省时指当前会话。多次访问且需要使用同一条链路时,可指定为同个session ID。;注:旧版本TSL语言中,该参数含义为连接模式:0-微软WININET模式;1-TCP模式。 |
| `url` | string | 字符串类型,需要获取的URL串。如:`http://www.tinysoft.com.cn` |
| `refer` | int | 引用者。 |
| `header` | string | 发送请求的Http请求头。 |
| `post_data` | int | 发送的数据。 |
| `user_name` | int | 用户名。 |
| `pass_word` | string | 密码。 |
| `result_type` | string | 非0则Result返回Binary类型,为0则Result返回字符串类型。 |
| `response_code` | string | 存放返回的HTTP代码。例如,当正确的时候返回为200。 |
| `time_out` | string | 获取URL等待的毫秒数。 |
返回:bool
### `postHttp(session, url, content, time_out, value, code)`
以POST方式从指定的HTTP URL获得内容。
| 参数 | 类型 | 说明 |
| ---------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `session` | int | 可选参数,整数类型,session ID,缺省时指当前会话。多次访问且需要使用同一条链路时,可指定为同个session ID。;注:旧版本TSL语言中,该参数含义为连接模式:0-微软WININET模式;1-TCP模式。 |
| `url` | string | 字符串类型,需要获取的URL串。如:`http://www.tinysoft.com.cn` |
| `content` | string | 二进制或字符串类型;要发送的数据。 |
| `time_out` | int | 获取URL等待的毫秒数。 |
| `value` | string | 存放返回的内容。 |
| `code` | int | 存放返回的HTTP代码。例如,当正确的时候返回为200。 |
返回:bool
### `setHttpAuth(session, user_name, pass_word, _type)`
设置指定会话中认证信息
| 参数 | 类型 | 说明 |
| ----------- | ------ | ------------------------------------------------------------ |
| `session` | any | Session ID |
| `user_name` | string | 用户名 |
| `pass_word` | string | 密码 |
| `_type` | any | 可选参数,认证信息类型;可多次调用以设置不同类型的认证信息: |
返回:any
### `setHttpCallBack(session, callback, t, return_value)`
设置http回调,缺省回调模式是progress模式,可以通过t设定为"header"设置头部回调函数。仅新一代TSL语言支持该函数。
| 参数 | 类型 | 说明 |
| -------------- | ---------------------------------------------------------------------------------- | ------------------------------------------------------------ |
| `session` | int | session ID |
| `callback` | TFUNCTION | 函数对象,回调函数。可通过findfunction(functionname)方式获取 |
| `t` | string | 可选参数,设置进度回调或头部模式。 |
| `return_value` | 缺省模式,Progress模式指在HTTP请求\|响应传输过程中,实时追踪数据传输进度的回调机制 | 无 |
返回:回调函数的返回值为0表示继续,非0则结束请求
### `setHttpCookies(session, cookies)`
设置指定会话中Cookies信息
| 参数 | 类型 | 说明 |
| --------- | ------ | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| `session` | any | Session ID |
| `cookies` | string | 要设置的Cookies值信息,多个Cookie以分号分隔,如SESSIONID=ABC123;THEME=DARK;一般无需设置,同一会话中发送的多次请求会自动携带服务器设置的Cookies |
返回:any
### `setHttpMode(session, mode, return_value)`
设置chunked模式(分段模式),主要用于大模型类的一个请求分段输出模式,支持类似于大模型一样按单词吐词输出。仅新一代TSL语言支持该函数。
| 参数 | 类型 | 说明 |
| -------------- | ---- | -------------------- |
| `session` | any | 指定session ID |
| `mode` | any | 输出模式,取值如下: |
| `return_value` | any | 无 |
返回:any
### `setHttpProxy(session, proxy_addr, proxy_type)`
设置指定会话中代理信息
| 参数 | 类型 | 说明 |
| ------------ | ------ | -------------------- |
| `session` | any | Session ID |
| `proxy_addr` | string | 代理地址 |
| `proxy_type` | any | 可选参数,代理类型: |
返回:any
### `setHttpVerifySsl(session, verify)`
设置指定会话是否校验服务器证书
| 参数 | 类型 | 说明 |
| --------- | ---- | ---------- |
| `session` | any | Session ID |
| `verify` | bool | object |
返回:any
## URL 内容函数
### `urlToText(a_src)`
将URL标准格式的串转化为文本字符串
| 参数 | 类型 | 说明 |
| --- | --- | --- |
| `a_src` | string | 字符串类型 |
返回:string
#### 示例
```tsl
a_src := "%23abcd%20%2010";
return urlToText(a_src);
// 结果:#abcd 10
```
+472
View File
@@ -0,0 +1,472 @@
# 运行时 / 字符串
### `adjustLineBreaks(s, style)`
字符串相关函数。
| 参数 | 类型 | 说明 |
| ------- | ------------------- | ---- |
| `s` | string | |
| `style` | TTextLineBreakStyle | |
返回:string
### `ansiDequotedStr(s, aquote)`
字符串相关函数。
| 参数 | 类型 | 说明 |
| -------- | ------ | ---- |
| `s` | string | |
| `aquote` | string | |
返回:string
### `ansiIndexStr(a_text, a_values)`
判定指定的字符串Atext可以匹配到的第一个由参数Avalues指定的字符串数组中元素索引号,就是数组的第几个元素(从0开始计算)。返回整数,如果没有找到匹配的字符串,就返回-1。与AnsiEndsText函数不同,字符串的匹配是大小写敏感的 注意:这种判定是基于大小写敏感
| 参数 | 类型 | 说明 |
| ---------- | ------ | -------------------------- |
| `a_text` | string | 字符串类型,需匹配、查找串 |
| `a_values` | array | 字符串型数组,匹配串数组 |
返回:int
### `ansiIndexText(a_text, a_values)`
判定指定的字符串Atext可以匹配到的第一个由参数Avalues指定的字符串数组中元素索引号,就是数组的第几个元素(从0开始计算)。返回整数,如果没有找到匹配的字符串,就返回-1 注意:这种判定是基于大小写不敏感
| 参数 | 类型 | 说明 |
| ---------- | ------ | -------------------------- |
| `a_text` | string | 字符串类型,需匹配、查找串 |
| `a_values` | array | 字符串型数组,匹配串数组 |
返回:int
### `ansiMatchStr(a_text, avalues)`
判定指定的字符串Atext是否可以匹配由参数Avalues指定的字符串数组中的某个字符串。返回布尔型真假值,如果Atext匹配到了Avalues数组中的某个字符串,就返回真,否则返回假。与AnsiMatchText函数不同,字符串的匹配是大小写敏感的 注意:这种判定是基于大小写敏感
| 参数 | 类型 | 说明 |
| --------- | ------ | ---------------------- |
| `a_text` | string | 字符串类型,子串 |
| `avalues` | array | 字符串型数组,源串数组 |
返回:bool
### `ansiMatchText(a_text, avalues)`
判定指定的字符串Atext是否可以完全匹配由参数Avalues指定的字符串数组中的某个字符串。返回布尔型真假值,如果Atext匹配到了Avalues数组中的某个字符串,就返回真,否则返回假。 注意:这种判定是基于大小写不敏感。
| 参数 | 类型 | 说明 |
| --------- | ------ | ---------------------- |
| `a_text` | string | 字符串类型,子串 |
| `avalues` | array | 字符串型数组,源串数组 |
返回:bool
### `ansiQuotedStr(s, quote)`
字符串相关函数。
| 参数 | 类型 | 说明 |
| ------- | ------ | ---- |
| `s` | string | |
| `quote` | string | |
返回:string
### `ansiStr2Array(value, aps)`
常用字符串函数相关函数。
| 参数 | 类型 | 说明 |
| ------- | ------ | ---- |
| `value` | string | |
| `aps` | string | |
返回:array
### `boolToStr(s)`
将布尔型转换成字符串类型并返回。参数UseBoolStrs一般为假,如果B为真,函数返回'-1',如果B为假,返回'0'。若想返回’True’与’False’的结果可用BoolToStr2实现。
| 参数 | 类型 | 说明 |
| ---- | ---- | ---------------------------------- |
| `s` | bool | 数字字符串Default:布尔型,一般为假 |
返回:string
### `containsText(a_text, a_sub_text)`
字符串相关函数。
| 参数 | 类型 | 说明 |
| ------------ | ------ | ---- |
| `a_text` | string | |
| `a_sub_text` | string | |
返回:bool
### `dateTimeToString(format, date_time)`
根据参数Format给定的格式串将参数DateTime转换成字符串类型存到参数Result中,其中格式串的使用参照FormaTDateTime函数
| 参数 | 类型 | 说明 |
| ----------- | -------- | ------------------------------- |
| `format` | any | 字符串,格式串 |
| `date_time` | datetime | TDateTime类型,需转换的日期时间 |
返回:string
### `eval(exp)`
表达式求值。返回,表达式的值。字符串表达式中支持return。TSL.EXE支持 tsl -eval "echo 100"的模式直接调用TSL语句。 表达式允许在跨函数中传导引用参数和变量
| 参数 | 类型 | 说明 |
| ----- | ------------ | ----------------------------------------------------------------------------- |
| `exp` | TExpression> | 表达式类型,要计算的表达式。函数表达式直接执行,字符串表达式需在字符串前加&。 |
返回:any
### `fHeader()`
字符串,TS-OPS服务注册时需要指定的头部信息,比如TS-OPS-CALL等。 类型:读写
返回:string
### `fUrl()`
字符串,TS-OPS服务注册地址 类型:读写
返回:string
### `importjsonstring(json)`
将json串转化为天软数据类型。 对大无符号数据会自动转换为长整型(INT64) 注意:输入的字符串应是ASCII编码的。因为JSON标准使用UTF8编码,所以请先使用天软Utf8ToAnsi将UTF8编码的字符串缓缓为ASCII编码。可参考下面的例程。
| 参数 | 类型 | 说明 |
| ------ | ------ | ---------------- |
| `json` | string | 字符串,json串。 |
返回:any
### `leftStr(text, num_chars)`
返回字符串从开始向左数Num_Chars个字符组成的字符串,支持多字节语言,一个汉字当成一个字符。
| 参数 | 类型 | 说明 |
| ----------- | ------ | -------- |
| `text` | string | 字符串 |
| `num_chars` | int | 字符个数 |
返回:string
### `ord(value)`
如果是STRING类型返回value\[1\]的ASCII序号,就是value字符串的第一个字符的ASCII序号,如果为WIDESTRING,则为UNICODE码。
| 参数 | 类型 | 说明 |
| ------- | ------ | ------------ |
| `value` | string | WideString\\ |
返回:int
### `reversebString(s)`
字符串相关函数。
| 参数 | 类型 | 说明 |
| ---- | ------ | ---- |
| `s` | string | |
返回:string
## 发音相关函数
### `rightStr(text, num_chars)`
前N个字符;基于所指定的字符数返回文本字符串中的最后一个或后几个字符;
| 参数 | 类型 | 说明 |
| ----------- | ------ | -------- |
| `text` | string | 字符串 |
| `num_chars` | int | 字符个数 |
返回:string
### `setChar(s, index, ch)`
设置字符串/二进制流中相应位置的字符。Char为0-255之间的整数类型
| 参数 | 类型 | 说明 |
| ------- | ------ | ------------------- |
| `s` | string | 字符串/二进制 |
| `index` | any | 整数 |
| `ch` | string | 0-225之间的整数类型 |
返回:string
### `setLikeFlag(flag, return_value)`
设置Like操作符号的正则表达式默认控制状态。默认值为1。
| 参数 | 类型 | 说明 |
| -------------- | ---- | ------------------------------------------------------------------------------------- |
| `flag` | int | 正则表达式控制模式,取值如下: 若同时设置多个模式,则设置参数值为其对应模式值之和即可 |
| `return_value` | int | 匹配成功则返回真,否则返回假 |
返回:bool
### `soundexWord(a_text)`
发音相关函数相关函数。
| 参数 | 类型 | 说明 |
| -------- | ------ | ---- |
| `a_text` | string | |
返回:int
### `str2Array(value, aps)`
字符串相关函数。
| 参数 | 类型 | 说明 |
| ------- | ------ | ---- |
| `value` | string | |
| `aps` | string | |
返回:array
### `string(value)`
将数据转换为字符串。
| 参数 | 类型 | 说明 |
| ------- | ------ | -------- |
| `value` | string | 输入数据 |
返回:string
### `strSubscriptTableToNormal(t, fn)`
字符串下标数组-->索引下标数组。
| 参数 | 类型 | 说明 |
| ---- | ------ | ---------------------------------------- |
| `t` | array | 二维数组,数据 |
| `fn` | string | 字符串或数值,行标变成数据之后使用的列名 |
返回:array
### `strToBool(s)`
如果S为'0',返回假,如果是非0的数字串,则返回真
| 参数 | 类型 | 说明 |
| ---- | ------ | ---------- |
| `s` | string | 数字字符串 |
返回:bool
### `strToCurr(s)`
将数字字符串S转换成实数返回,字符串中不允许有千分号,最大有效小数位为4位,超过四位小数的处理在不同的版本处理可能存在不一致的地方。
| 参数 | 类型 | 说明 |
| ---- | ------ | ------ |
| `s` | string | 字符串 |
返回:float
### `strToDate(s)`
将字符串S转换成TDateTime类型的日期
| 参数 | 类型 | 说明 |
| ---- | ------ | ---------------------------------------- |
| `s` | string | 字符串,日期的字符串类型,如"2014-01-17" |
返回:datetime
### `strToDateTime(s)`
将字符串S转换成TDateTime类型的日期和时间
| 参数 | 类型 | 说明 |
| ---- | ------ | ----------------------------------------------------- |
| `s` | string | 字符串,日期时间的字符串类型,如"2014-01-17 10:00:00" |
返回:datetime
### `strToFloat(s)`
将数字字符串S转换成实数返回,字符串中不允许有千分号
| 参数 | 类型 | 说明 |
| ---- | ------ | ------ |
| `s` | string | 字符串 |
返回:float
### `strToInt(s)`
将字符串转换为整数。 支持各种进制格式字符串的转换(如二进制、十六进制等)。若只转换十进制格式字符串,可使用函数FAQ:DecToInt
| 参数 | 类型 | 说明 |
| ---- | ------ | ------------------------ |
| `s` | string | 字符串。需转换的字符串。 |
返回:int
### `strToInt32(s)`
将字符串转换为32位整数。 支持各种进制格式字符串的转换(如二进制、十六进制等)。若只转换十进制格式字符串,可使用函数FAQ:DecToInt32
| 参数 | 类型 | 说明 |
| ---- | ------ | ------------------------ |
| `s` | string | 字符串。需转换的字符串。 |
返回:int
### `strToInt64(s)`
将字符串转换为64位整数。 支持各种进制格式字符串的转换(如二进制、十六进制等)。若只转换十进制格式字符串,可使用函数FAQ:DecToInt64
| 参数 | 类型 | 说明 |
| ---- | ------ | ------------------------ |
| `s` | string | 字符串。需转换的字符串。 |
返回:int
### `strToTime(s)`
将字符串S转换成TDateTime类型的时间
| 参数 | 类型 | 说明 |
| ---- | ------ | -------------------------------------- |
| `s` | string | 字符串,时间的字符串类型,如"15:20:34" |
返回:datetime
### `tryStrToTime(s)`
将字符串S转换成TDateTime类型的时间并存到参数Value中。如果转换成功,则返回真,否则返回假
| 参数 | 类型 | 说明 |
| ---- | ------ | ----------------------------------------------------------------------- |
| `s` | string | 字符串,日期的字符串类型,如"2014-01-17"Default:TDateTime类型,默认值 |
返回:bool
### `unUnicodeEsc2(s)`
字符串相关函数。
| 参数 | 类型 | 说明 |
| ---- | ------ | ---- |
| `s` | string | |
返回:string
### `unUnicodeEsc2W(s)`
字符串相关函数。
| 参数 | 类型 | 说明 |
| ---- | ------ | ---- |
| `s` | string | |
返回:string
### `writeFile(data_type, alias, file_name, pos, length, data)`
将数据写到本地文件。文件格式可以是字符流、整数流、实数流、字节流等。 多个线程同时写入时无需加锁等操作,仅需将位置设置为-1则可保障追加模式,如果调用失败,可检测返回值为字符串后然后重试即可。(当多线程尝试打开同一个文件写入时会返回错误)
| 参数 | 类型 | 说明 |
| ----------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `data_type` | int | 整数类型。参考文件读写类型函数。 |
| `alias` | string | 字符串类型。参考目录别名。 |
| `file_name` | int | 字符串类型。文件名称。 |
| `pos` | int | 整数类型。写文件的偏移位置,执行结束后将返回新的位置。 如果设为-1,则每次导出到文件的末尾(不会覆盖已有的数据)。 如果设为0,则从文件第一个位置开始导出(会覆盖掉原有位置的数据)。 如果设为1,则从文件的第二个位置开始导出,同0会覆盖,2,3,…依此类推。 如果设为-2,-3-4….,则如同设为0的效果。 |
| `length` | any | 整数类型。写入的数据长度。 |
| `data` | string | 写入的数据。如果文件类型不是rwRaw或者rwBinary则Data为一个指定类型的数组,否则,为需要写入的字符串。 |
返回:string
## 字符串与格式转换函数
### `floatToStrEx(r, n)`
浮点->字符串
| 参数 | 类型 | 说明 |
| --- | --- | --- |
| `r` | real | 实数 |
| `n` | integer | 整型数据,保留的小数位数 |
返回:string
#### 示例
```tsl
return floatToStrEx (12.6578, 2);
// 结果:’ 12.66
```
### `textToHtml(src)`
将字符串转化为HTML标准格式的串
| 参数 | 类型 | 说明 |
| --- | --- | --- |
| `src` | string | 字符串类型 |
返回:string
#### 示例
```tsl
src := "The First LETTER won\'t be replaced by \'one\', but the Second letter will.";
return textToHtml(src);
// 结果:
The First LETTER won't be replaced by 'one', but the Second letter will.
```
### `textToUrl(a_src)`
将字符串转化为URL标准格式的串
| 参数 | 类型 | 说明 |
| --- | --- | --- |
| `a_src` | string | 字符串类型 |
返回:string
#### 示例
```tsl
a_src := "#abcd 10";
return textToUrl(a_src);
// 结果:%23abcd%20%2010
```
### `htmlToText(src)`
将HTML标准格式的串转化为文本字符串
| 参数 | 类型 | 说明 |
| --- | --- | --- |
| `src` | string | 字符串类型 |
返回:string
#### 示例
```tsl
Src := "The First LETTER won't be replaced by 'one', but the Second letter will.";
return htmlToText(src);
// 结果:The First LETTER won't be replaced by 'one', but the Second letter will.
```
@@ -0,0 +1,312 @@
# 运行时 / 系统与进程
### `sysdbfread(alias, file_name, value, is_col_info)`
读取本地DBF格式数据文件的内容,或者读取本地DBF格式数据文件的结构定义。
| 参数 | 类型 | 说明 |
| ------------- | ------ | ---------------------- |
| `alias` | string | 字符串类型,目录别名。 |
| `file_name` | bool | 字符串类型,文件名称。 |
| `value` | string | object |
| `is_col_info` | bool | object |
返回:bool
### `sysdbfwrite(alias, file_name, value, col_info)`
将数据导出为DBF的格式的数据文件。
| 参数 | 类型 | 说明 |
| ----------- | ------ | ---------------------------------------------------------------------------- |
| `alias` | string | 字符串类型,目录别名。 |
| `file_name` | array | 字符串类型,文件名称。 |
| `value` | string | 输出的数据内容,必须有字符串列名。 |
| `col_info` | array | 数组,数据导出的结构定义,若缺省则和exportfile的行为一致,采用自动判别类型。 |
返回:bool
### `sysErrorMessage(code)`
返回指定代码表示的系统错误信息。
| 参数 | 类型 | 说明 |
| ------ | ---- | -------------- |
| `code` | int | 整数,提示代码 |
返回:string
### `sysexec(prog, cmdline, startupdir, wait, code, waitms, return_value)`
创建子进程执行操作系统命令。在指定目录下使用指定文件执行指定命令。指定目录可以为nil;指定命令可以为字符串,比如”py -V”,也可以为数组,比如array(“py”,”-V”)。 注:本定义方式功能只在新一代客户端版本中支持。 旧版本中用户请参考函数原定义说明:FAQ:SysExec 另外,关于code中返回的退出码(返回码),即为子进程终止时通过SysTerminate传递出来的退出码,当无此命令时,默认为0。
| 参数 | 类型 | 说明 |
| -------------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `prog` | string | 字符串,执行命令的文件所在路径。 |
| `cmdline` | string | 字符串或数组,命令行命令。 例如:tsl abcd.tsl,也可以分割的数组,例如array(“tsl”,”abcd.tsl”) |
| `startupdir` | string | NIL或字符串,执行命令时所处的目录路径。 |
| `wait` | bool | object |
| `code` | array | 数值或数组,输出参数,进程的退出码。当存在管道输出且采用阻塞方式运行进程时, code为数组,下标”code”为返回码,”out”下标是运行的进程的标准输出里输入的内容。 另,在阻塞模式下,当等待超时的情况下,也还可以使用SysexecReadpipe读取后续输出的信息。 |
| `waitms` | int | 正整数,可选参数,等待阻塞的毫秒数。 |
| `return_value` | any | 数值,进程句柄。 |
返回:int
### `sysexecreadpipe(process_handle)`
获得指定进程所在管道的输出内容。参数缺省时,获得默认管道的输出内容。 在阻塞式运行sysexec的情况下,可以直接获得内容,在非阻塞式运行外部进程的时候,需要多次进行循环读取输出。
| 参数 | 类型 | 说明 |
| ---------------- | ---- | -------------------------- |
| `process_handle` | any | 数值,可选参数,进程句柄。 |
返回:string
### `sysexecsetenvs(envs, addsysenv)`
重新设置子进程的环境变量,使得子进程与主进程的环境变量不一样,应用于Sysexec创建的子进程。不设置的情况下子进程的环境变量与主进程一致。
| 参数 | 类型 | 说明 |
| ----------- | ------- | ---- |
| `envs` | array | nil |
| `addsysenv` | 0\|1\|2 | 1\\ |
返回:int
### `sysExecWritePipe(content)`
向指定进程所在管道写入输入内容。参数缺省时,向默认管道写入输入内容。 管道的长度是有限的,当管道长度被占用了,需要等待空间被释放后再进行(即时读取管道信息可以被释放),即它是一个阻塞式的过程。
| 参数 | 类型 | 说明 |
| --------- | ------ | ----------------------------------------------------- |
| `content` | string | 字符串,输入内容。比如输入”=quit\r\n”可以退出当前进程 |
返回:int
### `sysGetFuncdepends(fun, flag, cfuninfo, binclassinfo)`
获取目标函数或类的依赖关系。 可以用于查找用户函数、公用函数与本地函数的依赖,但无法查找系统函数。当查找本地函数时,函数文件后缀必须是.tsf。 服务器执行时,由于权限问题,返回结果可能并不完整。用户可以使用本地执行或者rdo2执行来获取完整的依赖信息。
| 参数 | 类型 | 说明 |
| -------------- | ---------------------------------------------- | ------------------------------------------------------------------------------ |
| `fun` | TFUNCTION | 查找依赖的函数或者类 |
| `flag` | int | 整型,缺省值为0,查找的依赖关系类型如下(若多选时,可以将相应取值相加后传入): |
| `cfuninfo` | 依赖不检查子函数,仅通过函数调用等规则查找依赖 | 数组,输出值,返回依赖的二进制函数信息 |
| `binclassinfo` | 显示所有被依赖的子函数,缺省只显示主函数 | 数组,输出值,返回依赖的二进制类信息 |
返回:funInfo
### `sysGetPidOfCom(obj)`
获得COM对象对应的进程ID,由于com的限制,仅当进程ID<65535才有效,一旦返回值为65535表示进程ID超过65535。
| 参数 | 类型 | 说明 |
| ----- | ------ | --------- |
| `obj` | ComObj | Com对象。 |
返回:int
### `sysGetProcessCmdLine(pid, return_value)`
获取指定进程的执行命令行
| 参数 | 类型 | 说明 |
| -------------- | ------ | ---------------------------------------------------- |
| `pid` | int | 整数,进程ID |
| `return_value` | string | 获取成功,返回指定进程的执行命令;否则,返回空字符串 |
返回:string
### `sysGetProcessCmdLinew(pid, return_value)`
获取指定进程的cmd执行命令,返回结果为宽字节字符串
| 参数 | 类型 | 说明 |
| -------------- | ---- | --------------------------------------------------------------------------- |
| `pid` | int | 整数,进程ID |
| `return_value` | int | 获取成功,返回指定进程的cmd执行命令,格式为宽字节字符串;否则,返回空字符串 |
返回:string
### `sysGetProcessNamePath(pid, return_value)`
获取指定进程路径,若无法获得路径返回进程的名称
| 参数 | 类型 | 说明 |
| -------------- | ------ | ---------------------------------------------------------------------------- |
| `pid` | int | 整数,进程ID |
| `return_value` | string | 获取成功,返回指定进程路径,若无法获得路径返回进程的名称;否则,返回空字符串 |
返回:string
### `sysGetProcessNamePathw(pid, return_value)`
获取指定进程路径,返回结果为宽字节字符串
| 参数 | 类型 | 说明 |
| -------------- | ---- | ------------------------------------------------------------------ |
| `pid` | int | 整数,进程ID |
| `return_value` | int | 获取成功,返回指定进程路径,格式为宽字节字符串;否则,返回空字符串 |
返回:string
### `sysGetProcessPriority(pri, pid, return_value)`
获取进程优先级
| 参数 | 类型 | 说明 |
| -------------- | ---- | ------------------------------------------------------ |
| `pri` | int | 变参,整数,进程优先级 |
| `pid` | int | 整数,可选参数,进程ID。未指定时默认获取当前线程优先级 |
| `return_value` | int | 返回值为0,获取成功;否则,获取失败 |
返回:int
### `sysGetThreadName(tid, return_value)`
获取线程名称
| 参数 | 类型 | 说明 |
| -------------- | ------ | ---------------------------------------------------- |
| `tid` | int | 整数,可选参数,线程ID。未指定时默认获取当前线程名称 |
| `return_value` | string | 获取成功,返回线程名称;否则,返回空字符串 |
返回:string
### `sysGetThreadPriority(pri, tid, return_value)`
获取线程优先级
| 参数 | 类型 | 说明 |
| -------------- | ---- | ------------------------------------------------------ |
| `pri` | int | 变参,整数,线程优先级 |
| `tid` | int | 整数,可选参数,线程ID。未指定时默认获取当前线程优先级 |
| `return_value` | int | 返回值为0,获取成功;否则,获取失败 |
返回:int
### `sysGetThreads(pid, return_value)`
获取进程内的线程列表
| 参数 | 类型 | 说明 |
| -------------- | ----- | ------------------------------------------------------------ |
| `pid` | int | 整数,可选参数,进程ID。未指定时默认获取当前进程内的线程列表 |
| `return_value` | array | 获取成功,返回线程ID列表;否则,返回空数组 |
返回:array
### `sysHandleOfPid(pid, rights, inherithandle, return_value)`
Windows上获取进程id对应的句柄,Linux上获取指定文件ID的复制ID。得到的句柄可用函数FAQSysCloseHandle进行关闭。
| 参数 | 类型 | 说明 |
| --------------- | ---- | ---------------------------------------------------------------------------------------------------------------------- |
| `pid` | int | 整数,进程ID |
| `rights` | int | 整数,可选参数,设置进程句柄权限,Linux上无效。常见的权限设置值如下: 更多说明,可参考微软官方文档:处理安全和访问权限 |
| `inherithandle` | bool | 布尔值,可选参数,是否继承,Linux上无效 |
| `return_value` | 16 | 获取成功,返回进程句柄;否则,返回0 |
返回:IntPtr\|int
### `sysKill(pid, code, return_value)`
终止进程。在WINDOWS上,和FAQSysTerminate不同之处是,SysTerminate参数为进程句柄,SysKill参数是进程ID。LINUX上两者一致
| 参数 | 类型 | 说明 |
| -------------- | ---- | ---------------------------------- |
| `pid` | int | 整数,进程ID |
| `code` | int | 整数,可选参数,终止进程返回的代码 |
| `return_value` | bool | object |
返回:bool
### `sysPidOfHandle(handle, return_value)`
根据进程句柄获取进程ID。在Linux上,返回和进程句柄值相同的整数
| 参数 | 类型 | 说明 |
| -------------- | ---- | --------------------------------- |
| `handle` | int | 进程句柄 |
| `return_value` | int | 获取成功,返回进程ID;否则,返回0 |
返回:int
### `sysPidOfTid(tid, return_value)`
获取线程所属进程ID
| 参数 | 类型 | 说明 |
| -------------- | ---- | --------------------------------- |
| `tid` | int | 整数,线程ID |
| `return_value` | int | 获取成功,返回进程ID;否则,返回0 |
返回:int
### `sysPPid(pid, return_value)`
获得进程的父进程ID
| 参数 | 类型 | 说明 |
| -------------- | ---- | ---------------------------------------------------------- |
| `pid` | int | 整数,可选参数,进程ID。未指定时默认获取当前进程的父进程ID |
| `return_value` | int | 获取成功,返回父进程ID;否则,返回0 |
返回:int
### `sysSetProcessPriority(pri, pid, return_value)`
设置进程优先级
| 参数 | 类型 | 说明 |
| -------------- | ---- | ------------------------------------------------------ |
| `pri` | int | 整数,进程优先级 |
| `pid` | int | 整数,可选参数,进程ID。未指定时默认设置当前进程优先级 |
| `return_value` | int | 返回值为0,设置成功;否则,设置失败 |
返回:int
### `sysSetThreadName(name, tid, return_value)`
设置线程名称
| 参数 | 类型 | 说明 |
| -------------- | ------ | ---------------------------------------------------- |
| `name` | string | 字符串,要设置的名称 |
| `tid` | int | 整数,可选参数,线程ID。未指定时默认设置当前线程名称 |
| `return_value` | int | 返回值为0,设置成功;否则,设置失败 |
返回:int
### `sysSetThreadPriority(pri, tid, return_value)`
设置线程优先级
| 参数 | 类型 | 说明 |
| -------------- | ---- | ------------------------------------------------ |
| `pri` | int | 线程优先级 |
| `tid` | int | 可选参数,线程ID。未指定时默认设置当前线程优先级 |
| `return_value` | int | 返回值为0,设置成功;否则,设置失败 |
返回:int
### `syssettsllibpath(path_list)`
设置函数库查找路径(支持分号分隔的多个目录)。
| 参数 | 类型 | 说明 |
| ----------- | ----- | -------------------------- |
| `path_list` | array | 路径列表字符串(分号分隔) |
返回:string
### `sysWaitForSingleObject(object, wait_ms)`
等待占有一个对象,例如互斥对象。支持windows和linux的进程
| 参数 | 类型 | 说明 |
| --------- | ---- | ------------------------------------ |
| `object` | int | 整数,对象名柄 |
| `wait_ms` | int | 整数,等待的毫秒数,-1则为永远等待。 |
返回:int
@@ -0,0 +1,69 @@
# 运行时 / 类型转换
### `convertBufToData(buf, convert_type, index)`
将一个内存中的BUFFER转换成数据。
| 参数 | 类型 | 说明 |
| -------------- | ------ | ------------------------------------------------------------------------------------------------------------ |
| `buf` | string | Binary |
| `convert_type` | string | 字符串类型,指定转换的类型,类型如下: |
| `index` | int | 整数类型,指定的缓冲区中的索引位置。如果BUF是Binary类型,则Index从0开始,如果BUF是字符串类型,Index从1开始。 |
返回:any
### `createMatrix(rows, cols, cols_value, _values, arg5, arg6, arg7, arg8, arg9, arg10, arg11, arg12, arg13, arg14, arg15)`
创建 Matrix 类型数据,可指定列索引与初始值。
| 参数 | 类型 | 说明 |
| ------------ | ----- | -------------------------------- |
| `rows` | int | 行数 |
| `cols` | array | 列数 |
| `cols_value` | any | 列序列(可选) |
| `_values` | int | 初始化值序列(可选,按行列顺序) |
| `arg5` | any | |
| `arg6` | any | |
| `arg7` | any | |
| `arg8` | any | |
| `arg9` | any | |
| `arg10` | any | |
| `arg11` | any | |
| `arg12` | any | |
| `arg13` | any | |
| `arg14` | any | |
| `arg15` | any | |
返回:matrix
### `fOnMessage()`
函数指针,消息处理过程,指向一个函数。可通过Findfunction("函数名")产生 类型:读写
返回:any
### `getNone(value)`
读取 None 值携带的整数标记。
| 参数 | 类型 | 说明 |
| ------- | ---- | ------------------------------------------ |
| `value` | void | `operator[1]` 中间层或回滚层传入的 None 值 |
返回:int
### `nDay()`
整数类型,NDAY默认返回的点数系统参数,读写。
返回:any
### `stm(v)`
把STM流转换为任意类型。
| 参数 | 类型 | 说明 |
| ---- | ------ | ----------------- |
| `v` | binary | 二进制类型,STM流 |
返回:any