FR [ 1884435 ] Add more DB.getSQLValue helper methods
This commit is contained in:
parent
071d9768d8
commit
bd8324ebb9
|
@ -36,10 +36,6 @@ import org.compiere.process.*;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* General Database Interface
|
* General Database Interface
|
||||||
* <p>
|
|
||||||
* <ul>
|
|
||||||
* <li>2007-01-30 - teo_sarca - [ 1647864 ] WAN: delete record error
|
|
||||||
* </ul>
|
|
||||||
*
|
*
|
||||||
* @author Jorg Janke
|
* @author Jorg Janke
|
||||||
* @version $Id: DB.java,v 1.8 2006/10/09 00:22:29 jjanke Exp $
|
* @version $Id: DB.java,v 1.8 2006/10/09 00:22:29 jjanke Exp $
|
||||||
|
@ -48,6 +44,10 @@ import org.compiere.process.*;
|
||||||
* get a new connection from database pool manager which manages all connections
|
* get a new connection from database pool manager which manages all connections
|
||||||
* set rw/ro properties for the connection accordingly.
|
* set rw/ro properties for the connection accordingly.
|
||||||
* @author Ashley Ramdass (Posterita)
|
* @author Ashley Ramdass (Posterita)
|
||||||
|
*
|
||||||
|
* @author Teo Sarca, SC ARHIPAC SERVICE SRL
|
||||||
|
* <li>BF [ 1647864 ] WAN: delete record error
|
||||||
|
* <li>FR [ 1884435 ] Add more DB.getSQLValue helper methods
|
||||||
*/
|
*/
|
||||||
public final class DB
|
public final class DB
|
||||||
{
|
{
|
||||||
|
@ -1176,6 +1176,42 @@ public final class DB
|
||||||
return retValue;
|
return retValue;
|
||||||
} // getSQLValue
|
} // getSQLValue
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get int Value from sql
|
||||||
|
* @param trxName trx
|
||||||
|
* @param sql sql
|
||||||
|
* @param params array of parameters
|
||||||
|
* @return first value or -1
|
||||||
|
*/
|
||||||
|
public static int getSQLValue (String trxName, String sql, Object... params)
|
||||||
|
{
|
||||||
|
int retValue = -1;
|
||||||
|
PreparedStatement pstmt = null;
|
||||||
|
ResultSet rs = null;
|
||||||
|
try
|
||||||
|
{
|
||||||
|
pstmt = prepareStatement(sql, trxName);
|
||||||
|
for (int i = 0; i < params.length; i++) {
|
||||||
|
pstmt.setObject(i+1, params[i]);
|
||||||
|
}
|
||||||
|
rs = pstmt.executeQuery();
|
||||||
|
if (rs.next())
|
||||||
|
retValue = rs.getInt(1);
|
||||||
|
else
|
||||||
|
log.info("No Value " + sql);
|
||||||
|
}
|
||||||
|
catch (Exception e)
|
||||||
|
{
|
||||||
|
log.log(Level.SEVERE, sql, e);
|
||||||
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
close(rs, pstmt);
|
||||||
|
rs = null; pstmt = null;
|
||||||
|
}
|
||||||
|
return retValue;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get String Value from sql
|
* Get String Value from sql
|
||||||
* @param trxName trx
|
* @param trxName trx
|
||||||
|
@ -1212,6 +1248,42 @@ public final class DB
|
||||||
return retValue;
|
return retValue;
|
||||||
} // getSQLValueString
|
} // getSQLValueString
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get String Value from sql
|
||||||
|
* @param trxName trx
|
||||||
|
* @param sql sql
|
||||||
|
* @param params array of parameters
|
||||||
|
* @return first value or null
|
||||||
|
*/
|
||||||
|
public static String getSQLValueString (String trxName, String sql, Object... params)
|
||||||
|
{
|
||||||
|
String retValue = null;
|
||||||
|
PreparedStatement pstmt = null;
|
||||||
|
ResultSet rs = null;
|
||||||
|
try
|
||||||
|
{
|
||||||
|
pstmt = prepareStatement(sql, trxName);
|
||||||
|
for (int i = 0; i < params.length; i++) {
|
||||||
|
pstmt.setObject(i+1, params[i]);
|
||||||
|
}
|
||||||
|
rs = pstmt.executeQuery();
|
||||||
|
if (rs.next())
|
||||||
|
retValue = rs.getString(1);
|
||||||
|
else
|
||||||
|
log.info("No Value " + sql);
|
||||||
|
}
|
||||||
|
catch (Exception e)
|
||||||
|
{
|
||||||
|
log.log(Level.SEVERE, sql, e);
|
||||||
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
close(rs, pstmt);
|
||||||
|
rs = null; pstmt = null;
|
||||||
|
}
|
||||||
|
return retValue;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get BigDecimal Value from sql
|
* Get BigDecimal Value from sql
|
||||||
* @param trxName trx
|
* @param trxName trx
|
||||||
|
@ -1247,7 +1319,79 @@ public final class DB
|
||||||
}
|
}
|
||||||
return retValue;
|
return retValue;
|
||||||
} // getSQLValueBD
|
} // getSQLValueBD
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get BigDecimal Value from sql
|
||||||
|
* @param trxName trx
|
||||||
|
* @param sql sql
|
||||||
|
* @param params array of parameters
|
||||||
|
* @return first value or null
|
||||||
|
*/
|
||||||
|
public static BigDecimal getSQLValueBD (String trxName, String sql, Object... params)
|
||||||
|
{
|
||||||
|
BigDecimal retValue = null;
|
||||||
|
PreparedStatement pstmt = null;
|
||||||
|
ResultSet rs = null;
|
||||||
|
try
|
||||||
|
{
|
||||||
|
pstmt = prepareStatement(sql, trxName);
|
||||||
|
for (int i = 0; i < params.length; i++) {
|
||||||
|
pstmt.setObject(i+1, params[i]);
|
||||||
|
}
|
||||||
|
rs = pstmt.executeQuery();
|
||||||
|
if (rs.next())
|
||||||
|
retValue = rs.getBigDecimal(1);
|
||||||
|
else
|
||||||
|
log.info("No Value " + sql);
|
||||||
|
}
|
||||||
|
catch (Exception e)
|
||||||
|
{
|
||||||
|
log.log(Level.SEVERE, sql, e);
|
||||||
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
close(rs, pstmt);
|
||||||
|
rs = null; pstmt = null;
|
||||||
|
}
|
||||||
|
return retValue;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get Timestamp Value from sql
|
||||||
|
* @param trxName trx
|
||||||
|
* @param sql sql
|
||||||
|
* @param params array of parameters
|
||||||
|
* @return first value or null
|
||||||
|
*/
|
||||||
|
public static Timestamp getSQLValueTS (String trxName, String sql, Object... params)
|
||||||
|
{
|
||||||
|
Timestamp retValue = null;
|
||||||
|
PreparedStatement pstmt = null;
|
||||||
|
ResultSet rs = null;
|
||||||
|
try
|
||||||
|
{
|
||||||
|
pstmt = prepareStatement(sql, trxName);
|
||||||
|
for (int i = 0; i < params.length; i++) {
|
||||||
|
pstmt.setObject(i+1, params[i]);
|
||||||
|
}
|
||||||
|
rs = pstmt.executeQuery();
|
||||||
|
if (rs.next())
|
||||||
|
retValue = rs.getTimestamp(1);
|
||||||
|
else
|
||||||
|
log.info("No Value " + sql);
|
||||||
|
}
|
||||||
|
catch (Exception e)
|
||||||
|
{
|
||||||
|
log.log(Level.SEVERE, sql, e);
|
||||||
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
close(rs, pstmt);
|
||||||
|
rs = null; pstmt = null;
|
||||||
|
}
|
||||||
|
return retValue;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get Array of Key Name Pairs
|
* Get Array of Key Name Pairs
|
||||||
* @param sql select with id / name as first / second column
|
* @param sql select with id / name as first / second column
|
||||||
|
|
Loading…
Reference in New Issue