oscdr.cpp

来自「Mysql的处理」· C++ 代码 · 共 581 行 · 第 1/2 页

CPP
581
字号
#include "oradb.h"void C_MYSQL::DbOSCDRTest(){	S_OSCDR pIn3;	S_RESULT pOut3;	memset(&pIn3,0,sizeof(pIn3));    pIn3.RecordType=2;	pIn3.NetworkInitiatedPDPContext='A';    snprintf(pIn3.ServedIMSI,LEN_ServedIMSI+1,"2");	snprintf(pIn3.ServedIMEI,LEN_ServedIMEI+1,"2");	pIn3.ServedIMEI[0]=0;	snprintf(pIn3.SGSNIPAddress,LEN_IpAddr+1,"2");	snprintf(pIn3.MSNetworkCapability,LEN_MSNetworkCapability+1,"2");	memcpy(pIn3.RoutingAreaCode,"1111111111111111111111",5);	memcpy(pIn3.LocationAreaCode,"11111111111111111111111111",5);	memcpy(pIn3.CellIdentity,"111111111111111111111111",5);	memcpy(pIn3.ChargingID,"11111111111111111111",5);	//pIn3.ChargingID[0]=0;	snprintf(pIn3.GGSNAddress,LEN_IpAddr+1,"2");	memcpy(pIn3.AccessPointNameNI,"111111111111111111111111",5);	memcpy(pIn3.PDPTypeNumber,"11111111111111",5);	snprintf(pIn3.ServedPDPAddress,LEN_IpAddr+1,"2");	snprintf(pIn3.RecordOpenTime,LEN_DATETIME + 1,"2");	memcpy(pIn3.CallDuration,"11111111111111111",5);	pIn3.SGSNChange='A';	memcpy(pIn3.CauseForRecClosing,"111111",2);	snprintf(pIn3.Diagnostics,LEN_Diagnostics+1,"2");	memcpy(pIn3.RecordSequenceNumber,"1111111111111111",5);	snprintf(pIn3.NodeID,LEN_NodeID+1,"2");	snprintf(pIn3.RecordExtensions,LEN_RecordExtensions+1,"2");	memcpy(pIn3.LocalRecordSequeceNumnber,"11111111111111111",5);	pIn3.APNSelectionMode=2;	memcpy(pIn3.AccessPointNameOI,"11111111111111111",5);	snprintf(pIn3.ServedMSISDN,LEN_ServedMSISDN+1,"2");	snprintf(pIn3.ChargingCharacteristics,LEN_ChargingCharacteristics+1,"2");	pIn3.SystemType=2;	snprintf(pIn3.SCFAddress,LEN_SCFAddress+1,"2");	snprintf(pIn3.ServiceKey,LEN_ServiceKey+1,"2");	pIn3.DefaultTransacHandling=2;	memcpy(pIn3.CAMELAPNNI,"1111111111111111111",5);	memcpy(pIn3.CAMELAPNOI,"111111111111111111111111",5);	memcpy(pIn3.NumberOfDPEncounter,"1111111111111111",5);	memcpy(pIn3.LevelOfCamelService,"111111111111111",5);	memcpy(pIn3.FreeFormatData,"111111111111111111",5);	pIn3.FFDAppendIndicator=2;	pIn3.DefaultSMSHandling=2;	memcpy(pIn3.CAMELCallingPartyNumber,"11111111111111111",5);	memcpy(pIn3.CAMELAccessDestinationSubNumber,"111111111111111",5);	memcpy(pIn3.CAMELSMSAdress,"11111111111111111",5);	memcpy(pIn3.SmsReferenceNumber,"111111111111111111",5);	memcpy(pIn3.UnsentDownlinkVolume,"11111111111111111111",5);	pIn3.DynamicAddressFlag=1;	memcpy(pIn3.APNOperatorIdentifier,"1111111111111111",5);	pIn3.AnonyAccessIndicator=2;	pIn3.FlagRead=2;	snprintf(pIn3.GtpName,LEN_TABLENAME + 1,"2");	snprintf(pIn3.GtpId,LEN_SEQ + 1,"2");	snprintf(pIn3.MergeName,LEN_TABLENAME + 1,"2");	snprintf(pIn3.MergeId,LEN_SEQ + 1,"2");	pIn3.FlagRepeat=2;	pIn3.FlagR499=2;	snprintf(pIn3.DateCreated,LEN_DATETIME + 1,"2");	snprintf(pIn3.GsnId,LEN_GSNID+1,"2");	snprintf(pIn3.TableName,LEN_TABLENAME + 1,"OSCDR");	pIn3.ChargingCharacterSelectionMode=2;	DbOSCDRInsert(&pIn3, &pOut3);}int C_MYSQL::DbOSCDRInsert(struct S_OSCDR* p, struct S_RESULT* pOut){	char szMsg[512];	char* TableName = p->TableName;	char* SeqId = p->SeqId;	char *GtpName=(char *)p->GtpName;	char *GtpId=(char *)p->GtpId;		int FlagRead = p->FlagRead;	/*1*/	int FlagRepeat=p->FlagRepeat;	int FlagR499=p->FlagR499;	int NetworkInitiatedPDPContext = p->NetworkInitiatedPDPContext;	/*char*/int SystemType = p->SystemType;	char *ServedIMSI = p->ServedIMSI;	/*2*/	char *ServedIMEI = p->ServedIMEI;	char *ServedMSISDN = p->ServedMSISDN;	char *SGSNIPAddress = p->SGSNIPAddress;	char *MSNetworkCapability = p->MSNetworkCapability;	char *RoutingAreaCode = p->RoutingAreaCode;		/*3*/	char *LocationAreaCode = p->LocationAreaCode;	char* ChargingID = p->ChargingID;	char *GGSNAddress = p->GGSNAddress;	char *AccessPointNameNI = p->AccessPointNameNI;	/*char*/int APNSelectionMode = p->APNSelectionMode;		/*4*/	char *PDPTypeNumber = p->PDPTypeNumber;	char *ServedPDPAddress = p->ServedPDPAddress;	char *RecordOpenTime = p->RecordOpenTime;		/*5*/	/*char*/int SGSNChange = p->SGSNChange;	char* CauseForRecClosing = p->CauseForRecClosing;	char *Diagnostics = p->Diagnostics;	char* RecordSequenceNumber = p->RecordSequenceNumber;	char *NodeID = p->NodeID;		/*6*/	char* LocalRecordSequeceNumnber = p->LocalRecordSequeceNumnber;	char *AccessPointNameOI = p->AccessPointNameOI;	char* UnsentDownlinkVolume = p->UnsentDownlinkVolume;	char* ChargingCharacteristics = p->ChargingCharacteristics;	int DynamicAddressFlag = p->DynamicAddressFlag;	/* CAMEL Information*/	/*7*/	char *SCFAddress = p->SCFAddress;	char* ServiceKey = p->ServiceKey;	/*char*/int DefaultTransacHandling = p->DefaultTransacHandling;	char *CAMELAPNNI = p->CAMELAPNNI;	char *CAMELAPNOI = p->CAMELAPNOI;	/*8*/	char* NumberOfDPEncounter = p->NumberOfDPEncounter;	char *LevelOfCamelService = p->LevelOfCamelService;	char *FreeFormatData = p->FreeFormatData;	/*char*/int FFDAppendIndicator = p->FFDAppendIndicator;	/*char*/int DefaultSMSHandling = p->DefaultSMSHandling;	/*9*/	char *CAMELCallingPartyNumber = p->CAMELCallingPartyNumber;	char *CAMELAccessDestination = p->CAMELAccessDestinationSubNumber;	char *CAMELSMSAdress = p->CAMELSMSAdress;	char *SmsReferenceNumber = p->SmsReferenceNumber;/*	int ConsolidationResult = p->ConsolidationResult;	int ChargingCharacterSelectionMode = p->ChargingCharacterSelectionMode;*/	/* stamp */	char *DateCreated = p->DateCreated;	/*10*/	char *CellIdentity = p->CellIdentity;	char *GsnId = p->GsnId;	char *CallDuration = p->CallDuration;	char *RecordExtensions = p->RecordExtensions;#ifdef EXT10os	int ChargingCharacterSelectionMode = p->ChargingCharacterSelectionMode;	int AnonyAccessIndicator = p->AnonyAccessIndicator;#endif	int i=0;	char szSeqId[21]={0,};/*	EXEC SQL BEGIN DECLARE SECTION;	EXEC SQL VAR szSeqId IS STRING(21);	EXEC SQL END DECLARE SECTION;*/	char szSQL[SQLMAX];	memset(szSQL,0,SQLMAX);	memset(szSeqId,0,LEN_SEQ+1);	snprintf(szSQL, SQLMAX, "INSERT INTO %s (" "FLAGREPEAT," "FLAGR499," "NETWORKINITIATEDPDPCONTEXT," "SYSTEMTYPE," "SERVEDIMSI," "SERVEDIMEI," "SERVEDMSISDN," "SGSNIPADDRESS," "MSNNETWORKCAPABILITY," "ROUTINGAREACODE," "LOCATIONAREACODE," "CHARGINGID," "GGSNADDRESS," "ACCESSPOINTNAMENI," "APNSELECTIONMODE," "PDPTYPENUMBER," "SERVEDPDPADDRESS," "RECORDOPENTIME,"   "SGSNCHANGE," "CAUSEFORRECCLOSING,""DIAGNOSITICS," "RECORDSEQUENCENUMBER,"  "NODEID," "LOCALRECORDSEQUECENUMBER," "ACCESSPOINTNAMEOI," "UNSENTDOWNLINKVOLUMN," "CHARGINGCHARACTERISTICS,"  "DYNAMICADDRESSFLAG," "SCFADDRESS," "SERVICEKEY,""DEFAULTTRANSACHANDLING," "CAMELAPNNI,"  "CAMELAPNOI," "NUMBEROFDPENCOUNTER," "LEVELOFCAMELSERVICE," "FREEFORMATDATA," "FFDAPPENDINDICATOR,"  "DEFAULTSMSHANDLING," "CAMELCALLINGPARTYNUMBER," "CAMELACCESSDESTNO,""CAMELSMSADDRESS," "SMSREFERENCENUMBER," "GTPID,GTPLTABLE," "DATECREATED," "GSNID,FLAGREAD, CELLIDENTITY,CALLDURATION"#ifdef EXT10os",RECORDEXTENSIONS"",CHARGINGCHARACTERSELECTIONMODE"",ANONYACCESSINDICATOR"#endif	") VALUES("		"%d,%d,%d,%d,'%s',""'%s','%s','%s','%s','%s',""'%s',%s,'%s','%s',%d,""'%s','%s', '%s',"	"%d,%s,%s,%s,"	"'%s',%s,'%s',%s,'%s',"	"%d,'%s',%s,%d,'%s',"	"'%s',%s,'%s','%s',%d,""%d,'%s','%s','%s','%s',""%s,'%s',""NOW(), %s,%d,'%s',%s"#ifdef EXT10os",'%s'"",%d"",%d"#endif")",	TableName,	FlagRepeat,	FlagR499,	NetworkInitiatedPDPContext,	SystemType,	ServedIMSI,	ServedIMEI,	ServedMSISDN,	SGSNIPAddress,	MSNetworkCapability,	RoutingAreaCode,	LocationAreaCode,	ChargingID[0]==0?"NULL":ChargingID,//	GGSNAddress,	AccessPointNameNI,		APNSelectionMode,	PDPTypeNumber,	ServedPDPAddress,	RecordOpenTime,		SGSNChange,	CauseForRecClosing[0]==0?"NULL":CauseForRecClosing,//	Diagnostics[0]==0?"NULL":Diagnostics,//	RecordSequenceNumber[0]==0?"NULL":RecordSequenceNumber,//		NodeID,	LocalRecordSequeceNumnber[0]==0?"NULL":LocalRecordSequeceNumnber,//	AccessPointNameOI,	UnsentDownlinkVolume[0]==0?"NULL":UnsentDownlinkVolume,//	ChargingCharacteristics,	DynamicAddressFlag,	SCFAddress,	ServiceKey[0]==0?"NULL":ServiceKey,//	DefaultTransacHandling,	CAMELAPNNI,	CAMELAPNOI,	NumberOfDPEncounter[0]==0?"NULL":NumberOfDPEncounter,//	LevelOfCamelService,	FreeFormatData,	FFDAppendIndicator,	DefaultSMSHandling,	CAMELCallingPartyNumber,	CAMELAccessDestination,	CAMELSMSAdress,	SmsReferenceNumber,	GtpId[0]==0?"NULL":GtpId,	GtpName,	GsnId[0]==0?"NULL":GsnId,	FlagRead,	CellIdentity,	CallDuration[0]==0?"NULL":CallDuration#ifdef EXT10os,RecordExtensions,ChargingCharacterSelectionMode,AnonyAccessIndicator#endif	);#ifdef _DEBUG	logOra(sErrLog, szSQL);#endif		Lock();	int res = mysql_real_query(myConnect, szSQL, strlen(szSQL));	if(res != 0)	{		Unlock();		logOra(sErrLog, "%d %s\n", mysql_errno(myConnect), mysql_error(myConnect));		return -1;	}	if(GetSeq(p->SeqId) != 0)	{

⌨️ 快捷键说明

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