BUG 9377 "APP_FINISH_DATE is set to 1902-01-01 00:00:00 when..." SOLVED

- APP_FINISH_DATE is set to 1902-01-01 00:00:00 when create new case
  using webservices
- DEL_INIT_DATE is set to NULL when routing case using webservices
- Solved the problem in the fields APPLICATION.APP_FINISH_DATE and
  APP_CACHE_VIEW.APP_FINISH_DATE, when you create a new case now set to NULL
- Solved the problem in the fields APP_DELEGATION.DEL_INIT_DATE and
  APP_CACHE_VIEW.DEL_INIT_DATE when the case is routed set to the date corresponding
This commit is contained in:
Victor Saisa Lopez
2012-07-09 13:21:20 -04:00
parent 54af0aca9b
commit df8cfae446
5 changed files with 195 additions and 190 deletions

View File

@@ -13,7 +13,7 @@ SELECT
APP_DELEGATION.TAS_UID,
APP_DELEGATION.PRO_UID,
substring(APP_DELEGATION.DEL_DELEGATE_DATE,1,19),
substring(APP_DELEGATION.DEL_INIT_DATE,1,19),
substring(APP_DELEGATION.DEL_INIT_DATE,1,19),
substring(APP_DELEGATION.DEL_TASK_DUE_DATE,1,19),
substring(APP_DELEGATION.DEL_FINISH_DATE,1,19),
APP_DELEGATION.DEL_THREAD_STATUS,
@@ -31,13 +31,13 @@ SELECT
if( APP_DELEGATION.DEL_FINISH_DATE IS NULL , 0 , 1 ),
APP_DELEGATION.DEL_DELAYED,
APPLICATION.APP_CREATE_DATE,
NULL,
IF (APPLICATION.APP_STATUS = 'COMPLETED', APPLICATION.APP_FINISH_DATE, NULL),
APPLICATION.APP_UPDATE_DATE,
APP_DELEGATION.APP_OVERDUE_PERCENTAGE
FROM
APPLICATION
APPLICATION
LEFT JOIN APP_DELEGATION ON (APPLICATION.APP_UID=APP_DELEGATION.APP_UID)
LEFT JOIN TASK ON (APP_DELEGATION.TAS_UID=TASK.TAS_UID)
LEFT JOIN TASK ON (APP_DELEGATION.TAS_UID=TASK.TAS_UID)
LEFT JOIN USERS ON (APP_DELEGATION.USR_UID=USERS.USR_UID)
LEFT JOIN APP_THREAD ON (APPLICATION.APP_UID=APP_THREAD.APP_UID AND APP_DELEGATION.DEL_THREAD=APP_THREAD.APP_THREAD_INDEX)
LEFT JOIN CONTENT APP_TITLE ON (APPLICATION.APP_UID=APP_TITLE.CON_ID AND APP_TITLE.CON_CATEGORY='APP_TITLE' AND APP_TITLE.CON_LANG = @DEFAULT_LANG)

View File

@@ -4,19 +4,20 @@ FOR EACH ROW
BEGIN
DECLARE APP_STATUS VARCHAR(32);
SELECT APPLICATION.APP_STATUS into @APP_STATUS FROM APPLICATION WHERE APP_UID = NEW.APP_UID LIMIT 1;
DECLARE APP_FINISH_DATE DATETIME;
SELECT APPLICATION.APP_STATUS into @APP_STATUS FROM APPLICATION WHERE APP_UID = NEW.APP_UID LIMIT 1;
IF(OLD.APP_STATUS<>NEW.APP_STATUS) THEN
SET @APP_STATUS = NEW.APP_STATUS;
UPDATE APP_CACHE_VIEW SET APP_STATUS = @APP_STATUS WHERE APP_UID = NEW.APP_UID;
UPDATE APP_CACHE_VIEW SET APP_STATUS = @APP_STATUS WHERE APP_UID = NEW.APP_UID;
END IF;
IF(OLD.APP_DATA<>NEW.APP_DATA) THEN
UPDATE APP_CACHE_VIEW SET APP_UPDATE_DATE = NOW() WHERE APP_UID = NEW.APP_UID;
UPDATE APP_CACHE_VIEW SET APP_UPDATE_DATE = NOW() WHERE APP_UID = NEW.APP_UID;
END IF;
IF (NEW.APP_STATUS = 'COMPLETED') THEN
UPDATE APP_CACHE_VIEW SET APP_FINISH_DATE = NEW.APP_FINISH_DATE WHERE APP_UID = NEW.APP_UID;
END IF;
END