Commit b3695e6a authored by msinkar's avatar msinkar

adding the changes for attendance compliance dashboard

git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@187868 ce508802-f39f-4f6c-b175-0d175dae99d5
parent 6a6234b2
...@@ -320,7 +320,8 @@ public class AttendanceCompliance extends ValidatorEJB implements AttendanceComp ...@@ -320,7 +320,8 @@ public class AttendanceCompliance extends ValidatorEJB implements AttendanceComp
pstmt.close(); pstmt.close();
pstmt = null; pstmt = null;
} }
sql = "SELECT SUM( CASE WHEN REP_NONREP='R' THEN 1 ELSE 0 END ) AS Reported , " + //commented by mrunalini sinkar on 20-july-2018(start)
/*sql = "SELECT SUM( CASE WHEN REP_NONREP='R' THEN 1 ELSE 0 END ) AS Reported , " +
"SUM( CASE WHEN REP_NONREP='NR' THEN 1 ELSE 0 END ) AS NonReported, " + "SUM( CASE WHEN REP_NONREP='NR' THEN 1 ELSE 0 END ) AS NonReported, " +
"SUM( CASE WHEN REP_NONREP='R' THEN 1 ELSE 0 END + CASE " + "SUM( CASE WHEN REP_NONREP='R' THEN 1 ELSE 0 END + CASE " +
"WHEN REP_NONREP='NR' THEN 1 ELSE 0 END) AS TOTAL FROM " + "WHEN REP_NONREP='NR' THEN 1 ELSE 0 END) AS TOTAL FROM " +
...@@ -359,7 +360,39 @@ public class AttendanceCompliance extends ValidatorEJB implements AttendanceComp ...@@ -359,7 +360,39 @@ public class AttendanceCompliance extends ValidatorEJB implements AttendanceComp
"ON STRG_MEET.STRG_CODE = STRG_CUSTOMER.SC_CODE WHERE SALES_PERS_AV.SALESPERS " + "ON STRG_MEET.STRG_CODE = STRG_CUSTOMER.SC_CODE WHERE SALES_PERS_AV.SALESPERS " +
"IN (SELECT emp_code FROM employee START WITH emp_code = (SELECT emp_code " + "IN (SELECT emp_code FROM employee START WITH emp_code = (SELECT emp_code " +
"FROM users WHERE code = '"+loginId+"' AND STATUS='A' ) " + "FROM users WHERE code = '"+loginId+"' AND STATUS='A' ) " +
"CONNECT BY prior emp_code = report_to ) )A "; "CONNECT BY prior emp_code = report_to ) )A ";*/
//commented by mrunalini sinkar on 20-july-2018 Required to much time to execute quey(end)
//Added by mrunalini sinkar on 20-july-2018 Required to much time to execute quey(end)
sql="SELECT SUM(CASE WHEN REP_NONREP='R' THEN 1 ELSE 0 END ) AS Reported , " +
" SUM(CASE WHEN REP_NONREP='NR' THEN 1 ELSE 0 END ) AS NonReported, " +
" SUM(CASE WHEN REP_NONREP='R' THEN 1 ELSE 0 END + CASE WHEN REP_NONREP='NR' THEN 1 ELSE 0 END) AS TOTAL " +
" FROM " +
" (SELECT SALES_PERS_AV.AVAILABLE_DY ,SPRS_ACT_TRAN.ACTIVITY_CODE, " +
" (CASE WHEN ( ROW_NUMBER() OVER ( PARTITION BY SALES_PERS_AV.SALESPERS ,AVAILABLE_DY ORDER BY SALES_PERS_AV.SALESPERS ,AVAILABLE_DY ) ) = 1 AND SPRS_ACT_TRAN.SALES_PERS IS NOT NULL THEN 'R' " +
" WHEN ( ROW_NUMBER() OVER ( PARTITION BY SALES_PERS_AV.SALESPERS ,AVAILABLE_DY ORDER BY SALES_PERS_AV.SALESPERS ,AVAILABLE_DY ) ) <> 1 AND SPRS_ACT_TRAN.SALES_PERS IS NOT NULL THEN '-' " +
" ELSE 'NR' END ) AS REP_NONREP ,NVL(STRG_CUSTOMER.FIRST_NAME, '')|| NVL(STRG_CUSTOMER.MIDDLE_NAME, '')|| NVL(STRG_CUSTOMER.LAST_NAME, '') AS CUSTOMER_NAME " +
" FROM " +
" (SELECT users.CODE AS SALESPERS ,AV_DATES.available_dy AS AVAILABLE_DY " +
" FROM " +
" (SELECT CODE ,'a' AS a FROM users) users, " +
" (SELECT dt AS available_dy ,'a' AS a FROM sfa_time WHERE DT BETWEEN (SELECT fr_date FROM period WHERE code='"+period+"') AND (SELECT to_date FROM period WHERE code='"+period+"')) AV_DATES " +
" WHERE users.a = AV_DATES.a AND users.CODE IN " +
" (SELECT emp_code FROM employee START WITH emp_code =(SELECT emp_code FROM users WHERE code = '"+loginId+"' AND STATUS='A') CONNECT BY prior emp_code = report_to) " +
" MINUS " +
" SELECT EMPLOYEE.EMP_CODE AS SALESPERS,holiday.hol_date AS AVAILABLE_DY FROM holiday,EMPLOYEE WHERE holiday.hol_tblno = EMPLOYEE.hol_tblno " +
" AND holiday.hol_date BETWEEN (SELECT fr_date FROM period WHERE code='"+period+"') AND (SELECT to_date FROM period WHERE code ='"+period+"') " +
" AND emp_code IN((SELECT emp_code FROM employee START WITH emp_code = (SELECT emp_code FROM users WHERE code = '"+loginId+"' AND STATUS='A') CONNECT BY prior emp_code = report_to)) " +
" AND NOT EXISTS " +
" (SELECT sales_pers,event_date FROM sprs_act_tran s WHERE s.sales_pers = employee.emp_code AND s.event_date = holiday.hol_date)) SALES_PERS_AV " +
" LEFT OUTER JOIN " +
" (SELECT S.SALES_PERS,S.EVENT_DATE,S.DCR_ID,S.ACTIVITY_CODE FROM SPRS_ACT_TRAN S WHERE S.ACTIVITY_CODE <> 'PR' AND S.CONFIRMED = 'Y') "+
" SPRS_ACT_TRAN ON SPRS_ACT_TRAN.SALES_PERS = SALES_PERS_AV.SALESPERS AND SPRS_ACT_TRAN.EVENT_DATE = SALES_PERS_AV.AVAILABLE_DY " +
" LEFT OUTER JOIN (SELECT S.SALES_PERS,S.DCR_ID,S.EVENT_DATE,S.STRG_CODE FROM STRG_MEET S WHERE S.EVENT_TYPE <> 'PR') "+
" STRG_MEET ON SPRS_ACT_TRAN.SALES_PERS = STRG_MEET.SALES_PERS AND SPRS_ACT_TRAN.EVENT_DATE = STRG_MEET.EVENT_DATE "+
" AND SPRS_ACT_TRAN.DCR_ID = STRG_MEET.DCR_ID " +
" LEFT OUTER JOIN STRG_CUSTOMER ON STRG_MEET.STRG_CODE = STRG_CUSTOMER.SC_CODE " +
" WHERE SALES_PERS_AV.SALESPERS IN(SELECT emp_code FROM employee START WITH emp_code =(SELECT emp_code FROM users WHERE code = '"+loginId+"' AND STATUS='A')CONNECT BY prior emp_code = report_to))A " ;
pstmt = conn.prepareStatement(sql); pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery(); rs = pstmt.executeQuery();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment