📄 pcs_snd_zdys_p.c
字号:
/* EXEC SQL OPEN cur_yssj; */
{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 8;
sqlstm.arrsiz = 13;
sqlstm.stmt = sq0006;
sqlstm.iters = (unsigned int )1;
sqlstm.offset = (unsigned int )148;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char *)&sqlca;
sqlstm.sqlety = (unsigned short)0;
sqlstm.sqhstv[0] = (unsigned char *)&key;
sqlstm.sqhstl[0] = (unsigned int )4;
sqlstm.sqindv[0] = ( short *)0;
sqlstm.sqharm[0] = (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();
}
for( i=0;i<count_rec;i++ )
{
/* EXEC SQL FETCH cur_yssj INTO :yffs,:zfjbh,:fsxh; */
{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 8;
sqlstm.arrsiz = 13;
sqlstm.iters = (unsigned int )1;
sqlstm.offset = (unsigned int )166;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char *)&sqlca;
sqlstm.sqlety = (unsigned short)0;
sqlstm.sqhstv[0] = (unsigned char *)&yffs;
sqlstm.sqhstl[0] = (unsigned int )4;
sqlstm.sqindv[0] = ( short *)0;
sqlstm.sqharm[0] = (unsigned int )0;
sqlstm.sqhstv[1] = (unsigned char *)zfjbh;
sqlstm.sqhstl[1] = (unsigned int )9;
sqlstm.sqindv[1] = ( short *)0;
sqlstm.sqharm[1] = (unsigned int )0;
sqlstm.sqhstv[2] = (unsigned char *)&fsxh;
sqlstm.sqhstl[2] = (unsigned int )4;
sqlstm.sqindv[2] = ( short *)0;
sqlstm.sqharm[2] = (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();
}
/* zfjbh[8]='\0';
strcat(message,zfjbh);
itoa(yffs,tempstring,8);
strcat(message,tempstring);
itoa(qzlss,tempstring,8);
strcat(message,tempstring);
*/
sprintf(message,"%s%8s%7d%7s",message,zfjbh,yffs," ");
}
/* EXEC SQL CLOSE cur_yssj; */
{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 8;
sqlstm.arrsiz = 13;
sqlstm.iters = (unsigned int )1;
sqlstm.offset = (unsigned int )192;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char *)&sqlca;
sqlstm.sqlety = (unsigned short)0;
sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
if (sqlca.sqlcode < 0) sqlerror();
}
#ifdef DEBUG
PutintoF(message);
#endif
if(MQBKSend_Syn(strlen(message) ,message, 0,"YS") < 0)
{
MQBKBack();
free(message);
/* EXEC SQL ROLLBACK WORK; */
{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 8;
sqlstm.arrsiz = 13;
sqlstm.iters = (unsigned int )1;
sqlstm.offset = (unsigned int )206;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char *)&sqlca;
sqlstm.sqlety = (unsigned short)0;
sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
if (sqlca.sqlcode < 0) sqlerror();
}
return(-1);
}
else
{
if(MQBKCmit()<0)
{
free(message);
return(-1);
}
}
/* printf("msg len is %ld\n",strlen(message));
*/ UpdateSndLogRecStatus( fsxh );
UpdateHZRec( fsxh );
free(message);
return(0);
}
void freect(void)
{
/* if( message!=NULL )
free(message);
MQBKClear();
*/ /* EXEC SQL ROLLBACK WORK RELEASE; */
{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 8;
sqlstm.arrsiz = 13;
sqlstm.iters = (unsigned int )1;
sqlstm.offset = (unsigned int )220;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char *)&sqlca;
sqlstm.sqlety = (unsigned short)0;
sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
if (sqlca.sqlcode < 0) sqlerror();
}
exit(0);
}
void main()
{
long int xh;
int i,j;
int count_rec;
char waitforsnd='2';
char ZDdatatype='1';
int flag;
int retcode=0;
char *PID = "Client Txn Clt_Mpt Process(Port 7111)";
char produce_err_str[20];
signal(SIGTERM,freect);
flag=InitPcsSndYSP();
if ( flag!=0 )
{
ProcessError(LOG_ERROR,"PCS_Snd_ZDYS_P: error when init function",END);
exit(0);
}
ProcessError(LOG_NORMAL,"PCS_Snd_ZDYS_P: Test this is NORMAL message",END);
iTInterval=0;
iTInterval=GetTimeInterval("PCS_SND_YS_P");
/* EXEC SQL WHENEVER SQLERROR DO sqlerror(); */
/* EXEC SQL SELECT bsbh INTO :BSBH FROM T_BSBH; */
{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 8;
sqlstm.arrsiz = 13;
sqlstm.stmt = "select bsbh into :b0 from T_BSBH ";
sqlstm.iters = (unsigned int )1;
sqlstm.offset = (unsigned int )234;
sqlstm.selerr = (unsigned short)1;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char *)&sqlca;
sqlstm.sqlety = (unsigned short)0;
sqlstm.sqhstv[0] = (unsigned char *)BSBH;
sqlstm.sqhstl[0] = (unsigned int )3;
sqlstm.sqindv[0] = ( short *)0;
sqlstm.sqharm[0] = (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();
}
begin:
ERROR=0;count_rec=0;
/* EXEC SQL SELECT count(*) INTO :count_rec FROM t_fsrz WHERE sjzt=:waitforsnd AND sjfl=:ZDdatatype; */
{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 8;
sqlstm.arrsiz = 13;
sqlstm.stmt = "select count(*) into :b0 from t_fsrz where (sjzt=:b1 and s\
jfl=:b2)";
sqlstm.iters = (unsigned int )1;
sqlstm.offset = (unsigned int )252;
sqlstm.selerr = (unsigned short)1;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char *)&sqlca;
sqlstm.sqlety = (unsigned short)0;
sqlstm.sqhstv[0] = (unsigned char *)&count_rec;
sqlstm.sqhstl[0] = (unsigned int )4;
sqlstm.sqindv[0] = ( short *)0;
sqlstm.sqharm[0] = (unsigned int )0;
sqlstm.sqhstv[1] = (unsigned char *)&waitforsnd;
sqlstm.sqhstl[1] = (unsigned int )1;
sqlstm.sqindv[1] = ( short *)0;
sqlstm.sqharm[1] = (unsigned int )0;
sqlstm.sqhstv[2] = (unsigned char *)&ZDdatatype;
sqlstm.sqhstl[2] = (unsigned int )1;
sqlstm.sqindv[2] = ( short *)0;
sqlstm.sqharm[2] = (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( count_rec == 0 || ERROR!=0 )
{
ERROR=0;
goto End;
}
/* EXEC SQL DECLARE cur_fsrz CURSOR FOR
SELECT fsxh FROM t_fsrz WHERE sjzt=:waitforsnd AND sjfl=:ZDdatatype; */
/* EXEC SQL OPEN cur_fsrz; */
{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 8;
sqlstm.arrsiz = 13;
sqlstm.stmt = sq0011;
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 *)&waitforsnd;
sqlstm.sqhstl[0] = (unsigned int )1;
sqlstm.sqindv[0] = ( short *)0;
sqlstm.sqharm[0] = (unsigned int )0;
sqlstm.sqhstv[1] = (unsigned char *)&ZDdatatype;
sqlstm.sqhstl[1] = (unsigned int )1;
sqlstm.sqindv[1] = ( short *)0;
sqlstm.sqharm[1] = (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();
}
/* printf("count , zt,fl=%d,%c,%c\n",count_rec,waitforsnd,ZDdatatype);
*/ retcode=MQBKInit("CSYW");
if( retcode<0 )
{
ProcessError(LOG_ERROR,"PCS_Snd_ZDYS_P: Error when init mq ys",END);
/* EXEC SQL CLOSE cur_fsrz; */
{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 8;
sqlstm.arrsiz = 13;
sqlstm.iters = (unsigned int )1;
sqlstm.offset = (unsigned int )300;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char *)&sqlca;
sqlstm.sqlety = (unsigned short)0;
sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
if (sqlca.sqlcode < 0) sqlerror();
}
goto End;
}
for( i=0;i<count_rec;i++ )
{
/* EXEC SQL FETCH cur_fsrz INTO :xh; */
{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 8;
sqlstm.arrsiz = 13;
sqlstm.iters = (unsigned int )1;
sqlstm.offset = (unsigned int )314;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char *)&sqlca;
sqlstm.sqlety = (unsigned short)0;
sqlstm.sqhstv[0] = (unsigned char *)&xh;
sqlstm.sqhstl[0] = (unsigned int )4;
sqlstm.sqindv[0] = ( short *)0;
sqlstm.sqharm[0] = (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==1 )
{
ERROR=0;
ProcessError(LOG_ERROR,"PCS_Snd_ZDYS_P: Error when fetch xh",END);
continue;
}
flag=PcsSndMQZDYS(xh);
if( flag!=0 )
{
sprintf(produce_err_str,"%10d",xh);
ProcessError(LOG_ERROR,"PCS_Snd_ZDYS_P: Error when use pcssndmqzdys fsxh is: ",produce_err_str);
/* EXEC SQL ROLLBACK WORK; */
{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 8;
sqlstm.arrsiz = 13;
sqlstm.iters = (unsigned int )1;
sqlstm.offset = (unsigned int )332;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char *)&sqlca;
sqlstm.sqlety = (unsigned short)0;
sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
if (sqlca.sqlcode < 0) sqlerror();
}
continue;
}
/* EXEC SQL COMMIT WORK; */
{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 8;
sqlstm.arrsiz = 13;
sqlstm.iters = (unsigned int )1;
sqlstm.offset = (unsigned int )346;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char *)&sqlca;
sqlstm.sqlety = (unsigned short)0;
sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
if (sqlca.sqlcode < 0) sqlerror();
}
}
MQBKClear();
/* EXEC SQL CLOSE cur_fsrz; */
{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 8;
sqlstm.arrsiz = 13;
sqlstm.iters = (unsigned int )1;
sqlstm.offset = (unsigned int )360;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char *)&sqlca;
sqlstm.sqlety = (unsigned short)0;
sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
if (sqlca.sqlcode < 0) sqlerror();
}
End:
#ifdef DEBUG
exit(0);
#endif
sleep(iTInterval);
goto begin;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -