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

📄 cmsb39.sqc

📁 一整套完整的银行卡系统源代码
💻 SQC
📖 第 1 页 / 共 2 页
字号:
	PRTHEAD	strcpy(g_acTrcMsg, "head sql222"); TRCLOG4		/*从序号 1 开始, 0 作为判断用*/	pastNPB=astNeedPrtBrc+1;	iLineFlag=0;	iDetailSeq=1;	strcpy(g_acTrcMsg, "org sql"); TRCLOG4		/*组查询语句*/		/* 总部统计 */	memset(acTemp, 0x00, sizeof(acTemp));	strncpy(acTemp, pstPubcom->acBrc, 3);	if(strcmp(pstPubcom->acBrc+ 3, "00") == 0)		sprintf(acWhrStr, "SELECT * FROM cmstxdethis WHERE  \		substr(brc,1,3)='%s'  and (trandate between '%s' and '%s')\			and validf='2' and operkind \			in (select memocode from pubmemocode where classid='mid') \			order by trandate,serseqno",\			acTemp, acBeginDate, acEndDate);	else /* 网点统计 */		sprintf(acWhrStr, "SELECT * FROM cmstxdethis WHERE  \		brc='%s'  and (trandate between '%s' and '%s') and \			validf='2' and operkind \			in (select memocode from pubmemocode where classid='mid') \			order by trandate,serseqno",\			pstPubcom->acBrc, acBeginDate, acEndDate);	strcpy(g_acTrcMsg, "org sql 1111"); TRCLOG4	strcpy( g_acTrcMsg, acWhrStr );	TRCLOG4                        	EXEC SQL PREPARE pre_txdethis FROM :acWhrStr;	EXEC SQL DECLARE cur_txdethis CURSOR FOR pre_txdethis;	SQLOPENCUR(cur_txdethis,"cur_txdethis")	if(SQLCODE)	{		sprintf( g_acTrcMsg,"SQLCODE[%d]", SQLCODE);  		TRCLOG4		strcpy( g_acRspCode, "CMS111" );		pubCrtRspInfo("cmstxdethis",SQLCODE );		ERRLOG		goto Exit ;	}	for( ; ; )	{		pubInitCmstxdethis();		EXEC SQL FETCH cur_txdethis INTO R_CMSTXDETHIS;		if( SQLCODE == SQLNOTFOUND )			break ;		if(SQLCODE)		{			sprintf( g_acTrcMsg,"SQLCODE[%d]", SQLCODE);  			TRCLOG4			strcpy( g_acRspCode, "CMS112" );			pubCrtRspInfo("cmstxdethis",SQLCODE );			ERRLOG			goto Exit ;		}		iHaveFlag=0;		/* 取业务名称 */		memset(acTranName, 0x00, sizeof(acTranName));		memset(&stPubMemocode, 0x00, sizeof(stPubMemocode));		strcpy(stPubMemocode.memocode, cmstxdethis_operkind);		if( pubReadPubmemocode(&stPubMemocode) )		{			if(SQLCODE==SQLNOTFOUND)				strcpy( g_acRspCode,PUBRSP_OK);			strcpy( g_acTrcMsg,"");			}		strcpy(acTranName, stPubMemocode.desc);		strpack(acTranName);		acTranName[30]=0x00;		/*打印表体*/		/*判断如果是第一行,不打印分行线 */      		if ( iLineFlag == 0	&&  iLine != 1    )			{			PRTBODYLINE		}		else if ( iLineFlag=1 &&   iLine != 1 )		{			PRTBODYLINE_B			iLineFlag=0;		}		PRTBODY		iDetailSeq++;		/*加入机构小计*/			pastNPB->iBrcTranNum ++;		pastNPB->dBrcTranAmt = pastNPB->dBrcTranAmt +cmstxdethis_tranamt;	}/*fetch for*/	SQLCLOSECUR(cur_txdethis,"cur_txdethis")		/*打印总的合计数*/	/*	PRTTOTALSTA	*/	/*打印表尾*/	PRTFOOT Exit:	sprintf( g_acTrcMsg,"中间业务支行取消交易明细打印, \					rspcode=[%s]",g_acRspCode); 	TRCLOG4		fclose( fmtfp );	fclose( fp );	SQLCLOSECUR(cur_txdethis,"cur_txdethis")	if( !strcmp( g_acRspCode, RSP_OK ) )	{		SetInqFormid(pstPubcom, "") ;		return SUCCESS; 	}	else 		return FAILED ;}PrtGetSuperBrcList(paacSuperBrc)char    *paacSuperBrc;{EXEC SQL BEGIN DECLARE SECTION;	char    acBRCCODE[10];                       /*机构号  */	char	acHIGHBRC2[10];                      /*上级交易机构码*/	short   sID2;EXEC SQL END   DECLARE SECTION;	char    aacSuperBrc[ NEEDPRTBRCMAX - 50 ][10];	int     i=0;	int     iRet=0;		memset( aacSuperBrc, 0x00, sizeof(aacSuperBrc) ); 	EXEC SQL DECLARE cur_getsbrc CURSOR FOR 			SELECT brccode  FROM pubbranchinfo 			WHERE  brclvl=4  or brclvl=5 or brclvl = 1			ORDER BY brccode; 	SQLOPENCUR(cur_getsbrc,"cur_getsbrc")	if(SQLCODE)	{	    sprintf( g_acTrcMsg,"SQLCODE[%d]", SQLCODE);		TRCLOG4		strcpy( g_acRspCode, "CMS112" );		pubCrtRspInfo("pubbranchinfo",SQLCODE );		ERRLOG		return -1;                  	}	i=0;	for( ; ; )	{		memset( acBRCCODE, 0x00, sizeof(acBRCCODE) ); 		memset( acHIGHBRC2, 0x00, sizeof(acHIGHBRC2) ); 		EXEC SQL FETCH cur_getsbrc INTO :acBRCCODE:sID2;		if( SQLCODE == SQLNOTFOUND ) 			break ;		if(SQLCODE)		{			sprintf( g_acTrcMsg,"SQLCODE[%d]", SQLCODE);			TRCLOG4			strcpy( g_acRspCode, "CMS112" );			pubCrtRspInfo("pubbranchinfo",SQLCODE );			ERRLOG	SQLCLOSECUR(cur_getsbrc,"cur_getsbrc")			return -1;                  		}		/*判断是否是网点还是支行(因为pubbranchinfo的brclvl没有按需求配置),不区分网点和支行*/		EXEC SQL SELECT highbrc INTO :acHIGHBRC2:sID2 					FROM pubbrclinkinfo 						WHERE brccode=:acBRCCODE						AND linktype='01'; 		strpack(acHIGHBRC2);		if( strncmp(acHIGHBRC2,"0003",4)!=0)			continue;			strcpy(aacSuperBrc[i],acBRCCODE);		sprintf( g_acTrcMsg,"i=[%d],code=[%s]", i,aacSuperBrc[i]);		TRCLOG4		i++;	}	SQLCLOSECUR(cur_getsbrc,"cur_getsbrc")	strcpy(aacSuperBrc[i],"END");	memcpy(paacSuperBrc	,aacSuperBrc, sizeof(aacSuperBrc));	return  i;}#include<stdlib.h>char   *RptFormatAmt(double amt, char *pstr){	char acTmp[31];	char acRetTmp[51];	char *ptr,*retptr;	double amtTmp;	char flag;	char flag1;	int i=0,j=0;		amtTmp=0;	flag1='+';		if (amt < 0)	{	flag1='-';	}	else 		flag1='+';	amtTmp=fabs(amt);	if( amtTmp==0)		strcpy(pstr,"0.00");	flag=',';		memset(acTmp,0x00,sizeof(acTmp));	memset(acRetTmp,0x00,sizeof(acRetTmp));		sprintf(acTmp,"%030.2lf",amtTmp);	for ( i=0,j=0;i<10; i++)	{		if (i== 9){ 			memcpy( &acRetTmp[j - 1], &acTmp[3*i],3 );			break;		}		memcpy( &acRetTmp[j], &acTmp[3*i],3 );		j=j+3;		memset(&acRetTmp[j],flag,1);		j++;	}	ptr=acRetTmp;	while( *ptr!='\0')	{		if (*ptr=='-')		{	flag1='-';					}		if (*ptr=='.'){			ptr--;			if(flag1=='-'){				strcpy(pstr,"-");				strcat(pstr,ptr);			}			else{				strcpy(pstr,ptr);			}			return pstr;		}				if (*ptr!=','&& *ptr!='0'  ){			if(flag1=='-'){				strcpy(pstr,"-");				strcat(pstr,ptr);			}			else{				strcpy(pstr,ptr);			}					return pstr;				}		ptr++;				}	return "";	}

⌨️ 快捷键说明

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