home *** CD-ROM | disk | FTP | other *** search
/ PC World 1998 October / PCWorld_1998-10_cd.bin / software / prehled / inprise / JSAMPLES.Z / CalcColumnFrame1.java < prev    next >
Text File  |  1998-05-08  |  4KB  |  107 lines

  1. /*
  2.  * Copyright (c) 1997-1998 Borland International, Inc. All Rights Reserved.
  3.  * 
  4.  * This SOURCE CODE FILE, which has been provided by Borland as part
  5.  * of a Borland product for use ONLY by licensed users of the product,
  6.  * includes CONFIDENTIAL and PROPRIETARY information of Borland.  
  7.  *
  8.  * USE OF THIS SOFTWARE IS GOVERNED BY THE TERMS AND CONDITIONS 
  9.  * OF THE LICENSE STATEMENT AND LIMITED WARRANTY FURNISHED WITH
  10.  * THE PRODUCT.
  11.  *
  12.  * IN PARTICULAR, YOU WILL INDEMNIFY AND HOLD BORLAND, ITS RELATED
  13.  * COMPANIES AND ITS SUPPLIERS, HARMLESS FROM AND AGAINST ANY CLAIMS
  14.  * OR LIABILITIES ARISING OUT OF THE USE, REPRODUCTION, OR DISTRIBUTION
  15.  * OF YOUR PROGRAMS, INCLUDING ANY CLAIMS OR LIABILITIES ARISING OUT OF
  16.  * OR RESULTING FROM THE USE, MODIFICATION, OR DISTRIBUTION OF PROGRAMS
  17.  * OR FILES CREATED FROM, BASED ON, AND/OR DERIVED FROM THIS SOURCE
  18.  * CODE FILE.
  19.  */
  20. package borland.samples.tutorial.dataset.calccolumn;
  21.  
  22. import java.awt.*;
  23. import java.awt.event.*;
  24. import borland.jbcl.control.*;
  25. import borland.jbcl.layout.*;
  26. import borland.sql.dataset.*;
  27. import borland.jbcl.dataset.*;
  28. import borland.jbcl.util.*;   // add this import statement
  29. import java.math.BigDecimal;
  30. import java.lang.*;
  31.  
  32.  
  33. public class CalcColumnFrame1 extends DecoratedFrame {
  34.   BorderLayout borderLayout1 = new BorderLayout();
  35.   BevelPanel bevelPanel1 = new BevelPanel();
  36.   NavigatorControl navigatorControl1 = new NavigatorControl();
  37.   Database database1 = new Database();
  38.   QueryDataSet queryDataSet1 = new QueryDataSet();
  39.   GridControl gridControl1 = new GridControl();
  40.   Column column1 = new Column();
  41.   GridBagLayout gridBagLayout1 = new GridBagLayout();
  42.  
  43.  
  44.   //Construct the frame
  45.   public CalcColumnFrame1() {
  46.     try {
  47.       jbInit();
  48.     }
  49.     catch (Exception e) {
  50.       borland.jbcl.util.Diagnostic.printStackTrace(e);
  51.     };
  52.   }
  53.  
  54.   //Component initialization
  55.   private void jbInit() throws Exception{
  56.     this.setLayout(borderLayout1);
  57.     this.setSize(new Dimension(483, 299));
  58.     this.setTitle("Calculated Columns Example");
  59.     navigatorControl1.setDataSet(queryDataSet1);
  60.     bevelPanel1.setLayout(gridBagLayout1);
  61.     database1.setConnection(new borland.sql.dataset.ConnectionDescriptor("jdbc:odbc:dataset tutorial", "sysdba", "masterkey", false, "sun.jdbc.odbc.JdbcOdbcDriver;borland.interclient.Driver"));
  62.     queryDataSet1.setQuery(new borland.sql.dataset.QueryDescriptor(database1, "select * from employee", null, true, Load.ALL));
  63.     queryDataSet1.addCalcFieldsListener(new CalcColumnFrame1_queryDataSet1_calcFieldsAdapter(this));
  64.     gridControl1.setDataSet(queryDataSet1);
  65.     column1.setCalcType(borland.jbcl.dataset.CalcType.CALC);
  66.     column1.setCaption("NEW_SALARY");
  67.     column1.setColumnName("NEW_SALARY");
  68.     column1.setDataType(borland.jbcl.util.Variant.BIGDECIMAL);
  69.     column1.setDisplayMask("");
  70.     column1.setEditMask("");
  71.     column1.setExportDisplayMask("");
  72.     this.add(bevelPanel1, BorderLayout.CENTER);
  73.     bevelPanel1.add(navigatorControl1, new GridBagConstraints2(0, 0, 1, 1, 1.0, 0.0
  74.             ,GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL, new Insets(6, 6, 6, 6), -9, 9));
  75.     bevelPanel1.add(gridControl1, new GridBagConstraints2(0, 1, 2, 1, 1.0, 1.0
  76.             ,GridBagConstraints.NORTHWEST, GridBagConstraints.BOTH, new Insets(0, 0, 0, 0), 0, 0));
  77.     queryDataSet1.setColumns(new Column[] {column1});
  78.   }
  79.  
  80.   // Override getPreferredSize() to set initial frame size
  81.   public Dimension getPreferredSize()
  82.   {
  83.     return new Dimension(480, 300);
  84.   }
  85.  
  86.   void queryDataSet1_calcFields(ReadRow readRow, DataRow dataRow, boolean boolean1)
  87.     throws DataSetException
  88.   {
  89.     dataRow.setBigDecimal("New_Salary", readRow.getBigDecimal("SALARY").multiply(new BigDecimal(1.1)));
  90.   }
  91. }
  92.  
  93. class CalcColumnFrame1_queryDataSet1_calcFieldsAdapter implements borland.jbcl.dataset.CalcFieldsListener {
  94.   CalcColumnFrame1 adaptee;
  95.  
  96.   CalcColumnFrame1_queryDataSet1_calcFieldsAdapter(CalcColumnFrame1 adaptee) {
  97.     this.adaptee = adaptee;
  98.   }
  99.  
  100.   public void calcFields(ReadRow readRow, DataRow dataRow, boolean boolean1)
  101.     throws DataSetException
  102.   {
  103.     adaptee.queryDataSet1_calcFields(readRow, dataRow, boolean1);
  104.   }
  105. }
  106.  
  107.