Commit 1abfada2 authored by dpawar's avatar dpawar

Receipt back flush changes (Sandesh Surve)


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@95089 ce508802-f39f-4f6c-b175-0d175dae99d5
parent 324cdd72
...@@ -2237,6 +2237,397 @@ public class InvAcct ...@@ -2237,6 +2237,397 @@ public class InvAcct
} }
// code Added by mahesh on 23-05-2014
public String rbfpost(String tranId,String tranSer,Connection conn) throws ITMException{
PreparedStatement pstmt = null,pstmt1 = null;
ResultSet rs = null,rs1 = null;
String errString = "",invOnLine = "";
String sql = "",itemSer = "",tempAcctcodeCr = "";
java.sql.Date rcpTranDate = null;
String siteCodeHdr = "",finEntityHdr = "",currCodeHdr = "";
String tranType="",analysis=""; // added by cpatil on 09-03-13
String[] analysisStr =null;
String analysis1__dr="",analysis2__dr="",analysis3__dr="",analysis1__cr="",analysis2__cr="",analysis3__cr="" ;
Timestamp tranDateHdr = null;
double exchRateHdr = 1;
String rcpItemCode = "",rcpLocCode = "",rcpLotNo = "",rcpLotSl = "";
double rcpAmount = 0,rcpInvValue = 0,rcpGrossInvValue = 0;
String issItemCode = "",issLocCode = "",issLotNo = "",issLotSl = "";
double issAmount = 0,issGrossAmount = 0;
String acctCodeCr = "",acctCodeDr = "",cctrCodeCr = "",cctrCodeDr = "";
double convGl = 0;
String acctCodeConvGl = "",cctrCodeConvGl = "";
FinCommon finCommon = null;
ITMDBAccessEJB itmDBAccessEJB = null;
HashMap glTrace = null;
int len=0;
try{
System.out.println("///////////////////Inside Rbf Post/////////////////////");
/* stmt = conn.createStatement();
stmt1 = conn.createStatement();*/
glTrace = new HashMap();
itmDBAccessEJB = new ITMDBAccessEJB();
finCommon = new FinCommon();
invOnLine = finCommon.getFinparams("999999","INV_ACCT_RB",conn);
if(invOnLine == null || invOnLine.equalsIgnoreCase("NULLFOUND")){
errString = itmDBAccessEJB.getErrorString("","VTFINPARM","","",conn);
return errString;
}
System.out.println("invOnLine :: "+invOnLine);
invOnLine = invOnLine.substring(0,1);
if("Y_N".indexOf(invOnLine) == -1){
errString = itmDBAccessEJB.getErrorString("","VTFINPARM1","","",conn);
return errString;
}
if(!invOnLine.equalsIgnoreCase("Y")){
return "";
}
sql = "select tran_date,site_code,acct_code__conv_gl,cctr_code__conv_gl from receipt_backflush where tran_id = ?";
System.out.println("SQL :"+sql);
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, tranId);
rs1 = pstmt.executeQuery();
if(rs1.next()){
tranDateHdr = rs1.getTimestamp("tran_date");
siteCodeHdr = rs1.getString("site_code");
acctCodeConvGl = rs1.getString("acct_code__conv_gl");
cctrCodeConvGl = rs1.getString("cctr_code__conv_gl");
}
rs1.close();
pstmt.close();
pstmt = null;
sql = "select fin_entity from site where site_code = ?";
System.out.println("SQL :"+sql);
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, siteCodeHdr);
rs1 = pstmt.executeQuery();
if(rs1.next()){
finEntityHdr = rs1.getString("fin_entity");
}
rs1.close();
pstmt.close();
pstmt = null;
sql = "select curr_code from finent where fin_entity = ?";
System.out.println("SQL :"+sql);
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, finEntityHdr);
rs1 = pstmt.executeQuery();
if(rs1.next()){
currCodeHdr = rs1.getString("curr_code");
}
rs1.close();
pstmt.close();
pstmt = null;
sql = "select item_code, loc_code, lot_no, lot_sl,amount " +
"from receipt_backflush_det where tran_id = ?";
System.out.println("SQL :"+sql);
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, tranId);
rs = pstmt.executeQuery();
while(rs.next()){
issItemCode = rs.getString("item_code");
issLocCode = rs.getString("loc_code");
issLotNo = rs.getString("lot_no");
issLotSl = rs.getString("lot_sl");
issAmount = rs.getDouble("amount");
if(issAmount > 0){
sql = "select acct_code__inv, cctr_code__inv from stock " +
"where item_code = ? and " +
"site_code = ? and " +
"loc_code = ? and " +
"lot_no = ? and " +
"lot_sl = ? ";
System.out.println("SQL :"+sql);
pstmt1 = conn.prepareStatement(sql);
pstmt1.setString(1, issItemCode);
pstmt1.setString(2, siteCodeHdr);
pstmt1.setString(3, issLocCode);
pstmt1.setString(4, issLotNo);
pstmt1.setString(5, issLotSl);
rs1 = pstmt1.executeQuery();
if(rs1.next()){
acctCodeCr = rs1.getString("acct_code__inv");
cctrCodeCr = rs1.getString("cctr_code__inv");
}else{
errString = itmDBAccessEJB.getErrorString("","VTACCTINV","","",conn);
return errString;
}
rs1.close();
pstmt1.close();
pstmt1 = null;
}else{
sql = "select item_ser from item where item_code = ?";
System.out.println("SQL :"+sql);
pstmt1 = conn.prepareStatement(sql);
pstmt1.setString(1, issItemCode);
rs1 = pstmt1.executeQuery();
if(rs1.next()){
itemSer = rs1.getString("item_ser");
}
rs1.close();
pstmt1.close();
pstmt1 = null;
tempAcctcodeCr = finCommon.getFromAcctDetr(issItemCode,itemSer,"IN",conn);
acctCodeCr = tempAcctcodeCr.substring(0,tempAcctcodeCr.indexOf(","));
cctrCodeCr = tempAcctcodeCr.substring(tempAcctcodeCr.indexOf(",")+1);
}
glTrace.put("tran_date",tranDateHdr);
glTrace.put("eff_date",tranDateHdr);
glTrace.put("fin_entity",finEntityHdr);
glTrace.put("site_code",siteCodeHdr);
glTrace.put("sundry_type","O");
glTrace.put("sundry_code","");
glTrace.put("acct_code",acctCodeCr);
glTrace.put("cctr_code",cctrCodeCr);
glTrace.put("emp_code","");
glTrace.put("anal_code","");
glTrace.put("curr_code",currCodeHdr);
glTrace.put("exch_rate",Double.toString(exchRateHdr));
if(issAmount > 0){
glTrace.put("dr_amt","0");
glTrace.put("cr_amt",Double.toString(issAmount));
}else{
glTrace.put("dr_amt",Double.toString( 0 - issAmount));
glTrace.put("cr_amt","0");
}
glTrace.put("ref_type","I");
glTrace.put("ref_ser",tranSer);
glTrace.put("ref_id",tranId);
glTrace.put("remarks","");
//------ Analysis CR 23-May-2014
analysis = AcctAnalysisType( issItemCode,"R-BFS", tranType, "CR", conn);
analysisStr = analysis.split("@");
len = analysisStr.length-1;
//System.out.println("@@@cr len["+len+"]");
if( len > -1 )
{
analysis1__cr = analysisStr[0];
}
else
{
analysis1__cr = "";
}
if( len > 0 )
{
analysis2__cr = analysisStr[1];
}
else
{
analysis2__cr = "";
}
if( len > 1)
{
analysis3__cr = analysisStr[2];
}
else
{
analysis3__cr ="";
}
System.out.println("@@@@@CR analysis1__cr["+analysis1__cr+"]:::analysis2__cr["+analysis2__cr+"]::::analysis3__cr["+analysis3__cr+"]");
glTrace.put("analysis1",analysis1__cr);
glTrace.put("analysis2",analysis2__cr);
glTrace.put("analysis3",analysis3__cr);
//--- Analysis CR ends here
errString = finCommon.glTraceUpdate(glTrace,conn);
if(errString != null && errString.trim().length() > 0){
return errString;
}
issGrossAmount = issGrossAmount + issAmount;
glTrace.clear();
}
rs.close();
pstmt.close();
pstmt = null;
//amount field should be same as inv_value in rcp_backflush_rcpt
sql = "select item_code,loc_code,lot_no,lot_sl,amount,inv_value from receipt_backflush " +
"where tran_id = ?";
System.out.println("SQL :"+sql);
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, tranId);
rs = pstmt.executeQuery();
if(rs.next()){
rcpItemCode = rs.getString("item_code");
rcpLocCode = rs.getString("loc_code");
rcpLotNo = rs.getString("lot_no");
rcpLotSl = rs.getString("lot_sl");
rcpAmount = rs.getDouble("amount");
rcpInvValue = rs.getDouble("inv_value");
if(rcpAmount >= 0){
tempAcctcodeCr = finCommon.getFromAcctDetr(rcpItemCode,itemSer,"IN",conn);
acctCodeDr = tempAcctcodeCr.substring(0,tempAcctcodeCr.indexOf(","));
cctrCodeDr = tempAcctcodeCr.substring(tempAcctcodeCr.indexOf(",")+1);
}else{
sql = "select acct_code__inv, cctr_code__inv from stock " +
"where item_code = ? " +
"and site_code = ? " +
"and loc_code = ? " +
"and lot_no = ? " +
"and lot_sl = ?";
System.out.println("SQL :"+sql);
pstmt1 = conn.prepareStatement(sql);
pstmt1.setString(1, rcpItemCode);
pstmt1.setString(2, siteCodeHdr);
pstmt1.setString(3, rcpLocCode);
pstmt1.setString(4, rcpLotNo);
pstmt1.setString(5, rcpLotSl);
rs1 = pstmt1.executeQuery();
if(rs1.next()){
acctCodeDr = rs1.getString("acct_code__inv");
cctrCodeDr = rs1.getString("cctr_code__inv");
}
rs1.close();
pstmt1.close();
pstmt1 = null;
}
if(acctCodeDr == null || acctCodeDr.trim().length() == 0){
errString = itmDBAccessEJB.getErrorString("","VTACCTIN","","",conn);
return errString;
}
glTrace.put("tran_date",tranDateHdr);
glTrace.put("eff_date",tranDateHdr);
glTrace.put("fin_entity",finEntityHdr);
glTrace.put("site_code",siteCodeHdr);
glTrace.put("sundry_type","O");
glTrace.put("sundry_code","");
glTrace.put("acct_code",acctCodeDr);
glTrace.put("cctr_code",cctrCodeDr);
glTrace.put("emp_code","");
glTrace.put("anal_code","");
glTrace.put("curr_code",currCodeHdr);
glTrace.put("exch_rate",Double.toString(exchRateHdr));
if(rcpInvValue > 0){
glTrace.put("dr_amt",Double.toString(rcpInvValue));
glTrace.put("cr_amt","0");
}else{
glTrace.put("dr_amt","0");
glTrace.put("cr_amt",Double.toString(0 - rcpInvValue));
}
glTrace.put("ref_type","I");
glTrace.put("ref_ser",tranSer);
glTrace.put("ref_id",tranId);
glTrace.put("remarks","");
// Analysis debit code added 23-May-2014
analysis = AcctAnalysisType( rcpItemCode, "R-BFS", tranType, "DR", conn);
System.out.println("@@@@DR return analysis["+analysis+"]");
//analysisStr = analysis.split("@@@@@@2 analysis::["+analysis+"]");
analysisStr = analysis.split("@");
len = analysisStr.length-1;
System.out.println("@@@Dr len["+len+"]");
if( len > -1)
{
analysis1__dr = analysisStr[0];
}
else
{
analysis1__dr = "";
}
if( len > 0)
{
analysis2__dr = analysisStr[1];
}
else
{
analysis2__dr = "";
}
if( len > 1)
{
analysis3__dr = analysisStr[2];
}
else
{
analysis3__dr ="";
}
System.out.println("@@@@@DR analysis1__dr["+analysis1__dr+"]:::analysis2__dr["+analysis2__dr+"]::::analysis3__dr["+analysis3__dr+"]");
glTrace.put("analysis1",analysis1__dr);
glTrace.put("analysis2",analysis2__dr);
glTrace.put("analysis3",analysis3__dr);
//--------- Analysis code debit ends here
errString = finCommon.glTraceUpdate(glTrace,conn);
if(errString != null && errString.trim().length() > 0){
return errString;
}
rcpGrossInvValue = rcpGrossInvValue + rcpInvValue;
//glTrace.clear();
}
convGl = issGrossAmount - rcpGrossInvValue;
System.out.println("ConvGl (issGrossAmount - rcpGrossInvValue): "+convGl);
if(convGl != 0){
if(acctCodeConvGl == null || acctCodeConvGl.trim().length() == 0){
errString = itmDBAccessEJB.getErrorString("","VTACCTIN","","",conn);
return errString;
}
if(cctrCodeConvGl == null || cctrCodeConvGl.trim().length() == 0){
cctrCodeConvGl = " ";
}
glTrace.put("acct_code",acctCodeConvGl);
glTrace.put("cctr_code",cctrCodeConvGl);
if(convGl > 0){
glTrace.put("dr_amt",Double.toString(convGl));
glTrace.put("cr_amt","0");
}else{
glTrace.put("dr_amt","0");
glTrace.put("cr_amt",Double.toString(0 - convGl));
}
errString = finCommon.glTraceUpdate(glTrace,conn);
if(errString != null && errString.trim().length() > 0){
return errString;
}
}
errString = finCommon.checkGlTranDrCr(tranSer,tranId,conn);
}catch(Exception e){
System.out.println("Exception e"+e);
e.printStackTrace();
throw new ITMException(e);
}finally{
try{
glTrace.clear();
glTrace = null;
if(rs != null){
rs.close();
rs = null;
}
if(rs1 != null){
rs1.close();
rs1 = null;
}
if(pstmt != null){
pstmt.close();
pstmt = null;
}
if(pstmt1 != null){
pstmt1.close();
pstmt1 = null;
}
}catch(Exception e){
System.out.println("Exception in Finally : "+e);
}
}
System.out.println("Returning String From Rbfpost :: "+errString);
return errString;
}
// End of Code added by mahesh
} }
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