⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pcs_snd_ys1.c

📁 unix 下用pro*c tuxedo 开发的东西
💻 C
📖 第 1 页 / 共 2 页
字号:
  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 + -