?? svrf309.ec
字號:
/***********************************************
房產打印
2003/03/05
************************************************/
#include "../incl/serverpub.h"
$include sqlca;
SvrF309(int argc,char *argv[])
{
$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];
int serno;
char id[17];
char title[21];
char location[41];
char flag[2];
char custodian[41];
char usufructer[41];
double build ;
char purpose[41] ;
double occupy ;
double ground_use ;
char g_init_date[11] ;
char g_stop_date[11] ;
char house_no[21] ;
char ground_no[21] ;
double ori_value ;
double pure_value ;
double eva_value ;
double mor_value;
char eva_unit[41] ;
char p_init_date[11] ;
char p_stop_date[11] ;
char state[2] ;
char recv_op[9] ;
char recv_date[11] ;
char mor_op[9] ;
char mor_date[11] ;
char name[21] ;
} 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 * from realty where apply_no in (select con_no from contract where %s) order by apply_no,serno");
strcpy(cSql1,"select count(*) from contract");
}
else
{
//sprintf(cSql,"select * from realty where apply_no in (select con_no from contract where %s) order by apply_no,serno",cSql2+5);
sprintf(cSql,"select apply_no,serno,id,title,location,flag,custodian,usufructer,build,purpose,occupy,ground_use,g_init_date,g_stop_date,house_no,ground_no,ori_value,pure_value,eva_value,mor_value,eva_unit,p_init_date,p_stop_date,state,recv_op,recv_date,mor_op,mor_date,name from realty where apply_no in (select con_no from contract where %s) order by apply_no,serno",cSql2+5);
sprintf(cSql1,"select count(*) from contract where %s",cSql2+5);
}
WriteTest("svrf309:cSql[%s]\n",cSql);
$prepare selid1 from $cSql1;
if(sqlca.sqlcode<0)
{
WriteTest("svrf309:prepare[%s] err[%ld]\n",cSql1,sqlca.sqlcode);
CreateStruct("返回碼","020");
return 0;
}
$execute selid1 into $iSumCounts;
if(sqlca.sqlcode!=0)
{
WriteTest("svrf309:execute[%s] err[%ld]\n",cSql1,sqlca.sqlcode);
CreateStruct("返回碼","020");
$free selid1;
return 0;
}
$free selid1;
WriteTest("svrf309:iSumCount[%d]\n",iSumCounts);
if(iSumCounts==0)
{
CreateStruct("返回碼","023");
return 0;
}
$prepare selid from $cSql;
if(sqlca.sqlcode<0)
{
WriteTest("svrf309(%d):prepare[%s] err[%ld]\n",__LINE__,cSql,sqlca.sqlcode);
CreateStruct("返回碼","020");
$free selid;
return 0;
}
$declare cursel cursor for selid;
if(sqlca.sqlcode<0)
{
WriteTest("svrf309(%d):prepare[%s] err[%ld]\n",__LINE__,cSql,sqlca.sqlcode);
CreateStruct("返回碼","020");
$free selid;
return 0;
}
$open cursel;
if(sqlca.sqlcode<0)
{
WriteTest("svrf309(%d):prepare[%s] err[%ld]\n",__LINE__,cSql,sqlca.sqlcode);
CreateStruct("返回碼","020");
$free selid;
return 0;
}
$fetch cursel into $sAll;
if(sqlca.sqlcode<0)
{
WriteTest("svrf309(%d):prepare[%s] err[%ld]\n",__LINE__,cSql,sqlca.sqlcode);
CreateStruct("返回碼","020");
$close cursel;
$free cursel;
$free selid;
return 0;
}
CreateStruct("文件標志","1");
if (( fp=fopen(fname,"w"))==NULL)
{
WriteTest("svrf309(%d):prepare[%s] err[%ld]\n",__LINE__,cSql,sqlca.sqlcode);
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;
case 3: strcpy(vcStat,"抵貸"); break;
}
memset(cFlag,0,sizeof(cFlag));
switch(atoi(sAll.flag))
{
case 0: strcpy(cFlag,"是"); break;
case 1: strcpy(cFlag,"否"); break;
}
ConvertDate(sAll.g_init_date);
ConvertDate(sAll.g_stop_date);
ConvertDate(sAll.p_init_date);
ConvertDate(sAll.p_stop_date);
ConvertDate(sAll.recv_date);
ConvertDate(sAll.mor_date);
fprintf(fp,"%s,%d,%s,%s,%s,%s,%s,%s,%.2f,%s,%.2f,%.2f,%s,%s,%s,%s,%.2f,%.2f,%.2f,%.2f,%s,%s,%s,%s,%s,%s,%s,%s,%s\n",sAll.apply_no,sAll.serno,sAll.id,sAll.title,sAll.location,cFlag,sAll.custodian,sAll.usufructer,sAll.build,sAll.purpose,sAll.occupy,sAll.ground_use,
sAll.g_init_date,sAll.g_stop_date,sAll.house_no,sAll.ground_no,sAll.ori_value,sAll.pure_value,sAll.eva_value,sAll.mor_value,sAll.eva_unit,sAll.p_init_date,sAll.p_stop_date,vcStat,sAll.recv_op,sAll.recv_date,sAll.mor_op,sAll.mor_date,sAll.name);
$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 + -