📄 cms612.sqc
字号:
/********************************************************************** 源码文件名称 : cms612.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 "cmscardkind.h"EXEC SQL INCLUDE SQLCA;/********************************************************* 函数名称: cms216012** 功能描述:卡片种类表查询** 输入参数:** acCardKind ---- 卡片种类** acCardPhySort ---- 卡片物理性质** acCardAttr ---- 卡片属性代码** acCardFlg ---- 卡标志** acCardObject ---- 发卡对象** 输出参数:**** ** 返回结果: 0: 签约 -1: 失败 1: 未签约** 作 者 : ZhouR** 版本创建日期 : 2004/09/20** 修改记录 :** 修改人 修改日期 修改位置*******************************************************/int cms216012( PUBCOM *pstPubcom ){ EXEC SQL BEGIN DECLARE SECTION; char acSelStr[CONDITION_LEN + 1]; char acSelStr1[CONDITION_LEN + 1]; char acPrdName[BIT41_LEN + 1]; char acChName[BIT17_LEN + 1]; EXEC SQL END DECLARE SECTION; /*定义局部变量*/ struct cmscardkind stCmsCardKind; /* 卡片种类表 */ char acCardKind[CARDKIND_LEN + 1]; /* 卡片种类 */ char acCardPhySort[CUSTTYPE_LEN + 1]; /* 卡片物理性质 */ char acCardAttr[CUSTTYPE_LEN + 1]; /* 卡片属性代码 */ char acCardFlg[BIT2_LEN + 1]; /* 卡标志 */ char acCardObject[BIT2_LEN + 1]; /* 发卡对象 */ char acFileName[FILENAME_LEN + 1]; /* 文件名称 */ char acTableName[PRDCODE_LEN + 1]; /* 表名称 */ char acWhrStr[CONDITION_LEN + 1]; /* 表名称 */ int iCount = 0; FILE *fp; /* 文件指针 */ strcpy( g_acRspMsg, "子交易: 卡片种类表查询子交易开始.." ); TRCLOG4 /* 初始化 */ memset( &stCmsCardKind, 0x00, sizeof( struct cmscardkind ) ); memset( acCardKind, 0x00, sizeof( acCardKind ) ); memset( acCardPhySort, 0x00, sizeof( acCardPhySort ) ); memset( acCardAttr, 0x00, sizeof( acCardAttr ) ); memset( acCardFlg, 0x00, sizeof( acCardFlg ) ); memset( acCardObject, 0x00, sizeof( acCardObject ) ); memset( acFileName, 0x00, sizeof( acFileName ) ); memset( acTableName, 0x00, sizeof( acTableName ) ); memset( acPrdName, 0x00, sizeof( acPrdName ) ); memset( acSelStr, 0x00, sizeof( acSelStr ) ); memset( acSelStr1, 0x00, sizeof( acSelStr1 ) ); /* 取数据字典值 */ getstring( "CardKind", acCardKind ); sprintf( g_acTrcMsg,"CardKind[%s]", acCardKind ); TRCLOG3 strcpy( acTableName, "cms612" ); 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 , "216012" )) { ERRLOG goto Exit; } strcpy( acSelStr, "select * from cmscardkind where 1=1" ); if (strlen(acCardKind) > 0 ) { sprintf( acWhrStr, " and cardkind='%s'", acCardKind ); strcat( acSelStr, acWhrStr ); } EXEC SQL PREPARE pre_1 FROM :acSelStr; if ( SQLCODE ) { strcpy( g_acRspCode, "CMS1A7" ); pubCrtRspInfo( SQLCODE ); ERRLOG goto Exit; } EXEC SQL DECLARE cardkind_cur CURSOR FOR pre_1; if ( SQLCODE ) { sprintf( g_acTrcMsg,"SQLCODE[%d]", SQLCODE); TRCLOG4 strcpy( g_acRspCode, "CMS110" ); pubCrtRspInfo("cardkind",SQLCODE ); ERRLOG goto Exit ; } SQLOPENCUR(cardkind_cur,"cardkind_cur") if(SQLCODE) { sprintf( g_acTrcMsg,"SQLCODE[%d]", SQLCODE); TRCLOG4 strcpy( g_acRspCode, "CMS111" ); pubCrtRspInfo("cmscardkind",SQLCODE ); ERRLOG goto Exit ; } for ( ; ; ) { EXEC SQL FETCH cardkind_cur INTO R_CMSCARDKIND; if ( SQLCODE == SQLNOTFOUND ) break; if(SQLCODE) { sprintf( g_acTrcMsg,"SQLCODE[%d]", SQLCODE); TRCLOG4 strcpy( g_acRspCode, "CMS112" ); pubCrtRspInfo( "cmsactiom",SQLCODE ); SQLCLOSECUR(cardkind_cur,"cardkind_cur") ERRLOG goto Exit ; } pubVtoSCmscardkind(&stCmsCardKind); /*根据币种代码取币种信息*/ pubInitPubcurrencyinfo(); EXEC SQL SELECT chname INTO :acChName FROM pubcurrencyinfo WHERE ccy = :cmscardkind_ccy; if( SQLCODE && SQLCODE != SQLNOTFOUND ) { strcpy(g_acRspCode,"CMS112"); pubCrtRspInfo("dpssaveprdinfo",SQLCODE); ERRLOG SQLCLOSECUR(cardkind_cur,"cardkind_cur") goto Exit; } /* 根据产品代码取产品名称 */ pubInitDpssaveprdinfo(); pubInitDpstermprdinfo(); EXEC SQL SELECT prdname INTO :acPrdName FROM dpssaveprdinfo WHERE prdcode = :cmscardkind_prdcod; if( SQLCODE && SQLCODE != SQLNOTFOUND ) { strcpy(g_acRspCode,"CMS112"); pubCrtRspInfo("dpssaveprdinfo",SQLCODE); ERRLOG SQLCLOSECUR(cardkind_cur,"cardkind_cur") goto Exit; } if ( SQLCODE == SQLNOTFOUND ) { EXEC SQL SELECT prdname INTO :acPrdName FROM dpstermprdinfo WHERE prdcode = :cmscardkind_prdcod; if( SQLCODE && SQLCODE != SQLNOTFOUND ) { strcpy(g_acRspCode,"CMS112"); pubCrtRspInfo("dpstermprdinfo",SQLCODE); ERRLOG SQLCLOSECUR(cardkind_cur,"cardkind_cur") goto Exit; } } /* 拼写文件 */ fprintf( fp, "\"%s\"~\"%s\"~\"%s\"~\"%s\"~\"%s\"~\"%s\"~\"%s\"~%.2lf~%.2lf~\"%s\"~\"%s\"~\"%s\"~%d~%d~%d~%d~%d~\"%s\"~\"%s\"~\"%s\"~\"%s\"~\"%s\"~\"%s\"~\"%s\"~\"%s\"~\"%s\"~\"%s\"~%.2lf~%.2lf~%.2lf~\"%s\"~\"%s\"~\"%s\"\n", stCmsCardKind.cardkind, /* 卡片种类 */ stCmsCardKind.cardbin, /* 卡bin号 */ stCmsCardKind.voukind, /* 凭证种类 */ stCmsCardKind.blankvoukind, /* 空白凭证种类 */ stCmsCardKind.enableflg, /* 启用标志 */ stCmsCardKind.cardidkind, /* 卡片识别种类 */ stCmsCardKind.cardkindcomm, /* 卡片种类说明 */ 0.0, /* 主卡卡片基本年费 */ 0.0, /* 附卡卡片基本年费 */ "", /* 收取年费日期 */ "", /* 是否收取年费 */ stCmsCardKind.cardphysort, /* 卡片物理属性 */ stCmsCardKind.exdate, /* 卡有效期期限 */ stCmsCardKind.maxnum, /* 客户主卡最大持卡数量 */ stCmsCardKind.fmaxnum, /* 客户附卡最大持卡数量 */ stCmsCardKind.atmerrnum, /* atm密码错误限制次数 */ stCmsCardKind.totalerrnum, /* 密码错误总限制次数 */ stCmsCardKind.issdate, /* 卡种启用日期 */ stCmsCardKind.ccy, /* 主帐户的币种 */ acChName, /* 主帐户的币种说明 */ stCmsCardKind.prdcod, /* 主帐户的产品代码 */ acPrdName, /* 主帐户的产品代码说明 */ stCmsCardKind.pswdmark, /* 密码标志 */ stCmsCardKind.lostmark, /* 挂失标志 */ stCmsCardKind.prtpswdenvelop, /* 打印密码信封标志 */ stCmsCardKind.setfixexdate, /* 有效期使用方式 */ stCmsCardKind.fixexdate, /* 固定有效期 */ stCmsCardKind.edbal, /* 电子存折最大金额 */ stCmsCardKind.epbal, /* 电子钱包最大金额 */ stCmsCardKind.minbal, /* 主帐户最低底存余额 */ stCmsCardKind.mid, /* 联名卡的商户代码 */ stCmsCardKind.lasttrandate, /* 最后更新日期 */ stCmsCardKind.teller ); /* 交易柜员 */ iCount ++; } SQLCLOSECUR(cardkind_cur,"cardkind_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, "216012") ; sprintf( g_acTrcMsg,"卡片种类表查询正常结束"); TRCLOG4 return SUCCESS; } else { sprintf( g_acTrcMsg,"卡片种类表查询失败"); TRCLOG4 return FAILED ; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -