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

📄 dphsacti.pc

📁 小灵通机卡分离模块的设计.建立在数据库服务器
💻 PC
📖 第 1 页 / 共 4 页
字号:
			while (1)
			{
			    EXEC SQL FETCH curdc_sim_preprop INTO :lcprod_class,:lcitem_code,:lcitem_value;
	      	RetCode = checkError("dc_sim_preincr",LINK_SELECT);
	      	if ( RetCode == DATAERROR )
	      	{
	      		EXEC SQL close curdc_sim_preprop;
	      		return -1 ;
					}
					if ( ( RetCode==DATANOTFOUND )||( getCurRecRowNum() > MAX_ROW_NUM ) )
					{
							break;
					}
					
					trim(lcprod_class);
					trim(lcitem_code);
					trim(lcitem_value);
					
					EXEC SQL INSERT INTO pdn_prod_prop(
					produce_id,produce_type,product_id,prod_class,item_code,item_value
					)
					VALUES(
					:gcmainproduce_id,1,:gcmainproduct_id,:lcprod_class,:lcitem_code,:lcitem_value
					);
			}

	EXEC SQL close curdc_sim_preprop;
	return 0;
}


/*
* 函数说明:生成pdn_account,pdn_accountinfo信息
* 输入参数:
* 输出参数:
* 返 回 值:
*/

int intoPdn_accountProc()

{
	EXEC SQL BEGIN DECLARE SECTION;

	char lca3[5][12] = {0};
	char lca4[ACCOUNTINFO_FIELD][ACCOUNTINFO_LENGTH] = {0};
	char lcsub[3] = {0};
	char lccontractsub[3] = {0};
	char lcsrowid[5] = {0};
	char lccrowid[5] = {0};
	int  lisub=0;
	int  licontractsub=0;
	int  j=0;
	int  k=0;
	int linum=0;
char lcgencontract_id[26] = {0};
char lcgenpay_id[26] = {0};
	
	EXEC SQL END DECLARE SECTION;

			EXEC SQL DELETE FROM pdn_account
			WHERE produce_id =:gcmainproduce_id AND produce_type=1;

		sprintf(lcgencontract_id,"%d",GenCustidProc());
		trim(lcgencontract_id);
		PrintStatus("yqd 892生成的contract_id:========");
		PrintStatus(lcgencontract_id);
		GenPayidProc(lcgenpay_id);
		trim(lcgenpay_id);
		PrintStatus("yqd 892生成的pay_id:========");
		PrintStatus(lcgenpay_id);

      EXEC SQL INSERT INTO pdn_account(produce_id,produce_type,score_code,product_id,contract_id)
      VALUES(:gcmainproduce_id,1,'0000',:gcmainproduct_id,:lcgencontract_id);
      if (sqlca.sqlcode < 0)
      {
   			strcat(gcretstr,"插入pdn_pdinfo出错");
	 			sprintf(gcretstr,"yqd863:%d,%s",sqlca.sqlcode,sqlca.sqlerrm.sqlerrmc);
				PrintStatus(gcretstr);
        return -1;
      }

			/*linum=0;
      EXEC SQL  SELECT COUNT(*) INTO :linum FROM  pdn_account WHERE produce_id =:gcmainproduce_id;
    	sprintf(gcretstr,"yqd877	count pdn_account:%d",linum);
			PrintStatus(gcretstr);
*/



     EXEC SQL INSERT INTO pdn_accountinfo(produce_id,produce_type,
     contract_id,pay_id,cust_id,pay_mode,bank_code,bank_acc,acc_name,
     pay_name,post_flag,post_addr,post_zip,post_name,post_phone,
     pay_money,money_total,post_info,account_id,main_tel,rela_prod_id)
     SELECT   :gcmainproduce_id,1,:lcgencontract_id,:lcgenpay_id,
    :gcGenCustid,pay_mode,bank_code,bank_acc,acc_name,
		pay_name,post_flag,post_addr,post_zip,post_name,post_phone,pay_money,
		money_total,post_info,account_id,main_tel,rela_prod_id
   	FROM dc_sim_preacct
   	WHERE contract_id = :gccontract_id;
    if (sqlca.sqlcode < 0)
    {
      strcat(gcretstr,"插入pdn_accountinfo出错");
	 sprintf(gcretstr,"%d,%s",sqlca.sqlcode,sqlca.sqlerrm.sqlerrmc);
	PrintStatus(gcretstr);
      return -1;
    }

	return 0;
}





/*
* 函数说明:生成pdn_warrantor信息
* 输入参数:
* 输出参数:
* 返 回 值:
*/

int intoPdn_warrantorProc()

{
	EXEC SQL BEGIN DECLARE SECTION;

	char lca6[16][102] = {0};
	char lcsub[3] = {0};
	int  lisub=0;
	int  j=0;
	int  k=0;
	char lcrelaproduct_id[11] = {0};
	EXEC SQL END DECLARE SECTION;


	return 0;
}



/*
* 函数说明:生成cn_cust_info信息
* 输入参数:
* 输出参数:
* 返 回 值:
*/

int intoCn_cust_infoProc()

{
EXEC SQL BEGIN DECLARE SECTION;

  char lce7[44][260] = {0};
  char lcsysdate[30] = {0};
  char lcsub[3] = {0};
  char lcsrowid[5] = {0};
  char lccrowid[5] = {0};
  int  lisub=0;
  int  j=0;
  int  k=0;
  int linum=0;
EXEC SQL END DECLARE SECTION;
/*
PrintStatus("yqd进入IN CN_CUST_INFOproc内部!");
	linum=-1;
	EXEC SQL SELECT COUNT(*) INTO :linum FROM dc_sim_precust
		 WHERE cust_id = :gccust_id;
	sprintf(gcretstr,"yqd952count of dc_sim_precust=%d",linum);
	PrintStatus(gcretstr);
*/
	


     EXEC SQL INSERT INTO
     cn_cust_info(
     produce_id,produce_type,cust_id,cust_code,cust_pinyin,
     town_flag,cust_label,cust_kind,trade_type,cust_type,
     ppdom_code,serve_level,import_level,inc_level_code,
     con_level_code,adscript_co,cust_name,cust_identify,
     cert_type,cert_no,cert_term,secret_level,cust_pwd,
     cont_man,cont_dept,cont_headship,cont_gender,cont_tel1,
     cont_tel2,fax,email,comm_addr,zip,comm_mode,dwell_addr,
     integral,cre_code,credit_value,rec_time,itime,regi_info,
     limit_time,cust_state,comments)
     SELECT :gcmainproduce_id,1,:gcGenCustid,:gccust_code,cust_pinyin,
     town_flag,cust_label,cust_kind,trade_type,cust_type,
     ppdom_code,serve_level,import_level,inc_level_code,
     con_level_code,adscript_co,cust_name,cust_identify,
     cert_type,cert_no,cert_term,secret_level,nvl(cust_pwd,:gcsrv_pwd),
     cont_man,cont_dept,cont_headship,cont_gender,cont_tel1,
     cont_tel2,fax,email,comm_addr,zip,comm_mode,dwell_addr,
     integral,cre_code,credit_value,nvl(rec_time,sysdate),nvl(itime,sysdate),regi_info,
     limit_time,cust_state,comments
		 FROM dc_sim_precust
		 WHERE cust_id = :gccust_id;
      if (sqlca.sqlcode < 0)
      {
        strcat(gcretstr,"插入cn_cust_info出错");
        return -1;
      }
    return 0;
    
 /*     linum=-1;
	EXEC SQL SELECT COUNT(*) INTO :linum FROM cn_cust_info
		 WHERE cust_id = :gcGenCustid AND PRODUCE_ID =:gcmainproduce_id AND PRODUCE_TYPE = 1;
	sprintf(gcretstr,"yqd1098CUSTID=%S",gcGenCustid);
	PrintStatus(gcretstr);	
	sprintf(gcretstr,"yqd987RECORDCOUNTIN of cn_cust_info=%d",linum);
	PrintStatus(gcretstr);
*/
}

/*
* 函数说明:生成pdn_phssim信息      20050425
* 输入参数:
* 输出参数:
* 返 回 值:
*/

int intoPdn_phssimProc()

{
	EXEC SQL BEGIN DECLARE SECTION;

	char lcj2[12][40] = {0};
	char lcsub[3] = {0};
	int  lisub=0;
	int  j=0;
	int  k=0;
	int linum=0;
	EXEC SQL END DECLARE SECTION;


 /* 	EXEC SQL SELECT COUNT(*) INTO :linum FROM rc_sim
	WHERE prod_no = :gcproduct_no;
 	sprintf(gcretstr,"yqd687 RECORD COUNT IN  rc_sim=%d",linum);
	PrintStatus(gcretstr);
*/

	EXEC SQL INSERT INTO pdn_phssim(produce_id , produce_type , product_id,prodsec_no, card_iccid,card_psnm,card_type,stime)
	SELECT :gcmainproduce_id,1,:gcmainproduct_id,'',iccid, psnm,'A',sysdate
	FROM rc_sim
	WHERE prod_no = :gcproduct_no;
	if (sqlca.sqlcode < 0)
	{
		strcpy(gcretstr,"插入pdn_phssim出错");
	 sprintf(gcretstr,":%d,%s",sqlca.sqlcode,sqlca.sqlerrm.sqlerrmc);
	PrintStatus(gcretstr);

		return -1;
	}
		/*	linum=0;
      EXEC SQL  SELECT COUNT(*) INTO :linum FROM  pdn_phssim WHERE produce_id =:gcmainproduce_id;
    	sprintf(gcretstr,"1042yqd	count pdn_phssim:%d",	linum);
			PrintStatus(gcretstr);
*/

	return 0;
}
/*
* 函数说明:生成pdn_phs信息
* 输入参数:
* 输出参数:
* 返 回 值:
*/

int intoPdn_phsProc()

{
	EXEC SQL BEGIN DECLARE SECTION;

	EXEC SQL END DECLARE SECTION;


	return 0;
}

/*
* 函数说明:生成pdn_relay信息
* 输入参数:
* 输出参数:
* 返 回 值:
*/

int intoPdn_relayProc()

{
	EXEC SQL BEGIN DECLARE SECTION;

	char lcb6[16][40] = {0};
	char lcsub[3] = {0};
	int  lisub=0;
	int  j=0;
	int  k=0;
	EXEC SQL END DECLARE SECTION;


	return 0;
}


/*
* 函数说明:生成pdn_acceptlog信息
* 输入参数:
* 输出参数:
* 返 回 值:
*/

int intoPdn_acceptlogProc()

{
	EXEC SQL BEGIN DECLARE SECTION;
	int licallin_num=0;
	int licallout_num=0;
	int licallboth_num=0;
	int licall_num=0;
	EXEC SQL END DECLARE SECTION;

	/*生成生产编号*/
	if (gcmainproduce_id[0] == 0)
	{
		sprintf(gcmainproduce_id,"%d",GenProduceidProc());
		trim(gcmainproduce_id);
		if (strcmp(gcmainproduce_id,"-1") == 0)
		{
			strcpy(gcretstr,"生成生产编号出错");
			return -1;
		}
	}
	/*生成生产流水*/
	if (gcmainproduce_no[0] == 0)
	{
		sprintf(gcmainproduce_no,"%d",GenProducenoProc());
		trim(gcmainproduce_no);
		if (strcmp(gcmainproduce_no,"-1") == 0)
		{
			strcpy(gcretstr,"生成生产流水出错");
			return -1;
		}
	}
	/*判断是否需要生成订单编号*/
	if (gcmainorder_id[0] == 0)
	{
		GenOrderidProc(gcmainorder_id);
		trim(gcmainorder_id);
		if (strcmp(gcmainorder_id,"-1") == 0)
		{
			strcpy(gcretstr,"生成订单编号出错");
			return -1;
		}
	}
	/*判断是否需要生成受理编号*/
	if (gcmainaccept_id[0] == 0)
	{
	        GenAcceptidProc(gcmainaccept_id);
	        trim(gcmainaccept_id);
	        if (strcmp(gcmainaccept_id,"-1") == 0)
	        {
	        strcpy(gcretstr,"生成受理编号出错");
	        return -1;
		}
	}
	/*产品编号,客户编号,合同编号是从dc_sim_preinfo表上取的*/
	if (gcmainproduct_id[0] == 0)
	{
		strcpy(gcretstr,"该号码在系统中的产品编号为空");
	  return -1;
	}


	strcpy(gcsrv_code, "I7");/*业务码*/
	strcpy(gcsub_srv , "I7");/*子业务码*/
	strcpy(gccharge_tache,"A");/*营业受理后收费*/
	strcpy(gcaccept_grade,"C");/*受理等级*/



  /*获取客户的等级*/
  EXEC SQL SELECT cust_type INTO :gccust_type FROM dc_sim_precust WHERE cust_id = :gccust_id;
  if (sqlca.sqlcode != 0)
  {
    strcat(gcretstr,"检索dc_sim_precust出错");
#ifdef	YYDEBUG
    DebugLog("%s",gcretstr);
    fclose(tracefp);
		CopyTr(gcfilename,gcyyerrlog);
#endif
    exceptExit(-1,gcretstr);
  }

/*取处理等级*/
	EXEC SQL SELECT tran_value INTO :gicust_type_value FROM dc_cust_type WHERE scode = :gccust_type;
  if (sqlca.sqlcode != 0)
  {
    strcat(gcretstr,"检索dc_cust_type出错");
#ifdef	YYDEBUG
    DebugLog("%s",gcretstr);
    fclose(tracefp);
		CopyTr(gcfilename,gcyyerrlog);
#endif
    exceptExit(-1,gcretstr);
  }
  
  

	strcpy(gcaccept_mode,"A");/*营业厅受理*/
	strcpy(gcaccept_lan,"898");/*受理本地网*/
	strcpy(gcvest_lan,"898");/*所属本地网*/
/*受理等级值*/
EXEC SQL SELECT TRAN_VALUE 
					INTO :giaccept_grade_value 
					FROM DC_ACCEPTGRAD
					WHERE SCODE = :gcaccept_mode;

	gideal_grad=giaccept_grade_value*gicust_type_value;/*处理等级*/


	/*根据produce_id和produce_no删除旧记录*/
	EXEC SQL DELETE FROM pdn_acceptlog WHERE produce_id = :gcmainproduce_id AND produce_no = :gcmainproduce_no;
	if (sqlca.sqlcode < 0)
	{
		strcpy(gcretstr,"删除pdn_acceptlog出错");
		return -1;
	}

	PrintStatus("yqd dphsacti1195");
	sprintf(gcretstr,"1080yqdgcmainproduce_id:%s",gcmainproduce_id);
	PrintStatus(gcretstr);
	sprintf(gcretstr,"1080yqdgcmainproduce_no:%s",gcmainproduce_no);
	PrintStatus(gcretstr);
	sprintf(gcretstr,"1080yqdgcmainproduce_id:%s",gcmainorder_id);
	PrintStatus(gcretstr);
	sprintf(gcretstr,"1080yqdgcmainaccept_id:%s",gcmainaccept_id);
	PrintStatus(gcretstr);
	sprintf(gcretstr,"1080yqdgcmainproduct_id:%s",gcmainproduct_id);
	PrintStatus(gcretstr);
	sprintf(gcretstr,"1080yqdgcsrv_code:%s",gcsrv_code);
	PrintStatus(gcretstr);

	sprintf(gcretstr,"yqd:%d",gideal_grad);
	PrintStatus(gcretstr);

 	EXEC SQL INSERT INTO pdn_acceptlog(produce_id,produce_no,order_id,
 	accept_id,product_id,srv_code,sub_srv,accept_lan,vest_lan,apply_name,
 	apply_cert,apply_certno,apply_tel,apply_addr,btime,bact,atime,
 	accept_grade,accept_mode,deal_grade,charge_tache)
	VALUES(:gcmainproduce_id,:gcmainproduce_no,:gcmainorder_id,
	:gcmainaccept_id,:gcmainproduct_id,:gcsrv_code,:gcsub_srv,
	:gcaccept_lan,:gcvest_lan,:gcapply_name,:gcapply_cert,:gcapply_certno,
	:gcapply_tel,:gcapply_addr,to_date(:gcbtime,'YYYY-MM-DD HH24:MI:SS'),
	:gcbact,sysdate,:gcaccept_grade,:gcaccept_mode,:gideal_grad,
	:gccharge_tache);

	if (sqlca.sqlcode < 0)
	{
		strcpy(gcretstr,"插入pdn_acceptlog出错");
	 sprintf(gcretstr,"yqd:%d,%s",sqlca.sqlcode,sqlca.sqlerrm.sqlerrmc);

⌨️ 快捷键说明

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