Commit d218a3d3 authored by sbade's avatar sbade

updated aql for dashboard data as per given bye client


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@97780 ce508802-f39f-4f6c-b175-0d175dae99d5
parent 85c104c8
...@@ -13,9 +13,7 @@ import java.text.SimpleDateFormat; ...@@ -13,9 +13,7 @@ import java.text.SimpleDateFormat;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Calendar; import java.util.Calendar;
import java.util.Date; import java.util.Date;
import java.util.HashMap;
import java.util.LinkedHashMap; import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map; import java.util.Map;
import javax.ejb.Stateless; import javax.ejb.Stateless;
...@@ -46,13 +44,13 @@ public class CustomerInfoEJB extends ValidatorEJB implements CustomerInfoRemote, ...@@ -46,13 +44,13 @@ public class CustomerInfoEJB extends ValidatorEJB implements CustomerInfoRemote,
PreparedStatement pstmt = null; PreparedStatement pstmt = null;
Connection conn = null; Connection conn = null;
ConnDriver connDriver = new ConnDriver(); ConnDriver connDriver = new ConnDriver();
DashboardUtility dashbordUtil = null; //DashboardUtility dashbordUtil = null;
Date frmDate = null; Date frmDate = null;
Date toDate = null; Date toDate = null;
try try
{ {
System.out.println(" Inside CustomerInfoEJB for getCurrentReceivable Method Data Soruc Name ="+dataSourceName+" custCode:"+custCode+" lastMonth is =" + lastMonth); System.out.println(" Inside CustomerInfoEJB for getCurrentReceivable Method Data Soruc Name ="+dataSourceName+" custCode:"+custCode+" lastMonth is =" + lastMonth);
dashbordUtil = new DashboardUtility(); DashboardUtility dashbordUtil = new DashboardUtility();
conn = connDriver.getConnectDB(dataSourceName); conn = connDriver.getConnectDB(dataSourceName);
connDriver = null; connDriver = null;
rawDataCurntRecvbleJson = new JSONObject(); rawDataCurntRecvbleJson = new JSONObject();
......
...@@ -21,7 +21,7 @@ public class SalesInventory extends ValidatorEJB implements SalesInventoryRemote ...@@ -21,7 +21,7 @@ public class SalesInventory extends ValidatorEJB implements SalesInventoryRemote
GenericUtility genericUtility = GenericUtility.getInstance(); GenericUtility genericUtility = GenericUtility.getInstance();
//1.This is the main method to show the parent graph //1.This is the main method to show the parent graph
@SuppressWarnings("unchecked") @SuppressWarnings("unchecked")
public JSONObject getSalesInventoryDivWise(String dataSourceName, String month, String from_mns, String to_mns ) throws RemoteException, ITMException public JSONObject getSalesInventoryDivWise(String dataSourceName, String month, String nomns) throws RemoteException, ITMException
{ {
JSONObject rawDataJson = new JSONObject(); JSONObject rawDataJson = new JSONObject();
...@@ -40,7 +40,7 @@ public class SalesInventory extends ValidatorEJB implements SalesInventoryRemote ...@@ -40,7 +40,7 @@ public class SalesInventory extends ValidatorEJB implements SalesInventoryRemote
int count=0; int count=0;
if(month!=null && month.trim().length()>0) if(month!=null && month.trim().length()>0)
{ {
System.out.println("month inside EJB SalesInventory.getSalesInventoryDivWise(String dataSourceName, String month) ==="+month); System.out.println("month inside EJB SalesInventory.getSalesInventoryDivWise(String dataSourceName, String month) ==="+month+"and Nomns==="+nomns);
String selectedmonth = month.substring(4, 6); String selectedmonth = month.substring(4, 6);
if(selectedmonth.trim().equalsIgnoreCase("01") ||selectedmonth.trim().equalsIgnoreCase("02") ||selectedmonth.trim().equalsIgnoreCase("03")) if(selectedmonth.trim().equalsIgnoreCase("01") ||selectedmonth.trim().equalsIgnoreCase("02") ||selectedmonth.trim().equalsIgnoreCase("03"))
{ {
...@@ -79,7 +79,8 @@ public class SalesInventory extends ValidatorEJB implements SalesInventoryRemote ...@@ -79,7 +79,8 @@ public class SalesInventory extends ValidatorEJB implements SalesInventoryRemote
" GROUP BY item_code UNION ALL SELECT item_code, SUM(cl_stk_qty) AS cl_stk FROM sun.inventory_spl WHERE inv_date= LAST_DAY(TO_DATE('"+month+"','yyyymm')) AND loc_code " + " GROUP BY item_code UNION ALL SELECT item_code, SUM(cl_stk_qty) AS cl_stk FROM sun.inventory_spl WHERE inv_date= LAST_DAY(TO_DATE('"+month+"','yyyymm')) AND loc_code " +
" IN ( SELECT loc_code FROM LOC_SALABLE) GROUP BY item_code ) GROUP BY item_code ) CLSTK WHERE Sl.item_code= i.item_code AND ('"+month+"' = '"+month+"') AND i.item_sub_group NOT " + " IN ( SELECT loc_code FROM LOC_SALABLE) GROUP BY item_code ) GROUP BY item_code ) CLSTK WHERE Sl.item_code= i.item_code AND ('"+month+"' = '"+month+"') AND i.item_sub_group NOT " +
" IN ('CU','BJ') AND sl.item_code=clstk.item_code(+) GROUP BY sl.item_ser, trim(i.item_sub_group_descr) HAVING SUM(sl.ytdsl)>0 ) GROUP BY item_ser,brand,ytdsl,ytdach,cl_stk,nomn HAVING " + " IN ('CU','BJ') AND sl.item_code=clstk.item_code(+) GROUP BY sl.item_ser, trim(i.item_sub_group_descr) HAVING SUM(sl.ytdsl)>0 ) GROUP BY item_ser,brand,ytdsl,ytdach,cl_stk,nomn HAVING " +
" ( ROUND(cl_stk/(ytdsl/nomn),1) >= '"+from_mns+"' and ROUND(cl_stk/(ytdsl/nomn),1) <= '"+to_mns+"' ) ) A , ITEMSER WHERE a.item_ser=ITEMSER.item_ser AND a.brand NOT LIKE 'DUMMY%'"; " ( ROUND(cl_stk/(ytdsl/nomn),1) "+nomns +") ) A , ITEMSER WHERE a.item_ser=ITEMSER.item_ser AND a.brand NOT LIKE 'DUMMY%'";
//" ( ROUND(cl_stk/(ytdsl/nomn),1) >= '"+from_mns+"' and ROUND(cl_stk/(ytdsl/nomn),1) <= '"+to_mns+"' ) ) A , ITEMSER WHERE a.item_ser=ITEMSER.item_ser AND a.brand NOT LIKE 'DUMMY%'";
pstmt = conn.prepareStatement(sql); pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery(); rs = pstmt.executeQuery();
......
...@@ -8,7 +8,7 @@ import org.json.simple.JSONObject; ...@@ -8,7 +8,7 @@ import org.json.simple.JSONObject;
@Local @Local
public interface SalesInventoryLocal extends ValidatorLocal public interface SalesInventoryLocal extends ValidatorLocal
{ {
public JSONObject getSalesInventoryDivWise(String dataSourceName,String month,String from_mns, String to_mns) throws RemoteException, ITMException; public JSONObject getSalesInventoryDivWise(String dataSourceName,String month,String nomns) throws RemoteException, ITMException;
public JSONObject getSalesInventoryBrandWise(String dataSourceName,String month,String brandName) throws RemoteException, ITMException; public JSONObject getSalesInventoryBrandWise(String dataSourceName,String month,String brandName) throws RemoteException, ITMException;
} }
...@@ -10,7 +10,7 @@ import org.json.simple.JSONObject; ...@@ -10,7 +10,7 @@ import org.json.simple.JSONObject;
@Remote @Remote
public interface SalesInventoryRemote extends ValidatorRemote public interface SalesInventoryRemote extends ValidatorRemote
{ {
public JSONObject getSalesInventoryDivWise(String dataSourceName,String month,String from_mns, String to_mns) throws RemoteException, ITMException; public JSONObject getSalesInventoryDivWise(String dataSourceName,String month,String nomns) throws RemoteException, ITMException;
public JSONObject getSalesInventoryBrandWise(String dataSourceName,String month,String brandName) throws RemoteException, ITMException; public JSONObject getSalesInventoryBrandWise(String dataSourceName,String month,String brandName) throws RemoteException, ITMException;
} }
...@@ -1209,13 +1209,26 @@ public class SalesPerformance extends ValidatorEJB implements SalesPerformanceRe ...@@ -1209,13 +1209,26 @@ public class SalesPerformance extends ValidatorEJB implements SalesPerformanceRe
+" ROUND(SUM(a.sale_ytd_cy)/ (CASE WHEN SUBSTR('"+month+"' ,5,2)<4 THEN " +" ROUND(SUM(a.sale_ytd_cy)/ (CASE WHEN SUBSTR('"+month+"' ,5,2)<4 THEN "
+" SUBSTR('"+month+"' ,5,2)+9 ELSE SUBSTR('"+month+"' ,5,2)-3 END)/10000000,1) " +" SUBSTR('"+month+"' ,5,2)+9 ELSE SUBSTR('"+month+"' ,5,2)-3 END)/10000000,1) "
+" AS AVG_MTHLY,ROUND(SUM(a.sale_mth_cy)/10000000,1) AS MTH_CY_SALES, " +" AS AVG_MTHLY,ROUND(SUM(a.sale_mth_cy)/10000000,1) AS MTH_CY_SALES, "
+" ROUND(SUM(a.hotrgt_mth_cy)/10000000,1) AS MTH_HO_TRGT,ROUND(SUM (a.sale_mth_cy)/ SUM (a.hotrgt_mth_cy)* 100,2) AS MTH_ACH_PER,(CASE WHEN SUM(a.sale_mth_ly)<>0 " +" ROUND(SUM(a.hotrgt_mth_cy)/10000000,1) AS MTH_HO_TRGT,"
+" THEN ROUND(SUM(a.sale_mth_cy - a.sale_mth_ly)/SUM(a.sale_mth_ly)*100,1) " +" (case when SUM (a.hotrgt_mth_cy) <>0 then "
+" ELSE ROUND(0*100,1) END) AS MTH_GR,ROUND(SUM(a.sale_ytd_cy)/10000000,1) " +" (case when ROUND(SUM (a.sale_mth_cy)/ SUM (a.hotrgt_mth_cy)* 100,1) <-200 THEN -200 "
+" when ROUND(SUM (a.sale_mth_cy)/ SUM (a.hotrgt_mth_cy)* 100,1) >200 THEN 200 ELSE "
+" ROUND(SUM (a.sale_mth_cy)/ SUM (a.hotrgt_mth_cy)* 100,1) end )"
+" ELSE ROUND(0*100,1) END) AS MTH_ACH_PER, "
+"(CASE WHEN SUM(a.sale_mth_ly)<>0 "
+" THEN (CASE WHEN ROUND(SUM(a.sale_mth_cy - a.sale_mth_ly)/SUM(a.sale_mth_ly)*100,1) <-200 THEN -200 "
+" WHEN ROUND(SUM(a.sale_mth_cy - a.sale_mth_ly)/SUM(a.sale_mth_ly)*100,1) >200 THEN 200 ELSE "
+" ROUND(SUM(a.sale_mth_cy - a.sale_mth_ly)/SUM(a.sale_mth_ly)*100,1) END )"
+" ELSE ROUND(0*100,1) END) AS MTH_GR, "
+" ROUND(SUM(a.sale_ytd_cy)/10000000,1) "
+" AS YTD_CY_SALES,ROUND(SUM(a.sale_ytd_ly)/10000000,1) AS YTD_LY_SALES, " +" AS YTD_CY_SALES,ROUND(SUM(a.sale_ytd_ly)/10000000,1) AS YTD_LY_SALES, "
+" ROUND(SUM(a.hotrgt_ytd_cy)/10000000,1) AS YTD_HO_TRGT,(CASE WHEN SUM(a.sale_ytd_ly)<>0 " +" ROUND(SUM(a.hotrgt_ytd_cy)/10000000,1) AS YTD_HO_TRGT,"
+" THEN ROUND(SUM(a.sale_ytd_cy - a.sale_ytd_ly)/SUM(a.sale_ytd_ly)*100,1) " +"(CASE WHEN SUM(a.sale_ytd_ly)<>0 "
+" ELSE ROUND(0*100,1) END) AS YTD_GR,ROUND(SUM(a.sale_Qrt1_cy)/10000000,1) AS Q1, " +" THEN (CASE WHEN ROUND(SUM(a.sale_ytd_cy - a.sale_ytd_ly)/SUM(a.sale_ytd_ly)*100,1) <-200 THEN -200 "
+" WHEN ROUND(SUM(a.sale_ytd_cy - a.sale_ytd_ly)/SUM(a.sale_ytd_ly)*100,1) >200 THEN 200 ELSE "
+" ROUND(SUM(a.sale_ytd_cy - a.sale_ytd_ly)/SUM(a.sale_ytd_ly)*100,1) END )"
+" ELSE ROUND(0*100,1) END) AS YTD_GR,"
+" ROUND(SUM(a.sale_Qrt1_cy)/10000000,1) AS Q1, "
+" ROUND(SUM(a.sale_Qrt2_cy)/10000000,1) AS Q2,ROUND(SUM(a.sale_Qrt3_cy)/10000000,1) AS Q3, " +" ROUND(SUM(a.sale_Qrt2_cy)/10000000,1) AS Q2,ROUND(SUM(a.sale_Qrt3_cy)/10000000,1) AS Q3, "
+" ROUND(SUM(a.sale_Qrt4_cy)/10000000,1) AS Q4,ROUND(SUM(a.sale_ytd_cy)/100000/" +" ROUND(SUM(a.sale_Qrt4_cy)/10000000,1) AS Q4,ROUND(SUM(a.sale_ytd_cy)/100000/"
+" SUM(c.psr)/ (CASE WHEN SUBSTR('"+month+"' ,5,2)<4 THEN SUBSTR('"+month+"' ,5,2)+9 " +" SUM(c.psr)/ (CASE WHEN SUBSTR('"+month+"' ,5,2)<4 THEN SUBSTR('"+month+"' ,5,2)+9 "
...@@ -1455,18 +1468,28 @@ public class SalesPerformance extends ValidatorEJB implements SalesPerformanceRe ...@@ -1455,18 +1468,28 @@ public class SalesPerformance extends ValidatorEJB implements SalesPerformanceRe
+" ROUND(SUM(a.sale_ytd_cy)/ (CASE WHEN SUBSTR('"+month+"' ,5,2)<4 THEN " +" ROUND(SUM(a.sale_ytd_cy)/ (CASE WHEN SUBSTR('"+month+"' ,5,2)<4 THEN "
+" SUBSTR('"+month+"' ,5,2)+9 ELSE SUBSTR('"+month+"' ,5,2)-3 END)/10000000,1) " +" SUBSTR('"+month+"' ,5,2)+9 ELSE SUBSTR('"+month+"' ,5,2)-3 END)/10000000,1) "
+" AS AVG_MTHLY,ROUND(SUM(a.sale_mth_cy)/10000000,1) AS MTH_CY_SALES, " +" AS AVG_MTHLY,ROUND(SUM(a.sale_mth_cy)/10000000,1) AS MTH_CY_SALES, "
+" ROUND(SUM(a.hotrgt_mth_cy)/10000000,1) AS MTH_HO_TRGT,(CASE WHEN SUM(a.sale_mth_ly)<>0 " +" ROUND(SUM(a.hotrgt_mth_cy)/10000000,1) AS MTH_HO_TRGT,"
+" THEN ROUND(SUM(a.sale_mth_cy - a.sale_mth_ly)/SUM(a.sale_mth_ly)*100,1) " +" (CASE WHEN SUM(a.sale_mth_ly)<>0 "
+" ELSE ROUND(0*100,1) END) AS MTH_GR,ROUND(SUM(a.sale_ytd_cy)/10000000,1) " +" THEN (CASE WHEN ROUND(SUM(a.sale_mth_cy - a.sale_mth_ly)/SUM(a.sale_mth_ly)*100,1) <-200 THEN -200 "
+" WHEN ROUND(SUM(a.sale_mth_cy - a.sale_mth_ly)/SUM(a.sale_mth_ly)*100,1) >200 THEN 200 ELSE "
+" ROUND(SUM(a.sale_mth_cy - a.sale_mth_ly)/SUM(a.sale_mth_ly)*100,1) END )"
+" ELSE ROUND(0*100,1) END) AS MTH_GR,"
+ "ROUND(SUM(a.sale_ytd_cy)/10000000,1) "
+" AS YTD_CY_SALES,ROUND(SUM(a.sale_ytd_ly)/10000000,1) AS YTD_LY_SALES, " +" AS YTD_CY_SALES,ROUND(SUM(a.sale_ytd_ly)/10000000,1) AS YTD_LY_SALES, "
+" ROUND(SUM(a.hotrgt_ytd_cy)/10000000,1) AS YTD_HO_TRGT, " +" ROUND(SUM(a.hotrgt_ytd_cy)/10000000,1) AS YTD_HO_TRGT, "
+" (CASE WHEN SUM (a.hotrgt_ytd_cy)= 0 THEN 0 ELSE ROUND(SUM (a.sale_ytd_cy)/SUM (a.hotrgt_ytd_cy)* 100,1) END) AS YTD_ACH_PER, " +" (CASE WHEN SUM (a.hotrgt_ytd_cy)= 0 THEN 0 ELSE "
+" (CASE WHEN ROUND(SUM (a.sale_ytd_cy)/SUM (a.hotrgt_ytd_cy)* 100,1) <-200 THEN -200 "
+" WHEN ROUND(SUM (a.sale_ytd_cy)/SUM (a.hotrgt_ytd_cy)* 100,1) >200 THEN 200 ELSE "
+" ROUND(SUM (a.sale_ytd_cy)/SUM (a.hotrgt_ytd_cy)* 100,1) END) end) AS YTD_ACH_PER, "
+" (CASE WHEN SUM(a.sale_ytd_ly)<>0 " +" (CASE WHEN SUM(a.sale_ytd_ly)<>0 "
+" THEN ROUND(SUM(a.sale_ytd_cy - a.sale_ytd_ly)/SUM(a.sale_ytd_ly)*100,1) " +" THEN (CASE WHEN ROUND(SUM(a.sale_ytd_cy - a.sale_ytd_ly)/SUM(a.sale_ytd_ly)*100,1) <-200 THEN -200 "
+" ELSE ROUND(0*100,1) END) AS YTD_GR,ROUND(SUM(a.sale_Qrt1_cy)/10000000,1) AS Q1, " +" WHEN ROUND(SUM(a.sale_ytd_cy - a.sale_ytd_ly)/SUM(a.sale_ytd_ly)*100,1) >200 THEN 200 ELSE "
+" ROUND(SUM(a.sale_ytd_cy - a.sale_ytd_ly)/SUM(a.sale_ytd_ly)*100,1) END )"
+" ELSE ROUND(0*100,1) END) AS YTD_GR,"
+" ROUND(SUM(a.sale_Qrt1_cy)/10000000,1) AS Q1, "
+" ROUND(SUM(a.sale_Qrt2_cy)/10000000,1) AS Q2,ROUND(SUM(a.sale_Qrt3_cy)/10000000,1) AS Q3, " +" ROUND(SUM(a.sale_Qrt2_cy)/10000000,1) AS Q2,ROUND(SUM(a.sale_Qrt3_cy)/10000000,1) AS Q3, "
+" ROUND(SUM(a.sale_Qrt4_cy)/10000000,1) AS Q4,ROUND(SUM(a.sale_ytd_cy)/100000/" +" ROUND(SUM(a.sale_Qrt4_cy)/10000000,1) AS Q4,ROUND(SUM(a.sale_ytd_cy)/100000/"
+" SUM(c.psr)/ (CASE WHEN SUBSTR('"+month+"' ,5,2)<4 THEN SUBSTR('"+month+"' ,5,2)+9 " +" MAX(c.psr)/ (CASE WHEN SUBSTR('"+month+"' ,5,2)<4 THEN SUBSTR('"+month+"' ,5,2)+9 "
+" ELSE SUBSTR('"+month+"' ,5,2)-3 END) ,2) AS PMPM,round(SUM(b.pmpm_ly),2) AS PMPM_LY, " +" ELSE SUBSTR('"+month+"' ,5,2)-3 END) ,2) AS PMPM,round(SUM(b.pmpm_ly),2) AS PMPM_LY, "
+" ROUND(SUM(a.sale_ytd_cy-a.hotrgt_ytd_cy)/10000000,1) AS YTD_ACH_EXTRA, " +" ROUND(SUM(a.sale_ytd_cy-a.hotrgt_ytd_cy)/10000000,1) AS YTD_ACH_EXTRA, "
+" (CASE WHEN SUM(a.sale_ytd_cy)<>0 THEN ROUND(SUM(a.retu_ytd_cy)/" +" (CASE WHEN SUM(a.sale_ytd_cy)<>0 THEN ROUND(SUM(a.retu_ytd_cy)/"
...@@ -1728,20 +1751,31 @@ public class SalesPerformance extends ValidatorEJB implements SalesPerformanceRe ...@@ -1728,20 +1751,31 @@ public class SalesPerformance extends ValidatorEJB implements SalesPerformanceRe
+" SUBSTR('"+month+"' ,5,2)+9 ELSE SUBSTR('"+month+"' ,5,2)-3 END)/10000000,1) " +" SUBSTR('"+month+"' ,5,2)+9 ELSE SUBSTR('"+month+"' ,5,2)-3 END)/10000000,1) "
+" AS AVG_MTHLY,ROUND(SUM(a.sale_mth_cy)/10000000,1) AS MTH_CY_SALES, " +" AS AVG_MTHLY,ROUND(SUM(a.sale_mth_cy)/10000000,1) AS MTH_CY_SALES, "
+" ROUND(SUM(a.hotrgt_mth_cy)/10000000,1) AS MTH_HO_TRGT, " +" ROUND(SUM(a.hotrgt_mth_cy)/10000000,1) AS MTH_HO_TRGT, "
+" CASE WHEN SUM (a.hotrgt_mth_cy) =0 THEN 0 ELSE ROUND(SUM (a.sale_mth_cy)/SUM (a.hotrgt_mth_cy)*100,2) END AS MTH_ACH_PER, " +" (CASE WHEN SUM (a.hotrgt_mth_cy)= 0 THEN 0 ELSE "
+" (CASE WHEN ROUND(SUM (a.sale_mth_cy)/SUM (a.hotrgt_mth_cy)*100,1) <-200 THEN -200 "
+" WHEN ROUND(SUM (a.sale_mth_cy)/SUM (a.hotrgt_mth_cy)*100,1) >200 THEN 200 ELSE "
+" ROUND(SUM (a.sale_mth_cy)/SUM (a.hotrgt_mth_cy)*100,1) END) end) AS MTH_ACH_PER, "
+" (CASE WHEN SUM(a.sale_mth_ly)<>0 " +" (CASE WHEN SUM(a.sale_mth_ly)<>0 "
+" THEN ROUND(SUM(a.sale_mth_cy - a.sale_mth_ly)/SUM(a.sale_mth_ly)*100,1) " +" THEN (CASE WHEN ROUND(SUM(a.sale_mth_cy - a.sale_mth_ly)/SUM(a.sale_mth_ly)*100,1) <-200 THEN -200 "
+" ELSE ROUND(0*100,1) END) AS MTH_GR,ROUND(SUM(a.sale_ytd_cy)/10000000,1) " +" WHEN ROUND(SUM(a.sale_mth_cy - a.sale_mth_ly)/SUM(a.sale_mth_ly)*100,1) >200 THEN 200 ELSE "
+" ROUND(SUM(a.sale_mth_cy - a.sale_mth_ly)/SUM(a.sale_mth_ly)*100,1) END )"
+" ELSE ROUND(0*100,1) END) AS MTH_GR,"
+" ROUND(SUM(a.sale_ytd_cy)/10000000,1) "
+" AS YTD_CY_SALES,ROUND(SUM(a.sale_ytd_ly)/10000000,1) AS YTD_LY_SALES, " +" AS YTD_CY_SALES,ROUND(SUM(a.sale_ytd_ly)/10000000,1) AS YTD_LY_SALES, "
+" ROUND(SUM(a.hotrgt_ytd_cy)/10000000,1) AS YTD_HO_TRGT,(CASE WHEN SUM(a.sale_ytd_ly)<>0 " +" ROUND(SUM(a.hotrgt_ytd_cy)/10000000,1) AS YTD_HO_TRGT,(CASE WHEN SUM(a.sale_ytd_ly)<>0 "
+" THEN ROUND(SUM(a.sale_ytd_cy - a.sale_ytd_ly)/SUM(a.sale_ytd_ly)*100,1) " +" THEN (CASE WHEN ROUND(SUM(a.sale_ytd_cy - a.sale_ytd_ly)/SUM(a.sale_ytd_ly)*100,1) <-200 THEN -200 "
+" WHEN ROUND(SUM(a.sale_ytd_cy - a.sale_ytd_ly)/SUM(a.sale_ytd_ly)*100,1) >200 THEN 200 ELSE "
+" ROUND(SUM(a.sale_ytd_cy - a.sale_ytd_ly)/SUM(a.sale_ytd_ly)*100,1) END )"
+" ELSE ROUND(0*100,1) END) AS YTD_GR,ROUND(SUM(a.sale_Qrt1_cy)/10000000,1) AS Q1, " +" ELSE ROUND(0*100,1) END) AS YTD_GR,ROUND(SUM(a.sale_Qrt1_cy)/10000000,1) AS Q1, "
+" ROUND(SUM(a.sale_Qrt2_cy)/10000000,1) AS Q2,ROUND(SUM(a.sale_Qrt3_cy)/10000000,1) AS Q3, " +" ROUND(SUM(a.sale_Qrt2_cy)/10000000,1) AS Q2,ROUND(SUM(a.sale_Qrt3_cy)/10000000,1) AS Q3, "
+" ROUND(SUM(a.sale_Qrt4_cy)/10000000,1) AS Q4,ROUND(SUM(a.sale_ytd_cy)/100000/" +" ROUND(SUM(a.sale_Qrt4_cy)/10000000,1) AS Q4,ROUND(SUM(a.sale_ytd_cy)/100000/"
+" SUM(c.psr)/ (CASE WHEN SUBSTR('"+month+"' ,5,2)<4 THEN SUBSTR('"+month+"' ,5,2)+9 " +" MAX(c.psr)/ (CASE WHEN SUBSTR('"+month+"' ,5,2)<4 THEN SUBSTR('"+month+"' ,5,2)+9 "
+" ELSE SUBSTR('"+month+"' ,5,2)-3 END) ,1) AS PMPM,SUM(b.pmpm_ly) AS PMPM_LY, " +" ELSE SUBSTR('"+month+"' ,5,2)-3 END) ,1) AS PMPM,SUM(b.pmpm_ly) AS PMPM_LY, "
+" ROUND(SUM(a.sale_ytd_cy-a.hotrgt_ytd_cy)/10000000,1) AS YTD_ACH_EXTRA, " +" ROUND(SUM(a.sale_ytd_cy-a.hotrgt_ytd_cy)/10000000,1) AS YTD_ACH_EXTRA, "
+" CASE WHEN SUM (a.hotrgt_YTD_cy) = 0 THEN 0 ELSE ROUND(SUM (a.sale_YTD_cy)/SUM (a.hotrgt_YTD_cy)*100,2) END AS YTD_ACH_PER, " +" CASE WHEN SUM (a.hotrgt_YTD_cy) = 0 THEN 0 ELSE "
+" (CASE WHEN ROUND(SUM (a.sale_YTD_cy)/SUM (a.hotrgt_YTD_cy)*100,1) <-200 THEN -200 "
+" WHEN ROUND(SUM (a.sale_YTD_cy)/SUM (a.hotrgt_YTD_cy)*100,1) >200 THEN 200 ELSE "
+" ROUND(SUM (a.sale_YTD_cy)/SUM (a.hotrgt_YTD_cy)*100,1) END) END AS YTD_ACH_PER, "
+" (CASE WHEN SUM(a.sale_ytd_cy)<>0 THEN ROUND(SUM(a.retu_ytd_cy)/" +" (CASE WHEN SUM(a.sale_ytd_cy)<>0 THEN ROUND(SUM(a.retu_ytd_cy)/"
+" SUM(a.sale_ytd_cy)*100,1) ELSE ROUND(0*100,1) END) AS RETU_YTD_PRCT " +" SUM(a.sale_ytd_cy)*100,1) ELSE ROUND(0*100,1) END) AS RETU_YTD_PRCT "
+" FROM (SELECT dwh.fin_year , dwh.item_ser,SUM(sale_mth_cy) AS sale_mth_cy, " +" FROM (SELECT dwh.fin_year , dwh.item_ser,SUM(sale_mth_cy) AS sale_mth_cy, "
...@@ -1994,10 +2028,16 @@ public class SalesPerformance extends ValidatorEJB implements SalesPerformanceRe ...@@ -1994,10 +2028,16 @@ public class SalesPerformance extends ValidatorEJB implements SalesPerformanceRe
+ "ROUND(hotrgt_ytd_cy/10000000,2) AS hotrgt_ytd_cy," + "ROUND(hotrgt_ytd_cy/10000000,2) AS hotrgt_ytd_cy,"
+ "ROUND(sale_YTD_cy/10000000,2) AS sale_YTD_cy, " + "ROUND(sale_YTD_cy/10000000,2) AS sale_YTD_cy, "
+ "ROUND(sale_YTD_ly/10000000,2) AS sale_YTD_ly," + "ROUND(sale_YTD_ly/10000000,2) AS sale_YTD_ly,"
+ "(CASE WHEN NVL(hotrgt_ytd_cy,0) = 0 THEN 0" +" CASE WHEN NVL(hotrgt_ytd_cy,0) = 0 THEN 0 ELSE "
+ "ELSE ROUND(sale_YTD_cy/hotrgt_ytd_cy * 100,1) END ) AS ho_ach_prcnt," +" (CASE WHEN ROUND(sale_YTD_cy/hotrgt_ytd_cy * 100,1) <-200 THEN -200 "
+ "(CASE WHEN NVL(sale_YTD_ly,0) = 0 THEN 0" +" WHEN ROUND(sale_YTD_cy/hotrgt_ytd_cy * 100,1) >200 THEN 200 ELSE "
+ "ELSE ROUND((sale_YTD_cy -sale_YTD_ly)/ sale_YTD_ly* 100,1) END) AS gr_prcnt," +" ROUND(sale_YTD_cy/hotrgt_ytd_cy * 100,1) END) END AS ho_ach_prcnt, "
+ "(CASE WHEN NVL(sale_YTD_ly,0) <> 0 "
+" THEN (CASE WHEN ROUND((sale_YTD_cy -sale_YTD_ly)/ sale_YTD_ly* 100,1) <-200 THEN -200 "
+" WHEN ROUND((sale_YTD_cy -sale_YTD_ly)/ sale_YTD_ly* 100,1) >200 THEN 200 ELSE "
+" ROUND((sale_YTD_cy -sale_YTD_ly)/ sale_YTD_ly* 100,1) END )"
+" ELSE ROUND(0*100,1) END) AS gr_prcnt, "
+ "c.psr AS NO_OF_SO," + "c.psr AS NO_OF_SO,"
+ "ROUND(DWH.sale_ytd_cy/10000000/c.psr/(CASE WHEN SUBSTR('"+month+"',5,2)<4 THEN SUBSTR('"+month+"',5,2)+9 ELSE SUBSTR('"+month+"',5,2)-3 END) ,2) AS PMPM," + "ROUND(DWH.sale_ytd_cy/10000000/c.psr/(CASE WHEN SUBSTR('"+month+"',5,2)<4 THEN SUBSTR('"+month+"',5,2)+9 ELSE SUBSTR('"+month+"',5,2)-3 END) ,2) AS PMPM,"
+ "ROUND(terr100/totterr*100,1) AS terr100prcnt" + "ROUND(terr100/totterr*100,1) AS terr100prcnt"
...@@ -2196,10 +2236,16 @@ public class SalesPerformance extends ValidatorEJB implements SalesPerformanceRe ...@@ -2196,10 +2236,16 @@ public class SalesPerformance extends ValidatorEJB implements SalesPerformanceRe
+ " ROUND(hotrgt_MTH_cy/10000000,2) AS hotrgt_MTH_cy, " + " ROUND(hotrgt_MTH_cy/10000000,2) AS hotrgt_MTH_cy, "
+ " ROUND(sale_MTH_cy/10000000,2) AS sale_MTH_cy," + " ROUND(sale_MTH_cy/10000000,2) AS sale_MTH_cy,"
+ " ROUND(sale_MTH_ly/10000000,2) AS sale_MTH_ly, " + " ROUND(sale_MTH_ly/10000000,2) AS sale_MTH_ly, "
+ " (CASE WHEN NVL(hotrgt_MTH_cy,0) = 0 THEN 0 " + " (CASE WHEN NVL(hotrgt_MTH_cy,0) <> 0 THEN "
+ " ELSE ROUND(sale_MTH_cy/hotrgt_MTH_cy * 100,1) END ) AS ho_ach_prcnt, " +" (CASE WHEN ROUND(sale_MTH_cy/hotrgt_MTH_cy * 100,1) <-200 THEN -200 "
+ " (CASE WHEN NVL(sale_MTH_ly,0) = 0 THEN 0 " +" WHEN ROUND(sale_MTH_cy/hotrgt_MTH_cy * 100,1) >200 THEN 200 ELSE "
+ " ELSE ROUND((sale_MTH_cy -sale_MTH_ly)/ sale_MTH_ly* 100,1) END) AS gr_prcnt, " +" ROUND(sale_MTH_cy/hotrgt_MTH_cy * 100,1) END ) "
+" ELSE ROUND(0*100,1) END ) AS ho_ach_prcnt, "
+ " (CASE WHEN NVL(sale_MTH_ly,0) <> 0 "
+" THEN (CASE WHEN ROUND((sale_MTH_cy -sale_MTH_ly)/ sale_MTH_ly* 100,1) <-200 THEN -200 "
+" WHEN ROUND((sale_MTH_cy -sale_MTH_ly)/ sale_MTH_ly* 100,1) >200 THEN 200 ELSE "
+" ROUND((sale_MTH_cy -sale_MTH_ly)/ sale_MTH_ly* 100,1) END )"
+" ELSE ROUND(0*100,1) END) AS gr_prcnt, "
+ " c.psr AS NO_OF_SO, " + " c.psr AS NO_OF_SO, "
+ " ROUND(DWH.sale_MTH_cy/10000000/c.psr/ " + " ROUND(DWH.sale_MTH_cy/10000000/c.psr/ "
+ " (CASE WHEN SUBSTR('"+month+"',5,2)<4 THEN SUBSTR('"+month+"' ,5,2)+9 ELSE SUBSTR('"+month+"' ,5,2)-3 END) " + " (CASE WHEN SUBSTR('"+month+"',5,2)<4 THEN SUBSTR('"+month+"' ,5,2)+9 ELSE SUBSTR('"+month+"' ,5,2)-3 END) "
...@@ -2416,24 +2462,36 @@ public class SalesPerformance extends ValidatorEJB implements SalesPerformanceRe ...@@ -2416,24 +2462,36 @@ public class SalesPerformance extends ValidatorEJB implements SalesPerformanceRe
+ " ELSE SUBSTR ('"+month+"', 5, 2) - 3 END)/ 10000000,1) AS avg_mthly, " + " ELSE SUBSTR ('"+month+"', 5, 2) - 3 END)/ 10000000,1) AS avg_mthly, "
+ " ROUND (SUM (a.sale_mth_cy) / 10000000, 1) AS mth_cy_sales, " + " ROUND (SUM (a.sale_mth_cy) / 10000000, 1) AS mth_cy_sales, "
+ " ROUND (SUM (a.hotrgt_mth_cy) / 10000000, 1) AS mth_ho_trgt, " + " ROUND (SUM (a.hotrgt_mth_cy) / 10000000, 1) AS mth_ho_trgt, "
+ " (CASE WHEN SUM (a.hotrgt_mth_cy) =0 THEN 0 ELSE ROUND (SUM (a.sale_mth_cy) / SUM (a.hotrgt_mth_cy) * 100, 2) END) AS mth_ach_per, " + " (CASE WHEN SUM (a.hotrgt_mth_cy) =0 THEN 0 ELSE "
+ " (CASE WHEN SUM (a.sale_mth_ly) <> 0 THEN ROUND (SUM (a.sale_mth_cy - a.sale_mth_ly)/ SUM (a.sale_mth_ly) * 100,1) " +" (CASE WHEN ROUND (SUM (a.sale_mth_cy) / SUM (a.hotrgt_mth_cy) * 100, 1) <-200 THEN -200 "
+" WHEN ROUND (SUM (a.sale_mth_cy) / SUM (a.hotrgt_mth_cy) * 100, 1) >200 THEN 200 ELSE "
+" ROUND (SUM (a.sale_mth_cy) / SUM (a.hotrgt_mth_cy) * 100, 1) END) end) AS MTH_ACH_PER, "
+" (CASE WHEN SUM (a.sale_mth_ly) <> 0 "
+" THEN (CASE WHEN ROUND (SUM (a.sale_mth_cy - a.sale_mth_ly)/ SUM (a.sale_mth_ly) * 100,1) <-200 THEN -200 "
+" WHEN ROUND (SUM (a.sale_mth_cy - a.sale_mth_ly)/ SUM (a.sale_mth_ly) * 100,1) >200 THEN 200 ELSE "
+" ROUND (SUM (a.sale_mth_cy - a.sale_mth_ly)/ SUM (a.sale_mth_ly) * 100,1) END )"
+ " ELSE ROUND (0 * 100, 1) END ) AS mth_gr, " + " ELSE ROUND (0 * 100, 1) END ) AS mth_gr, "
+ " ROUND (SUM (a.sale_ytd_cy) / 10000000, 1) AS ytd_cy_sales, " + " ROUND (SUM (a.sale_ytd_cy) / 10000000, 1) AS ytd_cy_sales, "
+ " ROUND (SUM (a.sale_ytd_ly) / 10000000, 1) AS ytd_ly_sales, " + " ROUND (SUM (a.sale_ytd_ly) / 10000000, 1) AS ytd_ly_sales, "
+ " ROUND (SUM (a.hotrgt_ytd_cy) / 10000000, 1) AS ytd_ho_trgt," + " ROUND (SUM (a.hotrgt_ytd_cy) / 10000000, 1) AS ytd_ho_trgt,"
+ " (CASE WHEN SUM (a.sale_ytd_ly) <> 0 THEN ROUND ( SUM (a.sale_ytd_cy - a.sale_ytd_ly)/ SUM (a.sale_ytd_ly)* 100,1) " + " (CASE WHEN SUM (a.sale_ytd_ly) <> 0 "
+" THEN (CASE WHEN ROUND ( SUM (a.sale_ytd_cy - a.sale_ytd_ly)/ SUM (a.sale_ytd_ly)* 100,1) <-200 THEN -200 "
+" WHEN ROUND ( SUM (a.sale_ytd_cy - a.sale_ytd_ly)/ SUM (a.sale_ytd_ly)* 100,1) >200 THEN 200 ELSE "
+" ROUND ( SUM (a.sale_ytd_cy - a.sale_ytd_ly)/ SUM (a.sale_ytd_ly)* 100,1) END )"
+ " ELSE ROUND (0 * 100, 1) END ) AS ytd_gr, " + " ELSE ROUND (0 * 100, 1) END ) AS ytd_gr, "
+ " ROUND (SUM (a.sale_qrt1_cy) / 10000000, 1) AS q1, " + " ROUND (SUM (a.sale_qrt1_cy) / 10000000, 1) AS q1, "
+ " ROUND (SUM (a.sale_qrt2_cy) / 10000000, 1) AS q2, " + " ROUND (SUM (a.sale_qrt2_cy) / 10000000, 1) AS q2, "
+ " ROUND (SUM (a.sale_qrt3_cy) / 10000000, 1) AS q3, " + " ROUND (SUM (a.sale_qrt3_cy) / 10000000, 1) AS q3, "
+ " ROUND (SUM (a.sale_qrt4_cy) / 10000000, 1) AS q4, " + " ROUND (SUM (a.sale_qrt4_cy) / 10000000, 1) AS q4, "
+ " ROUND ( SUM (a.sale_ytd_cy) / 100000/ SUM (c.psr)/ (CASE " + " ROUND ( SUM (a.sale_ytd_cy) / 100000/ MAX (c.psr)/ (CASE "
+ " WHEN SUBSTR ('"+month+"', 5, 2) < 4 THEN SUBSTR ('"+month+"', 5, 2) + 9 " + " WHEN SUBSTR ('"+month+"', 5, 2) < 4 THEN SUBSTR ('"+month+"', 5, 2) + 9 "
+ " ELSE SUBSTR ('"+month+"', 5, 2) - 3 END),1) AS pmpm, " + " ELSE SUBSTR ('"+month+"', 5, 2) - 3 END),1) AS pmpm, "
+ " SUM (b.pmpm_ly) AS pmpm_ly, " + " SUM (b.pmpm_ly) AS pmpm_ly, "
+ " ROUND (SUM (a.sale_ytd_cy - a.hotrgt_ytd_cy) / 10000000, 1) AS ytd_ach_extra," + " ROUND (SUM (a.sale_ytd_cy - a.hotrgt_ytd_cy) / 10000000, 1) AS ytd_ach_extra,"
+" (CASE WHEN SUM (a.hotrgt_YTD_cy) =0 THEN 0 ELSE ROUND (SUM (a.sale_YTD_cy) / SUM (a.hotrgt_YTD_cy) * 100, 2) END) AS YTD_ach_per, " +" (CASE WHEN SUM (a.hotrgt_YTD_cy) =0 THEN 0 ELSE "
+" (CASE WHEN ROUND (SUM (a.sale_YTD_cy) / SUM (a.hotrgt_YTD_cy) * 100, 1) <-200 THEN -200 "
+" WHEN ROUND (SUM (a.sale_YTD_cy) / SUM (a.hotrgt_YTD_cy) * 100, 1) >200 THEN 200 ELSE "
+" ROUND (SUM (a.sale_YTD_cy) / SUM (a.hotrgt_YTD_cy) * 100, 1) END) end) AS YTD_ACH_PER, "
+ " (CASE WHEN SUM (a.sale_ytd_cy) <> 0 THEN ROUND (SUM (a.retu_ytd_cy) / SUM (a.sale_ytd_cy) * 100,1) " + " (CASE WHEN SUM (a.sale_ytd_cy) <> 0 THEN ROUND (SUM (a.retu_ytd_cy) / SUM (a.sale_ytd_cy) * 100,1) "
+ " ELSE ROUND (0 * 100, 1) END) AS retu_ytd_prct " + " ELSE ROUND (0 * 100, 1) END) AS retu_ytd_prct "
+ " FROM (SELECT dwh.fin_year, dwh.item_ser,DWH.TERR_CODE,DWH.ZONE_DESCR, " + " FROM (SELECT dwh.fin_year, dwh.item_ser,DWH.TERR_CODE,DWH.ZONE_DESCR, "
...@@ -2711,26 +2769,36 @@ public class SalesPerformance extends ValidatorEJB implements SalesPerformanceRe ...@@ -2711,26 +2769,36 @@ public class SalesPerformance extends ValidatorEJB implements SalesPerformanceRe
+ " END)/ 10000000,1) AS avg_mthly, " + " END)/ 10000000,1) AS avg_mthly, "
+ " ROUND (SUM (a.sale_mth_cy) / 10000000, 1) AS mth_cy_sales, " + " ROUND (SUM (a.sale_mth_cy) / 10000000, 1) AS mth_cy_sales, "
+ " ROUND (SUM (a.hotrgt_mth_cy) / 10000000, 1) AS mth_ho_trgt, " + " ROUND (SUM (a.hotrgt_mth_cy) / 10000000, 1) AS mth_ho_trgt, "
+ " (CASE WHEN SUM (a.hotrgt_mth_cy) =0 THEN 0 ELSE ROUND (SUM (a.sale_mth_cy) / SUM (a.hotrgt_mth_cy) * 100, 2) END) AS mth_ach_per, " + " (CASE WHEN SUM (a.hotrgt_mth_cy) =0 THEN 0 ELSE "
+ " (CASE WHEN SUM (a.sale_mth_ly) <> 0 THEN ROUND ( SUM (a.sale_mth_cy - a.sale_mth_ly)/ SUM (a.sale_mth_ly)* 100,1) " +" (CASE WHEN ROUND (SUM (a.sale_mth_cy) / SUM (a.hotrgt_mth_cy) * 100, 1) <-200 THEN -200 "
+ " ELSE ROUND (0 * 100, 1) " +" WHEN ROUND (SUM (a.sale_mth_cy) / SUM (a.hotrgt_mth_cy) * 100, 1) >200 THEN 200 ELSE "
+ " END) AS mth_gr, " +" ROUND (SUM (a.sale_mth_cy) / SUM (a.hotrgt_mth_cy) * 100, 1) END) end) AS MTH_ACH_PER, "
+" (CASE WHEN SUM(a.sale_mth_ly)<>0 "
+" THEN (CASE WHEN ROUND(SUM(a.sale_mth_cy - a.sale_mth_ly)/SUM(a.sale_mth_ly)*100,1) <-200 THEN -200 "
+" WHEN ROUND(SUM(a.sale_mth_cy - a.sale_mth_ly)/SUM(a.sale_mth_ly)*100,1) >200 THEN 200 ELSE "
+" ROUND(SUM(a.sale_mth_cy - a.sale_mth_ly)/SUM(a.sale_mth_ly)*100,1) END )"
+" ELSE ROUND(0*100,1) END) AS MTH_GR,"
+ " ROUND (SUM (a.sale_ytd_cy) / 10000000, 1) AS ytd_cy_sales, " + " ROUND (SUM (a.sale_ytd_cy) / 10000000, 1) AS ytd_cy_sales, "
+ " ROUND (SUM (a.sale_ytd_ly) / 10000000, 1) AS ytd_ly_sales, " + " ROUND (SUM (a.sale_ytd_ly) / 10000000, 1) AS ytd_ly_sales, "
+ " ROUND (SUM (a.hotrgt_ytd_cy) / 10000000, 1) AS ytd_ho_trgt, " + " ROUND (SUM (a.hotrgt_ytd_cy) / 10000000, 1) AS ytd_ho_trgt, "
+ " (CASE WHEN SUM (a.sale_ytd_ly) <> 0 THEN ROUND ( SUM (a.sale_ytd_cy - a.sale_ytd_ly)/ SUM (a.sale_ytd_ly)* 100,1) " +"(CASE WHEN SUM(a.sale_ytd_ly)<>0 "
+ " ELSE ROUND (0 * 100, 1) " +" THEN (CASE WHEN ROUND(SUM(a.sale_ytd_cy - a.sale_ytd_ly)/SUM(a.sale_ytd_ly)*100,1) <-200 THEN -200 "
+ " END) AS ytd_gr, " +" WHEN ROUND(SUM(a.sale_ytd_cy - a.sale_ytd_ly)/SUM(a.sale_ytd_ly)*100,1) >200 THEN 200 ELSE "
+" ROUND(SUM(a.sale_ytd_cy - a.sale_ytd_ly)/SUM(a.sale_ytd_ly)*100,1) END )"
+" ELSE ROUND(0*100,1) END) AS YTD_GR, "
+ " ROUND (SUM (a.sale_qrt1_cy) / 10000000, 1) AS q1, " + " ROUND (SUM (a.sale_qrt1_cy) / 10000000, 1) AS q1, "
+ " ROUND (SUM (a.sale_qrt2_cy) / 10000000, 1) AS q2, " + " ROUND (SUM (a.sale_qrt2_cy) / 10000000, 1) AS q2, "
+ " ROUND (SUM (a.sale_qrt3_cy) / 10000000, 1) AS q3, " + " ROUND (SUM (a.sale_qrt3_cy) / 10000000, 1) AS q3, "
+ " ROUND (SUM (a.sale_qrt4_cy) / 10000000, 1) AS q4, " + " ROUND (SUM (a.sale_qrt4_cy) / 10000000, 1) AS q4, "
+ " ROUND ( SUM (a.sale_ytd_cy)/ 100000/ SUM (c.psr)/ (CASE WHEN SUBSTR ('"+month+"', 5, 2) < 4 THEN SUBSTR ('"+month+"', 5, 2) + 9 " + " ROUND ( SUM (a.sale_ytd_cy)/ 100000/ MAX (c.psr)/ (CASE WHEN SUBSTR ('"+month+"', 5, 2) < 4 THEN SUBSTR ('"+month+"', 5, 2) + 9 "
+ " ELSE SUBSTR ('"+month+"', 5, 2) - 3 " + " ELSE SUBSTR ('"+month+"', 5, 2) - 3 "
+ " END),1) AS pmpm, " + " END),1) AS pmpm, "
+ " SUM (b.pmpm_ly) AS pmpm_ly, " + " SUM (b.pmpm_ly) AS pmpm_ly, "
+ " ROUND (SUM (a.sale_ytd_cy - a.hotrgt_ytd_cy) / 10000000, 1) AS ytd_ach_extra, " + " ROUND (SUM (a.sale_ytd_cy - a.hotrgt_ytd_cy) / 10000000, 1) AS ytd_ach_extra, "
+ " (CASE WHEN SUM (a.hotrgt_YTD_cy) =0 THEN 0 ELSE ROUND (SUM (a.sale_YTD_cy) / SUM (a.hotrgt_YTD_cy) * 100, 2) END) AS YTD_ach_per, " + " (CASE WHEN SUM (a.hotrgt_YTD_cy) =0 THEN 0 ELSE "
+" (CASE WHEN ROUND (SUM (a.sale_YTD_cy) / SUM (a.hotrgt_YTD_cy) * 100, 1) <-200 THEN -200 "
+" WHEN ROUND (SUM (a.sale_YTD_cy) / SUM (a.hotrgt_YTD_cy) * 100, 1) >200 THEN 200 ELSE "
+" ROUND (SUM (a.sale_YTD_cy) / SUM (a.hotrgt_YTD_cy) * 100, 1) END) end) AS YTD_ach_per, "
+ " (CASE WHEN SUM (a.sale_ytd_cy) <> 0 THEN ROUND (SUM (a.retu_ytd_cy) / SUM (a.sale_ytd_cy) * 100,1) " + " (CASE WHEN SUM (a.sale_ytd_cy) <> 0 THEN ROUND (SUM (a.retu_ytd_cy) / SUM (a.sale_ytd_cy) * 100,1) "
+ " ELSE ROUND (0 * 100, 1) " + " ELSE ROUND (0 * 100, 1) "
+ " END) AS retu_ytd_prct " + " END) AS retu_ytd_prct "
...@@ -3009,20 +3077,32 @@ public class SalesPerformance extends ValidatorEJB implements SalesPerformanceRe ...@@ -3009,20 +3077,32 @@ public class SalesPerformance extends ValidatorEJB implements SalesPerformanceRe
+ " ELSE SUBSTR ('"+month+"', 5, 2) - 3 END)/ 10000000,1) AS avg_mthly, " + " ELSE SUBSTR ('"+month+"', 5, 2) - 3 END)/ 10000000,1) AS avg_mthly, "
+ " ROUND (SUM (a.sale_mth_cy) / 10000000, 1) AS mth_cy_sales, " + " ROUND (SUM (a.sale_mth_cy) / 10000000, 1) AS mth_cy_sales, "
+ " ROUND (SUM (a.hotrgt_mth_cy) / 10000000, 1) AS mth_ho_trgt, " + " ROUND (SUM (a.hotrgt_mth_cy) / 10000000, 1) AS mth_ho_trgt, "
+ "(CASE WHEN SUM (a.hotrgt_mth_cy) =0 THEN 0 ELSE ROUND (SUM (a.sale_mth_cy) / SUM (a.hotrgt_mth_cy) * 100, 2) END) AS mth_ach_per, " + "(CASE WHEN SUM (a.hotrgt_mth_cy) =0 THEN 0 ELSE "
+ " (CASE WHEN SUM (a.sale_mth_ly) <> 0 THEN ROUND (SUM (a.sale_mth_cy - a.sale_mth_ly)/ SUM (a.sale_mth_ly) * 100,1) " +" (CASE WHEN ROUND (SUM (a.sale_mth_cy) / SUM (a.hotrgt_mth_cy) * 100, 1) <-200 THEN -200 "
+ " ELSE ROUND (0 * 100, 1) END ) AS mth_gr, " +" WHEN ROUND (SUM (a.sale_mth_cy) / SUM (a.hotrgt_mth_cy) * 100, 1) >200 THEN 200 ELSE "
+" ROUND (SUM (a.sale_mth_cy) / SUM (a.hotrgt_mth_cy) * 100, 1) END) end) AS MTH_ACH_PER, "
+" (CASE WHEN SUM(a.sale_mth_ly)<>0 "
+" THEN (CASE WHEN ROUND(SUM(a.sale_mth_cy - a.sale_mth_ly)/SUM(a.sale_mth_ly)*100,1) <-200 THEN -200 "
+" WHEN ROUND(SUM(a.sale_mth_cy - a.sale_mth_ly)/SUM(a.sale_mth_ly)*100,1) >200 THEN 200 ELSE "
+" ROUND(SUM(a.sale_mth_cy - a.sale_mth_ly)/SUM(a.sale_mth_ly)*100,1) END )"
+" ELSE ROUND(0*100,1) END) AS MTH_GR,"
+ " ROUND (SUM (a.sale_ytd_cy) / 10000000, 1) AS ytd_cy_sales, " + " ROUND (SUM (a.sale_ytd_cy) / 10000000, 1) AS ytd_cy_sales, "
+ " ROUND (SUM (a.sale_ytd_ly) / 10000000, 1) AS ytd_ly_sales, " + " ROUND (SUM (a.sale_ytd_ly) / 10000000, 1) AS ytd_ly_sales, "
+ " ROUND (SUM (a.hotrgt_ytd_cy) / 10000000, 1) AS ytd_ho_trgt," + " ROUND (SUM (a.hotrgt_ytd_cy) / 10000000, 1) AS ytd_ho_trgt,"
+ "(CASE WHEN SUM (a.hotrgt_ytd_cy) =0 THEN 0 ELSE ROUND (SUM (a.sale_ytd_cy) / SUM (a.hotrgt_ytd_cy) * 100, 2) END) AS ytd_ach_per, " + "(CASE WHEN SUM (a.hotrgt_ytd_cy) =0 THEN 0 ELSE "
+ " (CASE WHEN SUM (a.sale_ytd_ly) <> 0 THEN ROUND ( SUM (a.sale_ytd_cy - a.sale_ytd_ly)/ SUM (a.sale_ytd_ly)* 100,1) " +" (CASE WHEN ROUND (SUM (a.sale_ytd_cy) / SUM (a.hotrgt_ytd_cy) * 100, 1) <-200 THEN -200 "
+ " ELSE ROUND (0 * 100, 1) END ) AS ytd_gr, " +" WHEN ROUND (SUM (a.sale_ytd_cy) / SUM (a.hotrgt_ytd_cy) * 100, 1) >200 THEN 200 ELSE "
+" ROUND (SUM (a.sale_ytd_cy) / SUM (a.hotrgt_ytd_cy) * 100, 1) END) end) AS YTD_ACH_PER, "
+"(CASE WHEN SUM(a.sale_ytd_ly)<>0 "
+" THEN (CASE WHEN ROUND(SUM(a.sale_ytd_cy - a.sale_ytd_ly)/SUM(a.sale_ytd_ly)*100,1) <-200 THEN -200 "
+" WHEN ROUND(SUM(a.sale_ytd_cy - a.sale_ytd_ly)/SUM(a.sale_ytd_ly)*100,1) >200 THEN 200 ELSE "
+" ROUND(SUM(a.sale_ytd_cy - a.sale_ytd_ly)/SUM(a.sale_ytd_ly)*100,1) END )"
+" ELSE ROUND(0*100,1) END) AS YTD_GR, "
+ " ROUND (SUM (a.sale_qrt1_cy) / 10000000, 1) AS q1, " + " ROUND (SUM (a.sale_qrt1_cy) / 10000000, 1) AS q1, "
+ " ROUND (SUM (a.sale_qrt2_cy) / 10000000, 1) AS q2, " + " ROUND (SUM (a.sale_qrt2_cy) / 10000000, 1) AS q2, "
+ " ROUND (SUM (a.sale_qrt3_cy) / 10000000, 1) AS q3, " + " ROUND (SUM (a.sale_qrt3_cy) / 10000000, 1) AS q3, "
+ " ROUND (SUM (a.sale_qrt4_cy) / 10000000, 1) AS q4, " + " ROUND (SUM (a.sale_qrt4_cy) / 10000000, 1) AS q4, "
+ " ROUND ( SUM (a.sale_ytd_cy) / 100000/ SUM (c.psr)/ (CASE " + " ROUND ( SUM (a.sale_ytd_cy) / 100000/ MAX (c.psr)/ (CASE "
+ " WHEN SUBSTR ('"+month+"', 5, 2) < 4 THEN SUBSTR ('"+month+"', 5, 2) + 9 " + " WHEN SUBSTR ('"+month+"', 5, 2) < 4 THEN SUBSTR ('"+month+"', 5, 2) + 9 "
+ " ELSE SUBSTR ('"+month+"', 5, 2) - 3 END),1) AS pmpm, " + " ELSE SUBSTR ('"+month+"', 5, 2) - 3 END),1) AS pmpm, "
+ " SUM (b.pmpm_ly) AS pmpm_ly, " + " SUM (b.pmpm_ly) AS pmpm_ly, "
...@@ -3308,26 +3388,36 @@ public class SalesPerformance extends ValidatorEJB implements SalesPerformanceRe ...@@ -3308,26 +3388,36 @@ public class SalesPerformance extends ValidatorEJB implements SalesPerformanceRe
+ " END)/ 10000000,1) AS avg_mthly, " + " END)/ 10000000,1) AS avg_mthly, "
+ " ROUND (SUM (a.sale_mth_cy) / 10000000, 1) AS mth_cy_sales, " + " ROUND (SUM (a.sale_mth_cy) / 10000000, 1) AS mth_cy_sales, "
+ " ROUND (SUM (a.hotrgt_mth_cy) / 10000000, 1) AS mth_ho_trgt, " + " ROUND (SUM (a.hotrgt_mth_cy) / 10000000, 1) AS mth_ho_trgt, "
+ "( CASE WHEN SUM (a.hotrgt_mth_cy) =0 THEN 0 ELSE ROUND (SUM (a.sale_mth_cy) / SUM (a.hotrgt_mth_cy) * 100, 2) END) AS mth_ach_per, " + "( CASE WHEN SUM (a.hotrgt_mth_cy) =0 THEN 0 ELSE "
+ " (CASE WHEN SUM (a.sale_mth_ly) <> 0 THEN ROUND ( SUM (a.sale_mth_cy - a.sale_mth_ly)/ SUM (a.sale_mth_ly)* 100,1) " + " (CASE WHEN ROUND (SUM (a.sale_mth_cy) / SUM (a.hotrgt_mth_cy) * 100, 1) <-200 THEN -200 "
+ " ELSE ROUND (0 * 100, 1) " +" WHEN ROUND (SUM (a.sale_mth_cy) / SUM (a.hotrgt_mth_cy) * 100, 1) >200 THEN 200 ELSE "
+ " END) AS mth_gr, " +" ROUND (SUM (a.sale_mth_cy) / SUM (a.hotrgt_mth_cy) * 100, 1) END) end) AS MTH_ACH_PER, "
+" (CASE WHEN SUM(a.sale_mth_ly)<>0 "
+" THEN (CASE WHEN ROUND(SUM(a.sale_mth_cy - a.sale_mth_ly)/SUM(a.sale_mth_ly)*100,1) <-200 THEN -200 "
+" WHEN ROUND(SUM(a.sale_mth_cy - a.sale_mth_ly)/SUM(a.sale_mth_ly)*100,1) >200 THEN 200 ELSE "
+" ROUND(SUM(a.sale_mth_cy - a.sale_mth_ly)/SUM(a.sale_mth_ly)*100,1) END )"
+" ELSE ROUND(0*100,1) END) AS MTH_GR,"
+ " ROUND (SUM (a.sale_ytd_cy) / 10000000, 1) AS ytd_cy_sales, " + " ROUND (SUM (a.sale_ytd_cy) / 10000000, 1) AS ytd_cy_sales, "
+ " ROUND (SUM (a.sale_ytd_ly) / 10000000, 1) AS ytd_ly_sales, " + " ROUND (SUM (a.sale_ytd_ly) / 10000000, 1) AS ytd_ly_sales, "
+ " ROUND (SUM (a.hotrgt_ytd_cy) / 10000000, 1) AS ytd_ho_trgt, " + " ROUND (SUM (a.hotrgt_ytd_cy) / 10000000, 1) AS ytd_ho_trgt, "
+ " (CASE WHEN SUM (a.sale_ytd_ly) <> 0 THEN ROUND ( SUM (a.sale_ytd_cy - a.sale_ytd_ly)/ SUM (a.sale_ytd_ly)* 100,1) " +"(CASE WHEN SUM(a.sale_ytd_ly)<>0 "
+ " ELSE ROUND (0 * 100, 1) " +" THEN (CASE WHEN ROUND(SUM(a.sale_ytd_cy - a.sale_ytd_ly)/SUM(a.sale_ytd_ly)*100,1) <-200 THEN -200 "
+ " END) AS ytd_gr, " +" WHEN ROUND(SUM(a.sale_ytd_cy - a.sale_ytd_ly)/SUM(a.sale_ytd_ly)*100,1) >200 THEN 200 ELSE "
+" ROUND(SUM(a.sale_ytd_cy - a.sale_ytd_ly)/SUM(a.sale_ytd_ly)*100,1) END )"
+" ELSE ROUND(0*100,1) END) AS YTD_GR, "
+ " ROUND (SUM (a.sale_qrt1_cy) / 10000000, 1) AS q1, " + " ROUND (SUM (a.sale_qrt1_cy) / 10000000, 1) AS q1, "
+ " ROUND (SUM (a.sale_qrt2_cy) / 10000000, 1) AS q2, " + " ROUND (SUM (a.sale_qrt2_cy) / 10000000, 1) AS q2, "
+ " ROUND (SUM (a.sale_qrt3_cy) / 10000000, 1) AS q3, " + " ROUND (SUM (a.sale_qrt3_cy) / 10000000, 1) AS q3, "
+ " ROUND (SUM (a.sale_qrt4_cy) / 10000000, 1) AS q4, " + " ROUND (SUM (a.sale_qrt4_cy) / 10000000, 1) AS q4, "
+ " ROUND (SUM (a.sale_ytd_cy)/ 100000/ SUM (c.psr)/ (CASE WHEN SUBSTR ('"+month+"', 5, 2) < 4 THEN SUBSTR ('"+month+"', 5, 2) + 9 " + " ROUND (SUM (a.sale_ytd_cy)/ 100000/ MAX (c.psr)/ (CASE WHEN SUBSTR ('"+month+"', 5, 2) < 4 THEN SUBSTR ('"+month+"', 5, 2) + 9 "
+ " ELSE SUBSTR ('"+month+"', 5, 2) - 3 " + " ELSE SUBSTR ('"+month+"', 5, 2) - 3 "
+ " END),1) AS pmpm, " + " END),1) AS pmpm, "
+ " SUM (b.pmpm_ly) AS pmpm_ly, " + " SUM (b.pmpm_ly) AS pmpm_ly, "
+ " ROUND (SUM (a.sale_ytd_cy - a.hotrgt_ytd_cy) / 10000000, 1) AS ytd_ach_extra, " + " ROUND (SUM (a.sale_ytd_cy - a.hotrgt_ytd_cy) / 10000000, 1) AS ytd_ach_extra, "
+ " (CASE WHEN SUM (a.hotrgt_YTD_cy) =0 THEN 0 ELSE ROUND (SUM (a.sale_YTD_cy) / SUM (a.hotrgt_YTD_cy) * 100, 2) END) AS YTD_ach_per, " + " (CASE WHEN SUM (a.hotrgt_YTD_cy) =0 THEN 0 ELSE "
+" (CASE WHEN ROUND (SUM (a.sale_ytd_cy) / SUM (a.hotrgt_ytd_cy) * 100, 1) <-200 THEN -200 "
+" WHEN ROUND (SUM (a.sale_ytd_cy) / SUM (a.hotrgt_ytd_cy) * 100, 1) >200 THEN 200 ELSE "
+" ROUND (SUM (a.sale_ytd_cy) / SUM (a.hotrgt_ytd_cy) * 100, 1) END) end) AS YTD_ACH_PER, "
+ " (CASE WHEN SUM (a.sale_ytd_cy) <> 0 THEN ROUND (SUM (a.retu_ytd_cy) / SUM (a.sale_ytd_cy) * 100,1) " + " (CASE WHEN SUM (a.sale_ytd_cy) <> 0 THEN ROUND (SUM (a.retu_ytd_cy) / SUM (a.sale_ytd_cy) * 100,1) "
+ " ELSE ROUND (0 * 100, 1) " + " ELSE ROUND (0 * 100, 1) "
+ " END) AS retu_ytd_prct " + " END) AS retu_ytd_prct "
...@@ -3597,7 +3687,13 @@ public class SalesPerformance extends ValidatorEJB implements SalesPerformanceRe ...@@ -3597,7 +3687,13 @@ public class SalesPerformance extends ValidatorEJB implements SalesPerformanceRe
} }
System.out.println("updates month and year from dcoding in getMnthSalesDivWiseGraphData =="+month+"finYear =="+finYear); System.out.println("updates month and year from dcoding in getMnthSalesDivWiseGraphData =="+month+"finYear =="+finYear);
sql =" SELECT b.DIV_NO, b.DIV_DESCR,( CASE WHEN SUBSTR('"+month+"' ,5,2) =3 THEN ROUND(0 ,1) WHEN SUBSTR('"+month+"' ,5,2) <3 THEN ROUND(SUM(a.hotrgt_annual_cy-a.sale_ytd_cy)/(12- SUBSTR('"+month+"' ,5,2)-9) /10000000,1) ELSE ROUND(SUM(a.hotrgt_annual_cy-a.sale_ytd_cy)/(12- SUBSTR('"+month+"' ,5,2)+3) /10000000,1) END ) AS REQD_MTHLY,ROUND(SUM(a.sale_ytd_cy)/ (CASE WHEN SUBSTR('"+month+"' ,5,2)<4 THEN SUBSTR('"+month+"' ,5,2)+9 ELSE SUBSTR('"+month+"' ,5,2)-3 END)/10000000,1) AS AVG_MTHLY,ROUND(SUM(a.sale_mth_cy)/10000000,1) AS MTH_CY_SALES,ROUND(SUM(a.sale_mth_ly)/10000000,1) AS MTH_LY_SALES,ROUND(SUM(a.hotrgt_mth_cy)/10000000,1) AS MTH_HO_TRGT,(CASE WHEN SUM(a.sale_mth_ly)<>0 THEN ROUND(SUM(a.sale_mth_cy - a.sale_mth_ly)/SUM(a.sale_mth_ly)*100,1) ELSE ROUND(9.99*100,1) END) AS MTH_GR,ROUND(SUM (a.sale_mth_cy)/ SUM (a.hotrgt_mth_cy)* 100,2) AS MTH_ACH_PER,ROUND(SUM(a.sale_ytd_cy)/10000000,1) AS YTD_CY_SALES,ROUND(SUM(a.sale_ytd_ly)/10000000,1) AS YTD_LY_SALES,ROUND(SUM(a.hotrgt_ytd_cy)/10000000,1) AS YTD_HO_TRGT, (CASE WHEN SUM(a.sale_ytd_ly)<>0 THEN ROUND(SUM(a.sale_ytd_cy - a.sale_ytd_ly)/SUM(a.sale_ytd_ly)*100,1) ELSE ROUND(9.99*100,1) END) AS YTD_GR, ROUND(SUM(a.sale_Qrt1_cy)/10000000,1) AS Q1,ROUND(SUM(a.sale_Qrt2_cy)/10000000,1) AS Q2,ROUND(SUM(a.sale_Qrt3_cy)/10000000,1) AS Q3,ROUND(SUM(a.sale_Qrt4_cy)/10000000,1) AS Q4,ROUND(SUM(a.sale_ytd_cy)/100000/SUM(c.psr)/ (CASE WHEN SUBSTR('"+month+"' ,5,2)<4 THEN SUBSTR('"+month+"' ,5,2)+9 ELSE SUBSTR('"+month+"' ,5,2)-3 END) ,2) AS PMPM,round(SUM(b.pmpm_ly),2) AS PMPM_LY,ROUND(SUM(a.sale_ytd_cy)/100000/SUM(c.psr)/(CASE WHEN SUBSTR('"+month+"' ,5,2)<4 THEN SUBSTR('"+month+"' ,5,2)+9 ELSE SUBSTR('"+month+"' ,5,2)-3 END),2) - round(SUM(b.pmpm_ly),2) AS INC_PMPM,ROUND(SUM(a.sale_ytd_cy-a.hotrgt_ytd_cy)/10000000,1) AS YTD_ACH_EXTRA,(CASE WHEN SUM(a.sale_ytd_cy)<>0 THEN ROUND(SUM(a.retu_ytd_cy)/SUM(a.sale_ytd_cy)*100,1) ELSE ROUND(9.99*100,1) END) AS RETU_YTD_PRCT,sum(b.bud_inc_pmpm) as bud_inc_pmpm FROM (SELECT dwh.fin_year , dwh.item_ser,SUM(sale_mth_cy) AS sale_mth_cy,SUM(sale_mth_ly) AS sale_mth_ly,SUM(trgt_mth_cy * (100+ NVL(brnd.HO_TRGT_INCR_PRCNT,0)) /100) AS hotrgt_mth_cy,SUM(sale_YTD_cy) AS sale_YTD_cy,SUM(sale_YTD_ly) AS sale_YTD_ly,SUM(trgt_YTD_cy * (100+ NVL(brnd.HO_TRGT_INCR_PRCNT,0)) /100) AS hotrgt_ytd_cy,SUM(sale_Qrt1_cy) AS sale_Qrt1_cy, " sql =" SELECT b.DIV_NO, b.DIV_DESCR,( CASE WHEN SUBSTR('"+month+"' ,5,2) =3 THEN ROUND(0 ,1) WHEN SUBSTR('"+month+"' ,5,2) <3 THEN ROUND(SUM(a.hotrgt_annual_cy-a.sale_ytd_cy)/(12- SUBSTR('"+month+"' ,5,2)-9) /10000000,1) ELSE ROUND(SUM(a.hotrgt_annual_cy-a.sale_ytd_cy)/(12- SUBSTR('"+month+"' ,5,2)+3) /10000000,1) END ) AS REQD_MTHLY,ROUND(SUM(a.sale_ytd_cy)/ (CASE WHEN SUBSTR('"+month+"' ,5,2)<4 THEN SUBSTR('"+month+"' ,5,2)+9 ELSE SUBSTR('"+month+"' ,5,2)-3 END)/10000000,1) AS AVG_MTHLY,ROUND(SUM(a.sale_mth_cy)/10000000,1) AS MTH_CY_SALES,ROUND(SUM(a.sale_mth_ly)/10000000,1) AS MTH_LY_SALES,ROUND(SUM(a.hotrgt_mth_cy)/10000000,1) AS MTH_HO_TRGT,"
+" (CASE WHEN SUM(a.sale_mth_ly)<>0 THEN ROUND(SUM(a.sale_mth_cy - a.sale_mth_ly)/SUM(a.sale_mth_ly)*100,1) ELSE ROUND(9.99*100,1) END) AS MTH_GR,"
+ "( CASE WHEN SUM (a.hotrgt_mth_cy) =0 THEN 0 ELSE "
+" (CASE WHEN ROUND (SUM (a.sale_mth_cy) / SUM (a.hotrgt_mth_cy) * 100, 1) <-200 THEN -200 "
+" WHEN ROUND (SUM (a.sale_mth_cy) / SUM (a.hotrgt_mth_cy) * 100, 1) >200 THEN 200 ELSE "
+" ROUND (SUM (a.sale_mth_cy) / SUM (a.hotrgt_mth_cy) * 100, 1) END) end) AS MTH_ACH_PER, "
+" ROUND(SUM(a.sale_ytd_cy)/10000000,1) AS YTD_CY_SALES,ROUND(SUM(a.sale_ytd_ly)/10000000,1) AS YTD_LY_SALES,ROUND(SUM(a.hotrgt_ytd_cy)/10000000,1) AS YTD_HO_TRGT, (CASE WHEN SUM(a.sale_ytd_ly)<>0 THEN ROUND(SUM(a.sale_ytd_cy - a.sale_ytd_ly)/SUM(a.sale_ytd_ly)*100,1) ELSE ROUND(9.99*100,1) END) AS YTD_GR, ROUND(SUM(a.sale_Qrt1_cy)/10000000,1) AS Q1,ROUND(SUM(a.sale_Qrt2_cy)/10000000,1) AS Q2,ROUND(SUM(a.sale_Qrt3_cy)/10000000,1) AS Q3,ROUND(SUM(a.sale_Qrt4_cy)/10000000,1) AS Q4,ROUND(SUM(a.sale_ytd_cy)/100000/SUM(c.psr)/ (CASE WHEN SUBSTR('"+month+"' ,5,2)<4 THEN SUBSTR('"+month+"' ,5,2)+9 ELSE SUBSTR('"+month+"' ,5,2)-3 END) ,2) AS PMPM,round(SUM(b.pmpm_ly),2) AS PMPM_LY,ROUND(SUM(a.sale_ytd_cy)/100000/SUM(c.psr)/(CASE WHEN SUBSTR('"+month+"' ,5,2)<4 THEN SUBSTR('"+month+"' ,5,2)+9 ELSE SUBSTR('"+month+"' ,5,2)-3 END),2) - round(SUM(b.pmpm_ly),2) AS INC_PMPM,ROUND(SUM(a.sale_ytd_cy-a.hotrgt_ytd_cy)/10000000,1) AS YTD_ACH_EXTRA,(CASE WHEN SUM(a.sale_ytd_cy)<>0 THEN ROUND(SUM(a.retu_ytd_cy)/SUM(a.sale_ytd_cy)*100,1) ELSE ROUND(9.99*100,1) END) AS RETU_YTD_PRCT,sum(b.bud_inc_pmpm) as bud_inc_pmpm FROM (SELECT dwh.fin_year , dwh.item_ser,SUM(sale_mth_cy) AS sale_mth_cy,SUM(sale_mth_ly) AS sale_mth_ly,SUM(trgt_mth_cy * (100+ NVL(brnd.HO_TRGT_INCR_PRCNT,0)) /100) AS hotrgt_mth_cy,SUM(sale_YTD_cy) AS sale_YTD_cy,SUM(sale_YTD_ly) AS sale_YTD_ly,SUM(trgt_YTD_cy * (100+ NVL(brnd.HO_TRGT_INCR_PRCNT,0)) /100) AS hotrgt_ytd_cy,SUM(sale_Qrt1_cy) AS sale_Qrt1_cy, "
+" SUM(sale_Qrt2_cy) AS sale_Qrt2_cy,SUM(sale_Qrt3_cy) AS sale_Qrt3_cy,SUM(sale_Qrt4_cy) AS sale_Qrt4_cy,SUM(trgt_annual_cy * (100+ NVL(brnd.HO_TRGT_INCR_PRCNT,0)) /100) AS hotrgt_annual_cy,SUM(retu_ytd_cy) AS retu_ytd_cy FROM(SELECT fin_year , SM_SALES_SUMM_WIDE.item_ser, " +" SUM(sale_Qrt2_cy) AS sale_Qrt2_cy,SUM(sale_Qrt3_cy) AS sale_Qrt3_cy,SUM(sale_Qrt4_cy) AS sale_Qrt4_cy,SUM(trgt_annual_cy * (100+ NVL(brnd.HO_TRGT_INCR_PRCNT,0)) /100) AS hotrgt_annual_cy,SUM(retu_ytd_cy) AS retu_ytd_cy FROM(SELECT fin_year , SM_SALES_SUMM_WIDE.item_ser, "
+" sales_item.item_sub_group AS sub_grp, (CASE WHEN SUBSTR('"+month+"' ,5,2) ='04' THEN SUM(CY_SALE_MTH_APR) WHEN SUBSTR('"+month+"' ,5,2) ='05' THEN SUM(CY_SALE_MTH_MAY) WHEN SUBSTR('"+month+"' ,5,2) ='06' THEN SUM(CY_SALE_MTH_JUN)WHEN SUBSTR('"+month+"' ,5,2) ='07' THEN SUM(CY_SALE_MTH_JUL) WHEN SUBSTR('"+month+"' ,5,2) ='08' THEN SUM(CY_SALE_MTH_AUG) WHEN SUBSTR('"+month+"' ,5,2) ='09' THEN SUM(CY_SALE_MTH_SEP) WHEN SUBSTR('"+month+"' ,5,2) ='10' THEN SUM(CY_SALE_MTH_OCT) WHEN SUBSTR('"+month+"' ,5,2) ='11' THEN SUM(CY_SALE_MTH_NOV) WHEN SUBSTR('"+month+"' ,5,2) ='12' THEN SUM(CY_SALE_MTH_DEC) WHEN SUBSTR('"+month+"' ,5,2) ='01' THEN SUM(CY_SALE_MTH_JAN) WHEN SUBSTR('"+month+"' ,5,2) ='02' THEN SUM(CY_SALE_MTH_FEB) WHEN SUBSTR('"+month+"' ,5,2) ='03' THEN SUM(CY_SALE_MTH_MAR) END ) AS sale_mth_cy, " +" sales_item.item_sub_group AS sub_grp, (CASE WHEN SUBSTR('"+month+"' ,5,2) ='04' THEN SUM(CY_SALE_MTH_APR) WHEN SUBSTR('"+month+"' ,5,2) ='05' THEN SUM(CY_SALE_MTH_MAY) WHEN SUBSTR('"+month+"' ,5,2) ='06' THEN SUM(CY_SALE_MTH_JUN)WHEN SUBSTR('"+month+"' ,5,2) ='07' THEN SUM(CY_SALE_MTH_JUL) WHEN SUBSTR('"+month+"' ,5,2) ='08' THEN SUM(CY_SALE_MTH_AUG) WHEN SUBSTR('"+month+"' ,5,2) ='09' THEN SUM(CY_SALE_MTH_SEP) WHEN SUBSTR('"+month+"' ,5,2) ='10' THEN SUM(CY_SALE_MTH_OCT) WHEN SUBSTR('"+month+"' ,5,2) ='11' THEN SUM(CY_SALE_MTH_NOV) WHEN SUBSTR('"+month+"' ,5,2) ='12' THEN SUM(CY_SALE_MTH_DEC) WHEN SUBSTR('"+month+"' ,5,2) ='01' THEN SUM(CY_SALE_MTH_JAN) WHEN SUBSTR('"+month+"' ,5,2) ='02' THEN SUM(CY_SALE_MTH_FEB) WHEN SUBSTR('"+month+"' ,5,2) ='03' THEN SUM(CY_SALE_MTH_MAR) END ) AS sale_mth_cy, "
+" (CASE WHEN SUBSTR('"+month+"' ,5,2) ='04' THEN SUM(LY_SALE_MTH_APR) WHEN SUBSTR('"+month+"' ,5,2) ='05' THEN SUM(LY_SALE_MTH_MAY) WHEN SUBSTR('"+month+"' ,5,2) ='06' THEN SUM(LY_SALE_MTH_JUN) WHEN SUBSTR('"+month+"' ,5,2) ='07' THEN SUM(lY_SALE_MTH_JUL) WHEN SUBSTR('"+month+"' ,5,2) ='08' THEN SUM(lY_SALE_MTH_AUG) WHEN SUBSTR('"+month+"' ,5,2) ='09' THEN SUM(lY_SALE_MTH_SEP) WHEN SUBSTR('"+month+"' ,5,2) ='10' THEN SUM(lY_SALE_MTH_OCT) WHEN SUBSTR('"+month+"' ,5,2) ='11' THEN SUM(lY_SALE_MTH_NOV) WHEN SUBSTR('"+month+"' ,5,2) ='12' THEN SUM(lY_SALE_MTH_DEC) WHEN SUBSTR('"+month+"' ,5,2) ='01' THEN SUM(lY_SALE_MTH_JAN) WHEN SUBSTR('"+month+"' ,5,2) ='02' THEN SUM(lY_SALE_MTH_FEB) WHEN SUBSTR('"+month+"' ,5,2) ='03' THEN SUM(lY_SALE_MTH_MAR) END ) AS sale_mth_ly, " +" (CASE WHEN SUBSTR('"+month+"' ,5,2) ='04' THEN SUM(LY_SALE_MTH_APR) WHEN SUBSTR('"+month+"' ,5,2) ='05' THEN SUM(LY_SALE_MTH_MAY) WHEN SUBSTR('"+month+"' ,5,2) ='06' THEN SUM(LY_SALE_MTH_JUN) WHEN SUBSTR('"+month+"' ,5,2) ='07' THEN SUM(lY_SALE_MTH_JUL) WHEN SUBSTR('"+month+"' ,5,2) ='08' THEN SUM(lY_SALE_MTH_AUG) WHEN SUBSTR('"+month+"' ,5,2) ='09' THEN SUM(lY_SALE_MTH_SEP) WHEN SUBSTR('"+month+"' ,5,2) ='10' THEN SUM(lY_SALE_MTH_OCT) WHEN SUBSTR('"+month+"' ,5,2) ='11' THEN SUM(lY_SALE_MTH_NOV) WHEN SUBSTR('"+month+"' ,5,2) ='12' THEN SUM(lY_SALE_MTH_DEC) WHEN SUBSTR('"+month+"' ,5,2) ='01' THEN SUM(lY_SALE_MTH_JAN) WHEN SUBSTR('"+month+"' ,5,2) ='02' THEN SUM(lY_SALE_MTH_FEB) WHEN SUBSTR('"+month+"' ,5,2) ='03' THEN SUM(lY_SALE_MTH_MAR) END ) AS sale_mth_ly, "
......
This source diff could not be displayed because it is too large. You can view the blob instead.
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