📄 dpf_cprtn.cpp
字号:
/**************************************************************
* 所属模块 : dpflow
* 文件路径 : pas/dpflow
* 文 件 名 : dpf_cprtn.cpp
* 文件功能 : 取状态估计结果数据
* 继承关系 :
* 操作系统 : PC & UNIX
* 备 注 :
* 历史记录 :
* 时间 版本 作者 原因
*===============================================================
* 2004年04月08日 1.0 pas created
***************************************************************/
#include "dpf_pub.h"
#include "dpf_fun.h"
#include "system.h"
#ifndef _WINDOWS32
#ifdef _ALPHA
#include <sys/uswitch.h>
#endif
#endif
#ifndef _DEFINE_HIDBVAR_AS_GLOBAL_
#define _DEFINE_HIDBVAR_AS_GLOBAL_
#endif
#include "dpf_pas.h"
int main(int argc, char**argv)
{
#ifdef _ALPHA
long uval = uswitch(USC_GET, 0);
uval = uswitch(USC_SET, uval | USW_CORE);
if (uval < 0) perror("uswitch");
#endif
CContext::SetContextNo(argc, argv,AC_REALTIME_NO);
CCommArgs::Set(argc,argv,AP_PAS_DPF);
int app_no = CCommArgs::AppNo();
CGnParaCfg gn_type_cfg;
gn_type_cfg.GetType (app_no);
int cp_result = RequestRtnetWithApp(app_no);
dpf_access_db();
string msgstr;
if (cp_result > 0)
{
// strncpy(pfpart1_->MESSLN1,"已成功拷贝状态估计数据",MESSLN1$CHAR$SIZE);
msgstr = "已成功拷贝状态估计数据";
pferrmom_->LV$DPFOP=0;
gn_type_cfg.SetType();
}
else
{
// strncpy(pfpart1_->MESSLN1,"拷贝状态估计数据失败",MESSLN1$CHAR$SIZE);
msgstr = "拷贝状态估计数据失败";
}
strcpy(pfpart1_->MESSLN2,"");
dpf_sendall();
struct DPF_PARA_T
{
int tse;
char runmsg[80];
char dpfopmsg[256];
int dpfoptim;
}dpf_para;
dpf_para.tse = netbus_->TSE;
memset(dpf_para.runmsg, 0, 80);
strncpy(dpf_para.runmsg, msgstr.c_str(), 80);
memset(dpf_para.dpfopmsg, 0,256);
dpf_para.dpfoptim = 0;
ODB::CTableOp dpf_para_tblop;
if (dpf_para_tblop.Open(app_no, PARA_DPFLOW_EMS_NO) >= 0)
{
if (dpf_para_tblop.TableModify("tse, runmsg, dpfopmsg, dpfoptim", (const char*)&dpf_para, sizeof(DPF_PARA_T)) < 0)
{
cerr << "dpf_cprtn: Error -------- tableop modify tse,runmsg failed!" << endl;
}
}
else
{
cerr << "dpf_cprtn: Error -------- tableop open PARA_DPFLOW_EMS_NO failed!" << endl;
}
if (cp_result > 0)
{
info_comm_ems_pas comm_info;
GetCommInfo(app_no, comm_info);
comm_info.tse = dpf_para.tse;
strcpy(comm_info.message, dpf_para.runmsg);
UpdateCommInfo(app_no, comm_info);
}
else
{
UpdateCommInfo(app_no, dpf_para.runmsg, dpf_para.tse);
}
int op_id=2, conv_stat=0;
dpflow_log_event(app_no,op_id,conv_stat);
SendAppChangeDataMsg(app_no);
cerr << "+++++++++++++ " << dpf_para.runmsg << endl;
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -