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

📄 cms618.sqc

📁 一整套完整的银行卡系统源代码
💻 SQC
字号:
/**********************************************************************   源码文件名称 : cms618.SQC**   所属子系统   : CMS**   当前文件版本 : 4.0.0.0**   作者         : ZhouR**   版本创建日期 : 2004/10/15**   功能描述     : 主卡对附卡交易限额调整登记簿查询**   修改记录     :**   修改人       修改日期     修改日期*********************************************************************/#include "code.h"#include "attrdef.h"#include "sysdef.h"#include "pubcom.h"#include "cmscode.h"#include <stdio.h>#include "cmslmtm.h"EXEC SQL INCLUDE SQLCA;/*********************************************************   函数名称: cms216018**   功能描述:主卡对附卡交易限额调整登记簿查询**   输入参数:**             acBeginDate   	----  起始日期**             acEndDate	   	----  终止日期**             acCardNo		   	----  主卡卡号**             acAcdCardNo	   	----  附卡卡号**   输出参数:****             **   返回结果: 0: 签约  -1: 失败    1: 未签约**   作        者 : ZhouR**   版本创建日期 : 2004/09/20**   修改记录     :**   修改人       修改日期     修改位置*******************************************************/int cms216018( PUBCOM *pstPubcom ){	EXEC SQL BEGIN DECLARE SECTION;		char    acSelStr[CONDITION_LEN + 1];		char    acChName[BIT17_LEN + 1];		char    acName[70 + 1];	EXEC SQL END DECLARE SECTION;	/*定义局部变量*/	struct  cmslmtm 	 stCmsLmtm; 			/* 预授权登记簿 */	char    acBeginDate[DATE_LEN + 1]; 		   	/* 起始日期 */	char    acEndDate[DATE_LEN + 1]; 		    /* 终止日期 */	char    acCardNo[CARDNO_LEN + 1]; 		    /* 主卡卡号 */	char    acAcdCardNo[CARDNO_LEN + 1]; 		/* 附卡卡号 */	char    acFileName[FILENAME_LEN + 1];       /* 文件名称 */	char    acTableName[PRDCODE_LEN + 1];       /* 表名称 */	char	acWhrStr[CONDITION_LEN + 1];	char	acWhrStr1[CONDITION_LEN + 1];	char	acWhrStr2[CONDITION_LEN + 1];	char	acWhrStr3[CONDITION_LEN + 1];	char	acWhrStr4[CONDITION_LEN + 1];	char	acWhrStr5[CONDITION_LEN + 1];	int		iCount = 0;	FILE    *fp;								/* 文件指针     */	strcpy( g_acRspMsg, "子交易: 主卡对附卡交易限额调整登记簿查询子交易开始.." );	TRCLOG4	/* 初始化 */	memset( &stCmsLmtm, 		0x00,   sizeof( struct cmslmtm ) );	memset( acBeginDate,        0x00,   sizeof( acBeginDate ) );	memset( acEndDate,   	    0x00,   sizeof( acEndDate ) );	memset( acCardNo,        	0x00,   sizeof( acCardNo ) );	memset( acAcdCardNo,        0x00,   sizeof( acAcdCardNo ) );	memset( acFileName,        	0x00,   sizeof( acFileName ) );	memset( acTableName,       	0x00,   sizeof( acTableName ) );	memset( acSelStr,           0x00,   sizeof( acSelStr ) );	memset( acWhrStr,           0x00,   sizeof( acWhrStr ) );	memset( acWhrStr1,          0x00,   sizeof( acWhrStr1 ) );	memset( acWhrStr2,          0x00,   sizeof( acWhrStr2 ) );	memset( acWhrStr3,          0x00,   sizeof( acWhrStr3 ) );	memset( acWhrStr4,          0x00,   sizeof( acWhrStr4 ) );	memset( acWhrStr5,          0x00,   sizeof( acWhrStr5 ) );    /* 取数据字典值 */	getstring( "BeginDate1",         acBeginDate   );	getstring( "EndDate1",   	 	 acEndDate    );	getstring( "CardNo", 		     acCardNo );	getstring( "CardNo1", 		     acAcdCardNo );	sprintf( g_acTrcMsg,"BeginDate1[%s]EndDate1[%s]CardNo[%s]CardNo1[%s]",						 acBeginDate,acEndDate,acCardNo,acAcdCardNo );	TRCLOG3	strcpy( acTableName, "cms618" );	sprintf(acFileName, "%s%s%s", acTableName, pstPubcom->acBrc,								  pstPubcom->acTeller);	fp = (FILE *)BeginFile( pstPubcom, acFileName );	if ( fp == NULL )	{		strcpy( g_acRspMsg, "DPS902" );		pubCrtRspInfo( );		ERRLOG		goto Exit;	}	/*组织查询字典*/	if ( GetInqDict( fp , "216018" ) )	{		ERRLOG		goto Exit;	}	/*写查询语句 */	strcpy( acSelStr, "select * from cmslmtm where 1=1");	/*追加查询条件*/	if ( strcmp ( acBeginDate, "1899-12-31" ) )	{		sprintf( acWhrStr1, " and trandate >= '%s'", acBeginDate );		strcat( acSelStr, acWhrStr1 );	}	if ( strcmp ( acEndDate,"1899-12-31") )	{		sprintf( acWhrStr2, " and trandate <= '%s'", acEndDate );		strcat( acSelStr, acWhrStr2 );	}	if ( strlen ( acCardNo ) > 0 )	{		sprintf( acWhrStr3, " and cardno = '%s'", acCardNo );		strcat( acSelStr, acWhrStr3 );	}	if ( strlen ( acAcdCardNo ) > 0 )	{		sprintf( acWhrStr4, " and acdcardno = '%s'", acAcdCardNo );		strcat( acSelStr, acWhrStr4 );	}	sprintf( acWhrStr5, " ORDER BY trandate, cardno, serseqno DESC" );	strcat( acSelStr, acWhrStr5 );	strcpy( g_acTrcMsg, acSelStr );	TRCLOG2	/* 查询 */	EXEC SQL PREPARE pre1_cur FROM :acSelStr;    if ( SQLCODE )    {        strcpy( g_acRspCode, "CMS1A7" );        pubCrtRspInfo( SQLCODE );        ERRLOG        goto Exit ;    }	EXEC SQL DECLARE cmslmtm_cur CURSOR FOR pre1_cur;    if ( SQLCODE )    {        sprintf( g_acTrcMsg,"SQLCODE[%d]", SQLCODE);        TRCLOG4        strcpy( g_acRspCode, "CMS110" );        pubCrtRspInfo("cmslmtm",SQLCODE );        ERRLOG        goto Exit ;    }		SQLOPENCUR(cmslmtm_cur,"cmslmtm_cur")    if(SQLCODE)    {		sprintf( g_acTrcMsg,"SQLCODE[%d]", SQLCODE);		TRCLOG4		strcpy( g_acRspCode, "CMS111" );		pubCrtRspInfo("cmslmtm",SQLCODE );		ERRLOG        goto Exit ;    }	for ( ; ; )	{		EXEC SQL FETCH cmslmtm_cur INTO R_CMSLMTM;		if ( SQLCODE == SQLNOTFOUND )			break;        if(SQLCODE)        {            sprintf( g_acTrcMsg,"SQLCODE[%d]", SQLCODE);            TRCLOG4            strcpy( g_acRspCode, "CMS112" );            pubCrtRspInfo( "cmslmtm",SQLCODE );	SQLCLOSECUR(cmslmtm_cur,"cmslmtm_cur")            ERRLOG            goto Exit ;        }        pubVtoSCmslmtm(&stCmsLmtm);        /*根据币种代码取币种信息*/        pubInitPubcurrencyinfo();        EXEC SQL SELECT chname INTO :acChName                 FROM   pubcurrencyinfo                 WHERE  ccy = :cmslmtm_ccy;        if( SQLCODE && SQLCODE != SQLNOTFOUND )        {            strcpy(g_acRspCode,"CMS112");            pubCrtRspInfo("pubcurrencyinfo",SQLCODE);            ERRLOG	SQLCLOSECUR(cmslmtm_cur,"cmslmtm_cur")            goto Exit;        }		/*取渠道名称*/		EXEC SQL SELECT name INTO :acName				 FROM	cmschannel				 WHERE	trandevtype = :cmslmtm_trandevtype;        if( SQLCODE && SQLCODE != SQLNOTFOUND )        {            strcpy(g_acRspCode,"CMS112");            pubCrtRspInfo("pubcurrencyinfo",SQLCODE);            ERRLOG	SQLCLOSECUR(cmslmtm_cur,"cmslmtm_cur")            goto Exit;        }				fprintf ( fp, "\"%s\"~\"%s\"~%d~\"%s\"~\"%s\"~\"%s\"~\"%s\"~\"%s\"~\"%s\"~\"%s\"~\"%s\"~\"%s\"~\"%s\"~\"%s\"~%.2lf~\"%s\"~\"%s\"~\"%s\"~\"%s\"~%d~%.2lf~%.2lf~%.2lf~%.2lf~%d~%d~%d~%d\n",					  stCmsLmtm.cardno,					/* 主卡卡号 	  */					  stCmsLmtm.trandate,				/* 交易日期 	  */					  stCmsLmtm.serseqno,				/* 流水号 	 	  */					  stCmsLmtm.vouchno,				/* 登记簿编 	  */					  stCmsLmtm.acdcardno,				/* 附卡卡号 	  */					  stCmsLmtm.idtype,					/* 证件类型 	  */					  stCmsLmtm.idcode,					/* 证件号码 	  */					  stCmsLmtm.custname,				/* 姓名/单位名称  */					  stCmsLmtm.issuebrc,				/* 发卡机构码 	  */					  stCmsLmtm.teller,					/* 发卡交易柜员   */					  stCmsLmtm.cardkind,				/* 卡片种类 	  */					  stCmsLmtm.lmtbrc,					/* 调整机构码 	  */					  stCmsLmtm.lmtteller,				/* 调整交易柜	  */					  stCmsLmtm.lmtauthteller,			/* 授权交易柜员   */					  stCmsLmtm.lmtamt,					/* 交易限额 	  */					  stCmsLmtm.trandevtype,			/* 业务发生地类型 */					  acName,							/* 渠道名称 	  */					  stCmsLmtm.ccy,					/* 币种 		  */					  acChName,							/* 币种名称 	  */					  stCmsLmtm.period,					/* 周期长度 	  */					  stCmsLmtm.cashlimitamt,			/* 本周期取现限额 */					  stCmsLmtm.depolimitamt,			/* 本周期存款限额 */					  stCmsLmtm.conlimitamt,			/* 本周期消费限额 */					  stCmsLmtm.tranoutlimitamt,		/* 本周期转出限额 */					  stCmsLmtm.cashlimittime,			/* 本周期取现次数 */					  stCmsLmtm.depolimittime,			/* 本周期存款次数 */					  stCmsLmtm.conlimittime,			/* 本周期消费次数 */					  stCmsLmtm.tranoutlimittime );		/* 本周期转出次数 */		iCount ++;	}	SQLCLOSECUR(cmslmtm_cur,"cmslmtm_cur")    EndFile( fp );    if (iCount == 0)    {        strcpy( g_acRspCode, "CMS1B7" );        pubCrtRspInfo( "主卡对附卡调整");        ERRLOG        return FAILED;    }Exit:	EndFile( fp );	if( !strcmp( g_acRspCode, RSP_OK ) )	{		SetInqFormid(pstPubcom, "216018") ;		sprintf( g_acTrcMsg,"主卡对附卡交易限额调整登记簿查询正常结束");		TRCLOG4		return SUCCESS;	}	else	{		sprintf( g_acTrcMsg,"主卡对附卡交易限额调整登记簿查询失败");		TRCLOG4		return FAILED ;	}}

⌨️ 快捷键说明

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