📄 pcs_snd_ys1.c
字号:
sqlstm.iters = (unsigned int )1;
sqlstm.offset = (unsigned int )86;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char *)&sqlca;
sqlstm.sqlety = (unsigned short)0;
sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
}
free(buf1);
fclose(fp);
return(-1);
}
fseek(fp,(YSSM_LEN+1)*CountYSSM,0);
flag=myapi_ReadALinefromF(cLine,fp);
if( flag!=1 )
{
ProcessError(LOG_ERROR,"PCS_Snd_YS1: Error when read a line from ", arg);
errorEndPcsSndYS1(buf1,buf2);
fclose(fp);
return(-1);
}
flag=fread(buf2,sizeof(char),YS_Len,fp);
if( flag!=YS_Len )
{
ProcessError(LOG_ERROR,"PCS_Snd_YS1: Error when read string to buffer from ", arg);
errorEndPcsSndYS1(buf1,buf2);
fclose(fp);
return(-1);
}
fclose(fp); /** modified in 2000.3 **/
if( filename[1]=='Z' )
{
for( i=0;i<CountYSSM;i++ )
{
flag=myapi_ReadALine(cLine,buf1,&m);
if( flag!=1 )
{
ProcessError(LOG_ERROR,"PCS_Snd_YS1: Error when read a line from buffer",END);
errorEndPcsSndYS1(buf1,buf2);
return(-1);
}
tmp_fsxh=0;
typeflag=ConvertZDYSSMFormat( cLine,filename,&stZDYSSMDB );
if(typeflag!=0)
{
strcpy(produce_err_str,stZDYSSMDB.bkdh);
ProcessError(LOG_ERROR,"PCS_Snd_YS1: Error when convert string to struct ", "stZDYSSMDB");
errorEndPcsSndYS1(buf1,buf2);
ProcessError(LOG_ERROR,"PCS_Snd_YS1: the error line is:",cLine);
return(-1);
}
flag=myapi_ReadALine(cLine,buf2,&n);
if( flag!=1 )
{
ProcessError(LOG_ERROR,"PCS_Snd_YS1: Error when read a line from buffer",END);
errorEndPcsSndYS1(buf1,buf2);
ProcessError(LOG_ERROR,"PCS_Snd_YS1: the error msg bkdh is :" ,stZDYSSMDB.bkdh);
return(-1);
}
for( k=0;k<SHORT_NUM;k++ )
{
tempstring[k]=cLine[2+k];
if( cLine[3+k]=='.')
{
tempstring[k+1]='\0';
break;
}
}
if(strcmp(tempstring,stZDYSSMDB.bkdh)!=0)
{
strcpy(produce_err_str,stZDYSSMDB.bkdh);
ProcessError(LOG_ERROR,"PCS_Snd_YS1: Error yssj may be not corresponding with yssm",END);
errorEndPcsSndYS1(buf1,buf2);
ProcessError(LOG_ERROR,"PCS_Snd_YS1: the error msg bkdh is :" ,stZDYSSMDB.bkdh);
return(-1);
}
CHECK_TOTAL_YSSJ=0;
typeflag=ConvRecDBZDYS( cLine,stZDYSSMDB,buf2,filename,&n );
if(typeflag!=0)
{
strcpy(produce_err_str,stZDYSSMDB.bkdh);
ProcessError(LOG_ERROR,"PCS_Snd_YS1: Error when handle with zdyssm or zdyssj",END);
errorEndPcsSndYS1(buf1,buf2);
ProcessError(LOG_ERROR,"PCS_Snd_YS1: the error msg bkdh is :" ,stZDYSSMDB.bkdh);
return(-1);
}
count_zfj_zz=0;
count_yssj_zz=0;
if( stZDYSSMDB.yslx[0]=='1' ||stZDYSSMDB.yslx[0]=='7' )
{
/* EXEC SQL SELECT count(*) INTO :count_zfj_zz FROM t_zfj WHERE sjbh=t_bsbh.bsbh AND yxnf=:stZDYSSMDB.nf; */
{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 8;
sqlstm.arrsiz = 2;
sqlstm.stmt = "select count(*) into :b0 from t_zfj where (sjbh=t_bsbh.\
bsbh and yxnf=:b1)";
sqlstm.iters = (unsigned int )1;
sqlstm.offset = (unsigned int )100;
sqlstm.selerr = (unsigned short)1;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char *)&sqlca;
sqlstm.sqlety = (unsigned short)0;
sqlstm.sqhstv[0] = (unsigned char *)&count_zfj_zz;
sqlstm.sqhstl[0] = (unsigned int )4;
sqlstm.sqindv[0] = ( short *)0;
sqlstm.sqharm[0] = (unsigned int )0;
sqlstm.sqhstv[1] = (unsigned char *)&(stZDYSSMDB.nf);
sqlstm.sqhstl[1] = (unsigned int )4;
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);
}
/* EXEC SQL SELECT count(*) INTO :count_yssj_zz FROM t_fszdyssj WHERE fsxh=:stZDYSSMDB.xh; */
{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 8;
sqlstm.arrsiz = 2;
sqlstm.stmt = "select count(*) into :b0 from t_fszdyssj where fsxh=:b1";
sqlstm.iters = (unsigned int )1;
sqlstm.offset = (unsigned int )122;
sqlstm.selerr = (unsigned short)1;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char *)&sqlca;
sqlstm.sqlety = (unsigned short)0;
sqlstm.sqhstv[0] = (unsigned char *)&count_yssj_zz;
sqlstm.sqhstl[0] = (unsigned int )4;
sqlstm.sqindv[0] = ( short *)0;
sqlstm.sqharm[0] = (unsigned int )0;
sqlstm.sqhstv[1] = (unsigned char *)&(stZDYSSMDB.xh);
sqlstm.sqhstl[1] = (unsigned int )4;
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( ((stZDYSSMDB.dyzs+stZDYSSMDB.lszs)!=CHECK_TOTAL_YSSJ) || (count_zfj_zz!=count_yssj_zz) )
{
ProcessError(LOG_ERROR,"PCS_Snd_YS1: the dyzs is not equal to sum(yffs), please check it! ",END);
/* EXEC SQL UPDATE t_fsrz SET sjzt=:flag_ZXBF WHERE fsxh=:tmp_fsxh; */
{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 8;
sqlstm.arrsiz = 2;
sqlstm.stmt = "update t_fsrz set sjzt=:b0 where fsxh=:b1";
sqlstm.iters = (unsigned int )1;
sqlstm.offset = (unsigned int )144;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char *)&sqlca;
sqlstm.sqlety = (unsigned short)0;
sqlstm.sqhstv[0] = (unsigned char *)&flag_ZXBF;
sqlstm.sqhstl[0] = (unsigned int )1;
sqlstm.sqindv[0] = ( short *)0;
sqlstm.sqharm[0] = (unsigned int )0;
sqlstm.sqhstv[1] = (unsigned char *)&tmp_fsxh;
sqlstm.sqhstl[1] = (unsigned int )4;
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);
}
}
}
EndPcsSndYS1(buf1,buf2);
return(0);
}
else if ( filename[1]=='P' )
{
for( i=0;i<CountYSSM;i++ )
{
flag=myapi_ReadALine(cLine,buf1,&m);
if( flag!=1 )
{
ProcessError(LOG_ERROR,"PCS_Snd_YS1: Error when read a line from buffer",END);
errorEndPcsSndYS1(buf1,buf2);
return(-1);
}
tmp_fsxh=0;
typeflag=ConvertPDYSSMFormat( cLine,filename,&stPDYSSMDB );
if(typeflag!=0)
{
strcpy(produce_err_str,stPDYSSMDB.bkdh);
ProcessError(LOG_ERROR,"PCS_Snd_YS1: Error when convert string to struct ", "stPDYSSMDB");
errorEndPcsSndYS1(buf1,buf2);
ProcessError(LOG_ERROR,"PCS_Snd_YS1: the error line is:",cLine);
return(-1);
}
flag=myapi_ReadALine(cLine,buf2,&n);
if( flag!=1 )
{
ProcessError(LOG_ERROR,"PCS_Snd_YS1: Error when read a line from buffer",END);
errorEndPcsSndYS1(buf1,buf2);
ProcessError(LOG_ERROR,"PCS_Snd_YS1: the error msg bkdh is :" ,stPDYSSMDB.bkdh);
return(-1);
}
tempstring[0]='\0';
for( k=0;k<SHORT_NUM;k++ )
{
tempstring[k]=cLine[2+k];
if( cLine[3+k]=='.')
{
tempstring[k+1]='\0';
break;
}
}
if(strcmp(tempstring,stPDYSSMDB.bkdh)!=0)
{
strcpy(produce_err_str,stPDYSSMDB.bkdh);
ProcessError(LOG_ERROR,"PCS_Snd_YS1: Error yssj may be not corresponding with yssm",END);
errorEndPcsSndYS1(buf1,buf2);
ProcessError(LOG_ERROR,"PCS_Snd_YS1: the error msg bkdh is :" ,stPDYSSMDB.bkdh);
return(-1);
}
CHECK_TOTAL_YSSJ=0;
typeflag=ConvRecDBPDYS( cLine,stPDYSSMDB,buf2,filename,&n );
if(typeflag!=0)
{
strcpy(produce_err_str,stPDYSSMDB.bkdh);
ProcessError(LOG_ERROR,"PCS_Snd_YS1: Error when handle with pdyssm or pdyssj",END);
errorEndPcsSndYS1(buf1,buf2);
ProcessError(LOG_ERROR,"PCS_Snd_YS1: the error msg bkdh is :" ,stPDYSSMDB.bkdh);
return(-1);
}
if( (stPDYSSMDB.dyzs+stPDYSSMDB.lszs)!=CHECK_TOTAL_YSSJ )
{
/* EXEC SQL UPDATE t_fsrz SET sjzt=:flag_ZXBF WHERE fsxh=:tmp_fsxh; */
{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 8;
sqlstm.arrsiz = 2;
sqlstm.stmt = "update t_fsrz set sjzt=:b0 where fsxh=:b1";
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 *)&flag_ZXBF;
sqlstm.sqhstl[0] = (unsigned int )1;
sqlstm.sqindv[0] = ( short *)0;
sqlstm.sqharm[0] = (unsigned int )0;
sqlstm.sqhstv[1] = (unsigned char *)&tmp_fsxh;
sqlstm.sqhstl[1] = (unsigned int )4;
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);
}
ProcessError(LOG_ERROR,"PCS_Snd_YS1: the dyzs is not equal to sum(zjfs), please check it! ",END);
}
}
EndPcsSndYS1(buf1,buf2);
return(0);
}
else
{
errorEndPcsSndYS1(buf1,buf2);
ProcessError(LOG_ERROR,"PCS_Snd_YS1: the filename may be not right,it is :",filename);
return(-1);
}
/* delete the temp YS file now */
}
void main(int argc,char *arg[])
{
int flag=0;
char tmpstr[100];
char produce_err_str[10];
if( argc < 2 )
{
ProcessError(LOG_ERROR,"PCS_Snd_YS1: Error in function tempfile needed",END);
return;
}
strcpy(produce_err_str,"");
YS_PC_INT=atoi(arg[2]);
flag=mainfunction(arg[1],produce_err_str);
if(flag!=0)
{
sprintf(tmpstr,"%s bkdh is %s",arg[1],produce_err_str);
ProcessError(LOG_ERROR,"PCS_Snd_YS1: error msg may be given above, operator need check it and send the file again! the file is",tmpstr);
sprintf(tmpstr,"mv %s %s",arg[1],"/usr/bkfx/data/rcv/backup/.");
system(tmpstr);
}
else
{
sprintf(tmpstr,"rm %s",arg[1]);
system(tmpstr);
}
exit(0);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -