📄 convapi.c
字号:
if (sqlca.sqlcode < 0) sqlerror();
}
return(0);
}
int CallConvertPDYS( long int key,char *sjbh )
{
char tempstr[MID_LEN];
char tempstring[MID_LEN];
char temp_bkdh[MID_LEN];
char ch[2];
char tempstrqdqb[MID_LEN];
char jsfs[SHORT_LEN];
char temp,tmp_jsfs;
char fbkjbh[3];
char file_locat[MID_LEN];
char SJ_name[MID_LEN];
char SJ_name_no[MID_LEN];
int i, avoid_repeat;
int tempnum, retcode,flag ;
struct stPDYSSMDBRec PDSMDB;
short dingj_id,dyzs_id,dyk_id,lszs_id,lsk_id,qdqb_id,zdqa_id,zdqb_id;
ch[0]='\0';
/* EXEC SQL WHENEVER SQLERROR DO sqlerror(); */
/* EXEC SQL SELECT * INTO
:PDSMDB.bkdh,:PDSMDB.yslx,:PDSMDB.wjbh,:PDSMDB.qdqa,:PDSMDB.qdqb :qdqb_id,
:PDSMDB.zdqa :zdqa_id,:PDSMDB.zdqb :zdqb_id,
:PDSMDB.kq,:PDSMDB.dingj :dingj_id,:PDSMDB.dyzs :dyzs_id,:PDSMDB.dyk :dyk_id,
:PDSMDB.lszs :lszs_id,:PDSMDB.lsk :lsk_id,:PDSMDB.sjbh,:PDSMDB.yxnf,:PDSMDB.jsxh
FROM t_jspdyssm WHERE jsxh=:key AND sjbh=:sjbh; */
{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 8;
sqlstm.arrsiz = 18;
sqlstm.stmt = "select * into :b0,:b1,:b2,:b3,:b4:b5,:b6:b7,:b8:b9,:b10,:b11\
:b12,:b13:b14,:b15:b16,:b17:b18,:b19:b20,:b21,:b22,:b23 from t_jspdyssm where\
(jsxh=:b24 and sjbh=:b25)";
sqlstm.iters = (unsigned int )1;
sqlstm.offset = (unsigned int )582;
sqlstm.selerr = (unsigned short)1;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char *)&sqlca;
sqlstm.sqlety = (unsigned short)0;
sqlstm.sqhstv[0] = (unsigned char *)(PDSMDB.bkdh);
sqlstm.sqhstl[0] = (unsigned int )7;
sqlstm.sqindv[0] = ( short *)0;
sqlstm.sqharm[0] = (unsigned int )0;
sqlstm.sqhstv[1] = (unsigned char *)(PDSMDB.yslx);
sqlstm.sqhstl[1] = (unsigned int )2;
sqlstm.sqindv[1] = ( short *)0;
sqlstm.sqharm[1] = (unsigned int )0;
sqlstm.sqhstv[2] = (unsigned char *)(PDSMDB.wjbh);
sqlstm.sqhstl[2] = (unsigned int )3;
sqlstm.sqindv[2] = ( short *)0;
sqlstm.sqharm[2] = (unsigned int )0;
sqlstm.sqhstv[3] = (unsigned char *)&(PDSMDB.qdqa);
sqlstm.sqhstl[3] = (unsigned int )4;
sqlstm.sqindv[3] = ( short *)0;
sqlstm.sqharm[3] = (unsigned int )0;
sqlstm.sqhstv[4] = (unsigned char *)&(PDSMDB.qdqb);
sqlstm.sqhstl[4] = (unsigned int )4;
sqlstm.sqindv[4] = ( short *)&qdqb_id;
sqlstm.sqharm[4] = (unsigned int )0;
sqlstm.sqhstv[5] = (unsigned char *)&(PDSMDB.zdqa);
sqlstm.sqhstl[5] = (unsigned int )4;
sqlstm.sqindv[5] = ( short *)&zdqa_id;
sqlstm.sqharm[5] = (unsigned int )0;
sqlstm.sqhstv[6] = (unsigned char *)&(PDSMDB.zdqb);
sqlstm.sqhstl[6] = (unsigned int )4;
sqlstm.sqindv[6] = ( short *)&zdqb_id;
sqlstm.sqharm[6] = (unsigned int )0;
sqlstm.sqhstv[7] = (unsigned char *)(PDSMDB.kq);
sqlstm.sqhstl[7] = (unsigned int )7;
sqlstm.sqindv[7] = ( short *)0;
sqlstm.sqharm[7] = (unsigned int )0;
sqlstm.sqhstv[8] = (unsigned char *)&(PDSMDB.dingj);
sqlstm.sqhstl[8] = (unsigned int )4;
sqlstm.sqindv[8] = ( short *)&dingj_id;
sqlstm.sqharm[8] = (unsigned int )0;
sqlstm.sqhstv[9] = (unsigned char *)&(PDSMDB.dyzs);
sqlstm.sqhstl[9] = (unsigned int )4;
sqlstm.sqindv[9] = ( short *)&dyzs_id;
sqlstm.sqharm[9] = (unsigned int )0;
sqlstm.sqhstv[10] = (unsigned char *)&(PDSMDB.dyk);
sqlstm.sqhstl[10] = (unsigned int )4;
sqlstm.sqindv[10] = ( short *)&dyk_id;
sqlstm.sqharm[10] = (unsigned int )0;
sqlstm.sqhstv[11] = (unsigned char *)&(PDSMDB.lszs);
sqlstm.sqhstl[11] = (unsigned int )4;
sqlstm.sqindv[11] = ( short *)&lszs_id;
sqlstm.sqharm[11] = (unsigned int )0;
sqlstm.sqhstv[12] = (unsigned char *)&(PDSMDB.lsk);
sqlstm.sqhstl[12] = (unsigned int )4;
sqlstm.sqindv[12] = ( short *)&lsk_id;
sqlstm.sqharm[12] = (unsigned int )0;
sqlstm.sqhstv[13] = (unsigned char *)(PDSMDB.sjbh);
sqlstm.sqhstl[13] = (unsigned int )3;
sqlstm.sqindv[13] = ( short *)0;
sqlstm.sqharm[13] = (unsigned int )0;
sqlstm.sqhstv[14] = (unsigned char *)&(PDSMDB.yxnf);
sqlstm.sqhstl[14] = (unsigned int )4;
sqlstm.sqindv[14] = ( short *)0;
sqlstm.sqharm[14] = (unsigned int )0;
sqlstm.sqhstv[15] = (unsigned char *)&(PDSMDB.jsxh);
sqlstm.sqhstl[15] = (unsigned int )4;
sqlstm.sqindv[15] = ( short *)0;
sqlstm.sqharm[15] = (unsigned int )0;
sqlstm.sqhstv[16] = (unsigned char *)&key;
sqlstm.sqhstl[16] = (unsigned int )4;
sqlstm.sqindv[16] = ( short *)0;
sqlstm.sqharm[16] = (unsigned int )0;
sqlstm.sqhstv[17] = (unsigned char *)sjbh;
sqlstm.sqhstl[17] = (unsigned int )0;
sqlstm.sqindv[17] = ( short *)0;
sqlstm.sqharm[17] = (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;
return(-1);
}
temp=PDSMDB.yslx[0];
trim(PDSMDB.bkdh);
/* printf("bkdh%s\n",PDSMDB.bkdh);*/
GetPATH(PDSMDB.bkdh,PDSMDB.sjbh,PDSMDB.yxnf,fbkjbh);
/* EXEC SQL SELECT jsfs INTO :jsfs FROM t_fbkj WHERE fbkjbh=:fbkjbh; */
{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 8;
sqlstm.arrsiz = 18;
sqlstm.stmt = "select jsfs into :b0 from t_fbkj where fbkjbh=:b1";
sqlstm.iters = (unsigned int )1;
sqlstm.offset = (unsigned int )668;
sqlstm.selerr = (unsigned short)1;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char *)&sqlca;
sqlstm.sqlety = (unsigned short)0;
sqlstm.sqhstv[0] = (unsigned char *)jsfs;
sqlstm.sqhstl[0] = (unsigned int )10;
sqlstm.sqindv[0] = ( short *)0;
sqlstm.sqharm[0] = (unsigned int )0;
sqlstm.sqhstv[1] = (unsigned char *)fbkjbh;
sqlstm.sqhstl[1] = (unsigned int )3;
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();
}
trim(jsfs);
tmp_jsfs=jsfs[0];
/*** this is the clause to insert into temp table t_tempysflag ***/
/* EXEC SQL SELECT COUNT(*) INTO :avoid_repeat FROM t_tempysflag WHERE jsxh=:key AND sjbh=:sjbh; */
{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 8;
sqlstm.arrsiz = 18;
sqlstm.stmt = "select count(*) into :b0 from t_tempysflag where (jsxh=:b1\
and sjbh=:b2)";
sqlstm.iters = (unsigned int )1;
sqlstm.offset = (unsigned int )690;
sqlstm.selerr = (unsigned short)1;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char *)&sqlca;
sqlstm.sqlety = (unsigned short)0;
sqlstm.sqhstv[0] = (unsigned char *)&avoid_repeat;
sqlstm.sqhstl[0] = (unsigned int )4;
sqlstm.sqindv[0] = ( short *)0;
sqlstm.sqharm[0] = (unsigned int )0;
sqlstm.sqhstv[1] = (unsigned char *)&key;
sqlstm.sqhstl[1] = (unsigned int )4;
sqlstm.sqindv[1] = ( short *)0;
sqlstm.sqharm[1] = (unsigned int )0;
sqlstm.sqhstv[2] = (unsigned char *)sjbh;
sqlstm.sqhstl[2] = (unsigned int )0;
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 ( avoid_repeat==0 )
/* EXEC SQL INSERT INTO t_tempysflag VALUES ( :fbkjbh,:tmp_jsfs,:key,:sjbh,sysdate ); */
{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 8;
sqlstm.arrsiz = 18;
sqlstm.stmt = "insert into t_tempysflag values (:b0,:b1,:b2,:b3,sysdate )";
sqlstm.iters = (unsigned int )1;
sqlstm.offset = (unsigned int )716;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char *)&sqlca;
sqlstm.sqlety = (unsigned short)0;
sqlstm.sqhstv[0] = (unsigned char *)fbkjbh;
sqlstm.sqhstl[0] = (unsigned int )3;
sqlstm.sqindv[0] = ( short *)0;
sqlstm.sqharm[0] = (unsigned int )0;
sqlstm.sqhstv[1] = (unsigned char *)&tmp_jsfs;
sqlstm.sqhstl[1] = (unsigned int )1;
sqlstm.sqindv[1] = ( short *)0;
sqlstm.sqharm[1] = (unsigned int )0;
sqlstm.sqhstv[2] = (unsigned char *)&key;
sqlstm.sqhstl[2] = (unsigned int )4;
sqlstm.sqindv[2] = ( short *)0;
sqlstm.sqharm[2] = (unsigned int )0;
sqlstm.sqhstv[3] = (unsigned char *)sjbh;
sqlstm.sqhstl[3] = (unsigned int )0;
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();
}
/*** ***/
/* printf("jsfs%s\n",jsfs);*/
if( (strcmp(jsfs,"0")!=0)&&(strcmp(jsfs,"3")!=0) )
{
/* UpdateJSRZ_cved(key,sjbh);
*/ return(0);
}
messagepd=(char *)malloc((YSSM_LEN+1)*sizeof(char));
if( messagepd==NULL )
{
ProcessError(LOG_ERROR,"PCS_Convert_File: no space in memory when use ","CallConvertPDYS");
return(-1);
}
messagepd[0]='\0';
tempstr[0]='\0';
strcpy(tempstr,FBKJ_PATH);
strcat(tempstr,fbkjbh);
strcat(tempstr,"/bak/");
strcpy(file_locat,tempstr);
switch( temp )
{
case BPZ: strcat(tempstr,"BPZY");
break;
case BPJ: strcat(tempstr,"BPJY");
flag=qdqbconv(PDSMDB.qdqb,ch);
if( flag!=0 )
ProcessError(LOG_ERROR,"PCS_Convert_File: error qdqb > 31 when use ","CallConvertPDYS");
break;
case KPZ: strcat(tempstr,"KPZY");
break;
case KPJ: strcat(tempstr,"KPJY");
break;
default: ErrorEnded("PCS_Convert_File: error in function CallConvertPDYS yslx is not in pdys");
return(-1);
}
/* get pdys data filename */
/* strcpy(tempstring,PDSMDB.bkdh);
trim(tempstring);
strcat(tempstr,tempstring);
*/
/* strcat(tempstr,".");
strcpy(tempstring,PDSMDB.sjbh);
trim(tempstring);
strcat(tempstr,tempstring);
*/
/* strcat(tempstr,ch);
*/ h_pdys=fopen(tempstr,"a");
if( h_pdys == NULL )
{
ProcessError(LOG_ERROR,"PCS_Convert_File: cannot open ",tempstr);
createdir();
free(messagepd);
return(-1);
}
fseek(h_pdys,0,SEEK_END);
messagepd[0]='\0';
str_givenlen(PDSMDB.bkdh,6,RIGHT);
strcat(messagepd,PDSMDB.bkdh);
strcat(messagepd,BsbhFromT);
strcat(messagepd,PDSMDB.sjbh);
itoa(PDSMDB.qdqa,tempstr,2);
strcat(messagepd,tempstr);
/**/
if( qdqb_id!=-1 )
{
itoa(PDSMDB.qdqb,tempstr,2);
strcat(messagepd,tempstr);
}
else
strcat(messagepd," ");
if( zdqa_id==-1)
strcat(messagepd," ");
else
{
itoa(PDSMDB.zdqa,tempstr,2);
strcat(messagepd,tempstr);
}
/**/
if( zdqb_id!=-1 )
{
itoa(PDSMDB.zdqb,tempstr,2);
strcat(messagepd,tempstr);
}
else
strcat(messagepd," ");
strcat(messagepd,PDSMDB.kq);
if(dingj_id==-1)
strcat(messagepd," ");
else
{
ftoa(PDSMDB.dingj,tempstr,2,7);
str_givenlen(tempstr,6,LEFT);
strcat(messagepd,tempstr);
}
if(dyzs_id==-1)
strcat(messagepd," ");
else
{
itoa(PDSMDB.dyzs,tempstr,10);
str_givenlen(tempstr,10,LEFT);
strcat(messagepd,tempstr);
}
if(dyk_id==-1)
strcat(messagepd," ");
else
{
ftoa(PDSMDB.dyk,tempstr,2,12);
str_givenlen(tempstr,11,LEFT);
strcat(messagepd,tempstr);
}
tempstr[0]='\0';
if(lszs_id==-1)
strcat(messagepd," ");
else
{
itoa(PDSMDB.lszs,tempstr,10);
str_givenlen(tempstr,10,LEFT);
strcat(messagepd,tempstr);
}
tempstr[0]='\0';
if(lsk_id==-1)
strcat(messagepd," ");
else
{
ftoa(PDSMDB.lsk,tempstr,2,12);
str_givenlen(tempstr,11,LEFT);
strcat(messagepd,tempstr);
}
if( ((PDSMDB.yxnf)%2)==1 )
strcpy(tempstr,"1");
else
strcpy(tempstr,"0");
strcat(messagepd,tempstr);
strcat(messagepd,"\n");
fputs(messagepd,h_pdys);
free(messagepd);
fclose(h_pdys);
/* printf("%s\n",messagepd);*/
/* BPZY and BPJY need qdqb */
strcpy(temp_bkdh,PDSMDB.bkdh);
trim(temp_bkdh);
if( temp=='3' || temp=='5' )
{
tempstr[0]='\0';
strcpy(tempstring,"PZ");
strcat(tempstring,temp_bkdh);
strcat(tempstring,".");
strcat(tempstring,PDSMDB.sjbh);
}
else if( temp=='4' || temp=='6' )
{
tempstring[0]='\0';
strcpy(tempstring,"PJ");
strcat(tempstring,temp_bkdh);
strcat(tempstring,".");
strcat(tempstring,PDSMDB.sjbh);
strcat(tempstring,ch);
}
if( temp=='3' )
{
strcpy(tempstr,"BPZ");
YS_SINGAL[2]='1';
}
else if( temp=='5' )
{
strcpy(tempstr,"KPZ");
YS_SINGAL[4]='1';
}
else if( temp=='4' )
{
strcpy(tempstr,"BPJ");
YS_SINGAL[3]='1';
}
else if( temp=='6' )
{
strcpy(tempstr,"KPJ");
YS_SINGAL[5]='1';
}
messagepdsj=(char *)malloc(MAX_YSSJ_LEN*sizeof(char));
if( messagepdsj==NULL )
{
ProcessError(LOG_ERROR,"PCS_Convert_File: no space in memory when use ","CallConvertPDYS");
return(-1);
}
messagepdsj[0]='\0';
strcat(file_locat,tempstr);
h_pdsj=fopen(file_locat,"a");
if( h_pdsj == NULL )
{
ProcessError(LOG_ERROR,"PCS_Convert_File: cannot open ",file_locat);
free(messagepdsj);
return(-1);
}
fseek(h_pdsj,0,SEEK_END);
retcode=ConvertPDYSSJ(tempstring,messagepdsj,key,sjbh);
if( retcode!=0 )
{
free(messagepdsj);
fclose(h_pdsj);
ProcessError(LOG_ERROR,"PCS_Convert_File: convert pdsj error! ",END);
return(-1);
}
fputs(messagepdsj,h_pdsj);
free(messagepdsj);
fclose(h_pdsj);
UpdateJSRZ_cved(key,sjbh);
retur
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -