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

📄 mfeeagr.c

📁 电力与银行通讯的源码 1.应用tuxedo中间件. 2.与银行的前置机通讯. 3.proc*c 的应用
💻 C
📖 第 1 页 / 共 3 页
字号:
     /*	MW_Trace("OK3");*/	/*从临时表中取数据,并分配输出的数据缓冲*/	 /*1、取记录数,并分配内存*/	sprintf(szSql,"select count(*) from #tmp_bank_qry");	ppVar[0] = &iResultCount;	if(!DB_SQLPrepare(&theDatabase, szSql, ppVar, 1))	{		DB_ExecuteSQL(&theDatabase,szDropSql);		sprintf(szMsg,"SQL = %s Prepare失败!",szSql);		gf_Return(&mwMidWare,-1,szMsg);		return;	}	DB_SQLFetch(&theDatabase);	DB_SQLDone(&theDatabase);	/*根据数据量分配内存空间*/	if (iForceFlag == 0)	{		if (iResultCount <= MAX_RESULT)			nBufferSize = SIZE_OF_MAIN * iResultCount;	}	if (iForceFlag == 10)	{		nBufferSize = SIZE_OF_MAIN * iResultCount;		if (iResultCount <= MAX_RESULT)			nBufferSize += SIZE_OF_DETAIL * iResultCount * MAX_DETAIL_ONE;	}	if (iForceFlag == 1)	{		nBufferSize = SIZE_OF_MAIN * iResultCount;	}	if (iForceFlag == 11)	{		nBufferSize = SIZE_OF_MAIN * iResultCount + SIZE_OF_DETAIL * iResultCount * MAX_DETAIL_ONE;	}/*	sprintf(szMsg,"OK4 = %d",iResultCount);	MW_Trace(szMsg);*/	MW_AllocateString(&mwMidWare,nBufferSize + 40);	/*最大设置32K的空间*/	szOutBuf = MW_GetOutBuf(&mwMidWare);	if (szOutBuf == NULL)	{		gf_Return(&mwMidWare,-1,"分配空间失败!");		return;	}	if (iResultCount > 0 && (iForceFlag > 0 || (iForceFlag ==0 && iResultCount <= MAX_RESULT)))	{		szResult = szOutBuf + 16;		szResultDetail = szResult + iResultCount * SIZE_OF_MAIN;	 /*2、按顺序取数据*/		sprintf(szSql,"select KHBH,DFID ,CBCBM,JLZZBH,DFNY  ,CBSXH ,Convert(char(10),YSKSSJ,102),\CSYSHJ,BSDF  ,PDF   ,FDF   ,GDF   ,JBDF  ,LLDF  ,DSK1  ,DSK2  ,DSK3  ,DSK4  ,DSK5  ,DSK6  ,DSK7  ,DSK8  ,PZM   ,PQM   ,FZM   ,FQM   ,GZM   ,GQM   ,WGZM  ,\WGQM  ,YGBL  ,WGBL  ,PBS   ,FBS   ,GBS   ,WGBS  ,PJFDL ,FJFDL ,GJFDL ,WGJFDL,JFRL  ,GLYS  ,TZL   ,PDFDJ ,FDFDJ ,GDFDJ ,JBDFDJ,DSK1DJ,DSK2DJ,DSK3DJ,DSK4DJ,\DSK5DJ,DSK6DJ,DSK7DJ,DSK8DJ,CCBH  ,TSBZ  ,PDL   ,FDL   ,GDL   ,WGDL  ,DL    ,RZBZSM,KHXM  ,YDDZ ,CSYSHJ - YSZJE as df_sum ,YSWYJCKJE - WYJSSJE - WYJJMSPJE - WYJHJSPJE as wyj from #tmp_bank_qry");ppVar[0] = szKHBHTmp;ppVar[1] = &cs_DFID;ppVar[2] =  sz_CBCBM;ppVar[3] =  sz_JLZZBH;ppVar[4] =  sz_DFNY;ppVar[5] =  sz_CBSXH;ppVar[6] =  sz_YSKSSJ;ppVar[7] = &cs_CSYSHJ;ppVar[8] = &cs_BSDF;  ppVar[9] = &cs_PDF ;  ppVar[10]= &cs_FDF ;  ppVar[11] = &cs_GDF ; ppVar[12] = &cs_JBDF; ppVar[13] = &cs_LLDF; ppVar[14] = &cs_DSK1; ppVar[15] = &cs_DSK2; ppVar[16] = &cs_DSK3; ppVar[17] = &cs_DSK4; ppVar[18] = &cs_DSK5; ppVar[19] = &cs_DSK6; ppVar[20] = &cs_DSK7; ppVar[21] = &cs_DSK8; ppVar[22] = &cs_PZM ; ppVar[23] = &cs_PQM ; ppVar[24] = &cs_FZM ; ppVar[25] = &cs_FQM ; ppVar[26] = &cs_GZM ; ppVar[27] = &cs_GQM ; ppVar[28] = &cs_WGZM; ppVar[29] = &cs_WGQM; ppVar[30] = &i_YGBL;  ppVar[31] = &i_WGBL ; ppVar[32] = &cs_PBS  ;ppVar[33] = &cs_FBS  ;ppVar[34] = &cs_GBS  ;ppVar[35] = &cs_WGBS ;ppVar[36] = &cs_PJFDL;ppVar[37] = &cs_FJFDL;ppVar[38] = &cs_GJFDL;ppVar[39] = &cs_WGJFDL;ppVar[40] = &cs_JFRL  ;ppVar[41] = &i_GLYS  ;ppVar[42] = &cs_TZL   ;ppVar[43] = &cs_PDFDJ ;ppVar[44] = &cs_FDFDJ ;ppVar[45] = &cs_GDFDJ ;ppVar[46] = &cs_JBDFDJ;ppVar[47] = &cs_DSK1DJ;ppVar[48] = &cs_DSK2DJ;ppVar[49] = &cs_DSK3DJ;ppVar[50] = &cs_DSK4DJ;ppVar[51] = &cs_DSK5DJ;ppVar[52] = &cs_DSK6DJ;ppVar[53] = &cs_DSK7DJ;ppVar[54] = &cs_DSK8DJ;ppVar[55] = sz_CCBH;   ppVar[56] = &i_TSBZ;   ppVar[57] = &cs_PDL   ;ppVar[58] = &cs_FDL   ;ppVar[59] = &cs_GDL   ;ppVar[60] = &cs_WGDL  ;ppVar[61] = &cs_DL    ;ppVar[62] = sz_RZBZSM; ppVar[63] = sz_KHXM; ppVar[64] = sz_YDDZ; ppVar[65] = &cs_DF_SUM  ;ppVar[66] = &cs_WYJ    ;/*	MW_Trace("OK5");*/		if(!DB_SQLPrepare(&theDatabase, szSql, ppVar, 67))		{			sprintf(szMsg,"SQL = %s Prepare失败!",szSql);			gf_Return(&mwMidWare,-1,szMsg);			return;		}		i = 0;		j = 0;/*	MW_Trace("OK6");*/		iDetailCount = 0;		while(DB_SQLFetch(&theDatabase) == TRUE)		{	/*有数据,将数据放入Buffer*/			/*将CS_NUMERIC转换成double*/			DB_ConvertNumericToDouble(&theDatabase,&cs_DFID,&d_DFID,15,0);			DB_ConvertNumericToDouble(&theDatabase,&cs_PQM,&d_PQM,10,2);			DB_ConvertNumericToDouble(&theDatabase,&cs_PZM,&d_PZM,10,2);			DB_ConvertNumericToDouble(&theDatabase,&cs_DF_SUM,&d_DF_SUM,13,2);			DB_ConvertNumericToDouble(&theDatabase,&cs_WYJ,&d_WYJ,13,2);			sprintf(szTemp,"%15.0f%6s%13.2f%13.2f%40s%80s%20s%10.2f%10.2f",				d_DFID,sz_DFNY,d_DF_SUM,d_WYJ,sz_KHXM,sz_YDDZ,sz_CCBH,d_PQM,d_PZM);			memcpy(szResult + i * SIZE_OF_MAIN,szTemp,SIZE_OF_MAIN);			i ++;/*			DFID 电费流水	CHAR(15)				DFNY 费用月份	CHAR(6)		YYYYMM			JBDF 电费总额	CHAR(13)	##########.##			WYJ  违约金额	CHAR(13)	##########.##			KHXM 户名		CHAR(40)				YDDZ 用电地址	CHAR(80)				CCBH 表号		CHAR(20)				PQM  平起码		CHAR(10)	#######.##			PZM  平止码		CHAR(10)	#######.##*//*	MW_Trace("OK7");*/			sprintf(szTemp1,"%15.0f",d_DFID);			if (iForceFlag == 11 || (iForceFlag == 10 && iResultCount <= MAX_RESULT))			{/*有明细记录*/				szTemp[37] = '\0';				/*CBCBM       02  //抄表册编码 VARCHAR(7),*/				if (sz_CBCBM[0] != ' '){					sprintf(szTemp,"%15s%2s%20s",szTemp1,F_CBCBM,sz_CBCBM);					if (iDetailCount <= (iResultCount * MAX_DETAIL_ONE)){ strcat(szResultDetail,szTemp);j++;};					iDetailCount ++;				}				/*JLZZBH      04  //计量装置编号 VARCHAR(12),*/				if (sz_JLZZBH[0] != ' '){					sprintf(szTemp,"%15s%2s%20s",szTemp1,F_JLZZBH,sz_JLZZBH);					if (iDetailCount <= (iResultCount * MAX_DETAIL_ONE)){ strcat(szResultDetail,szTemp);j++;};					iDetailCount ++;				}				/*DFNY        05  //电费年月 CHAR(6) ,*/				if (sz_DFNY[0] != ' '){					sprintf(szTemp,"%15s%2s%20s",szTemp1,F_DFNY,sz_DFNY);					if (iDetailCount <= (iResultCount * MAX_DETAIL_ONE)){ strcat(szResultDetail,szTemp);j++;};					iDetailCount ++;				}				/*CBSXH       06  //抄表顺序号 CHAR(6),*/				if (sz_CBSXH[0] != ' '){					sprintf(szTemp,"%15s%2s%20s",szTemp1,F_CBSXH,sz_CBSXH);					if (iDetailCount <= (iResultCount * MAX_DETAIL_ONE)){ strcat(szResultDetail,szTemp);j++;};					iDetailCount ++;				}				/*YSKSSJ      09  //应收开始时间 Datetime DEFAULT GETDATE(),*/				if (sz_YSKSSJ[0] != ' '){					sprintf(szTemp,"%15s%2s%20s",szTemp1,F_YSKSSJ,sz_YSKSSJ);					if (iDetailCount <= (iResultCount * MAX_DETAIL_ONE)){ strcat(szResultDetail,szTemp);j++;};					iDetailCount ++;				}				/*RZBZSM      78  //入帐说明		VARCHAR(20)*/				if (sz_RZBZSM[0] != ' '){					sprintf(szTemp,"%15s%2s%20s",szTemp1,F_RZBZSM,sz_RZBZSM);					if (iDetailCount <= (iResultCount * MAX_DETAIL_ONE)){ strcat(szResultDetail,szTemp);j++;};					iDetailCount ++;				}				/*YGBL        36  //有功倍率 INT,*/				if (i_YGBL != 0){					sprintf(szTemp,"%15s%2s%20d",szTemp1,F_YGBL,i_YGBL);					if (iDetailCount <= (iResultCount * MAX_DETAIL_ONE)){ strcat(szResultDetail,szTemp);j++;};					iDetailCount ++;				}				/*WGBL        37  //无功倍率 INT,*/				if (i_WGBL != 0){					sprintf(szTemp,"%15s%2s%20d",szTemp1,F_WGBL,i_WGBL);					if (iDetailCount <= (iResultCount * MAX_DETAIL_ONE)){ strcat(szResultDetail,szTemp);j++;};					iDetailCount ++;				}				/*CCBH        69  //出厂编号 VARCHAR(20) NULL,    --表号*/				if (sz_CCBH != ""){					sprintf(szTemp,"%15s%2s%20s",szTemp1,F_CCBH,sz_CCBH);					if (iDetailCount <= (iResultCount * MAX_DETAIL_ONE)){ strcat(szResultDetail,szTemp);j++;};					iDetailCount ++;				}				/*TSBZ        70  //特殊标志 tinyint     NULL,    --对应多块表*/				/*if (i_TSBZ != 0){					sprintf(szTemp,"%15s%2s%20d",szTemp1,F_TSBZ,i_TSBZ);					if (iDetailCount <= (iResultCount * MAX_DETAIL_ONE)){ strcat(szResultDetail,szTemp);j++;};					iDetailCount ++;				}*/				/*CSYSHJ      13  //初始应收合计 Numeric(15,4) Default 0,*/				DB_ConvertNumericToDouble(&theDatabase,&cs_CSYSHJ,&d_CSYSHJ,15,4);				if (d_CSYSHJ != 0){					sprintf(szTemp,"%15s%2s%20.2f",szTemp1,F_CSYSHJ,d_CSYSHJ);					if (iDetailCount <= (iResultCount * MAX_DETAIL_ONE)){ strcat(szResultDetail,szTemp);j++;};					iDetailCount ++;				}				/*BSDF        14  //补收电费 Numeric(15,4) Default 0,*/				DB_ConvertNumericToDouble(&theDatabase,&cs_BSDF,&d_BSDF,15,4);				if (d_BSDF != 0){					sprintf(szTemp,"%15s%2s%20.2f",szTemp1,F_BSDF,d_BSDF);					if (iDetailCount <= (iResultCount * MAX_DETAIL_ONE)){ strcat(szResultDetail,szTemp);j++;};					iDetailCount ++;				}				/*PDF         15  //平电费 Numeric(15,4) Default 0,*/				DB_ConvertNumericToDouble(&theDatabase,&cs_PDF,&d_PDF,15,4);				if (d_PDF != 0){					sprintf(szTemp,"%15s%2s%20.2f",szTemp1,F_PDF,d_PDF);					if (iDetailCount <= (iResultCount * MAX_DETAIL_ONE)){ strcat(szResultDetail,szTemp);j++;};					iDetailCount ++;				}				/*FDF         16  //峰电费 Numeric(15,4) Default 0,*/				DB_ConvertNumericToDouble(&theDatabase,&cs_FDF,&d_FDF,15,4);				if (d_FDF != 0){					sprintf(szTemp,"%15s%2s%20.2f",szTemp1,F_FDF,d_FDF);					if (iDetailCount <= (iResultCount * MAX_DETAIL_ONE)){ strcat(szResultDetail,szTemp);j++;};					iDetailCount ++;				}				/*GDF         17  //谷电费 Numeric(15,4) Default 0,*/				DB_ConvertNumericToDouble(&theDatabase,&cs_GDF,&d_GDF,15,4);				if (d_GDF != 0){					sprintf(szTemp,"%15s%2s%20.2f",szTemp1,F_GDF,d_GDF);					if (iDetailCount <= (iResultCount * MAX_DETAIL_ONE)){ strcat(szResultDetail,szTemp);j++;};					iDetailCount ++;				}				/*JBDF        18  //基本电费 Numeric(15,4) Default 0,*/				DB_ConvertNumericToDouble(&theDatabase,&cs_JBDF,&d_JBDF,15,4);				if (d_JBDF != 0){					sprintf(szTemp,"%15s%2s%20.2f",szTemp1,F_JBDF,d_JBDF);					if (iDetailCount <= (iResultCount * MAX_DETAIL_ONE)){ strcat(szResultDetail,szTemp);j++;};					iDetailCount ++;				}				/*LLDF        19  //力率电费 Numeric(15,4) Default 0,*/				DB_ConvertNumericToDouble(&theDatabase,&cs_LLDF,&d_LLDF,15,4);				if (d_LLDF != 0){					sprintf(szTemp,"%15s%2s%20.2f",szTemp1,F_LLDF,d_LLDF);					if (iDetailCount <= (iResultCount * MAX_DETAIL_ONE)){ strcat(szResultDetail,szTemp);j++;};					iDetailCount ++;				}				/*DSK1        20  //代收款1 Numeric(15,4) Default 0,*/				DB_ConvertNumericToDouble(&theDatabase,&cs_DSK1,&d_DSK1,15,4);				if (d_DSK1 != 0){					sprintf(szTemp,"%15s%2s%20.2f",szTemp1,F_DSK1,d_DSK1);					if (iDetailCount <= (iResultCount * MAX_DETAIL_ONE)){ strcat(szResultDetail,szTemp);j++;};					iDetailCount ++;				}				/*DSK2        21  //代收款2 Numeric(15,4) Default 0,*/				DB_ConvertNumericToDouble(&theDatabase,&cs_DSK2,&d_DSK2,15,4);				if (d_DSK2 != 0){					sprintf(szTemp,"%15s%2s%20.2f",szTemp1,F_DSK2,d_DSK2);					if (iDetailCount <= (iResultCount * MAX_DETAIL_ONE)){ strcat(szResultDetail,szTemp);j++;};					iDetailCount ++;				}				/*DSK3        22  //代收款3 Numeric(15,4) Default 0,*/				DB_ConvertNumericToDouble(&theDatabase,&cs_DSK3,&d_DSK3,15,4);				if (d_DSK3 != 0){					sprintf(szTemp,"%15s%2s%20.2f",szTemp1,F_DSK3,d_DSK3);					if (iDetailCount <= (iResultCount * MAX_DETAIL_ONE)){ strcat(szResultDetail,szTemp);j++;};					iDetailCount ++;				}				/*DSK4        23  //代收款4 Numeric(15,4) Default 0,*/				DB_ConvertNumericToDouble(&theDatabase,&cs_DSK4,&d_DSK4,15,4);				if (d_DSK4 != 0){					sprintf(szTemp,"%15s%2s%20.2f",szTemp1,F_DSK4,d_DSK4);					if (iDetailCount <= (iResultCount * MAX_DETAIL_ONE)){ strcat(szResultDetail,szTemp);j++;};					iDetailCount ++;				}				/*DSK5        24  //代收款5 Numeric(15,4) Default 0,*/				DB_ConvertNumericToDouble(&theDatabase,&cs_DSK5,&d_DSK5,15,4);				if (d_DSK5 != 0){					sprintf(szTemp,"%15s%2s%20.2f",szTemp1,F_DSK5,d_DSK5);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -