亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? db_op.ec.std

?? 界面庫
?? STD
?? 第 1 頁 / 共 5 頁
字號:
S_sys_param	t_sy_par;
char		t_bank_id[12];
char		t_host_id[3];
EXEC SQL END DECLARE SECTION;

int i;
FILE	*fp;
char	filename[128];
	
	EXEC SQL SELECT * INTO :t_sy_par FROM sys_param;

	if (SQLCODE) {
		errcall(ERROR, "取系統參數表失敗[%ld]!", SQLCODE);
		return -1;
	}
	
	DelSpace(t_sy_par.bank_id);
	DelSpace(t_sy_par.host_id);

	strcpy(t_bank_id, t_sy_par.bank_id);
	strcpy(t_host_id, t_sy_par.host_id);
	
	EXEC SQL SELECT COUNT(*) INTO :G_bank_base_num
	FROM bank_base 
	WHERE bank_stat = 'Y'
	AND
	EXISTS (
		SELECT *  FROM bank_info
		WHERE bank_id = :t_bank_id
		AND host_id = :t_host_id
	)
	OR
	EXISTS (
		SELECT *  FROM bank_info
		WHERE adm_bank_id = :t_bank_id
		AND adm_host_id = :t_host_id
	);
	
	if (SQLCODE) {
		errcall(ERROR, "Select count(*) from bank_base error !");
		return -1;
	}
	
	if (G_bank_base_num == 0) {
		errcall(ERROR, "聯行技術參數表為空!");	
		return -1;
	}
	
	if (G_bank_tab != NULL)
		free(G_bank_tab);
	
	G_bank_tab = (S_bank_base *)malloc(G_bank_base_num*sizeof(S_bank_base));

	if (G_bank_tab == NULL) {
		errcall( ERROR , "申請內存失敗!");
		return -1;
	}

	memset(G_bank_tab, '\0', sizeof(S_bank_base) * G_bank_base_num);
	memset(filename, '\0', sizeof(filename));
	
	EXEC SQL DECLARE sel_bank CURSOR FOR 
	SELECT * FROM bank_base 
	WHERE bank_stat = 'Y'
	AND
	EXISTS (
		SELECT *  FROM bank_info
		WHERE bank_id = :t_bank_id
		AND host_id = :t_host_id
	)
	OR
	EXISTS (
		SELECT *  FROM bank_info
		WHERE adm_bank_id = :t_bank_id
		AND adm_host_id = :t_host_id
	)
	ORDER BY bank_id;
	
	EXEC SQL OPEN sel_bank;
	
	if (SQLCODE) {
		errcall(ERROR, "打開數據庫游標失敗[%ld]!", SQLCODE);
		free(G_bank_tab);
		G_bank_tab = NULL;
		return -1;
	}

	sprintf(filename, "%s/etc/IP_FILTER", getenv("WORKDIR"));
	if ((fp = fopen(filename, "w+")) == NULL) {
		errcall(ERROR, "%s文件操作失敗!(%d)", filename, errno);
		free(G_bank_tab);
		G_bank_tab = NULL;
		return -1;
	}

	for (i = 0; i < G_bank_base_num; i++) {
		EXEC SQL FETCH sel_bank INTO :bank_base_item;
		
		if ( SQLCODE ) {
			EXEC SQL CLOSE sel_bank;
			G_bank_base_num = i;
			fclose(fp);
			return 0;
		}

		del_st_space("bank_base", &bank_base_item);
		memcpy(&(G_bank_tab[i]), &bank_base_item, sizeof(S_bank_base));

		fwrite(&bank_base_item, sizeof(S_bank_base), 1, fp);
	}

	EXEC SQL CLOSE sel_bank;
	fclose(fp);
	return 0;
}

$ifdef zgx020510_added;
$else;
/***************************************************************
功能:
	裝載相關的聯行信息(從所有路由表搜取)
	并從聯行網控器資料表中獲取所有地市行網控器信息
ENTRY:
RETURN:
	0	SUCC
	-1	FAIL
****************************************************************/
int load_bank_tab_netm()
{
	EXEC SQL BEGIN DECLARE SECTION;
	S_bank_base	bank_base_item;
	S_sys_param	t_sy_par;
	char		t_bank_id[12];
	char		t_host_id[3];
	int		nac_num;
	int		bank_num;
	EXEC SQL END DECLARE SECTION;

	int i;
	FILE	*fp;
	char	filename[128];
	
	EXEC SQL SELECT * INTO :t_sy_par FROM sys_param;

	if (SQLCODE) {
		errcall(ERROR, "取系統參數表失敗[%ld]!", SQLCODE);
		return -1;
	}
	
	DelSpace(t_sy_par.bank_id);
	DelSpace(t_sy_par.host_id);

	strcpy(t_bank_id, t_sy_par.bank_id);
	strcpy(t_host_id, t_sy_par.host_id);
	
	EXEC SQL SELECT COUNT(*) INTO :bank_num
	FROM bank_base 
	WHERE bank_stat = 'Y'
	AND
	EXISTS (
		SELECT *  FROM bank_info
		WHERE bank_id = :t_bank_id
		AND host_id = :t_host_id
	)
	OR
	EXISTS (
		SELECT *  FROM bank_info
		WHERE adm_bank_id = :t_bank_id
		AND adm_host_id = :t_host_id
	);
	
	if (SQLCODE) {
		errcall(ERROR, "Select count(*) from bank_base error !");
		return -1;
	}
	
	/*
	 * 從網控器資料表
	 */
	EXEC SQL SELECT COUNT(*) INTO :nac_num
	FROM bank_base_nac 
	WHERE bank_stat = 'Y'
	AND
	EXISTS (
		SELECT *  FROM bank_info
		WHERE bank_id = :t_bank_id
		AND host_id = :t_host_id
	)
	OR
	EXISTS (
		SELECT *  FROM bank_info
		WHERE adm_bank_id = :t_bank_id
		AND adm_host_id = :t_host_id
	);
	
	if (SQLCODE) {
		errcall(ERROR, "Select count(*) from bank_base_nac error !");
		return -1;
	}
	
	if (bank_num == 0) {
		errcall(ERROR, "聯行技術參數表為空!");	
		if (nac_num == 0) {
			errcall(ERROR, "網控器技術參數表為空!");	
			return -1;
		}
	}
	
	G_bank_base_num = bank_num + nac_num;

	if (G_bank_tab != NULL)
		free(G_bank_tab);
	
	G_bank_tab = (S_bank_base *)malloc(G_bank_base_num*sizeof(S_bank_base));

	if (G_bank_tab == NULL) {
		errcall( ERROR , "申請內存失敗!");
		return -1;
	}

	memset(G_bank_tab, '\0', sizeof(S_bank_base) * G_bank_base_num);
	memset(filename, '\0', sizeof(filename));
	
	sprintf(filename, "%s/etc/IP_FILTER", getenv("WORKDIR"));
	if ((fp = fopen(filename, "w+")) == NULL) {
		errcall(ERROR, "%s文件操作失敗!(%d)", filename, errno);
		free(G_bank_tab);
		G_bank_tab = NULL;
		return -1;
	}

$ifdef wyz020920_mod;
	EXEC SQL DECLARE sel_bank1 CURSOR FOR 
$else;
$endif;
	EXEC SQL DECLARE sel_bank1 CURSOR WITH HOLD FOR 
	SELECT * FROM bank_base 
	WHERE bank_stat = 'Y'
	AND
	EXISTS (
		SELECT *  FROM bank_info
		WHERE bank_id = :t_bank_id
		AND host_id = :t_host_id
	)
	OR
	EXISTS (
		SELECT *  FROM bank_info
		WHERE adm_bank_id = :t_bank_id
		AND adm_host_id = :t_host_id
	)
	ORDER BY bank_id;
	
	EXEC SQL OPEN sel_bank1;
	
	if (SQLCODE) {
		errcall(ERROR, "打開數據庫游標失敗[%ld]!", SQLCODE);
		free(G_bank_tab);
		G_bank_tab = NULL;
		return -1;
	}

	for (i = 0; i < bank_num; i++) {
		EXEC SQL FETCH sel_bank1 INTO :bank_base_item;
		
		if ( SQLCODE ) {
			EXEC SQL CLOSE sel_bank1;
			G_bank_base_num = i;
			fclose(fp);
			return 0;
		}

		del_st_space("bank_base", &bank_base_item);
		memcpy(&(G_bank_tab[i]), &bank_base_item, sizeof(S_bank_base));

		fwrite(&bank_base_item, sizeof(S_bank_base), 1, fp);
	}

	EXEC SQL CLOSE sel_bank1;

	/* NAC information */
	EXEC SQL DECLARE sel_nac CURSOR FOR 
	SELECT * FROM bank_base_nac 
	WHERE bank_stat = 'Y'
	AND
	EXISTS (
		SELECT *  FROM bank_info
		WHERE bank_id = :t_bank_id
		AND host_id = :t_host_id
	)
	OR
	EXISTS (
		SELECT *  FROM bank_info
		WHERE adm_bank_id = :t_bank_id
		AND adm_host_id = :t_host_id
	)
	ORDER BY bank_id;
	
	EXEC SQL OPEN sel_nac;
	
	if (SQLCODE) {
		errcall(ERROR, "打開數據庫bank_base_nac游標失敗[%ld]!", SQLCODE);
		free(G_bank_tab);
		G_bank_tab = NULL;
		return -1;
	}

	for (i = bank_num; i < bank_num + nac_num; i++) {
		EXEC SQL FETCH sel_nac INTO :bank_base_item;
		
		if ( SQLCODE ) {
			EXEC SQL CLOSE sel_nac;
			G_bank_base_num = i;
			fclose(fp);
			return 0;
		}

		del_st_space("bank_base", &bank_base_item);
		memcpy(&(G_bank_tab[i]), &bank_base_item, sizeof(S_bank_base));

		fwrite(&bank_base_item, sizeof(S_bank_base), 1, fp);
	}

	EXEC SQL CLOSE sel_nac;

	fclose(fp);
	return 0;
}

$endif;	/* zgx020510_added */

/***************************************************************
功能:
	將卡段路由,缺省路由等路由信息裝載
	到內存中。
ENTRY:
RETURN:
	0	SUCC
	-1	FAIL
****************************************************************/
int load_router_tab ()
{
EXEC SQL BEGIN DECLARE SECTION;
S_card_route card_router_item;
EXEC SQL END DECLARE SECTION;

int 	i;
	
	EXEC SQL SELECT * INTO :G_default_router FROM default_route;
	
	if (SQLCODE &&
		!strcmp(G_sys_param.bank_id, G_sys_param.adm_bank_id)) {
		errcall(ERROR, "取默認路由失敗[%ld]!", SQLCODE);
		return -1;
	}

	del_st_space("default_route", &G_default_router);
	
	EXEC SQL SELECT COUNT(*) INTO :G_card_router_num
	FROM card_route;
	
	if (SQLCODE) {
		errcall(ERROR, "取卡路由條目數失敗[%ld]!", SQLCODE);
		return -1;
	}
	
	if (G_card_router_num == 0) {
		errcall(ERROR, "卡路由為空,請配置");	
		return -1;
	}
	
	if ( G_card_router_tab != NULL ) free (G_card_router_tab);
	
	G_card_router_tab = (S_card_route *)malloc(G_card_router_num * sizeof(S_card_route));

	if (G_card_router_tab == NULL) {
		errcall(ERROR, "申請內存失敗!");
		return -1;
	}

	memset(G_card_router_tab, '\0', sizeof(S_card_route) * G_card_router_num);
	
	EXEC SQL DECLARE sel_router CURSOR FOR 
	SELECT * FROM card_route;

	EXEC SQL OPEN sel_router;
	
	if (SQLCODE) {
		errcall(ERROR, "打開數據庫游標失敗[%ld]!", SQLCODE);
		free(G_card_router_tab);
		G_card_router_tab = NULL;
		return -1;
	}
	
	for(i=0; i<G_card_router_num; i++) {
		EXEC SQL FETCH sel_router INTO :card_router_item;
		
		if (SQLCODE) {
			EXEC SQL CLOSE sel_router;
			G_card_router_num = i;
			return 0;
		}
		
		del_st_space("card_route", &card_router_item);
		memcpy(&(G_card_router_tab[i]), &card_router_item, sizeof(S_card_route));
	}

	EXEC SQL CLOSE sel_router;
	return 0;
}

/***************************************************************
功能:
	裝載交易路由信息
ENTRY:
RETURN:
	0	SUCC
	-1	FAIL
****************************************************************/
int load_tran_router_tab ()
{

EXEC SQL BEGIN DECLARE SECTION;
S_tran_route tran_router_item;
EXEC SQL END DECLARE SECTION;

int 	i;
	
	
	EXEC SQL SELECT COUNT(*) INTO :G_tran_router_num
	FROM tran_route;
	
	if (SQLCODE) {
		errcall(ERROR, "取交易路由條目數失敗[%ld]", SQLCODE);
		return -1;
	}
	
	if (G_tran_router_num == 0) {
		errcall(ERROR, "交易路由為空,請配置");	
		return -1;
	}
	
	if (G_tran_router_tab != NULL)
		free(G_tran_router_tab);
	
	G_tran_router_tab = (S_tran_route *)malloc(G_tran_router_num*sizeof(S_tran_route));
	if (G_tran_router_tab == NULL) {
		errcall(ERROR, "申請內存失敗!");
		return -1;
	}

	memset(G_tran_router_tab, '\0', sizeof(S_tran_route)*G_tran_router_num);
	
	EXEC SQL DECLARE sel_tran_router CURSOR FOR 
	SELECT * FROM tran_route;

	EXEC SQL OPEN sel_tran_router;
	
	if (SQLCODE) {
		errcall(ERROR, "打開數據庫游標失敗[%ld]!", SQLCODE);
		free(G_tran_router_tab);
		G_tran_router_tab = NULL;
		return -1;
	}
	
	for(i=0; i<G_tran_router_num; i++) {
		EXEC SQL FETCH sel_tran_router INTO :tran_router_item;
		
		if (SQLCODE) {
			EXEC SQL CLOSE sel_tran_router;
			G_tran_router_num = i;
			return 0;
		}
		
		del_st_space("tran_route", &tran_router_item);
		memcpy(&(G_tran_router_tab[i]), &tran_router_item, sizeof(S_tran_route));
	}

	EXEC SQL CLOSE sel_tran_router;
	return 0;
}

#ifdef wyz020813_mod
#else
/***************************************************************
功能:
	裝載銀行卡交易路由信息
ENTRY:
RETURN:
	0	SUCC
	-1	FAIL
****************************************************************/
int load_bankcard_router_tab ()
{

EXEC SQL BEGIN DECLARE SECTION;
S_bankcard_route bankcard_router_item;
EXEC SQL END DECLARE SECTION;

int 	i;
	
	
	EXEC SQL SELECT COUNT(*) INTO :G_bankcard_router_num
	FROM bankcard_route;
	
	if (SQLCODE && SQLCODE != 100) {
		errcall(ERROR, "取銀行卡交易路由條目數失敗[%ld]", SQLCODE);
		return -1;
	}
	
	if (G_bankcard_router_num == 0) {
		errcall(DEBUG, "銀行卡交易路由為空,請配置");	
		return 0;
	}
	
	if (G_bankcard_router_tab != NULL)
		free(G_bankcard_router_tab);
	
	G_bankcard_router_tab = (S_bankcard_route *)malloc(G_bankcard_router_num*sizeof(S_bankcard_route));
	if (G_bankcard_router_tab == NULL) {
		errcall(ERROR, "申請內存失敗!");
		return -1;
	}

	memset(G_bankcard_router_tab, '\0', sizeof(S_bankcard_route)*G_bankcard_router_num);
	
	EXEC SQL DECLARE s_bankcard_router CURSOR FOR 
	SELECT * FROM bankcard_route;

	EXEC SQL OPEN s_bankcard_router;
	if (SQLCODE) {
		errcall(ERROR, "打開數據庫游標失敗[%ld]!", SQLCODE);
		free(G_bankcard_router_tab);
		G_bankcard_router_tab = NULL;
		return -1;
	}
	
	for(i=0; i<G_bankcard_router_num; i++) {
		EXEC SQL FETCH s_bankcard_router INTO :bankcard_router_item;
		
		if (SQLCODE) {
			EXEC SQL CLOSE s_bankcard_router;
			G_bankcard_router_num = i;
			return 0;
		}
		
		del_st_space("bankcard_route", &bankcard_router_item);
		memcpy(&(G_bankcard_router_tab[i]), &bankcard_router_item, sizeof(S_bankcard_route));
	}

	EXEC SQL CLOSE s_bankcard_router;
	return 0;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美亚洲丝袜传媒另类| 激情五月婷婷综合| 中文在线资源观看网站视频免费不卡 | 欧美日韩国产欧美日美国产精品| 久久成人羞羞网站| 亚洲国产一区二区视频| 国产午夜精品福利| 日韩欧美在线不卡| 欧美艳星brazzers| 色综合天天综合在线视频| 美女www一区二区| 亚洲一区二区三区小说| 亚洲视频一区二区在线观看| 久久九九全国免费| 精品动漫一区二区三区在线观看| 欧美三级在线视频| 91精品国产一区二区三区| 精品视频一区三区九区| 欧美日韩精品久久久| 欧美日韩国产大片| 欧美一区二区久久| 欧美成人一区二区三区| 精品卡一卡二卡三卡四在线| 久久亚洲精精品中文字幕早川悠里| 欧美大片在线观看一区| 国产精品国产自产拍高清av王其| 国产精品成人在线观看| 一区二区三区视频在线观看| 亚洲国产精品久久久久秋霞影院| 蜜乳av一区二区| 国产乱一区二区| 色综合色综合色综合| 欧美日韩久久一区| 欧美激情中文不卡| 亚洲成人在线网站| 国产福利一区二区三区视频| 色呦呦网站一区| 欧美tk—视频vk| 亚洲欧美在线高清| 免费观看在线综合| 99国内精品久久| 国产欧美日韩综合| 欧美一区二区大片| 久久久久久综合| 日韩在线a电影| 成人avav影音| 久久久综合精品| 午夜久久久久久| 91亚洲男人天堂| 2020国产精品| 免费在线观看日韩欧美| 日本精品一区二区三区四区的功能| 欧美va亚洲va| 蜜臀精品一区二区三区在线观看 | 不卡的av中国片| 国产性色一区二区| 国产剧情一区二区三区| 91精品婷婷国产综合久久性色| 久久久久久日产精品| 蜜桃精品在线观看| 欧美日本国产视频| 五月婷婷综合在线| 91电影在线观看| 一区二区三区在线观看动漫| 久久精品国产亚洲a| 欧美色视频在线| 五月婷婷激情综合| 欧美日韩大陆一区二区| 婷婷六月综合亚洲| 91精品视频网| 紧缚捆绑精品一区二区| 亚洲乱码国产乱码精品精98午夜| 国产成人午夜高潮毛片| 日本一二三不卡| 91视频观看免费| 日日夜夜一区二区| 欧美日韩国产综合一区二区| 日本欧美加勒比视频| 欧美精品一区二区三| www.久久久久久久久| 亚洲国产成人精品视频| 日韩女优电影在线观看| 国产成人8x视频一区二区| 亚洲色图在线视频| 日韩欧美国产1| 91蝌蚪porny成人天涯| 丝袜美腿亚洲综合| 久久久电影一区二区三区| 欧美性猛片aaaaaaa做受| 免费观看久久久4p| 亚洲免费电影在线| 久久综合久久久久88| 精品亚洲成a人| 国产精品妹子av| 日韩一区二区在线观看| 91污片在线观看| 久久99精品久久久久婷婷| 亚洲色图都市小说| 26uuu亚洲| 欧美人xxxx| 91农村精品一区二区在线| 韩国av一区二区三区四区| 亚洲在线中文字幕| 中文字幕一区免费在线观看| www久久精品| 欧美日韩在线电影| 日本韩国欧美国产| thepron国产精品| 国产a区久久久| 精品写真视频在线观看| 日韩精品一二区| 亚洲成人1区2区| 亚洲在线观看免费| 夜色激情一区二区| 亚洲激情图片小说视频| 亚洲精品中文字幕在线观看| 中文字幕av一区二区三区| 中文字幕+乱码+中文字幕一区| 久久美女艺术照精彩视频福利播放| 日韩欧美一二区| 久久综合精品国产一区二区三区 | 99精品在线免费| 国产91高潮流白浆在线麻豆| 国产传媒久久文化传媒| 久久精品国产久精国产| 日韩av不卡在线观看| 视频精品一区二区| 日韩av二区在线播放| 美美哒免费高清在线观看视频一区二区 | 久久久久综合网| 亚洲国产精品高清| 国产精品人成在线观看免费| 综合久久国产九一剧情麻豆| 亚洲视频资源在线| 一区二区三区 在线观看视频| 亚洲日本免费电影| 免费成人在线观看视频| 精品一区精品二区高清| 成熟亚洲日本毛茸茸凸凹| 91日韩在线专区| 制服丝袜av成人在线看| 久久久无码精品亚洲日韩按摩| 国产精品亲子伦对白| 亚洲va国产天堂va久久en| 久久国产麻豆精品| 99精品热视频| 欧美一区二区三区色| 中文字幕一区av| 久久成人羞羞网站| 在线视频国内一区二区| 欧美成人综合网站| 一级日本不卡的影视| 国产麻豆精品95视频| 精品视频免费看| 中文字幕佐山爱一区二区免费| 麻豆精品在线播放| 欧美日韩精品一区二区三区蜜桃 | 亚洲综合一区二区精品导航| 久久国产尿小便嘘嘘尿| 欧美va亚洲va国产综合| 亚洲成精国产精品女| 欧美色精品在线视频| 亚洲成人免费视| 成人黄页毛片网站| 亚洲视频综合在线| 91在线码无精品| 一区二区三区免费| 欧洲另类一二三四区| 亚洲欧美色一区| 91农村精品一区二区在线| 综合激情成人伊人| 91免费观看国产| 五月婷婷久久综合| 精品日韩欧美在线| 国产成人av电影免费在线观看| 亚洲国产精品激情在线观看| 一本一本大道香蕉久在线精品| 亚洲欧美激情一区二区| 91精品午夜视频| 久久99精品网久久| 国产精品理论在线观看| 欧美亚洲一区三区| 国产乱子伦视频一区二区三区 | 国产精品久久一级| 91行情网站电视在线观看高清版| 伊人一区二区三区| 欧美一级高清片| 成人av资源在线观看| 亚洲国产综合人成综合网站| 精品久久久久久久久久久久久久久 | 99久久久国产精品| 久久精品久久久精品美女| 欧美日本在线观看| 国产麻豆精品视频| 男人的j进女人的j一区| 亚洲精品国产精华液| 欧美国产日韩a欧美在线观看| 91精品国产91久久久久久最新毛片| av高清久久久| 亚洲一区视频在线|