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

📄 svrf307.ec

📁 一个银行业务的程序
💻 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 + -