| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285 | 
							
- -- db_comm.pc
 
- -- SEL_Center
 
- -- struct
 
- -- {
 
- --     char    szID[MAX_FETCH_ROWS][SIZE_CENTER_ID+1];         /* 센터 ID                       */
 
- --     char    szName[MAX_FETCH_ROWS][SIZE_CENTER_NAME+1];     /* 센터 NAME                     */
 
- --     char    szCommIP[MAX_FETCH_ROWS][SIZE_CENTER_IP+1];     /* 통신 IP                       */
 
- --     int     nCommPort[MAX_FETCH_ROWS];                      /* 통신 포트                     */
 
- --     char    szUser[MAX_FETCH_ROWS][SIZE_CENTER_USER+1];     /* 사용자명                      */
 
- --     char    szPwd[MAX_FETCH_ROWS][SIZE_CENTER_PWD+1];       /* 사용자비밀번호                */
 
- --     int     nHeartbeatCycle[MAX_FETCH_ROWS];                /* 허트비트 주기                 */
 
- --     int     nResTime[MAX_FETCH_ROWS];                       /* 응답시간                      */
 
- --     int     nDatagramSize[MAX_FETCH_ROWS];                  /* 데이터그램 크기               */
 
- -- } rec;
 
- /*
 
- ************************************************************************************************
 
- *  센터 테이블에서 서버 정보를 읽어온다.
 
- ************************************************************************************************
 
- */
 
- SELECT SUBSTR(centerid, 1, 10), SUBSTR(centerinfo, 1, 20),
 
-        ipaddress, commport, 
 
-        datexuser, datexpasswd, heartbeatcycle, restime, datagramsize
 
-   FROM CENTER
 
-   WHERE centerflag = 'M'
 
-     AND exeyn = 'Y'
 
-   ORDER BY centerid;
 
- /*
 
- ************************************************************************************************
 
- *  센터 테이블에서 클라이언트 정보를 읽어온다.
 
- ************************************************************************************************
 
- */
 
- SELECT SUBSTR(centerid, 1, 10), SUBSTR(centerinfo, 1, 20),
 
-        ipaddress, commport,
 
-        datexuser, datexpasswd, heartbeatcycle, restime, datagramsize
 
-   FROM CENTER
 
-  WHERE centerflag = 'L'
 
-    AND exeyn = 'Y'
 
- ORDER BY centerid;
 
- -- db_asnc.pc
 
- -- INS_RcvTraffic
 
- -- struct
 
- -- {
 
- --     char  szRegDate[MAX_DB_INS_ROWS][SIZE_DATETIME+1];
 
- --     char  szFromCenterId[MAX_DB_INS_ROWS][SIZE_CENTER_ID+1];
 
- --     char  szLinkNumber[MAX_DB_INS_ROWS][SIZE_LINK_ID+1];
 
- --     char  szToCenterId[MAX_DB_INS_ROWS][SIZE_CENTER_ID+1];
 
- --     int   nSpeedRate[MAX_DB_INS_ROWS];
 
- --     int   nTravelTimeQuantity[MAX_DB_INS_ROWS];
 
- --     int   nDelayQuanity[MAX_DB_INS_ROWS];
 
- --     int   nDensityRate[MAX_DB_INS_ROWS];
 
- -- } rec;
 
- INSERT INTO RCV_LINK_TRAFFIC(regdate,
 
-                              fromcenterid,
 
-                              linknumber,
 
-                              tocenterid,
 
-                              logdate,
 
-                              speedrate,
 
-                              traveltimequantity,
 
-                              delayquanity,
 
-                              densityrate
 
- )
 
- VALUES(TO_DATE(:rec.szRegDate, 'YYYYMMDDHH24MISS'),
 
-        :rec.szFromCenterId,
 
-        :rec.szLinkNumber,
 
-        :rec.szToCenterId,
 
-        SYSDATE,
 
-        :rec.nSpeedRate,
 
-        :rec.nTravelTimeQuantity,
 
-        :rec.nDelayQuanity,
 
-        :rec.nDensityRate
 
-       );
 
- -- INS_RcvIncident
 
- -- struct
 
- -- {
 
- --     char  szToCenterId[MAX_DB_ROWS_SMALL][SIZE_CENTER_ID+1];
 
- --     char  szLinkNumber[MAX_DB_ROWS_SMALL][SIZE_LINK_ID+1];
 
- --     char  szNodeNumber[MAX_DB_ROWS_SMALL][SIZE_NODE_ID+1];
 
- --     char  szFromCenterId[MAX_DB_ROWS_SMALL][SIZE_CENTER_ID+1];
 
- --     char  szContactOrganizationNameText[MAX_DB_ROWS_SMALL][128+1];
 
- --     int   nDescriptionTypeIncidentCode[MAX_DB_ROWS_SMALL];
 
- --     char  szDescriptionTypeIncidentOther[MAX_DB_ROWS_SMALL][256+1];
 
- --     int   nIncidentVehiclesInvolvedCode[MAX_DB_ROWS_SMALL];
 
- --     char  szIncidentVehiclesInvolvedOther[MAX_DB_ROWS_SMALL][256+1];
 
- --     int   nIncidentStatusCode[MAX_DB_ROWS_SMALL];
 
- --     char  szIncidentStatusOther[MAX_DB_ROWS_SMALL][256+1];
 
- --     int   nUpdateTypeCode[MAX_DB_ROWS_SMALL];
 
- --     char  szUpdateTypeOther[MAX_DB_ROWS_SMALL][256+1];
 
- -- } rec;
 
- INSERT INTO RCV_INCIDENT(tocenterid,
 
-                          link_linkidnumber,
 
-                          node_nodeidnumber,
 
-                          logdate,
 
-                          fromcenterid,
 
-                          contactorganizationnametext,
 
-                          descriptiontypeincidentcode,
 
-                          descriptiontypeincidentother,
 
-                          incidentvehiclesinvolvedcode,
 
-                          incidentvehiclesinvolvedother,
 
-                          incidentstatuscode,
 
-                          incidentstatusother,
 
-                          updatetypecode,
 
-                          updatetypeother,
 
-                          sendyn)
 
- VALUES(:rec.szToCenterId,
 
-        :rec.szLinkNumber,
 
-        :rec.szNodeNumber,
 
-        SYSDATE,
 
-        :rec.szFromCenterId,
 
-        :rec.szContactOrganizationNameText,
 
-        :rec.nDescriptionTypeIncidentCode,
 
-        :rec.szDescriptionTypeIncidentOther,
 
-        :rec.nIncidentVehiclesInvolvedCode,
 
-        :rec.szIncidentVehiclesInvolvedOther,
 
-        :rec.nIncidentStatusCode,
 
-        :rec.szIncidentStatusOther,
 
-        :rec.nUpdateTypeCode,
 
-        :rec.szUpdateTypeOther,
 
-        'N');
 
- -- INS_RcvLog
 
- INSERT INTO RCV_LOG(logdate, infokind, tocenterid, dupkey, fromcenterid, datacnt)
 
- VALUES(SYSDATE, :pLog->szInfoKind, :pLog->szToCenterId, NVL(:pLog->szDupKey, 'DupKey'), :pLog->szFromCenterId, :pLog->DataCnt);
 
- -- INS_CenterReceive
 
- INSERT INTO CENTER_RECEIVE@UTISDB(LOGDATE, CENTERID, INFOTYPE, SEQ, DATACNT)
 
- VALUES(SYSDATE, :pLog->szFromCenterId, 'R1', :seq, :pLog->DataCnt);
 
- -- db_svcp.pc
 
- -- SEL_CheckTraffic
 
- SELECT TO_CHAR(regdate, 'YYYYMMDDHH24MISS')
 
- FROM TRAFFIC_CENTER@UTISDB
 
- WHERE regdate > (SYSDATE - 15/1440)
 
-   AND ROWNUM < 2;
 
- -- SEL_TrafficCenter
 
- -- struct
 
- -- {
 
- --     char    szLinkId[MAX_FETCH_ROWS][SIZE_LINK_ID+1];
 
- --     int     nSpeed[MAX_FETCH_ROWS];
 
- --     int     nTravelTime[MAX_FETCH_ROWS];
 
- --     int     nTrafficGrade[MAX_FETCH_ROWS];
 
- --     int     nDataResType[MAX_FETCH_ROWS];
 
- -- } rec;
 
- SELECT linkid,
 
-        NVL(speed, 0) speed,
 
-        NVL(traveltime, 0) traveltime,
 
-        NVL(TO_NUMBER(trafficgrade), 0) trafficgrade,
 
-        DECODE(datarestype, 'S', 1, 0) datarestype
 
- FROM TRAFFIC_CENTER@UTISDB
 
- WHERE regdate > (SYSDATE - 15/1440)
 
-   AND linklevel = 1
 
-   AND missvalueyn = 'R'
 
- --AND datarestype IN ('P', 'G', 'S')
 
- ORDER BY linkid;
 
- -- INS_SndIncident
 
- INSERT INTO SND_INCIDENT(tocenterid, link_linkidnumber, logdate, fromcenterid, node_nodeidnumber,
 
-                          contactorganizationnametext, descriptiontypeincidentcode, descriptiontypeincidentother,
 
-                          incidentvehiclesinvolvedcode, incidentvehiclesinvolvedother, incidentstatuscode,
 
-                          incidentstatusother, updatetypecode, updatetypeother, sendyn)
 
- SELECT '%s',
 
-         LINK_ID,
 
-         SYSDATE,
 
-         '%s',
 
-         INCIDENT_ID,
 
-         '경찰청정보연계',
 
-         TO_NUMBER(INCIDENT_TYPE_CD),
 
-         SUBSTRB(REPLACE(INCIDENT_TITLE,'::',' '),1,255),
 
-         TO_NUMBER(INCIDENT_SUBTYPE_CD),
 
-         SUBSTRB(INCIDENT_DESC,1,255),
 
-         NVL(TO_NUMBER(SUBSTR(INCIDENT_TYPE_CD,4,2)), 2),
 
-         TO_CHAR(LOCATION_DATA_X, '000.000000000000')||TO_CHAR(LOCATION_DATA_Y, '00.0000000000000')||ADDRESS_NEW,
 
-         TO_NUMBER(SUBSTR(INCIDENT_GRADE_CD,5,1)),
 
-         TO_CHAR(REPORT_DATE, 'YYYYMMDDHH24MISS')||TO_CHAR(START_DATE, 'YYYYMMDDHH24MISS')||TO_CHAR(END_DATE, 'YYYYMMDDHH24MISS'),
 
-         'N'
 
-    FROM UTISINCI.TB_IMS_DATA@UTISDB I, CENTER_REGION R
 
-   WHERE NOT EXISTS (SELECT 'X'
 
-                       FROM SND_INCIDENT
 
-                      WHERE I.INCIDENT_ID = node_nodeidnumber
 
-                        AND tocenterid = '%s')
 
-                        AND REPORT_DATE > SYSDATE - 720/1440
 
-                        AND R.centerid = '%s'
 
-                        AND LENGTH(LINK_ID) = 10
 
-                        AND LOCATION_DATA_X > 100
 
-                        AND LOCATION_DATA_Y < 100
 
-                        AND INCIDENT_GRADE_CD IN ('A0401','A0402')
 
-                        AND R.regioncd = TO_NUMBER(SUBSTR(LINK_ID, 1, 3)
 
-                    )
 
- -- pToCenterId, pFromCenterId, pToCenterId, pToCenterId);
 
- -- struct
 
- -- {
 
- --     char    szLinkId[MAX_FETCH_ROWS][SIZE_LINK_ID+1];
 
- --     char    szNodeId[MAX_FETCH_ROWS][SIZE_NODE_ID+1];
 
- --     char    szContactOrganizationNameText[MAX_FETCH_ROWS][128+1];
 
- --     int     nDescriptionTypeIncidentCode[MAX_FETCH_ROWS];
 
- --     char    szDescriptionTypeIncidentOther[MAX_FETCH_ROWS][256+1];
 
- --     int     nIncidentVehiclesInvolvedCode[MAX_FETCH_ROWS];
 
- --     char    szIncidentVehiclesInvolvedOther[MAX_FETCH_ROWS][256+1];
 
- --     int     nIncidentStatusCode[MAX_FETCH_ROWS];
 
- --     char    szIncidentStatusOther[MAX_FETCH_ROWS][256+1];
 
- --     int     nUpdateTypeCode[MAX_FETCH_ROWS];
 
- --     char    szUpdateTypeOther[MAX_FETCH_ROWS][256+1];
 
- -- } rec;
 
- -- SEL_SndIncident
 
- SELECT link_linkidnumber, node_nodeidnumber, contactorganizationnametext,
 
-        descriptiontypeincidentcode, descriptiontypeincidentother,
 
-        incidentvehiclesinvolvedcode, incidentvehiclesinvolvedother,
 
-        incidentstatuscode, incidentstatusother,
 
-        updatetypecode, updatetypeother
 
- FROM SND_INCIDENT
 
- WHERE tocenterid = :pToCenterId
 
-   AND logdate > SYSDATE - 720/1440
 
-   AND fromcenterid = :pFromCenterId
 
-   AND sendyn != 'Y'
 
-   AND ROWNUM < 100;
 
- -- UPD_SndIncident
 
- UPDATE SND_INCIDENT
 
- SET sendyn = 'Y'
 
- WHERE tocenterid = :pToCenterId
 
-   AND logdate > SYSDATE - 720/1440
 
-   AND fromcenterid = :pFromCenterId
 
-   AND sendyn != 'Y'
 
-   AND ROWNUM < 100;
 
- -- INS_SndLog
 
- INSERT INTO SND_LOG(logdate, infokind, tocenterid, fromcenterid, datacnt)
 
- VALUES(SYSDATE, :pLog->szInfoKind, :pLog->szToCenterId, :pLog->szFromCenterId, :pLog->DataCnt);
 
- -- INS_CenterSend
 
- INSERT INTO CENTER_SEND@UTISDB(logdate, centerid, infotype, datacnt)
 
- VALUES(SYSDATE, :pLog->szToCenterId, :pInfoType, :pLog->DataCnt);
 
- -- DEL_CheckIncident
 
- DELETE SND_INCIDENT S
 
- WHERE EXISTS (SELECT 'X'
 
-                 FROM INCIDENT_CENTER@UTISDB
 
-                WHERE incidentid = S.node_nodeidnumber
 
-                  AND reportdate != TO_DATE(SUBSTR(S.updatetypeother, 1, 14), 'YYYYMMDDHH24MISS'));
 
- -- db_delp.pc
 
- -- DEL_SndIncident
 
- DELETE FROM SND_INCIDENT
 
- WHERE logdate < SYSDATE - 720/1440;
 
- -- DEL_SndLog
 
- DELETE FROM SND_LOG
 
- WHERE logdate < SYSDATE - 2;
 
- -- DEL_RcvTraffic
 
- DELETE FROM RCV_LINK_TRAFFIC
 
- WHERE logdate < SYSDATE - 15/1440;
 
- -- DEL_RcvIncident
 
- DELETE FROM RCV_INCIDENT
 
- WHERE logdate < SYSDATE - 3;
 
- -- DEL_RcvLog
 
- DELETE FROM RCV_LOG
 
- WHERE logdate < SYSDATE - 1;
 
 
  |