📄 svrf307.ec
字号:
/***********************************************
保证人打印
2003/03/04
************************************************/
#include "../incl/serverpub.h"
$include sqlca;
SvrF307(int argc,char *argv[])
{
/*
char cc[4][11];
memset(cc,0,sizeof(cc));
strcpy(cc[2],"2000/01/01");
strcpy(cc[3],"2003/11/11");
SvrF314(4,cc);
*/
$char cQuryBank[11],cStartNo[17],cEndNo[17],cStartDate[9],cEndDate[9];
$char cSql[800],cSql1[800],cSql2[800];
$char vcBreedName[31];
char vcStat[5],cFlag[3],cAbility[5];
$int iSumCounts;
char fname[50],cTemp[100];
FILE *fp;
int i;
$struct sLoanCont {
char apply_no[17];
char id[17];
char agree_no[21];
char flag[2];
double sum;
char ability[5];
char state[2];
} sAll;
#ifdef QDCS
for(i=0;i<argc;i++)
WriteTest("argv[%d]:%s\n",i,argv[i]);
#endif
sprintf(cQuryBank,"%s",argv[0]);
sprintf(cStartNo,"%s",argv[1]);
sprintf(cEndNo,"%s",argv[2]);
sprintf(cStartDate,"%s",argv[3]);
sprintf(cEndDate,"%s",argv[4]);
sprintf(fname,"%s/download/%s",getenv("HOME"),argv[5]);
memset(cSql2,0,sizeof(cSql2));
if((strlen(cQuryBank)!=0)&&(strncmp(cQuryBank," ",4)!=0))
{
sprintf(cTemp," and bank_no matches \"%s\"",cQuryBank);
strcat(cSql2,cTemp);
}
if((strlen(cStartNo)!=0)&&(strncmp(cStartNo," ",4)!=0))
{
sprintf(cTemp," and con_no>=\"%s\"",cStartNo);
strcat(cSql2,cTemp);
}
if((strlen(cEndNo)!=0)&&(strncmp(cEndNo," ",4)!=0))
{
sprintf(cTemp," and con_no<=\"%s\"",cEndNo);
strcat(cSql2,cTemp);
}
if((strlen(cStartDate)!=0)&&(strncmp(cStartDate," ",4)!=0))
{
sprintf(cTemp," and sign_date>=\"%s\"",cStartDate);
strcat(cSql2,cTemp);
}
if((strlen(cEndDate)!=0)&&(strncmp(cEndDate," ",4)!=0))
{
sprintf(cTemp," and sign_date<=\"%s\"",cEndDate);
strcat(cSql2,cTemp);
}
if(strlen(cSql2)==0)
{
strcpy(cSql,"select apply_no,id,agree_no,flag,sum,ability,state from assurer where apply_no in (select con_no from contract where %s) order by apply_no");
strcpy(cSql1,"select count(*) from contract");
}
else
{
sprintf(cSql,"select apply_no,id,agree_no,flag,sum,ability,state from assurer where apply_no in (select con_no from contract where %s) order by apply_no",cSql2+5);
sprintf(cSql1,"select count(*) from contract where %s",cSql2+5);
}
WriteTest("svrf307:cSql[%s]\n",cSql);
$prepare selid1 from $cSql1;
if(sqlca.sqlcode<0)
{
WriteTest("svrf307:prepare[%s] err[%ld]\n",cSql1,sqlca.sqlcode);
CreateStruct("返回码","020");
return 0;
}
$execute selid1 into $iSumCounts;
if(sqlca.sqlcode!=0)
{
WriteTest("svrf307:execute[%s] err[%ld]\n",cSql1,sqlca.sqlcode);
CreateStruct("返回码","020");
$free selid1;
return 0;
}
$free selid1;
WriteTest("svrf307:iSumCount[%d]\n",iSumCounts);
if(iSumCounts==0)
{
CreateStruct("返回码","023");
return 0;
}
$prepare selid from $cSql;
if(sqlca.sqlcode<0)
{
WriteTest("svrf307:prepare[%s] err[%ld]\n",cSql,sqlca.sqlcode);
CreateStruct("返回码","020");
$free selid;
return 0;
}
$declare cursel cursor for selid;
if(sqlca.sqlcode<0)
{
WriteTest("svrf307:declare[%s] err[%ld]\n",cSql,sqlca.sqlcode);
CreateStruct("返回码","020");
$free selid;
return 0;
}
$open cursel;
if(sqlca.sqlcode<0)
{
WriteTest("svrf307:open declare err[%ld]\n",sqlca.sqlcode);
CreateStruct("返回码","020");
$free selid;
return 0;
}
$fetch cursel into $sAll;
if(sqlca.sqlcode<0)
{
WriteTest("svrf307:fetch err[%ld]\n",sqlca.sqlcode);
CreateStruct("返回码","020");
$close cursel;
$free cursel;
$free selid;
return 0;
}
CreateStruct("文件标志","1");
if (( fp=fopen(fname,"w"))==NULL)
{
WriteTest("svrf307: open file %s error \n",fname);
CreateStruct("返回码","020");
$close cursel;
$free cursel;
$free selid;
return 0;
}
fprintf(fp, "贷款申请号,保证人客户号,保证协议号,是否我社客户,保证金额,保证能力,状态\n");
while(sqlca.sqlcode==0)
{
memset(vcStat,0,sizeof(vcStat));
switch(atoi(sAll.state))
{
case 0: strcpy(vcStat,"正常"); break;
case 1: strcpy(vcStat,"逾期"); break;
case 2: strcpy(vcStat,"终止"); break;
}
memset(cFlag,0,sizeof(cFlag));
switch(atoi(sAll.flag))
{
case 0: strcpy(cFlag,"是"); break;
case 1: strcpy(cFlag,"否"); break;
}
memset(cAbility,0,sizeof(cAbility));
switch(atoi(sAll.ability))
{
case 1: strcpy(cAbility,"强"); break;
case 2: strcpy(cAbility,"较强"); break;
case 3: strcpy(cAbility,"较弱"); break;
case 4: strcpy(cAbility,"弱"); break;
}
fprintf(fp,"%s,%s,%s,%s,%.2f,%s,%s\n",sAll.apply_no,sAll.id,sAll.agree_no,cFlag,sAll.sum,cAbility,vcStat);
$fetch cursel into $sAll;
}
$close cursel;
$free cursel;
$free selid;
fclose(fp);
CreateStruct("返回码","000");
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -