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

📄 omocdr.cpp

📁 Mysql的处理
💻 CPP
📖 第 1 页 / 共 2 页
字号:
	char NodeID[21];	char ChargingCharacteristics[LEN_ChargingCharacteristics+1];	char LocalRecordSequeceNumnber[11];	char DestinationNumber[44];	/* CAMEL Information*/	char SCFAddress[LEN_SCFAddress+1];	char ServiceKey[11];	char DefaultTransacHandling;	char CAMELAPNNI[64];	char CAMELAPNOI[38];	char NumberOfDPEncounter[11];	char LevelOfCamelService[4];	char FreeFormatData[161];	char FFDAppendIndicator;	char DefaultSMSHandling;	char CAMELCallingPartyNumber[15];	char CAMELAccessDestinationSubNumber[44];	char CAMELSMSAdress[21];	char SmsReferenceNumber[9];	char DateCreated[LEN_DATETIME + 1];	char GsnId[11];	char RecordExtensions[LEN_RecordExtensions+1];	int ChargingCharacterSelectionMode;	char GsnIpAddr[LEN_IpAddr+1];/*	EXEC SQL BEGIN DECLARE SECTION;	EXEC SQL VAR  GsnIpAddr IS STRING(LEN_IpAddr + 1);	EXEC SQL VAR  RecordExtensions IS STRING(LEN_RecordExtensions + 1);	EXEC SQL VAR SeqId IS STRING(LEN_SEQ + 1);	EXEC SQL VAR GtpName IS STRING(LEN_TABLENAME + 1);	EXEC SQL VAR GtpId IS STRING(LEN_SEQ + 1);			EXEC SQL VAR ServedIMSI IS STRING(17);	EXEC SQL VAR ServedIMEI IS STRING(17);	EXEC SQL VAR ServedMSISDN IS STRING(LEN_ServedMSISDN+1);	EXEC SQL VAR MSNetworkCapability IS STRING(LEN_MSNetworkCapability+1);	EXEC SQL VAR RoutingAreaCode IS STRING(9);	EXEC SQL VAR LocationAreaCode IS STRING(17);	EXEC SQL VAR CellIdentity IS STRING(25);	EXEC SQL VAR ServiceCenter IS STRING(21);	EXEC SQL VAR RecordingEntity IS STRING(21);	EXEC SQL VAR EventStampTime IS STRING(LEN_DATETIME + 1);	EXEC SQL VAR NodeID IS STRING(21);	EXEC SQL VAR ChargingCharacteristics IS STRING(LEN_ChargingCharacteristics+1);	EXEC SQL VAR LocalRecordSequeceNumnber IS STRING(11);	EXEC SQL VAR DestinationNumber IS STRING(44);	EXEC SQL VAR SCFAddress IS STRING(LEN_SCFAddress+1);	EXEC SQL VAR ServiceKey IS STRING(11);	EXEC SQL VAR CAMELAPNNI IS STRING(64);	EXEC SQL VAR CAMELAPNOI IS STRING(38);	EXEC SQL VAR NumberOfDPEncounter IS STRING(11);	EXEC SQL VAR LevelOfCamelService IS STRING(4);	EXEC SQL VAR FreeFormatData IS STRING(161);	EXEC SQL VAR CAMELCallingPartyNumber IS STRING(15);	EXEC SQL VAR CAMELAccessDestinationSubNumber IS STRING(44);	EXEC SQL VAR CAMELSMSAdress IS STRING(21);	EXEC SQL VAR SmsReferenceNumber IS STRING(9);	EXEC SQL VAR MessageReference IS STRING(256);	EXEC SQL VAR DateCreated IS STRING(LEN_DATETIME + 1);	EXEC SQL VAR GsnId IS STRING(11);	EXEC SQL END DECLARE SECTION;*/	/* result */	struct S_OMOCDR *pOMOCDR=*pOutCDR ;	int nNumber = 0;	char szMsg[512];	char szSQL[SQLMAX];	char szSQL2[SQLMAX];	char szSQL3[SQLMAX];	struct S_OMOCDR* p2;	int j;	char * sz ;	*nItems=0;	if(pOMOCDR != NULL)	{		return -1;	}	snprintf(szSQL2, SQLMAX, 		"SELECT COUNT(*) FROM %s WHERE %s",		pInSzTableName,pWhere);				snprintf(szSQL,SQLMAX,"SELECT ""SEQID,GTPID,GTPLTABLE,FLAGR499,"                    "SERVEDIMSI,SERVEDIMEI,SERVEDMSISDN,MSNNETWORKCAPABILITY,"        "SERVICECENTER,ROUTINGAREACODE,LOCATIONAREACODE,TO_CHAR(EVENTSTAMPTIME,'YYYYMMDDHH24MISS'),"              "SMSRESULT,NODEID,LOCALRECORDSEQUECENUMBER,CHARGINGCHARACTERISTICS,""SYSTEMTYPE,DESTINATIONNUNMBER,SCFADDRESS,SERVICEKEY,"                  "DEFAULTTRANSACHANDLING,CAMELAPNNI,CAMELAPNOI,NUMBEROFDPENCOUNTER, "        "LEVELOFCAMELSERVICE,FREEFORMATDATA,FFDAPPENDINDICATOR,DEFAULTSMSHANDLING,"          "CAMELCALLINGPARTYNUMBER,CAMELACCESSDESTNO,CAMELSMSADDRESS,SMSREFERENCENUMBER,"          "DATECREATED,GSNID,FLAGREAD,RECORDINGENTITY,MESSAGEREFRENCE"#ifdef EXT10mo",RECORDEXTENSIONS"",CHARGINGCHARACTERSELECTIONMODE"",CELLIDENTITY"#endif",GSNIPADDR"" FROM %s WHERE %s",pInSzTableName,pWhere);    #ifdef _DEBUG#ifdef LOG_SELECT	logOra(sErrLog, szSQL);#endif#endif/*	Lock();	EXEC SQL WHENEVER SQLERROR GOTO sql_error2; 	EXEC SQL PREPARE stat2 FROM :szSQL2;	EXEC SQL DECLARE OMOCDR2 CURSOR FOR stat2;	EXEC SQL OPEN OMOCDR2;	EXEC SQL WHENEVER NOT FOUND goto notfound2;	EXEC SQL FETCH OMOCDR2 INTO :nNumber;	EXEC SQL CLOSE OMOCDR2;	                                                       		if(nNumber <= 0)	{		Unlock();	* nItems = 0;		return 0;	}	    	sz = malloc(SIZE_S_OMOCDR*nNumber);	memset(sz, 0, SIZE_S_OMOCDR*nNumber);	EXEC SQL WHENEVER SQLERROR GOTO sql_error; 	EXEC SQL PREPARE stat FROM :szSQL;	EXEC SQL DECLARE OMOCDR1 CURSOR FOR stat;	EXEC SQL OPEN OMOCDR1;	EXEC SQL WHENEVER NOT FOUND goto notfound;		#ifdef _DEBUG	logOra(sErrLog, "CURSOR...");#endif	for(j=0;j<nNumber;j++)	{		EXEC SQL FETCH OMOCDR1 INTO  :SeqId:ind[0],  :GtpId:ind[1],:GtpName:ind[2],:FlagR499:ind[3],  :ServedIMSI:ind[4],:ServedIMEI:ind[5],:ServedMSISDN:ind[6],:MSNetworkCapability:ind[7],  :ServiceCenter:ind[8],:RoutingAreaCode:ind[9],:LocationAreaCode:ind[10],:EventStampTime:ind[11],  :SMSResult:ind[12],:NodeID:ind[13],:LocalRecordSequeceNumnber:ind[14],  :ChargingCharacteristics:ind[15],  :SystemType:ind[16],:DestinationNumber:ind[17],:SCFAddress:ind[18],:ServiceKey:ind[19],  :DefaultTransacHandling:ind[20],:CAMELAPNNI:ind[21],:CAMELAPNOI:ind[22],:NumberOfDPEncounter:ind[23],  :LevelOfCamelService:ind[24],:FreeFormatData:ind[25],:FFDAppendIndicator:ind[26],:DefaultSMSHandling:ind[27],  :CAMELCallingPartyNumber:ind[28],:CAMELAccessDestinationSubNumber:ind[29],:CAMELSMSAdress:ind[30],:SmsReferenceNumber:ind[31],  :DateCreated:ind[32],:GsnId:ind[33],:FlagRead:ind[33],:RecordingEntity:ind[33],:MessageReference:ind[33]#ifdef EXT10mo,:RecordExtensions:id[1],:ChargingCharacterSelectionMode:id[1]	,:CellIdentity:id[1]#endif	,:GsnIpAddr:id[1];	 											p2 = (struct S_OMOCDR*)&sz[SIZE_S_OMOCDR*j];		 p2->RecordType=RecordType;			 memcpy(p2->SeqId,SeqId,LEN_SEQ);                                                             		 memcpy(p2->GtpId,GtpId,LEN_SEQ);																						     		 memcpy(p2->GtpName,GtpName,LEN_TABLENAME);                                        		 p2->FlagR499=FlagR499;                                         	               		 memcpy(p2->ServedIMSI,ServedIMSI,17);                                           		 memcpy(p2->ServedIMEI,ServedIMEI,17);                                           		 memcpy(p2->ServedMSISDN,ServedMSISDN,LEN_ServedMSISDN);                                       		 memcpy(p2->MSNetworkCapability,MSNetworkCapability,LEN_MSNetworkCapability);                   	                                                                                          		 memcpy(p2->ServiceCenter,ServiceCenter,21);                           	         		 memcpy(p2->RoutingAreaCode,RoutingAreaCode,9);                           	     		 memcpy(p2->LocationAreaCode,LocationAreaCode,17);                               		 memcpy(p2->EventStampTime,EventStampTime,LEN_DATETIME);		                                                                                                          		 p2->SMSResult=SMSResult;                                                        		 memcpy(p2->NodeID,NodeID,21);                                             		    		 		 memcpy(p2->LocalRecordSequeceNumnber,LocalRecordSequeceNumnber,11);       	            		 memcpy(p2->ChargingCharacteristics,ChargingCharacteristics,LEN_ChargingCharacteristics);                            		          	                                                                     		 p2->SystemType=SystemType;                                                      		 memcpy(p2->DestinationNumber,DestinationNumber,25);                             		 memcpy(p2->SCFAddress,SCFAddress,LEN_SCFAddress+1);                                           		 memcpy(p2->ServiceKey,ServiceKey,10);                                                      		 p2->DefaultTransacHandling=DefaultTransacHandling;                                                            		 memcpy(p2->LevelOfCamelService,LevelOfCamelService,4);                   	     		 memcpy(p2->FreeFormatData,FreeFormatData,161);                                  		 p2->FFDAppendIndicator=FFDAppendIndicator;                     	               		 p2->DefaultSMSHandling=DefaultSMSHandling;             	                       		 memcpy(p2->CAMELCallingPartyNumber,CAMELCallingPartyNumber,15);                 		 memcpy(p2->CAMELAccessDestinationSubNumber,CAMELAccessDestinationSubNumber,44);		 memcpy(p2->CAMELSMSAdress,CAMELSMSAdress,21);  				                    			 memcpy(p2->SmsReferenceNumber,SmsReferenceNumber,9);                     	  		 memcpy(p2->DateCreated,DateCreated,LEN_DATETIME);                            		 memcpy(p2->GsnId,GsnId,11);                                                                                                                              	    	p2->FlagRead=FlagRead;	memcpy(p2->RecordingEntity,RecordingEntity,20);	memcpy(p2->MessageReference,MessageReference,255);#ifdef EXT10momemcpy(p2->RecordExtensions,RecordExtensions,LEN_RecordExtensions);p2->ChargingCharacterSelectionMode=ChargingCharacterSelectionMode;memcpy(p2->CellIdentity,CellIdentity,24);#endif	memcpy(p2->GsnIpAddr,GsnIpAddr,LEN_IpAddr);		memcpy(p2->TableName, pInSzTableName, LEN_TABLENAME);		snprintf(szSQL3, SQLMAX, 					"UPDATE %s SET FLAGREAD=1 WHERE SEQID='%s'", 					p2->TableName, p2->SeqId);		EXEC SQL EXECUTE IMMEDIATE :szSQL3;	}                                                                               	                                                                          	    	* pOutCDR = (struct S_OMOCDR*)sz;                                               	                	* nItems = nNumber;                                                             	                                               	EXEC SQL CLOSE OMOCDR1;	if(nNumber > 0)	{		EXEC SQL COMMIT WORK;	}	Unlock();	pOut->nFlag = SQL_OK;	return 0;notfound:	EXEC SQL CLOSE OMOCDR1;	Unlock();	pOut->nFlag = SQL_OK;	return 0;notfound2:	EXEC SQL CLOSE OMOCDR2;	Unlock();	return 0;sql_error:	EXEC SQL CLOSE OMOCDR1;	Unlock();	pOut->nFlag = SQL_RET_ERROR;#ifdef LOG_ERROR	snprintf(szMsg, 512, "ORA:DbOMOCDRSelect: %.70s", sqlca.sqlerrm.sqlerrmc);    logOra(sErrLog, szMsg);#endif  EXEC SQL WHENEVER SQLERROR CONTINUE; 	onError();			return 1;sql_error2:	EXEC SQL CLOSE OMOCDR2;	Unlock();	pOut->nFlag = SQL_RET_ERROR;#ifdef LOG_ERROR	snprintf(szMsg, 512, "ORA:DbOMOCDRSelect: %.70s", sqlca.sqlerrm.sqlerrmc);    logOra(sErrLog, szMsg);#endif  EXEC SQL WHENEVER SQLERROR CONTINUE; 	onError();*/			return 1;}

⌨️ 快捷键说明

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