`
收藏列表
标题 标签 来源
shouc 控制文本框只能输入数字
                                    <input id="prodValue" onkeyup="value=value.replace(/[^\d]/g,'')" name="prodValue" type="text" />
vc socket库
#include <winsock2.h>
#pragma comment(lib, "Ws2_32.lib") 
#include <winsock.h> 
#pragma comment(lib, "WSOCK32.lib") 
proc 代码
/* Result Sets Interface */
#ifndef SQL_CRSR
#  define SQL_CRSR
  struct sql_cursor
  {
    unsigned int curocn;
    void *ptr1;
    void *ptr2;
    unsigned int magic;
  };
  typedef struct sql_cursor sql_cursor;
  typedef struct sql_cursor SQL_CURSOR;
#endif /* SQL_CRSR */

/* Thread Safety */
typedef void * sql_context;
typedef void * SQL_CONTEXT;

/* Object support */
struct sqltvn
{
  unsigned char *tvnvsn; 
  unsigned short tvnvsnl; 
  unsigned char *tvnnm;
  unsigned short tvnnml; 
  unsigned char *tvnsnm;
  unsigned short tvnsnml;
};
typedef struct sqltvn sqltvn;

struct sqladts
{
  unsigned int adtvsn; 
  unsigned short adtmode; 
  unsigned short adtnum;  
  sqltvn adttvn[1];       
};
typedef struct sqladts sqladts;

static struct sqladts sqladt = {
  1,1,0,
};

/* Binding to PL/SQL Records */
struct sqltdss
{
  unsigned int tdsvsn; 
  unsigned short tdsnum; 
  unsigned char *tdsval[1]; 
};
typedef struct sqltdss sqltdss;
static struct sqltdss sqltds =
{
  1,
  0,
};

/* File name & Package Name */
struct sqlcxp
{
  unsigned short fillen;
           char  filnam[10];
};
static struct sqlcxp sqlfpn =
{
    9,
    "gzdxqs.pc"
};


static unsigned int sqlctx = 39235;


static struct sqlexd {
   unsigned long  sqlvsn;
   unsigned int   arrsiz;
   unsigned int   iters;
   unsigned int   offset;
   unsigned short selerr;
   unsigned short sqlety;
   unsigned int   occurs;
            short *cud;
   unsigned char  *sqlest;
            char  *stmt;
   sqladts *sqladtp;
   sqltdss *sqltdsp;
   unsigned char  **sqphsv;
   unsigned long  *sqphsl;
            int   *sqphss;
            short **sqpind;
            int   *sqpins;
   unsigned long  *sqparm;
   unsigned long  **sqparc;
   unsigned short  *sqpadto;
   unsigned short  *sqptdso;
   unsigned int   sqlcmax;
   unsigned int   sqlcmin;
   unsigned int   sqlcincr;
   unsigned int   sqlctimeout;
   unsigned int   sqlcnowait;
            int   sqfoff;
   unsigned int   sqcmod;
   unsigned int   sqfmod;
   unsigned char  *sqhstv[11];
   unsigned long  sqhstl[11];
            int   sqhsts[11];
            short *sqindv[11];
            int   sqinds[11];
   unsigned long  sqharm[11];
   unsigned long  *sqharc[11];
   unsigned short  sqadto[11];
   unsigned short  sqtdso[11];
} sqlstm = {12,11};

/* SQLLIB Prototypes */
extern sqlcxt (/*_ void **, unsigned int *,
                   struct sqlexd *, struct sqlcxp * _*/);
extern sqlcx2t(/*_ void **, unsigned int *,
                   struct sqlexd *, struct sqlcxp * _*/);
extern sqlbuft(/*_ void **, char * _*/);
extern sqlgs2t(/*_ void **, char * _*/);
extern sqlorat(/*_ void **, unsigned int *, void * _*/);

/* Forms Interface */
static int IAPSUCC = 0;
static int IAPFAIL = 1403;
static int IAPFTL  = 535;
extern void sqliem(/*_ char *, int * _*/);

 static char *sq0007 = 
"select ZQDM  from BONDINFO where ((XSFS='B' and DQR>=:b0) and FXJSRQ<:b1)  \
         ";

typedef struct { unsigned short len; unsigned char arr[1]; } VARCHAR;
typedef struct { unsigned short len; unsigned char arr[1]; } varchar;

/* CUD (Compilation Unit Data) Array */
static short sqlcud0[] =
{12,4130,852,0,0,
5,0,0,1,67,0,4,469,0,0,1,0,0,1,0,2,97,0,0,
24,0,0,2,67,0,4,492,0,0,1,0,0,1,0,2,97,0,0,
43,0,0,3,67,0,4,508,0,0,1,0,0,1,0,2,97,0,0,
62,0,0,4,73,0,4,619,0,0,2,1,0,1,0,2,97,0,0,1,97,0,0,
85,0,0,5,58,0,4,646,0,0,2,1,0,1,0,2,97,0,0,1,97,0,0,
108,0,0,6,58,0,4,659,0,0,2,1,0,1,0,2,97,0,0,1,97,0,0,
131,0,0,7,84,0,9,697,0,0,2,2,0,1,0,1,97,0,0,1,97,0,0,
154,0,0,7,0,0,13,709,0,0,1,0,0,1,0,2,97,0,0,
173,0,0,7,0,0,15,717,0,0,0,0,0,1,0,
188,0,0,7,0,0,15,734,0,0,0,0,0,1,0,
203,0,0,8,123,0,4,804,0,0,7,1,0,1,0,2,97,0,0,2,97,0,0,2,97,0,0,2,97,0,0,2,97,0,
0,2,97,0,0,1,97,0,0,
246,0,0,9,186,0,4,851,0,0,6,3,0,1,0,2,97,0,0,2,97,0,0,2,97,0,0,1,97,0,0,1,97,0,
0,1,97,0,0,
285,0,0,10,242,0,4,880,0,0,6,3,0,1,0,2,97,0,0,2,97,0,0,2,97,0,0,1,97,0,0,1,97,
0,0,1,97,0,0,
324,0,0,11,67,0,4,932,0,0,1,0,0,1,0,2,97,0,0,
343,0,0,12,119,0,4,1029,0,0,4,3,0,1,0,2,97,0,0,1,97,0,0,1,97,0,0,1,97,0,0,
374,0,0,13,120,0,4,1055,0,0,4,3,0,1,0,2,97,0,0,1,97,0,0,1,97,0,0,1,97,0,0,
405,0,0,14,143,0,3,1596,0,0,11,11,0,1,0,1,97,0,0,1,97,0,0,1,97,0,0,1,97,0,0,1,
97,0,0,1,97,0,0,1,97,0,0,1,97,0,0,1,97,0,0,1,97,0,0,1,97,0,0,
464,0,0,15,0,0,29,1606,0,0,0,0,0,1,0,
479,0,0,16,70,0,4,1660,0,0,3,2,0,1,0,2,97,0,0,1,97,0,0,1,97,0,0,
506,0,0,17,104,0,5,1675,0,0,7,7,0,1,0,1,97,0,0,1,97,0,0,1,97,0,0,1,97,0,0,1,97,
0,0,1,97,0,0,1,97,0,0,
549,0,0,18,103,0,3,1687,0,0,7,7,0,1,0,1,97,0,0,1,97,0,0,1,97,0,0,1,97,0,0,1,97,
0,0,1,97,0,0,1,97,0,0,
592,0,0,19,47,0,5,1697,0,0,2,2,0,1,0,1,97,0,0,1,97,0,0,
615,0,0,20,0,0,29,1706,0,0,0,0,0,1,0,
630,0,0,21,64,0,4,1836,0,0,2,2,0,1,0,1,97,0,0,1,97,0,0,
653,0,0,22,121,0,3,1848,0,0,9,9,0,1,0,1,97,0,0,1,97,0,0,1,97,0,0,1,97,0,0,1,97,
0,0,1,97,0,0,1,97,0,0,1,97,0,0,1,97,0,0,
704,0,0,23,0,0,29,1856,0,0,0,0,0,1,0,
719,0,0,24,53,0,4,2130,0,0,1,1,0,1,0,1,97,0,0,
738,0,0,25,95,0,4,2538,0,0,4,1,0,1,0,2,97,0,0,2,97,0,0,2,97,0,0,1,97,0,0,
769,0,0,26,53,0,4,2715,0,0,1,1,0,1,0,1,97,0,0,
};


#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include "DayOff.h"
#include "tapi_pubfunc.h"
#include "transparam.h"
#include "sop.h"
#define TASK_SJZQS        "41"


static _INT _UpdateTable_Result(_CHR *cJYDate,_CHR *cRWBH,_CHR *cRWNR,_CHR *cWCQK,_CHR *cJYSBYY,_CHR *cCLKSSJ,int iFlag);
static _INT split(char *s, char sign,int No,char SS[][100]);
static _INT GetDQNDSJJXTS(_UCHR* caJYRQ,_UCHR*	caSYFXR, _UCHR*	caXYFXR,_UCHR*	caFXPL);
static _INT _UPDATE_JSJTRESLUT(_UCHR* caZQDM,_UCHR* caJFZH,_UCHR* caDFZH,_UCHR* caYNGYJG,_UCHR* caZHNGJG,_UCHR* caJYRQ,_UCHR *caGZXTLSH,_UCHR *caJYJE);
static int GetProfileString(char *FileName,char *Section,char *Index,char *GetValue);
_INT AddDate_SJZ(_UCHR *pcaDate, _INT n,_UCHR *pcaEndData);
int QS_GetQSDate(_UCHR *caJYRQ,_UCHR *caQSCS,_UCHR *caJGTS,_UCHR *SQSDate_out,_UCHR *EQSDate_out,_UCHR *QSHKDate_out);
int CheckDate(_UCHR *caDate);
int PtTcpSnd(int sockfd, char *buffer, int length);
int PtConnectser(char *alIp,int ilPort);
int PtTcpRcvIntHeadTime( int headlen,int sock, char *buf, int length, int timeout );
int tcp_client_nj(char *sndIP,int sndPORT,char *aczSendMsg,int iSendLen,char *aczRecvMsg,int recvBuflen,int *iReLen,int iTime);
int GetDateParaInfo_SJZ(char *caJYRQ,char *caZQDM,char *caJGGZRTS,char *caSYFXR_OUT,char *caXYFXR_OUT,char *caSYFXJZR_OUT);
int getJXXX(char *caSYFXR,char *caXYFXR,char *caJYRQ,char *caJYJE,char *caZQDM,char *caYJLXE_out,char *caYKLXE_out);
_INT DayOffRcvFile(char *RcvFilePathName,char *RcvFileName);
int DealResultFile_SJZ(char *caFilePathName);
int getspdata( char *databuf, int ino ,char *lsmem);

int main(int argc,char* argv[])
{
	/* EXEC SQL BEGIN DECLARE SECTION; */ 

	_UCHR	caCount[16+1];
	_UCHR   caCount_HX[16+1];
	_UCHR   caZXBZ[1+1];
	_UCHR   caFlag[256];
	_UCHR	caFileName[128+1]; /*文件名称*/
	_UCHR   caLogFileName[100];            /*日志文件名称*/
	_UCHR  	caWorkDate[JYRQ_LEN+1];        /*工作日期*/
	_UCHR	caWorkDateTmp[8+1];
	_UCHR	caTmp[32+1];
	_UCHR   caTmp2[32+1];
	_UCHR	caJYRQ[JYRQ_LEN+1];
	_UCHR	caFilePathName2[D_WJLJ_LEN+1];
	_UCHR   caZQDM[D_ZQDM_LEN+1];			/*债券代码*/
	_UCHR	strZQDM[1024+1];
	_UCHR   caFilePathName[D_WJLJ_LEN+1];/* 带路径路径文件名称 */
	_UCHR   caHXFilePathName[D_WJLJ_LEN+1];/* 带路径路径文件名称 */
	_UCHR 	caQXRQ[D_JYRQ_LEN+1];       /*起息日期*/
	_UCHR 	caZXLV[D_LV_LEN+1];        /*执行利率*/
	_UCHR 	caJXTS[4+1];               /*计息天数*/
	_UCHR 	caSYFXR[D_JYRQ_LEN+1];     /*上一付息日*/
	_UCHR 	caXYFXR[D_JYRQ_LEN+1];     /*下一付息日*/
	_UCHR 	caDQR[D_JYRQ_LEN+1];       /*到期日*/
	_UCHR   caSYFXR_Y[D_JYRQ_LEN+1]; /*上一付息日前一天*/
	_UCHR   caXYFXR_Y[D_JYRQ_LEN+1]; /*下一付息日前一天*/
	_UCHR   caDQR_Y  [D_JYRQ_LEN+1]; /*兑付日前一天*/
	_UCHR 	caFXPL[D_FXPL_LEN+1];      /*付息频率*/
	_UCHR 	caJXFS[D_JXFS_LEN+1];      /*计息方式*/
	_UCHR 	caFXJSRQ[D_JYRQ_LEN+1];    /*发行结束日期*/
	_UCHR   caQX[2+1];/*期限*/
 	_UCHR 	caCSED[D_ZMYE_LEN+1];      /*初始额度*/
	_UCHR 	caJTED[D_ZMYE_LEN+1];      /*代销清算额度*/
	_UCHR 	caDQED[D_ZMYE_LEN+1];      /*当前额度*/
	_UCHR 	caLJJS[JS_LEN+1];          /*累计基数*/
	_UCHR 	caJTA2VALID[D_CSZ_LEN+1];    /*是否为代销清算日*/
	_UCHR 	caRGBJNO[32+1];  /*发行帐号2163*/
	_UCHR 	caTDBJNO[32+1];	/*提前兑付本金帐号1793*/
	_UCHR 	caTDLXNO[32+1];	/*提前兑付利息帐号1794*/
	_UCHR 	caBXDCJELXNO[32+1];/*储蓄国债利息收入5582*/
	_UCHR 	caDFBJNO[32+1];/*兑付本金2160*/
	_UCHR 	caDFLXNO[32+1];/*兑付利息2161*/
	_UCHR	caJYJE[16+1];
	_UCHR 	catmpDQR[D_JYRQ_LEN+1];
	_UCHR 	catmpRq[D_JYRQ_LEN+1];         /*交易日期-1*/
	_UCHR   caGYH[D_GYH_LEN+1];	       /*柜员号        */ 
	_UCHR   caJGH[D_JGH_LEN+1];	       /*机构号        */
	_UCHR	caQudao[3+1]="457";/*渠道号*/
	_UCHR	caYNGYJG[4+1]="9901";/*营业机构号*/
	_UCHR	caZHNGJG[4+1]="9901";/*账务机构号*/
	char  	caXH[D_XH_LEN+1];
	_UCHR	caYKLX[16+1];/*应扣利息*/
	_UCHR	caYJLX[16+1];
	_UCHR	sysCmd[100];
	_UCHR	caZYWWTH[100+1];
	_UCHR	caCGCLWJ[100+1];
	_UCHR	caSBCLWJ[100+1];
	_UCHR	caHPANWJ[100+1];
	_UCHR   caRESULT_QS[16+1];
	_UCHR	caFilePathName_MAC[D_WJLJ_LEN+1]; /*文件全路径名*/
	char	sndIP[16]; /*ip地址*/
	char	sndPORT[6]; /*端口号*/
	char    aBuff[256];                  /*从文件中读取数据*/
	int     iRetCode;
	int     iSendLen;
	int     iRecvLen;
	int     j=0;
	char    aczRetCode[7+1]; /*报文头响应码*/
	char    aczBuf[512];
	char    aczTemp[64];
	char    aczSendMsg[2048];
	char    aczRecvMsg[2048];
	/*报文头数据域*/
	_UCHR 	aczPDTRCD        [4+1];     /*交易代码         */
	_UCHR 	aczPDLDTC        [4+1];     /*联动交易码   */
	char  	aczPDTRDT        [8+1];     /*交易日期       */
	char  	aczPDTRTM        [4+1];       /*交易时间         */
	char  	aczPDTLSQ        [12+1];    /*柜员流水号   */
	char  	caPDKJRQ    [8+1];/*会计日期*/
	char  	caPDJKBB    [2+1];/*交易接口版本号*/
	char  	caFDFHBAOL  [20+1];/*返回交易头保留*/
	char    aczPDERTR        [2+1];     /*出错交易序号 */
	char    aczTPU_RETCODE   [8+1];      /*错误代号    TPU_RETCODE)*/
	char    aczTPU_RETMSG[80+1]; /*响应信息*/
	char    caWTBH[30+1]; /*委托编号*/
	int     imac=-1,m;
	char    macJGH[4+1];
	char    macIndex_create[256];
	char    macBuf[32+1];
	char    caFilePathName3[100+1];
	_UCHR   caFQFLSH[20+1];
	FILE    *fp = NULL;
	int     iZQDM=0,iTemp,iDaysOfYear=0,iDay=0,iRet;/*包销债券个数*/
	char    strNewZQDM[100][100];
	short 	iflag;
	_LONG 	lYE = 0;
	double 	dLx = 0.00,dLx1 = 0.00;
	double 	dLJYE = 0.00;
	char 	*pStr=NULL;
	
	
	char caProfileNamePath[128];
	char caTflag[64];
	
	_UCHR caZYLX[64+1]; /*银行自营利息(日代销清算累计利息和)*/
	_UCHR caTDLX[64+1]; /*日间提兑利息(客户提兑付给客户的利息和)*/
	_UCHR caZLX[64+1];  /*总利息(财政部划拨给银行的总利息)*/
	_UCHR caCE[64+1];  /*差额(总利息-日间提兑利息-银行自营利息)*/            
	
	_UCHR caSDZXFS[1+1];     /*手动执行方式*/	
	_UCHR caHKRQ[8+1];       /*划款日期*/
	_UCHR caQSZQDM[12+1];   /*清算债券代码*/
	_UCHR caTmpStr[1024+1];
	
	_UCHR caDBQSFS[32+1];  /*清算方式 A-逐日 B-定期*/
	_UCHR caDBQSCS[32+1];  /*提前兑取清算次数*/
	_UCHR caDBJGTS[32+1];  /*定期清算间隔工作日数*/
	_UCHR caDBJGTS_YWJZR[32+1];  /*代销业务截止日间隔工作日数*/
	_UCHR caQSQSR[8+1];    /*清算起始日*/
	_UCHR caQSZZR[8+1];    /*清算终止日(清算日)*/
	_UCHR caQSHKR[8+1];    /*清算划款日*/
	_INT iQSDay=0;  /*清算周期天数*/
	_UCHR caHXRZRQ[8+1]; /*入账日期*/
	
	_UCHR caQSTDBJ     [16+1];  /*清算提兑本金*/
	_UCHR caQSTDBJYJX  [16+1];  /*清算提兑本金应计息*/
	_UCHR caQSTDBJYKX  [16+1];  /*清算提兑本金应扣息*/
	_UCHR caQSKHTDYJX  [16+1];  /*清算客户提兑应计息*/
	_UCHR caQSKHTDYKX  [16+1];  /*清算客户提兑应扣息*/
	
	
	_UCHR caQSKHTDBJ    [16+1];
	_UCHR caQSKHTDYJX_2 [16+1];
	_UCHR caQSKHTDYKX_2 [16+1];
	
	_UCHR caQSTDBJ_1     [16+1];  /*清算提兑本金1*/
	_UCHR caQSTDBJYJX_1  [16+1];  /*清算提兑本金应计息1*/
	_UCHR caQSTDBJYKX_1  [16+1];  /*清算提兑本金应扣息1*/
	_UCHR caQSTDBJ_2     [16+1];  /*清算提兑本金2*/
	_UCHR caQSTDBJYJX_2  [16+1];  /*清算提兑本金应计息2*/
	_UCHR caQSTDBJYKX_2  [16+1];  /*清算提兑本金应扣息2*/
	
	
	_UCHR caRZBZ[1+1];/*入账标识*/
	_UCHR caQSQSRSYFXR [8+1];   /*清算起始日上一付息日*/
	_UCHR caQSZZRSYFXR [8+1];   /*清算终止日上一付息日*/
	_UCHR caQSQSRXYFXR [8+1];   /*清算起始日下一付息日*/
	_UCHR caQSZZRXYFXR [8+1];   /*清算终止日下一付息日*/
	_UCHR caSYFXJZR_QSQSR [8+1];   /*清算起始日上一付息截止日*/
	_UCHR caSYFXJZR_QSZZR [8+1];   /*清算终止日上一付息截止日*/
	
	_UCHR caRcvFileName[1024+1];
	_UCHR caRcvFilePathName[1024+1];
    _CHR caCLKSSJ[D_CLJSSJ_LEN+1];
	
	_CHR	*pTmpStr = NULL;
	/* EXEC SQL END DECLARE SECTION; */ 

	/*变量初始化开始*/
	memset(caLogFileName,0x00,sizeof(caLogFileName));
	memset(caWorkDateTmp,0x00,sizeof(caWorkDateTmp));
	memset(caTmp,0x00,sizeof(caTmp));
	memset(caTmp2,0x00,sizeof(caTmp2));
	memset(caWorkDate,0x00,sizeof(caWorkDate));
	memset(caJYRQ,0x00,sizeof(caJYRQ));
	memset(caZQDM,0x00,sizeof(caZQDM));
	memset(strZQDM, 0x00, sizeof(strZQDM));
	memset(caFilePathName, 0x00, sizeof(caFilePathName));
	memset(caFilePathName2, 0x00, sizeof(caFilePathName2));
	memset(strNewZQDM, 0x00, sizeof(strNewZQDM));
	memset(caZXLV, 0x00, sizeof(caZXLV));
	memset(caJXFS, 0x00, sizeof(caJXFS));
	memset(caFXPL, 0x00, sizeof(caFXPL));
	memset(caFXJSRQ, 0x00, sizeof(caFXJSRQ));
	memset(caQXRQ, 0x00, sizeof(caQXRQ)); 
	memset(caDQR, 0x00, sizeof(caDQR));
	memset(caCSED, 0x00, sizeof(caCSED));
	memset(caJTED, 0x00, sizeof(caJTED));
	memset(caDQED, 0x00, sizeof(caDQED));
	memset(caLJJS, 0x00, sizeof(caLJJS));
	memset(caJTA2VALID, 0x00, sizeof(caJTA2VALID));
	memset(caRGBJNO,0x00,sizeof(caRGBJNO));
	memset(caTDBJNO,0x00,sizeof(caTDBJNO));
	memset(caTDLXNO,0x00,sizeof(caTDLXNO));
	memset(caBXDCJELXNO,0x00,sizeof(caBXDCJELXNO));
	memset(caDFBJNO,0x00,sizeof(caDFBJNO));
	memset(caDFLXNO,0x00,sizeof(caDFLXNO));
	memset(catmpDQR,0x00,sizeof(catmpDQR));
	memset(catmpRq,0x00,sizeof(catmpRq));
	memset(caGYH,0x00,sizeof(caGYH));
	memset(caJGH,0x00,sizeof(caJGH));
	memset(caXH,0x00,sizeof(caXH));
	memset(caYKLX,0x00,sizeof(caYKLX));
	memset(caYJLX,0x00,sizeof(caYJLX));
	memset(caJYJE,0x00,sizeof(caJYJE));
	memset(caSYFXR,0x00,sizeof(caSYFXR));
	memset(caXYFXR,0x00,sizeof(caXYFXR));
	memset(caFQFLSH,0x00,sizeof(caFQFLSH));
	memset(caFilePathName3,0x00,sizeof(caFilePathName3));
	memset(caQX,0x00,sizeof(caQX));
	memset(caSYFXR_Y,0x00,sizeof(caSYFXR_Y));
	memset(caXYFXR_Y,0x00,sizeof(caXYFXR_Y));
	memset(caDQR_Y,0x00,sizeof(caDQR_Y));
	memset(caZYLX,0x00,sizeof(caZYLX));
	memset(caTDLX,0x00,sizeof(caTDLX));
	memset(caZLX,0x00,sizeof(caZLX));
	memset(caCE,0x00,sizeof(caCE));
	
	memset(caSDZXFS,0x00,sizeof(caSDZXFS));
	memset(caHKRQ,0x00,sizeof(caHKRQ));
	memset(caQSZQDM,0x00,sizeof(caQSZQDM));
	memset(caTmpStr,0x00,sizeof(caTmpStr));
	
	memset(caDBQSFS,0x00,sizeof(caDBQSFS));
	memset(caDBQSCS,0x00,sizeof(caDBQSCS));
	memset(caDBJGTS,0x00,sizeof(caDBJGTS));
	memset(caDBJGTS_YWJZR,0x00,sizeof(caDBJGTS_YWJZR));
	
	memset(caSYFXJZR_QSQSR,0x00,sizeof(caSYFXJZR_QSQSR));
	memset(caSYFXJZR_QSZZR,0x00,sizeof(caSYFXJZR_QSZZR));
	
	
	memset(caQSQSR,0x00,sizeof(caQSQSR));
	memset(caQSZZR,0x00,sizeof(caQSZZR));
	memset(caQSHKR,0x00,sizeof(caQSHKR));
	memset(caHXRZRQ,0x00,sizeof(caHXRZRQ));
	memset(caCount,0x00,sizeof(caCount));
	
	memset(caRESULT_QS,0x00,sizeof(caRESULT_QS));
	memset(caFileName,0x00,sizeof(caFileName));
	memset(caHXFilePathName,0x00,sizeof(caHXFilePathName));
	memset(caZXBZ,0x00,sizeof(caZXBZ));
	
	memset(caQSTDBJ,0x00,sizeof(caQSTDBJ));
	memset(caQSTDBJYJX,0x00,sizeof(caQSTDBJYJX));
	memset(caQSTDBJYKX,0x00,sizeof(caQSTDBJYKX));
	memset(caQSKHTDYJX,0x00,sizeof(caQSKHTDYJX));
	memset(caQSKHTDYKX,0x00,sizeof(caQSKHTDYKX));
	memset(caFlag,0x00,sizeof(caFlag));
	memset(caCLKSSJ,0x00,sizeof(caCLKSSJ));
	memset(caQSQSRSYFXR,0x00,sizeof(caQSQSRSYFXR));
	memset(caQSZZRSYFXR,0x00,sizeof(caQSZZRSYFXR));
	memset(caQSQSRXYFXR,0x00,sizeof(caQSQSRXYFXR));
	memset(caQSZZRXYFXR,0x00,sizeof(caQSZZRXYFXR));
	
	memset(caQSTDBJ_1,0x00,sizeof(caQSTDBJ_1));
	memset(caQSTDBJYJX_1,0x00,sizeof(caQSTDBJYJX_1));
	memset(caQSTDBJYKX_1,0x00,sizeof(caQSTDBJYKX_1));
	memset(caQSTDBJ_2,0x00,sizeof(caQSTDBJ_2));
	memset(caQSTDBJYJX_2,0x00,sizeof(caQSTDBJYJX_2));
	memset(caQSTDBJYKX_2,0x00,sizeof(caQSTDBJYKX_2));
	memset(caRZBZ,0x00,sizeof(caRZBZ));
	memset(caRcvFileName,0x00,sizeof(caRcvFileName));
	memset(caRcvFilePathName,0x00,sizeof(caRcvFilePathName));
	memset(caCount_HX,0x00,sizeof(caCount_HX));
	
	memset(caQSKHTDBJ,0x00,sizeof(caQSKHTDBJ));
	memset(caQSKHTDYJX_2,0x00,sizeof(caQSKHTDYJX_2));
	memset(caQSKHTDYKX_2,0x00,sizeof(caQSKHTDYKX_2));
	
	
	
	/*变量初始化结束*/
	iRet = DBOpenDatabaseForDayoff( getenv("DBSRVNAME"), getenv("ORACLE_DBU"),\
	 getenv("ORACLE_DBPW")); 
	if(iRet < 0) 
	{
		errLog( LOG_ERROR, "打开数据库失败", RPT_TO_LOG,0 , 0 );
		fprintf(stdout,"交易失败\n");
		return -1;
	}
	errLog(LOG_INFO, "打开数据库成功!", RPT_TO_LOG, 0, 0);
	InitLog();
	sprintf(caLogFileName,"%s/log/%s_%d.log",getenv("RUNDIR"),argv[0],getpid());
	ChgLog ( LOG_CHG_LOG , caLogFileName ) ;
	ChgLog ( LOG_CHG_MODE , "1" ) ;
	
	memset(caCLKSSJ,0x00,sizeof(caCLKSSJ));
	GetFmtSysDate("HHMMSS",&caCLKSSJ);
	
	/*判断执行方式*/
	if((argc!=2)|| ((strcmp(argv[1],"0")!=0)&&(strcmp(argv[1],"1")!=0))){
		fprintf(stdout,"请按如下格式正确输入参数:\n");
		fprintf(stdout,"%s 0/1\n",argv[0]);
		fprintf(stdout,"说明:0-日终执行 1-手动强制执行\n");
		exit(0);
	}
	
	memset(caZXBZ,0x00,sizeof(caZXBZ));
	memcpy(caZXBZ,argv[1],1);
	
	
	
	/*获得当前工作日期*/
	iRet = GetBondWorkDate(&caWorkDate);
	if(iRet < 0) {
	    errLog(LOG_ERROR, "获取工作日期失败!", RPT_TO_LOG, 0, 0);
	    /*关闭数据库*/
	    iRet = DBCloseDatabase();
	    if(iRet < 0) {
	        errLog(LOG_ERROR,"关闭数据库失败",RPT_TO_LOG,0 , 0);
	        fprintf(stdout,"交易失败\n");
	        return -1;
	    } 
	    fprintf(stdout,"交易失败\n");  
	    return -1;	
	}
	
	if ( GetSysStan(&caXH) < 0 ) {
		sprintf(g_caMsg,"获取国债系统流水号出错[%d]", D_CLJSSJ_LEN);
		errLog(LOG_ERROR, g_caMsg, RPT_TO_LOG, 0, 0);
		fprintf(stdout,"交易失败\n");
		_UpdateTable_Result(caWorkDate,TASK_SJZQS,"代销清算","03","失败",caCLKSSJ,atoi(argv[1]));
		return -1;
	}
	sprintf(g_caMsg,"国债系统流水号caXH=[%s]",caXH);
	errLog( LOG_INFO, g_caMsg, RPT_TO_LOG, 0 , 0 );
	
	memset(caHXRZRQ,0x00,sizeof(caHXRZRQ));
	memcpy(caHXRZRQ,caWorkDate,8);
	
	memset(caWorkDateTmp,0x00,sizeof(caWorkDateTmp));
	if(strcmp(argv[1],"0")==0){
		
		iRet = DateCal(caWorkDate, 0, caWorkDateTmp);
		if(iRet == -1){
			errLog(LOG_ERROR,"当前国债系统日期-1出错",RPT_TO_LOG, 0, 0);
			printf("当前国债系统日期-1出错\n");
			fprintf(stdout,"交易失败\n");
			_UpdateTable_Result(caWorkDate,TASK_SJZQS,"代销清算","03","失败",caCLKSSJ,atoi(argv[1]));
			return -1; 
		}else {
			sprintf(g_caMsg, "当前国债系统-1后的日期为[%s]", caWorkDateTmp);
			errLog(LOG_INFO, g_caMsg, RPT_TO_LOG, 0, 0);
		}
		
		memset(caHXRZRQ,0x00,sizeof(caHXRZRQ));
		memcpy(caHXRZRQ,caWorkDateTmp,8);
		
	}else{
		while(1){
			fprintf(stdout,"请选择并输入清算方式[1-按照指定划款日期清算全部代销债券]\n");
			fprintf(stdout,"                    [2-按照指定划款日期清算指定代销债券]\n");
			fprintf(stdout,"                    [0-退出]\n");
			fprintf(stdout,"请输入:");
			memset(caSDZXFS,0x00,sizeof(caSDZXFS));
			memset(caTmpStr,0x00,sizeof(caTmpStr));
			scanf("%s",caTmpStr);
			fflush(stdin) ;
			
			if(!strcmp(caTmpStr,"0"))
				exit(0);
			
			if((strcmp(caTmpStr,"1")!=0)&&(strcmp(caTmpStr,"2")!=0)){
				
				fprintf(stdout,"\n输入错误,请按照要求重新输入!\n");
				
			}else{
				strcpy(caSDZXFS,caTmpStr);
				memset(caTmpStr,0x00,sizeof(caTmpStr));
				break;
			}
		}
		while(1){
			fprintf(stdout,"\n请输入划款日期:");
			memset(caHKRQ,0x00,sizeof(caHKRQ));
			memset(caTmpStr,0x00,sizeof(caTmpStr));
			scanf("%s",caTmpStr);
			fflush(stdin) ;
			/*判断日期合法性*/
			iRet=CheckDate(caTmpStr);
			if(iRet!=0){
				sprintf(g_caMsg, "日期[%s]格式非法[%d]",caTmpStr,iRet);
				errLog(LOG_ERROR, g_caMsg, RPT_TO_LOG, 0, 0);
				errLog(LOG_INFO, "-1 长度不合法(长度非8位长)", RPT_TO_LOG, 0, 0);
				errLog(LOG_INFO, "-2 含有非数字字符", RPT_TO_LOG, 0, 0);
				errLog(LOG_INFO, "-3 年份不合法", RPT_TO_LOG, 0, 0);
				errLog(LOG_INFO, "-4 月份不合法", RPT_TO_LOG, 0, 0);
				errLog(LOG_INFO, "-5 日期不合法", RPT_TO_LOG, 0, 0);
				
				fprintf(stdout,"\n日期[%s]格式非法[%d],请重新输入!\n",caTmpStr,iRet);
				continue;
			}
			
			/*合法*/
			strcpy(caHKRQ,caTmpStr);
			break;
		}
		
		fprintf(stdout,"\n");
		fflush(stdin) ;
		
		while(1){
			fprintf(stdout,"请输入核心系统入账日期:");
			memset(caHXRZRQ,0x00,sizeof(caHXRZRQ));
			memset(caTmpStr,0x00,sizeof(caTmpStr));
			scanf("%s",caTmpStr);
			fflush(stdin) ;
			/*判断日期合法性*/
			iRet=CheckDate(caTmpStr);
			if(iRet!=0){
				sprintf(g_caMsg, "日期[%s]格式非法[%d]",caTmpStr,iRet);
				errLog(LOG_ERROR, g_caMsg, RPT_TO_LOG, 0, 0);
				errLog(LOG_INFO, "-1 长度不合法(长度非8位长)", RPT_TO_LOG, 0, 0);
				errLog(LOG_INFO, "-2 含有非数字字符", RPT_TO_LOG, 0, 0);
				errLog(LOG_INFO, "-3 年份不合法", RPT_TO_LOG, 0, 0);
				errLog(LOG_INFO, "-4 月份不合法", RPT_TO_LOG, 0, 0);
				errLog(LOG_INFO, "-5 日期不合法", RPT_TO_LOG, 0, 0);
				
				fprintf(stdout,"\n日期[%s]格式非法[%d],请重新输入!\n",caTmpStr,iRet);
				continue;
			}
			
			/*合法*/
			strcpy(caHXRZRQ,caTmpStr);
			break;
		}
		
		fprintf(stdout,"\n");
		fflush(stdin) ;
		
		memcpy(caWorkDateTmp,caHKRQ,8);
	}
	
	
	memcpy(caJYRQ,caWorkDateTmp,8);
	AllTrim(caJYRQ);
	sprintf(g_caMsg, "交易日期为:caJYRQ=[%s]",caJYRQ);
	errLog(LOG_INFO, g_caMsg, RPT_TO_LOG, 0, 0);
	
	memset(caDBQSFS,0x00,sizeof(caDBQSFS));
	memset(caDBQSCS,0x00,sizeof(caDBQSCS));
	memset(caDBJGTS,0x00,sizeof(caDBJGTS));
	
	memset(caQSQSR,0x00,sizeof(caQSQSR));
	memset(caQSZZR,0x00,sizeof(caQSZZR));
	memset(caQSHKR,0x00,sizeof(caQSHKR));
	
	/*获取清算方式(定期清算、逐日清算)、清算次数、间隔工作日天数*/
	/*A 逐日 B定期*/
	/* EXEC SQL SELECT PARAMVALUE INTO :caDBQSFS FROM APPRUNPARAM WHERE PARAMCODE='0001'; */ 

{
 struct sqlexd sqlstm;
 sqlstm.sqlvsn = 12;
 sqlstm.arrsiz = 1;
 sqlstm.sqladtp = &sqladt;
 sqlstm.sqltdsp = &sqltds;
 sqlstm.stmt = "select PARAMVALUE into :b0  from APPRUNPARAM where PARAMCOD\
E='0001'";
 sqlstm.iters = (unsigned int  )1;
 sqlstm.offset = (unsigned int  )5;
 sqlstm.selerr = (unsigned short)1;
 sqlstm.cud = sqlcud0;
 sqlstm.sqlest = (unsigned char  *)&sqlca;
 sqlstm.sqlety = (unsigned short)256;
 sqlstm.occurs = (unsigned int  )0;
 sqlstm.sqhstv[0] = (unsigned char  *)caDBQSFS;
 sqlstm.sqhstl[0] = (unsigned long )33;
 sqlstm.sqhsts[0] = (         int  )0;
 sqlstm.sqindv[0] = (         short *)0;
 sqlstm.sqinds[0] = (         int  )0;
 sqlstm.sqharm[0] = (unsigned long )0;
 sqlstm.sqadto[0] = (unsigned short )0;
 sqlstm.sqtdso[0] = (unsigned short )0;
 sqlstm.sqphsv = sqlstm.sqhstv;
 sqlstm.sqphsl = sqlstm.sqhstl;
 sqlstm.sqphss = sqlstm.sqhsts;
 sqlstm.sqpind = sqlstm.sqindv;
 sqlstm.sqpins = sqlstm.sqinds;
 sqlstm.sqparm = sqlstm.sqharm;
 sqlstm.sqparc = sqlstm.sqharc;
 sqlstm.sqpadto = sqlstm.sqadto;
 sqlstm.sqptdso = sqlstm.sqtdso;
 sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
}


	if(sqlca.sqlcode != 0)
	{
		sprintf(g_caMsg, "SELECT PARAMVALUE FROM APPRUNPARAM WHERE PARAMCODE='0001';");
		errLog(LOG_ERROR, g_caMsg, RPT_TO_LOG, 0, 0);
		sprintf(g_caMsg, "获取清算方式失败,sqlcode=[%d][%s]",sqlca.sqlcode,sqlca.sqlerrm.sqlerrmc);
		errLog(LOG_ERROR, g_caMsg, RPT_TO_LOG, 0, 0);
		
		fprintf(stdout,"\n获取清算方式失败!\n");
		fprintf(stdout,"交易失败\n");
		_UpdateTable_Result(caWorkDate,TASK_SJZQS,"代销清算","03","失败",caCLKSSJ,atoi(argv[1]));
		return -1;
	}
	AllTrim(caDBQSFS);
	
	/*获取清算起始日、清算终止日、清算划款日*/
	memset(caQSQSR,0x00,sizeof(caQSQSR));
	memset(caQSZZR,0x00,sizeof(caQSZZR));
	memset(caQSHKR,0x00,sizeof(caQSHKR));
	
	if(!strcmp(caDBQSFS,"B")){
		
		/*定期清算获取清算次数*/
		/* EXEC SQL SELECT PARAMVALUE INTO :caDBQSCS FROM APPRUNPARAM WHERE PARAMCODE='0002'; */ 

{
  struct sqlexd sqlstm;
  sqlstm.sqlvsn = 12;
  sqlstm.arrsiz = 1;
  sqlstm.sqladtp = &sqladt;
  sqlstm.sqltdsp = &sqltds;
  sqlstm.stmt = "select PARAMVALUE into :b0  from APPRUNPARAM where PARAMCO\
DE='0002'";
  sqlstm.iters = (unsigned int  )1;
  sqlstm.offset = (unsigned int  )24;
  sqlstm.selerr = (unsigned short)1;
  sqlstm.cud = sqlcud0;
  sqlstm.sqlest = (unsigned char  *)&sqlca;
  sqlstm.sqlety = (unsigned short)256;
  sqlstm.occurs = (unsigned int  )0;
  sqlstm.sqhstv[0] = (unsigned char  *)caDBQSCS;
  sqlstm.sqhstl[0] = (unsigned long )33;
  sqlstm.sqhsts[0] = (         int  )0;
  sqlstm.sqindv[0] = (         short *)0;
  sqlstm.sqinds[0] = (         int  )0;
  sqlstm.sqharm[0] = (unsigned long )0;
  sqlstm.sqadto[0] = (unsigned short )0;
  sqlstm.sqtdso[0] = (unsigned short )0;
  sqlstm.sqphsv = sqlstm.sqhstv;
  sqlstm.sqphsl = sqlstm.sqhstl;
  sqlstm.sqphss = sqlstm.sqhsts;
  sqlstm.sqpind = sqlstm.sqindv;
  sqlstm.sqpins = sqlstm.sqinds;
  sqlstm.sqparm = sqlstm.sqharm;
  sqlstm.sqparc = sqlstm.sqharc;
  sqlstm.sqpadto = sqlstm.sqadto;
  sqlstm.sqptdso = sqlstm.sqtdso;
  sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
}


		if(sqlca.sqlcode != 0)
		{
			sprintf(g_caMsg, "SELECT PARAMVALUE FROM APPRUNPARAM WHERE PARAMCODE='0002';");
			errLog(LOG_ERROR, g_caMsg, RPT_TO_LOG, 0, 0);
			sprintf(g_caMsg, "定期获取清算次数失败,sqlcode=[%d][%s]",sqlca.sqlcode,sqlca.sqlerrm.sqlerrmc);
			errLog(LOG_ERROR, g_caMsg, RPT_TO_LOG, 0, 0);
			
			fprintf(stdout,"\n定期清算获取清算次数失败!\n");
			fprintf(stdout,"交易失败\n");
			_UpdateTable_Result(caWorkDate,TASK_SJZQS,"代销清算","03","失败",caCLKSSJ,atoi(argv[1]));
			return -1;
		}
		AllTrim(caDBQSCS);
		
		/*定期清算获取间隔工作日天数*/
		/* EXEC SQL SELECT PARAMVALUE INTO :caDBJGTS FROM APPRUNPARAM WHERE PARAMCODE='0003'; */ 

{
  struct sqlexd sqlstm;
  sqlstm.sqlvsn = 12;
  sqlstm.arrsiz = 1;
  sqlstm.sqladtp = &sqladt;
  sqlstm.sqltdsp = &sqltds;
  sqlstm.stmt = "select PARAMVALUE into :b0  from APPRUNPARAM where PARAMCO\
DE='0003'";
  sqlstm.iters = (unsigned int  )1;
  sqlstm.offset = (unsigned int  )43;
  sqlstm.selerr = (unsigned short)1;
  sqlstm.cud = sqlcud0;
  sqlstm.sqlest = (unsigned char  *)&sqlca;
  sqlstm.sqlety = (unsigned short)256;
  sqlstm.occurs = (unsigned int  )0;
  sqlstm.sqhstv[0] = (unsigned char  *)caDBJGTS;
  sqlstm.sqhstl[0] = (unsigned long )33;
  sqlstm.sqhsts[0] = (         int  )0;
  sqlstm.sqindv[0] = (         short *)0;
  sqlstm.sqinds[0] = (         int  )0;
  sqlstm.sqharm[0] = (unsigned long )0;
  sqlstm.sqadto[0] = (unsigned short )0;
  sqlstm.sqtdso[0] = (unsigned short )0;
  sqlstm.sqphsv = sqlstm.sqhstv;
  sqlstm.sqphsl = sqlstm.sqhstl;
  sqlstm.sqphss = sqlstm.sqhsts;
  sqlstm.sqpind = sqlstm.sqindv;
  sqlstm.sqpins = sqlstm.sqinds;
  sqlstm.sqparm = sqlstm.sqharm;
  sqlstm.sqparc = sqlstm.sqharc;
  sqlstm.sqpadto = sqlstm.sqadto;
  sqlstm.sqptdso = sqlstm.sqtdso;
  sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
}


		if(sqlca.sqlcode != 0)
		{
			sprintf(g_caMsg, "SELECT PARAMVALUE FROM APPRUNPARAM WHERE PARAMCODE='0003';");
			errLog(LOG_ERROR, g_caMsg, RPT_TO_LOG, 0, 0);
			sprintf(g_caMsg, "定期清算获取清算间隔工作日天数失败,sqlcode=[%d][%s]",sqlca.sqlcode,sqlca.sqlerrm.sqlerrmc);
			errLog(LOG_ERROR, g_caMsg, RPT_TO_LOG, 0, 0);
			
			fprintf(stdout,"\n定期清算获取清算间隔工作日天数失败!\n");
			fprintf(stdout,"交易失败\n");
			_UpdateTable_Result(caWorkDate,TASK_SJZQS,"代销清算","03","失败",caCLKSSJ,atoi(argv[1]));
			return -1;
		}
		AllTrim(caDBJGTS);
		
		iQSDay=QS_GetQSDate(caJYRQ,caDBQSCS,caDBJGTS,caQSQSR,caQSZZR,caQSHKR);
		if(iQSDay<0){
			sprintf(g_caMsg, "获取定期清算参数失败[%d]",iQSDay);
			errLog(LOG_ERROR, g_caMsg, RPT_TO_LOG, 0, 0);
			
			fprintf(stdout,"获取定期清算参数失败[%d]\n",iQSDay);
			fprintf(stdout,"交易失败\n");
			_UpdateTable_Result(caWorkDate,TASK_SJZQS,"代销清算","03","失败",caCLKSSJ,atoi(argv[1]));
			return -1;
		}
		
		
	}else{
		memset(caQSQSR,0x00,sizeof(caQSQSR));
		memset(caQSZZR,0x00,sizeof(caQSZZR));
		memset(caQSHKR,0x00,sizeof(caQSHKR));
		
		DateCal(caJYRQ,0 , caQSQSR);
		memcpy(caQSZZR,caQSQSR,8);
		memcpy(caQSHKR,caJYRQ,8);
		iQSDay=1;
	}
	/*A-逐日 B-定期*/
	sprintf(g_caMsg, "清算方式     [%s]",caDBQSFS);
	errLog(LOG_INFO, g_caMsg, RPT_TO_LOG, 0, 0);
	sprintf(g_caMsg, "当前业务日期 [%s]",caWorkDate);
	errLog(LOG_INFO, g_caMsg, RPT_TO_LOG, 0, 0);
	sprintf(g_caMsg, "核心入账日期 [%s]",caHXRZRQ);
	errLog(LOG_INFO, g_caMsg, RPT_TO_LOG, 0, 0);
	sprintf(g_caMsg, "交易日期     [%s]",caJYRQ);
	errLog(LOG_INFO, g_caMsg, RPT_TO_LOG, 0, 0);
	sprintf(g_caMsg, "清算次数     [%s]",caDBQSCS);
	errLog(LOG_INFO, g_caMsg, RPT_TO_LOG, 0, 0);
	sprintf(g_caMsg, "间隔天数     [%s]",caDBJGTS);
	errLog(LOG_INFO, g_caMsg, RPT_TO_LOG, 0, 0);
	sprintf(g_caMsg, "清算开始日   [%s]",caQSQSR);
	errLog(LOG_INFO, g_caMsg, RPT_TO_LOG, 0, 0);
	sprintf(g_caMsg, "清算终止日   [%s]",caQSZZR);
	errLog(LOG_INFO, g_caMsg, RPT_TO_LOG, 0, 0);
	sprintf(g_caMsg, "清算周期天数 [%d]",iQSDay);
	errLog(LOG_INFO, g_caMsg, RPT_TO_LOG, 0, 0);
	sprintf(g_caMsg, "清算划款日   [%s]",caQSHKR);
	errLog(LOG_INFO, g_caMsg, RPT_TO_LOG, 0, 0);
	
	/*手动执行信息确认*/
	if(strcmp(argv[1],"1")==0){
		fprintf(stdout, "清算方式     [%s]\n",caDBQSFS);
		fprintf(stdout, "当前业务日期 [%s]\n",caWorkDate);
		fprintf(stdout, "核心入账日期 [%s]\n",caHXRZRQ);
		fprintf(stdout, "交易日期     [%s]\n",caJYRQ);
		fprintf(stdout, "清算次数     [%s]\n",caDBQSCS);
		fprintf(stdout, "间隔天数     [%s]\n",caDBJGTS);
		fprintf(stdout, "清算开始日   [%s]\n",caQSQSR);
		fprintf(stdout, "清算终止日   [%s]\n",caQSZZR);
		fprintf(stdout, "清算周期天数 [%d]\n",iQSDay);
		fprintf(stdout, "清算划款日   [%s]\n",caQSHKR);
		fprintf(stdout, "请确认以上执行信息[Y/y-确认,其他任意-退出]\n");
		fprintf(stdout, "请输入:");
		
		memset(caFlag,0x00,sizeof(caFlag));
		scanf("%s",caFlag);
		fflush(stdin) ;
		AllTrim(caFlag);
		if((strcmp(caFlag,"Y")!=0)&&(strcmp(caFlag,"y")!=0))
			exit(0);
		
		fprintf(stdout, "\n");
		fflush(stdin) ;
	}
	
	/*判断交易日期是否为划款日*/
	if(memcmp(caJYRQ,caQSHKR,8)!=0){
		sprintf(g_caMsg, "交易日期[%s]非清算划款日[%s],不进行清算划款处理,程序退出",caJYRQ,caQSHKR);
		errLog(LOG_INFO, g_caMsg, RPT_TO_LOG, 0, 0);
		if(strcmp(argv[1],"0")==0){
			errLog(LOG_INFO, "无此任务", RPT_TO_LOG, 0, 0);
			fprintf(stdout,"\n无此任务\n",caJYRQ);
			_UpdateTable_Result(caWorkDate,TASK_SJZQS,"代销清算","02","无此任务",caCLKSSJ,atoi(argv[1]));
			exit(0);
		}
		fprintf(stdout,"\n交易日期[%s]非清算划款日[%s],不进行清算划款处理,程序退出!\n",caJYRQ,caQSHKR);
		exit(0);
	}
	
	if(!strcmp(caSDZXFS,"2")){
		fprintf(stdout,"\n请输入债券代码:");
		memset(caQSZQDM,0x00,sizeof(caQSZQDM));
		scanf("%s",caQSZQDM);
		fflush(stdin) ;
		AllTrim(caQSZQDM);
	}			
 
  
  	/*日终执行时判断是否执行过(手动执行为强制执行由行方人员人为控制是否执行)*/
  	if(strcmp(argv[1],"0")==0){
  		memset(caCount,0x00,sizeof(caCount));
  		/* EXEC SQL SELECT COUNT(*) INTO :caCount FROM HBDXQSDJB 
  			WHERE GZYWRQ=:caWorkDate AND ZXBZ='0'; */ 

{
    struct sqlexd sqlstm;
    sqlstm.sqlvsn = 12;
    sqlstm.arrsiz = 2;
    sqlstm.sqladtp = &sqladt;
    sqlstm.sqltdsp = &sqltds;
    sqlstm.stmt = "select count(*)  into :b0  from HBDXQSDJB where (GZYWRQ=\
:b1 and ZXBZ='0')";
    sqlstm.iters = (unsigned int  )1;
    sqlstm.offset = (unsigned int  )62;
    sqlstm.selerr = (unsigned short)1;
    sqlstm.cud = sqlcud0;
    sqlstm.sqlest = (unsigned char  *)&sqlca;
    sqlstm.sqlety = (unsigned short)256;
    sqlstm.occurs = (unsigned int  )0;
    sqlstm.sqhstv[0] = (unsigned char  *)caCount;
    sqlstm.sqhstl[0] = (unsigned long )17;
    sqlstm.sqhsts[0] = (         int  )0;
    sqlstm.sqindv[0] = (         short *)0;
    sqlstm.sqinds[0] = (         int  )0;
    sqlstm.sqharm[0] = (unsigned long )0;
    sqlstm.sqadto[0] = (unsigned short )0;
    sqlstm.sqtdso[0] = (unsigned short )0;
    sqlstm.sqhstv[1] = (unsigned char  *)caWorkDate;
    sqlstm.sqhstl[1] = (unsigned long )9;
    sqlstm.sqhsts[1] = (         int  )0;
    sqlstm.sqindv[1] = (         short *)0;
    sqlstm.sqinds[1] = (         int  )0;
    sqlstm.sqharm[1] = (unsigned long )0;
    sqlstm.sqadto[1] = (unsigned short )0;
    sqlstm.sqtdso[1] = (unsigned short )0;
    sqlstm.sqphsv = sqlstm.sqhstv;
    sqlstm.sqphsl = sqlstm.sqhstl;
    sqlstm.sqphss = sqlstm.sqhsts;
    sqlstm.sqpind = sqlstm.sqindv;
    sqlstm.sqpins = sqlstm.sqinds;
    sqlstm.sqparm = sqlstm.sqharm;
    sqlstm.sqparc = sqlstm.sqharc;
    sqlstm.sqpadto = sqlstm.sqadto;
    sqlstm.sqptdso = sqlstm.sqtdso;
    sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
}


		if(sqlca.sqlcode !=0 && sqlca.sqlcode!=1403){
			
			sprintf(g_caMsg, "查询 HBDXQSDJB 失败,sqlcode=[%d][%s]",sqlca.sqlcode,sqlca.sqlerrm.sqlerrmc);
			errLog(LOG_ERROR, g_caMsg, RPT_TO_LOG, 0, 0);
			fprintf(stdout,"执行状态查询失败,程序退出!\n");
			fprintf(stdout,"交易失败\n");
			_UpdateTable_Result(caWorkDate,TASK_SJZQS,"代销清算","03","失败",caCLKSSJ,atoi(argv[1]));
			return -1;
		}
		
		if(atoi(caCount)>0){
			sprintf(g_caMsg, "该日终任务已经执行过,请不要重复执行[%d]",atoi(caCount));
			errLog(LOG_ERROR, g_caMsg, RPT_TO_LOG, 0, 0);
			fprintf(stdout,"该任务已完成,禁止重复执行!\n");
			fprintf(stdout,"交易失败\n");
			return -1;
		}
  	}
  	
	fprintf(stdout,"生成代销清算文件开始\n");	
	errLog(LOG_INFO,"生成代销清算文件开始",RPT_TO_LOG,0 , 0);
	
	/*生成代销清算文件名*/
	/*获取文件序号*/
	memset(caCount,0x00,sizeof(caCount));
	/* EXEC SQL SELECT COUNT(*) INTO :caCount FROM HBDXQSDJB 
		WHERE GZYWRQ=:caWorkDate; */ 

{
 struct sqlexd sqlstm;
 sqlstm.sqlvsn = 12;
 sqlstm.arrsiz = 2;
 sqlstm.sqladtp = &sqladt;
 sqlstm.sqltdsp = &sqltds;
 sqlstm.stmt = "select count(*)  into :b0  from HBDXQSDJB where GZYWRQ=:b1";
 sqlstm.iters = (unsigned int  )1;
 sqlstm.offset = (unsigned int  )85;
 sqlstm.selerr = (unsigned short)1;
 sqlstm.cud = sqlcud0;
 sqlstm.sqlest = (unsigned char  *)&sqlca;
 sqlstm.sqlety = (unsigned short)256;
 sqlstm.occurs = (unsigned int  )0;
 sqlstm.sqhstv[0] = (unsigned char  *)caCount;
 sqlstm.sqhstl[0] = (unsigned long )17;
 sqlstm.sqhsts[0] = (         int  )0;
 sqlstm.sqindv[0] = (         short *)0;
 sqlstm.sqinds[0] = (         int  )0;
 sqlstm.sqharm[0] = (unsigned long )0;
 sqlstm.sqadto[0] = (unsigned short )0;
 sqlstm.sqtdso[0] = (unsigned short )0;
 sqlstm.sqhstv[1] = (unsigned char  *)caWorkDate;
 sqlstm.sqhstl[1] = (unsigned long )9;
 sqlstm.sqhsts[1] = (         int  )0;
 sqlstm.sqindv[1] = (         short *)0;
 sqlstm.sqinds[1] = (         int  )0;
 sqlstm.sqharm[1] = (unsigned long )0;
 sqlstm.sqadto[1] = (unsigned short )0;
 sqlstm.sqtdso[1] = (unsigned short )0;
 sqlstm.sqphsv = sqlstm.sqhstv;
 sqlstm.sqphsl = sqlstm.sqhstl;
 sqlstm.sqphss = sqlstm.sqhsts;
 sqlstm.sqpind = sqlstm.sqindv;
 sqlstm.sqpins = sqlstm.sqinds;
 sqlstm.sqparm = sqlstm.sqharm;
 sqlstm.sqparc = sqlstm.sqharc;
 sqlstm.sqpadto = sqlstm.sqadto;
 sqlstm.sqptdso = sqlstm.sqtdso;
 sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
}


	if(sqlca.sqlcode !=0 && sqlca.sqlcode!=1403){
			
		sprintf(g_caMsg, "查询 HBDXQSDJB 失败,sqlcode=[%d][%s]",sqlca.sqlcode,sqlca.sqlerrm.sqlerrmc);
		errLog(LOG_ERROR, g_caMsg, RPT_TO_LOG, 0, 0);
		fprintf(stdout,"查询成功执行次数失败,程序退出!\n");
		fprintf(stdout,"交易失败\n");
		_UpdateTable_Result(caWorkDate,TASK_SJZQS,"代销清算","03","失败",caCLKSSJ,atoi(argv[1]));
		return -1;
	}
	
	memset(caCount_HX,0x00,sizeof(caCount_HX));
	/* EXEC SQL SELECT COUNT(*) INTO :caCount_HX FROM HBDXQSDJB 
		WHERE HXQSRQ=:caHXRZRQ; */ 

{
 struct sqlexd sqlstm;
 sqlstm.sqlvsn = 12;
 sqlstm.arrsiz = 2;
 sqlstm.sqladtp = &sqladt;
 sqlstm.sqltdsp = &sqltds;
 sqlstm.stmt = "select count(*)  into :b0  from HBDXQSDJB where HXQSRQ=:b1";
 sqlstm.iters = (unsigned int  )1;
 sqlstm.offset = (unsigned int  )108;
 sqlstm.selerr = (unsigned short)1;
 sqlstm.cud = sqlcud0;
 sqlstm.sqlest = (unsigned char  *)&sqlca;
 sqlstm.sqlety = (unsigned short)256;
 sqlstm.occurs = (unsigned int  )0;
 sqlstm.sqhstv[0] = (unsigned char  *)caCount_HX;
 sqlstm.sqhstl[0] = (unsigned long )17;
 sqlstm.sqhsts[0] = (         int  )0;
 sqlstm.sqindv[0] = (         short *)0;
 sqlstm.sqinds[0] = (         int  )0;
 sqlstm.sqharm[0] = (unsigned long )0;
 sqlstm.sqadto[0] = (unsigned short )0;
 sqlstm.sqtdso[0] = (unsigned short )0;
 sqlstm.sqhstv[1] = (unsigned char  *)caHXRZRQ;
 sqlstm.sqhstl[1] = (unsigned long )9;
 sqlstm.sqhsts[1] = (         int  )0;
 sqlstm.sqindv[1] = (         short *)0;
 sqlstm.sqinds[1] = (         int  )0;
 sqlstm.sqharm[1] = (unsigned long )0;
 sqlstm.sqadto[1] = (unsigned short )0;
 sqlstm.sqtdso[1] = (unsigned short )0;
 sqlstm.sqphsv = sqlstm.sqhstv;
 sqlstm.sqphsl = sqlstm.sqhstl;
 sqlstm.sqphss = sqlstm.sqhsts;
 sqlstm.sqpind = sqlstm.sqindv;
 sqlstm.sqpins = sqlstm.sqinds;
 sqlstm.sqparm = sqlstm.sqharm;
 sqlstm.sqparc = sqlstm.sqharc;
 sqlstm.sqpadto = sqlstm.sqadto;
 sqlstm.sqptdso = sqlstm.sqtdso;
 sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
}


	if(sqlca.sqlcode !=0 && sqlca.sqlcode!=1403){
			
		sprintf(g_caMsg, "查询 HBDXQSDJB 失败,sqlcode=[%d][%s]",sqlca.sqlcode,sqlca.sqlerrm.sqlerrmc);
		errLog(LOG_ERROR, g_caMsg, RPT_TO_LOG, 0, 0);
		fprintf(stdout,"查询核心清算执行次数失败,程序退出!\n");
		fprintf(stdout,"交易失败\n");
		_UpdateTable_Result(caWorkDate,TASK_SJZQS,"代销清算","03","失败",caCLKSSJ,atoi(argv[1]));
		return -1;
	}
	
  	memset(caFileName,0x00,sizeof(caFileName));
  	sprintf(caFileName,"3002_%s_%02d.txt",caHXRZRQ,atoi(caCount_HX)+2);
  	AllTrim(caFileName);
  	memset(caHXFilePathName,0x00,sizeof(caHXFilePathName));
  	sprintf(caHXFilePathName,"ext/qs/%s/%s",caHXRZRQ,caFileName);
	
	/*创建代销清算文件*/
	memset(caFilePathName, 0x00, sizeof(caFilePathName));
	sprintf(caFilePathName, "%s/%s",getenv("TFT_CLIENT_PRINTDIR"),caFileName);
	if(  0 == access(caFilePathName,F_OK) ){
		memset(sysCmd,0x00,sizeof(sysCmd));
		sprintf(sysCmd,"rm %s",caFilePathName);	
		system(sysCmd);
		sprintf(g_caMsg,"----执行命令[%s]----",sysCmd);
		errLog( LOG_INFO, g_caMsg, RPT_TO_LOG, 0 , 0 );
	}
	
	sprintf(g_caMsg,"国债系统流水号[%s]代销清算文件名[%s]",caXH,caFileName);
	errLog( LOG_INFO, g_caMsg, RPT_TO_LOG, 0 , 0 );
	
	/*非手动指定代销债券模式下需根据清算起始日期自动获取需要清算划款的债券列表*/
	if(strcmp(caSDZXFS,"2")!=0){
		
		/* EXEC SQL DECLARE CurQSList CURSOR FOR 
		SELECT ZQDM FROM BONDINFO WHERE XSFS='B' AND DQR>=:caQSQSR AND FXJSRQ<:caQSZZR; */ 

		
		/* EXEC SQL OPEN CurQSList; */ 

{
  struct sqlexd sqlstm;
  sqlstm.sqlvsn = 12;
  sqlstm.arrsiz = 2;
  sqlstm.sqladtp = &sqladt;
  sqlstm.sqltdsp = &sqltds;
  sqlstm.stmt = sq0007;
  sqlstm.iters = (unsigned int  )1;
  sqlstm.offset = (unsigned int  )131;
  sqlstm.selerr = (unsigned short)1;
  sqlstm.cud = sqlcud0;
  sqlstm.sqlest = (unsigned char  *)&sqlca;
  sqlstm.sqlety = (unsigned short)256;
  sqlstm.occurs = (unsigned int  )0;
  sqlstm.sqcmod = (unsigned int )0;
  sqlstm.sqhstv[0] = (unsigned char  *)caQSQSR;
  sqlstm.sqhstl[0] = (unsigned long )9;
  sqlstm.sqhsts[0] = (         int  )0;
  sqlstm.sqindv[0] = (         short *)0;
  sqlstm.sqinds[0] = (         int  )0;
  sqlstm.sqharm[0] = (unsigned long )0;
  sqlstm.sqadto[0] = (unsigned short )0;
  sqlstm.sqtdso[0] = (unsigned short )0;
  sqlstm.sqhstv[1] = (unsigned char  *)caQSZZR;
  sqlstm.sqhstl[1] = (unsigned long )9;
  sqlstm.sqhsts[1] = (         int  )0;
  sqlstm.sqindv[1] = (         short *)0;
  sqlstm.sqinds[1] = (         int  )0;
  sqlstm.sqharm[1] = (unsigned long )0;
  sqlstm.sqadto[1] = (unsigned short )0;
  sqlstm.sqtdso[1] = (unsigned short )0;
  sqlstm.sqphsv = sqlstm.sqhstv;
  sqlstm.sqphsl = sqlstm.sqhstl;
  sqlstm.sqphss = sqlstm.sqhsts;
  sqlstm.sqpind = sqlstm.sqindv;
  sqlstm.sqpins = sqlstm.sqinds;
  sqlstm.sqparm = sqlstm.sqharm;
  sqlstm.sqparc = sqlstm.sqharc;
  sqlstm.sqpadto = sqlstm.sqadto;
  sqlstm.sqptdso = sqlstm.sqtdso;
  sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
}


		if(sqlca.sqlcode != 0) {                                                  
			sprintf(g_caMsg, "OPEN CURSOR[CurQSList] ERROR[%d],%s",\
			sqlca.sqlcode,sqlca.sqlerrm.sqlerrmc);
			errLog(LOG_ERROR, g_caMsg, RPT_TO_LOG, 0, 0);
			fprintf(stdout,"交易失败\n");
			_UpdateTable_Result(caWorkDate,TASK_SJZQS,"代销清算","03","失败",caCLKSSJ,atoi(argv[1]));
			return -1;
		}
		memset(strZQDM,0x00,sizeof(strZQDM));
		while(1) {
			memset(caZQDM,0x00,sizeof(caZQDM));
			/* EXEC SQL FETCH CurQSList  INTO :caZQDM; */ 

{
   struct sqlexd sqlstm;
   sqlstm.sqlvsn = 12;
   sqlstm.arrsiz = 2;
   sqlstm.sqladtp = &sqladt;
   sqlstm.sqltdsp = &sqltds;
   sqlstm.iters = (unsigned int  )1;
   sqlstm.offset = (unsigned int  )154;
   sqlstm.selerr = (unsigned short)1;
   sqlstm.cud = sqlcud0;
   sqlstm.sqlest = (unsigned char  *)&sqlca;
   sqlstm.sqlety = (unsigned short)256;
   sqlstm.occurs = (unsigned int  )0;
   sqlstm.sqfoff = (         int )0;
   sqlstm.sqfmod = (unsigned int )2;
   sqlstm.sqhstv[0] = (unsigned char  *)caZQDM;
   sqlstm.sqhstl[0] = (unsigned long )13;
   sqlstm.sqhsts[0] = (         int  )0;
   sqlstm.sqindv[0] = (         short *)0;
   sqlstm.sqinds[0] = (         int  )0;
   sqlstm.sqharm[0] = (unsigned long )0;
   sqlstm.sqadto[0] = (unsigned short )0;
   sqlstm.sqtdso[0] = (unsigned short )0;
   sqlstm.sqphsv = sqlstm.sqhstv;
   sqlstm.sqphsl = sqlstm.sqhstl;
   sqlstm.sqphss = sqlstm.sqhsts;
   sqlstm.sqpind = sqlstm.sqindv;
   sqlstm.sqpins = sqlstm.sqinds;
   sqlstm.sqparm = sqlstm.sqharm;
   sqlstm.sqparc = sqlstm.sqharc;
   sqlstm.sqpadto = sqlstm.sqadto;
   sqlstm.sqptdso = sqlstm.sqtdso;
   sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
}


			if(sqlca.sqlcode!= 0) {                                                     
		    	if(sqlca.sqlcode == 1403) {                                                                     
		        	break;
		    	} else {                                                                 
					sprintf(g_caMsg,"执行FETCH CurQSList 游标错误 error[%d] %s",\
					sqlca.sqlcode,sqlca.sqlerrm.sqlerrmc);
					errLog( LOG_ERROR, g_caMsg, RPT_TO_LOG, 0 , 0 );
					/* EXEC SQL CLOSE CurQSList; */ 

{
     struct sqlexd sqlstm;
     sqlstm.sqlvsn = 12;
     sqlstm.arrsiz = 2;
     sqlstm.sqladtp = &sqladt;
     sqlstm.sqltdsp = &sqltds;
     sqlstm.iters = (unsigned int  )1;
     sqlstm.offset = (unsigned int  )173;
     sqlstm.cud = sqlcud0;
     sqlstm.sqlest = (unsigned char  *)&sqlca;
     sqlstm.sqlety = (unsigned short)256;
     sqlstm.occurs = (unsigned int  )0;
     sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
}


					fprintf(stdout,"交易失败\n");
					_UpdateTable_Result(caWorkDate,TASK_SJZQS,"代销清算","03","失败",caCLKSSJ,atoi(argv[1]));
					return -1;
		    	}
			}
			AllTrim(caZQDM);
			errLog(LOG_INFO,caZQDM,RPT_TO_LOG, 0 , 0 );
			
			if(strlen(strZQDM) == 0) {
			   strcpy(strZQDM, caZQDM);
			} else {
			   strcat(strZQDM,caZQDM);
			}
			strcat(strZQDM,",");
		}
		
		/* EXEC SQL CLOSE CurQSList; */ 

{
  struct sqlexd sqlstm;
  sqlstm.sqlvsn = 12;
  sqlstm.arrsiz = 2;
  sqlstm.sqladtp = &sqladt;
  sqlstm.sqltdsp = &sqltds;
  sqlstm.iters = (unsigned int  )1;
  sqlstm.offset = (unsigned int  )188;
  sqlstm.cud = sqlcud0;
  sqlstm.sqlest = (unsigned char  *)&sqlca;
  sqlstm.sqlety = (unsigned short)256;
  sqlstm.occurs = (unsigned int  )0;
  sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
}


		
	}else{
		memset(strZQDM, 0x00, sizeof(strZQDM));
		memset(caZQDM,0x00,sizeof(caZQDM));
		strcpy(caZQDM,caQSZQDM);
		AllTrim(caZQDM);
		strcpy(strZQDM, caZQDM);
		strcat(strZQDM,",");
	}
	
	errLog(LOG_INFO,"代销清算债券代码列表为:",RPT_TO_LOG, 0 , 0 );
	errLog(LOG_INFO,strZQDM,RPT_TO_LOG, 0 , 0 );
	
	
	if(strlen(strZQDM) == 0) {
		errLog(LOG_INFO,"代销清算债券列表为空,无清算任务",RPT_TO_LOG, 0 , 0 );
		fprintf(stdout,"无此任务\n");
		_UpdateTable_Result(caWorkDate,TASK_SJZQS,"代销清算","02","无此任务",caCLKSSJ,atoi(argv[1]));
		return 0;
    }
	errLog(LOG_INFO,"获取待清算债券代码结束",RPT_TO_LOG, 0 , 0 );
    
	if ((pStr = strchr(strZQDM, ',')) == NULL) {
		errLog(LOG_DEBUG,"strZQDM rule error",RPT_TO_LOG, 0 , 0 );
		fprintf(stdout,"交易失败\n");
		_UpdateTable_Result(caWorkDate,TASK_SJZQS,"代销清算","03","失败",caCLKSSJ,atoi(argv[1]));
		return -1;
	}
	errLog(LOG_INFO,"check strZQDM rule ok",RPT_TO_LOG, 0 , 0 );
	
	memset(strNewZQDM, 0x00, sizeof(strNewZQDM));
	iZQDM=0;
	iZQDM=split(strZQDM,',',0,strNewZQDM);
	sprintf(g_caMsg,"待清算债券个数 iZQDM=[%d]",iZQDM-1);
	errLog(LOG_INFO, g_caMsg, RPT_TO_LOG, 0, 0);

	for(iTemp=0;iTemp<iZQDM-1;iTemp++){
		sprintf(g_caMsg, "已经处理[%d/%d]",iTemp,iZQDM-1);
		errLog(LOG_INFO, g_caMsg, RPT_TO_LOG, 0, 0);
		sprintf(g_caMsg, "开始处理[%d/%d]",iTemp+1,iZQDM-1);
		errLog(LOG_INFO, g_caMsg, RPT_TO_LOG, 0, 0);
		sprintf(g_caMsg, "债券代码[%s]开始处理",strNewZQDM[iTemp]);
		errLog(LOG_INFO, g_caMsg, RPT_TO_LOG, 0, 0);

		memset(caZXLV, 0x00, sizeof(caZXLV));
		memset(caJXFS, 0x00, sizeof(caJXFS));
		memset(caFXPL, 0x00, sizeof(caFXPL));
		memset(caFXJSRQ, 0x00, sizeof(caFXJSRQ));
		memset(caQXRQ, 0x00, sizeof(caQXRQ)); 
		memset(caQX,0x00,sizeof(caQX));
		memset(caDQR, 0x00, sizeof(caDQR));
		memset(caRGBJNO,0x00,sizeof(caRGBJNO));
		memset(caTDBJNO,0x00,sizeof(caTDBJNO));
		memset(caTDLXNO,0x00,sizeof(caTDLXNO));
		memset(caBXDCJELXNO,0x00,sizeof(caBXDCJELXNO));
		memset(caDFBJNO,0x00,sizeof(caDFBJNO));
		memset(caDFLXNO,0x00,sizeof(caDFLXNO));
		memset(caGYH,0x00,sizeof(caGYH));
		memset(caJGH,0x00,sizeof(caJGH));
		memset(caCSED, 0x00, sizeof(caCSED));
		memset(caJTED, 0x00, sizeof(caJTED));
		memset(caDQED, 0x00, sizeof(caDQED));
		memset(caLJJS, 0x00, sizeof(caLJJS));
		memset(caJTA2VALID, 0x00, sizeof(caJTA2VALID));
		memset(caJYJE,0x00,sizeof(caJYJE));
		memset(caSYFXR,0x00,sizeof(caSYFXR));
		memset(caXYFXR,0x00,sizeof(caXYFXR));
		
		/*获取债券内部账号*/
		/* EXEC SQL  SELECT RGBJNO,TDBJNO,TDLXNO,BXDCJELXNO,DFBJNO,DFLXNO
		INTO  :caRGBJNO,:caTDBJNO,:caTDLXNO,:caBXDCJELXNO,:caDFBJNO,:caDFLXNO
		FROM ACCNOINFO
		WHERE TRIM(ZQDM)=:strNewZQDM[iTemp]; */ 

{
  struct sqlexd sqlstm;
  sqlstm.sqlvsn = 12;
  sqlstm.arrsiz = 7;
  sqlstm.sqladtp = &sqladt;
  sqlstm.sqltdsp = &sqltds;
  sqlstm.stmt = "select RGBJNO ,TDBJNO ,TDLXNO ,BXDCJELXNO ,DFBJNO ,DFLXNO \
into :b0,:b1,:b2,:b3,:b4,:b5  from ACCNOINFO where trim(ZQDM)=:b6";
  sqlstm.iters = (unsigned int  )1;
  sqlstm.offset = (unsigned int  )203;
  sqlstm.selerr = (unsigned short)1;
  sqlstm.cud = sqlcud0;
  sqlstm.sqlest = (unsigned char  *)&sqlca;
  sqlstm.sqlety = (unsigned short)256;
  sqlstm.occurs = (unsigned int  )0;
  sqlstm.sqhstv[0] = (unsigned char  *)caRGBJNO;
  sqlstm.sqhstl[0] = (unsigned long )33;
  sqlstm.sqhsts[0] = (         int  )0;
  sqlstm.sqindv[0] = (         short *)0;
  sqlstm.sqinds[0] = (         int  )0;
  sqlstm.sqharm[0] = (unsigned long )0;
  sqlstm.sqadto[0] = (unsigned short )0;
  sqlstm.sqtdso[0] = (unsigned short )0;
  sqlstm.sqhstv[1] = (unsigned char  *)caTDBJNO;
  sqlstm.sqhstl[1] = (unsigned long )33;
  sqlstm.sqhsts[1] = (         int  )0;
  sqlstm.sqindv[1] = (         short *)0;
  sqlstm.sqinds[1] = (         int  )0;
  sqlstm.sqharm[1] = (unsigned long )0;
  sqlstm.sqadto[1] = (unsigned short )0;
  sqlstm.sqtdso[1] = (unsigned short )0;
  sqlstm.sqhstv[2] = (unsigned char  *)caTDLXNO;
  sqlstm.sqhstl[2] = (unsigned long )33;
  sqlstm.sqhsts[2] = (         int  )0;
  sqlstm.sqindv[2] = (         short *)0;
  sqlstm.sqinds[2] = (         int  )0;
  sqlstm.sqharm[2] = (unsigned long )0;
  sqlstm.sqadto[2] = (unsigned short )0;
  sqlstm.sqtdso[2] = (unsigned short )0;
  sqlstm.sqhstv[3] = (unsigned char  *)caBXDCJELXNO;
  sqlstm.sqhstl[3] = (unsigned long )33;
  sqlstm.sqhsts[3] = (         int  )0;
  sqlstm.sqindv[3] = (         short *)0;
  sqlstm.sqinds[3] = (         int  )0;
  sqlstm.sqharm[3] = (unsigned long )0;
  sqlstm.sqadto[3] = (unsigned short )0;
  sqlstm.sqtdso[3] = (unsigned short )0;
  sqlstm.sqhstv[4] = (unsigned char  *)caDFBJNO;
  sqlstm.sqhstl[4] = (unsigned long )33;
  sqlstm.sqhsts[4] = (         int  )0;
  sqlstm.sqindv[4] = (         short *)0;
  sqlstm.sqinds[4] = (         int  )0;
  sqlstm.sqharm[4] = (unsigned long )0;
  sqlstm.sqadto[4] = (unsigned short )0;
  sqlstm.sqtdso[4] = (unsigned short )0;
  sqlstm.sqhstv[5] = (unsigned char  *)caDFLXNO;
  sqlstm.sqhstl[5] = (unsigned long )33;
  sqlstm.sqhsts[5] = (         int  )0;
  sqlstm.sqindv[5] = (         short *)0;
  sqlstm.sqinds[5] = (         int  )0;
  sqlstm.sqharm[5] = (unsigned long )0;
  sqlstm.sqadto[5] = (unsigned short )0;
  sqlstm.sqtdso[5] = (unsigned short )0;
  sqlstm.sqhstv[6] = (unsigned char  *)strNewZQDM[iTemp];
  sqlstm.sqhstl[6] = (unsigned long )100;
  sqlstm.sqhsts[6] = (         int  )0;
  sqlstm.sqindv[6] = (         short *)0;
  sqlstm.sqinds[6] = (         int  )0;
  sqlstm.sqharm[6] = (unsigned long )0;
  sqlstm.sqadto[6] = (unsigned short )0;
  sqlstm.sqtdso[6] = (unsigned short )0;
  sqlstm.sqphsv = sqlstm.sqhstv;
  sqlstm.sqphsl = sqlstm.sqhstl;
  sqlstm.sqphss = sqlstm.sqhsts;
  sqlstm.sqpind = sqlstm.sqindv;
  sqlstm.sqpins = sqlstm.sqinds;
  sqlstm.sqparm = sqlstm.sqharm;
  sqlstm.sqparc = sqlstm.sqharc;
  sqlstm.sqpadto = sqlstm.sqadto;
  sqlstm.sqptdso = sqlstm.sqtdso;
  sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
}


    	
		if(sqlca.sqlcode!=0 && sqlca.sqlcode!=1405){
			sprintf(g_caMsg,"获得该债券的记账账号错误 error[%d][%s]",sqlca.sqlcode,sqlca.sqlerrm.sqlerrmc);		
			errLog( LOG_ERROR, g_caMsg, RPT_TO_LOG, 0 , 0 );
			sprintf(g_caMsg,"SELECT RGBJNO,TDBJNO,TDLXNO,BXDCJELXNO,DFBJNO,DFLXNO FROM ACCNOINFO  WHERE trim(ZQDM)= '%s' ;,strNewZQDM[%d]",strNewZQDM[iTemp],iTemp);		
			errLog( LOG_ERROR, g_caMsg, RPT_TO_LOG, 0 , 0 );
			fprintf(stdout,"交易失败\n");
			_UpdateTable_Result(caWorkDate,TASK_SJZQS,"代销清算","03","失败",caCLKSSJ,atoi(argv[1]));
			return -1;
		}
    	
    	/*
    		代理发行电子储蓄国债                             RGBJNO
			代理兑付电子储蓄国债                             TDBJNO
			应收款项类电子式国债投资成本或代销电子式国债垫款 TDLXNO
			应收款项类电子式国债应收利息                     SXFNO
			应收应收款项类电子式国债利息                     DFBJNO
			应收款项类电子式国债利息收入                     DFLXNO
			备用(不可为空)                                   BXDCJELXNO
    	*/
    	
		AllTrim(caRGBJNO);/*5850*/
		AllTrim(caTDBJNO);/*0078*/
		AllTrim(caTDLXNO);/*5724*/
		AllTrim(caBXDCJELXNO);/*0781*/
		AllTrim(caDFBJNO);/*5851*/
		AllTrim(caDFLXNO);/*5852*/
		
		/*需要获取的金额参数*/
		/*应收款项类电子式国债投资成本 TDLXNO 本次清算周期提兑本金*/
		/*应收应收款项类电子式国债利息 DFBJNO 客户提兑应计息-客户提兑应扣利息*/
		/*
		  应收款项类电子式国债利息收入 DFLXNO 
		  本次清算周期提兑本金应计利息-本次清算周期提兑本金应扣利息
		  -客户提兑应计息-客户提兑应扣利息
		 */
		memset(caQSTDBJ,0x00,sizeof(caQSTDBJ));
		memset(caQSTDBJYJX,0x00,sizeof(caQSTDBJYJX));
		memset(caQSTDBJYKX,0x00,sizeof(caQSTDBJYKX));
		memset(caQSKHTDYJX,0x00,sizeof(caQSKHTDYJX));
		memset(caQSKHTDYKX,0x00,sizeof(caQSKHTDYKX));
		
		/*获取本次清算周期提兑本金、客户提兑应计息、客户提兑应扣息*/
		/* EXEC SQL SELECT NVL(SUM(NVL(JYJE,'0')),'0'),NVL(SUM(NVL(YJLX,'0')),'0'),NVL(SUM(NVL(YKLX,'0')),'0') INTO :caQSTDBJ,:caQSKHTDYJX,:caQSKHTDYKX
			FROM PRECASHLOG
			WHERE ZQDM=:strNewZQDM[iTemp] AND JYRQ>=:caQSQSR AND JYRQ<=:caQSZZR AND ZT='0'; */ 

{
  struct sqlexd sqlstm;
  sqlstm.sqlvsn = 12;
  sqlstm.arrsiz = 7;
  sqlstm.sqladtp = &sqladt;
  sqlstm.sqltdsp = &sqltds;
  sqlstm.stmt = "select NVL(sum(NVL(JYJE,'0')),'0') ,NVL(sum(NVL(YJLX,'0'))\
,'0') ,NVL(sum(NVL(YKLX,'0')),'0') into :b0,:b1,:b2  from PRECASHLOG where ((\
(ZQDM=:b3 and JYRQ>=:b4) and JYRQ<=:b5) and ZT='0')";
  sqlstm.iters = (unsigned int  )1;
  sqlstm.offset = (unsigned int  )246;
  sqlstm.selerr = (unsigned short)1;
  sqlstm.cud = sqlcud0;
  sqlstm.sqlest = (unsigned char  *)&sqlca;
  sqlstm.sqlety = (unsigned short)256;
  sqlstm.occurs = (unsigned int  )0;
  sqlstm.sqhstv[0] = (unsigned char  *)caQSTDBJ;
  sqlstm.sqhstl[0] = (unsigned long )17;
  sqlstm.sqhsts[0] = (         int  )0;
  sqlstm.sqindv[0] = (         short *)0;
  sqlstm.sqinds[0] = (         int  )0;
  sqlstm.sqharm[0] = (unsigned long )0;
  sqlstm.sqadto[0] = (unsigned short )0;
  sqlstm.sqtdso[0] = (unsigned short )0;
  sqlstm.sqhstv[1] = (unsigned char  *)caQSKHTDYJX;
  sqlstm.sqhstl[1] = (unsigned long )17;
  sqlstm.sqhsts[1] = (         int  )0;
  sqlstm.sqindv[1] = (         short *)0;
  sqlstm.sqinds[1] = (         int  )0;
  sqlstm.sqharm[1] = (unsigned long )0;
  sqlstm.sqadto[1] = (unsigned short )0;
  sqlstm.sqtdso[1] = (unsigned short )0;
  sqlstm.sqhstv[2] = (unsigned char  *)caQSKHTDYKX;
  sqlstm.sqhstl[2] = (unsigned long )17;
  sqlstm.sqhsts[2] = (         int  )0;
  sqlstm.sqindv[2] = (         short *)0;
  sqlstm.sqinds[2] = (         int  )0;
  sqlstm.sqharm[2] = (unsigned long )0;
  sqlstm.sqadto[2] = (unsigned short )0;
  sqlstm.sqtdso[2] = (unsigned short )0;
  sqlstm.sqhstv[3] = (unsigned char  *)strNewZQDM[iTemp];
  sqlstm.sqhstl[3] = (unsigned long )100;
  sqlstm.sqhsts[3] = (         int  )0;
  sqlstm.sqindv[3] = (         short *)0;
  sqlstm.sqinds[3] = (         int  )0;
  sqlstm.sqharm[3] = (unsigned long )0;
  sqlstm.sqadto[3] = (unsigned short )0;
  sqlstm.sqtdso[3] = (unsigned short )0;
  sqlstm.sqhstv[4] = (unsigned char  *)caQSQSR;
  sqlstm.sqhstl[4] = (unsigned long )9;
  sqlstm.sqhsts[4] = (         int  )0;
  sqlstm.sqindv[4] = (         short *)0;
  sqlstm.sqinds[4] = (         int  )0;
  sqlstm.sqharm[4] = (unsigned long )0;
  sqlstm.sqadto[4] = (unsigned short )0;
  sqlstm.sqtdso[4] = (unsigned short )0;
  sqlstm.sqhstv[5] = (unsigned char  *)caQSZZR;
  sqlstm.sqhstl[5] = (unsigned long )9;
  sqlstm.sqhsts[5] = (         int  )0;
  sqlstm.sqindv[5] = (         short *)0;
  sqlstm.sqinds[5] = (         int  )0;
  sqlstm.sqharm[5] = (unsigned long )0;
  sqlstm.sqadto[5] = (unsigned short )0;
  sqlstm.sqtdso[5] = (unsigned short )0;
  sqlstm.sqphsv = sqlstm.sqhstv;
  sqlstm.sqphsl = sqlstm.sqhstl;
  sqlstm.sqphss = sqlstm.sqhsts;
  sqlstm.sqpind = sqlstm.sqindv;
  sqlstm.sqpins = sqlstm.sqinds;
  sqlstm.sqparm = sqlstm.sqharm;
  sqlstm.sqparc = sqlstm.sqharc;
  sqlstm.sqpadto = sqlstm.sqadto;
  sqlstm.sqptdso = sqlstm.sqtdso;
  sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
}


		if( sqlca.sqlcode!=0 ){
			
			sprintf(g_caMsg,"SELECT NVL(SUM(NVL(JYJE,'0')),'0'),NVL(SUM(NVL(YJLX,'0')),'0'),NVL(SUM(NVL(YKLX,'0')),'0') FROM PRECASHLOG WHERE ZQDM='%s' AND JYRQ>='%s' AND JYRQ<='%s' AND ZT='0';",strNewZQDM[iTemp],caQSQSR,caQSZZR);
			errLog( LOG_INFO, g_caMsg, RPT_TO_LOG, 0 , 0 );
			
			if( sqlca.sqlcode==1403 ){
				
				sprintf(g_caMsg,"提兑清算周期[%s]至[%s](双闭区间)",caQSQSR,caQSZZR);
				errLog( LOG_ERROR, g_caMsg, RPT_TO_LOG, 0 , 0 );
				sprintf(g_caMsg,"债券[%s]本清算周期未发生提兑交易,不进行提兑清算处理",strNewZQDM[iTemp]);
				errLog( LOG_ERROR, g_caMsg, RPT_TO_LOG, 0 , 0 );
				continue;
			}
			
			sprintf(g_caMsg,"SELECT PRECASHLOG ERROR[%d] %s",sqlca.sqlcode,sqlca.sqlerrm.sqlerrmc);
			errLog( LOG_ERROR, g_caMsg, RPT_TO_LOG, 0 , 0 );
			fprintf(stdout,"交易失败\n");
			_UpdateTable_Result(caWorkDate,TASK_SJZQS,"代销清算","03","失败",caCLKSSJ,atoi(argv[1]));
			return -1;
		}
		
		memset(caQSKHTDBJ,0x00,sizeof(caQSKHTDBJ));
		memset(caQSKHTDYJX_2,0x00,sizeof(caQSKHTDYJX_2));
		memset(caQSKHTDYKX_2,0x00,sizeof(caQSKHTDYKX_2));
		
		/*获取本次清算周期提兑本金、客户提兑应计息、客户提兑应扣息 (应计息大于应扣息部分)*/
		/* EXEC SQL SELECT NVL(SUM(NVL(JYJE,'0')),'0'),NVL(SUM(NVL(YJLX,'0')),'0'),NVL(SUM(NVL(YKLX,'0')),'0') INTO :caQSKHTDBJ,:caQSKHTDYJX_2,:caQSKHTDYKX_2 FROM PRECASHLOG
			WHERE ZQDM=:strNewZQDM[iTemp] AND JYRQ>=:caQSQSR AND JYRQ<=:caQSZZR AND ZT='0' AND TO_NUMBER(NVL(YJLX,'0'))>TO_NUMBER(NVL(YKLX,'0')); */ 

{
  struct sqlexd sqlstm;
  sqlstm.sqlvsn = 12;
  sqlstm.arrsiz = 7;
  sqlstm.sqladtp = &sqladt;
  sqlstm.sqltdsp = &sqltds;
  sqlstm.stmt = "select NVL(sum(NVL(JYJE,'0')),'0') ,NVL(sum(NVL(YJLX,'0'))\
,'0') ,NVL(sum(NVL(YKLX,'0')),'0') into :b0,:b1,:b2  from PRECASHLOG where ((\
((ZQDM=:b3 and JYRQ>=:b4) and JYRQ<=:b5) and ZT='0') and TO_NUMBER(NVL(YJLX,'\
0'))>TO_NUMBER(NVL(YKLX,'0')))";
  sqlstm.iters = (unsigned int  )1;
  sqlstm.offset = (unsigned int  )285;
  sqlstm.selerr = (unsigned short)1;
  sqlstm.cud = sqlcud0;
  sqlstm.sqlest = (unsigned char  *)&sqlca;
  sqlstm.sqlety = (unsigned short)256;
  sqlstm.occurs = (unsigned int  )0;
  sqlstm.sqhstv[0] = (unsigned char  *)caQSKHTDBJ;
  sqlstm.sqhstl[0] = (unsigned long )17;
  sqlstm.sqhsts[0] = (         int  )0;
  sqlstm.sqindv[0] = (         short *)0;
  sqlstm.sqinds[0] = (         int  )0;
  sqlstm.sqharm[0] = (unsigned long )0;
  sqlstm.sqadto[0] = (unsigned short )0;
  sqlstm.sqtdso[0] = (unsigned short )0;
  sqlstm.sqhstv[1] = (unsigned char  *)caQSKHTDYJX_2;
  sqlstm.sqhstl[1] = (unsigned long )17;
  sqlstm.sqhsts[1] = (         int  )0;
  sqlstm.sqindv[1] = (         short *)0;
  sqlstm.sqinds[1] = (         int  )0;
  sqlstm.sqharm[1] = (unsigned long )0;
  sqlstm.sqadto[1] = (unsigned short )0;
  sqlstm.sqtdso[1] = (unsigned short )0;
  sqlstm.sqhstv[2] = (unsigned char  *)caQSKHTDYKX_2;
  sqlstm.sqhstl[2] = (unsigned long )17;
  sqlstm.sqhsts[2] = (         int  )0;
  sqlstm.sqindv[2] = (         short *)0;
  sqlstm.sqinds[2] = (         int  )0;
  sqlstm.sqharm[2] = (unsigned long )0;
  sqlstm.sqadto[2] = (unsigned short )0;
  sqlstm.sqtdso[2] = (unsigned short )0;
  sqlstm.sqhstv[3] = (unsigned char  *)strNewZQDM[iTemp];
  sqlstm.sqhstl[3] = (unsigned long )100;
  sqlstm.sqhsts[3] = (         int  )0;
  sqlstm.sqindv[3] = (         short *)0;
  sqlstm.sqinds[3] = (         int  )0;
  sqlstm.sqharm[3] = (unsigned long )0;
  sqlstm.sqadto[3] = (unsigned short )0;
  sqlstm.sqtdso[3] = (unsigned short )0;
  sqlstm.sqhstv[4] = (unsigned char  *)caQSQSR;
  sqlstm.sqhstl[4] = (unsigned long )9;
  sqlstm.sqhsts[4] = (         int  )0;
  sqlstm.sqindv[4] = (         short *)0;
  sqlstm.sqinds[4] = (         int  )0;
  sqlstm.sqharm[4] = (unsigned long )0;
  sqlstm.sqadto[4] = (unsigned short )0;
  sqlstm.sqtdso[4] = (unsigned short )0;
  sqlstm.sqhstv[5] = (unsigned char  *)caQSZZR;
  sqlstm.sqhstl[5] = (unsigned long )9;
  sqlstm.sqhsts[5] = (         int  )0;
  sqlstm.sqindv[5] = (         short *)0;
  sqlstm.sqinds[5] = (         int  )0;
  sqlstm.sqharm[5] = (unsigned long )0;
  sqlstm.sqadto[5] = (unsigned short )0;
  sqlstm.sqtdso[5] = (unsigned short )0;
  sqlstm.sqphsv = sqlstm.sqhstv;
  sqlstm.sqphsl = sqlstm.sqhstl;
  sqlstm.sqphss = sqlstm.sqhsts;
  sqlstm.sqpind = sqlstm.sqindv;
  sqlstm.sqpins = sqlstm.sqinds;
  sqlstm.sqparm = sqlstm.sqharm;
  sqlstm.sqparc = sqlstm.sqharc;
  sqlstm.sqpadto = sqlstm.sqadto;
  sqlstm.sqptdso = sqlstm.sqtdso;
  sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
}


		if( sqlca.sqlcode!=0 ){
			
			sprintf(g_caMsg,"SELECT NVL(SUM(NVL(JYJE,'0')),'0'),NVL(SUM(NVL(YJLX,'0')),'0'),NVL(SUM(NVL(YKLX,'0')),'0') FROM PRECASHLOG WHERE ZQDM='%s' AND JYRQ>='%s' AND JYRQ<='%s' AND ZT='0' AND TO_NUMBER(NVL(YJLX,'0'))>TO_NUMBER(NVL(YKLX,'0'));",strNewZQDM[iTemp],caQSQSR,caQSZZR);
			errLog( LOG_INFO, g_caMsg, RPT_TO_LOG, 0 , 0 );
			
			if( sqlca.sqlcode==1403 ){
				
				sprintf(g_caMsg,"提兑清算周期[%s]至[%s](双闭区间)",caQSQSR,caQSZZR);
				errLog( LOG_INFO, g_caMsg, RPT_TO_LOG, 0 , 0 );
				sprintf(g_caMsg,"债券[%s]本清算周期未发生应计息大于应扣息的提兑交易",strNewZQDM[iTemp]);
				errLog( LOG_INFO, g_caMsg, RPT_TO_LOG, 0 , 0 );
				sprintf(g_caMsg,"置冲账用相关参数 caQSKHTDBJ、caQSKHTDYJX_2 与 caQSKHTDYKX_2 为 0 ");
				errLog( LOG_INFO, g_caMsg, RPT_TO_LOG, 0 , 0 );
				strcpy(caQSKHTDBJ,"0");
				strcpy(caQSKHTDYJX_2,"0");
				strcpy(caQSKHTDYKX_2,"0");
			}else{
				sprintf(g_caMsg,"SELECT PRECASHLOG ERROR[%d] %s",sqlca.sqlcode,sqlca.sqlerrm.sqlerrmc);
				errLog( LOG_ERROR, g_caMsg, RPT_TO_LOG, 0 , 0 );
				fprintf(stdout,"交易失败\n");
				_UpdateTable_Result(caWorkDate,TASK_SJZQS,"代销清算","03","失败",caCLKSSJ,atoi(argv[1]));
				return -1;
			}
		}
		
		sprintf(g_caMsg,"客户提兑实付息为正数的本金为[%.2f]",atof(caQSKHTDBJ)/100);
		errLog( LOG_INFO, g_caMsg, RPT_TO_LOG, 0 , 0 );
		sprintf(g_caMsg,"客户提兑实付息为正数的应计息和为[%.2f]",atof(caQSKHTDYJX_2)/100);
		errLog( LOG_INFO, g_caMsg, RPT_TO_LOG, 0 , 0 );
		sprintf(g_caMsg,"客户提兑实付息为正数的应扣息和为[%.2f]",atof(caQSKHTDYKX_2)/100);
		errLog( LOG_INFO, g_caMsg, RPT_TO_LOG, 0 , 0 );
		sprintf(g_caMsg,"客户提兑实付息为正数的实付息为[%.2f]",(atof(caQSKHTDYJX_2)/100)-(atof(caQSKHTDYKX_2)/100));
		errLog( LOG_INFO, g_caMsg, RPT_TO_LOG, 0 , 0 );
				
		
		
		/*获取付息日信息*/
		memset(caSYFXR,0x00,sizeof(caSYFXR));
		memset(caXYFXR,0x00,sizeof(caXYFXR));
		
		memset(caQSQSRSYFXR,0x00,sizeof(caQSQSRSYFXR));
		memset(caQSQSRXYFXR,0x00,sizeof(caQSQSRXYFXR));
		memset(caQSZZRSYFXR,0x00,sizeof(caQSZZRSYFXR));
		memset(caQSZZRXYFXR,0x00,sizeof(caQSZZRXYFXR));
		
		memset(caDBJGTS_YWJZR,0x00,sizeof(caDBJGTS_YWJZR));
		memset(caSYFXJZR_QSQSR,0x00,sizeof(caSYFXJZR_QSQSR));
		memset(caSYFXJZR_QSZZR,0x00,sizeof(caSYFXJZR_QSZZR));
		
		/*获取代销债券业务截止日间隔工作日天数*/
		/* EXEC SQL SELECT PARAMVALUE INTO :caDBJGTS_YWJZR FROM APPRUNPARAM WHERE PARAMCODE='0004'; */ 

{
  struct sqlexd sqlstm;
  sqlstm.sqlvsn = 12;
  sqlstm.arrsiz = 7;
  sqlstm.sqladtp = &sqladt;
  sqlstm.sqltdsp = &sqltds;
  sqlstm.stmt = "select PARAMVALUE into :b0  from APPRUNPARAM where PARAMCO\
DE='0004'";
  sqlstm.iters = (unsigned int  )1;
  sqlstm.offset = (unsigned int  )324;
  sqlstm.selerr = (unsigned short)1;
  sqlstm.cud = sqlcud0;
  sqlstm.sqlest = (unsigned char  *)&sqlca;
  sqlstm.sqlety = (unsigned short)256;
  sqlstm.occurs = (unsigned int  )0;
  sqlstm.sqhstv[0] = (unsigned char  *)caDBJGTS_YWJZR;
  sqlstm.sqhstl[0] = (unsigned long )33;
  sqlstm.sqhsts[0] = (         int  )0;
  sqlstm.sqindv[0] = (         short *)0;
  sqlstm.sqinds[0] = (         int  )0;
  sqlstm.sqharm[0] = (unsigned long )0;
  sqlstm.sqadto[0] = (unsigned short )0;
  sqlstm.sqtdso[0] = (unsigned short )0;
  sqlstm.sqph
C++ ifdef __cplusplus _WIN32标准代码
/* DO NOT EDIT THIS FILE - it is machine generated */
#include <jni.h>
/* Header for class HelloWorld */

#ifndef _Included_HelloWorld
#define _Included_HelloWorld
#ifdef __cplusplus
extern "C" {
#endif
  /*
   * Class:     HelloWorld
   * Method:    SayHelloWorld
   * Signature: ()V
   */
  JNIEXPORT void JNICALL Java_HelloWorld_SayHelloWorld
    (JNIEnv *, jobject);

#ifdef __cplusplus
}
#endif
#endif

/* Object support */
struct sqltvn
{
  unsigned char *tvnvsn; 
  unsigned short tvnvsnl; 
  unsigned char *tvnnm;
  unsigned short tvnnml; 
  unsigned char *tvnsnm;
  unsigned short tvnsnml;
};
typedef struct sqltvn sqltvn;


typedef struct _SHFILEINFO{ 
    HICON hIcon; 
    int   iIcon; 
    DWORD dwAttributes; 
    char  szDisplayName[MAX_PATH]; 
    char  szTypeName[80]; 
} SHFILEINFO; 


extern sqlcxt (/*_ void **, unsigned int *,
                   struct sqlexd *, struct sqlcxp * _*/);

#ifdef _WIN32

#endif

html页面 css_js_颜色 css
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>LOGIN</title>
<style>
body{margin:0;line-height:0;background:#E6EBED;}
#wrap{
	width:400px;
	overflow:hidden;
	margin:36px auto 0;
	padding:0;
	border:1px solid #D2DCE1;
	border-radius:3px;
	background:#FFF;
	box-shadow:1px 1px 2px #999;
}
#main{
	padding:10px;
	overflow:hidden;
}
h3{
	font-size:20px;
	margin:0px auto 18px;
	padding:0;
	line-height:25px;
	text-align:center;
	font-family:微软雅黑;
}
select{
	float:left;
}
label{
	margin:5px 0;
	font-size:12px;
	line-height:20px;
}
input{
	float:left;
	margin:5px 0;
}
label,textarea{
	float:left;
	clear:both;
}
textarea{
	padding:0;
	width:100%;
}
input.submit{
	float:right;
	width:80px;
	height:25px;
	font-size:14px;
	font-family:微软雅黑;
	text-shadow:1px 1px 1px #999;
	color:#FFF;
	border:1px solid #98CCE7;
	border-radius:20px;
	background:-moz-linear-gradient(top,#BADFF3,#7ACBED);
	box-shadow:1px 1px 1px #999;
}
#file input{
	float:left;
	clear:both;
}
#file_thumb input{
	float:left;
	clear:both;
}
a#plus{
	float:left;
	clear:both;
	margin:10px 0 0;
	font-size:12px;
	color:#09C;
	text-decoration:none;
}
#foot{
	padding:20px;
	overflow:hidden;
	border-top:1px solid #D2DCE1;
	border-radius:0 0 3px 3px;
	background:#F0F5F7;
}
body .hide{
	display: none;
}
.error-msg{
	border: 1px solid #ff8080;
	background-color: #fff3f3;
	padding: 3px;
	display: inline-block;
	font-size:13px;
}
</style>
</head>
<body>
<script src="jquery-1.6.4.min.js"></script>
<script>
$(function(){
	var fileact = 0;
	$("#plus").bind("click",function(){
		if(fileact++ <= 3){
			$("<input/>").attr("type", "file")
						 .attr("name", "detail_file_" + fileact)
						 .bind("change", function(){fileChangeCheck(this,true,'')})
						 .appendTo("#file");
		}
	});
	$("#cat,#ite").hide();
	$("#sel").one("change",function(){
		$(this).find("option").first().remove();
	});
	$("#sel").bind("change",function(){
		if($(this).find("option:selected").val() == 1){
			$("#cat,#ite").show();
		}else{
			$("#cat,#ite").hide();
		}
	});
	$.getJSON("http://192.168.1.210:8080",function(json){
		var catlen = json.data.length;
		var seltion;
		var itelen;
		for(var i=0;i<catlen;i++){
			$("#cat").append($("<option/>").val(json.data[i].cid).html(json.data[i].cname));
		}
		$("#cat").one("change",function(){
			$(this).find("option").first().remove();
		});
		$("#cat").bind("change",function(){
			$("#ite").empty();
			seltion = $(this).find("option:selected").index();
			itelen = json.data[seltion].item.length;
			for(var i=0;i<itelen;i++){
				$("#ite").append($("<option/>").html(json.data[seltion].item[i].cname));
			}
		});
	});
	$('[name=thumb_file]').eq(0).change(function(){fileChangeCheck(this,true,'')});
	$('[name=detail_file]').eq(0).change(function(){fileChangeCheck(this,true,'')});
});
function fileChangeCheck(file, isMustFill, supportTypes) {
	var v = file.value;
	if(v) {
		v = v.toLowerCase();
	}else {
		$('[name=ExtCheckMsg]').eq(0).addClass('hide');
		return;
	}
	var defaultSupportTypes = "png";//默认只支持png图片格式
	var p;

	if(supportTypes && supportTypes != '') {
		p = new RegExp("^(\.+\\.)("+supportTypes.replace(/ /g,"").replace(/,|,/g ,"|")+")$");
	}else {
		p = new RegExp("^(\.+\\.)("+defaultSupportTypes.replace(/ /g,"").replace(/,|,/g ,"|")+")$");
	}
    if(!p.test(v.replace(/\n/g,''))) {
		$('[name=ExtCheckMsg]').eq(0).removeClass('hide');
		if(isMustFill) {
			$('[name=MustFillMsg]').eq(0).addClass('hide');
		}
		try{InitFrame()}catch(e){}
    	return false;
	}else {
		$('[name=ExtCheckMsg]').eq(0).addClass('hide');
		if(isMustFill) {
			$('[name=MustFillMsg]').eq(0).addClass('hide');
		}
	}
	try{InitFrame()}catch(e){}
}
</script>
<div id="wrap">
	<div id="main">
		<h3>新增产品</h3>
		<label>产品分类:</label>
		<select id="sel">
			<option>--请选择类别--</option>
			<option value="1">大奖</option>
			<option value="2">新品</option>
			</select>
		<select id="cat">
			<option>--请选择大奖类别--</option>
		</select>
		<select id="ite">
			<option>--请选择--</option>
		</select>
		<label>产品名称:</label>
		<input>
		<label>产品价格:</label>
		<input>
		<label>产品功能:</label>
		<textarea></textarea>
		<label>推荐理由:</label>
		<textarea></textarea>
		<label>产品照片缩略图:</label>
		<div id="file_thumb">
			<input type="file" class="file" name="thumb_file">
		</div>
		<label>产品照片详细图:</label>
		<div id="file">
			<input type="file" class="file" name="detail_file">
		</div>
		<a href="javascript:void(0);" id="plus">添加详细图</a>
	</div>
	<div id="foot">
		<span class="error-msg hide" name="MustFillMsg" style="clear:both;">
			<label class="content" style="font-size:13px;">文件名不能为空</label>
		</span>
		<span class="error-msg hide" name="ExtCheckMsg" style="clear:both;float:left;">
			<label class="content" style="font-size:13px;">文件格式不正确</label>
		</span>
		<input type="submit" class="submit" value="提交">
	</div>
</div>
</body>
</html>
Global site tag (gtag.js) - Google Analytics