Commit 3289a75d authored by nsawalakhe's avatar nsawalakhe

Merge OutletsVisitEJb in SFA module


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@102066 ce508802-f39f-4f6c-b175-0d175dae99d5
parent ba78c87b
package ibase.dashboard.sfa.ejb;
import ibase.dashboard.Report.Utility.DashboardUtility;
import ibase.system.config.ConnDriver;
import ibase.webitm.ejb.ValidatorEJB;
import ibase.webitm.utility.ITMException;
import java.rmi.RemoteException;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import javax.ejb.Stateless;
import org.json.simple.JSONObject;
/**
* Session Bean implementation class OutletVisitDetails
*/
@Stateless
public class OutletsVisitEJB extends ValidatorEJB implements OutletsVisitRemote, OutletsVisitLocal {
/**
* Default constructor.
*/
public OutletsVisitEJB() {
// TODO Auto-generated constructor stub
}
@SuppressWarnings("unchecked")
@Override
public JSONObject getOutletVisitDetails(String loginId, String salesPerson, String month, String year,String dataSourceName) throws RemoteException, ITMException
{
JSONObject rawDataMnthDivWiseSalesJson = new JSONObject();
JSONObject rowData = null;
String sql = "";
ResultSet rs = null;
PreparedStatement pstmt = null;
Connection conn = null;
ConnDriver connDriver = new ConnDriver();
DashboardUtility dashbordUtil = null;
try
{
dashbordUtil = new DashboardUtility();
salesPerson= dashbordUtil.getCommaSeparated(salesPerson);
System.out.println("Data Soruc Name ="+dataSourceName);
System.out.println("salesPerson is =" + salesPerson +"month is =" + month +"year is =" + year ) ;
conn = connDriver.getConnectDB(dataSourceName);
connDriver = null;
/* sql = " SELECT" +
" A.sales_pers," +
" A.SALESPERSON_NAME," +
" A.strg_code," +
" A.CUST_NAME," +
" A.speciality_code," +
" A.territory," +
" A.class_descr," +
" A.FIRST_MONTH," +
" A.SECOND_MONTH," +
" A.THIRD_MONTH" +
" FROM" +
" (" +
" select" +
" 1 as sr," +
" sm.sales_pers," +
" sales_pers.sp_name as SALESPERSON_NAME," +
" SM.sc_code as strg_code," +
" nvl(strg_customer.first_name,'')||' '||nvl(strg_customer.middle_name,'')" +
" ||nvl(strg_customer.last_name,'') as CUST_NAME," +
" sm.spl_code as speciality_code," +
" station.descr as territory," +
" sm.class_code_descr as class_descr," +
" (select" +
" count(strg_meet.strg_code)" +
" from strg_meet" +
" where" +
" strg_meet.sales_pers=sm.sales_pers" +
" and strg_meet.strg_type='C'" +
" and strg_meet.strg_code=sm.sc_code" +
" and to_char(strg_meet.event_date,'MONYYYY') = TO_CHAR(add_months(TO_DATE('"+month+"','MM'),-2),'MON')||'"+year+"'" +
" ) as FIRST_MONTH," +
" (select" +
" count(strg_meet.strg_code)" +
" from strg_meet" +
" where" +
" strg_meet.sales_pers=sm.sales_pers" +
" and strg_meet.strg_type='C'" +
" and strg_meet.strg_code=sm.sc_code" +
" and to_char(strg_meet.event_date,'MONYYYY') =TO_CHAR(add_months(TO_DATE('"+month+"','MM'),-1),'MON')||'"+year+"'" +
" ) as SECOND_MONTH," +
" (select" +
" count(strg_meet.strg_code)" +
" from strg_meet" +
" where" +
" strg_meet.sales_pers=sm.sales_pers" +
" and strg_meet.strg_type='C'" +
" and strg_meet.strg_code=sm.sc_code" +
" and to_char(strg_meet.event_date,'MONYYYY') ='"+month+"'||'"+year+"'" +
" ) as THIRD_MONTH" +
" from" +
" strg_series sm," +
" sales_pers," +
" strg_customer," +
" employee" +
" left outer join station" +
" on trim(employee.hobby4)=trim(station.stan_code)" +
" WHERE" +
" sm.sales_pers=sales_pers.sales_pers" +
" and sm.sc_code=strg_customer.sc_code" +
" and sales_pers.sales_pers=employee.emp_code" +
" and SM.cust_type = 'C'" +
" and sales_pers.item_ser='OTC'" +
" And" +
" (" +
" SM.Sales_Pers IN" +
" (" +
" select" +
" emp_code" +
" from" +
" employee" +
" start with" +
" emp_code = (select emp_code from users where (Profile_Id = 'RSR-BEM1' OR Profile_Id = 'ADMIN' OR Profile_Id ='FLM-RBM' ) And code='"+loginId+"')" +
" connect by prior" +
" emp_code = report_to)" +
" )" +
" AND SM.SALES_PERS IN (" + salesPerson + " )" +
" and sm.status='Y'" +
" group by" +
" sm.sales_pers," +
" sales_pers.sp_name," +
" sm.sc_code," +
" nvl(strg_customer.first_name,'')||' '||nvl(strg_customer.middle_name,'')" +
" ||nvl(strg_customer.last_name,'') ," +
" sm.spl_code ," +
" sm.class_code_descr," +
" station.descr" +
" union all" +
" select" +
" a.sr," +
" a.sales_pers||to_char(count(*) * 6) as sales_pers," +
" ' ' as SALESPERSON_NAME," +
" a.strg_code," +
" a.CUST_NAME," +
" a.speciality_code," +
" a.territory," +
" a.class_descr," +
" a.FIRST_MONTH," +
" a.SECOND_MONTH," +
" a.THIRD_MONTH" +
" from" +
" (" +
" select" +
" 2 as sr," +
" sm.sales_pers||' EXPECTED CLASS A DOCTOR VISITS : ' as sales_pers," +
" ' ' as strg_code," +
" ' ' as CUST_NAME," +
" ' ' as speciality_code," +
" ' ' as territory," +
" ' ' as class_descr," +
" to_number('') as FIRST_MONTH," +
" to_number('') as SECOND_MONTH," +
" to_number('') as THIRD_MONTH" +
" from" +
" strg_series sm," +
" sales_pers," +
" strg_customer," +
" employee" +
" left outer join station" +
" on trim(employee.hobby4)=trim(station.stan_code)" +
" WHERE" +
" sm.sales_pers=sales_pers.sales_pers" +
" and sm.sc_code=strg_customer.sc_code" +
" and sales_pers.sales_pers=employee.emp_code" +
" and SM.cust_type = 'C'" +
" and sales_pers.item_ser='OTC'" +
" And" +
" (" +
" SM.Sales_Pers IN" +
" (" +
" select" +
" emp_code" +
" from" +
" employee" +
" start with" +
" emp_code = (select emp_code from users where (Profile_Id = 'RSR-BEM1' OR Profile_Id = 'ADMIN' OR Profile_Id ='FLM-RBM' ) And code='"+loginId+"')" +
" connect by prior" +
" emp_code = report_to" +
" )" +
" )" +
" AND SM.SALES_PERS IN (" + salesPerson + " )" +
" and sm.status='Y'" +
" and trim(UPPER(sm.class_code_descr))='CLASS A'" +
" group by" +
" sm.sales_pers," +
" sales_pers.sp_name," +
" sm.sc_code," +
" nvl(strg_customer.first_name,'')||' '||nvl(strg_customer.middle_name,'')" +
" ||nvl(strg_customer.last_name,'') ," +
" sm.spl_code ," +
" sm.class_code_descr," +
" station.descr" +
" ) a" +
" group by" +
" a.sr," +
" a.sales_pers," +
" a.strg_code," +
" a.CUST_NAME," +
" a.speciality_code," +
" a.territory," +
" a.class_descr," +
" a.FIRST_MONTH," +
" a.SECOND_MONTH," +
" a.THIRD_MONTH " +
" union all" +
" select" +
" a.sr," +
" a.sales_pers||TO_CHAR(" +
" sum(a.sp_name)" +
" ) as sales_pers," +
" ' ' as SALESPERSON_NAME," +
" a.strg_code," +
" a.CUST_NAME," +
" a.speciality_code," +
" a.territory," +
" a.class_descr," +
" a.FIRST_MONTH," +
" a.SECOND_MONTH," +
" a.THIRD_MONTH" +
" from" +
" (" +
" select" +
" 3 as sr," +
" ((select" +
" count(strg_meet.strg_code)" +
" from strg_meet" +
" where" +
" strg_meet.sales_pers=sm.sales_pers" +
" and strg_meet.strg_type='C'" +
" and strg_meet.strg_code=sm.sc_code" +
" and to_char(strg_meet.event_date,'MONYYYY') = TO_CHAR(add_months(TO_DATE('"+month+"','MM'),-2),'MON')||'"+year+"'" +
" ) +" +
" (select" +
" count(strg_meet.strg_code)" +
" from strg_meet" +
" where" +
" strg_meet.sales_pers=sm.sales_pers" +
" and strg_meet.strg_type='C'" +
" and strg_meet.strg_code=sm.sc_code" +
" and to_char(strg_meet.event_date,'MONYYYY') =TO_CHAR(add_months(TO_DATE('"+month+"','MM'),-1),'MON')||'"+year+"'" +
" ) +" +
" (select" +
" count(strg_meet.strg_code)" +
" from strg_meet" +
" where" +
" strg_meet.sales_pers=sm.sales_pers" +
" and strg_meet.strg_type='C'" +
" and strg_meet.strg_code=sm.sc_code" +
" and to_char(strg_meet.event_date,'MONYYYY') ='"+month+"'||'"+year+"'" +
" ) ) as sp_name," +
" sm.sales_pers||' ACTUAL CLASS A DOCTOR VISITS : ' as sales_pers," +
" ' ' as strg_code," +
" ' ' as CUST_NAME," +
" ' ' as speciality_code," +
" ' ' as territory," +
" ' ' as class_descr," +
" to_number('') as FIRST_MONTH," +
" to_number('') as SECOND_MONTH," +
" to_number('') as THIRD_MONTH" +
" from" +
" strg_series sm," +
" sales_pers," +
" strg_customer," +
" employee" +
" left outer join station" +
" on trim(employee.hobby4)=trim(station.stan_code)" +
" WHERE" +
" sm.sales_pers=sales_pers.sales_pers" +
" and sm.sc_code=strg_customer.sc_code" +
" and sales_pers.sales_pers=employee.emp_code" +
" and SM.cust_type = 'C'" +
" and sales_pers.item_ser='OTC'" +
" And" +
" (" +
" SM.Sales_Pers IN" +
" (" +
" select" +
" emp_code" +
" from" +
" employee" +
" start with" +
" emp_code = (select emp_code from users where (Profile_Id = 'RSR-BEM1' OR Profile_Id = 'ADMIN' OR Profile_Id ='FLM-RBM' ) And code='"+loginId+"')" +
" connect by prior" +
" emp_code = report_to" +
" )" +
" )" +
" AND SM.SALES_PERS IN (" + salesPerson + " )" +
" and sm.status='Y'" +
" and trim(UPPER(sm.class_code_descr))='CLASS A'" +
" group by" +
" sm.sales_pers," +
" sales_pers.sp_name," +
" sm.sc_code," +
" nvl(strg_customer.first_name,'')||' '||nvl(strg_customer.middle_name,'')" +
" ||nvl(strg_customer.last_name,'') ," +
" sm.spl_code ," +
" sm.class_code_descr," +
" station.descr" +
" ) a" +
" group by" +
" a.sr," +
" a.sales_pers," +
" a.strg_code," +
" a.CUST_NAME," +
" a.speciality_code," +
" a.territory," +
" a.class_descr," +
" a.FIRST_MONTH," +
" a.SECOND_MONTH," +
" a.THIRD_MONTH " +
" UNION ALL" +
" select" +
" a.sr," +
" a.sales_pers || to_char(count(*) * 3) as sales_pers," +
" ' ' as SALESPERSON_NAME," +
" a.strg_code," +
" a.CUST_NAME," +
" a.speciality_code," +
" a.territory," +
" a.class_descr," +
" a.FIRST_MONTH," +
" a.SECOND_MONTH," +
" a.THIRD_MONTH" +
" from" +
" (" +
" select" +
" 4 as sr," +
" sm.sales_pers||' EXPECTED CLASS B DOCTOR VISITS : ' as sales_pers," +
" ' ' as strg_code," +
" ' ' as CUST_NAME," +
" ' ' as speciality_code," +
" ' ' as territory," +
" ' ' as class_descr," +
" to_number('') as FIRST_MONTH," +
" to_number('') as SECOND_MONTH," +
" to_number('') as THIRD_MONTH" +
" from" +
" strg_series sm," +
" sales_pers," +
" strg_customer," +
" employee" +
" left outer join station" +
" on trim(employee.hobby4)=trim(station.stan_code)" +
" WHERE" +
" sm.sales_pers=sales_pers.sales_pers" +
" and sm.sc_code=strg_customer.sc_code" +
" and sales_pers.sales_pers=employee.emp_code" +
" and SM.cust_type = 'C'" +
" and sales_pers.item_ser='OTC'" +
" And" +
" (" +
" SM.Sales_Pers IN" +
" (" +
" select" +
" emp_code" +
" from" +
" employee" +
" start with" +
" emp_code = (select emp_code from users where (Profile_Id = 'RSR-BEM1' OR Profile_Id = 'ADMIN' OR Profile_Id ='FLM-RBM' ) And code='"+loginId+"')" +
" connect by prior" +
" emp_code = report_to" +
" )" +
" )" +
" AND SM.SALES_PERS IN (" + salesPerson + " )" +
" and sm.status='Y'" +
" and trim(UPPER(sm.class_code_descr))='CLASS B'" +
" group by" +
" sm.sales_pers," +
" sales_pers.sp_name," +
" sm.sc_code," +
" nvl(strg_customer.first_name,'')||' '||nvl(strg_customer.middle_name,'')" +
" ||nvl(strg_customer.last_name,'') ," +
" sm.spl_code ," +
" sm.class_code_descr," +
" station.descr" +
" ) a" +
" group by" +
" a.sr," +
" a.sales_pers," +
" a.strg_code," +
" a.CUST_NAME," +
" a.speciality_code," +
" a.territory," +
" a.class_descr," +
" a.FIRST_MONTH," +
" a.SECOND_MONTH," +
" a.THIRD_MONTH " +
" UNION ALL" +
" select" +
" a.sr," +
" a.sales_pers||TO_CHAR(" +
" sum(a.sp_name)" +
" ) as sales_pers," +
" ' ' as SALESPERSON_NAME," +
" a.strg_code," +
" a.CUST_NAME," +
" a.speciality_code," +
" a.territory," +
" a.class_descr," +
" a.FIRST_MONTH," +
" a.SECOND_MONTH," +
" a.THIRD_MONTH" +
" from" +
" (" +
" select" +
" 5 as sr," +
" sm.sales_pers||' ACTUAL CLASS B DOCTOR VISITS : ' as sales_pers," +
" ((select" +
" count(strg_meet.strg_code)" +
" from strg_meet" +
" where" +
" strg_meet.sales_pers=sm.sales_pers" +
" and strg_meet.strg_type='C'" +
" and strg_meet.strg_code=sm.sc_code" +
" and to_char(strg_meet.event_date,'MONYYYY') = TO_CHAR(add_months(TO_DATE('"+month+"','MM'),-2),'MON')||'"+year+"'" +
" ) +" +
" (select" +
" count(strg_meet.strg_code)" +
" from strg_meet" +
" where" +
" strg_meet.sales_pers=sm.sales_pers" +
" and strg_meet.strg_type='C'" +
" and strg_meet.strg_code=sm.sc_code" +
" and to_char(strg_meet.event_date,'MONYYYY') =TO_CHAR(add_months(TO_DATE('"+month+"','MM'),-1),'MON')||'"+year+"'" +
" ) +" +
" (select" +
" count(strg_meet.strg_code)" +
" from strg_meet" +
" where" +
" strg_meet.sales_pers=sm.sales_pers" +
" and strg_meet.strg_type='C'" +
" and strg_meet.strg_code=sm.sc_code" +
" and to_char(strg_meet.event_date,'MONYYYY') ='"+month+"'||'"+year+"'" +
" ) ) as sp_name," +
" ' ' as strg_code," +
" ' ' as CUST_NAME," +
" ' ' as speciality_code," +
" ' ' as territory," +
" ' ' as class_descr," +
" to_number('') as FIRST_MONTH," +
" to_number('') as SECOND_MONTH," +
" to_number('') as THIRD_MONTH" +
" from" +
" strg_series sm," +
" sales_pers," +
" strg_customer," +
" employee" +
" left outer join station" +
" on trim(employee.hobby4)=trim(station.stan_code)" +
" WHERE" +
" sm.sales_pers=sales_pers.sales_pers" +
" and sm.sc_code=strg_customer.sc_code" +
" and sales_pers.sales_pers=employee.emp_code" +
" and SM.cust_type = 'C'" +
" and sales_pers.item_ser='OTC'" +
" And" +
" (" +
" SM.Sales_Pers IN" +
" (" +
" select" +
" emp_code" +
" from" +
" employee" +
" start with" +
" emp_code = (select emp_code from users where (Profile_Id = 'RSR-BEM1' OR Profile_Id = 'ADMIN' OR Profile_Id ='FLM-RBM' ) And code='"+loginId+"')" +
" connect by prior" +
" emp_code = report_to" +
" )" +
" )" +
" AND SM.SALES_PERS IN (" + salesPerson + " )" +
" and sm.status='Y'" +
" and trim(UPPER(sm.class_code_descr))='CLASS B'" +
" group by" +
" sm.sales_pers," +
" sales_pers.sp_name," +
" sm.sc_code," +
" nvl(strg_customer.first_name,'')||' '||nvl(strg_customer.middle_name,'')" +
" ||nvl(strg_customer.last_name,'') ," +
" sm.spl_code ," +
" sm.class_code_descr," +
" station.descr" +
" ) a" +
" group by" +
" a.sr," +
" a.sales_pers," +
" a.strg_code," +
" a.CUST_NAME," +
" a.speciality_code," +
" a.territory," +
" a.class_descr," +
" a.FIRST_MONTH," +
" a.SECOND_MONTH," +
" a.THIRD_MONTH " +
" ) A" +
" ORDER BY " +
" A.sales_pers," +
" A.SR";
*/
sql = " SELECT A.sales_pers, A.SALESPERSON_NAME, A.strg_code, A.CUST_NAME, A.speciality_code, A.territory, " +
" A.class_descr, A.FIRST_MONTH, A.SECOND_MONTH, A.THIRD_MONTH FROM ( select 1 as sr, sm.sales_pers, " +
" sales_pers.sp_name as SALESPERSON_NAME, SM.sc_code as strg_code, nvl(strg_customer.first_name,'')|| " +
" ' '||nvl(strg_customer.middle_name,'') ||nvl(strg_customer.last_name,'') as CUST_NAME, sm.spl_code " +
" as speciality_code, station.descr as territory, sm.class_code_descr as class_descr, " +
" (select count(strg_meet.strg_code) from strg_meet where strg_meet.sales_pers=sm.sales_pers " +
" and strg_meet.strg_type='C' and strg_meet.strg_code=sm.sc_code " +
" and to_char(strg_meet.event_date,'MONYYYY') = TO_CHAR(add_months(TO_DATE('"+month+"','MM'),-2),'MON')||'"+year+"' ) " +
" as FIRST_MONTH, (select count(strg_meet.strg_code) from strg_meet where strg_meet.sales_pers=sm.sales_pers " +
" and strg_meet.strg_type='C' and strg_meet.strg_code=sm.sc_code " +
" and to_char(strg_meet.event_date,'MONYYYY') =TO_CHAR(add_months(TO_DATE('"+month+"','MM'),-1),'MON')||'"+year+"' ) " +
" as SECOND_MONTH, (select count(strg_meet.strg_code) from strg_meet where strg_meet.sales_pers=sm.sales_pers " +
" and strg_meet.strg_type='C' and strg_meet.strg_code=sm.sc_code and to_char(strg_meet.event_date,'MONYYYY') ='"+month+"'||'"+year+"' ) " +
" as THIRD_MONTH from strg_series sm, sales_pers, strg_customer, " +
" employee left outer join station on trim(employee.hobby4)=trim(station.stan_code) " +
" WHERE sm.sales_pers=sales_pers.sales_pers and sm.sc_code=strg_customer.sc_code " +
" and sales_pers.sales_pers=employee.emp_code and SM.cust_type = 'C' " +
" and sales_pers.item_ser='OTC' And SM.SALES_PERS IN (" + salesPerson + ") " +
" and sm.status='Y' group by sm.sales_pers, sales_pers.sp_name, sm.sc_code, " +
" nvl(strg_customer.first_name,'')||' '||nvl(strg_customer.middle_name,'') ||nvl(strg_customer.last_name,'') , " +
" sm.spl_code , sm.class_code_descr, station.descr union all select a.sr, a.sales_pers||to_char(count(*) * 6) " +
" as sales_pers, ' ' as SALESPERSON_NAME, a.strg_code, a.CUST_NAME, a.speciality_code, a.territory, a.class_descr, " +
" a.FIRST_MONTH, a.SECOND_MONTH, a.THIRD_MONTH " +
" from ( select 2 as sr, sm.sales_pers||' EXPECTED CLASS A DOCTOR VISITS : ' as sales_pers, ' ' as strg_code," +
" ' ' as CUST_NAME, ' ' as speciality_code, ' ' as territory, ' ' as class_descr, to_number('') as FIRST_MONTH, " +
" to_number('') as SECOND_MONTH, to_number('') as THIRD_MONTH from strg_series sm, sales_pers, strg_customer, " +
" employee left outer join station on trim(employee.hobby4)=trim(station.stan_code) " +
" WHERE sm.sales_pers=sales_pers.sales_pers and sm.sc_code=strg_customer.sc_code " +
" and sales_pers.sales_pers=employee.emp_code and SM.cust_type = 'C' and sales_pers.item_ser='OTC' " +
" And SM.SALES_PERS IN (" + salesPerson + ") and sm.status='Y' " +
" and trim(UPPER(sm.class_code_descr))='CLASS A' group by sm.sales_pers, sales_pers.sp_name, " +
" sm.sc_code, nvl(strg_customer.first_name,'')||' '||nvl(strg_customer.middle_name,'') ||nvl(strg_customer.last_name,'') , " +
" sm.spl_code , sm.class_code_descr, station.descr ) a group by a.sr, a.sales_pers, " +
" a.strg_code, a.CUST_NAME, a.speciality_code, a.territory, a.class_descr, a.FIRST_MONTH, a.SECOND_MONTH, " +
" a.THIRD_MONTH union all select a.sr, a.sales_pers||TO_CHAR( sum(a.sp_name) ) as sales_pers, " +
" ' ' as SALESPERSON_NAME, a.strg_code, a.CUST_NAME, a.speciality_code, a.territory, a.class_descr, " +
" a.FIRST_MONTH, a.SECOND_MONTH, a.THIRD_MONTH from ( select 3 as sr, " +
" ((select count(strg_meet.strg_code) from strg_meet where strg_meet.sales_pers=sm.sales_pers " +
" and strg_meet.strg_type='C' and strg_meet.strg_code=sm.sc_code and to_char(strg_meet.event_date,'MONYYYY') = TO_CHAR(add_months(TO_DATE('"+month+"','MM'), " +
" -2),'MON')||'"+year+"' ) + (select count(strg_meet.strg_code) from strg_meet " +
" where strg_meet.sales_pers=sm.sales_pers and strg_meet.strg_type='C' " +
" and strg_meet.strg_code=sm.sc_code and to_char(strg_meet.event_date,'MONYYYY') =TO_CHAR(add_months(TO_DATE('"+month+"','MM'), " +
" -1),'MON')||'"+year+"' ) + (select count(strg_meet.strg_code) from strg_meet where strg_meet.sales_pers=sm.sales_pers " +
" and strg_meet.strg_type='C' and strg_meet.strg_code=sm.sc_code and to_char(strg_meet.event_date, " +
" 'MONYYYY') ='"+month+"'||'"+year+"' ) ) as sp_name, sm.sales_pers||' ACTUAL CLASS A DOCTOR VISITS : ' as sales_pers, " +
" ' ' as strg_code, ' ' as CUST_NAME, ' ' as speciality_code, ' ' as territory, " +
" ' ' as class_descr, to_number('') as FIRST_MONTH, to_number('') as SECOND_MONTH, to_number('') as THIRD_MONTH " +
" from strg_series sm, sales_pers, strg_customer, employee left outer join station on trim(employee.hobby4)=trim(station.stan_code) " +
" WHERE sm.sales_pers=sales_pers.sales_pers and sm.sc_code=strg_customer.sc_code and sales_pers.sales_pers=employee.emp_code " +
" and SM.cust_type = 'C' and sales_pers.item_ser='OTC' And SM.SALES_PERS IN (" + salesPerson + ") " +
" and sm.status='Y' and trim(UPPER(sm.class_code_descr))='CLASS A' " +
" group by sm.sales_pers, sales_pers.sp_name, sm.sc_code, nvl(strg_customer.first_name,'')||' '||nvl(strg_customer.middle_name, " +
" '') ||nvl(strg_customer.last_name,'') , sm.spl_code , sm.class_code_descr, station.descr ) a " +
" group by a.sr, a.sales_pers, a.strg_code, a.CUST_NAME, a.speciality_code, a.territory, a.class_descr, " +
" a.FIRST_MONTH, a.SECOND_MONTH, a.THIRD_MONTH UNION ALL select a.sr, a.sales_pers || to_char(count(*) * 3) " +
" as sales_pers, ' ' as SALESPERSON_NAME, a.strg_code, a.CUST_NAME, a.speciality_code, a.territory, a.class_descr, " +
" a.FIRST_MONTH, a.SECOND_MONTH, a.THIRD_MONTH from ( select 4 as sr, sm.sales_pers||' EXPECTED CLASS B DOCTOR VISITS : ' as sales_pers, " +
" ' ' as strg_code, ' ' as CUST_NAME, ' ' as speciality_code, ' ' as territory, " +
" ' ' as class_descr, to_number('') as FIRST_MONTH, to_number('') as SECOND_MONTH, " +
" to_number('') as THIRD_MONTH from strg_series sm, sales_pers, strg_customer, " +
" employee left outer join station on trim(employee.hobby4)=trim(station.stan_code) " +
" WHERE sm.sales_pers=sales_pers.sales_pers and sm.sc_code=strg_customer.sc_code and " +
" sales_pers.sales_pers=employee.emp_code and SM.cust_type = 'C' and sales_pers.item_ser='OTC' And " +
" SM.SALES_PERS IN (" + salesPerson + ") and sm.status='Y' " +
" and trim(UPPER(sm.class_code_descr))='CLASS B' group by sm.sales_pers, sales_pers.sp_name, " +
" sm.sc_code, nvl(strg_customer.first_name,'')||' '||nvl(strg_customer.middle_name,'') ||nvl(strg_customer.last_name,'') , " +
" sm.spl_code , sm.class_code_descr, station.descr ) a group by a.sr, a.sales_pers, a.strg_code, " +
" a.CUST_NAME, a.speciality_code, a.territory, a.class_descr, a.FIRST_MONTH, a.SECOND_MONTH, " +
" a.THIRD_MONTH UNION ALL select a.sr, a.sales_pers||TO_CHAR( sum(a.sp_name) ) as sales_pers, " +
" ' ' as SALESPERSON_NAME, a.strg_code, a.CUST_NAME, a.speciality_code, a.territory, a.class_descr, a.FIRST_MONTH, " +
" a.SECOND_MONTH, a.THIRD_MONTH from ( select 5 as sr, sm.sales_pers||' ACTUAL CLASS B DOCTOR VISITS : ' as sales_pers," +
" ((select count(strg_meet.strg_code) from strg_meet where strg_meet.sales_pers=sm.sales_pers " +
" and strg_meet.strg_type='C' and strg_meet.strg_code=sm.sc_code and to_char(strg_meet.event_date,'MONYYYY') = TO_CHAR(add_months(TO_DATE('"+month+"','MM'), " +
" -2),'MON')||'"+year+"' ) + (select count(strg_meet.strg_code) from strg_meet where strg_meet.sales_pers=sm.sales_pers " +
" and strg_meet.strg_type='C' and strg_meet.strg_code=sm.sc_code and to_char(strg_meet.event_date, " +
" 'MONYYYY') =TO_CHAR(add_months(TO_DATE('"+month+"','MM'),-1),'MON')||'"+year+"' ) + (select count(strg_meet.strg_code) " +
" from strg_meet where strg_meet.sales_pers=sm.sales_pers and strg_meet.strg_type='C' and strg_meet.strg_code=sm.sc_code and " +
" to_char(strg_meet.event_date,'MONYYYY') ='"+month+"'||'"+year+"' ) ) as sp_name, ' ' as strg_code, ' ' as CUST_NAME, " +
" ' ' as speciality_code, ' ' as territory, ' ' as class_descr, to_number('') as FIRST_MONTH, to_number('') " +
" as SECOND_MONTH, to_number('') as THIRD_MONTH from strg_series sm, sales_pers, strg_customer, " +
" employee left outer join station on trim(employee.hobby4)=trim(station.stan_code) " +
" WHERE sm.sales_pers=sales_pers.sales_pers and sm.sc_code=strg_customer.sc_code and " +
" sales_pers.sales_pers=employee.emp_code and SM.cust_type = 'C' and sales_pers.item_ser='OTC' And " +
" SM.SALES_PERS IN (" + salesPerson + ") and sm.status='Y' and " +
" trim(UPPER(sm.class_code_descr))='CLASS B' group by sm.sales_pers, sales_pers.sp_name, sm.sc_code," +
" nvl(strg_customer.first_name,'')||' '||nvl(strg_customer.middle_name,'') ||nvl(strg_customer.last_name,'') , " +
" sm.spl_code , sm.class_code_descr, station.descr ) a group by a.sr, a.sales_pers, a.strg_code, a.CUST_NAME, " +
" a.speciality_code, a.territory, a.class_descr, a.FIRST_MONTH, a.SECOND_MONTH, a.THIRD_MONTH ) " +
" A ORDER BY A.sales_pers, A.SR ";
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
int count = 0;
while (rs.next())
{
rowData = new JSONObject();
rowData.put("sales_pers", rs.getString("sales_pers"));
rowData.put("salesperson_name", rs.getString("salesperson_name"));
rowData.put("strg_code", rs.getString("strg_code"));
rowData.put("cust_name", rs.getString("cust_name"));
rowData.put("speciality_code", (rs.getString("speciality_code")));
rowData.put("territory", (rs.getString("territory")));
rowData.put("class_descr", rs.getString("class_descr"));
rowData.put("first_month", rs.getString("FIRST_MONTH"));
rowData.put("second_month", rs.getString("second_month"));
rowData.put("third_month", rs.getString("third_month"));
rawDataMnthDivWiseSalesJson.put(count, rowData);
count++;
}
}
catch (Exception e)
{
e.printStackTrace();
throw new ITMException(e);
}
finally
{
try
{
if (conn != null)
{
if (rs != null)
rs.close();
rs = null;
if (pstmt != null)
pstmt.close();
pstmt = null;
conn.close();
conn = null;
}
conn = null;
} catch (Exception d)
{
d.printStackTrace();
System.out.println("Exception in :OutletsVisitEJB :" + d.getMessage());
throw new ITMException(d);
}
}
return rawDataMnthDivWiseSalesJson;
}
}
package ibase.dashboard.sfa.ejb;
import java.rmi.RemoteException;
import ibase.webitm.ejb.ValidatorLocal;
import ibase.webitm.utility.ITMException;
import javax.ejb.Local;
import org.json.simple.JSONObject;
@Local
public interface OutletsVisitLocal extends ValidatorLocal
{
public JSONObject getOutletVisitDetails(String loginId, String salesPerson, String month, String year,String dataSourceName) throws RemoteException, ITMException;
}
package ibase.dashboard.sfa.ejb;
import java.rmi.RemoteException;
import ibase.webitm.ejb.ValidatorRemote;
import ibase.webitm.utility.ITMException;
import javax.ejb.Remote;
import org.json.simple.JSONObject;
@Remote
public interface OutletsVisitRemote extends ValidatorRemote
{
public JSONObject getOutletVisitDetails(String loginId, String salesPerson, String month, String year,String dataSourceName) throws RemoteException, ITMException;
}
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