一种提高电能表检定结果上传到电力营销系统速度的方法技术方案

技术编号:7682544 阅读:221 留言:0更新日期:2012-08-16 05:53
一种提高电能表检定结果上传到电力营销系统速度的方法,所述方法使用2个ADO?Data控件访问Oracle数据库,其中一个ADOData控件只需与序列表建立连接,专门用于读取每条记录的唯一标识号;另一个ADOData控件则在电力营销系统各相关的数据表按顺序进行切换连接。该方法既能确保电能表检定结果上传到电力营销系统可靠性又能提高电能表检定结果上传到电力营销系统的速度。本发明专利技术适用于提高电能表检定结果上传到电力营销系统的速度使用。

【技术实现步骤摘要】

本专利技术涉及,属电力计量软件编程方法

技术介绍
国家电网公司正在进行电力营销系统“SG186”工程和电力用户用电信息采集工程建设。这两项工程的出台要求所有电能表的置产信息、误差数据、检定结果、流程状态都必需上传到电力营销系统。 电力营销系统“SG186”采用Oracle数据库,大多数电能表检定装置的控制程序采用VB6. O编写。为了提高鉴定数据的上网效率,编程人员都用ADO Data控件访问Oracle数据库。ADO Data控件使用Microsoft ActiveX数据对象(ADO )来建立数据绑定的控件和数据提供者之间的连接。合理使用ADO Data控件会使编程工作事半功倍。电力营销系统“SG186”数据库与电能表检定有关的数据表有(I) D_METER (电能表信息数据表)、(2)D_METER_DETECT (电能表检定记录数据表)、(3)D_METER_DETECT_CONC (电能表检定结论数据表)、(4)D_METER_ERR (电能表检定误差数据表)、(5) D_METER_DIGIT_WALK (电能表走字记录数据表)等数据表。传统的电能表检定结果上传到电力营销系统方法是使用一个ADOData控件对以上数据表逐个进行操作,首先对D_METER (电能表信息数据表)进行添加电能表资产信息记录,具体步骤如下 (O与序列表建立连接,读取记录的唯一标识号; (2)与D_METER (电能表信息表)建立连接,设置唯一标识号为刚读取的标识号,再对该数据表中的每个字段逐条添加对应的资产信息记录。在对数据表有D_METER (电能表信息表)操作完毕后,再采用同样的步骤对D_METER_DETECT (电能表检定记录表)、D_METER_DETECT_CONC (电能表检定结论表)、D_METER_ERR (电能表检定误差表)、D_METER_DIGIT_WALK (电能表走字记录表)等数据表进行操作。到此,第一块电能表的数据已上传到电力营销系统“SG186”数据库。电能表检定装置一般都能同时检定6块以上的电能表,再通过循环语句对其它各电能表重复上述操作,直到所有电能表的检定数据上传到电力营销系统“SG186”数据库。利用ADO Data控件实现电能表的检定数据上传到电力营销“SG186”数据库,影响速度最大因素在于ADO Data控件与每个数据表建立连接的时间。设每次建立连接时间为T(一般大于I秒)。按照上述方法ADO Data控件不断地在序列表和5个数据表之间不断地切换,其中在对D_METER_ERR (电能表检定误差表)添加记录时,由于每块三相多功能电能表有四个象限的近180余个测试点,每个测试点5个误差数据。由于在添加每条记录时需将ADO Data控件切换到序列表读取该条记录的唯一标识号,再切换到对应的数据表添加记录,因此至少需建立连接360次,则总上传时间为360T,则6快电能表的上传时间为2160T(上传时间至少36分钟)。
技术实现思路
本专利技术的目的是,公开,既能确保电能表检定结果上传到电力营销系统可靠性又能提高电能表检定结果上传到电力营销系统的速度。本专利技术的技术方案是,本专利技术使用2个ADO Data控件访问Oracle数据库,其中一个ADO Data控件只需与序列表建立连接,专门用于读取每条记录的唯一标识号;另一个ADO Data控件则在电力营销系统各相关的数据表按顺序进行切换连接;电力营销系统各相关的数据表包括D_METER (电能表信息数据表)、D_METER_DETECT (电能表检定记录数据表)、D_METER_DETECT_CONC (电能表检定结论数据表)、D_METER_ERR (电能表检定误差数据表)、D_METER_DIGIT_WALK (电能表走字记录数据表)。另一个ADO Data控件到每个数据表只需切换一次,每条记录的唯一标识号只是由第一个ADO Data控件读取获得,即可将所有电能表的所有需添加到该数据表的记录按顺序完成,无需对检定每块表的每条记录都在序列号数据表之间进行换。 本专利技术与现有技术比较的有益效果是,本专利技术通过使用2个ADO Data控件访问OracIe数据库,其中一个ADO Data控件只需与序列表建立连接,专门用于读取每条记录的唯一标识号;另一个ADO Data控件则对五个数据表进行切换,可将所有电能表的所有需添加到该数据表的记录按顺序完成,无需对检定每块表的每条记录都在序列号数据表之间进行换。米用本专利技术方法后,6块电能表总上传时间约为15秒钟,而传统方法6快电能表的上传时间至少36分钟。可见,采用本专利技术后,大大提高了上传速度,节省了电能表检定结果上传到电力营销系统的时间,同时又能确保电能表检定结果上传到电力营销系统可靠性。本专利技术适用于电能表检定数据上传到电力营销系统。附图说明 附图I为传统方法使用ADO控件实现电能表检定数据上传电力营销系统原操作流程 附图2为本专利技术使用ADO控件实现电能表检定数据上传电力营销系统操作流程图。具体实施例方式本专利技术具体实施方式如图2所示,图2是本专利技术使用ADO控件实现电能表检定数据上传电力营销系统操作流程。本专利技术实施例使用了 2个ADO Data控件访问Oracle数据库,其中一个ADOData (2)控件只需负责与序列表建立连接,读取每个记录的唯一标识号;另一个ADOData(I)控件则在上述的5个数据表按顺序进行切换连接。具体方法如下 从第一块到第N块表逐块循环以下步骤 (1)ADOData(I)控件与D_METER电能表信息数据表建立连接Adodcl. RecordSource = "select * from D_METER WHERE BAR_C0DE =,〃 + 电能表条形码值+ 〃’ 〃Adodcl. Refresh 再保存数据到D_METER数据表(2)ADO Data(I)控件与D_METER_DETECT电能表检定记录数据表建立连接Adodcl.RecordSource = "select * from D_METER_DETECT WHERE READ_ID= ’" + O + "’ 〃Adodcl. Refresh ADO Data (2)控件与序列表建立连接Adodc2. RecordSource = "SELECT SEQ_D_METER_DETECT. NEXTVAL FROM DUAL"Adodc2. Refresh 从 Adodc2 读取序列号 XH_ID = Adodc2. Recordset. Fields (O) 将对应数据保存数据到D_METER_DETECT数据表 Adodcl. Recordset. AddNew Adodcl. Recordset!READ_ID = XH_ID’ 序列号 Adodcl. Recordset !METER_ID = ID’ 电能表标识 (3)其余各表数据步骤方法同步骤2。由于使用的ADO Data(2)控件只需与序列表建立连接,在检定多块电能表时不需对每块电能表的每条记录进行切换,只需读取每条记录的唯一标识号即可。而ADO Data(I) 控件无需在检定每块表或每块表的每条记录时本文档来自技高网
...

【技术保护点】

【技术特征摘要】

【专利技术属性】
技术研发人员:刘水祝婧赵燕郑振洲余波
申请(专利权)人:江西省电力科学研究院
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1