eDNA 实时数据库 API函数(VB VC部分)
更新时间:2024-04-02 15:11:01 阅读量: 综合文库 文档下载
- edna是什么意思推荐度:
- 相关推荐
DISTRIBUTED NETWORK ARCHITECTURE
eDNA API函数 (VB部分)
V1.0
www.instepchina.com www.ednachina.com
中国●北京市朝阳区朝外大街乙12号 1号楼昆泰国际中心1011室 电话:+86-10-58797132/33/34 传真:+86-10-58797136
标题 作者 修改记录: 序号 1 2 3 4 5 6 eDNA标准文档的建立流程 陈鑫 2006年9月1日 修改人员 陈鑫 陈鑫、徐立博 修改时间 2007年4月16日 2007年9月29日
目 录
1.1 设置host文件 ........................................................................ 1 1.2 安装eDNA SDK ......................................................................... 2 1.3 在VB环境中引用函数 .................................................................. 4
2.1 读取实时函数 .................................................................... 7 DNAGetRTAll .............................................................................. 7 ● 函数名称:DNAGetRTAll ................................................................ 7 DNAGetRTAllUTC ........................................................................... 9 ● 函数名称:DNAGetRTAllUTC ............................................................. 9 DNAGetRTValue ........................................................................... 11 ● 函数名称:DNAGetRTValue ............................................................. 11 DNAGetRTValueAsString ................................................................... 12 ● 函数名称:DNAGetRTValueAsString ..................................................... 12 DNAGetRTTime ............................................................................ 13 ● 函数名称:DNAGetRTTime .............................................................. 13 DNAGetRTTimeUTC ......................................................................... 14 ● 函数名称:DNAGetRTTimeUTC ........................................................... 14 DNAGetRTStatus .......................................................................... 15 ● 函数名称:DNAGetRTStatus ............................................................ 15 DNAGetRTDesc ............................................................................ 16 ● 函数名称:DNAGetRTDesc .............................................................. 16 DNAGetRTUnits ........................................................................... 17 ● 函数名称:DNAGetRTUnits ............................................................. 17 DNAGetRTShort ........................................................................... 18 ● 函数名称:DNAGetRTShort ............................................................. 18 2.2 实时写数函数(秒) ............................................................. 19 DnaAddAnalogShortIdRecord ............................................................... 19 ● 函数名称:DnaAddAnalogShortIdRecord ................................................. 19 DnaAddDigitalShortIdRecord .............................................................. 21 ● 函数名称:DnaAddDigitalShortIdRecord ................................................ 21 DnaAddAnalogShortIdRecordNoStatus ....................................................... 22 ● 函数名称:DnaAddAnalogShortIdRecordNoStatus ......................................... 22 DnaFlushShortIdRecords .................................................................. 23 ● 函数名称:DnaFlushShortIdRecords .................................................... 23 2.3 读取历史函数(秒) ............................................................. 24 DnaGetHistAvg ........................................................................... 24 ● 函数名称:DnaGetHistAvg ............................................................. 24 DnaGetHistAvgUTC ........................................................................ 26 ● 函数名称:DnaGetHistAvgUTC .......................................................... 26 DnaGetHistMax ........................................................................... 28 ● 函数名称:DnaGetHistMax ............................................................. 28 DnaGetHistMaxUTC ........................................................................ 30
● 函数名称:DnaGetHistMaxUTC .......................................................... 30 DnaGetHistMin ........................................................................... 32 ● 函数名称:DnaGetHistMin ............................................................. 32 DnaGetHistMinUTC ........................................................................ 34 ● 函数名称:DnaGetHistMinUTC .......................................................... 34 DnaGetHistSnap .......................................................................... 36 ● 函数名称:DnaGetHistSnap ............................................................ 36 DnaGetHistSnapUTC ....................................................................... 38 ● 函数名称:DnaGetHistSnapUTC ......................................................... 38 DnaGetHistRaw ........................................................................... 40 ● 函数名称:DnaGetHistRaw ............................................................. 40 DnaGetHistRawUTC ........................................................................ 42 ● 函数名称:DnaGetHistRawUTC .......................................................... 42 DnaGetNextHist .......................................................................... 44 ● 函数名称:DnaGetNextHist ............................................................ 44 DnaGetNextHistUTC ....................................................................... 45 ● 函数名称:DnaGetNextHistUTC ......................................................... 45 DnaGetNextHistStr ....................................................................... 46 ● 函数名称:DnaGetNextHistStr ......................................................... 46 DnaGetNextHistStrUTC .................................................................... 48 ● 函数名称:DnaGetNextHistStrUTC ...................................................... 48 DnaGetNextHistSmallUTC .................................................................. 50 ● 函数名称:DnaGetNextHistSmallUTC .................................................... 50 DnaGetNextHistFull ...................................................................... 51 ● 函数名称:DnaGetNextHistFull ........................................................ 51 DnaGetHistExpectedTotal ................................................................. 53 ● 函数名称:DnaGetHistExpectedTotal ................................................... 53
2.4 插入历史数据函数(秒) ......................................................... 54 DnaHistQueueUpdateInsertValue ........................................................... 54 ● 函数名称:DnaHistQueueUpdateInsertValue ............................................. 54 DnaHistFlushUpdateInsertValues .......................................................... 56 ● 函数名称:DnaHistqueueUpdateInsertValues ............................................ 56 2.5 追加历史数据函数 ............................................................... 57 DnaHistQueueAppendValue ................................................................. 57 ● 函数名称:DnaHistQueueAppendValue ................................................... 57 DnaHistFlushAppendValues ................................................................ 59 ● 函数名称:DnaHistqueueUpdateInsertValues ............................................ 59 2.6 删除历史数据函数 ............................................................... 60 DnaHistDeleteValue ...................................................................... 60 ● 函数名称:DnaHistDeleteValue ........................................................ 60 2.7 读取服务配置 ................................................................... 61 DnaGetServiceEntry ...................................................................... 61 ● 函数名称:DnaGetServiceEntry ........................................................ 61 DnaGetNextServiceEntry .................................................................. 63
● 函数名称:DnaGetServiceEntry ........................................................ 63 DnaGetPointEntry ........................................................................ 65 ● 函数名称:DnaGetPointEntry .......................................................... 65 DnaGetNextPointEntry .................................................................... 67 ● 函数名称:DnaGetNextPointEntry ...................................................... 67 DnaSelectPoint .......................................................................... 69 ● 函数名称:DnaSelectPoint ............................................................ 69 DnaSelectService ........................................................................ 70 ● 函数名称:DnaSelectPoint ............................................................ 70
2.8 UNIVERSAL服务接口 ............................................................... 71 2.8.1服务初始化、连接、关闭 ............................................................. 71 ● 函数名称:eDnaMxUniversalInitialize ......................................................... 71 ● 函数名称:eDnaMxUniversalInitialize ......................................................... 72 ● 函数名称:eDnaMxUniversalInitialize ......................................................... 73 ● 函数名称:ISeDnaMxUniversalConnected ........................................................ 73 ● 函数名称:eDnaMxFlushUniversalRecord ........................................................ 74
2.8.2修改点配置信息 ..................................................................... 75
● 函数名称:eDnaMxAddConfigRec ................................................................ 75
2.8.3写入数据 ........................................................................... 78
● 函数名称:eDnaMxAddRec ...................................................................... 78 ● 函数名称:eDnaMxAddLongIdRec ................................................................ 80
2.9 其它相关函数 ................................................................... 81 StringToPeriod .......................................................................... 81 ● 函数名称:StringToPeriod ............................................................ 81 SplitPointName .......................................................................... 82 ● 函数名称:SplitPointName ............................................................ 82 ShortIdFromLongID ....................................................................... 83 ● 函数名称:ShortIdFromLongID ......................................................... 83 LongIDFromShortID ....................................................................... 84 ● 函数名称:LongIDFromShortID ......................................................... 84
eDNA API函数示例(VB部分)
1 VB环境eDNA API使用的准备工作
1.1 设置host文件
网络中必须有eDNA服务,通过设置本地host文件,连接到服务。 Host文件设置方法 在运行中输入“drivers”
进入“etc”文件夹,打开“hosts”文件。
印步(北京)软件有限公司 第 1 页
REV.20061101
eDNA API函数示例(VB部分)
添加如下内容
例如:“192.168.0.168 dna_svcdir_01”
1.2 安装eDNA SDK
eDNA SDK提供了一些eDNA相关的程序示例以及与eDNA相关的一些动态库。 运行“SoftwareDevKit.exe”。
REV.20061101
印步(北京)软件有限公司 第 2 页
eDNA API函数示例(VB部分)
点击“NEXT”
选择安装路径,点“NEXT”
可选安装组件,建议安装,点击下一步。
印步(北京)软件有限公司 第 3 页 REV.20061101
eDNA API函数示例(VB部分)
点击“Finish”,完成安装。
1.3 在VB环境中引用函数
新建一个VB工程,创建一个标准EXE文件
印步(北京)软件有限公司 第 4 页 REV.20061101
eDNA API函数示例(VB部分)
在工程窗口中点击“右键”,添加一个模块(Module).
打开eDNA SDK安装目录下Examples\\DNA_VB文件夹中的VB程序ezdnaapi.BAS文件,建立面的内容复制到新建的模块中。
印步(北京)软件有限公司 第 5 页 REV.20061101
eDNA API函数示例(VB部分)
印步(北京)软件有限公司 第 6 页 REV.20061101
eDNA API函数示例(VB部分)
2 eDNA API函数说明
2.1 读取实时函数
DNAGetRTAll ● 函数名称:DNAGetRTAll
● 功能说明:取出一个实时服务点的值,时间,状态,描述,单位这些信息。时间和状态
都 为字符串格式。
● 函数原形:
Declare Function DNAGetRTAll
Lib \
ByVal Point As String,
Value As Double,
ByVal Time As String, ByVal LenTime As Integer, ByVal Status As String, ByVal LenStatus As Integer, ByVal Desc As String, ByVal LenDesc As Integer, ByVal Units As String, ByVal LenUnits As Integer ) As Integer
● 返回值说明:
成功返回0,不成功返回非0
● 参数说明:
ByVal Point As String 要查询的实时服务的服务名,格式:”站点名.服务名.标签” Value As Double 传出参数,用来承载返回指定的实时服务的值 ByVal Time As String, 传出参数,用来承载返回实时数据点的时间 ByVal LenTime As Integer, time参数预留长度
ByVal Status As String, 传出参数,用来承载返回实时数据点的状态 ByVal LenStatus As Integer, Status参数预留长度
ByVal Desc As String, 传出参数,用来承载返回实时数据点的描述 ByVal LenDesc As Integer, Desc参数预留长度
ByVal Units As String, 传出参数,用来承载返回实时数据点的单位 ByVal LenUnits As Integer Units参数预留长度
● 使用示例:
‘-----------------------------------------------------------------------
‘目标:取出一个实时服务点的值,时间,状态,描述,单位这些信息。时间和状态都为字符串格式。
印步(北京)软件有限公司 第 7 页 REV.20061101
eDNA API函数示例(VB部分)
‘---------------------------------------------------------------------- Dim Point As String
Dim Value As Double
Dim time As String * 20, Status As String * 20
Dim Desc As String * 30, Units As String * 10
Point = \
ret% = DNAGetRTAll(Point, Value, time, Len(time), Status, Len(Status), Desc, Len(Desc), Units, Len(Units))
If ret = 0 Then
MsgBox \点名\值:\时间:\状态:\\描述:\单位:\
Else
MsgBox \ End If
印步(北京)软件有限公司 第 8 页 REV.20061101
eDNA API函数示例(VB部分)
DNAGetRTAllUTC ● 函数名称:DNAGetRTAllUTC
● 功能说明:取出一个实时服务点的值,时间,状态,描述,单位这些信息。状态字符串
格式, 时间UTC格式。
● 函数原形:
Declare Function DNAGetRTAllUTC Lib \ ByVal Point As String, Value As Double, time As Long, ByVal Status As String, ByVal LenStatus As Integer, ByVal Desc As String, ByVal LenDesc As Integer, ByVal Units As String, ByVal LenUnits As Integer ) As Integer
● 返回值说明:
成功返回0,不成功返回非0
● 参数说明:
ByVal Point As String 要查询的实时服务的服务名,格式:”站点名.服务名.标签” Value As Double 传出参数,用来承载返回指定的实时服务的值 ByVal Time As Long, 传出参数,用来承载返回实时数据点的时间 ByVal Status As String, 传出参数,用来承载返回实时数据点的状态 ByVal LenStatus As Integer, Status参数预留长度
ByVal Desc As String, 传出参数,用来承载返回实时数据点的描述 ByVal LenDesc As Integer, Desc参数预留长度
ByVal Units As String, 传出参数,用来承载返回实时数据点的单位 ByVal LenUnits As Integer Units参数预留长度
● 使用示例:
‘----------------------------------------------------------------------- ‘目标:取出一个实时服务点的值,时间,状态,描述,单位这些信息。
‘---------------------------------------------------------------------- Dim Point As String
Dim Value As Double
Dim time As String * 20, Status As String * 20
印步(北京)软件有限公司 第 9 页 REV.20061101
eDNA API函数示例(VB部分)
Dim Desc As String * 30, Units As String * 10
Dim StrTIme As String * 20
Point = \
ret% = DNAGetRTAllUTC(Point, Value, time, Len(time), Status, Len(Status), Desc, Len(Desc), Units, Len(Units))
If ret = 0 Then
UCTToStringTime time, StrTIme, Len(StrTIme)
MsgBox \点名\值:\时间:\状态:\& \描述:\单位:\
Else
MsgBox \ End If
印步(北京)软件有限公司 第 10 页 REV.20061101
eDNA API函数示例(VB部分) DNAGetRTValue ● 函数名称:DNAGetRTValue ● 功能说明:读取秒时标实时数据 ● 函数原形:
Declare Function DNAGetRTValue
Lib \
ByVal Point As String, Value As Double ) As Integer
● 返回值说明:
成功返回0,不成功返回非0
● 参数说明:
Point As String Value As Double
要查询的实时服务的服务名,格式:”站点名.服务名.标签” 传出参数,用来承载返回指定的实时服务的值
● 使用示例:
‘----------------------------------------------------------------------- ‘目标:取出一个实时服务点的值。
‘---------------------------------------------------------------------- Dim VALUE As Double Dim point As String
point = \ret% = DNAGetRTValue(point, VALUE)
If ret = 0 Then
MsgBox \点\实时值:\
Else
MsgBox \End If
印步(北京)软件有限公司 第 11 页 REV.20061101
eDNA API函数示例(VB部分)
DNAGetRTValueAsString ● 函数名称:DNAGetRTValueAsString ● 功能说明:读取秒时标实时数据 ● 函数原形:
Declare Function DNAGetRTValueAsString
Lib \
ByVal point As String, ByVal VALUE As String, ByVal LenValue As Integer ) As Integer
● 返回值说明:
成功返回0,不成功返回非0
● 参数说明:
Point As String Value As string LenValue As Integer
要查询的实时服务的服务名,格式:”站点名.服务名.标签” 传出参数,用来承载返回指定的实时服务的值 Value参数预留长度
● 使用示例:
‘----------------------------------------------------------------------- ‘目标:取出一个实时服务点的值,类型字符型。
‘---------------------------------------------------------------------- Dim Value As String * 20 Dim Point As String
Point = \
ret% = DNAGetRTValueAsString(Point, Value, Len(Value))
If ret = 0 Then
MsgBox \点\实时值:\Else
MsgBox \End If
印步(北京)软件有限公司 第 12 页 REV.20061101
eDNA API函数示例(VB部分)
DNAGetRTTime ● 函数名称:DNAGetRTTime
● 功能说明:返回一个实时服务点的刷新时间。(字符串时间格式) ● 函数原形:
Declare Function DNAGetRTTime
Lib \
ByVal Point As String, ByVal time As String, ByVal LenTime As Integer ) As Integer
● 返回值说明:
成功返回0,不成功返回非0
● 参数说明:
Point As String 要查询的实时服务的服务名,格式:”站点名.服务名.标签” time As Strnig 传出参数,用来承载返回指定的实时服务点的更新时间。 LenTime As Integer time参数预留长度
● 使用示例:
‘---------------------------------------------------------------------- ‘目标:返回一个实时服务点的刷新时间。
‘---------------------------------------------------------------------- Dim Time As String * 20 Dim Point As String
Point = \
ret% = DNAGetRTValueAsString(Point, Time, Len(Time))
If ret = 0 Then
MsgBox \点\刷新时间:\Else
MsgBox \End If
印步(北京)软件有限公司 第 13 页 REV.20061101
eDNA API函数示例(VB部分)
DNAGetRTTimeUTC ● 函数名称:DNAGetRTTimeUTC
● 功能说明:返回一个实时服务的刷新时间(UTC时间格式)。 ● 函数原形:
Declare Function DNAGetRTTimeUTC
Lib \
ByVal Point As String, ByVal time As Long, ) As Integer
● 返回值说明:
成功返回0,不成功返回非0
● 参数说明:
Point As String Time As Long
要查询的实时服务的服务名,格式:”站点名.服务名.标签” 传出参数,用来承载返回指定的实时服务的点的更新时间。
● 使用示例:
‘---------------------------------------------------------------------- ‘目标:返回一个实时服务点的刷新时间。
‘---------------------------------------------------------------------- Dim Time As String * 20 Dim Point As String
Dim StrTime as String * 20
Point = \
ret% = DNAGetRTValueAsString(Point, Time)
UCTToStringTime Time, StrTIme, Len(StrTIme)
If ret = 0 Then
MsgBox \点\刷新时间:\Else
MsgBox \End If
印步(北京)软件有限公司 第 14 页 REV.20061101
eDNA API函数示例(VB部分) DNAGetRTStatus ● 函数名称:DNAGetRTStatus ● 功能说明:取得一个实时点的状态 ● 函数原形:
Declare Function DNAGetRTStatus
Lib \
ByVal Point As String, ByVal Status As String, ByVal LenStatus As Integer ) As Integer
● 返回值说明:
成功返回0,不成功返回非0
● 参数说明:
Point As String 要查询的实时服务的服务名,格式:”站点名.服务名.标签” Status As String 传出参数,用来承载返回指定的实时服务点的状态值 LenStatus As Integer Status参数预留长度
●
● 使用示例:
‘---------------------------------------------------------------------- ‘目标:取得一个实时点的状态
‘---------------------------------------------------------------------- Dim Status As String * 10 Dim Point As String
Point = \
ret% = DNAGetRTStatus(Point, Status, Len(Status))
If ret = 0 Then
MsgBox \点\状态:\Else
MsgBox \End If
印步(北京)软件有限公司 第 15 页 REV.20061101
eDNA API函数示例(VB部分) DNAGetRTDesc ● 函数名称:DNAGetRTDesc
● 功能说明:取得一个实时点的描述信息 ● 函数原形:
Declare Function DNAGetRTDesc
Lib \
ByVal Point As String, ByVal Desc As String, ByVal LenDesc As Integer ) As Integer
● 返回值说明:
成功返回0,不成功返回非0
● 参数说明:
Point As String 要查询的实时服务的服务名,格式:”站点名.服务名.标签” Desc As Double 传出参数,用来承载返回指定的实时服务点的描述信息 LenDesc As Integer Desc 参数预留长度
● 使用示例:
‘---------------------------------------------------------------------- ‘目标:取得一个实时点的描述
‘---------------------------------------------------------------------- Dim Desc As String * 20 Dim Point As String
Point = \
ret% = DNAGetRTDesc(Point, Desc, Len(Desc))
If ret = 0 Then
MsgBox \点\描述:\ Else
MsgBox \End If
印步(北京)软件有限公司 第 16 页 REV.20061101
eDNA API函数示例(VB部分)
DNAGetRTUnits ● 函数名称:DNAGetRTUnits ● 功能说明:取得一个实时点的单位 ● 函数原形:
Declare Function DNAGetRTUnits
Lib \
ByVal Point As String, ByVal Units As String, ByVal LenUnits As Integer ) As Integer
● 返回值说明:
成功返回0,不成功返回非0
● 参数说明:
Point As String 要查询的实时服务的服务名,格式:”站点名.服务名.标签” Units As Double 传出参数,用来承载返回指定的实时服务点的单位信息 LenUnitsAs Integer Units 参数预留长度
● 使用示例:
‘---------------------------------------------------------------------- ‘目标:取得一个实时点的单位。
‘---------------------------------------------------------------------- Dim Units As String * 10 Dim Point As String
Point = \
ret% = DNAGetRTUnits(Point, Units, Len(Units))
If ret = 0 Then
MsgBox \点\单位:\Else
MsgBox \End If
印步(北京)软件有限公司 第 17 页 REV.20061101
eDNA API函数示例(VB部分) DNAGetRTShort ● 函数名称:DNAGetRTShort
● 功能说明:取得一个实时点的实时值,时间,状态 ● 函数原形:
Declare Function DNAGetRTShort
Lib \
ByVal Point As String, Value As Double, time As Long, Status As Integer ) As Integer
● 返回值说明:
成功返回0,不成功返回非0
● 参数说明:
Point As String Value As Double time As Long, Status As Integer
要查询的实时服务的服务名,格式:”站点名.服务名.标签” 传出参数,用来承载返回指定的实时服务的值
传出参数,用来承载返回指定的实时服务的时间,UTC格式。 传出参数,用来承载返回指定的实时服务的状态
● 使用示例:
‘---------------------------------------------------------------------- ‘目标:取得一个实时点的实时值,时间,状态
‘---------------------------------------------------------------------- Dim Point As String
Dim Value As Double, time As Long, Status As Integer Dim StrTIme As String * 20
Point = \
ret% = DNAGetRTShort(Point, Value, time, Status)
If ret = 0 Then
UCTToStringTime time, StrTIme, Len(StrTIme)
MsgBox \点\& Point & \值:\& Value & \状态:\& Str(Status) & \时间:\& Trim(StrTIme) Else
印步(北京)软件有限公司 第 18 页 REV.20061101
eDNA API函数示例(VB部分)
MsgBox \End If
2.2 实时写数函数(秒)
DnaAddAnalogShortIdRecord ● 函数名称:DnaAddAnalogShortIdRecord
● 功能说明:添加一条模拟量记录,包括时间,值,和状态。 ● 函数原形:
Declare Function DnaAddAnalogShortIdRecord
Lib \
ByVal Service As String, ByVal PointId As String, ByVal UTCTime As Long, ByVal Value As Double,
ByVal LowWarning As Integer, ByVal HighWarning As Integer, ByVal LowAlarm As Integer, ByVal HighAlarm As Integer,
ByVal OutOfRangeLow As Integer, ByVal OutOfRnageHigh As Integer, ByVal UnReliable As Integer, ByVal Manual As Integer ) As Integer
● 返回值说明:
成功返回0,不成功返回非0
● 参数说明:
Service As String 标签
数值的UTC时间标签,若指定为0,则使用实时服务所在计算机的时间
PointId As String UTCTime As Long Value As Double LowWarning As Integer HighWarning As Integer
实时服务的点名PointId,格式:“标签” 点的时间标签,UTC格式。 模拟量数值
是否处于低警告:非0值表示真,0值表示假 是否处于高警告:非0值表示真,0值表示假
LowAlarm As Integer 是否处于低报警:非0值表示真,0值表示假 HighAlarm As Integer 是否处于高警告:非0值表示真,0值表示假 OutOfRangeLow As Integer 是否超出低范围:非0值表示真,0值表示假 OutOfRnageHigh As Integer 是否超出高范围:非0值表示真,0值表示假 UnReliable As Integer 是否不可靠:非0值表示真,0值表示假 Manual As Integer 是否手动设置:非0值表示真,0值表示假
● 使用示例:
‘----------------------------------------------------------------------
印步(北京)软件有限公司 第 19 页 REV.20061101
eDNA API函数示例(VB部分)
‘目标:添加一条模拟量记录,包括时间,值,和状态。注意,后面的状态值设置为0或非0
‘----------------------------------------------------------------------
Dim servicename As String Dim pointname As String Dim time As String Dim VALUE As Double
Dim szMessage As String * 80 iret = DnaAddAnalogShortIdRecord(\\StringToUTCTime(Now), 2.3345, 1, 1, 1, 1, 1, 1, 1, 1) If iret = 0 Then
DnaFlushShortIdRecords servicename, szMessage, Len(szMessage)
End If
印步(北京)软件有限公司 第 20 页 REV.20061101
eDNA API函数示例(VB部分)
DnaAddDigitalShortIdRecord ● 函数名称:DnaAddDigitalShortIdRecord ● 功能说明:添加一条开关量记录,包括时间,值。 ● 函数原形:
Declare Function DnaAddDigitalShortIdRecord
Lib \
ByVal Service As String,
ByVal PointId As String, ByVal UTCTime As Long,
ByVal DigSet As Integer, ByVal ValueString As Integer,
ByVal DigitalWarning As Integer, ByVal DigitalChattering As Integer, ByVal UnReliable As Integer, ByVal Manual As Integer ) As Integer
● 返回值说明:
成功返回0,不成功返回非0
● 参数说明:
Service As String 由实时服务的\站点名.服务名\组成的名称 PointId As String 点名,PointId UTCTime As Long 时间标签,UTC时间格式
DigSet As Integer 表示开或关:非0值表示真,0值表示假
ValueString As Integer 由16个字节组成的描述来描述当前状态的字符串 DigitalWarning As Integer 数字是否处于警告状态:非0值表示真,0值表示假 DigitalChattering As Integer 数字是否处于跳变状态:非0值表示真,0值表示假 UnReliable As Integer 是否不可靠:非0值表示真,0值表示假 Manual As Integer 是否手动设置:非0值表示真,0值表示假
● 使用示例:
‘---------------------------------------------------------------------- ‘目标:添加一条开关量记录,包括时间,值。
‘----------------------------------------------------------------------
Private Sub Command1_Click()
Dim servicename As String,pointname As String Dim time As String,VALUE As Double Dim szMessage As String * 80
iRet = DnaAddDigitalShortIdRecord(\1, 1043, 1, 1, 0, 1) If iRet = 0 Then
印步(北京)软件有限公司 第 21 页 REV.20061101
eDNA API函数示例(VB部分)
DnaFlushShortIdRecords servicename, szMessage, Len(szMessage) End If End Sub DnaAddAnalogShortIdRecordNoStatus ● 函数名称:DnaAddAnalogShortIdRecordNoStatus
● 功能说明:添加一条模拟量或开关量记录,包括时间,值。 ● 函数原形:
Declare Function DnaAddAnalogShortIdRecordNoStatus
Lib \
ByVal Service As String, ByVal PointId As String, ByVal UTCTime As Long, ByVal Value As Double
) As Integer
● 返回值说明:
成功返回0,不成功返回非0
● 参数说明:
实时服务名,格式”站点名.服务名”
short ID
数值的UTC时间标签,若指定为0,则使用实时服务所在计算机的时间标签 模拟量数值
Service As String PointId As String UTCTime As Long Value As Double
● 相关函数:
DnaFlushShortIdRecords
● 使用示例:
‘---------------------------------------------------------------------- ‘目标:添加一条模拟量记录,包括时间,值。
‘----------------------------------------------------------------------
Private Sub Command1_Click() Dim servicename As String
Dim pointname As String,time As String,VALUE As Double Dim szMessage As String * 80
iret=DnaAddAnalogShortIdRecordNoStatus(\ow), 1.5573)
If iret = 0 Then
DnaFlushShortIdRecords servicename, szMessage, Len(szMessage) End If
印步(北京)软件有限公司 第 22 页 REV.20061101
eDNA API函数示例(VB部分)
End Sub DnaFlushShortIdRecords ● 函数名称:DnaFlushShortIdRecords ● 功能说明:按照短ID强制刷新一次数据 ● 函数原形:
Declare Function DnaFlushShortIdRecords
Lib \
ByVal Service As String, ByVal MessageStr As String, ByVal MessageLen As Integer ) As Integer
● 返回值说明:
成功返回0,不成功返回非0
● 参数说明:
Service As String MessageStr As String MessageLen As Integer
由实时服务的\站点名.服务名\组成的名称 强制刷新的错误描述 错误描述字段的长度
● 使用示例:
‘----------------------------------------------------------------------
‘目标:按照短ID强制刷新一次数据。
‘----------------------------------------------------------------------
Dim servicename As String Dim pointname As String Dim time As String Dim VALUE As Double
Dim szMessage As String * 80
iret = DnaAddAnalogShortIdRecord(\2.3345, 1, 1, 1, 1, 1, 1, 1, 1)
If iret = 0 Then
DnaFlushShortIdRecords servicename, szMessage, Len(szMessage) End If
印步(北京)软件有限公司 第 23 页 REV.20061101
eDNA API函数示例(VB部分)
2.3 读取历史函数(秒)
DnaGetHistAvg ● 函数名称:DnaGetHistAvg
● 功能说明:初始化历史函数,获取在一段时间范围内存储于历史服务的点的平均值。 ● 函数原形:
Declare Function DnaGetHistAvg
Lib \
ByVal Point As String, ByVal StartTime As String, ByVal EndTime As String, ByVal Period As String, Key As Long ) As Integer
● 返回值说明:
成功返回0,不成功返回非0
● 相关函数:
DnaGetNextHist()
● 参数说明:
ByVal Point As String, 要查询的实时服务的完整点名,格式:”站点名.服务名.标签” StartTime As String, 要查询的实时服务的点的开始时间,格式\ EndTime As String, 要查询的实时服务的点的结束时间,格式\ Period As String, 查询周期,以秒为单位,函数将每隔tPeriod 取一次平均值,
tPeriod取值范围为{1, EndTime – StartTime}
Key As Long, 传出参数,数据标识,数据需要通过其他采集函数获取,如
DnaGetNextHistUTC函数
● 使用示例:
‘---------------------------------------------------------------------- ‘目标:获得一个点的一段时间内的平均值,时间格式\。 ‘----------------------------------------------------------------------
Dim StartTime As String, Point As String, EndTime As String, Period As String, Key As Long
Dim Value As Double, sTime As String * 20, Status As String * 20
Point = \
印步(北京)软件有限公司 第 24 页 REV.20061101
eDNA API函数示例(VB部分)
StartTime = \
EndTime = \
Period = \
ret% = DnaGetHistAvg(Point, StartTime, EndTime, Period, Key)
If ret = 0 Then
ret = DnaGetNextHist(Key, Value, sTime, Len(sTime), Status, Len(Status))
Do While ret = 0
MsgBox \到09/25/2007 23:59:59间 平均值 = \\时间 = \状态 = \
ret = DnaGetNextHist(Key, Value, sTime, Len(sTime), Status, Len(Status))
Loop Else
MsgBox \读取失败\ End If
印步(北京)软件有限公司 第 25 页
REV.20061101
eDNA API函数示例(VB部分) DnaGetHistAvgUTC ● 函数名称:DnaGetHistAvgUTC
● 功能说明:初始化历史函数,获取在一段时间范围内存储于历史服务的点的平均值,时
间格式是UTC时间。
● 函数原形:
Declare Function DnaGetHistAvgUTC
Lib \
ByVal Point As String, ByVal StartTime As Long, ByVal EndTime As Long, ByVal Period As Long, Key As Long ) As Integer
● 返回值说明:
成功返回0,不成功返回非0
● 参数说明:
ByVal Point As String, 要查询的实时服务的完整点名,格式:”站点名.服务名.标签” StartTime As Long, 要查询的实时服务的点的开始时间,以UTC格式表示 EndTime As Long, 要查询的实时服务的点的结束时间,以UTC格式表示 Period As Long, 查询周期,以秒为单位,函数将每隔tPeriod 取一次平均值,
tPeriod取值范围为{1, EndTime – StartTime}
Key As Long, 传出参数,数据标识,数据需要通过其他采集函数获取,如
DnaGetNextHistUTC函数
● 相关函数:
StringToUTCTime ()
DnaGetNextHistUTC() UCTToStringTime()
● 使用示例:
‘---------------------------------------------------------------------- ‘目标:获得一个点的一段时间内的平均值,时间格式UTC。
‘----------------------------------------------------------------------
Dim StartTime As Long, Point As String, EndTime As Long, Period As Long, Key As Long
Dim Value As Double, sTime As Long, Status As String * 20
Dim StrTime As String * 20
印步(北京)软件有限公司 第 26 页 REV.20061101
eDNA API函数示例(VB部分)
Point = \
StartTime = StringToUTCTime(\
EndTime = StringToUTCTime(\
Period = 86400
ret% = DnaGetHistAvgUTC(Point, StartTime, EndTime, Period, Key)
If ret = 0 Then
ret = DnaGetNextHistUTC(Key, Value, sTime, Status, Len(Status))
Do While ret = 0
UCTToStringTime sTime, StrTime, Len(StrTime)
MsgBox \平均值 = \时间 = \状态 = \
ret = DnaGetNextHistUTC(Key, Value, sTime, Status, Len(Status))
Loop Else
MsgBox \读取失败\
End If
印步(北京)软件有限公司 第 27 页
REV.20061101
eDNA API函数示例(VB部分) DnaGetHistMax ● 函数名称:DnaGetHistMax
● 功能说明:初始化历史函数,获取在一段时间范围内存储于历史服务的点的最大值,时
间格式是UTC时间。
● 函数原形:
Declare Function DnaGetHistMax
Lib \
ByVal Point As String, ByVal StartTime As Long, ByVal EndTime As Long, ByVal Period As Long, Key As Long ) As Integer
● 返回值说明:
成功返回0,不成功返回非0
● 相关函数:
DnaGetNextHist()
● 参数说明:
ByVal Point As String, 要查询的实时服务的完整点名,格式:”站点名.服务名.标签” StartTime As String, 要查询的实时服务的点的开始时间,格式\ EndTime As String, 要查询的实时服务的点的结束时间,格式\ Period As String, 查询周期,以秒为单位,函数将每隔tPeriod 取一次最大值,
tPeriod取值范围为{1, EndTime – StartTime}
Key As Long, 传出参数,数据标识,数据需要通过其他采集函数获取,如
DnaGetNextHistUTC函数
● 使用示例:
‘---------------------------------------------------------------------- ‘目标:获得一个点的一段时间内的最大值,时间格式\。 ‘----------------------------------------------------------------------
Dim StartTime As String, Point As String, EndTime As String, Period As String, Key As Long
Dim Value As Double, sTime As String * 20, Status As String * 20
Point = \
印步(北京)软件有限公司 第 28 页 REV.20061101
eDNA API函数示例(VB部分)
StartTime = \EndTime = \
Period = \
ret% = DnaGetHistMax(Point, StartTime, EndTime, Period, Key)
If ret = 0 Then
ret = DnaGetNextHist(Key, Value, sTime, Len(sTime), Status, Len(Status))
Do While ret = 0
MsgBox \最大值 = \时间 = \时间 = \
ret = DnaGetNextHist(Key, Value, sTime, Len(sTime), Status, Len(Status))
Loop Else
MsgBox \读取失败\ End If
印步(北京)软件有限公司 第 29 页
REV.20061101
eDNA API函数示例(VB部分)
DnaGetHistMaxUTC ● 函数名称:DnaGetHistMaxUTC
● 功能说明:初始化历史函数,获取在一段时间范围内存储于历史服务的点的最大值,时
间格式是UTC时间。
● 函数原形:
Declare Function DnaGetHistMaxUTC
Lib \
ByVal Point As String, ByVal StartTime As Long, ByVal EndTime As Long, ByVal Period As Long, Key As Long ) As Integer
● 返回值说明:
成功返回0,不成功返回非0
● 参数说明:
ByVal Point As String, 要查询的实时服务的完整点名,格式:”站点名.服务名.标签” StartTime As String, 要查询的实时服务的点的开始时间,格式\ EndTime As String, 要查询的实时服务的点的结束时间,格式\ Period As String, 查询周期,以秒为单位,函数将每隔tPeriod 取一次最大值,
tPeriod取值范围为{1, EndTime – StartTime}
Key As Long, 传出参数,数据标识,数据需要通过其他采集函数获取,如
DnaGetNextHistUTC函数
● 相关函数:
StringToUTCTime ()
DnaGetNextHistUTC() UCTToStringTime()
● 使用示例:
‘---------------------------------------------------------------------- ‘目标:获得一个点的一段时间内的最大值,时间格式UTC。
‘----------------------------------------------------------------------
Dim StartTime As Long, Point As String, EndTime As Long, Period As Long, Key As Long
Dim Value As Double, sTime As Long, Status As String * 20
Dim StrTIme As String * 20
Point = \
印步(北京)软件有限公司 第 30 页 REV.20061101
eDNA API函数示例(VB部分)
StartTime = StringToUTCTime(\
EndTime = StringToUTCTime(\
Period = 86400
ret% = DnaGetHistMaxUTC(Point, StartTime, EndTime, Period, Key)
If ret = 0 Then
ret = DnaGetNextHistUTC(Key, Value, sTime, Status, Len(Status))
Do While ret = 0
UCTToStringTime sTime, StrTIme, Len(StrTIme)
MsgBox \最大值 = \时间 = \状态 = \
ret = DnaGetNextHistUTC(Key, Value, sTime, Status, Len(Status))
Loop Else
MsgBox \读取失败\ End If
印步(北京)软件有限公司 第 31 页 REV.20061101
eDNA API函数示例(VB部分)
DnaGetHistMin ● 函数名称:DnaGetHistMin
● 功能说明:初始化历史函数,获取在一段时间范围内存储于历史服务的点的最小值,时
间格式是UTC时间。
● 函数原形:
Declare Function DnaGetHistMin
Lib \
ByVal Point As String, ByVal StartTime As String, ByVal EndTime As String, ByVal Period As String, Key As Long ) As Integer
● 返回值说明:
成功返回0,不成功返回非0
● 相关函数:
DnaGetNextHist()
● 参数说明:
ByVal Point As String, 要查询的实时服务的完整点名,格式:”站点名.服务名.标签” StartTime As String, 要查询的实时服务的点的开始时间,格式\ EndTime As String, 要查询的实时服务的点的结束时间,格式\ Period As String, 查询周期,以秒为单位,函数将每隔tPeriod 取一次最小值,
tPeriod取值范围为{1, EndTime – StartTime}
Key As Long, 传出参数,数据标识,数据需要通过其他采集函数获取,如
DnaGetNextHistUTC函数
● 使用示例:
‘---------------------------------------------------------------------- ‘目标:获得一个点的一段时间内的最小值,时间格式\。 ‘----------------------------------------------------------------------
Dim StartTime As String, Point As String, EndTime As String, Period As String, Key As Long
Dim Value As Double, sTime As String * 20, Status As String * 20
Point = \
印步(北京)软件有限公司 第 32 页 REV.20061101
eDNA API函数示例(VB部分)
StartTime = \EndTime = \
Period = \
ret% = DnaGetHistMin(Point, StartTime, EndTime, Period, Key)
If ret = 0 Then
ret = DnaGetNextHist(Key, Value, sTime, Len(sTime), Status, Len(Status))
Do While ret = 0
MsgBox \最小值 = \时间 = \时间 = \
ret = DnaGetNextHist(Key, Value, sTime, Len(sTime), Status, Len(Status))
Loop Else
MsgBox \读取失败\ End If
印步(北京)软件有限公司 第 33 页
REV.20061101
eDNA API函数示例(VB部分) DnaGetHistMinUTC ● 函数名称:DnaGetHistMinUTC
● 功能说明:初始化历史函数,获取在一段时间范围内存储于历史服务的点的最小值,时
间格式是UTC时间。
● 函数原形:
Declare Function DnaGetHistMinUTC
Lib \
ByVal Point As String, ByVal StartTime As Long, ByVal EndTime As Long, ByVal Period As Long, Key As Long ) As Integer
● 返回值说明:
成功返回0,不成功返回非0
● 相关函数:
StringToUTCTime ()
DnaGetNextHistUTC() UCTToStringTime()
● 参数说明:
ByVal Point As String, 要查询的实时服务的完整点名,格式:”站点名.服务名.标签” StartTime As Long, 要查询的实时服务的点的开始时间,以UTC格式表示 EndTime As Long, 要查询的实时服务的点的结束时间,以UTC格式表示 Period As Long, 查询周期,以秒为单位,函数将每隔tPeriod 取一次最小值,
tPeriod取值范围为{1, EndTime – StartTime}
Key As Long, 传出参数,数据标识,数据需要通过其他采集函数获取,如
DnaGetNextHistUTC函数
● 使用示例:
‘---------------------------------------------------------------------- ‘目标:获得一个点的一段时间内的最小值,时间格式UTC。
‘---------------------------------------------------------------------- Dim Value As Double, sTime As Long, Status As String * 20
Dim StrTIme As String * 20
Point = \
印步(北京)软件有限公司 第 34 页 REV.20061101
eDNA API函数示例(VB部分)
StartTime = StringToUTCTime(\EndTime = StringToUTCTime(\
Period = 86400
ret% = DnaGetHistAvgUTC(Point, StartTime, EndTime, Period, Key)
If ret = 0 Then
ret = DnaGetNextHistUTC(Key, Value, sTime, Status, Len(Status))
Do While ret = 0
UCTToStringTime sTime, StrTIme, Len(StrTIme)
MsgBox \00:00:00到09/25/2007 23:59:59间 平均值 = \& Value & \时间 = \状态 = \
ret = DnaGetNextHistUTC(Key, Value, sTime, Status, Len(Status))
Loop
Else
MsgBox \读取失败\ End If
印步(北京)软件有限公司 第 35 页
REV.20061101
eDNA API函数示例(VB部分) DnaGetHistSnap ● 函数名称:DnaGetHistSnap
函数说明:
初始化历史函数,获取在一段时间范围内存储于历史服务的点的快照值,时间格式
该API取历史数据值(V)的规律:
如果某点A没有历史数据,则向后搜索最近的一条历史数据B,这时A的数据值=B的数值,
A时间标签=自己该时刻的时间标签,否则向前搜索最近的历史数据C,这时A的数据值=C的数值,A时间标签=自己该时刻的时间标签。
所以用该API函数取某一时刻(i)的快照值求法:
Snap(i)= Vi ;
其中:
时刻i: 等于StartTime +(Period-1)*N, StartTime为指定的开始时间,Period为周期,
N为自然数
Vi:表示时刻i所对应的数值,取值方法见上述的规律说明
● 函数原形:
Declare Function DnaGetHistSnap
Lib \
ByVal Point As String, ByVal StartTime As String, ByVal EndTime As String, ByVal Period As String, Key As Long ) As Integer
● 返回值说明:
成功返回0,不成功返回非0
● 相关函数:
DnaGetNextHist()
● 参数说明:
ByVal Point As String, 要查询的实时服务的完整点名,格式:”站点名.服务名.标签” StartTime As String, 要查询的实时服务的点的开始时间,格式\hh:mm:ss\ EndTime As String, 要查询的实时服务的点的结束时间,格式\hh:mm:ss\
印步(北京)软件有限公司 第 36 页 REV.20061101
eDNA API函数示例(VB部分)
Period As String, Key As Long,
查询周期,以秒为单位,函数将每隔tPeriod 取一次最小值,tPeriod取值范围为{1, EndTime – StartTime} 传出参数,数据标识,数据需要通过其他采集函数获取,如DnaGetNextHist函数
● 使用示例:
‘---------------------------------------------------------------------- ‘目标:获得一个点的历史快照值。
‘----------------------------------------------------------------------
Dim StartTime As String, Point As String, EndTime As String, Period As String, Key As Long
Dim Value As Double, sTime As String * 20, Status As String * 20
Point = \
StartTime = \EndTime = \
Period = \
ret% = DnaGetHistSnap (Point, StartTime, EndTime, Period, Key)
If ret = 0 Then
ret = DnaGetNextHist(Key, Value, sTime, Len(sTime), Status, Len(Status))
Do While ret = 0
MsgBox \最小值 = \时间 = \时间 = \
ret = DnaGetNextHist(Key, Value, sTime, Len(sTime), Status, Len(Status))
Loop Else
MsgBox \读取失败\ End If
印步(北京)软件有限公司 第 37 页 REV.20061101
eDNA API函数示例(VB部分) DnaGetHistSnapUTC ● 函数名称:DnaGetHistSnapUTC
函数说明:
初始化历史函数,获取在一段时间范围内存储于历史服务的点的快照值,时间以UTC格式
表示
该API取历史数据值(V)的规律:
如果某点A没有历史数据,则向后搜索最近的一条历史数据B,这时A的数据值=B的数值,
A时间标签=自己该时刻的时间标签,否则向前搜索最近的历史数据C,这时A的数据值=C的数值,A时间标签=自己该时刻的时间标签。
所以用该API函数取某一时刻(i)的快照值求法:
Snap(i)= Vi ;
其中:
时刻i: 等于StartTime +(Period-1)*N, StartTime为指定的开始时间,Period为周期,
N为自然数
Vi:表示时刻i所对应的数值,取值方法见上述的规律说明
● 函数原形:
Declare Function DnaGetHistSnapUTC Lib \
ByVal Point As String, ByVal StartTime As Long, ByVal EndTime As Long, ByVal Period As Long, Key As Long ) As Integer
● 返回值说明:
成功返回0,不成功返回非0
● 相关函数:
StringToUTCTime ()
DnaGetNextHistUTC() UCTToStringTime()
● 参数说明:
ByVal Point As String, 要查询的实时服务的完整点名,格式:”站点名.服务名.标签” StartTime As Long, 要查询的实时服务的点的开始时间,以UTC格式表示
印步(北京)软件有限公司 第 38 页 REV.20061101
eDNA API函数示例(VB部分)
EndTime As Long, Period As Long, Key As Long,
要查询的实时服务的点的结束时间,以UTC格式表示 查询周期,以秒为单位,函数将每隔tPeriod 取一次最小值,tPeriod取值范围为{1, EndTime – StartTime} 传出参数,数据标识,数据需要通过其他采集函数获取,如DnaGetNextHist函数
● 使用示例:
‘---------------------------------------------------------------------- ‘目标:获得一个点的历史快照值。
‘----------------------------------------------------------------------
Dim StartTime As Long, Point As String, EndTime As Long, Period As Long, Key As Long
Dim Value As Double, sTime As Long, Status As String * 20
Dim StrTIme As String * 20
Point = \
StartTime = StringToUTCTime(\
EndTime = StringToUTCTime(\
Period = 60
ret% = DnaGetHistAvgUTC(Point, StartTime, EndTime, Period, Key)
If ret = 0 Then
ret = DnaGetNextHistUTC(Key, Value, sTime, Status, Len(Status))
Do While ret = 0
UCTToStringTime sTime, StrTIme, Len(StrTIme)
MsgBox \快照值 = \时间 = \状态 = \
ret = DnaGetNextHistUTC(Key, Value, sTime, Status, Len(Status))
Loop Else
MsgBox \读取失败\ End If
印步(北京)软件有限公司 第 39 页 REV.20061101
eDNA API函数示例(VB部分) DnaGetHistRaw ● 函数名称:DnaGetHistRaw
● 功能说明:初始化历史函数,获取存储于历史服务中的点在某一时间范围内实际存在的
历史数据。
● 函数原形:
Declare Function DnaGetHistRaw
Lib \
ByVal Point As String, ByVal StartTime As String, ByVal EndTime As String, Key As Long ) As Integer
● 返回值说明:
成功返回0,不成功返回非0
● 相关函数:
DnaGetNextHist()
● 参数说明:
ByVal Point As String, 要查询的实时服务的完整点名,格式:”站点名.服务名.标签” StartTime As String, 要查询的实时服务的点的开始时间,格式\ EndTime As String, 要查询的实时服务的点的结束时间,格式\ Period As String, 查询周期,以秒为单位,函数将每隔tPeriod 取一次平均值,
tPeriod取值范围为{1, EndTime – StartTime}
Key As Long, 传出参数,数据标识,数据需要通过其他采集函数获取,如
DnaGetNextHistUTC函数
● 使用示例:
‘---------------------------------------------------------------------- ‘目标:获得一个点的一段时间内的实际值,时间格式\。 ‘----------------------------------------------------------------------
Dim StartTime As String, Point As String, EndTime As String, Period As String, Key As Long
Dim Value As Double, sTime As String * 20, Status As String * 20
Point = \
印步(北京)软件有限公司 第 40 页 REV.20061101
eDNA API函数示例(VB部分)
StartTime = \
EndTime = \
Period = \
ret% = DnaGetHistRaw(Point, StartTime, EndTime, Period, Key)
If ret = 0 Then
ret = DnaGetNextHist(Key, Value, sTime, Len(sTime), Status, Len(Status))
Do While ret = 0
MsgBox \实际值 = \时间 = \状态 = \
ret = DnaGetNextHist(Key, Value, sTime, Len(sTime), Status, Len(Status))
Loop Else
MsgBox \读取失败\ End If
印步(北京)软件有限公司 第 41 页
REV.20061101
eDNA API函数示例(VB部分) DnaGetHistRawUTC ● 函数名称:DnaGetHistRawUTC
● 功能说明:初始化历史函数,获取存储于历史服务中的点在某一时间范围内实际存在的
历史数据,时间格式是UTC时间。
● 函数原形:
Declare Function DnaGetHistRawUTC
Lib \
ByVal Point As String, ByVal StartTime As Long, ByVal EndTime As Long, Key As Long ) As Integer
● 返回值说明:
成功返回0,不成功返回非0
● 参数说明:
ByVal Point As String, 要查询的实时服务的完整点名,格式:”站点名.服务名.标签” StartTime As Long, 要查询的实时服务的点的开始时间,以UTC格式表示 EndTime As Long, 要查询的实时服务的点的结束时间,以UTC格式表示 Period As Long, 查询周期,以秒为单位,函数将每隔tPeriod 取一次平均值,
tPeriod取值范围为{1, EndTime – StartTime}
Key As Long, 传出参数,数据标识,数据需要通过其他采集函数获取,如
DnaGetNextHistUTC函数
● 相关函数:
StringToUTCTime ()
DnaGetNextHistUTC() UCTToStringTime()
● 使用示例:
‘---------------------------------------------------------------------- ‘目标:获得一个点的一段时间内的实际值。
‘----------------------------------------------------------------------
Dim StartTime As Long, Point As String, EndTime As Long, Period As Long, Key As Long
Dim Value As Double, sTime As Long, Status As String * 20
Dim StrTIme As String * 20
Point = \
印步(北京)软件有限公司 第 42 页 REV.20061101
eDNA API函数示例(VB部分)
StartTime = StringToUTCTime(\
EndTime = StringToUTCTime(\
Period = 60
ret% = DnaGetHistRawUTC(Point, StartTime, EndTime, Period, Key)
If ret = 0 Then
ret = DnaGetNextHistUTC(Key, Value, sTime, Status, Len(Status))
Do While ret = 0
UCTToStringTime sTime, StrTIme, Len(StrTIme)
MsgBox \实际值 = \时间 = \状态 = \
ret = DnaGetNextHistUTC(Key, Value, sTime, Status, Len(Status))
Loop Else
MsgBox \读取失败\ End If
印步(北京)软件有限公司 第 43 页
REV.20061101
eDNA API函数示例(VB部分)
DnaGetNextHist ● 函数名称:DnaGetNextHist
● 功能说明:返回下一个被初始化过的在历史服务中的点的值。 ● 函数原形:
Declare Function DnaGetNextHist
Lib \
ByVal Key As Long, Value As Double,
ByVal sTime As String, ByVal LenTime As Integer, ByVal Status As String, ByVal LenStatus As Integer ) As Integer
● 返回值说明:
成功返回0,不成功返回非0
● 相关函数:
DnaGetHistAvg 、DnaGetHistSnap、DnaGetHistMax、DnaGetHistMin、DnaGetHistRaw
● 参数说明:
Key As Long,
EzDnaApi 初始化历史函数的返回标识,函数如 DnaGetHistAvg、DnaGetHistSnap等
Value As Double, 传出参数,用来承载返回历史服务中的点的数值队列。 sTime As String, 传出参数,用来承载返回历史服务中的点的时间队列。 LenTime As Integer, 上述szStatus字符串的预留长度
Status As String, 传出参数,用来承载返回历史服务中的点的状态。 LenStatus As Integer, 上述Status字符串的预留长度
● 使用示例:
参见函数示例 DnaGetHistAvg 、DnaGetHistSnap、DnaGetHistMax、DnaGetHistMin、DnaGetHistRaw
印步(北京)软件有限公司 第 44 页 REV.20061101
正在阅读:
eDNA 实时数据库 API函数(VB VC部分)04-02
高中新学期新计划作文800字11-29
西北农林科技大学植物学课程考试大纲12-06
我的家乡宁都作文350字07-01
养生精04-25
伍光和自然地理学课后思考题答案整理06-22
2005年10月管理类联考逻辑真题08-08
2022年湖南师范大学公共管理学院333教育综合之简明中04-14
学生硬笔书法比赛总结10-23
安利销售员一周的业务流程04-08
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 函数
- 实时
- 部分
- 数据库
- eDNA
- API
- 51单片机仿真100实例
- 2014.7.20高三数学不等式教案
- 6年级完形填空
- 银山电子故障录波器说明书
- 虫害控制程序
- 2、砂砾垫层 施工检验批质量检验记录表
- 所得税会计研究论文
- 万科木地板采购技术要求
- 植物学理事会年度工作总结
- 专利电子申请程序(CPC客户端)常见问题两个
- 中职数学基础模块下册--概率与统计初步练习题及答案
- 《货物运输与包装》试题答案
- 教育局党委书记在暑期校长培训班上的讲话
- 中国移动网上大学传输 设备PTN 中兴 L2题库
- 数字电子技术基础课后答案全解
- 东农16秋《计算机原理》在线作业
- midas Gen-张弦结构分析1 - 图文
- 池南路倒虹吸涵洞专项施工方案
- 最简单的有机化合物 - -甲烷(必修2)
- 美国政体概要