/*
* $Log$
*
* DO NOT CHANGE THIS FILE or CHANGE IT WITH CARE!!!
* FILE GENERATED BY Gaud ( version 1.4 - build (build 376)
*
* on Wed Apr 14 18:19:19 WEST 2010
*
*
*
*/
package com.m16e.mpbiz.tables;
import java.io.*;
import java.math.*;
import java.sql.*;
import java.text.*;
import java.util.*;
import com.m16e.tools.*;
import com.m16e.tools.db.*;
import com.m16e.tools.xgm.*;
import com.m16e.tools.xml.*;
import java.math.BigDecimal;
import org.apache.log4j.Logger;
////////////////////////////////////////////////////////////
public class DbProdAltPrice
extends DbTab
implements DbTableInterface
{
static Logger logger = Logger.getLogger( DbProdAltPrice.class );
public final static String XGM_FORM_PROD_ALT_PRICE =
"xgm-form-prod-alt-price.xml";
public final static String XGM_FORM_PROD_ALT_PRICE_FRAME =
"form-prod-alt-price-frame";
public final static String XGM_LIST_PROD_ALT_PRICE =
"xgm-list-prod-alt-price.xml";
public final static String XGM_LIST_PROD_ALT_PRICE_FRAME =
"list-prod-alt-price-frame";
public final static String T_NAME = "prod_alt_price";
public final static String[] FIELDS =
{ "alt_price_id",
"prod_id",
"validation_period_id",
"price",
"margin" };
public final static int ALT_PRICE_ID = 0;
public final static int PROD_ID = 1;
public final static int VALIDATION_PERIOD_ID = 2;
public final static int PRICE = 3;
public final static int MARGIN = 4;
public final static String FN_ALT_PRICE_ID = "alt_price_id";
public final static String FN_PROD_ID = "prod_id";
public final static String FN_VALIDATION_PERIOD_ID = "validation_period_id";
public final static String FN_PRICE = "price";
public final static String FN_MARGIN = "margin";
XmlTreeNode xtnTabLayout = null;
XmlTreeNode xtnFormLayout = null;
////////////////////////////////////////////////////////////
public DbProdAltPrice()
throws SQLException
{
super( T_NAME );
setDataModel( getDataModel() );
}
////////////////////////////////////////////////////////////
public DbProdAltPrice( ResultSet rs )
throws SQLException
{
this();
setTuple( rs );
}
////////////////////////////////////////////////////////////
public DbProdAltPrice( Tuple t )
throws SQLException
{
this();
setTuple( t );
}
////////////////////////////////////////////////////////////
public static DbProdAltPrice getTable( Object... pkey )
throws SQLException, MpToolsException
{
DbProdAltPrice table = new DbProdAltPrice();
java.util.List<Integer> lstPK = table.getPrimaryKey();
int i = 0;
for( Object o : pkey )
{
table.setValue( lstPK.get( i++ ), o );
}
if( !table.getById() )
{
table = null;
}
return table;
}
////////////////////////////////////////////////////////////
public static DbProdAltPrice getSingleRecord(
String where, Object... args )
throws SQLException, DatabaseException
{
DbProdAltPrice obj = new DbProdAltPrice();
StringBuffer select = new StringBuffer();
select.append( "select * from " + DbProdAltPrice.T_NAME );
if( where != null && where.trim().length() > 0 )
{
select.append( " where " + where );
}
int i = 1;
PreparedStatement ps =
MpAppContext.getInstance().getDatabase().getPreparedStatement( select.toString() );
for( Object arg : args )
{
ps.setObject( i++, arg );
}
if( logger.isTraceEnabled() )
{
logger.trace( "query: \n" + ps.toString() );
}
ResultSet rs = ps.executeQuery();
if( rs.next() )
obj = new DbProdAltPrice( rs );
else
obj = null;
rs.close();
ps.close();
return obj;
}
////////////////////////////////////////////////////////////
public static java.util.List<DbProdAltPrice> getList(
String where, String order, Object... args )
throws SQLException, DatabaseException
{
DbProdAltPrice obj = new DbProdAltPrice();
java.util.List<Tuple> lst =
obj.selectWithArgs( false, where, order, args );
java.util.List<DbProdAltPrice> lstObj = new Vector<DbProdAltPrice>( DbWorkingTable.ARR_INIT_CAP, DbWorkingTable.ARR_CAP_INCR );
for( Tuple t : lst )
{
obj = new DbProdAltPrice();
obj.setTuple( t );
lstObj.add( obj );
}
return lstObj;
}
////////////////////////////////////////////////////////////
public static java.util.List<DbProdAltPrice> getList(
boolean validateMaxRows, String where, String order, Object... args )
throws SQLException, DatabaseException
{
DbProdAltPrice obj = new DbProdAltPrice();
java.util.List<Tuple> lst =
obj.selectWithArgs( validateMaxRows, where, order, args );
java.util.List<DbProdAltPrice> lstObj = new Vector<DbProdAltPrice>( DbWorkingTable.ARR_INIT_CAP, DbWorkingTable.ARR_CAP_INCR );
for( Tuple t : lst )
{
obj = new DbProdAltPrice();
obj.setTuple( t );
lstObj.add( obj );
}
return lstObj;
}
////////////////////////////////////////////////////////////
public TupleDataModel getDataModel()
{
java.util.List<TupleColDataModel> tcdm = new Vector<TupleColDataModel>( 10, 10 );
for( int f = 0; f < FIELDS.length; f++ )
{
DbField dbField = super.getField( f );
int len = dbField.getTotalLen();
switch( dbField.getDbFieldType() )
{
case INT:
len = 8;
break;
case DOUBLE:
len = 15;
break;
default:
if( len > 40 )
len = 40;
break;
}
tcdm.add( new TupleColDataModel( dbField ) );
}
TupleDataModel tdm =
new TupleDataModel( getDbTable(), "DbProdAltPrice.class", tcdm );
return tdm;
}
////////////////////////////////////////////////////////////
public DbTableInterface createTab( String tableName, ResultSet rs)
throws SQLException
{
DbProdAltPrice dbProdAltPrice = new DbProdAltPrice( rs );
return dbProdAltPrice;
}
////////////////////////////////////////////////////////////
public XmlTreeNode getTabLayout()
throws XgmException
{
if( xtnTabLayout == null )
{
try
{
String s = XgmFactory.getInstance().readLayout( XGM_FORM_PROD_ALT_PRICE );
xtnFormLayout = new XmlTreeNode();
xtnFormLayout.fromXml( s );
s = XgmFactory.getInstance().readLayout( XGM_LIST_PROD_ALT_PRICE );
xtnTabLayout = new XmlTreeNode();
xtnTabLayout.fromXml( s );
}
catch( Exception e )
{
String msg = e.getLocalizedMessage();
logger.error( e.getMessage(), e );
throw new XgmException( XgmException.IO_ERROR, e.getMessage() );
}
}
return xtnTabLayout;
}
////////////////////////////////////////////////////////////
public XmlTreeNode getFormLayout()
throws XgmException
{
if( xtnFormLayout == null )
{
try
{
String s = XgmFactory.getInstance().readLayout( XGM_FORM_PROD_ALT_PRICE );
xtnFormLayout = new XmlTreeNode();
xtnFormLayout.fromXml( s );
s = XgmFactory.getInstance().readLayout( XGM_FORM_PROD_ALT_PRICE );
xtnFormLayout = new XmlTreeNode();
xtnFormLayout.fromXml( s );
}
catch( Exception e )
{
String msg = e.getLocalizedMessage();
logger.error( e.getMessage(), e );
throw new XgmException( XgmException.IO_ERROR, e.getMessage() );
}
}
return xtnFormLayout;
}
////////////////////////////////////////////////////////////
public String getTabLayoutFilename()
{
return XGM_LIST_PROD_ALT_PRICE;
}
////////////////////////////////////////////////////////////
public String getFormLayoutFilename()
{
return XGM_FORM_PROD_ALT_PRICE;
}
////////////////////////////////////////////////////////////
public boolean getById()
throws SQLException
{
Database db = MpAppContext.getInstance().getDatabase();
Tuple tuple = getTuple();
java.util.List<Integer> kFields = getPrimaryKey();
int nCols = getFieldCount();
PreparedStatement ps =
db.getPreparedStatement(
"select * from prod_alt_price where alt_price_id = ? and prod_id = ? and validation_period_id = ?" );
ps.setObject( 1, tuple.get( kFields.get( 0 ) ) );
ps.setObject( 2, tuple.get( kFields.get( 1 ) ) );
ps.setObject( 3, tuple.get( kFields.get( 2 ) ) );
if( logger.isTraceEnabled() )
{
logger.trace( "query: \n" + ps.toString() );
}
boolean found = false;
ResultSet rs = ps.executeQuery();
if ( rs.next() )
{
found = true;
for( int f = 0; f < nCols; f++ )
{
Object o = rs.getObject( f + 1 );
if( o instanceof String )
o = ((String) o).trim();
tuple.setAll( f, o );
}
}
rs.close();
ps.close();
return found;
}
////////////////////////////////////////////////////////////
public static DbProdAltPrice getById(
Integer altPriceId,
Integer prodId,
Integer validationPeriodId )
throws SQLException, DatabaseException
{
return
DbProdAltPrice.getSingleRecord(
DbProdAltPrice.FN_ALT_PRICE_ID + " = ? and " +
DbProdAltPrice.FN_PROD_ID + " = ? and " +
DbProdAltPrice.FN_VALIDATION_PERIOD_ID + " = ?",
altPriceId,
prodId,
validationPeriodId );
}
////////////////////////////////////////////////////////////
public boolean fetchNext()
throws SQLException
{
Database db = MpAppContext.getInstance().getDatabase();
Tuple tuple = getTuple();
java.util.List<Integer> kFields = getPrimaryKey();
int nCols = getFieldCount();
PreparedStatement ps =
db.getPreparedStatement(
"select * from prod_alt_price where (alt_price_id > ?) or (alt_price_id = ? and prod_id > ?) or (alt_price_id = ? and prod_id = ? and validation_period_id > ?) order by alt_price_id, prod_id, validation_period_id limit 1" );
ps.setObject( 1, tuple.get( kFields.get( 0 ) ) );
ps.setObject( 2, tuple.get( kFields.get( 0 ) ) );
ps.setObject( 3, tuple.get( kFields.get( 1 ) ) );
ps.setObject( 4, tuple.get( kFields.get( 0 ) ) );
ps.setObject( 5, tuple.get( kFields.get( 1 ) ) );
ps.setObject( 6, tuple.get( kFields.get( 2 ) ) );
if( logger.isTraceEnabled() )
{
logger.trace( "query: \n" + ps.toString() );
}
boolean fetched = false;
ResultSet rs = ps.executeQuery();
if ( rs.next() )
{
fetched = true;
setTuple( rs );
}
rs.close();
ps.close();
return fetched;
}
////////////////////////////////////////////////////////////
public boolean fetchPrev()
throws SQLException
{
Database database = MpAppContext.getInstance().getDatabase();
Tuple tuple = getTuple();
java.util.List<Integer> kFields = getPrimaryKey();
int nCols = getFieldCount();
PreparedStatement ps =
database.getPreparedStatement(
"select * from prod_alt_price where (alt_price_id < ?) or (alt_price_id = ? and prod_id < ?) or (alt_price_id = ? and prod_id = ? and validation_period_id < ?) order by alt_price_id desc, prod_id desc, validation_period_id desc limit 1" );
ps.setObject( 1, tuple.get( kFields.get( 0 ) ) );
ps.setObject( 2, tuple.get( kFields.get( 0 ) ) );
ps.setObject( 3, tuple.get( kFields.get( 1 ) ) );
ps.setObject( 4, tuple.get( kFields.get( 0 ) ) );
ps.setObject( 5, tuple.get( kFields.get( 1 ) ) );
ps.setObject( 6, tuple.get( kFields.get( 2 ) ) );
if( logger.isTraceEnabled() )
{
logger.trace( "query: \n" + ps.toString() );
}
boolean fetched = false;
ResultSet rs = ps.executeQuery();
if ( rs.next() )
{
fetched = true;
setTuple( rs );
}
rs.close();
ps.close();
return fetched;
}
////////////////////////////////////////////////////////////
// Get/Set methods: BEGIN
////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////
public Integer getAltPriceId()
{
return getAltPriceId( getTuple() );
}
////////////////////////////////////////////////////////////
public static Integer getAltPriceId( Tuple tuple )
{
Integer value = (Integer) tuple.get( ALT_PRICE_ID );
return value;
}
////////////////////////////////////////////////////////////
public void setAltPriceId( Integer value )
{
setAltPriceId( getTuple(), value );
}
////////////////////////////////////////////////////////////
public void setAltPriceId( Integer value, boolean changed )
{
setAltPriceId( getTuple(), value );
setChangedField( ALT_PRICE_ID, changed );
}
////////////////////////////////////////////////////////////
public static void setAltPriceId( Tuple tuple, Integer value )
{
setValue( tuple, ALT_PRICE_ID, value );
}
////////////////////////////////////////////////////////////
public Integer getProdId()
{
return getProdId( getTuple() );
}
////////////////////////////////////////////////////////////
public static Integer getProdId( Tuple tuple )
{
Integer value = (Integer) tuple.get( PROD_ID );
return value;
}
////////////////////////////////////////////////////////////
public void setProdId( Integer value )
{
setProdId( getTuple(), value );
}
////////////////////////////////////////////////////////////
public void setProdId( Integer value, boolean changed )
{
setProdId( getTuple(), value );
setChangedField( PROD_ID, changed );
}
////////////////////////////////////////////////////////////
public static void setProdId( Tuple tuple, Integer value )
{
setValue( tuple, PROD_ID, value );
}
////////////////////////////////////////////////////////////
public Integer getValidationPeriodId()
{
return getValidationPeriodId( getTuple() );
}
////////////////////////////////////////////////////////////
public static Integer getValidationPeriodId( Tuple tuple )
{
Integer value = (Integer) tuple.get( VALIDATION_PERIOD_ID );
return value;
}
////////////////////////////////////////////////////////////
public void setValidationPeriodId( Integer value )
{
setValidationPeriodId( getTuple(), value );
}
////////////////////////////////////////////////////////////
public void setValidationPeriodId( Integer value, boolean changed )
{
setValidationPeriodId( getTuple(), value );
setChangedField( VALIDATION_PERIOD_ID, changed );
}
////////////////////////////////////////////////////////////
public static void setValidationPeriodId( Tuple tuple, Integer value )
{
setValue( tuple, VALIDATION_PERIOD_ID, value );
}
////////////////////////////////////////////////////////////
public Double getPrice()
{
return getPrice( getTuple() );
}
////////////////////////////////////////////////////////////
public static Double getPrice( Tuple tuple )
{
Double value = (Double) tuple.get( PRICE );
return value;
}
////////////////////////////////////////////////////////////
public void setPrice( Double value )
{
setPrice( getTuple(), value );
}
////////////////////////////////////////////////////////////
public void setPrice( Double value, boolean changed )
{
setPrice( getTuple(), value );
setChangedField( PRICE, changed );
}
////////////////////////////////////////////////////////////
public static void setPrice( Tuple tuple, Double value )
{
setValue( tuple, PRICE, value );
}
////////////////////////////////////////////////////////////
public Double getMargin()
{
return getMargin( getTuple() );
}
////////////////////////////////////////////////////////////
public static Double getMargin( Tuple tuple )
{
Double value = (Double) tuple.get( MARGIN );
return value;
}
////////////////////////////////////////////////////////////
public void setMargin( Double value )
{
setMargin( getTuple(), value );
}
////////////////////////////////////////////////////////////
public void setMargin( Double value, boolean changed )
{
setMargin( getTuple(), value );
setChangedField( MARGIN, changed );
}
////////////////////////////////////////////////////////////
public static void setMargin( Tuple tuple, Double value )
{
setValue( tuple, MARGIN, value );
}
////////////////////////////////////////////////////////////
// Get/Set methods: END
////////////////////////////////////////////////////////////
}
|