home *** CD-ROM | disk | FTP | other *** search
/ PC World 1998 October / PCWorld_1998-10_cd.bin / software / prehled / inprise / JSAMPLES.Z / AggCalc_Frame.java < prev    next >
Text File  |  1998-05-08  |  4KB  |  96 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.aggcalc;
  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.*;
  29.  
  30. public class AggCalc_Frame extends DecoratedFrame {
  31.   BorderLayout borderLayout1 = new BorderLayout();
  32.   BevelPanel bevelPanel1 = new BevelPanel();
  33.   Database database1 = new Database();
  34.   QueryDataSet queryDataSet1 = new QueryDataSet();
  35.   GridControl gridControl1 = new GridControl();
  36.   TextFieldControl textFieldControl1 = new TextFieldControl();
  37.   Column column1 = new Column();
  38.   LabelControl labelControl1 = new LabelControl();
  39.   Column column2 = new Column();
  40.   Column column3 = new Column();
  41.   BorderLayout borderLayout2 = new BorderLayout();
  42.   BevelPanel bevelPanel2 = new BevelPanel();
  43.   GridBagLayout gridBagLayout1 = new GridBagLayout();
  44.   Column column4 = new Column();
  45.  
  46.   //Construct the frame
  47.   public AggCalc_Frame() {
  48.     try {
  49.       jbInit();
  50.           }
  51.     catch (Exception e) {
  52.       borland.jbcl.util.Diagnostic.printStackTrace(e);
  53.     }
  54.   }
  55.  
  56.   //Component initialization
  57.   private void jbInit() throws Exception{
  58.     this.setLayout(borderLayout1);
  59.     this.setSize(new Dimension(540, 359));
  60.     this.setTitle("Aggregate Calculated Column");
  61.     bevelPanel1.setLayout(borderLayout2);
  62.     database1.setConnection(new borland.sql.dataset.ConnectionDescriptor("jdbc:odbc:dataset tutorial", "sysdba", "masterkey", false, "sun.jdbc.odbc.JdbcOdbcDriver;borland.interclient.Driver"));
  63.     queryDataSet1.setQuery(new borland.sql.dataset.QueryDescriptor(database1, "select cust_no, PO_NUMBER, SHIP_DATE , TOTAL_VALUE  from sales", null, true, Load.ALL));
  64.     gridControl1.setDataSet(queryDataSet1);
  65.     gridControl1.setPreferredSize(new Dimension(400, 500));
  66.     textFieldControl1.setColumnName("GROUP_TOTAL");
  67.     textFieldControl1.setDataSet(queryDataSet1);
  68.     this.add(bevelPanel1, BorderLayout.CENTER);
  69.     bevelPanel1.add(gridControl1, BorderLayout.NORTH);
  70.     this.add(bevelPanel2, BorderLayout.SOUTH);
  71.     bevelPanel2.add(labelControl1, new GridBagConstraints2(0, 0, 1, 1, 1.0, 0.0
  72.             ,GridBagConstraints.WEST, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 0, 0));
  73.     bevelPanel2.add(textFieldControl1, new GridBagConstraints2(1, 0, 1, 1, 2.0, 0.0
  74.             ,GridBagConstraints.EAST, GridBagConstraints.HORIZONTAL, new Insets(0, 0, 0, 0), 0, 0));
  75.     column1.setCalcType(borland.jbcl.dataset.CalcType.AGGREGATE);
  76.     column1.setCaption("GROUP_TOTAL");
  77.     column1.setColumnName("GROUP_TOTAL");
  78.     column1.setDataType(borland.jbcl.util.Variant.BIGDECIMAL);
  79.     column1.setAgg(new AggDescriptor(new String[] { "cust_no" }, "TOTAL_VALUE",
  80.       new SumAggOperator()));
  81.     labelControl1.setText("Customer Total Sales:");
  82.     column2.setColumnName("PO_NUMBER");
  83.     column2.setDataType(borland.jbcl.util.Variant.STRING);
  84.     column3.setColumnName("CUST_NO");
  85.     column3.setDataType(borland.jbcl.util.Variant.INT);
  86.     column4.setColumnName("SHIP_DATE");
  87.     column4.setDataType(borland.jbcl.util.Variant.TIMESTAMP);
  88.     bevelPanel2.setLayout(gridBagLayout1);
  89.     queryDataSet1.setColumns(new Column[] {column1, column3, column2, column4});
  90.   }
  91.  
  92. }
  93.  
  94.  
  95.  
  96.