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

📄 sjcjphzh.sqc

📁 本人写的在AIX下的用SQLC开发的处理DB2数据库中业务的程序
💻 SQC
📖 第 1 页 / 共 5 页
字号:
        trim(m_cust_no);        trim(m_oldzydm);        trim(m_oldzymc);        trim(m_holder_acc_no);        trim(m_market_code);        if ((strcmp(m_market_code,"3")==0) || (strcmp(m_market_code,"1")==0))          strcpy(m_xkm_gddm,(char*)(m_holder_acc_no+1));        else          strcpy(m_xkm_gddm,m_holder_acc_no);                if (strcmp(m_market_code,"1")==0)          strcpy(m_xkm_scbm,"1");        if (strcmp(m_market_code,"2")==0)          strcpy(m_xkm_scbm,"0");        if (strcmp(m_market_code,"3")==0)          strcpy(m_xkm_scbm,"3");        if (strcmp(m_market_code,"4")==0)          strcpy(m_xkm_scbm,"2");        if (strcmp(m_market_code,"")==0)          strcpy(m_xkm_scbm,"");                if ((strcmp(m_market_code,"1")==0) || (strcmp(m_market_code,"2")==0))          strcpy(m_xkm_hbdm,"00");        if (strcmp(m_market_code,"3")==0)          strcpy(m_xkm_hbdm,"02");        if (strcmp(m_market_code,"4")==0)          strcpy(m_xkm_hbdm,"01");                	sprintf(data,"0%s,%s,%s,%s,%s,%06d",      	 m_cust_no,m_xkm_gddm,m_xkm_scbm,m_oldzydm,m_oldzymc,icntfetch);      	        len = strlen(data);      	fprintf(fp,"1%07d",icntfetch);      	fprintf(fp,"%4s",m_zydm);      	fprintf(fp,"%04d",len);      	fprintf(fp,"%8s",m_occur_date);      	memset(outtime,0x0,sizeof(outtime));      	outtime[0]=m_occur_time[0];      	outtime[1]=m_occur_time[1];      	outtime[2]=m_occur_time[3];      	outtime[3]=m_occur_time[4];      	outtime[4]=m_occur_time[6];      	outtime[5]=m_occur_time[7];      	outtime[6]='0';      	outtime[7]='0';      	fprintf(fp,"%8s",outtime);      	fprintf(fp,"%c",m_xkm_hbdm[1]);      	fprintf(fp,"0%s",(char*) (m_emp_code+3));      	fprintf(fp,",%s%c%c",data,0x0d,0x0a);      }            /*4021 4022 客户解冻,客户冻结,没有流水,无法采集*/      if ((strcmp(m_zydm,"4021")==0) || (strcmp(m_zydm,"4022")==0))      {        printf("4021\n");      	EXEC SQL SELECT NAME,CERT_NO into :m_gdxm,:m_sfzh from ks.cust_base_info       		where BRANCH_CODE=:m_branch_code and CUST_NO=:m_cust_no;      		        trim(m_cust_no);        trim(m_oldzydm);        trim(m_oldzymc);        trim(m_gdxm);        trim(m_sfzh);        strcpy(m_xkm_hbdm,"00");              	sprintf(data,"0%s,%s,%s,%s,%s,%06d",      	 m_cust_no,m_gdxm,m_sfzh,m_oldzydm,m_oldzymc,icntfetch);      	        len = strlen(data);      	      	fprintf(fp,"1%07d",icntfetch);      	fprintf(fp,"%4s",m_zydm);      	fprintf(fp,"%04d",len);      	fprintf(fp,"%8s",m_occur_date);      	memset(outtime,0x0,sizeof(outtime));      	outtime[0]=m_occur_time[0];      	outtime[1]=m_occur_time[1];      	outtime[2]=m_occur_time[3];      	outtime[3]=m_occur_time[4];      	outtime[4]=m_occur_time[6];      	outtime[5]=m_occur_time[7];      	outtime[6]='0';      	outtime[7]='0';      	fprintf(fp,"%8s",outtime);      	fprintf(fp,"%c",m_xkm_hbdm[1]);      	fprintf(fp,"0%s",(char*) (m_emp_code+3));      	fprintf(fp,",%s%c%c",data,0x0d,0x0a);      }            /*4037 客户其他信息修改*/      if ((strcmp(m_zydm,"4037")==0))      {        printf("4037\n");        temppos=0;        i=0;        for (k=1;k<18;k++)        {          if (k!=1)          {       		temppos=temppos+i+1;          }          if (k==1)           {          	i=strcspn(m_thisvalue,"|");          }          else          {          	i=strcspn((char*) (m_thisvalue+temppos),"|");          	if (i==0)          		break;          }          if (k==4)            strncpy(m_sfzh,(char*) (m_thisvalue+temppos),i);          if (k==11)            strncpy(m_lxdh,(char*) (m_thisvalue+temppos),i);          if (k==15)            strncpy(m_email,(char*) (m_thisvalue+temppos),i);        }      	        trim(m_cust_no);        trim(m_oldzydm);        trim(m_oldzymc);        trim(m_sfzh);        trim(m_lxdh);        trim(m_email);        strcpy(m_xkm_hbdm,"00");        TranSymbol(m_lxdh);        TranSymbol(m_email);      	sprintf(data,"0%s,%s,%s,%s,%s,%s,%06d",m_cust_no,m_sfzh,m_lxdh,"",m_email,m_oldzydm,m_oldzymc,icntfetch);      	         len = strlen(data);      	      	fprintf(fp,"1%07d",icntfetch);      	fprintf(fp,"%4s",m_zydm);      	fprintf(fp,"%04d",len);      	fprintf(fp,"%8s",m_occur_date);      	memset(outtime,0x0,sizeof(outtime));      	outtime[0]=m_occur_time[0];      	outtime[1]=m_occur_time[1];      	outtime[2]=m_occur_time[3];      	outtime[3]=m_occur_time[4];      	outtime[4]=m_occur_time[6];      	outtime[5]=m_occur_time[7];      	outtime[6]='0';      	outtime[7]='0';      	fprintf(fp,"%8s",outtime);      	fprintf(fp,"%c",m_xkm_hbdm[1]);      	fprintf(fp,"0%s",(char*) (m_emp_code+3));      	fprintf(fp,",%s%c%c",data,0x0d,0x0a);      }            /*8003 股东代码迁移*/      if ((strcmp(m_zydm,"8003")==0))      {        printf("8003\n");        temppos=0;        i=0;        printf("%s\n",m_thisvalue);        for (k=1;k<5;k++)        {          if (k!=1)          {       		temppos=temppos+i+1;          }          if (k==1)           {          	i=strcspn(m_thisvalue,"|");          }          else          {          	i=strcspn((char*) (m_thisvalue+temppos),"|");          	if (i==0)          		break;          }          if (k==1)            strncpy(m_qckhh,(char*) (m_thisvalue+temppos),i);          if (k==2)            strncpy(m_qrkhh,(char*) (m_thisvalue+temppos),i);          if (k==3)            strncpy(m_qyscdm,(char*) (m_thisvalue+temppos),i);          if (k==4)            strncpy(m_qygddm,(char*) (m_thisvalue+temppos),i);                    }      	        trim(m_qckhh);        trim(m_qrkhh);        trim(m_qyscdm);        trim(m_qygddm);        trim(m_emp_code);                strncpy(m_qckhh1,(char*)(strstr(m_qckhh,"[")+1),8);        strncpy(m_qrkhh1,(char*)(strstr(m_qrkhh,"[")+1),8);        strncpy(m_market_code,(char*)(strstr(m_qyscdm,"[")+1),1);        strncpy(m_holder_acc_no,(char*)(strstr(m_qygddm,"[")+1),10);        m_holder_acc_no[10]=0;        m_market_code[1]=0;                        if (strcmp(m_market_code,"1")==0)          strcpy(m_xkm_scbm,"1");        if (strcmp(m_market_code,"2")==0)          strcpy(m_xkm_scbm,"0");        if (strcmp(m_market_code,"3")==0)          strcpy(m_xkm_scbm,"3");        if (strcmp(m_market_code,"4")==0)          strcpy(m_xkm_scbm,"2");        if (strcmp(m_market_code,"")==0)          strcpy(m_xkm_scbm,"");        if ((strcmp(m_market_code,"3")==0) || (strcmp(m_market_code,"1")==0))          strcpy(m_xkm_gddm,(char*)(m_holder_acc_no+1));        else          strcpy(m_xkm_gddm,m_holder_acc_no);                  if ((strcmp(m_market_code,"1")==0) || (strcmp(m_market_code,"2")==0))          strcpy(m_xkm_hbdm,"00");        if (strcmp(m_market_code,"3")==0)          strcpy(m_xkm_hbdm,"02");        if (strcmp(m_market_code,"4")==0)          strcpy(m_xkm_hbdm,"01");                sprintf(m_cznr,"%s_%s_从_%s_迁到_%s",m_market_code,m_holder_acc_no,m_qckhh1,m_qrkhh1);      	sprintf(data,"%s,%s,%s%s",m_emp_code,m_cznr,m_occur_date,m_occur_time);      	        len = strlen(data);      	      	fprintf(fp,"1%07d",icntfetch);      	fprintf(fp,"%4s",m_zydm);      	fprintf(fp,"%04d",len);      	fprintf(fp,"%8s",m_occur_date);      	memset(outtime,0x0,sizeof(outtime));      	outtime[0]=m_occur_time[0];      	outtime[1]=m_occur_time[1];      	outtime[2]=m_occur_time[3];      	outtime[3]=m_occur_time[4];      	outtime[4]=m_occur_time[6];      	outtime[5]=m_occur_time[7];      	outtime[6]='0';      	outtime[7]='0';      	fprintf(fp,"%8s",outtime);      	fprintf(fp,"%c",m_xkm_hbdm[1]);      	fprintf(fp,"0%s",(char*) (m_emp_code+3));      	fprintf(fp,",%s%c%c",data,0x0d,0x0a);      }   }       EXEC SQL CLOSE c2;      strcpy(m_branch_code,argv[4]);   /*资金,交易类数据采集*/   EXEC SQL DECLARE c1 CURSOR FOR       SELECT CUST_NO,SERIAL_NO,OCCUR_DATE,OCCUR_TIME,HOLDER_ACC_NO,SEC_CODE,MARKET_CODE,SEC_CHG,SEC_BAL,FUND_CHG,FUND_BAL,       		BUSINESS_CODE,CHANGE_TYPE,CURRENCY_TYPE,OP_EMP,BANK_CODE,BANK_ACC_NO,BILL_NO,JOIN_SERIAL_NO,JOIN_DATE        FROM KS.his_fund_stock_chg        where BRANCH_CODE=:m_branch_code and OCCUR_DATE=:m_today and double_check_flag not in ('0','2') ORDER by SERIAL_NO;   EXEC SQL OPEN c1;   while(1)   {   EXEC SQL FETCH c1 INTO       :m_cust_no,:m_lsh,:m_occur_date,:m_occur_time,:m_holder_acc_no,:m_stock_code,:m_market_code,:m_sec_chg,:m_sec_bal,:m_amt17,:m_amt7,       :m_business_code,:m_change_type,:m_currency_type,:m_emp_code,:m_yhdm,:m_yhzh,:m_bill_no,:m_join_lsh,:m_join_date;          if (SQLCODE) break;      if ((strstr(m_stock_code,"739")==m_stock_code) && (strcmp(m_business_code,"4013")!=0) && (strcmp(m_business_code,"4053")!=0))   	continue;      if ((strstr(m_stock_code,"74")==m_stock_code) && (strcmp(m_business_code,"4013")!=0) && (strcmp(m_business_code,"4053")!=0))   	continue;         if (strstr(m_stock_code,"003")==m_stock_code)      {        EXEC SQL SELECT SEC_TYPE        	into :m_sec_type from ks.B_SEC_CODE         	where MARKET_CODE=:m_market_code and SEC_CODE=:m_stock_code;        if (m_sec_type[1]=='7')        	continue;      }            icntfetch++;      memset(data,0x0,sizeof(data));      TransBusinessCode(m_business_code,m_market_code,m_zydm,m_zymc,m_bdlb,m_oldzydm,m_oldzymc);      printf("%s,%s,%s,%s,%s\n",m_branch_code,m_today,m_business_code,m_market_code,m_zydm);      printf("%d\n",strlen(m_zydm));      trim(m_cust_no);      trim(m_lsh);      trim(m_occur_date);      trim(m_holder_acc_no);      trim(m_occur_time);      trim(m_stock_code);      trim(m_market_code);      trim(m_business_code);      trim(m_change_type);      trim(m_currency_type);      trim(m_emp_code);      trim(m_yhdm);      trim(m_yhzh);      trim(m_bcsm);      trim(m_zydm);      trim(m_zymc);      trim(m_bdlb);      trim(m_oldzydm);      trim(m_oldzymc);      trim(m_sec_code);      trim(m_bill_no);            if ((strcmp(m_emp_code,"SYSTEM")==0) || (strcmp(m_emp_code,"")==0))      	strcpy(m_emp_code,"000SYS");      if (strcmp(m_currency_type,"01")==0)        strcpy(m_xkm_hbdm,"00");      if (strcmp(m_currency_type,"03")==0)        strcpy(m_xkm_hbdm,"01");      if (strcmp(m_currency_type,"02")==0)        strcpy(m_xkm_hbdm,"02");      if (strcmp(m_currency_type,"")==0)        strcpy(m_xkm_hbdm,"  ");              if (strcmp(m_market_code,"1")==0)        strcpy(m_xkm_scbm,"1");      if (strcmp(m_market_code,"2")==0)        strcpy(m_xkm_scbm,"0");      if (strcmp(m_market_code,"3")==0)        strcpy(m_xkm_scbm,"3");      if (strcmp(m_market_code,"4")==0)        strcpy(m_xkm_scbm,"2");      if (strcmp(m_market_code,"")==0)        strcpy(m_xkm_scbm,"");              if ((strcmp(m_market_code,"3")==0) || (strcmp(m_market_code,"1")==0))        strcpy(m_xkm_gddm,(char*)(m_holder_acc_no+1));      else        strcpy(m_xkm_gddm,m_holder_acc_no);            /*0001,0002,0003,0004 买入成交,卖出成交,认购缴款,分红派息*/      if ((strcmp(m_zydm,"0001")==0) || (strcmp(m_zydm,"0002")==0) || (strcmp(m_zydm,"0003")==0) || (strcmp(m_zydm,"0004")==0))      {	if ((strcmp(m_market_code,"1")==0) || (strcmp(m_market_code,"2")==0))	{        	EXEC SQL SELECT RPT_CONTRACT_NO,DONE_PRICE,COMMISION,STAMP_TAX,CHG_OWNER_FEE,SEC_TYPE,SEC_CODE,SEC_SHORT_NAME         		into :m_order,:m_amt2,:m_yj,:m_yhs,:m_ghf,:m_sec_type,:m_sec_code,:m_sec_name from ks.his_done         		where SERIAL_NO=:m_lsh and OCCUR_DATE=:m_occur_date and CUST_NO=:m_cust_no;        }        else        {        	EXEC SQL SELECT RPT_CONTRACT_NO,DONE_PRICE,COMMISION,STAMP_TAX,CHG_OWNER_FEE,SEC_TYPE,SEC_CODE,SEC_SHORT_NAME         		into :m_order,:m_amt2,:m_yj,:m_yhs,:m_ghf,:m_sec_type,:m_sec_code,:m_sec_name from ks.his_done         		where SERIAL_NO=:m_join_lsh and OCCUR_DATE=:m_join_date and CUST_NO=:m_cust_no;        }        	        trim(m_order);        trim(m_sec_code);        trim(m_sec_name);        trim(m_sec_type);               	strncpy(m_zqlb,m_sec_type,1);       	m_scdm[0]=m_market_code[0];       	m_scdm[1]=0x0;	if (strstr("3,4",m_scdm)!=NULL)	/*如果是B股*/	{		if (strcmp(m_zqlb,"6")==0)			strncpy(m_zqlb,"Z",1);		else if (strcmp(m_zqlb,"A")==0)			strncpy(m_zqlb,"Y",1);	}	m_bdlb[0]=m_scdm[0];	m_bdlb[1]=m_zqlb[0];	if (strcmp(m_zydm,"0001")==0)	{		if ((strcmp(m_market_code,"3")==0) || (strcmp(m_market_code,"4")==0))			sprintf(m_oldzymc,"%s%s%s","买入",m_sec_name,"交收");		else			sprintf(m_oldzymc,"%s%s","买入",m_sec_name);		if ((strcmp(m_market_code,"3")==0) || (strcmp(m_market_code,"4")==0))			m_sec_chg=0;	}	if (strcmp(m_zydm,"0002")==0)	{

⌨️ 快捷键说明

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