﻿<?xml version="1.0" encoding="utf-8" ?>
<QUERIES>
  <!--Generate No-->
  <SELECT_L_SEQ_MSTR>SELECT DELIMITER,DIGIT_NO,START_WITH FROM L_SEQ_MSTR WHERE SEQ_ID='%A'</SELECT_L_SEQ_MSTR>
  <SELECT_L_SEQ_NO>SELECT  (CASE WHEN SEQ_ID='752' then SEQ_NO+99 else SEQ_NO END) as SEQ_NO FROM L_SEQ_NO WHERE SEQ_ID='%A' AND PREFIX='%B'</SELECT_L_SEQ_NO>
  <INSERT_L_SEQ_NO>INSERT INTO L_SEQ_NO(SEQ_ID,PREFIX,SEQ_NO) VALUES ('%A','%B','%C')</INSERT_L_SEQ_NO>
  <UPDATE_L_SEQ_NO>UPDATE L_SEQ_NO SET SEQ_NO='%C' WHERE SEQ_ID='%A' AND PREFIX='%B'</UPDATE_L_SEQ_NO>
  <!--End Generate No-->
  
  <IDS_GET_SIGNATURE_VIEW>
        SELECT RW,REQUEST_NO, REQUESTOR_ID,EMP_FULL_NAME,APP_NAME,FROM_DATE,TO_DATE,APP_ID,OOOType_ID
        FROM
        (
          SELECT Row_number() over(order by  FROM_DATE DESC, CAST(APP_ID AS INT) ASC) RW, REQUESTOR_ID,EMP_FULL_NAME,APP_NAME,REQUEST_NO,APP_ID,FROM_DATE,TO_DATE,OOOType_ID
          FROM
          (
            SELECT (A.REQUESTOR_ID),B.EMP_FULL_NAME%LANG EMP_FULL_NAME,C.TYPE_DSCR%LANG APP_NAME,A.REQUEST_NO,A.APP_ID,
            D.FROM_DATE,D.TO_DATE,0 AS OOOType_ID,COUNT(DOCID) AS DOCID
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS                  
                        FROM %HR_DB%ROUTING  WITH (NOLOCK)                
                        WHERE  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = 1 AND STATUS = 0 AND SIGNATURE = 0 AND TYPE &lt;&gt; 2 
                        AND ( ROUTING.APP_ID = 1 OR ROUTING.APP_ID IN (SELECT ROUTING_APP_ID FROM LEAVE_TYPES WHERE ROUTING_APP_ID IS NOT NULL) )      
                  ) A            
            INNER JOIN %HR_DB%EMPLOYEES B WITH (NOLOCK) ON A.REQUESTOR_ID = B.EMP_NO     
            INNER JOIN %HR_DB%LEAVE F WITH (NOLOCK) ON F.REQUEST_NO = A.REQUEST_NO    
            INNER JOIN (SELECT REQUEST_NO, MIN(FROM_DATE%MODE) FROM_DATE, MIN(TO_DATE%MODE) TO_DATE            
                              FROM %HR_DB%LEAVE_DTL WITH (NOLOCK)
                              GROUP BY REQUEST_NO) D ON  F.REQUEST_NO = D.REQUEST_NO  
            INNER JOIN %HR_DB%LEAVE_DTL E WITH (NOLOCK) ON E.REQUEST_NO = D.REQUEST_NO 
            INNER JOIN %HR_DB%LEAVE_TYPES C WITH (NOLOCK) ON E.LEAVE_TYPE = C.LEAVE_TYPE  
            LEFT JOIN %HR_DB%DMSDOCINFO G WITH (NOLOCK) ON F.REQUEST_NO = G.REQNO AND APPID = 1
            WHERE F.STATUS_ID NOT IN (5) AND B.EMP_STATUS_NO = 'A' AND (F.IS_DEL != 1 OR F.IS_DEL IS NULL)  
            GROUP BY A.REQUESTOR_ID,B.EMP_FULL_NAME%LANG ,C.TYPE_DSCR%LANG ,A.REQUEST_NO,A.APP_ID,D.FROM_DATE,D.TO_DATE
                   
            UNION
          
            SELECT (A.REQUESTOR_ID),B.EMP_FULL_NAME%LANG EMP_FULL_NAME,C.APP_NAME%LANG APP_NAME,A.REQUEST_NO,A.APP_ID,
            H.FROM_DATE, H.TO_DATE,0 AS OOOType_ID,COUNT(DOCID) AS DOCID
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                  FROM %HR_DB%ROUTING WITH (NOLOCK) 
                  WHERE APP_ID= '2' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = 1 AND STATUS = 0 AND SIGNATURE = 0 AND TYPE=1
                  ) A
            INNER JOIN %HR_DB%APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = 1
            INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
            INNER JOIN (SELECT E.REQUEST_NO, MIN(E.FROM_DATE%MODE) FROM_DATE, MIN(E.TO_DATE%MODE) TO_DATE
                         FROM %HR_DB%LEAVE_DTL E WITH (NOLOCK)
                         WHERE EXISTS (SELECT 1 FROM %HR_DB%LEAVE F WHERE F.STATUS_ID &lt;&gt; '5' AND F.REQUEST_NO = E.REQUEST_NO)
                         AND EXISTS (SELECT 1 FROM %HR_DB%LEAVE_RETURN G WHERE G.REQUEST_NO = E.REQUEST_NO)
                          GROUP BY E.REQUEST_NO
                        ) H  ON A.APP_ID = '2' AND A.REQUEST_NO = H.REQUEST_NO
            LEFT JOIN DMSDOCINFO G WITH (NOLOCK) ON H.REQUEST_NO = G.REQNO AND APPID = 2
            GROUP BY A.REQUESTOR_ID,B.EMP_FULL_NAME%LANG,C.APP_NAME%LANG ,A.REQUEST_NO,A.APP_ID, H.FROM_DATE, H.TO_DATE
          
            UNION
          
            SELECT (A.REQUESTOR_ID),B.EMP_FULL_NAME%LANG EMP_FULL_NAME,C.APP_NAME%LANG APP_NAME,A.REQUEST_NO,A.APP_ID,
            K.SCH_START_DATE%MODE AS FROM_DATE, K.SCH_END_DATE%MODE AS TO_DATE,0 AS OOOType_ID,0 AS DOCID
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                  FROM %HR_DB%ROUTING WITH (NOLOCK)
                  WHERE APP_ID= '3' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = 1 AND STATUS = 0 AND SIGNATURE = 0 AND TYPE=1
                  ) A
            INNER JOIN %HR_DB%APPLICATIONS C WITH (NOLOCK) ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = 1
            INNER JOIN %HR_DB%EMPLOYEES B WITH (NOLOCK) ON A.REQUESTOR_ID = B.EMP_NO
            INNER JOIN (SELECT I.REQUEST_NO, J.SCH_START_DATE%MODE, J.SCH_END_DATE%MODE 
                        FROM %HR_DB%TMS_PROG_REQUEST I WITH (NOLOCK)
                        INNER JOIN %HR_DB%TMS_CRS_SCHEDULE J ON I.SCH_ID = J.SCH_ID AND I.PLAN_ID = J.PLAN_ID AND I.PROG_ID = J.PROG_ID
                        ) K ON A.APP_ID = '3' AND A.REQUEST_NO = K.REQUEST_NO
          
            UNION
          
            SELECT (A.REQUESTOR_ID),B.EMP_FULL_NAME%LANG EMP_FULL_NAME,C.APP_NAME%LANG APP_NAME,A.REQUEST_NO,A.APP_ID,
            L.TRAVEL_DATE_TIME AS FROM_DATE, L.TRAVEL_DATE_TIME AS TO_DATE,0 AS OOOType_ID,COUNT(DOCID) AS DOCID
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                  FROM %HR_DB%ROUTING  WITH (NOLOCK)
                  WHERE APP_ID= '4' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = 1 AND STATUS = 0 AND SIGNATURE = 0 AND TYPE=1
                  ) A
            INNER JOIN %HR_DB%APPLICATIONS C WITH (NOLOCK) ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = 1
            INNER JOIN %HR_DB%EMPLOYEES B WITH (NOLOCK) ON A.REQUESTOR_ID = B.EMP_NO
            INNER JOIN (SELECT TRAVEL_REQ_NO, MIN(TRAVEL_DATE_TIME%MODE) TRAVEL_DATE_TIME
                        FROM %HR_DB%TRV_REQ_DETAILS WITH (NOLOCK) GROUP BY TRAVEL_REQ_NO
                        ) L ON A.APP_ID = '4' AND A.REQUEST_NO = L.TRAVEL_REQ_NO
            LEFT JOIN DMSDOCINFO G WITH (NOLOCK) ON A.REQUEST_NO = G.REQNO AND APPID = 4
            GROUP BY A.REQUESTOR_ID,B.EMP_FULL_NAME%LANG,C.APP_NAME%LANG,A.REQUEST_NO,A.APP_ID,L.TRAVEL_DATE_TIME, L.TRAVEL_DATE_TIME
          
            UNION
          
            SELECT (A.REQUESTOR_ID),B.EMP_FULL_NAME%LANG EMP_FULL_NAME,C.APP_NAME%LANG APP_NAME,A.REQUEST_NO,A.APP_ID,
            M.EVAL_DATE%MODE AS FROM_DATE, M.REVIEW_END_DATE%MODE AS TO_DATE,0 AS OOOType_ID,0 AS DOCID
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                  FROM %HR_DB%ROUTING WITH (NOLOCK)
                  WHERE APP_ID= '5' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = 1 AND STATUS = 0 AND SIGNATURE = 0 AND TYPE=1
                  ) A
            INNER JOIN %HR_DB%APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = 1
            INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
            INNER JOIN %HR_DB%EMP_EVAL M ON A.APP_ID = '5' AND A.REQUEST_NO = M.EVAL_ID
          
            UNION
          
            SELECT (A.REQUESTOR_ID),B.EMP_FULL_NAME%LANG EMP_FULL_NAME,C.APP_NAME%LANG APP_NAME,A.REQUEST_NO,A.APP_ID,
            N.EXAM_DATE%MODE AS FROM_DATE, N.EXP_DATE%MODE AS TO_DATE,0 AS OOOType_ID,0 AS DOCID
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                  FROM %HR_DB%ROUTING  WITH (NOLOCK)
                  WHERE APP_ID= '7' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = 1 AND STATUS = 0 AND SIGNATURE = 0 AND TYPE=1) A
            INNER JOIN APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = 1
            INNER JOIN EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
            INNER JOIN TMS_EMP_CERTIFICATION N ON A.APP_ID = '7' AND A.REQUEST_NO = N.REQUEST_NO
          
            UNION
          
            SELECT (A.REQUESTOR_ID),B.EMP_FULL_NAME%LANG EMP_FULL_NAME,C.APP_NAME%LANG APP_NAME,A.REQUEST_NO,A.APP_ID,
            P.FROM_DATE, P.TO_DATE,0 AS OOOType_ID,0 AS DOCID
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                  FROM %HR_DB%ROUTING WITH (NOLOCK)
                  WHERE APP_ID= '15' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = 1 AND STATUS = 0 AND SIGNATURE = 0 AND TYPE=1
                  ) A
            INNER JOIN %HR_DB%APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = 1
            INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
            INNER JOIN (SELECT REQUEST_NO, MIN(FROM_DATE%MODE) FROM_DATE, MIN(TO_DATE%MODE) TO_DATE
            FROM %HR_DB%LEAVE_DTL GROUP BY REQUEST_NO) P
            ON A.APP_ID = '15' AND A.REQUEST_NO = P.REQUEST_NO
          
            UNION
          
            SELECT (A.REQUESTOR_ID),B.EMP_FULL_NAME%LANG EMP_FULL_NAME,C.APP_NAME%LANG APP_NAME,A.REQUEST_NO,A.APP_ID,
            Q.FROM_DATE, Q.TO_DATE,0 AS OOOType_ID,0 AS DOCID
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                  FROM %HR_DB%ROUTING WITH (NOLOCK)
                  WHERE APP_ID = '17' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = 1 AND STATUS = 0 AND SIGNATURE = 0 AND TYPE=1) A
            INNER JOIN %HR_DB%APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = 1
            INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
            INNER JOIN (SELECT REQUEST_NO, SEQ_NO, MIN(FROM_DATE%MODE) FROM_DATE, MIN(TO_DATE%MODE) TO_DATE 
            FROM %HR_DB%LEAVE_EXTENSION GROUP BY REQUEST_NO, SEQ_NO) Q
            ON A.APP_ID = '17' AND cast(A.REQUEST_NO as INT) = cast(Q.REQUEST_NO as INT) + cast(Q.SEQ_NO as INT)
          
            UNION
          
            SELECT (A.REQUESTOR_ID),B.EMP_FULL_NAME%LANG EMP_FULL_NAME,C.APP_NAME%LANG APP_NAME,A.REQUEST_NO,A.APP_ID,
            R.FIELD_EFF_DATE AS FROM_DATE, R.FIELD_EFF_DATE AS TO_DATE,0 AS OOOType_ID,0 AS DOCID
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                  FROM %HR_DB%ROUTING WITH (NOLOCK)
                  WHERE APP_ID= '20' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = 1 AND STATUS = 0 AND SIGNATURE = 0 AND TYPE=1) A
            INNER JOIN %HR_DB%APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = 1
            INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
            INNER JOIN (SELECT REQUEST_NO, MIN(FIELD_EFF_DATE%MODE) FIELD_EFF_DATE FROM %HR_DB%TRACKING_DETAILS GROUP BY REQUEST_NO) R
            ON A.APP_ID = '20' AND A.REQUEST_NO = R.REQUEST_NO
          
            UNION
          
            SELECT (A.REQUESTOR_ID),B.EMP_FULL_NAME%LANG EMP_FULL_NAME,C.APP_NAME%LANG APP_NAME,A.REQUEST_NO,A.APP_ID,
            S.FROM_DATE,S.TO_DATE,0 AS OOOType_ID,0 AS DOCID
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                  FROM %HR_DB%ROUTING WITH (NOLOCK)
                  WHERE APP_ID= '60' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = 1 AND STATUS = 0 AND SIGNATURE = 0 AND TYPE=1) A
            INNER JOIN %HR_DB%APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = 1
            INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
            INNER JOIN (SELECT CONTRACT_ID, MIN(OFFER_ISSUE_DATE%MODE) FROM_DATE, MIN(CNTRCT_END_DATE%MODE) TO_DATE
            FROM %HR_DB%CONTRACTS GROUP BY CONTRACT_ID) S
            ON A.APP_ID = '60' AND A.REQUEST_NO = S.CONTRACT_ID
          
            UNION
          
            SELECT (A.REQUESTOR_ID),B.EMP_FULL_NAME%LANG EMP_FULL_NAME,C.APP_NAME%LANG APP_NAME,A.REQUEST_NO,A.APP_ID,
            T.FROM_DATETIME%MODE AS FROM_DATE,T.TO_DATETIME%MODE AS TO_DATE,T.TYPE_ID AS OOOType_ID,0 AS DOCID
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                  FROM %HR_DB%ROUTING WITH (NOLOCK)
                  WHERE APP_ID= '75' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = 1 AND STATUS = 0 AND SIGNATURE = 0 AND TYPE=1
                  ) A
            INNER JOIN %HR_DB%APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = 1
            INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
            INNER JOIN %HR_DB%OOOASSIGNMENT T ON  A.REQUEST_NO = T.REQUEST_NO AND  A.REQUESTOR_ID = T.EMP_NO                         
          
            UNION
          
            SELECT (A.REQUESTOR_ID),B.EMP_FULL_NAME%LANG EMP_FULL_NAME,C.APP_NAME%LANG APP_NAME,A.REQUEST_NO,A.APP_ID,
            L.TRAVEL_DATE_TIME AS FROM_DATE, L.TRAVEL_DATE_TIME AS TO_DATE,0 AS OOOType_ID,COUNT(DOCID) AS DOCID
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                  FROM %HR_DB%ROUTING WITH (NOLOCK)
                  WHERE APP_ID= '104' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = 1 AND STATUS = 0 AND SIGNATURE = 0 AND TYPE=1
                  ) A
            INNER JOIN %HR_DB%APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = 1
            INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
            INNER JOIN (SELECT TRAVEL_REQ_NO, MIN(TRAVEL_DATE_TIME%MODE) TRAVEL_DATE_TIME
                        FROM %HR_DB%TRV_REQ_DETAILS GROUP BY TRAVEL_REQ_NO
                        ) L ON A.APP_ID = '104' AND A.REQUEST_NO = L.TRAVEL_REQ_NO
            LEFT JOIN DMSDOCINFO G WITH (NOLOCK) ON A.REQUEST_NO = G.REQNO AND APPID = 104
            GROUP BY A.REQUESTOR_ID,B.EMP_FULL_NAME%LANG,C.APP_NAME%LANG,A.REQUEST_NO,A.APP_ID,L.TRAVEL_DATE_TIME,L.TRAVEL_DATE_TIME
          
            UNION
          
            SELECT (A.REQUESTOR_ID),B.EMP_FULL_NAME%LANG EMP_FULL_NAME,C.APP_NAME%LANG APP_NAME,A.REQUEST_NO,A.APP_ID,
            U.TERMINATION_DATE%MODE AS FROM_DATE,U.TERMINATION_DATE%MODE AS TO_DATE,0 AS OOOType_ID,COUNT(DOCID) AS DOCID
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                  FROM %HR_DB%ROUTING WITH (NOLOCK)
                  WHERE APP_ID= '133' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = 1 AND STATUS = 0 AND SIGNATURE = 0 AND TYPE=1
                  ) A
            INNER JOIN %HR_DB%APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = 1
            INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
            INNER JOIN %HR_DB%SE_END_EMPLOYEE U ON A.APP_ID = '133' AND A.REQUEST_NO = U.REQUEST_NO
            LEFT JOIN DMSDOCINFO G WITH (NOLOCK) ON A.REQUEST_NO = G.REQNO AND APPID = 133
            GROUP BY A.REQUESTOR_ID,B.EMP_FULL_NAME%LANG,C.APP_NAME%LANG,A.REQUEST_NO,A.APP_ID,U.TERMINATION_DATE%MODE,U.TERMINATION_DATE%MODE
          
            UNION
                              
            SELECT REQUESTOR_ID,EMP_FULL_NAME%LANG EMP_FULL_NAME,APP_NAME,REQUEST_NO,APP_ID,FROM_DATE,NULL AS TO_DATE,0 AS OOOType_ID,0 AS DOCID
            FROM
            (
	            SELECT C.EMP_NO AS REQUESTOR_ID,D.EMP_FULL_NAME%LANG AS EMP_FULL_NAME,'Clearance Form' APP_NAME,C.REQUEST_NO,'134' AS APP_ID,
	            REQUEST_DATE AS FROM_DATE,NULL AS TO_DATE,0 AS OOOType_ID,[SIGN],LATER_SIGN,A.EMP_NO,
	            CASE WHEN CNT > 0 AND LATER_SIGN = 1 THEN 1 ELSE 0 END AS HR_SIGN
	            FROM EMP_CLEARNACE_SETUP A
	            JOIN EMP_CLEARANCE_RESPONSES B ON A.CLEARNACE_ID = B.CLEARNACE_ID
	            JOIN EMP_CLEARANCE_FORM C ON B.REQUEST_NO = C.REQUEST_NO 
	            JOIN EMPLOYEES D ON C.EMP_NO = D.EMP_NO
	            LEFT JOIN(SELECT B.REQUEST_NO,COUNT(A.EMP_NO) as CNT FROM EMP_CLEARNACE_SETUP A
				            JOIN EMP_CLEARANCE_RESPONSES B ON A.CLEARNACE_ID = B.CLEARNACE_ID
				            WHERE [SIGN] = 0 AND (LATER_SIGN IS NULL OR LATER_SIGN = '0')
				            GROUP BY B.REQUEST_NO
		              ) E ON C.REQUEST_NO = E.REQUEST_NO
	            WHERE A.EMP_NO = '%EMP_NO%'
	            AND [SIGN] = 0
            ) A
            WHERE HR_SIGN = 0

            UNION
          
            SELECT (A.REQUESTOR_ID),B.EMP_FULL_NAME%LANG EMP_FULL_NAME,C.APP_NAME%LANG APP_NAME,A.REQUEST_NO,A.APP_ID,
            V.REQUEST_DATE%MODE AS FROM_DATE, V.EXP_DATE%MODE AS TO_DATE,0 AS OOOType_ID,0 AS DOCID
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                  FROM %HR_DB%ROUTING WITH (NOLOCK)
                  WHERE APP_ID= '182' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = 1 AND STATUS = 0 AND SIGNATURE = 0 AND TYPE=1
                  ) A
            INNER JOIN %HR_DB%APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = 1
            INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
            INNER JOIN %HR_DB%BADGE_REQUEST V ON A.APP_ID = '182' AND A.REQUEST_NO = V.BADGE_REQUEST_ID
          
            UNION
          
            SELECT (A.REQUESTOR_ID),B.EMP_FULL_NAME%LANG EMP_FULL_NAME,'Ticketing' APP_NAME,A.REQUEST_NO,A.APP_ID,
            TKT_ISSUE_DATE FROM_DATE, NULL TO_DATE,0 AS OOOType_ID,0 AS DOCID
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                  FROM %HR_DB%ROUTING WITH (NOLOCK)
                  WHERE (APP_ID= '216' or APP_ID= '217') AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = 1 AND STATUS = 0 AND SIGNATURE = 0 AND TYPE=1
                  ) A
            INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
            INNER JOIN %HR_DB%TKT_INFO_HDR D ON D.TKT_ID = A.REQUEST_NO
          )X
     ) Y
     WHERE RW BETWEEN %FROM% AND %TO%
</IDS_GET_SIGNATURE_VIEW>
  <IDS_GET_SIGNATURE_COUNT>
        SELECT Count(EMP_NO) AS [COUNT]
        FROM
        (
          SELECT B.EMP_NO 
          FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS                  
                      FROM %HR_DB%ROUTING  WITH (NOLOCK)                
                      WHERE  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = 1 AND STATUS = 0 AND SIGNATURE = 0 AND TYPE &lt;&gt; 2 
                      AND ( ROUTING.APP_ID = 1 OR ROUTING.APP_ID IN (SELECT ROUTING_APP_ID FROM LEAVE_TYPES WHERE ROUTING_APP_ID IS NOT NULL) )      
                ) A            
          INNER JOIN %HR_DB%EMPLOYEES B WITH (NOLOCK) ON A.REQUESTOR_ID = B.EMP_NO     
          INNER JOIN %HR_DB%LEAVE F WITH (NOLOCK) ON F.REQUEST_NO = A.REQUEST_NO    
          INNER JOIN (SELECT REQUEST_NO, MIN(FROM_DATE%MODE) FROM_DATE, MIN(TO_DATE%MODE) TO_DATE            
                            FROM %HR_DB%LEAVE_DTL WITH (NOLOCK)
                            GROUP BY REQUEST_NO) D ON  F.REQUEST_NO = D.REQUEST_NO  
          INNER JOIN %HR_DB%LEAVE_DTL E WITH (NOLOCK) ON E.REQUEST_NO = D.REQUEST_NO 
          INNER JOIN %HR_DB%LEAVE_TYPES C WITH (NOLOCK) ON E.LEAVE_TYPE = C.LEAVE_TYPE  
          LEFT JOIN %HR_DB%DMSDOCINFO G WITH (NOLOCK) ON F.REQUEST_NO = G.REQNO AND APPID = 1
          WHERE F.STATUS_ID NOT IN (5) AND B.EMP_STATUS_NO = 'A' AND (F.IS_DEL != 1 OR F.IS_DEL IS NULL)  
          GROUP BY A.REQUESTOR_ID,B.EMP_FULL_NAME%LANG ,C.TYPE_DSCR%LANG ,A.REQUEST_NO,A.APP_ID,D.FROM_DATE,D.TO_DATE
                   
          UNION
          
          SELECT B.EMP_NO 
          FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                FROM %HR_DB%ROUTING WITH (NOLOCK) 
                WHERE APP_ID= '2' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = 1 AND STATUS = 0 AND SIGNATURE = 0 AND TYPE=1
                ) A
          INNER JOIN %HR_DB%APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = 1
          INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
          INNER JOIN (SELECT E.REQUEST_NO, MIN(E.FROM_DATE%MODE) FROM_DATE, MIN(E.TO_DATE%MODE) TO_DATE
                        FROM %HR_DB%LEAVE_DTL E WITH (NOLOCK)
                        WHERE EXISTS (SELECT 1 FROM %HR_DB%LEAVE F WHERE F.STATUS_ID &lt;&gt; '5' AND F.REQUEST_NO = E.REQUEST_NO)
                        AND EXISTS (SELECT 1 FROM %HR_DB%LEAVE_RETURN G WHERE G.REQUEST_NO = E.REQUEST_NO)
                        GROUP BY E.REQUEST_NO
                      ) H  ON A.APP_ID = '2' AND A.REQUEST_NO = H.REQUEST_NO
          LEFT JOIN DMSDOCINFO G WITH (NOLOCK) ON H.REQUEST_NO = G.REQNO AND APPID = 2
          GROUP BY A.REQUESTOR_ID,B.EMP_FULL_NAME%LANG,C.APP_NAME%LANG ,A.REQUEST_NO,A.APP_ID, H.FROM_DATE, H.TO_DATE
          
          UNION
          
          SELECT B.EMP_NO 
          FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                FROM %HR_DB%ROUTING WITH (NOLOCK)
                WHERE APP_ID= '3' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = 1 AND STATUS = 0 AND SIGNATURE = 0 AND TYPE=1
                ) A
          INNER JOIN %HR_DB%APPLICATIONS C WITH (NOLOCK) ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = 1
          INNER JOIN %HR_DB%EMPLOYEES B WITH (NOLOCK) ON A.REQUESTOR_ID = B.EMP_NO
          INNER JOIN (SELECT I.REQUEST_NO, J.SCH_START_DATE%MODE, J.SCH_END_DATE%MODE 
                      FROM %HR_DB%TMS_PROG_REQUEST I WITH (NOLOCK)
                      INNER JOIN %HR_DB%TMS_CRS_SCHEDULE J ON I.SCH_ID = J.SCH_ID AND I.PLAN_ID = J.PLAN_ID AND I.PROG_ID = J.PROG_ID
                      ) K ON A.APP_ID = '3' AND A.REQUEST_NO = K.REQUEST_NO
          
          UNION
          
          SELECT B.EMP_NO 
          FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                FROM %HR_DB%ROUTING  WITH (NOLOCK)
                WHERE APP_ID= '4' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = 1 AND STATUS = 0 AND SIGNATURE = 0 AND TYPE=1
                ) A
          INNER JOIN %HR_DB%APPLICATIONS C WITH (NOLOCK) ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = 1
          INNER JOIN %HR_DB%EMPLOYEES B WITH (NOLOCK) ON A.REQUESTOR_ID = B.EMP_NO
          INNER JOIN (SELECT TRAVEL_REQ_NO, MIN(TRAVEL_DATE_TIME%MODE) TRAVEL_DATE_TIME
                      FROM %HR_DB%TRV_REQ_DETAILS WITH (NOLOCK) GROUP BY TRAVEL_REQ_NO
                      ) L ON A.APP_ID = '4' AND A.REQUEST_NO = L.TRAVEL_REQ_NO
          LEFT JOIN DMSDOCINFO G WITH (NOLOCK) ON A.REQUEST_NO = G.REQNO AND APPID = 4
          GROUP BY A.REQUESTOR_ID,B.EMP_FULL_NAME%LANG,C.APP_NAME%LANG,A.REQUEST_NO,A.APP_ID,L.TRAVEL_DATE_TIME, L.TRAVEL_DATE_TIME
          
          UNION
          
          SELECT B.EMP_NO 
          FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                FROM %HR_DB%ROUTING WITH (NOLOCK)
                WHERE APP_ID= '5' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = 1 AND STATUS = 0 AND SIGNATURE = 0 AND TYPE=1
                ) A
          INNER JOIN %HR_DB%APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = 1
          INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
          INNER JOIN %HR_DB%EMP_EVAL M ON A.APP_ID = '5' AND A.REQUEST_NO = M.EVAL_ID
          
          UNION
          
          SELECT B.EMP_NO 
          FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                FROM %HR_DB%ROUTING  WITH (NOLOCK)
                WHERE APP_ID= '7' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = 1 AND STATUS = 0 AND SIGNATURE = 0 AND TYPE=1) A
          INNER JOIN APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = 1
          INNER JOIN EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
          INNER JOIN TMS_EMP_CERTIFICATION N ON A.APP_ID = '7' AND A.REQUEST_NO = N.REQUEST_NO
          
          UNION
          
          SELECT B.EMP_NO 
          FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                FROM %HR_DB%ROUTING WITH (NOLOCK)
                WHERE APP_ID= '15' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = 1 AND STATUS = 0 AND SIGNATURE = 0 AND TYPE=1
                ) A
          INNER JOIN %HR_DB%APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = 1
          INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
          INNER JOIN (SELECT REQUEST_NO, MIN(FROM_DATE%MODE) FROM_DATE, MIN(TO_DATE%MODE) TO_DATE
          FROM %HR_DB%LEAVE_DTL GROUP BY REQUEST_NO) P
          ON A.APP_ID = '15' AND A.REQUEST_NO = P.REQUEST_NO
          
          UNION
          
          SELECT B.EMP_NO

          FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                FROM %HR_DB%ROUTING WITH (NOLOCK)
                WHERE APP_ID = '17' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = 1 AND STATUS = 0 AND SIGNATURE = 0 AND TYPE=1) A
          INNER JOIN %HR_DB%APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = 1
          INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
          INNER JOIN (SELECT REQUEST_NO, SEQ_NO, MIN(FROM_DATE%MODE) FROM_DATE, MIN(TO_DATE%MODE) TO_DATE
          FROM %HR_DB%LEAVE_EXTENSION GROUP BY REQUEST_NO, SEQ_NO) Q
          ON A.APP_ID = '17' AND cast(A.REQUEST_NO as INT) = cast(Q.REQUEST_NO as INT) + cast(Q.SEQ_NO as INT)
          
          UNION
          
          SELECT B.EMP_NO
          FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                FROM %HR_DB%ROUTING WITH (NOLOCK)
                WHERE APP_ID= '20' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = 1 AND STATUS = 0 AND SIGNATURE = 0 AND TYPE=1) A
          INNER JOIN %HR_DB%APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = 1
          INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
          INNER JOIN (SELECT REQUEST_NO, MIN(FIELD_EFF_DATE%MODE) FIELD_EFF_DATE FROM %HR_DB%TRACKING_DETAILS GROUP BY REQUEST_NO) R
          ON A.APP_ID = '20' AND A.REQUEST_NO = R.REQUEST_NO
          
          UNION
          
          SELECT B.EMP_NO
          FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                FROM %HR_DB%ROUTING WITH (NOLOCK)
                WHERE APP_ID= '60' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = 1 AND STATUS = 0 AND SIGNATURE = 0 AND TYPE=1) A
          INNER JOIN %HR_DB%APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = 1
          INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
          INNER JOIN (SELECT CONTRACT_ID, MIN(OFFER_ISSUE_DATE%MODE) FROM_DATE, MIN(CNTRCT_END_DATE%MODE) TO_DATE
          FROM %HR_DB%CONTRACTS GROUP BY CONTRACT_ID) S
          ON A.APP_ID = '60' AND A.REQUEST_NO = S.CONTRACT_ID
          
          UNION
          
          SELECT B.EMP_NO
          FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                FROM %HR_DB%ROUTING WITH (NOLOCK)
                WHERE APP_ID= '75' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = 1 AND STATUS = 0 AND SIGNATURE = 0 AND TYPE=1
                ) A
          INNER JOIN %HR_DB%APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = 1
          INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
          INNER JOIN %HR_DB%OOOASSIGNMENT T ON  A.REQUEST_NO = T.REQUEST_NO AND  A.REQUESTOR_ID = T.EMP_NO                         
          
          UNION
          
          SELECT B.EMP_NO
          FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                FROM %HR_DB%ROUTING WITH (NOLOCK)
                WHERE APP_ID= '104' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = 1 AND STATUS = 0 AND SIGNATURE = 0 AND TYPE=1
                ) A
          INNER JOIN %HR_DB%APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = 1
          INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
          INNER JOIN (SELECT TRAVEL_REQ_NO, MIN(TRAVEL_DATE_TIME%MODE) TRAVEL_DATE_TIME
                      FROM %HR_DB%TRV_REQ_DETAILS GROUP BY TRAVEL_REQ_NO
                      ) L ON A.APP_ID = '104' AND A.REQUEST_NO = L.TRAVEL_REQ_NO
          LEFT JOIN DMSDOCINFO G WITH (NOLOCK) ON A.REQUEST_NO = G.REQNO AND APPID = 104
          GROUP BY A.REQUESTOR_ID,B.EMP_FULL_NAME%LANG,C.APP_NAME%LANG,A.REQUEST_NO,A.APP_ID,L.TRAVEL_DATE_TIME,L.TRAVEL_DATE_TIME
          
          UNION
          
          SELECT B.EMP_NO
          FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                FROM %HR_DB%ROUTING WITH (NOLOCK)
                WHERE APP_ID= '133' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = 1 AND STATUS = 0 AND SIGNATURE = 0 AND TYPE=1
                ) A
          INNER JOIN %HR_DB%APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = 1
          INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
          INNER JOIN %HR_DB%SE_END_EMPLOYEE U ON A.APP_ID = '133' AND A.REQUEST_NO = U.REQUEST_NO
          LEFT JOIN DMSDOCINFO G WITH (NOLOCK) ON A.REQUEST_NO = G.REQNO AND APPID = 133
          GROUP BY A.REQUESTOR_ID,B.EMP_FULL_NAME%LANG,C.APP_NAME%LANG,A.REQUEST_NO,A.APP_ID,U.TERMINATION_DATE%MODE,U.TERMINATION_DATE%MODE
          
          UNION
                              
          SELECT A.REQUESTOR_ID AS EMP_NO
          FROM
          (
	          SELECT C.EMP_NO AS REQUESTOR_ID,D.EMP_FULL_NAME%LANG AS EMP_FULL_NAME,'Clearance Form' APP_NAME,C.REQUEST_NO,'134' AS APP_ID,
	          REQUEST_DATE AS FROM_DATE,NULL AS TO_DATE,0 AS OOOType_ID,[SIGN],LATER_SIGN,A.EMP_NO,
	          CASE WHEN CNT > 0 AND LATER_SIGN = 1 THEN 1 ELSE 0 END AS HR_SIGN
	          FROM EMP_CLEARNACE_SETUP A
	          JOIN EMP_CLEARANCE_RESPONSES B ON A.CLEARNACE_ID = B.CLEARNACE_ID
	          JOIN EMP_CLEARANCE_FORM C ON B.REQUEST_NO = C.REQUEST_NO 
	          JOIN EMPLOYEES D ON C.EMP_NO = D.EMP_NO
	          LEFT JOIN(SELECT B.REQUEST_NO,COUNT(A.EMP_NO) as CNT FROM EMP_CLEARNACE_SETUP A
				          JOIN EMP_CLEARANCE_RESPONSES B ON A.CLEARNACE_ID = B.CLEARNACE_ID
				          WHERE [SIGN] = 0 AND (LATER_SIGN IS NULL OR LATER_SIGN = '0')
				          GROUP BY B.REQUEST_NO
		            ) E ON C.REQUEST_NO = E.REQUEST_NO
	          WHERE A.EMP_NO = '%EMP_NO%'
	          AND [SIGN] = 0
          ) A
          WHERE HR_SIGN = 0

          UNION
          
          SELECT B.EMP_NO
          FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                FROM %HR_DB%ROUTING WITH (NOLOCK)
                WHERE APP_ID= '182' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = 1 AND STATUS = 0 AND SIGNATURE = 0 AND TYPE=1
                ) A
          INNER JOIN %HR_DB%APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = 1
          INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
          INNER JOIN %HR_DB%BADGE_REQUEST V ON A.APP_ID = '182' AND A.REQUEST_NO = V.BADGE_REQUEST_ID
          
          UNION
          
          SELECT B.EMP_NO
          FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                FROM %HR_DB%ROUTING WITH (NOLOCK)
                WHERE (APP_ID= '216' or APP_ID= '217') AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = 1 AND STATUS = 0 AND SIGNATURE = 0 AND TYPE=1
                ) A
          INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
          INNER JOIN %HR_DB%TKT_INFO_HDR D ON D.TKT_ID = A.REQUEST_NO
        )X
</IDS_GET_SIGNATURE_COUNT>
  <GET_QUOTE>
    SELECT TOP 1 Q_ID,Q_DSCR_EN, Q_DSCR_AR,AUTH_NM_EN , AUTH_NM_AR FROM LK_QUOTES ORDER BY newid()
  </GET_QUOTE>
  <GET_NAVIGATOR>
    SELECT APP_ID,NAME_EN,NAME_AR,URL_EN,URL_AR,IMG_NAME_EN,IMG_NAME_AR,IMG_OVR_EN,IMG_OVR_AR,IMG_SEL_EN,IMG_SEL_AR,ACL_RESOURCE,LEVEL_ID,EXT
    FROM LK_NAV
    WHERE SYS_ID = '%1' AND IS_VIS = 1 AND IS_ACT = 1 and SITE_ID='%4' %2 %3  %JUSTREQ%
    ORDER BY ORDER_ID 
  </GET_NAVIGATOR>
  <GET_HR_NAVIGATOR>
    SELECT APP_ID,NAME_EN,NAME_AR,URL_EN,URL_AR,IMG_NAME_EN,IMG_NAME_AR,IMG_OVR_EN,IMG_OVR_AR,IMG_SEL_EN,IMG_SEL_AR,ACL_RESOURCE,LEVEL_ID,EXT,MODL_ID
    FROM  LK_NAV
    WHERE SYS_ID = '%1' AND IS_VIS = 1 AND IS_ACT = 1 and SITE_ID='%4' %2 %3  %JUSTREQ%
    ORDER BY ORDER_ID
  </GET_HR_NAVIGATOR>
  <GET_EMP_PIC>
    SELECT B.DMS_DOCDATA 
    FROM DMSDOCINFO A 
    JOIN DOCUMENTS_DOC B ON A.DOCID = B.DMS_DOCNO 
    JOIN FILE_CONTENT_TYPES C ON A.DOCCONTENT = C.content_type 
    WHERE REQNO = '%1' AND APPID = '10' 
    ORDER BY DOCID ASC
  </GET_EMP_PIC>
  <GET_EMP_DETAIL>
    SELECT E.EMP_NO, E.EMP_INTLS, E.EMP_FULL_NAME, E.EMP_FULL_NAME_AR, B.BRANCH_NAME, B.BRANCH_NAME_AR, B.BRANCH_NO,D.DEPT_NO,
    D.DEPT_DSCR, D.DEPT_DSCR_AR, BU.BUSNS_UNIT_NO, BU.NAME, BU.NAME_AR,HIRE_DATE,E.TITLE_NO,TITLE_DSCR,TITLE_DSCR_AR,DATEDIFF(YEAR,HIRE_DATE,GETDATE()) YOS,
    DOC.DMS_DOCDATA,DOC.THUMB_DMS_DOCDATA,E.MOBILE_NO,E.EMAIL_ADD1
    FROM EMPLOYEES E
    LEFT JOIN BRANCH B ON  E.BRANCH_NO =  B.BRANCH_NO
    LEFT JOIN BUSNS_UNIT BU ON  E.BUSNS_UNIT_NO =  BU.BUSNS_UNIT_NO
    LEFT JOIN DEPARTMENT D ON  E.DEPT_NO =  D.DEPT_NO
    LEFT JOIN TITLE T ON  T.TITLE_NO =  E.TITLE_NO
    LEFT JOIN DMSDOCINFO DMS ON DMS.REQNO = E.EMP_NO AND APPID = 10
    LEFT JOIN DOCUMENTS_DOC DOC ON DMS.DOCID = DOC.DMS_DOCNO
    %WHERE%
  </GET_EMP_DETAIL>
  <GET_EMP_DETAIL_ALL>
    SELECT TOP 5 A.EMP_NO,A.FIRST_NAME,A.FIRST_NAME_AR,A.LAST_NAME,A.LAST_NAME_AR,convert(nvarchar, A.DOB, 101) AS DOB, A.TITLE_NO, J.TITLE_DSCR_AR,NT.COUNTRY_NAME,
    GN.SEX_NO,A.HOME_ADDRS1,A.TEL_NO,A.MOBILE_NO,A.EMAIL_ADD1,A.USER_ID,C.QUESTION ,D.CHOICE,EMP.CREATION_DATE,
    EMP.LAST_UPDATED_BY,EMP.LAST_UPDATED_DATE, EMP.IS_DEL, EMP.IS_PHOTO,DOC.THUMB_DMS_DOCDATA, EMP.EM_CNT, EMP.EM_PHONE, EMP.EM_REASON,
    EMP.EM_OTHER, EMP.LIST_MED, EMP.PREVENT, EMP.SUFFER, EMP.BACK_PROB,A.NATIONALITY_NO from employees A
    left join contracts E on A.EMP_NO = E.EMP_NO
    Left Join CONTRACT_HLTH_QSTN_ANSWER B On E.CONTRACT_ID = B.CONTRACT_ID
    left join LK_CONTRACT_HLTH_QSTN C On C.QSTN_ID = B.QSTN_ID AND C.QSTR_ID = B.QSTN_ID
    left join LK_CNTRCT_HLTH_QSTN_CHOICE D On D.CHOICE_ID = B.CHOICE_ID
    LEFT JOIN TITLE J ON  A.TITLE_NO =  J.TITLE_NO
    LEFT JOIN NATIONS NT ON  A.NATIONALITY_NO =  NT.COUNTRY_NO
    LEFT JOIN GENDER GN ON  A.SEX_NO = GN.SEX_NO
    LEFT JOIN EMP_GYM EMP ON A.EMP_NO = EMP.PDV_ID
    LEFT JOIN DMSDOCINFO DMS ON DMS.REQNO = A.EMP_NO AND APPID = 10
    LEFT JOIN DOCUMENTS_DOC DOC ON DMS.DOCID = DOC.DMS_DOCNO
    WHERE EMP.PDV_ID > '%1' and EMP.IS_DEL = '0'
    order by EMP.PDV_ID asc
  </GET_EMP_DETAIL_ALL>
  <GET_EMP_DETAIL_SYNC>
    SELECT TOP %1 A.EMP_NO,A.FIRST_NAME,A.FIRST_NAME_AR,A.LAST_NAME,A.LAST_NAME_AR,convert(nvarchar, A.DOB, 101) AS DOB, A.TITLE_NO, J.TITLE_DSCR_AR,NT.COUNTRY_NAME,
    GN.SEX_NO,A.HOME_ADDRS1,A.TEL_NO,A.MOBILE_NO,A.EMAIL_ADD1,A.USER_ID,C.QUESTION ,D.CHOICE,EMP.CREATION_DATE,
    EMP.LAST_UPDATED_BY,EMP.LAST_UPDATED_DATE, EMP.IS_DEL, EMP.IS_PHOTO,DOC.THUMB_DMS_DOCDATA, EMP.EM_CNT, EMP.EM_PHONE, EMP.EM_REASON,
    EMP.EM_OTHER, EMP.LIST_MED, EMP.PREVENT, EMP.SUFFER, EMP.BACK_PROB,A.NATIONALITY_NO from employees A
    left join contracts E on A.EMP_NO = E.EMP_NO
    Left Join CONTRACT_HLTH_QSTN_ANSWER B On E.CONTRACT_ID = B.CONTRACT_ID
    left join LK_CONTRACT_HLTH_QSTN C On C.QSTN_ID = B.QSTN_ID AND C.QSTR_ID = B.QSTN_ID
    left join LK_CNTRCT_HLTH_QSTN_CHOICE D On D.CHOICE_ID = B.CHOICE_ID
    LEFT JOIN TITLE J ON  A.TITLE_NO =  J.TITLE_NO
    LEFT JOIN NATIONS NT ON  A.NATIONALITY_NO =  NT.COUNTRY_NO
    LEFT JOIN GENDER GN ON  A.SEX_NO = GN.SEX_NO
    LEFT JOIN EMP_GYM EMP ON A.EMP_NO = EMP.PDV_ID
    LEFT JOIN DMSDOCINFO DMS ON DMS.REQNO = A.EMP_NO AND APPID = 10
    LEFT JOIN DOCUMENTS_DOC DOC ON DMS.DOCID = DOC.DMS_DOCNO
    WHERE EMP.IS_DEL = '0' or EMP.IS_DEL = ''
    order by EMP.PDV_ID asc
  </GET_EMP_DETAIL_SYNC>
  <DELETE_GYM>
    update   EMP_GYM set is_DEL='1' ,LAST_UPDATED_DATE= GETDATE()   where PDV_ID='%1'
  </DELETE_GYM>
  <UPDATE_GYM>
    update   EMP_GYM set LAST_UPDATED_DATE= GETDATE()   where PDV_ID='%1'
  </UPDATE_GYM>
  <GYM_TRANSACTION>
    EXEC 	[dbo].[GYM_MemberSync]
    @PDV_ID ='%PDVID%'
    ,@M_ID ='%M_ID%'
    ,@Fname ='%FNAME%'
    ,@Lname ='%LNAME%'
    ,@Gender ='%GENDER%'
    ,@Position ='%POS%'
    ,@Nat ='%NAT%'
    ,@Address ='%ADR%'
    ,@Phone ='%PHONE%'
    ,@Mobile ='%MOBILE%'
    ,@Email ='%EMAIL%'
    ,@BDate ='%BDATE%'


    ,@IP='%IP%'
    ,@DVC_NO='%DVC_NO%'
    ,@UserID='%UserID%'
    ,@TableName='%TableName%'
    ,@ISDEL='%ISDEL%'
    ,@IS_PHOTO = '%ISPHOTO%'
    ,@SESSIONID='%SESSIONID%'


    ,@EMCONTACT='%EMCONTACT%'
    ,@EMPHONE='%EMPHONE%'
    ,@REASON='%REASON%'
    ,@OTHER='%OTHER%'
    ,@MED='%MED%'
    ,@SUFFER = '%SUFFER%'
    ,@PREVENT='%PREVENT%'
    ,@BACK='%BACK%'
  </GYM_TRANSACTION>
  <INSERT_DOC_INFO>
    INSERT INTO DMSDOCINFO(DOCID,REQNO,DOCNAME,DATASIZE,LOADMETHOD,REMOTEIP,USERNAME,DOCCONTENT,APPID,TRAN_DATE)
    VALUES ('%1%','%2%','%3%','%4%','%5%','%6%','%7%','%8%','%9%',GETDATE())
  </INSERT_DOC_INFO>
  <INSERT_DMSDOC_INFO>
    INSERT INTO DMSDOCINFO(DOCID,REQNO,DOCNAME,DATASIZE,LOADMETHOD,REMOTEIP,USERNAME,DOCCONTENT,APPID,TRAN_DATE,LON,LAT)
    VALUES ('%1%','%2%','%3%','%4%','%5%','%6%','%7%','%8%','%9%',GETDATE(),'%10%','%11%')
  </INSERT_DMSDOC_INFO>
  <INSERT_DOC_BINARY>
    INSERT INTO DOCUMENTS_DOC(DMS_DOCNO, DMS_DOCDATA,THUMB_DMS_DOCDATA,TRAN_DATE) VALUES('%1%',CONVERT(IMAGE,'%2%'),'%3%',GETDATE())
  </INSERT_DOC_BINARY>
  <SYNC_TITLES>
    SELECT  TITLE_NO
      ,TITLE_DSCR
      ,TITLE_DSCR_AR
       FROM TITLE
       WHERE TITLE_NO > '%1%'
 </SYNC_TITLES>
  <SYNC_NAT>
    SELECT  COUNTRY_NO
    ,COUNTRY_NAME
    ,COUNTRY_NAME_AR
    FROM [NATIONS]
    WHERE COUNTRY_NO > '%1%'
  </SYNC_NAT>
  <DELETE_EMP_CARD>
      DELETE FROM EMP_CARD WHERE EMP_NO = '%A'
</DELETE_EMP_CARD>
  <INSERT_EMP_CARD>
     INSERT INTO EMP_CARD(CARD_NO,EMP_NO,USER_ID,IP,TIME_STAMP,CARD_NO_ORG,FROM_DATE,TO_DATE,AMOUNT,CURRENCY_NO,REMARKS,BADGE_STATUS_NO)
     VALUES ('%V','%A','%1','%2',GETDATE(),'%3','%4','%5','%6','%7','%8','%9')
   </INSERT_EMP_CARD>
  <INSERT_PRIVILEGE_NEW>
    DECLARE @CONSUMERNO INT
    SELECT @CONSUMERNO =  f_ConsumerID FROM %UPADB%.dbo.T_B_CONSUMER (nolock) WHERE F_CONSUMERNO = '%EMPNO%'
    INSERT INTO %UPADB%.dbo.[t_d_Privilege]
    ([f_DoorID]
    ,[f_ControlSegID]
    ,[f_ConsumerID]
    ,[f_ControllerID]
    ,[f_DoorNO])
    VALUES
    ('%f_DoorID%'
    ,'%f_ControlSegID%'
    ,@CONSUMERNO
    ,'%f_ControllerID%'
    ,'%f_DoorNO%')
  </INSERT_PRIVILEGE_NEW>
  <INSERT_Consumer>
    IF NOT EXISTS (SELECT * FROM %UPADB%.dbo.t_b_Consumer WHERE f_ConsumerNO = '%EMPNO%')
    INSERT INTO %UPADB%.dbo.t_b_Consumer (f_ConsumerNO, f_ConsumerName, f_GroupID, f_AttendEnabled,f_ShiftEnabled, f_DoorEnabled,f_BeginYMD,f_EndYMD,f_PIN, f_CardNO)
    VALUES ('%EMPNO%','%EMPNAME%','%DEPT%',1,0,1, convert(datetime,'%CNTRCT_START_DATE%'),convert(datetime,'%CNTRCT_END_DATE%'),'%PIN%','%CARDNO%')
    ELSE
    UPDATE %UPADB%.dbo.t_b_Consumer
    SET f_CardNO = '%CARDNO%',
    f_BeginYMD = convert(datetime,'%CNTRCT_START_DATE%'),
    f_EndYMD = convert(datetime,'%CNTRCT_END_DATE%')
    WHERE f_ConsumerNO = '%EMPNO%'
  </INSERT_Consumer>
  <Update_Consumer>
    UPDATE %UPADB%.dbo.t_b_Consumer
    SET f_BeginYMD = convert(datetime,'%CNTRCT_START_DATE%'),
    f_EndYMD = convert(datetime,'%CNTRCT_END_DATE%')
    WHERE f_ConsumerNO = '%EMPNO%'
  </Update_Consumer>
  <Update_Consumer_Adv>
    UPDATE %UPADB%.dbo.t_b_Consumer
    SET f_CardNO = '%CARDNO%',
    f_BeginYMD = convert(datetime,'%CNTRCT_START_DATE%'),
    f_EndYMD = convert(datetime,'%CNTRCT_END_DATE%')
    WHERE f_ConsumerNO = '%EMPNO%'
  </Update_Consumer_Adv>
  <Delete_Consumer>
    DELETE FROM %UPADB%.dbo.t_b_Consumer
    WHERE f_ConsumerNO = '%EMPNO%'
  </Delete_Consumer>
  <Delete_PRIVILEGE>
    DELETE FROM %UPADB%.dbo.[t_d_Privilege]
    WHERE f_ConsumerID = (select f_ConsumerID from  %UPADB%.dbo.t_b_Consumer where f_ConsumerNO = '%EMPNO%')
  </Delete_PRIVILEGE>
  <Insert_Emp_History>
    INSERT INTO EMP_CARD_LOG(CARD_NO,EMP_NO,FROM_DATE,TO_DATE,AMOUNT,CURRENCY_NO,REMARKS,STATUS_NO)
    SELECT CARD_NO,EMP_NO,FROM_DATE,TO_DATE,AMOUNT,CURRENCY_NO,REMARKS,BADGE_STATUS_NO
    FROM EMP_CARD
    WHERE EMP_NO = '%A'
  </Insert_Emp_History>
  <Update_Employees_D>
    UPDATE employees SET EMP_STATUS_NO = 'T'
    WHERE EMP_NO = '%A%'
  </Update_Employees_D> 
  <Update_Employees_A>
    UPDATE employees SET EMP_STATUS_NO = 'A'
    WHERE EMP_NO = '%A%'
  </Update_Employees_A>
  <Get_Emp_Cards_Info>
    SELECT CARD_NO,convert(varchar,FROM_DATE,101)FROM_DATE,convert(varchar,TO_DATE,101)TO_DATE,AMOUNT,CURRENCY_NO,REMARKS,CARD_NO_ORG
    FROM EMP_CARD
    WHERE EMP_NO = '%1'
  </Get_Emp_Cards_Info>
  <SAVE_NEW_EMPLOYEE>
    INSERT INTO EMPLOYEES(EMP_NO,FIRST_NAME,MIDDLE_NAME1,LAST_NAME,EMP_STATUS_NO,SEX_NO,NATIONALITY_NO,DOB,BIRTH_PLACE,EMAIL_ADD1,HOME_TEL_NO,TEL_NO,MOBILE_NO,BUSNS_UNIT_NO,BRANCH_NO,TYPE_NO,TITLE_NO,EMP_FULL_NAME,MGR_NO,DEPT_NO,LOGIN_NAME)
    VALUES('%1%','%2%','%3%','%4%','%5%','%6%','%7%',CONVERT(DATETIME,'%8%',%_DMY%),'%9%','%10%','%11%','%12%','%13%','%14%','%15%','%16%','%17%','%18%','%19%','%20%','%21%')
  </SAVE_NEW_EMPLOYEE>
  <Update_EMPLOYEE>
    UPDATE  EMPLOYEES set FIRST_NAME='%2%',MIDDLE_NAME1='%3%',LAST_NAME='%4%',EMP_STATUS_NO='%5%',SEX_NO='%6%',NATIONALITY_NO='%7%',DOB=CONVERT(DATETIME,'%8%',%_DMY%),BIRTH_PLACE='%9%',EMAIL_ADD1='%10%',HOME_TEL_NO='%11%',TEL_NO='%12%',MOBILE_NO='%13%',BUSNS_UNIT_NO='%14%',BRANCH_NO='%15%',TYPE_NO='%16%',TITLE_NO='%17%',EMP_FULL_NAME='%18%',MGR_NO='%19%',DEPT_NO='%20%',LOGIN_NAME='%21%'
    WHERE EMP_NO='%1%'
  </Update_EMPLOYEE>
  <Get_Hist_Emp_Cards_Info>
    SELECT CARD_NO,convert(varchar,FROM_DATE,101)FROM_DATE,convert(varchar,TO_DATE,101)TO_DATE,CARD_NO,STATUS_NO
    FROM EMP_CARD_LOG
    WHERE EMP_NO = '%1'
  </Get_Hist_Emp_Cards_Info>
  <Check_Emp_Cards>
    SELECT count(CARD_NO_ORG)
    FROM EMP_CARD
    WHERE CARD_NO_ORG = '%1'
  </Check_Emp_Cards>
  <Check_Emp_HasCards>
    SELECT count(CARD_NO_ORG)
    FROM EMP_CARD
    WHERE EMP_NO = '%1'
  </Check_Emp_HasCards>
  <Check_Emp>
    SELECT count(EMP_NO)
    FROM EMPLOYEES
    WHERE EMP_NO = '%1'
  </Check_Emp>
  <GET_NEW_EMPLOYEE>
    SELECT A.EMP_NO,A.FIRST_NAME,A.MIDDLE_NAME1,A.LAST_NAME,A.EMP_STATUS_NO,A.SEX_NO,A.NATIONALITY_NO,convert(varchar,(CONVERT(date,A.DOB,103)),101)DOB,A.BIRTH_PLACE,A.EMAIL_ADD1,A.HOME_TEL_NO,A.TEL_NO,A.MOBILE_NO,A.BUSNS_UNIT_NO,A.BRANCH_NO,A.TYPE_NO,A.TITLE_NO,A.MGR_NO,A.DEPT_NO
    ,B.FIRST_NAME+' '+B.LAST_NAME AS MGRFNAME,A.LOGIN_NAME
    FROM EMPLOYEES A
    LEFT JOIN EMPLOYEES B ON A.MGR_NO = B.EMP_NO
    WHERE A.EMP_NO = '%1'
  </GET_NEW_EMPLOYEE>
  <GET_MAX_EMPLOYEE_NUMBER>
    select max(EMP_NO)+1 as Number from employees
  </GET_MAX_EMPLOYEE_NUMBER>
  <Create_Employee>
    INSERT INTO %HR_DB%EMPLOYEES (%COLUMNS%) 
		VALUES (%VALUES%)
  </Create_Employee>
  <Edit_Employee>
   UPDATE %HR_DB%EMPLOYEES 
	 SET %COLUMNS_AND_VALUES%
	 WHERE EMP_NO = '%EMP_NO%'
  </Edit_Employee>
  <Select_Employee>
        SELECT A.EMP_NO,EMP_NO_DISP,EMP_INTLS,EMP_INTLS_AR,EMP_FULL_NAME,EMP_FULL_NAME_AR,FIRST_NAME,FIRST_NAME_AR,LAST_NAME,LAST_NAME_AR,MIDDLE_NAME1,MIDDLE_NAME1_AR,MIDDLE_NAME2,MIDDLE_NAME2_AR,OTHER_NAME,OTHER_NAME_AR,SEX_NO,
      DOB,DOB_HJ,BIRTH_PLACE,BLOOD_GROUP,HOME_ADDRS1,HOME_ADDRS1_AR,HOME_ADDRS2,HOME_ADDRS2_AR,HOME_TEL_NO,ADDRESS1,ADDRESS1_AR,ADDRESS2,ADDRESS2_AR,EMAIL_ADD1,EMAIL_ADD2,FILE_NO1,FILE_NO2,FAX_NO1,FAX_NO2,TEL_NO,MOBILE_NO,PAGER_NO,KIN_NAME,KIN_NAME_AR,
      KIN_ADDR,KIN_ADDR_AR,KIN_TEL,DEGREE_NO,DEGREE_PLACE,DEGREE_GRADE,DEGREE_DATE,DEGREE_DATE_HJ,IQAMA_TITLE_NO,IQAMA_TRANSFER_DATE,IQAMA_TRANSFER_DATE_HJ,BAND_NO,BUSNS_UNIT_NO,BRANCH_NO,DEPT_NO,CITY_NO,CLASS_NO,COMP_NO,COMPUTER_NO,COST_CENTER_NO,
      DECISION_NO,EMP_STATUS_NO,GRADE_NO,MAJOR_NO,A.MGR_NO,MGR_NAME,NATIONALITY_NO,ORIGIN_CNTRY_NO,RELIGION_NO,A.TITLE_NO,TITLE_DSCR,CLIENT_TITLE_DSCR,CLIENT_TITLE_DSCR_AR,TYPE_NO,A.STAGE_ID,DSCR,TKT_TYPE_NO,TKTS_PER_YEAR,MARITAL_STATUS,SPONSOR,INOUT,GOSI_FLAG,GOSI_CAT,VAC_TYPE,SAL_TYPE,
      ACMDT_TYPE,CNTRCT_TYPE,HIRE_DATE,HIRE_DATE_HJ,HIRE_DECISION_DATE,HIRE_DECISION_DATE_HJ,CNTRCT_STATUS_NO,CNTRCT_START_DATE,CNTRCT_START_DATE_HJ,CNTRCT_END_DATE,CNTRCT_END_DATE_HJ,NEXT_EVAL_DATE,NEXT_EVAL_DATE_HJ,GOV_HIRE_DATE,GOV_HIRE_DATE_HJ,
      TERMNT_DATE,TERMNT_DATE_HJ,ACT_TERMNT_DATE,ACT_TERMNT_DATE_HJ,ENDOFSERVICE_DATE,ENDOFSERVICE_DATE_HJ,ROUTING1_FROM,ROUTING1_TO,ROUTING2_FROM,ROUTING2_TO,POSITION_NO,ROYAL_DECREE_NO,ROYAL_DECREE_DATE,ROYAL_DECREE_DATE_HJ,ACCESSKEY,EMP_SELECT,SYMBOL,ACTIVE,
      LOGIN_NAME,IS_UADOCS_VISIBLE,IS_PROMOTABLE,USERDEFINED01,USERDEFINED02,USERDEFINED03,USERDEFINED04,USERDEFINED05,USERDEFINED06,USERDEFINED07,USERDEFINED08,USERDEFINED09,USERDEFINED10,USERDEFINED11,USERDEFINED12,USERDEFINED13,USERDEFINED14,USERDEFINED15,
      CNTRCT_TKT_TYPE_ID,TALENT_ID,SORT_ORDER,GOSI_LAST_AMOUNT,GOSI_EXCLUDE,GOSI_CONTINUE,TAX_EXCLUDE,IS_MED_INSURED,INSRN_CLASS_NO,HAS_EDUCATION,HAS_TICKETING,HAS_ACCRUAL_1,HAS_ACCRUAL_2,HAS_ACCRUAL_3,HAS_ACCRUAL_4,PAY_TYPE_ID,PAY_TYPE_ID,HANDICAP,REGION_NO,TRANS_TYPE_ID,PRJ_NO AS PROJECT_NO,PROJECT_TITLE,ALLOW_OVERTIME
      FROM EMPLOYEES A
      LEFT JOIN (SELECT TITLE_NO,TITLE_DSCR%LANG AS TITLE_DSCR FROM TITLE) B ON A.TITLE_NO = B.TITLE_NO
      LEFT JOIN (SELECT STAGE_ID,DSCR%LANG AS DSCR
                  FROM CAREER_STAGE A
                  JOIN CAREER_PATH B ON A.PATH_ID = B.PATH_ID
                  JOIN POSITION_GROUP_STR C ON A.POS_GRP_STR = C.CHI_GRP_NO
                  WHERE A.IS_ACTIVE = '1' AND B.IS_ACTIVE = '1'
                ) C ON A.STAGE_ID = C.STAGE_ID
      LEFT JOIN (SELECT EMP_NO AS MGR_NO,EMP_FULL_NAME%LANG AS MGR_NAME FROM EMPLOYEES) D ON A.MGR_NO = D.MGR_NO
      LEFT JOIN (SELECT PROJECT_NO,PROJECT_TITLE  FROM %PTS_DB%PROJECTS) P ON A.PRJ_NO = P.PROJECT_NO
      WHERE A.EMP_NO = '%EMP_NO%'
  </Select_Employee>
  <Create_Emp_Relation>
    INSERT INTO %HR_DB%EMP_RELATION (EMP_NO,EMP_RLTN_NO,RLTN_NO)
    VALUES ('%EMP_NO%','%EMP_RLTN_NO%','%RLTN_NO%')
  </Create_Emp_Relation>
  <Delete_Emp_Relation>
    DELETE EMP_RELATION WHERE EMP_NO = '%EMP_NO%'
  </Delete_Emp_Relation>
  <Select_Emp_Relation>
    SELECT EMP_RLTN_NO AS ID,RLTN_NO , EMP_FULL_NAME AS EMP_RLTN_NAME
    FROM EMP_RELATION A
    JOIN EMPLOYEES B ON A.EMP_RLTN_NO = B.EMP_NO
    WHERE A.EMP_NO = '%EMP_NO%'
  </Select_Emp_Relation>
  <Create_Emp_SM>
    INSERT INTO %HR_DB%EMP_SM(EMP_NO,SM_NO,FACEBOOK,TWITER,LINKEDIN,INSTAGRAM,YOUTUBE,SKYPE,EXT_LINK)
    VALUES ('%EMP_NO%','%SM_NO%','%FACEBOOK%','%TWITER%','%LINKEDIN%','%INSTAGRAM%','%YOUTUBE%','%SKYPE%','%EXT_LINK%')
  </Create_Emp_SM>
  <Delete_Emp_SM>
    DELETE EMP_SM WHERE EMP_NO = '%EMP_NO%'
  </Delete_Emp_SM>
  <Select_Emp_SM>
    SELECT FACEBOOK,TWITER,LINKEDIN,INSTAGRAM,YOUTUBE,SKYPE,EXT_LINK FROM EMP_SM WHERE EMP_NO = '%EMP_NO%'
  </Select_Emp_SM>
  <Create_Emp_Degree>
    INSERT INTO %HR_DB%EMP_DEGREES (%COLUMNS%)
    VALUES (%VALUES%)
  </Create_Emp_Degree>
  <Delete_Emp_Degree>
    DELETE EMP_DEGREES WHERE EMP_NO = '%EMP_NO%'
  </Delete_Emp_Degree>
  <Select_Emp_Degree>
    SELECT DEGREE_NO,MAJOR_NO,FROM_DATE,FROM_DATE_HJ,TO_DATE,TO_DATE_HJ,A.COLL_NO,COLL_NAME,DEGREE_GRADE_DSCR,DEGREE_GRADE_DSCR_AR
    FROM EMP_DEGREES A
    LEFT JOIN (SELECT COLL_NO,COLL_NAME%LANG AS COLL_NAME FROM COLLEGES) B ON A.COLL_NO = B.COLL_NO
    WHERE EMP_NO = '%EMP_NO%'
  </Select_Emp_Degree>
   <Create_Company>
    INSERT INTO CO_PROFILE (%COLUMNS%) 
		VALUES (%VALUES%)
  </Create_Company>
   <Copy_Company>
    INSERT INTO %HRS_DB%.dbo.CO_PROFILE (COMP_NO, CO_NAME,CO_SHORT_NAME,CO_COUNTRY,CO_CITY,CO_TELE1,CO_STREET,ZIP_CODE,CO_NEARSTREET) 
		SELECT COMP_NO, CO_NAME,CO_SHORT_NAME,CO_COUNTRY,CO_CITY,CO_TELE1,CO_STREET,ZIP_CODE,CO_NEARSTREET FROM CO_PROFILE 
    WHERE COMP_NO = '%COMP_NO%'
  </Copy_Company>
  <Edit_Company>
   UPDATE %HR_DB%CO_PROFILE 
	 SET %COLUMNS_AND_VALUES%
	 WHERE COMP_NO = '%COMP_NO%'
  </Edit_Company>
  <IDS_IS_EMP_NO_DUPLICATED>
    SELECT COUNT(*) FROM EMPLOYEES WHERE EMP_NO = '%EMP_NO%'
  </IDS_IS_EMP_NO_DUPLICATED>
  <CHECK_IS_POSITION_DUPLICATED>
    SELECT COUNT(*) FROM EMPLOYEES WHERE EMP_NO &lt;&gt; '%EMP_NO%' AND POSITION_NO = '%POSITION_NO%' AND EMP_STATUS_NO = 'A'
  </CHECK_IS_POSITION_DUPLICATED>
  <IDS_IS_LOGIN_NAME_DUPLICATED>
    SELECT COUNT(*) FROM EMPLOYEES WHERE EMP_NO &lt;&gt; '%EMP_NO%' AND LOGIN_NAME = '%LOGIN_NAME%' AND EMP_STATUS_NO = 'A'
  </IDS_IS_LOGIN_NAME_DUPLICATED>
  <IDS_IS_INTLS_DUPLICATED>
    SELECT COUNT(*) FROM EMPLOYEES WHERE EMP_NO &lt;&gt; '%EMP_NO%' AND (EMP_INTLS = '%EMP_INTLS%' OR EMP_INTLS_AR = '%EMP_INTLS%') AND EMP_STATUS_NO = 'A'
  </IDS_IS_INTLS_DUPLICATED>
  <IDS_IS_COMP_NO_DUPLICATED>
    SELECT COUNT(*) FROM CO_PROFILE WHERE CO_SHORT_NAME = '%SHORT_NAME%'
  </IDS_IS_COMP_NO_DUPLICATED>
  <GET_COMPANY_MAX_NO>
    SELECT MAX(CAST(SUBSTRING(COMP_NO, 2, len(COMP_NO)) AS INT)) + 1 FROM CO_PROFILE
  </GET_COMPANY_MAX_NO>
  <GET_EMP_MAX_NO>
    DECLARE @MAX_LEN AS INT
    SET @MAX_LEN = (SELECT MAX(LEN(EMP_NO)) FROM EMPLOYEES)
    SELECT MAX(EMP_NO) AS TEMPMAX
    FROM
    (
      SELECT (CASE WHEN LEN(EMP_NO) &lt; @MAX_LEN 
	    THEN
	    (CASE 
		    WHEN (LEN(EMP_NO) + 1)  = @MAX_LEN THEN '0' + EMP_NO 
		    WHEN (LEN(EMP_NO) + 2)  = @MAX_LEN THEN '00' + EMP_NO 
		    WHEN (LEN(EMP_NO) + 3)  = @MAX_LEN THEN '000' + EMP_NO 
		    WHEN (LEN(EMP_NO) + 4)  = @MAX_LEN THEN '0000' + EMP_NO 
		    WHEN (LEN(EMP_NO) + 5)  = @MAX_LEN THEN '00000' + EMP_NO 
		    WHEN (LEN(EMP_NO) + 6)  = @MAX_LEN THEN '000000' + EMP_NO 
		    WHEN (LEN(EMP_NO) + 7)  = @MAX_LEN THEN '0000000' + EMP_NO 
		    WHEN (LEN(EMP_NO) + 8)  = @MAX_LEN THEN '00000000' + EMP_NO 
		    WHEN (LEN(EMP_NO) + 9)  = @MAX_LEN THEN '000000000' + EMP_NO 
		    WHEN (LEN(EMP_NO) + 10) = @MAX_LEN THEN '0000000000' + EMP_NO 
		    WHEN (LEN(EMP_NO) + 11) = @MAX_LEN THEN '00000000000' + EMP_NO 
		    WHEN (LEN(EMP_NO) + 12) = @MAX_LEN THEN '000000000000' + EMP_NO 
		    WHEN (LEN(EMP_NO) + 13) = @MAX_LEN THEN '0000000000000' + EMP_NO 
		    WHEN (LEN(EMP_NO) + 14) = @MAX_LEN THEN '00000000000000' + EMP_NO 
		    WHEN (LEN(EMP_NO) + 15) = @MAX_LEN THEN '000000000000000' + EMP_NO 
		    WHEN (LEN(EMP_NO) + 16) = @MAX_LEN THEN '0000000000000000' + EMP_NO 
		    WHEN (LEN(EMP_NO) + 17) = @MAX_LEN THEN '00000000000000000' + EMP_NO 
		    WHEN (LEN(EMP_NO) + 18) = @MAX_LEN THEN '000000000000000000' + EMP_NO 
		    WHEN (LEN(EMP_NO) + 19) = @MAX_LEN THEN '0000000000000000000' + EMP_NO 
		    WHEN (LEN(EMP_NO) + 20) = @MAX_LEN THEN '00000000000000000000' + EMP_NO 
		    WHEN (LEN(EMP_NO) + 21) = @MAX_LEN THEN '000000000000000000000' + EMP_NO 
		    WHEN (LEN(EMP_NO) + 22) = @MAX_LEN THEN '0000000000000000000000' + EMP_NO 
		    WHEN (LEN(EMP_NO) + 23) = @MAX_LEN THEN '00000000000000000000000' + EMP_NO 
		    WHEN (LEN(EMP_NO) + 24) = @MAX_LEN THEN '000000000000000000000000' + EMP_NO 
		    WHEN (LEN(EMP_NO) + 25) = @MAX_LEN THEN '0000000000000000000000000' + EMP_NO 
		    WHEN (LEN(EMP_NO) + 26) = @MAX_LEN THEN '00000000000000000000000000' + EMP_NO 
		    WHEN (LEN(EMP_NO) + 27) = @MAX_LEN THEN '000000000000000000000000000' + EMP_NO 
		    WHEN (LEN(EMP_NO) + 28) = @MAX_LEN THEN '0000000000000000000000000000' + EMP_NO 
		    WHEN (LEN(EMP_NO) + 29) = @MAX_LEN THEN '00000000000000000000000000000' + EMP_NO 
		    WHEN (LEN(EMP_NO) + 30) = @MAX_LEN THEN '000000000000000000000000000000' + EMP_NO 
		    WHEN (LEN(EMP_NO) + 31) = @MAX_LEN THEN '0000000000000000000000000000000' + EMP_NO 
		    WHEN (LEN(EMP_NO) + 32) = @MAX_LEN THEN '00000000000000000000000000000000' + EMP_NO 
	    END )
	    ELSE 
		    EMP_NO 
	    END) EMP_NO 
	    FROM EMPLOYEES 
    ) A
  </GET_EMP_MAX_NO>
  <INSERT_NOTIFICATION>
    INSERT INTO [OA_NOT]
    ([MAINID]
    ,[SECID]
    ,[THIRDID]
    ,[EMPNO]
    ,[ISREAD]
    ,[READ_DATE]
    ,[REQEMPNO]
    ,[REQDATE]
    ,[TYPEID]
    ,[URL]
    ,[SUBJECT]
    ,[SYSID]
    ,[APPID]
    ,[SITEID]
    ,[USER_ID]
    ,[SYSTEM_ID]
    ,[IP]
    ,[CHECK_SUM]
    ,[TRANS_DATE]
    ,[TRANS_TIME]
    ,[IS_VIS]
    ,[IS_ACT]
    ,[IS_SMS]
    ,[IS_MAIL]
    ,[PHONE_NO]
    ,[EMAIL]
    ,[MAIL_EVENT_ID]
    ,[EMP_NAME]
    )
    VALUES
    ('%MAINID%'
    ,'%SECID%'
    ,'%THIRDID%'
    ,'%EMPNO%'
    ,'%ISREAD%'
    ,'%READ_DATE%'
    ,'%REQEMPNO%'
    ,'%REQDATE%'
    ,'%TYPEID%'
    ,'%URL%'
    ,'%SUBJECT%'
    ,'%SYSID%'
    ,'%APPID%'
    ,'%SITEID%'
    ,'%USER_ID%'
    ,'%SYSTEM_ID%'
    ,'%IP%'
    ,'0'
    ,'%TRANS_DATE%'
    ,'%TRANS_TIME%'
    ,%IS_VIS%
    ,%IS_ACT%
    ,'%IS_SMS%'
    ,'%IS_MAIL%'
    ,'%PHONE_NO%'
    ,'%EMAIL%'
    ,'%MAIL_EVENT_ID%'
    ,'%EMP_NAME%')
  </INSERT_NOTIFICATION>
  <DELETE_NOTIFICATION>
    DELETE FROM [OA_NOT]
    WHERE MAINID='%MAINID%' AND SECID='%SECID%'
  </DELETE_NOTIFICATION>
  <SELECT_NOTIFICATION>
    SELECT [ID]
    ,[EMPNO]
    ,[REQEMPNO]
    ,[SUBJECT]
    ,convert(varchar,TRANS_DATE,101)
    ,[TRANS_TIME]
    ,[IS_SMS]
    ,[IS_MAIL]
    ,E.EMP_FULL_NAME
    FROM [OA_NOT] N WITH (NOLOCK)
    left join %HRDB%.dbo.EMPLOYEES E WITH (NOLOCK) ON E.EMP_NO=N.EMPNO
    where MAINID='%1%' and SECID='%2%'
  </SELECT_NOTIFICATION>
  <SELECT_MAILER_RECIPIENTS>
    select MAIL_EVENT_ID,EMP_NAME,EMAIL,TYPEID,SUBJECT,MAINID,SECID,THIRDID,ID from OA_NOT
    WHERE CONVERT(DATETIME,TRANS_DATE) &lt;= GETDATE() AND APPID='%APPID%' AND SITEID='%SITEID%' AND ISMAILSENT='0'
  </SELECT_MAILER_RECIPIENTS>
  <UPDATE_OANOT_SENT>
    UPDATE OA_NOT 
    SET ISMAILSENT='1',
    MAIL_SENT_DATE=GETDATE()
    WHERE ID='%ID%'
  </UPDATE_OANOT_SENT>
  <SELECT_EMP_ID>
    SELECT A.EMP_NO,DOC_NO,ISSUE_PLACE_NO,ISSUE_DATE,ISSUE_DATE_HJ,EXPIRY_DATE,EXPIRY_DATE_HJ,REMARKS,REMARKS_AR,CABINET_NO,RSDNC_NAME,
    RSDNC_NAME_AR,WORK_PERMIT,B.IQAMA_TITLE_NO,IQAMA_TITLE_DSCR%LANG AS IQAMA_TITLE_DSCR,SPONSOR
    FROM EMP_RSDNC_DOC A
    JOIN EMPLOYEES B ON A.EMP_NO = B.EMP_NO
    LEFT JOIN IQAMA_TITLE C ON B.IQAMA_TITLE_NO = C.IQAMA_TITLE_NO
    WHERE A.EMP_NO = '%EMP_NO%'
  </SELECT_EMP_ID>
  <SELECT_EMP_PASSPORT>
    SELECT EMP_NO,DOC_NO,ISSUE_PLACE_NO,ISSUE_DATE,ISSUE_DATE_HJ,EXPIRY_DATE,EXPIRY_DATE_HJ,REMARKS,REMARKS_AR,CABINET_NO,PSPRT_NAME,PSPRT_NAME_AR
    FROM EMP_PSPRT_DOC
    WHERE EMP_NO = '%EMP_NO%'
  </SELECT_EMP_PASSPORT>
  <SELECT_EMP_VISA>
    SELECT EMP_NO,VISA_NO AS DOC_NO,ENTRY_FROM,ENTRY_DATE,ENTRY_DATE_HJ,RECVE_DATE,RECVE_DATE_HJ,RECVE_FROM,VISA_TYPE,ISSUE_PLACE,VISA_ISSUE_NO,EXP_DATE,EXP_DATE_HJ
    FROM EMP_VISA
    WHERE EMP_NO = '%EMP_NO%'
  </SELECT_EMP_VISA>
  <SELECT_EMP_WPERMIT>
    SELECT DOC_NO,ISSUE_PLACE_NO,ISSUE_DATE,ISSUE_DATE_HJ,EXPIRY_DATE,EXPIRY_DATE_HJ
    FROM EMP_WP_DOC
    WHERE EMP_NO = '%EMP_NO%'
  </SELECT_EMP_WPERMIT>
  <SELECT_EMP_DLICENCE>
    SELECT DOC_NO,ISSUE_PLACE_NO,ISSUE_DATE,ISSUE_DATE_HJ,EXPIRY_DATE,EXPIRY_DATE_HJ
    FROM %HR_DB%EMP_DRV_DOC
    WHERE EMP_NO = '%EMP_NO%'
  </SELECT_EMP_DLICENCE>
  <SELECT_EMP_MCARD>
    SELECT DOC_NO,HOSPITAL_NO,ISSUE_PLACE_NO,ISSUE_DATE,ISSUE_DATE_HJ,EXPIRY_DATE,EXPIRY_DATE_HJ
    FROM EMP_MUNICIP_CARD
    WHERE EMP_NO = '%EMP_NO%'
  </SELECT_EMP_MCARD>
  <INSERT_EMP_ID>
    INSERT INTO %HR_DB%EMP_RSDNC_DOC (%COLUMNS%)
     VALUES (%VALUES%)
  </INSERT_EMP_ID>
  <INSERT_EMP_PASSPORT>
    INSERT INTO %HR_DB%EMP_VISA (%COLUMNS%)
    VALUES (%VALUES%)
  </INSERT_EMP_PASSPORT>
  <INSERT_EMP_VISA>
    INSERT INTO %HR_DB%EMP_RSDNC_DOC (%COLUMNS%)
    VALUES (%VALUES%)
  </INSERT_EMP_VISA>
  <INSERT_EMP_WPERMIT>
    INSERT INTO %HR_DB%EMP_WP_DOC (%COLUMNS%)
    VALUES (%VALUES%)
  </INSERT_EMP_WPERMIT>
  <INSERT_EMP_DLICENCE>
    INSERT INTO %HR_DB%EMP_DRV_DOC (%COLUMNS%)
    VALUES (%VALUES%)
  </INSERT_EMP_DLICENCE>
  <INSERT_EMP_MCARD>
    INSERT INTO %HR_DB%EMP_MUNICIP_CARD (%COLUMNS%)
    VALUES (%VALUES%)
  </INSERT_EMP_MCARD>
  <EDIT_EMP_ID>
    UPDATE %HR_DB%EMP_RSDNC_DOC
    SET %COLUMNS_AND_VALUES%
    WHERE EMP_NO = '%EMP_NO%'
  </EDIT_EMP_ID>
  <EDIT_EMP_PASSPORT>
    UPDATE %HR_DB%EMP_RSDNC_DOC
    SET %COLUMNS_AND_VALUES%
    WHERE EMP_NO = '%EMP_NO%' AND DOC_NO = '%DOC_NO%'
  </EDIT_EMP_PASSPORT>
  <EDIT_EMP_VISA>
    UPDATE %HR_DB%EMP_VISA
    SET %COLUMNS_AND_VALUES%
    WHERE EMP_NO = '%EMP_NO%' AND VISA_NO = '%DOC_NO%'
  </EDIT_EMP_VISA>
  <EDIT_EMP_WPERMIT>
    UPDATE %HR_DB%EMP_WP_DOC
    SET %COLUMNS_AND_VALUES%
    WHERE EMP_NO = '%EMP_NO%' AND DOC_NO = '%DOC_NO%'
  </EDIT_EMP_WPERMIT>
  <EDIT_EMP_DLICENCE>
    UPDATE %HR_DB%EMP_DRV_DOC
    SET %COLUMNS_AND_VALUES%
    WHERE EMP_NO = '%EMP_NO%' AND DOC_NO = '%DOC_NO%'
  </EDIT_EMP_DLICENCE>
  <EDIT_EMP_MCARD>
    UPDATE %HR_DB%EMP_MUNICIP_CARD
    SET %COLUMNS_AND_VALUES%
    WHERE EMP_NO = '%EMP_NO%' AND DOC_NO = '%DOC_NO%'
  </EDIT_EMP_MCARD>
  <GET_NOTIFICATION_COUNTER>
        SELECT SUM(CNT) AS SIGN_CNT
        FROM
        (
            SELECT COUNT(A.REQUESTOR_ID) AS CNT
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS                  
                        FROM ROUTING  WITH (NOLOCK)                
                        WHERE  EMP_NO = '%EMPNO' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE &lt;&gt; '2' 
                        AND (ROUTING.APP_ID = '1' OR ROUTING.APP_ID IN (SELECT ROUTING_APP_ID FROM LEAVE_TYPES WHERE ROUTING_APP_ID IS NOT NULL))      
                ) A            
            INNER JOIN EMPLOYEES B WITH (NOLOCK) ON A.REQUESTOR_ID = B.EMP_NO     
            INNER JOIN LEAVE F WITH (NOLOCK) ON F.REQUEST_NO = A.REQUEST_NO    
            INNER JOIN (SELECT REQUEST_NO, MIN(FROM_DATE) FROM_DATE, MIN(TO_DATE) TO_DATE            
                            FROM LEAVE_DTL WITH (NOLOCK)
                            GROUP BY REQUEST_NO) D ON  F.REQUEST_NO = D.REQUEST_NO  
            INNER JOIN LEAVE_DTL E WITH (NOLOCK) ON E.REQUEST_NO = D.REQUEST_NO 
            INNER JOIN LEAVE_TYPES C WITH (NOLOCK) ON E.LEAVE_TYPE = C.LEAVE_TYPE  
            WHERE F.STATUS_ID NOT IN ('5') AND B.EMP_STATUS_NO = 'A' AND (F.IS_DEL != 1 OR F.IS_DEL IS NULL)  
                  
            UNION
                  
	        SELECT COUNT(A.REQUESTOR_ID) AS CNT
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                FROM ROUTING WITH (NOLOCK) 
                WHERE APP_ID= '2' AND  EMP_NO = '%EMPNO' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE='1'
                ) A
            INNER JOIN APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = 1
            INNER JOIN EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
            INNER JOIN (SELECT E.REQUEST_NO, MIN(E.FROM_DATE) FROM_DATE, MIN(E.TO_DATE) TO_DATE
                        FROM LEAVE_DTL E WITH (NOLOCK)
                        WHERE EXISTS (SELECT 1 FROM LEAVE F WHERE F.STATUS_ID &lt;&gt; '5' AND F.REQUEST_NO = E.REQUEST_NO)
                        AND EXISTS (SELECT 1 FROM LEAVE_RETURN G WHERE G.REQUEST_NO = E.REQUEST_NO)
                        GROUP BY E.REQUEST_NO
                        ) H  ON A.APP_ID = '2' AND A.REQUEST_NO = H.REQUEST_NO
                  
            UNION
                   
	        SELECT COUNT(A.REQUESTOR_ID) AS CNT
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                FROM ROUTING WITH (NOLOCK)
                WHERE APP_ID= '3' AND  EMP_NO = '%EMPNO' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE='1'
                ) A
            INNER JOIN APPLICATIONS C WITH (NOLOCK) ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = '1'
            INNER JOIN EMPLOYEES B WITH (NOLOCK) ON A.REQUESTOR_ID = B.EMP_NO
            INNER JOIN (SELECT I.REQUEST_NO, J.SCH_START_DATE, J.SCH_END_DATE 
                        FROM TMS_PROG_REQUEST I WITH (NOLOCK)
                        INNER JOIN TMS_CRS_SCHEDULE J ON I.SCH_ID = J.SCH_ID AND I.PLAN_ID = J.PLAN_ID AND I.PROG_ID = J.PROG_ID
                        ) K ON A.APP_ID = '3' AND A.REQUEST_NO = K.REQUEST_NO
                  
            UNION
                  
	        SELECT COUNT(A.REQUESTOR_ID) AS CNT
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                FROM ROUTING  WITH (NOLOCK)
                WHERE APP_ID IN ('4','204') AND  EMP_NO = '%EMPNO' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE='1'
                ) A
            INNER JOIN APPLICATIONS C WITH (NOLOCK) ON C.APP_ID = '4' AND C.IS_INCLUDED = '1'
            INNER JOIN EMPLOYEES B WITH (NOLOCK) ON A.REQUESTOR_ID = B.EMP_NO
            INNER JOIN (SELECT TRAVEL_REQ_NO, MIN(TRAVEL_DATE_TIME) TRAVEL_DATE_TIME
                        FROM TRV_REQ_DETAILS WITH (NOLOCK) GROUP BY TRAVEL_REQ_NO
                        ) L ON A.APP_ID IN ('4','204') AND A.REQUEST_NO = L.TRAVEL_REQ_NO
                  
            UNION
                  
	        SELECT COUNT(A.REQUESTOR_ID) AS CNT
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                FROM ROUTING WITH (NOLOCK)
                WHERE APP_ID= '5' AND  EMP_NO = '%EMPNO' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE='1'
                ) A
            INNER JOIN APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = '1'
            INNER JOIN EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
            INNER JOIN EMP_EVAL M ON A.APP_ID = '5' AND A.REQUEST_NO = M.EVAL_ID
                  
            UNION
                  
	        SELECT COUNT(A.REQUESTOR_ID) AS CNT
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                FROM ROUTING  WITH (NOLOCK)
                WHERE APP_ID= '7' AND  EMP_NO = '%EMPNO' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE='1') A
            INNER JOIN APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = '1'
            INNER JOIN EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
            INNER JOIN TMS_EMP_CERTIFICATION N ON A.APP_ID = '7' AND A.REQUEST_NO = N.REQUEST_NO
                  
            UNION
                  
            SELECT COUNT(A.REQUESTOR_ID) AS CNT
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                FROM ROUTING WITH (NOLOCK)
                WHERE APP_ID= '15' AND  EMP_NO = '%EMPNO' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE='1'
                ) A
            INNER JOIN APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = '1'
            INNER JOIN EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
            INNER JOIN (SELECT REQUEST_NO, MIN(FROM_DATE) FROM_DATE, MIN(TO_DATE) TO_DATE
            FROM LEAVE_DTL GROUP BY REQUEST_NO) P
            ON A.APP_ID = '15' AND A.REQUEST_NO = P.REQUEST_NO
                  
            UNION
                  
	        SELECT COUNT(A.REQUESTOR_ID) AS CNT
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                FROM ROUTING WITH (NOLOCK)
                WHERE APP_ID = '17' AND  EMP_NO = '%EMPNO' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE='1') A
            INNER JOIN APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = '1'
            INNER JOIN EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
            INNER JOIN (SELECT REQUEST_NO, SEQ_NO, MIN(FROM_DATE) FROM_DATE, MIN(TO_DATE) TO_DATE
            FROM LEAVE_EXTENSION GROUP BY REQUEST_NO, SEQ_NO) Q
            ON A.APP_ID = '17' AND cast(A.REQUEST_NO as INT) = cast(Q.REQUEST_NO as INT) + cast(Q.SEQ_NO as INT)
                  
            UNION
                  
	        SELECT COUNT(A.REQUESTOR_ID) AS CNT
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                FROM ROUTING WITH (NOLOCK)
                WHERE APP_ID= '20' AND  EMP_NO = '%EMPNO' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE='1') A
            INNER JOIN APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = '1'
            INNER JOIN EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
            INNER JOIN (SELECT REQUEST_NO, MIN(FIELD_EFF_DATE) FIELD_EFF_DATE FROM TRACKING_DETAILS GROUP BY REQUEST_NO) R
            ON A.APP_ID = '20' AND A.REQUEST_NO = R.REQUEST_NO
                  
            UNION
                  
	        SELECT COUNT(A.REQUESTOR_ID) AS CNT
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                FROM ROUTING WITH (NOLOCK)
                WHERE APP_ID= '60' AND  EMP_NO = '%EMPNO' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE='1') A
            INNER JOIN APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = '1'
            INNER JOIN EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
            INNER JOIN (SELECT CONTRACT_ID, MIN(OFFER_ISSUE_DATE) FROM_DATE, MIN(CNTRCT_END_DATE) TO_DATE
            FROM CONTRACTS GROUP BY CONTRACT_ID) S
            ON A.APP_ID = '60' AND A.REQUEST_NO = S.CONTRACT_ID
                  
            UNION
                  
	        SELECT COUNT(A.REQUESTOR_ID) AS CNT
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                FROM ROUTING WITH (NOLOCK)
                WHERE APP_ID= '75' AND  EMP_NO = '%EMPNO' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE='1'
                ) A
            INNER JOIN APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = '1'
            INNER JOIN EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
            INNER JOIN OOOASSIGNMENT T ON  A.REQUEST_NO = T.REQUEST_NO AND  A.REQUESTOR_ID = T.EMP_NO                         
                  
            UNION
                  
	          SELECT COUNT(A.REQUESTOR_ID) AS CNT
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                FROM ROUTING WITH (NOLOCK)
                WHERE APP_ID= '104' AND  EMP_NO = '%EMPNO' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE='1'
                ) A
            INNER JOIN APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = '1'
            INNER JOIN EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
            INNER JOIN (SELECT TRAVEL_REQ_NO, MIN(TRAVEL_DATE_TIME) TRAVEL_DATE_TIME
                        FROM TRV_REQ_DETAILS GROUP BY TRAVEL_REQ_NO
                        ) L ON A.APP_ID = '104' AND A.REQUEST_NO = L.TRAVEL_REQ_NO
                  
	          UNION
                        
            SELECT COUNT(A.REQUESTOR_ID) AS CNT
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                  FROM %HR_DB%ROUTING WITH (NOLOCK)
                  WHERE APP_ID= '32' AND  EMP_NO = '%EMPNO' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE='1'
                  ) A
            INNER JOIN %HR_DB%APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = '1'
            INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
            INNER JOIN %HR_DB%SE_NEW_EMPLOYEE U ON A.APP_ID = '32' AND A.REQUEST_NO = U.REQUEST_NO
                        
            UNION
            
            SELECT COUNT(A.REQUESTOR_ID) AS CNT
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                FROM ROUTING WITH (NOLOCK)
                WHERE APP_ID= '133' AND  EMP_NO = '%EMPNO' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE='1'
                ) A
            INNER JOIN APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = '1'
            INNER JOIN EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
            INNER JOIN SE_END_EMPLOYEE U ON A.APP_ID = '133' AND A.REQUEST_NO = U.REQUEST_NO
            
            UNION
            
            SELECT COUNT(A.REQUESTOR_ID) AS CNT
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                  FROM %HR_DB%ROUTING WITH (NOLOCK)
                  WHERE APP_ID= '134' AND  EMP_NO = '%EMPNO' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE='1'
                  ) A
            INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
            INNER JOIN %HR_DB%EMP_CLEARANCE_FORM U ON A.REQUEST_NO = U.REQUEST_NO
                  
            UNION
                                      
	          SELECT COUNT(REQUESTOR_ID) AS CNT
            FROM
            (
	            SELECT C.EMP_NO AS REQUESTOR_ID,D.EMP_FULL_NAME AS EMP_FULL_NAME,'Clearance Form' APP_NAME,C.REQUEST_NO,'134' AS APP_ID,
	            REQUEST_DATE AS FROM_DATE,NULL AS TO_DATE,0 AS OOOType_ID,[SIGN],LATER_SIGN,A.EMP_NO,
	            CASE WHEN CNT > 0 AND LATER_SIGN = '1' THEN '1' ELSE '0' END AS HR_SIGN
	            FROM EMP_CLEARNACE_SETUP A
	            JOIN EMP_CLEARANCE_RESPONSES B ON A.CLEARNACE_ID = B.CLEARNACE_ID
	            JOIN EMP_CLEARANCE_FORM C ON B.REQUEST_NO = C.REQUEST_NO 
	            JOIN EMPLOYEES D ON C.EMP_NO = D.EMP_NO
	            LEFT JOIN(SELECT B.REQUEST_NO,COUNT(A.EMP_NO) as CNT FROM EMP_CLEARNACE_SETUP A
				            JOIN EMP_CLEARANCE_RESPONSES B ON A.CLEARNACE_ID = B.CLEARNACE_ID
				            WHERE [SIGN] = 0 AND (LATER_SIGN IS NULL OR LATER_SIGN = '0')
				            GROUP BY B.REQUEST_NO
		            ) E ON C.REQUEST_NO = E.REQUEST_NO
	            WHERE A.EMP_NO = '%EMPNO'
	            AND [SIGN] = 0
            ) A
            WHERE HR_SIGN = 0

            UNION
                  
	        SELECT COUNT(A.REQUESTOR_ID) AS CNT
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                FROM ROUTING WITH (NOLOCK)
                WHERE APP_ID= '182' AND  EMP_NO = '%EMPNO' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE='1'
                ) A
            INNER JOIN APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = '1'
            INNER JOIN EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
            INNER JOIN BADGE_REQUEST V ON A.APP_ID = '182' AND A.REQUEST_NO = V.BADGE_REQUEST_ID

	        UNION
                  
	        SELECT COUNT(A.REQUESTOR_ID) AS CNT
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                FROM ROUTING WITH (NOLOCK)
                WHERE APP_ID= '183' AND  EMP_NO = '%EMPNO' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE='1'
                ) A
            INNER JOIN APPLICATIONS C ON A.APP_ID = C.APP_ID 
            INNER JOIN EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
            INNER JOIN GENERAL_REQUEST V ON A.REQUEST_NO = V.REQ_NO
                  
            UNION
                  
	        SELECT COUNT(A.REQUESTOR_ID) AS CNT
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                FROM ROUTING WITH (NOLOCK)
                WHERE (APP_ID= '216' or APP_ID= '217') AND  EMP_NO = '%EMPNO' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE='1'
                ) A
            INNER JOIN EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
            INNER JOIN TKT_INFO_HDR D ON D.TKT_ID = A.REQUEST_NO    
            
            UNION
            
             SELECT COUNT(A.REQUESTOR_ID) AS CNT
            FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
                FROM ROUTING  WITH (NOLOCK)
                WHERE APP_ID = '14' AND  EMP_NO = '%EMPNO' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE='1'
                ) A
            INNER JOIN EMPLOYEES B WITH (NOLOCK) ON A.REQUESTOR_ID = B.EMP_NO
            INNER JOIN (SELECT TRAVEL_REQ_NO, MIN(TRAVEL_DATE_TIME) TRAVEL_DATE_TIME
                        FROM TRV_REQ_DETAILS WITH (NOLOCK) GROUP BY TRAVEL_REQ_NO
                        ) L ON A.REQUEST_NO = L.TRAVEL_REQ_NO
        )X  
  </GET_NOTIFICATION_COUNTER>
  <GET_SIGN_NOTIFICATION>
    DECLARE @PageNumber INT = %4%, @RowsPerPage INT = %5%;
    with CTERESULT as(
    SELECT ROW_NUMBER() over(ORDER BY REQUEST_NO DESC)  RowNumber, REQUESTOR_ID,EMP_FULL_NAME,APP_NAME,REQUEST_NO,FROM_DATE,TO_DATE,OOOType_ID,APP_ID
    FROM
    (
        SELECT (A.REQUESTOR_ID),B.EMP_FULL_NAME%LANG EMP_FULL_NAME,C.TYPE_DSCR%LANG APP_NAME,A.REQUEST_NO,A.APP_ID,
        D.FROM_DATE,D.TO_DATE,0 AS OOOType_ID,COUNT(DOCID) AS DOCID
        FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS                  
                    FROM %HR_DB%ROUTING  WITH (NOLOCK)                
                    WHERE  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE &lt;&gt; '2' 
                    AND ( ROUTING.APP_ID = '1' OR ROUTING.APP_ID IN (SELECT ROUTING_APP_ID FROM LEAVE_TYPES WHERE ROUTING_APP_ID IS NOT NULL) )      
            ) A            
        INNER JOIN %HR_DB%EMPLOYEES B WITH (NOLOCK) ON A.REQUESTOR_ID = B.EMP_NO     
        INNER JOIN %HR_DB%LEAVE F WITH (NOLOCK) ON F.REQUEST_NO = A.REQUEST_NO    
        INNER JOIN (SELECT REQUEST_NO, MIN(FROM_DATE%MODE) FROM_DATE, MIN(TO_DATE%MODE) TO_DATE            
                        FROM %HR_DB%LEAVE_DTL WITH (NOLOCK)
                        GROUP BY REQUEST_NO) D ON  F.REQUEST_NO = D.REQUEST_NO  
        INNER JOIN %HR_DB%LEAVE_DTL E WITH (NOLOCK) ON E.REQUEST_NO = D.REQUEST_NO 
        INNER JOIN %HR_DB%LEAVE_TYPES C WITH (NOLOCK) ON E.LEAVE_TYPE = C.LEAVE_TYPE  
        LEFT JOIN %HR_DB%DMSDOCINFO G WITH (NOLOCK) ON CAST(F.REQUEST_NO AS VARCHAR) = G.REQNO AND APPID = '1'
        WHERE F.STATUS_ID NOT IN ('5') AND B.EMP_STATUS_NO = 'A' AND (F.IS_DEL != 1 OR F.IS_DEL IS NULL)  
        GROUP BY A.REQUESTOR_ID,B.EMP_FULL_NAME%LANG ,C.TYPE_DSCR%LANG ,A.REQUEST_NO,A.APP_ID,D.FROM_DATE,D.TO_DATE
          
        UNION
          
        SELECT (A.REQUESTOR_ID),B.EMP_FULL_NAME%LANG EMP_FULL_NAME,'SHORT LEAVE REQUEST' AS APP_NAME,A.REQUEST_NO,A.APP_ID,
        D.FROM_DATE,D.TO_DATE,0 AS OOOType_ID,COUNT(DOCID) AS DOCID
        FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
            FROM %HR_DB%ROUTING WITH (NOLOCK)
            WHERE APP_ID= '42' AND EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = 0 AND TYPE='1'
            ) A
        INNER JOIN %HR_DB%EMPLOYEES B WITH (NOLOCK) ON A.REQUESTOR_ID = B.EMP_NO
        INNER JOIN %HR_DB%LEAVE F WITH (NOLOCK) ON F.REQUEST_NO = A.REQUEST_NO    
        INNER JOIN (SELECT REQUEST_NO, MIN(FROM_DATE%MODE) FROM_DATE, MIN(TO_DATE%MODE) TO_DATE
                    FROM %HR_DB%LEAVE_DTL WITH (NOLOCK) GROUP BY REQUEST_NO
                    ) D ON A.APP_ID = '42' AND A.REQUEST_NO = D.REQUEST_NO
        INNER JOIN %HR_DB%LEAVE_DTL E WITH (NOLOCK) ON E.REQUEST_NO = D.REQUEST_NO 
        INNER JOIN %HR_DB%LEAVE_TYPES C WITH (NOLOCK) ON E.LEAVE_TYPE = C.LEAVE_TYPE  
        LEFT JOIN %HR_DB%DMSDOCINFO G WITH (NOLOCK) ON CAST(F.REQUEST_NO AS VARCHAR) = G.REQNO AND APPID = '42'
        WHERE F.STATUS_ID NOT IN ('5') AND B.EMP_STATUS_NO = 'A' AND (F.IS_DEL != 1 OR F.IS_DEL IS NULL)  
        GROUP BY A.REQUESTOR_ID,B.EMP_FULL_NAME%LANG ,A.REQUEST_NO,A.APP_ID,D.FROM_DATE,D.TO_DATE
          
        UNION
          
        SELECT (A.REQUESTOR_ID),B.EMP_FULL_NAME%LANG EMP_FULL_NAME,C.APP_NAME%LANG APP_NAME,A.REQUEST_NO,A.APP_ID,
        H.FROM_DATE, H.TO_DATE,0 AS OOOType_ID,COUNT(DOCID) AS DOCID
        FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
            FROM %HR_DB%ROUTING WITH (NOLOCK) 
            WHERE APP_ID= '2' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE='1'
            ) A
        INNER JOIN %HR_DB%APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = 1
        INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
        INNER JOIN (SELECT E.REQUEST_NO, MIN(E.FROM_DATE%MODE) FROM_DATE, MIN(E.TO_DATE%MODE) TO_DATE
                    FROM %HR_DB%LEAVE_DTL E WITH (NOLOCK)
                    WHERE EXISTS (SELECT 1 FROM %HR_DB%LEAVE F WHERE F.STATUS_ID &lt;&gt; '5' AND F.REQUEST_NO = E.REQUEST_NO)
    AND EXISTS (SELECT 1 FROM %HR_DB%LEAVE_RETURN G WHERE G.REQUEST_NO = E.REQUEST_NO)
    GROUP BY E.REQUEST_NO
    ) H  ON A.APP_ID = '2' AND A.REQUEST_NO = H.REQUEST_NO
    LEFT JOIN DMSDOCINFO G WITH (NOLOCK) ON CAST(H.REQUEST_NO AS VARCHAR) = G.REQNO AND APPID = '2'
    GROUP BY A.REQUESTOR_ID,B.EMP_FULL_NAME%LANG,C.APP_NAME%LANG ,A.REQUEST_NO,A.APP_ID, H.FROM_DATE, H.TO_DATE

    UNION

    SELECT (A.REQUESTOR_ID),B.EMP_FULL_NAME%LANG EMP_FULL_NAME,C.APP_NAME%LANG APP_NAME,A.REQUEST_NO,A.APP_ID,
    K.SCH_START_DATE%MODE AS FROM_DATE, K.SCH_END_DATE%MODE AS TO_DATE,0 AS OOOType_ID,0 AS DOCID
    FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
    FROM %HR_DB%ROUTING WITH (NOLOCK)
    WHERE APP_ID= '3' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE='1'
    ) A
    INNER JOIN %HR_DB%APPLICATIONS C WITH (NOLOCK) ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = '1'
    INNER JOIN %HR_DB%EMPLOYEES B WITH (NOLOCK) ON A.REQUESTOR_ID = B.EMP_NO
    INNER JOIN (SELECT I.REQUEST_NO, J.SCH_START_DATE%MODE, J.SCH_END_DATE%MODE
    FROM %HR_DB%TMS_PROG_REQUEST I WITH (NOLOCK)
    INNER JOIN %HR_DB%TMS_CRS_SCHEDULE J ON I.SCH_ID = J.SCH_ID AND I.PLAN_ID = J.PLAN_ID AND I.PROG_ID = J.PROG_ID
    ) K ON A.APP_ID = '3' AND A.REQUEST_NO = K.REQUEST_NO

    UNION

    SELECT (A.REQUESTOR_ID),B.EMP_FULL_NAME%LANG EMP_FULL_NAME,C.APP_NAME%LANG APP_NAME,A.REQUEST_NO,A.APP_ID,
    L.TRAVEL_DATE_TIME AS FROM_DATE, L.TRAVEL_DATE_TIME AS TO_DATE,0 AS OOOType_ID,COUNT(DOCID) AS DOCID
    FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
    FROM %HR_DB%ROUTING  WITH (NOLOCK)
    WHERE APP_ID IN ('4','204') AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE='1'
    ) A
    INNER JOIN %HR_DB%APPLICATIONS C WITH (NOLOCK) ON C.APP_ID = '4' AND C.IS_INCLUDED = '1'
    INNER JOIN %HR_DB%EMPLOYEES B WITH (NOLOCK) ON A.REQUESTOR_ID = B.EMP_NO
    INNER JOIN (SELECT TRAVEL_REQ_NO, MIN(TRAVEL_DATE_TIME%MODE) TRAVEL_DATE_TIME
    FROM %HR_DB%TRV_REQ_DETAILS WITH (NOLOCK) GROUP BY TRAVEL_REQ_NO
    ) L ON A.APP_ID IN ('4','204') AND A.REQUEST_NO = L.TRAVEL_REQ_NO
    LEFT JOIN DMSDOCINFO G WITH (NOLOCK) ON CAST(L.TRAVEL_REQ_NO AS VARCHAR) = G.REQNO AND APPID IN ('4','204')
    GROUP BY A.REQUESTOR_ID,B.EMP_FULL_NAME%LANG,C.APP_NAME%LANG,A.REQUEST_NO,A.APP_ID,L.TRAVEL_DATE_TIME, L.TRAVEL_DATE_TIME

    UNION

    SELECT (A.REQUESTOR_ID),B.EMP_FULL_NAME%LANG EMP_FULL_NAME,C.APP_NAME%LANG APP_NAME,A.REQUEST_NO,A.APP_ID,
    M.EVAL_DATE%MODE AS FROM_DATE, M.REVIEW_END_DATE%MODE AS TO_DATE,0 AS OOOType_ID,0 AS DOCID
    FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
    FROM %HR_DB%ROUTING WITH (NOLOCK)
    WHERE APP_ID= '5' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE='1'
    ) A
    INNER JOIN %HR_DB%APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = '1'
    INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
    INNER JOIN %HR_DB%EMP_EVAL M ON A.APP_ID = '5' AND A.REQUEST_NO = M.EVAL_ID

    UNION

    SELECT (A.REQUESTOR_ID),B.EMP_FULL_NAME%LANG EMP_FULL_NAME,C.APP_NAME%LANG APP_NAME,A.REQUEST_NO,A.APP_ID,
    N.EXAM_DATE%MODE AS FROM_DATE, N.EXP_DATE%MODE AS TO_DATE,0 AS OOOType_ID,0 AS DOCID
    FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
    FROM %HR_DB%ROUTING  WITH (NOLOCK)
    WHERE APP_ID= '7' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE='1') A
    INNER JOIN APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = '1'
    INNER JOIN EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
    INNER JOIN TMS_EMP_CERTIFICATION N ON A.APP_ID = '7' AND A.REQUEST_NO = N.REQUEST_NO

    UNION

    SELECT (A.REQUESTOR_ID),B.EMP_FULL_NAME%LANG EMP_FULL_NAME,C.APP_NAME%LANG APP_NAME,A.REQUEST_NO,A.APP_ID,
    P.FROM_DATE, P.TO_DATE,0 AS OOOType_ID,0 AS DOCID
    FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
    FROM %HR_DB%ROUTING WITH (NOLOCK)
    WHERE APP_ID= '15' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE='1'
    ) A
    INNER JOIN %HR_DB%APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = '1'
    INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
    INNER JOIN (SELECT REQUEST_NO, MIN(FROM_DATE%MODE) FROM_DATE, MIN(TO_DATE%MODE) TO_DATE
    FROM %HR_DB%LEAVE_DTL GROUP BY REQUEST_NO) P
    ON A.APP_ID = '15' AND A.REQUEST_NO = P.REQUEST_NO

    UNION

    SELECT (A.REQUESTOR_ID),B.EMP_FULL_NAME%LANG EMP_FULL_NAME,C.APP_NAME%LANG APP_NAME,A.REQUEST_NO,A.APP_ID,
    Q.FROM_DATE, Q.TO_DATE,0 AS OOOType_ID,0 AS DOCID
    FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
    FROM %HR_DB%ROUTING WITH (NOLOCK)
    WHERE APP_ID = '17' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE='1') A
    INNER JOIN %HR_DB%APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = '1'
    INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
    INNER JOIN (SELECT REQUEST_NO, SEQ_NO, MIN(FROM_DATE%MODE) FROM_DATE, MIN(TO_DATE%MODE) TO_DATE
    FROM %HR_DB%LEAVE_EXTENSION GROUP BY REQUEST_NO, SEQ_NO) Q
    ON A.APP_ID = '17' AND cast(A.REQUEST_NO as INT) = cast(Q.REQUEST_NO as INT) + cast(Q.SEQ_NO as INT)

    UNION

    SELECT (A.REQUESTOR_ID),B.EMP_FULL_NAME%LANG EMP_FULL_NAME,C.APP_NAME%LANG APP_NAME,A.REQUEST_NO,A.APP_ID,
    R.FIELD_EFF_DATE AS FROM_DATE, R.FIELD_EFF_DATE AS TO_DATE,0 AS OOOType_ID,0 AS DOCID
    FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
    FROM %HR_DB%ROUTING WITH (NOLOCK)
    WHERE APP_ID= '20' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE='1') A
    INNER JOIN %HR_DB%APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = '1'
    INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
    INNER JOIN (SELECT REQUEST_NO, MIN(FIELD_EFF_DATE%MODE) FIELD_EFF_DATE FROM %HR_DB%TRACKING_DETAILS GROUP BY REQUEST_NO) R
    ON A.APP_ID = '20' AND A.REQUEST_NO = R.REQUEST_NO

    UNION

    SELECT (A.REQUESTOR_ID),B.EMP_FULL_NAME%LANG EMP_FULL_NAME,C.APP_NAME%LANG APP_NAME,A.REQUEST_NO,A.APP_ID,
    S.FROM_DATE,S.TO_DATE,0 AS OOOType_ID,0 AS DOCID
    FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
    FROM %HR_DB%ROUTING WITH (NOLOCK)
    WHERE APP_ID= '60' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE='1') A
    INNER JOIN %HR_DB%APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = '1'
    INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
    INNER JOIN (SELECT CONTRACT_ID, MIN(OFFER_ISSUE_DATE%MODE) FROM_DATE, MIN(CNTRCT_END_DATE%MODE) TO_DATE
    FROM %HR_DB%CONTRACTS GROUP BY CONTRACT_ID) S
    ON A.APP_ID = '60' AND A.REQUEST_NO = S.CONTRACT_ID

    UNION

    SELECT (A.REQUESTOR_ID),B.EMP_FULL_NAME%LANG EMP_FULL_NAME,C.APP_NAME%LANG APP_NAME,A.REQUEST_NO,A.APP_ID,
    T.FROM_DATETIME%MODE AS FROM_DATE,T.TO_DATETIME%MODE AS TO_DATE,T.TYPE_ID AS OOOType_ID,0 AS DOCID
    FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
    FROM %HR_DB%ROUTING WITH (NOLOCK)
    WHERE APP_ID= '75' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE='1'
    ) A
    INNER JOIN %HR_DB%APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = '1'
    INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
    INNER JOIN %HR_DB%OOOASSIGNMENT T ON  A.REQUEST_NO = T.REQUEST_NO AND  A.REQUESTOR_ID = T.EMP_NO

    UNION

    SELECT (A.REQUESTOR_ID),B.EMP_FULL_NAME%LANG EMP_FULL_NAME,C.APP_NAME%LANG APP_NAME,A.REQUEST_NO,A.APP_ID,
    L.TRAVEL_DATE_TIME AS FROM_DATE, L.TRAVEL_DATE_TIME AS TO_DATE,0 AS OOOType_ID,COUNT(DOCID) AS DOCID
    FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
    FROM %HR_DB%ROUTING WITH (NOLOCK)
    WHERE APP_ID= '104' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE='1'
    ) A
    INNER JOIN %HR_DB%APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = '1'
    INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
    INNER JOIN (SELECT TRAVEL_REQ_NO, MIN(TRAVEL_DATE_TIME%MODE) TRAVEL_DATE_TIME
    FROM %HR_DB%TRV_REQ_DETAILS GROUP BY TRAVEL_REQ_NO
    ) L ON A.APP_ID = '104' AND A.REQUEST_NO = L.TRAVEL_REQ_NO
    LEFT JOIN DMSDOCINFO G WITH (NOLOCK) ON CAST(A.REQUEST_NO AS VARCHAR) = G.REQNO AND APPID = '104'
    GROUP BY A.REQUESTOR_ID,B.EMP_FULL_NAME%LANG,C.APP_NAME%LANG,A.REQUEST_NO,A.APP_ID,L.TRAVEL_DATE_TIME,L.TRAVEL_DATE_TIME

    UNION

    SELECT (A.REQUESTOR_ID),B.EMP_FULL_NAME%LANG EMP_FULL_NAME,C.APP_NAME%LANG APP_NAME,A.REQUEST_NO,A.APP_ID,
    U.TERMINATION_DATE%MODE AS FROM_DATE,U.TERMINATION_DATE%MODE AS TO_DATE,0 AS OOOType_ID,COUNT(DOCID) AS DOCID
    FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
    FROM %HR_DB%ROUTING WITH (NOLOCK)
    WHERE APP_ID= '133' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE='1'
    ) A
    INNER JOIN %HR_DB%APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = '1'
    INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
    INNER JOIN %HR_DB%SE_END_EMPLOYEE U ON A.APP_ID = '133' AND A.REQUEST_NO = U.REQUEST_NO
    LEFT JOIN DMSDOCINFO G WITH (NOLOCK) ON CAST(U.REQUEST_NO AS VARCHAR) = G.REQNO AND APPID = '133'
    GROUP BY A.REQUESTOR_ID,B.EMP_FULL_NAME%LANG,C.APP_NAME%LANG,A.REQUEST_NO,A.APP_ID,U.TERMINATION_DATE%MODE,U.TERMINATION_DATE%MODE

    UNION

    SELECT REQUESTOR_ID,EMP_FULL_NAME,APP_NAME,REQUEST_NO,APP_ID,FROM_DATE,NULL AS TO_DATE,0 AS OOOType_ID,0 AS DOCID
    FROM
    (
    SELECT C.EMP_NO AS REQUESTOR_ID,D.EMP_FULL_NAME%LANG AS EMP_FULL_NAME,'Clearance Form' APP_NAME,C.REQUEST_NO,'134' AS APP_ID,
    REQUEST_DATE AS FROM_DATE,NULL AS TO_DATE,0 AS OOOType_ID,[SIGN],LATER_SIGN,A.EMP_NO,
    CASE WHEN CNT > 0 AND LATER_SIGN = '1' THEN '1' ELSE '0' END AS HR_SIGN
    FROM EMP_CLEARNACE_SETUP A
    JOIN EMP_CLEARANCE_RESPONSES B ON A.CLEARNACE_ID = B.CLEARNACE_ID
    JOIN EMP_CLEARANCE_FORM C ON B.REQUEST_NO = C.REQUEST_NO
    JOIN EMPLOYEES D ON C.EMP_NO = D.EMP_NO
    LEFT JOIN(SELECT B.REQUEST_NO,COUNT(A.EMP_NO) as CNT FROM EMP_CLEARNACE_SETUP A
    JOIN EMP_CLEARANCE_RESPONSES B ON A.CLEARNACE_ID = B.CLEARNACE_ID
    WHERE [SIGN] = 0 AND (LATER_SIGN IS NULL OR LATER_SIGN = '0')
    GROUP BY B.REQUEST_NO
    ) E ON C.REQUEST_NO = E.REQUEST_NO
    WHERE A.EMP_NO = '%EMP_NO%'
    AND [SIGN] = 0
    ) A
    WHERE HR_SIGN = 0

    UNION

    SELECT (A.REQUESTOR_ID),B.EMP_FULL_NAME%LANG EMP_FULL_NAME,C.APP_NAME%LANG APP_NAME,A.REQUEST_NO,A.APP_ID,
    V.REQUEST_DATE%MODE AS FROM_DATE, V.EXP_DATE%MODE AS TO_DATE,0 AS OOOType_ID,0 AS DOCID
    FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
    FROM %HR_DB%ROUTING WITH (NOLOCK)
    WHERE APP_ID= '182' AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE='1'
    ) A
    INNER JOIN %HR_DB%APPLICATIONS C ON A.APP_ID = C.APP_ID AND C.IS_INCLUDED = '1'
    INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
    INNER JOIN %HR_DB%BADGE_REQUEST V ON A.APP_ID = '182' AND A.REQUEST_NO = V.BADGE_REQUEST_ID

    UNION

    SELECT (A.REQUESTOR_ID),B.EMP_FULL_NAME%LANG EMP_FULL_NAME,'Ticketing' APP_NAME,A.REQUEST_NO,A.APP_ID,
    TKT_ISSUE_DATE FROM_DATE, NULL TO_DATE,0 AS OOOType_ID,0 AS DOCID
    FROM (SELECT APP_ID, REQUEST_NO, REQUESTOR_ID, EMP_NO, NEXT_AWAIT, SIGNATURE, STATUS
    FROM %HR_DB%ROUTING WITH (NOLOCK)
    WHERE (APP_ID= '216' or APP_ID= '217') AND  EMP_NO = '%EMP_NO%' AND NEXT_AWAIT = '1' AND STATUS = '0' AND SIGNATURE = '0' AND TYPE='1'
    ) A
    INNER JOIN %HR_DB%EMPLOYEES B ON A.REQUESTOR_ID = B.EMP_NO
    INNER JOIN %HR_DB%TKT_INFO_HDR D ON D.TKT_ID = A.REQUEST_NO
    )a
    )SELECT * FROM CTERESULT
    WHERE RowNumber between ((@PageNumber-1)*@RowsPerPage)+1
    AND @RowsPerPage*(@PageNumber)
    ORDER BY CTERESULT.FROM_DATE DESC
  </GET_SIGN_NOTIFICATION>
  <FETCH_EMPLOYEES_FOR_ASSIGN>
    DECLARE @RowsPerPage INT = 12, @PageNumber INT = %PAGE% ;
    with CTERESULT as(

    select ROW_NUMBER() over(ORDER BY HIRE_DATE DESC)  RowNumber, EMP_NO, TITLE, NAME, EMAIL,
    NAME AS BUNIT, DEPT, BRANCH, HIRE_DATE
    from (

    SELECT DISTINCT E.EMP_NO, TITLE_DSCR AS TITLE, E.EMP_FULL_NAME AS NAME, E.Email_Add1 AS EMAIL,
    BU.NAME AS BUNIT, D.DEPT_DSCR AS DEPT, B.BRANCH_NAME AS BRANCH, E.HIRE_DATE AS HIRE_DATE
    FROM EMPLOYEES E
    LEFT OUTER JOIN BUSNS_UNIT BU ON E.BUSNS_UNIT_NO= BU.BUSNS_UNIT_NO
    LEFT OUTER JOIN DEPARTMENT D ON E.DEPT_NO=D.DEPT_NO
    LEFT OUTER JOIN BRANCH B ON E.BRANCH_NO= B.BRANCH_NO
    LEFT OUTER JOIN TITLE T ON T.TITLE_NO=E.TITLE_NO
    WHERE (E.EMP_NO != '%EMP%' AND E.EMP_NO NOT IN  (SELECT EMP_NO FROM GENERAL_REQ_ASSIGNMENT WHERE REQ_NO IN (%REQS%)))
    %POSITIONBU% %POSITIONBR% %POSITIONDEP%
    %CRITERIA%
    )a
    )
    select * from CTERESULT
    where RowNumber between ((@PageNumber-1)*@RowsPerPage)+1
    AND @RowsPerPage*(@PageNumber)
  </FETCH_EMPLOYEES_FOR_ASSIGN>
  <FETCH_ASSIGNEES>
    SELECT EMP_NO,TITLE, NAME, EMAIL,BUNIT, DEPT, BRANCH, ASSIGN_DATE
    FROM(
        SELECT DISTINCT A.EMP_NO,TITLE_DSCR AS TITLE, EMP_FULL_NAME%LANG AS NAME, EMAIL_ADD1 AS EMAIL,
        E.BUSNS_UNIT_NO AS BUNIT, E.DEPT_NO AS DEPT, E.BRANCH_NO AS BRANCH, ASSIGN_DATE
        FROM GENERAL_REQ_ASSIGNMENT A
        LEFT JOIN  EMPLOYEES E ON A.EMP_NO=E.EMP_NO
        LEFT OUTER JOIN TITLE T ON T.TITLE_NO=E.TITLE_NO
        WHERE REQ_NO  IN  (%REQS%)
    )A
    ORDER BY A.ASSIGN_DATE DESC
  </FETCH_ASSIGNEES>
</QUERIES>