📄 ysapi.c
字号:
return(-1);
}
PDSMMsgConvert(stPDSM,&stPDSMDB);
/* printf(",%s,%s,%s,%d,\n",stPDSMDB.bkdh,stPDSMDB.yslx,stPDSMDB.wjbh,stPDSMDB.qdqa);
printf(",%d,%d,%d,\n",stPDSMDB.qdqb,stPDSMDB.zdqa,stPDSMDB.zdqb);
printf(",%s,%.2f,%ld,%.2f\n",stPDSMDB.kq,stPDSMDB.dingj,stPDSMDB.dyzs,stPDSMDB.dyk);
printf(",%ld,%.2f,\n",stPDSMDB.lszs,stPDSMDB.lsk);
printf(",%s,%d,%ld,\n",stPDSMDB.fssbh,stPDSMDB.nf,stPDSMDB.xh);
*/
ERROR=0;
/* EXEC SQL WHENEVER SQLERROR DO sqlerror(); */
/* EXEC SQL INSERT INTO t_jspdyssm VALUES
(:stPDSMDB.bkdh,
:stPDSMDB.yslx,
:stPDSMDB.wjbh,
:stPDSMDB.qdqa :PDid.qdqa,
:stPDSMDB.qdqb :PDid.qdqb,
:stPDSMDB.zdqa :PDid.zdqa,
:stPDSMDB.zdqb :PDid.zdqb,
:stPDSMDB.kq,
:stPDSMDB.dingj :PDid.dingj,
:stPDSMDB.dyzs :PDid.dyzs,
:stPDSMDB.dyk :PDid.dyk,
:stPDSMDB.lszs :PDid.lszs,
:stPDSMDB.lsk :PDid.lsk,
:stPDSMDB.fssbh,
:stPDSMDB.nf :PDid.nf,
:stPDSMDB.xh);
*/
if( stPDSMDB.yslx[0]=='5' || stPDSMDB.yslx[0]=='6' )
/* EXEC SQL INSERT INTO t_jspdyssm
(bkdh,yslx,wjbh,qdqa,zdqa,kq,dingj,dyzs,dyk,lszs,lsk,sjbh,yxnf,jsxh)
VALUES
(:stPDSMDB.bkdh,
:stPDSMDB.yslx,
:stPDSMDB.wjbh,
:stPDSMDB.qdqa ,
:stPDSMDB.zdqa ,
:stPDSMDB.kq,
:stPDSMDB.dingj ,
:stPDSMDB.dyzs ,
:stPDSMDB.dyk ,
:stPDSMDB.lszs ,
:stPDSMDB.lsk ,
:stPDSMDB.fssbh,
:stPDSMDB.nf ,
:stPDSMDB.xh); */
{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 8;
sqlstm.arrsiz = 14;
sqlstm.stmt = "insert into t_jspdyssm(bkdh,yslx,wjbh,qdqa,zdqa,kq,dingj,d\
yzs,dyk,lszs,lsk,sjbh,yxnf,jsxh) values (:b0,:b1,:b2,:b3,:b4,:b5,:b6,:b7,:b8,\
:b9,:b10,:b11,:b12,:b13)";
sqlstm.iters = (unsigned int )1;
sqlstm.offset = (unsigned int )208;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char *)&sqlca;
sqlstm.sqlety = (unsigned short)0;
sqlstm.sqhstv[0] = (unsigned char *)(stPDSMDB.bkdh);
sqlstm.sqhstl[0] = (unsigned int )8;
sqlstm.sqindv[0] = ( short *)0;
sqlstm.sqharm[0] = (unsigned int )0;
sqlstm.sqhstv[1] = (unsigned char *)(stPDSMDB.yslx);
sqlstm.sqhstl[1] = (unsigned int )2;
sqlstm.sqindv[1] = ( short *)0;
sqlstm.sqharm[1] = (unsigned int )0;
sqlstm.sqhstv[2] = (unsigned char *)(stPDSMDB.wjbh);
sqlstm.sqhstl[2] = (unsigned int )3;
sqlstm.sqindv[2] = ( short *)0;
sqlstm.sqharm[2] = (unsigned int )0;
sqlstm.sqhstv[3] = (unsigned char *)&(stPDSMDB.qdqa);
sqlstm.sqhstl[3] = (unsigned int )4;
sqlstm.sqindv[3] = ( short *)0;
sqlstm.sqharm[3] = (unsigned int )0;
sqlstm.sqhstv[4] = (unsigned char *)&(stPDSMDB.zdqa);
sqlstm.sqhstl[4] = (unsigned int )4;
sqlstm.sqindv[4] = ( short *)0;
sqlstm.sqharm[4] = (unsigned int )0;
sqlstm.sqhstv[5] = (unsigned char *)(stPDSMDB.kq);
sqlstm.sqhstl[5] = (unsigned int )7;
sqlstm.sqindv[5] = ( short *)0;
sqlstm.sqharm[5] = (unsigned int )0;
sqlstm.sqhstv[6] = (unsigned char *)&(stPDSMDB.dingj);
sqlstm.sqhstl[6] = (unsigned int )4;
sqlstm.sqindv[6] = ( short *)0;
sqlstm.sqharm[6] = (unsigned int )0;
sqlstm.sqhstv[7] = (unsigned char *)&(stPDSMDB.dyzs);
sqlstm.sqhstl[7] = (unsigned int )4;
sqlstm.sqindv[7] = ( short *)0;
sqlstm.sqharm[7] = (unsigned int )0;
sqlstm.sqhstv[8] = (unsigned char *)&(stPDSMDB.dyk);
sqlstm.sqhstl[8] = (unsigned int )4;
sqlstm.sqindv[8] = ( short *)0;
sqlstm.sqharm[8] = (unsigned int )0;
sqlstm.sqhstv[9] = (unsigned char *)&(stPDSMDB.lszs);
sqlstm.sqhstl[9] = (unsigned int )4;
sqlstm.sqindv[9] = ( short *)0;
sqlstm.sqharm[9] = (unsigned int )0;
sqlstm.sqhstv[10] = (unsigned char *)&(stPDSMDB.lsk);
sqlstm.sqhstl[10] = (unsigned int )4;
sqlstm.sqindv[10] = ( short *)0;
sqlstm.sqharm[10] = (unsigned int )0;
sqlstm.sqhstv[11] = (unsigned char *)(stPDSMDB.fssbh);
sqlstm.sqhstl[11] = (unsigned int )3;
sqlstm.sqindv[11] = ( short *)0;
sqlstm.sqharm[11] = (unsigned int )0;
sqlstm.sqhstv[12] = (unsigned char *)&(stPDSMDB.nf);
sqlstm.sqhstl[12] = (unsigned int )4;
sqlstm.sqindv[12] = ( short *)0;
sqlstm.sqharm[12] = (unsigned int )0;
sqlstm.sqhstv[13] = (unsigned char *)&(stPDSMDB.xh);
sqlstm.sqhstl[13] = (unsigned int )4;
sqlstm.sqindv[13] = ( short *)0;
sqlstm.sqharm[13] = (unsigned int )0;
sqlstm.sqphsv = sqlstm.sqhstv;
sqlstm.sqphsl = sqlstm.sqhstl;
sqlstm.sqpind = sqlstm.sqindv;
sqlstm.sqparm = sqlstm.sqharm;
sqlstm.sqparc = sqlstm.sqharc;
sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
if (sqlca.sqlcode < 0) sqlerror();
}
else
/* EXEC SQL INSERT INTO t_jspdyssm VALUES
(:stPDSMDB.bkdh,
:stPDSMDB.yslx,
:stPDSMDB.wjbh,
:stPDSMDB.qdqa ,
:stPDSMDB.qdqb ,
:stPDSMDB.zdqa ,
:stPDSMDB.zdqb ,
:stPDSMDB.kq,
:stPDSMDB.dingj ,
:stPDSMDB.dyzs ,
:stPDSMDB.dyk ,
:stPDSMDB.lszs ,
:stPDSMDB.lsk ,
:stPDSMDB.fssbh,
:stPDSMDB.nf ,
:stPDSMDB.xh); */
{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 8;
sqlstm.arrsiz = 16;
sqlstm.stmt = "insert into t_jspdyssm values (:b0,:b1,:b2,:b3,:b4,:b5,:b6\
,:b7,:b8,:b9,:b10,:b11,:b12,:b13,:b14,:b15)";
sqlstm.iters = (unsigned int )1;
sqlstm.offset = (unsigned int )278;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char *)&sqlca;
sqlstm.sqlety = (unsigned short)0;
sqlstm.sqhstv[0] = (unsigned char *)(stPDSMDB.bkdh);
sqlstm.sqhstl[0] = (unsigned int )8;
sqlstm.sqindv[0] = ( short *)0;
sqlstm.sqharm[0] = (unsigned int )0;
sqlstm.sqhstv[1] = (unsigned char *)(stPDSMDB.yslx);
sqlstm.sqhstl[1] = (unsigned int )2;
sqlstm.sqindv[1] = ( short *)0;
sqlstm.sqharm[1] = (unsigned int )0;
sqlstm.sqhstv[2] = (unsigned char *)(stPDSMDB.wjbh);
sqlstm.sqhstl[2] = (unsigned int )3;
sqlstm.sqindv[2] = ( short *)0;
sqlstm.sqharm[2] = (unsigned int )0;
sqlstm.sqhstv[3] = (unsigned char *)&(stPDSMDB.qdqa);
sqlstm.sqhstl[3] = (unsigned int )4;
sqlstm.sqindv[3] = ( short *)0;
sqlstm.sqharm[3] = (unsigned int )0;
sqlstm.sqhstv[4] = (unsigned char *)&(stPDSMDB.qdqb);
sqlstm.sqhstl[4] = (unsigned int )4;
sqlstm.sqindv[4] = ( short *)0;
sqlstm.sqharm[4] = (unsigned int )0;
sqlstm.sqhstv[5] = (unsigned char *)&(stPDSMDB.zdqa);
sqlstm.sqhstl[5] = (unsigned int )4;
sqlstm.sqindv[5] = ( short *)0;
sqlstm.sqharm[5] = (unsigned int )0;
sqlstm.sqhstv[6] = (unsigned char *)&(stPDSMDB.zdqb);
sqlstm.sqhstl[6] = (unsigned int )4;
sqlstm.sqindv[6] = ( short *)0;
sqlstm.sqharm[6] = (unsigned int )0;
sqlstm.sqhstv[7] = (unsigned char *)(stPDSMDB.kq);
sqlstm.sqhstl[7] = (unsigned int )7;
sqlstm.sqindv[7] = ( short *)0;
sqlstm.sqharm[7] = (unsigned int )0;
sqlstm.sqhstv[8] = (unsigned char *)&(stPDSMDB.dingj);
sqlstm.sqhstl[8] = (unsigned int )4;
sqlstm.sqindv[8] = ( short *)0;
sqlstm.sqharm[8] = (unsigned int )0;
sqlstm.sqhstv[9] = (unsigned char *)&(stPDSMDB.dyzs);
sqlstm.sqhstl[9] = (unsigned int )4;
sqlstm.sqindv[9] = ( short *)0;
sqlstm.sqharm[9] = (unsigned int )0;
sqlstm.sqhstv[10] = (unsigned char *)&(stPDSMDB.dyk);
sqlstm.sqhstl[10] = (unsigned int )4;
sqlstm.sqindv[10] = ( short *)0;
sqlstm.sqharm[10] = (unsigned int )0;
sqlstm.sqhstv[11] = (unsigned char *)&(stPDSMDB.lszs);
sqlstm.sqhstl[11] = (unsigned int )4;
sqlstm.sqindv[11] = ( short *)0;
sqlstm.sqharm[11] = (unsigned int )0;
sqlstm.sqhstv[12] = (unsigned char *)&(stPDSMDB.lsk);
sqlstm.sqhstl[12] = (unsigned int )4;
sqlstm.sqindv[12] = ( short *)0;
sqlstm.sqharm[12] = (unsigned int )0;
sqlstm.sqhstv[13] = (unsigned char *)(stPDSMDB.fssbh);
sqlstm.sqhstl[13] = (unsigned int )3;
sqlstm.sqindv[13] = ( short *)0;
sqlstm.sqharm[13] = (unsigned int )0;
sqlstm.sqhstv[14] = (unsigned char *)&(stPDSMDB.nf);
sqlstm.sqhstl[14] = (unsigned int )4;
sqlstm.sqindv[14] = ( short *)0;
sqlstm.sqharm[14] = (unsigned int )0;
sqlstm.sqhstv[15] = (unsigned char *)&(stPDSMDB.xh);
sqlstm.sqhstl[15] = (unsigned int )4;
sqlstm.sqindv[15] = ( short *)0;
sqlstm.sqharm[15] = (unsigned int )0;
sqlstm.sqphsv = sqlstm.sqhstv;
sqlstm.sqphsl = sqlstm.sqhstl;
sqlstm.sqpind = sqlstm.sqindv;
sqlstm.sqparm = sqlstm.sqharm;
sqlstm.sqparc = sqlstm.sqharc;
sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
if (sqlca.sqlcode < 0) sqlerror();
}
if( ERROR !=0 )
{
ERROR=0;
ProcessError(LOG_ERROR,"PCS_RCV_YS: error when insert yssm!",END);
return(-1);
}
for( i=0;i<count_rec;i++ )
{
PDYSSJRcv( message,&stPDSJ );
PDSJMsgConvert(stPDSM,stPDSJ,&stPDSJDB);
ERROR=0;
/* EXEC SQL WHENEVER SQLERROR DO sqlerror(); */
/* EXEC SQL INSERT INTO t_jspdyssj VALUES (
:stPDSJDB.zjfs,:stPDSJDB.lszjfs :lszjfs_id,
:stPDSJDB.zfjbh,:stPDSJDB.sjbh,:stPDSJDB.xh);
*/
/* EXEC SQL INSERT INTO t_jspdyssj (zjfs,zfjbh,sjbh,jsxh) VALUES (
:stPDSJDB.zjfs,
:stPDSJDB.zfjbh,:stPDSJDB.sjbh,:stPDSJDB.xh); */
{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 8;
sqlstm.arrsiz = 16;
sqlstm.stmt = "insert into t_jspdyssj(zjfs,zfjbh,sjbh,jsxh) values (:b0,:\
b1,:b2,:b3)";
sqlstm.iters = (unsigned int )1;
sqlstm.offset = (unsigned int )356;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char *)&sqlca;
sqlstm.sqlety = (unsigned short)0;
sqlstm.sqhstv[0] = (unsigned char *)&(stPDSJDB.zjfs);
sqlstm.sqhstl[0] = (unsigned int )4;
sqlstm.sqindv[0] = ( short *)0;
sqlstm.sqharm[0] = (unsigned int )0;
sqlstm.sqhstv[1] = (unsigned char *)(stPDSJDB.zfjbh);
sqlstm.sqhstl[1] = (unsigned int )9;
sqlstm.sqindv[1] = ( short *)0;
sqlstm.sqharm[1] = (unsigned int )0;
sqlstm.sqhstv[2] = (unsigned char *)(stPDSJDB.sjbh);
sqlstm.sqhstl[2] = (unsigned int )3;
sqlstm.sqindv[2] = ( short *)0;
sqlstm.sqharm[2] = (unsigned int )0;
sqlstm.sqhstv[3] = (unsigned char *)&(stPDSJDB.xh);
sqlstm.sqhstl[3] = (unsigned int )4;
sqlstm.sqindv[3] = ( short *)0;
sqlstm.sqharm[3] = (unsigned int )0;
sqlstm.sqphsv = sqlstm.sqhstv;
sqlstm.sqphsl = sqlstm.sqhstl;
sqlstm.sqpind = sqlstm.sqindv;
sqlstm.sqparm = sqlstm.sqharm;
sqlstm.sqparc = sqlstm.sqharc;
sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
if (sqlca.sqlcode < 0) sqlerror();
}
if( ERROR!=0 )
{
ERROR=0;
ProcessError(LOG_ERROR,"PCS_RCV_YS: error when insert into yssj!",END);
return(-1);
}
}
return(0);
}
int Snd_HZ_MQ( long int fsxh, char *fssbh, char *jssbh )
{
char buf_hz[15];
char c_fsxh[11];
int ret_code;
int sndcode;
sprintf(buf_hz,"%10ld%2s%2s",fsxh,fssbh,jssbh);
buf_hz[14]='\0';
sndcode=atoi(fssbh);
#ifdef DEBUG
printf("hzmsg ##%s##\n",buf_hz);
#endif
ret_code = MQBKSend_Syn( strlen(buf_hz), buf_hz, sndcode, "HZ" );
if ( ret_code < 0 )
{
ProcessError(LOG_ERROR,"PCS_RCV_YS: MQ hz did not send successful!",END);
return(-1);
}
ret_code = MQBKCmit();
if ( ret_code < 0 )
{
ProcessError(LOG_ERROR,"PCS_RCV_YS: MQ hz did not commit successful!",END);
return(-1);
}
return(0);
}
/*** distinguish zd and pd, and handle the message ***/
int PcsRcvYS(char *message,long int msglen)
{
char datatype;
char fssbh[3];
char jssbh[3];
char tempstring[MID_LEN];
char tmp_str[MID_LEN];
long int lg_Key;
int flag;
int retcode=0,kd;
char *tmp_point;
char yslx_checkzxbf,jsys_zxbf='7';
int count_zfj_zz,count_yssj_zz;
long int count_DYZS,count_YSZFS;
long int count_DY_LS;
zdnumpoint=85;
pdnumpoint=91;
/** distinguish pd from zd by the yslx character **/
if( message[21]=='1'||message[21]=='2'||message[21]=='7'||message[21]=='8' )
datatype='1';
else if( message[21]=='3'||message[21]=='4'||message[21]=='5'||message[21]=='6' )
datatype='2';
else
{
ProcessError(LOG_ERROR,"PCS_RCV_YS: error when read yslx from MQ",END);
return(-1);
}
tmp_point=message;
myapi_ReadString(message,fssbh,12,13);
myapi_ReadString(message,jssbh,10,11);
myapi_ReadString(message,tempstring,0,9);
lg_Key=atol( tempstring );
flag=CreateRecLogRec( datatype, fssbh, lg_Key );
if( flag!=1 )
{
ProcessError(LOG_ERROR,"PCS_RCV_YS: error use function ", "CreateRecLogRec");
return(-1);
}
#ifdef DEBUG
printf("datatype,fssbh,key:%c,%s,%ld\n",datatype,fssbh,lg_Key);
#endif
if( datatype=='1' )
{
flag=ZDYSRcvRecDB( message,msglen );
if( flag!=0 )
{
ProcessError(LOG_ERROR,"PCS_RCV_YS: error when insert zd data from message to database",END);
return(-1);
}
}
else
{
flag=PDYSRcvRecDB( message,msglen );
if( flag!=0 )
{
ProcessError(LOG_ERROR,"PCS_RCV_YS: error when insert pd data from message to database",END);
return(-1);
}
}
#ifdef DEBUG
printf("put ys to database success\n");
#endif
flag=UpdateJSRZ_rec( lg_Key,fssbh );
if( flag!=1 )
{
ProcessError(LOG_ERROR,"PCS_RCV_YS: error use function ", "UpdateJSRZ_rec");
return(-1);
}
/* EXEC SQL VAR jssbh IS STRING; */
/* EXEC SQL SELECT bsbh INTO :jssbh FROM T_BSBH; */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -