home *** CD-ROM | disk | FTP | other *** search
/ CD Actual Thematic 7: Programming / CDAT7.iso / Share / Java / JDesignerPro / Jdp3_0.exe / data1.cab / Program_Files / JDPSQLSelector.class (.txt) < prev    next >
Encoding:
Java Class File  |  1999-04-09  |  19.4 KB  |  974 lines

  1. import java.awt.BorderLayout;
  2. import java.awt.Component;
  3. import java.awt.Container;
  4. import java.awt.Event;
  5. import java.awt.Label;
  6. import java.awt.Panel;
  7. import java.util.StringTokenizer;
  8. import java.util.Vector;
  9.  
  10. public class JDPSQLSelector extends JDPClassLayout {
  11.    JDPUser user;
  12.    JDPJagg jaggSQL;
  13.    JDPPopupMessage popuppanel;
  14.    JDPMaskEdit JDPMaskEditMain;
  15.    String moduleParameter;
  16.    Panel Main;
  17.    JDPChiselFramePanel ChiselPanel1;
  18.    Panel Panel3;
  19.    Panel Panel1;
  20.    JDPCardPanel CardPanel1;
  21.    JDPSQLDelete Delete;
  22.    JDPSQLInsert Insert;
  23.    JDPSQLSelect Select;
  24.    JDPSQLUpdate Update;
  25.    JDPSQLStoredProc StoredProcedure;
  26.    Panel Panel2;
  27.    Label Label1;
  28.    JDPChoice Choice1;
  29.    Vector valueChoice1;
  30.    JDPButtons JDPButtons1;
  31.    boolean SQLOnly = false;
  32.    String prevDSNString;
  33.    JDPSelectDSN targetDSN;
  34.    JDPList prevColumns;
  35.    String prevTableString;
  36.    String alphabet = "abcdefghijklmnopqrstuvwxyz";
  37.    StringBuffer thisEntry;
  38.    StringTokenizer stok;
  39.    JDPInteractionMgr InteractionMgr;
  40.    JDPSourceItem classHeader;
  41.    Vector lastFunction;
  42.    Vector lastResults;
  43.    String prevDSNStringSP;
  44.    String prevProcName;
  45.  
  46.    public void InitClass(JDPUser var1, Panel var2, String var3) {
  47.       this.user = var1;
  48.       this.moduleParameter = var3;
  49.       super.targetPanel = var2;
  50.       this.jaggSQL = new JDPJagg(var1.jaggPath);
  51.       ((Container)this).setLayout(new BorderLayout());
  52.       this.popuppanel = new JDPPopupMessage(var1, this);
  53.       ((Container)this).add(this.popuppanel);
  54.       this.JDPMaskEditMain = new JDPMaskEdit();
  55.       this.Main = new Panel();
  56.       this.ChiselPanel1 = new JDPChiselFramePanel(var1, "Define the SQL Statement");
  57.       this.Panel3 = new Panel();
  58.       this.Panel1 = new Panel();
  59.       this.CardPanel1 = new JDPCardPanel();
  60.       this.Delete = new JDPSQLDelete();
  61.       this.Delete.InitClass(var1, var2, var3);
  62.       this.Insert = new JDPSQLInsert();
  63.       this.Insert.InitClass(var1, var2, var3);
  64.       this.Select = new JDPSQLSelect();
  65.       this.Select.InitClass(var1, var2, var3);
  66.       this.Update = new JDPSQLUpdate();
  67.       this.Update.InitClass(var1, var2, var3);
  68.       this.StoredProcedure = new JDPSQLStoredProc();
  69.       this.StoredProcedure.InitClass(var1, var2, var3);
  70.       this.Panel2 = new Panel();
  71.       this.Label1 = new Label("Choose the type of SQL to perform:", 0);
  72.       this.Choice1Main();
  73.       String[] var4 = new String[]{"Done", "Run SQL", "Cancel"};
  74.       int[] var5 = new int[]{JDPButton.getIconValue("Go"), JDPButton.getIconValue("Arrow"), JDPButton.getIconValue("Undo")};
  75.       this.JDPButtons1 = new JDPButtons(var1, var4, var5, JDPButtons.getAlignmentValue("Horizontal"));
  76.       this.Main.setLayout(new BorderLayout());
  77.       ((Container)this).add("Center", this.Main);
  78.       this.Main.add("Center", this.ChiselPanel1);
  79.       this.ChiselPanel1.add("Center", this.Panel3);
  80.       this.Panel3.setLayout(new BorderLayout());
  81.       this.Panel3.add("Center", this.Panel1);
  82.       this.Panel1.setLayout(new BorderLayout());
  83.       this.Panel1.add("Center", this.CardPanel1);
  84.       this.CardPanel1.add("Delete", this.Delete);
  85.       this.CardPanel1.add("Insert", this.Insert);
  86.       this.CardPanel1.add("Select", this.Select);
  87.       this.CardPanel1.add("Update", this.Update);
  88.       this.CardPanel1.add("StoredProcedure", this.StoredProcedure);
  89.       this.Panel3.add("North", this.Panel2);
  90.       this.Panel2.setLayout(new JDPLineLayout());
  91.       this.Panel2.add("Left", this.Label1);
  92.       this.Panel2.add("Left", this.Choice1);
  93.       this.Panel3.add("South", this.JDPButtons1);
  94.       var1.gParm.addElement(this);
  95.       this.InitComponents();
  96.    }
  97.  
  98.    public boolean handleEvent(Event var1) {
  99.       switch (var1.id) {
  100.          case 503:
  101.          case 504:
  102.          case 505:
  103.             this.popuppanel.postEvent(var1);
  104.             return false;
  105.          case 701:
  106.             if (var1.target.equals(this.Delete)) {
  107.                String var16 = this.Delete.whereColumns.getSelectedKey();
  108.                if (var16 != null) {
  109.                   var16 = var16.substring(var16.indexOf(":") + 1);
  110.                   this.loadGlobalVarMethods(Integer.parseInt(var16), this.Delete.getWhereSettingsHandle());
  111.                }
  112.  
  113.                return true;
  114.             } else if (var1.target.equals(this.Insert)) {
  115.                String var15 = (String)var1.arg;
  116.                if (var15.equals("insertColumns")) {
  117.                   String var34 = this.Insert.insertColumns.getSelectedKey();
  118.                   if (var34 != null) {
  119.                      var34 = var34.substring(var34.indexOf(":") + 1);
  120.                      this.loadGlobalVarMethods(Integer.parseInt(var34), this.Insert.getInsertValueHandle());
  121.                      String[] var40 = this.Insert.getSelectFromHandle().getSelectedItems();
  122.                      this.loadColumnsFromTable(var40, Integer.parseInt(var34), this.Insert.getInsertValueHandle());
  123.                   }
  124.                } else if (var15.equals("whereColumns")) {
  125.                   String var36 = this.Insert.whereColumns.getSelectedKey();
  126.                   if (var36 != null) {
  127.                      var36 = var36.substring(var36.indexOf(":") + 1);
  128.                      this.loadGlobalVarMethods(Integer.parseInt(var36), this.Insert.getWhereSettingsHandle());
  129.                      String[] var41 = this.Insert.getSelectFromHandle().getSelectedItems();
  130.                      this.loadColumnsFromTable(var41, Integer.parseInt(var36), this.Insert.getWhereSettingsHandle());
  131.                   }
  132.                }
  133.  
  134.                ((Container)this).layout();
  135.                ((Component)this).paintAll(((Component)this).getGraphics());
  136.                return true;
  137.             } else if (var1.target.equals(this.Select)) {
  138.                String var14 = (String)var1.arg;
  139.                if (var14.equals("selectColumns")) {
  140.                   String var30 = this.Select.selectColumns.getSelectedKey();
  141.                   if (var30 != null) {
  142.                      var30 = var30.substring(var30.indexOf(":") + 1);
  143.                      this.loadPlaceIntoVars(Integer.parseInt(var30), this.Select.getPlaceIntoHandle());
  144.                   }
  145.                } else if (var14.equals("whereColumns")) {
  146.                   String var32 = this.Select.whereColumns.getSelectedKey();
  147.                   if (var32 != null) {
  148.                      var32 = var32.substring(var32.indexOf(":") + 1);
  149.                      this.loadGlobalVarMethods(Integer.parseInt(var32), this.Select.getWhereSettingsHandle());
  150.                      String[] var39 = this.Select.getSelectFromHandle().getSelectedItems();
  151.                      this.loadColumnsFromTable(var39, Integer.parseInt(var32), this.Select.getWhereSettingsHandle());
  152.                   }
  153.                }
  154.  
  155.                ((Container)this).layout();
  156.                ((Component)this).paintAll(((Component)this).getGraphics());
  157.                return true;
  158.             } else if (var1.target.equals(this.Update)) {
  159.                String var13 = (String)var1.arg;
  160.                if (var13.equals("updateColumns")) {
  161.                   String var26 = this.Update.updateColumns.getSelectedKey();
  162.                   if (var26 != null) {
  163.                      var26 = var26.substring(var26.indexOf(":") + 1);
  164.                      this.loadGlobalVarMethods(Integer.parseInt(var26), this.Update.getUpdateValueHandle());
  165.                      String[] var4 = this.Update.getSelectFromHandle().getSelectedItems();
  166.                      this.loadColumnsFromTable(var4, Integer.parseInt(var26), this.Update.getUpdateValueHandle());
  167.                   }
  168.                } else if (var13.equals("whereColumns")) {
  169.                   String var28 = this.Update.whereColumns.getSelectedKey();
  170.                   if (var28 != null) {
  171.                      var28 = var28.substring(var28.indexOf(":") + 1);
  172.                      this.loadGlobalVarMethods(Integer.parseInt(var28), this.Update.getWhereSettingsHandle());
  173.                      String[] var38 = this.Update.getSelectFromHandle().getSelectedItems();
  174.                      this.loadColumnsFromTable(var38, Integer.parseInt(var28), this.Update.getWhereSettingsHandle());
  175.                   }
  176.                }
  177.  
  178.                ((Container)this).layout();
  179.                ((Component)this).paintAll(((Component)this).getGraphics());
  180.                return true;
  181.             } else {
  182.                if (var1.target.equals(this.StoredProcedure)) {
  183.                   String var12 = (String)var1.arg;
  184.                   if (var12.equals("paramColumns")) {
  185.                      String var22 = this.StoredProcedure.paramColumns.getSelectedKey();
  186.                      if (var22 != null) {
  187.                         var22 = var22.substring(var22.indexOf(":") + 1);
  188.                         this.loadGlobalVarMethods(Integer.parseInt(var22), this.StoredProcedure.getParamSettingsHandle());
  189.                      }
  190.                   } else if (var12.equals("returnedColumns")) {
  191.                      String var24 = this.StoredProcedure.returnedColumns.getSelectedKey();
  192.                      if (var24 != null) {
  193.                         var24 = var24.substring(var24.indexOf(":") + 1);
  194.                         this.loadPlaceIntoVars(Integer.parseInt(var24), this.StoredProcedure.getPlaceIntoHandle());
  195.                      }
  196.                   }
  197.  
  198.                   ((Container)this).layout();
  199.                   ((Component)this).paintAll(((Component)this).getGraphics());
  200.                   return true;
  201.                }
  202.  
  203.                return false;
  204.             }
  205.          case 1001:
  206.             if (var1.target.equals(this.Delete)) {
  207.                String[] var11 = new String[]{this.Delete.getTableHandle().getSelectedItem()};
  208.                this.loadColumns(var11, this.Delete.getWhereColumnsHandle());
  209.                return true;
  210.             } else if (var1.target.equals(this.Insert)) {
  211.                String var10 = (String)var1.arg;
  212.                if (var10.equals("Tables")) {
  213.                   String[] var20 = new String[]{this.Insert.getTableHandle().getSelectedItem()};
  214.                   this.loadColumns(var20, this.Insert.getInsertColumnsHandle());
  215.                } else if (var10.equals("SelectFrom")) {
  216.                   String[] var21 = this.Insert.getSelectFromHandle().getSelectedItems();
  217.                   this.loadColumns(var21, this.Insert.getWhereColumnsHandle());
  218.                }
  219.  
  220.                return true;
  221.             } else if (var1.target.equals(this.Select)) {
  222.                String var9 = (String)var1.arg;
  223.                if (var9.equals("SelectFrom")) {
  224.                   String[] var19 = this.Select.getSelectFromHandle().getSelectedItems();
  225.                   this.loadColumns(var19, this.Select.getSelectColumnsHandle());
  226.                   this.loadColumns(var19, this.Select.getWhereColumnsHandle());
  227.                }
  228.  
  229.                return true;
  230.             } else if (var1.target.equals(this.Update)) {
  231.                String var8 = (String)var1.arg;
  232.                if (var8.equals("Tables")) {
  233.                   String[] var18 = new String[]{this.Update.getTableHandle().getSelectedItem()};
  234.                   this.loadColumns(var18, this.Update.getUpdateColumnsHandle());
  235.                   this.loadColumns(var18, this.Update.getWhereColumnsHandle());
  236.                }
  237.  
  238.                return true;
  239.             } else if (var1.target.equals(this.StoredProcedure)) {
  240.                String var7 = (String)var1.arg;
  241.                if (var7.equals("StoredProcedures")) {
  242.                   String var3 = this.StoredProcedure.getStoredProceduresHandle().getSelectedItem();
  243.                   this.loadProcedureColumns(var3, this.StoredProcedure.getParamColumnsHandle(), this.StoredProcedure.getReturnedColumnsHandle());
  244.                }
  245.  
  246.                return true;
  247.             } else if (var1.target.equals(this.Choice1)) {
  248.                this.CardPanel1.setSelectedComp(this.user.u.replace(this.Choice1.getSelectedKey(), " ", ""));
  249.                return true;
  250.             } else if (var1.target.equals(this.JDPButtons1.button[0])) {
  251.                Event var6 = new Event(this, 1001, "SQLWizardDone");
  252.                ((Container)this).deliverEvent(var6);
  253.                return true;
  254.             } else if (var1.target.equals(this.JDPButtons1.button[1])) {
  255.                Event var5 = new Event(this, 1001, "SQLWizardRun");
  256.                ((Container)this).deliverEvent(var5);
  257.                return true;
  258.             } else {
  259.                if (var1.target.equals(this.JDPButtons1.button[2])) {
  260.                   Event var2 = new Event(this, 1001, "SQLWizardCancel");
  261.                   ((Container)this).deliverEvent(var2);
  262.                   return true;
  263.                }
  264.  
  265.                return false;
  266.             }
  267.          default:
  268.             return false;
  269.       }
  270.    }
  271.  
  272.    public void InitComponents() {
  273.       this.jaggSQL.setKeepConnectionOpen(false);
  274.       this.CardPanel1.setSelectedComp(this.Choice1.getSelectedKey());
  275.       this.lastFunction = new Vector();
  276.       this.lastResults = new Vector();
  277.    }
  278.  
  279.    void loadTables() {
  280.       if (this.targetDSN != null) {
  281.          String var1 = this.targetDSN.datasource.getText().trim() + this.targetDSN.userid.getText() + this.targetDSN.password.getText();
  282.          if (this.prevDSNString == null || !var1.equals(this.prevDSNString)) {
  283.             this.prevDSNString = var1;
  284.             JDPList var2 = this.Delete.getTableHandle();
  285.             JDPList var3 = this.Insert.getTableHandle();
  286.             JDPList var4 = this.Insert.getSelectFromHandle();
  287.             JDPList var5 = this.Select.getSelectFromHandle();
  288.             JDPList var6 = this.Update.getTableHandle();
  289.             JDPList var7 = this.Update.getSelectFromHandle();
  290.             this.Delete.clear();
  291.             this.Insert.clear();
  292.             this.Select.clear();
  293.             this.Update.clear();
  294.             int var9 = 0;
  295.             String var11 = this.jaggSQL.getSEP();
  296.             int var12 = 0;
  297.             String var14 = "";
  298.             this.targetDSN.datasource.getText().trim();
  299.             this.user.mainmsg.setStatusMsg("Loading Table definitions, please wait...", 0);
  300.             this.jaggSQL.loadSettings(this.targetDSN);
  301.             this.jaggSQL.setFCTN("SQLTables");
  302.             this.jaggSQL.setMRW("100000");
  303.             var12 = (boolean)1000;
  304.             String[] var15 = new String[]{"TABLE", "VIEW"};
  305.  
  306.             for(int var16 = 0; var16 < var15.length; ++var16) {
  307.                this.jaggSQL.setFCTNP(";;;" + var15[var16] + ";");
  308.                Vector var10 = new Vector();
  309.                var9 = this.jaggSQL.execSQL(var14, var10);
  310.                if (var9 == -1) {
  311.                   this.user.mainmsg.setStatusMsg("Could not connect to datasource. Please check the Connect String.", 20);
  312.                   return;
  313.                }
  314.  
  315.                this.jaggSQL.getColumnCount();
  316.                var12 = this.jaggSQL.getRowCount();
  317.  
  318.                for(int var20 = 0; var20 < var12; ++var20) {
  319.                   String var13 = (String)var10.elementAt(var20);
  320.                   if (var13 != null && var13.trim().compareTo("") != 0) {
  321.                      StringTokenizer var8 = new StringTokenizer(var13, var11);
  322.                      var8.nextToken();
  323.                      String var17 = var8.nextToken().trim();
  324.                      String var18;
  325.                      if (var17.length() > 0) {
  326.                         var18 = var17 + "." + var8.nextToken().trim();
  327.                      } else {
  328.                         var18 = var8.nextToken().trim();
  329.                      }
  330.  
  331.                      if (var18.indexOf(" ") >= 0) {
  332.                         var18 = "`" + var18 + "`";
  333.                      }
  334.  
  335.                      String var19 = var8.nextToken().trim();
  336.                      if (var19.equals("TABLE") || var19.equals("VIEW")) {
  337.                         var2.addItem(var18, 1);
  338.                         var3.addItem(var18, 1);
  339.                         var4.addItem(var18, 1);
  340.                         var5.addItem(var18, 1);
  341.                         var6.addItem(var18, 1);
  342.                         var7.addItem(var18, 1);
  343.                      }
  344.                   }
  345.                }
  346.             }
  347.  
  348.             this.user.mainmsg.clearStatusMsg();
  349.          }
  350.       }
  351.    }
  352.  
  353.    public void refresh() {
  354.       this.loadTables();
  355.       this.loadProcedures();
  356.    }
  357.  
  358.    public void loadColumns(String[] var1, JDPList var2) {
  359.       int var4 = 0;
  360.       new Vector();
  361.       String var6 = this.jaggSQL.getSEP();
  362.       boolean var7 = false;
  363.       String var9 = "";
  364.       if (var1 != null && var1.length > 0) {
  365.          int var10 = var1.length;
  366.          String var11 = "";
  367.  
  368.          for(int var12 = 0; var12 < var1.length; ++var12) {
  369.             var11 = var11 + var1[var12];
  370.          }
  371.  
  372.          if (this.prevColumns == null || !this.prevColumns.equals(var2) || this.prevTableString == null || !var11.equals(this.prevTableString)) {
  373.             this.user.mainmsg.setStatusMsg("Loading Column definitions, please wait...", 0);
  374.             this.prevTableString = var11;
  375.             this.prevColumns = var2;
  376.             var2.clear();
  377.             this.jaggSQL.loadSettings(this.targetDSN);
  378.             this.jaggSQL.setFCTN("SQLColumns");
  379.             this.jaggSQL.setMRW("100000");
  380.             var7 = true;
  381.             String var13 = "";
  382.             String var14 = "";
  383.             String var15 = "";
  384.             String var16 = "";
  385.             int var17 = 0;
  386.  
  387.             for(int var18 = 0; var18 < var10; ++var18) {
  388.                String var19 = ";;" + var1[var18] + ";;";
  389.                int var20 = var1[var18].indexOf(".");
  390.                if (var20 >= 0) {
  391.                   var19 = ";" + var1[var18].substring(0, var20) + ";" + var1[var18].substring(var20 + 1) + ";;";
  392.                }
  393.  
  394.                this.jaggSQL.setFCTNP(var19);
  395.                int var21 = this.lastFunction.indexOf(var19);
  396.                Vector var5;
  397.                if (var21 < 0) {
  398.                   var5 = new Vector();
  399.                   var4 = this.jaggSQL.execSQL(var9, var5);
  400.                   this.lastFunction.addElement(var19);
  401.                   this.lastResults.addElement(var5);
  402.                } else {
  403.                   var5 = (Vector)this.lastResults.elementAt(var21);
  404.                }
  405.  
  406.                if (var4 == -1) {
  407.                   this.user.u.setSqlMessage(this.jaggSQL, var9);
  408.                   return;
  409.                }
  410.  
  411.                this.jaggSQL.getColumnCount();
  412.  
  413.                for(int var22 = 0; var22 < var5.size(); ++var22) {
  414.                   String var8 = (String)var5.elementAt(var22);
  415.                   if (var8 != null && var8.trim().compareTo("") != 0) {
  416.                      StringTokenizer var3 = new StringTokenizer(var8, var6);
  417.                      if (var3.hasMoreTokens()) {
  418.                         var13 = var3.nextToken().trim();
  419.                      }
  420.  
  421.                      if (var3.hasMoreTokens()) {
  422.                         var14 = var3.nextToken().trim();
  423.                      }
  424.  
  425.                      if (var14.length() > 0) {
  426.                         if (var3.hasMoreTokens()) {
  427.                            (new StringBuffer(String.valueOf(var14))).append(".").append(var3.nextToken().trim()).toString();
  428.                         }
  429.                      } else if (var3.hasMoreTokens()) {
  430.                         var15 = var3.nextToken().trim();
  431.                      }
  432.  
  433.                      if (var3.hasMoreTokens()) {
  434.                         String var10000 = var1[var18];
  435.                      }
  436.  
  437.                      if (var3.hasMoreTokens()) {
  438.                         var16 = var3.nextToken().trim();
  439.                      }
  440.  
  441.                      if (var3.hasMoreTokens()) {
  442.                         var17 = Integer.parseInt(var3.nextToken().trim());
  443.                      }
  444.  
  445.                      if (var10 > 1) {
  446.                         var16 = this.alphabet.substring(var18, var18 + 1) + "." + var16;
  447.                      }
  448.  
  449.                      if (var16.indexOf(" ") > 0) {
  450.                         var16 = "`" + var16 + "`";
  451.                      }
  452.  
  453.                      if (var2.equals(this.Select.selectColumns)) {
  454.                         var2.addItem(var16, "stok.nextToken():" + Integer.toString(var17), 15);
  455.                      } else if (JDPUtils.isOdbcNum(var17)) {
  456.                         var2.addItem(var16, "0:" + Integer.toString(var17), 15);
  457.                      } else {
  458.                         var2.addItem(var16, "' ':" + Integer.toString(var17), 15);
  459.                      }
  460.                   }
  461.                }
  462.             }
  463.  
  464.             this.user.mainmsg.clearStatusMsg();
  465.          }
  466.       }
  467.    }
  468.  
  469.    public void loadGlobalVarMethods(int var1, JDPComboBox var2) {
  470.       String var4 = var2.getText();
  471.       var2.clear();
  472.       if (JDPUtils.isOdbcNum(var1)) {
  473.          var2.addItem("0");
  474.       } else {
  475.          var2.addItem("' '");
  476.       }
  477.  
  478.       if (this.classHeader != null) {
  479.          if (this.classHeader.components != null) {
  480.             for(int var5 = 0; var5 < this.classHeader.components.size(); ++var5) {
  481.                JDPSourceItem var3 = (JDPSourceItem)this.classHeader.components.elementAt(var5);
  482.                if (var3.type == 3) {
  483.                   if (var3.varType.equals("int") && JDPUtils.isOdbcNum(var1)) {
  484.                      var2.addItem("\" + " + var3.name + " + \"");
  485.                   } else if (var3.varType.equals("String") && JDPUtils.isOdbcChar(var1)) {
  486.                      var2.addItem("'\" + " + var3.name + " + \"'");
  487.                   } else {
  488.                      this.loadMethodsForVar(var2, var3, var1);
  489.                   }
  490.                } else if (var3.type == 2) {
  491.                   if (var3.returnType.equals("int") && JDPUtils.isOdbcNum(var1)) {
  492.                      var2.addItem("\" + " + var3.name + " + \"");
  493.                   } else if (var3.returnType.equals("String") && JDPUtils.isOdbcChar(var1)) {
  494.                      var2.addItem("'\" + " + var3.name + " + \"'");
  495.                   }
  496.                }
  497.             }
  498.          }
  499.       } else if (this.InteractionMgr != null) {
  500.          this.InteractionMgr.loadMethodsForVisualApp(var2, var1);
  501.       }
  502.  
  503.       var2.layoutChoice();
  504.       var2.sortItems();
  505.       var2.setText(var4);
  506.    }
  507.  
  508.    public void loadMethodsForVar(JDPComboBox var1, JDPSourceItem var2, int var3) {
  509.       if (this.thisEntry == null) {
  510.          this.thisEntry = new StringBuffer();
  511.       }
  512.  
  513.       String var7 = this.jaggSQL.getSEP();
  514.       String[] var8 = new String[]{var2.varType, var2.name, Integer.toString(5)};
  515.       Vector var9 = this.InteractionMgr.getClassMethods(var8);
  516.  
  517.       for(int var10 = 0; var10 < var9.size(); ++var10) {
  518.          Vector var11 = (Vector)var9.elementAt(var10);
  519.          Vector var12 = (Vector)var11.elementAt(1);
  520.          String var13 = "";
  521.  
  522.          for(int var14 = 0; var14 < var12.size(); ++var14) {
  523.             var13 = (String)var12.elementAt(var14);
  524.             if (!var13.equals(" ")) {
  525.                this.stok = new StringTokenizer(var13, var7);
  526.                this.stok.nextToken();
  527.                this.stok.nextToken();
  528.                String var5 = this.stok.nextToken();
  529.                String var6 = this.stok.nextToken();
  530.                String var4 = this.stok.nextToken();
  531.                if (!this.stok.hasMoreTokens()) {
  532.                   this.thisEntry.setLength(0);
  533.                   if (var4.equals("int") && JDPUtils.isOdbcNum(var3)) {
  534.                      this.thisEntry.append("\" + Integer.toString(" + var2.name + "." + var5 + "(");
  535.                      this.thisEntry.append(")) + \"");
  536.                      var1.addItem(this.thisEntry.toString());
  537.                   } else if (var4.equals("long") && JDPUtils.isOdbcNum(var3)) {
  538.                      this.thisEntry.append("\" + Long.toString(" + var2.name + "." + var5 + "(");
  539.                      this.thisEntry.append(")) + \"");
  540.                      var1.addItem(this.thisEntry.toString());
  541.                   } else if (var4.equals("float") && JDPUtils.isOdbcNum(var3)) {
  542.                      this.thisEntry.append("\" + Float.toString(" + var2.name + "." + var5 + "(");
  543.                      this.thisEntry.append(")) + \"");
  544.                      var1.addItem(this.thisEntry.toString());
  545.                   } else if (var4.equals("java.lang.String") && JDPUtils.isOdbcChar(var3)) {
  546.                      this.thisEntry.append("'\" + " + var2.name + "." + var5 + "(");
  547.                      this.thisEntry.append(") + \"'");
  548.                      var1.addItem(this.thisEntry.toString());
  549.                   }
  550.                }
  551.             }
  552.          }
  553.       }
  554.  
  555.    }
  556.  
  557.    public void setInteractionMgr(JDPInteractionMgr var1) {
  558.       this.InteractionMgr = var1;
  559.    }
  560.  
  561.    public void setClassHeader(JDPSourceItem var1) {
  562.       this.classHeader = var1;
  563.    }
  564.  
  565.    public String getCompleteSource() {
  566.       if (this.Choice1.getSelectedItem().equals("Select")) {
  567.          return this.Select.constructSQL();
  568.       } else if (this.Choice1.getSelectedItem().equals("Delete")) {
  569.          return this.Delete.constructSQL();
  570.       } else if (this.Choice1.getSelectedItem().equals("Insert")) {
  571.          return this.Insert.constructSQL();
  572.       } else if (this.Choice1.getSelectedItem().equals("Update")) {
  573.          return this.Update.constructSQL();
  574.       } else {
  575.          return this.Choice1.getSelectedItem().equals("Stored Procedure") ? this.StoredProcedure.constructSQL() : "";
  576.       }
  577.    }
  578.  
  579.    public void loadColumnsFromTable(String[] var1, int var2, JDPComboBox var3) {
  580.       int var5 = 0;
  581.       new Vector();
  582.       String var7 = this.jaggSQL.getSEP();
  583.       String var9 = "";
  584.       String var10 = var3.getText();
  585.       if (var1 != null && var1.length > 0) {
  586.          int var11 = var1.length;
  587.          String var12 = "";
  588.  
  589.          for(int var13 = 0; var13 < var1.length; ++var13) {
  590.             var12 = var12 + var1[var13];
  591.          }
  592.  
  593.          if (((Component)this).isShowing()) {
  594.             this.user.mainmsg.setStatusMsg("Loading Column definitions, please wait...", 0);
  595.          }
  596.  
  597.          this.jaggSQL.loadSettings(this.targetDSN);
  598.          this.jaggSQL.setFCTN("SQLColumns");
  599.          this.jaggSQL.setMRW("100000");
  600.          String var14 = "";
  601.          String var15 = "";
  602.          String var16 = "";
  603.          String var17 = "";
  604.          int var18 = 0;
  605.  
  606.          for(int var19 = 0; var19 < var11; ++var19) {
  607.             String var20 = ";;" + var1[var19] + ";;";
  608.             int var21 = var1[var19].indexOf(".");
  609.             if (var21 >= 0) {
  610.                var20 = ";" + var1[var19].substring(0, var21) + ";" + var1[var19].substring(var21 + 1) + ";;";
  611.             }
  612.  
  613.             this.jaggSQL.setFCTNP(var20);
  614.             int var22 = this.lastFunction.indexOf(var20);
  615.             Vector var6;
  616.             if (var22 < 0) {
  617.                var6 = new Vector();
  618.                var5 = this.jaggSQL.execSQL(var9, var6);
  619.                this.lastFunction.addElement(var20);
  620.                this.lastResults.addElement(var6);
  621.             } else {
  622.                var6 = (Vector)this.lastResults.elementAt(var22);
  623.             }
  624.  
  625.             if (var5 == -1) {
  626.                this.user.u.setSqlMessage(this.jaggSQL, var9);
  627.                return;
  628.             }
  629.  
  630.             this.jaggSQL.getColumnCount();
  631.  
  632.             for(int var23 = 0; var23 < var6.size(); ++var23) {
  633.                String var8 = (String)var6.elementAt(var23);
  634.                if (var8 != null && var8.trim().compareTo("") != 0) {
  635.                   StringTokenizer var4 = new StringTokenizer(var8, var7);
  636.                   if (var4.hasMoreTokens()) {
  637.                      var14 = var4.nextToken().trim();
  638.                   }
  639.  
  640.                   if (var4.hasMoreTokens()) {
  641.                      var15 = var4.nextToken().trim();
  642.                   }
  643.  
  644.                   if (var15.length() > 0) {
  645.                      if (var4.hasMoreTokens()) {
  646.                         (new StringBuffer(String.valueOf(var15))).append(".").append(var4.nextToken().trim()).toString();
  647.                      }
  648.                   } else if (var4.hasMoreTokens()) {
  649.                      var16 = var4.nextToken().trim();
  650.                   }
  651.  
  652.                   if (var4.hasMoreTokens()) {
  653.                      String var10000 = var1[var19];
  654.                   }
  655.  
  656.                   if (var4.hasMoreTokens()) {
  657.                      var17 = var4.nextToken().trim();
  658.                   }
  659.  
  660.                   if (var4.hasMoreTokens()) {
  661.                      var18 = Integer.parseInt(var4.nextToken().trim());
  662.                   }
  663.  
  664.                   if (var11 > 1 || var3.equals(this.Update.getUpdateValueHandle()) || var3.equals(this.Update.getWhereSettingsHandle())) {
  665.                      var17 = this.alphabet.substring(var19, var19 + 1) + "." + var17;
  666.                   }
  667.  
  668.                   if (var17.indexOf(" ") > 0) {
  669.                      var17 = "`" + var17 + "`";
  670.                   }
  671.  
  672.                   if (JDPUtils.isOdbcEqual(var18, var2)) {
  673.                      var3.addItem(var17);
  674.                   }
  675.                }
  676.             }
  677.          }
  678.  
  679.          if (((Component)this).isShowing()) {
  680.             this.user.mainmsg.clearStatusMsg();
  681.          }
  682.  
  683.          var3.layoutChoice();
  684.          var3.setText(var10);
  685.       }
  686.    }
  687.  
  688.    public void loadPlaceIntoVars(int var1, JDPComboBox var2) {
  689.       String var4 = var2.getText();
  690.       var2.clear();
  691.       if (this.classHeader != null) {
  692.          if (this.classHeader.components != null) {
  693.             for(int var5 = 0; var5 < this.classHeader.components.size(); ++var5) {
  694.                JDPSourceItem var3 = (JDPSourceItem)this.classHeader.components.elementAt(var5);
  695.                if (var3.type == 3) {
  696.                   if (var3.varType.equals("int") && JDPUtils.isOdbcNum(var1)) {
  697.                      var2.addItem(var3.name + " = Integer.parseInt(stok.nextToken())");
  698.                   } else if (var3.varType.equals("long") && JDPUtils.isOdbcNum(var1)) {
  699.                      var2.addItem(var3.name + " = Long.valueOf(stok.nextToken()).longValue()");
  700.                   } else if (var3.varType.equals("float") && JDPUtils.isOdbcNum(var1)) {
  701.                      var2.addItem(var3.name + " = Float.valueOf(stok.nextToken()).floatValue()");
  702.                   } else if (var3.varType.equals("String") && JDPUtils.isOdbcChar(var1)) {
  703.                      var2.addItem(var3.name + " = stok.nextToken()");
  704.                   } else {
  705.                      this.loadSetMethods(var2, var3, var1);
  706.                   }
  707.                }
  708.             }
  709.          }
  710.       } else if (this.InteractionMgr != null) {
  711.          this.InteractionMgr.loadPlaceIntoForVisualApp(var2, var1);
  712.       }
  713.  
  714.       var2.sortItems();
  715.       var2.setText(var4);
  716.    }
  717.  
  718.    public void loadSetMethods(JDPComboBox var1, JDPSourceItem var2, int var3) {
  719.       if (this.thisEntry == null) {
  720.          this.thisEntry = new StringBuffer();
  721.       }
  722.  
  723.       String var7 = this.jaggSQL.getSEP();
  724.       String[] var9 = new String[]{var2.varType, var2.name, Integer.toString(5)};
  725.       Vector var10 = this.InteractionMgr.getClassMethods(var9);
  726.  
  727.       for(int var11 = 0; var11 < var10.size(); ++var11) {
  728.          Vector var12 = (Vector)var10.elementAt(var11);
  729.          Vector var13 = (Vector)var12.elementAt(1);
  730.          String var14 = "";
  731.  
  732.          for(int var15 = 0; var15 < var13.size(); ++var15) {
  733.             var14 = (String)var13.elementAt(var15);
  734.             if (!var14.equals(" ")) {
  735.                this.stok = new StringTokenizer(var14, var7);
  736.                this.stok.nextToken();
  737.                this.stok.nextToken();
  738.                String var5 = this.stok.nextToken();
  739.                String var6 = this.stok.nextToken();
  740.                String var4 = this.stok.nextToken();
  741.                if (this.stok.hasMoreTokens()) {
  742.                   String var8 = this.stok.nextToken();
  743.                   if (!this.stok.hasMoreTokens() && var5.startsWith("set")) {
  744.                      if (var8.equals("int") && JDPUtils.isOdbcNum(var3)) {
  745.                         this.thisEntry.setLength(0);
  746.                         this.thisEntry.append(var2.name + "." + var5 + "(");
  747.                         this.thisEntry.append("Integer.parseInt(stok.nextToken())");
  748.                         this.thisEntry.append(")");
  749.                         var1.addItem(this.thisEntry.toString());
  750.                      } else if (var8.equals("long") && JDPUtils.isOdbcNum(var3)) {
  751.                         this.thisEntry.setLength(0);
  752.                         this.thisEntry.append(var2.name + "." + var5 + "(");
  753.                         this.thisEntry.append("Long.valueOf(stok.nextToken()).longValue()");
  754.                         this.thisEntry.append(")");
  755.                         var1.addItem(this.thisEntry.toString());
  756.                      } else if (var8.equals("float") && JDPUtils.isOdbcNum(var3)) {
  757.                         this.thisEntry.setLength(0);
  758.                         this.thisEntry.append(var2.name + "." + var5 + "(");
  759.                         this.thisEntry.append("Float.valueOf(stok.nextToken()).floatValue()");
  760.                         this.thisEntry.append(")");
  761.                         var1.addItem(this.thisEntry.toString());
  762.                      } else if (var8.equals("java.lang.String") && JDPUtils.isOdbcChar(var3)) {
  763.                         this.thisEntry.setLength(0);
  764.                         this.thisEntry.append(var2.name + "." + var5 + "(");
  765.                         this.thisEntry.append("stok.nextToken()");
  766.                         this.thisEntry.append(")");
  767.                         var1.addItem(this.thisEntry.toString());
  768.                      }
  769.                   }
  770.                }
  771.             }
  772.          }
  773.       }
  774.  
  775.    }
  776.  
  777.    void loadProcedures() {
  778.       if (this.targetDSN != null) {
  779.          String var1 = this.targetDSN.datasource.getText().trim() + this.targetDSN.userid.getText() + this.targetDSN.password.getText();
  780.          if (this.prevDSNStringSP == null || !var1.equals(this.prevDSNStringSP)) {
  781.             this.prevDSNStringSP = var1;
  782.             JDPList var2 = this.StoredProcedure.getStoredProceduresHandle();
  783.             this.StoredProcedure.clear();
  784.             int var4 = 0;
  785.             String var6 = this.jaggSQL.getSEP();
  786.             int var7 = 0;
  787.             String var9 = "";
  788.             this.targetDSN.datasource.getText().trim();
  789.             this.user.mainmsg.setStatusMsg("Loading Stored Procedure definitions, please wait...", 0);
  790.             this.jaggSQL.loadSettings(this.targetDSN);
  791.             this.jaggSQL.setFCTN("getProcedures");
  792.             this.jaggSQL.setMRW("100000");
  793.             var7 = (boolean)1000;
  794.             this.jaggSQL.setFCTNP(";;;");
  795.             Vector var5 = new Vector();
  796.             var4 = this.jaggSQL.execSQL(var9, var5);
  797.             if (var4 == -1) {
  798.                this.user.mainmsg.setStatusMsg("Could not connect to datasource. Please check the Connect String.", 20);
  799.             } else {
  800.                this.jaggSQL.getColumnCount();
  801.                var7 = this.jaggSQL.getRowCount();
  802.  
  803.                for(int var13 = 0; var13 < var7; ++var13) {
  804.                   String var8 = (String)var5.elementAt(var13);
  805.                   if (var8 != null && var8.trim().compareTo("") != 0) {
  806.                      StringTokenizer var3 = new StringTokenizer(var8, var6);
  807.                      var3.nextToken();
  808.                      String var10 = var3.nextToken().trim();
  809.                      String var11;
  810.                      if (var10.length() > 0) {
  811.                         var11 = var10 + "." + var3.nextToken().trim();
  812.                      } else {
  813.                         var11 = var3.nextToken().trim();
  814.                      }
  815.  
  816.                      int var14 = var11.indexOf(";");
  817.                      if (var14 > 0) {
  818.                         var11 = var11.substring(0, var14);
  819.                      }
  820.  
  821.                      if (var11.indexOf(" ") >= 0) {
  822.                         var11 = "`" + var11 + "`";
  823.                      }
  824.  
  825.                      if (var3.hasMoreTokens()) {
  826.                         var3.nextToken().trim();
  827.                      }
  828.  
  829.                      if (var3.hasMoreTokens()) {
  830.                         var3.nextToken().trim();
  831.                      }
  832.  
  833.                      if (var3.hasMoreTokens()) {
  834.                         var3.nextToken().trim();
  835.                      }
  836.  
  837.                      if (var3.hasMoreTokens()) {
  838.                         var3.nextToken().trim();
  839.                      }
  840.  
  841.                      if (var3.hasMoreTokens()) {
  842.                         int var12 = Integer.parseInt(var3.nextToken().trim());
  843.                      }
  844.  
  845.                      var2.addItem(var11, 1);
  846.                   }
  847.                }
  848.  
  849.                this.user.mainmsg.clearStatusMsg();
  850.             }
  851.          }
  852.       }
  853.    }
  854.  
  855.    public void loadProcedureColumns(String var1, JDPList var2, JDPList var3) {
  856.       int var5 = 0;
  857.       new Vector();
  858.       String var7 = this.jaggSQL.getSEP();
  859.       String var9 = "";
  860.       if (var1 != null) {
  861.          if (this.prevProcName == null || !var1.equals(this.prevProcName)) {
  862.             this.user.mainmsg.setStatusMsg("Loading Procedure definition, please wait...", 0);
  863.             this.prevProcName = var1;
  864.             var2.clear();
  865.             var3.clear();
  866.             this.jaggSQL.loadSettings(this.targetDSN);
  867.             this.jaggSQL.setFCTN("getProcedureColumns");
  868.             this.jaggSQL.setMRW("100000");
  869.             String var10 = ";;" + var1 + ";;";
  870.             int var11 = var1.indexOf(".");
  871.             if (var11 >= 0) {
  872.                var10 = ";" + var1.substring(0, var11) + ";" + var1.substring(var11 + 1) + ";;";
  873.             }
  874.  
  875.             this.jaggSQL.setFCTNP(var10);
  876.             Vector var6 = new Vector();
  877.             var5 = this.jaggSQL.execSQL(var9, var6);
  878.             if (var5 == -1) {
  879.                this.user.u.setSqlMessage(this.jaggSQL, var9);
  880.             } else {
  881.                this.jaggSQL.getColumnCount();
  882.                String var12 = "";
  883.                String var13 = "";
  884.                String var14 = "";
  885.                int var15 = 0;
  886.                int var16 = 0;
  887.  
  888.                for(int var17 = 0; var17 < var5; ++var17) {
  889.                   String var8 = (String)var6.elementAt(var17);
  890.                   if (var8 != null && var8.trim().compareTo("") != 0) {
  891.                      StringTokenizer var4 = new StringTokenizer(var8, var7);
  892.                      var4.nextToken();
  893.                      if (var4.hasMoreTokens()) {
  894.                         var12 = var4.nextToken().trim();
  895.                      }
  896.  
  897.                      if (var12.length() > 0) {
  898.                         if (var4.hasMoreTokens()) {
  899.                            (new StringBuffer(String.valueOf(var12))).append(".").append(var4.nextToken().trim()).toString();
  900.                         }
  901.                      } else if (var4.hasMoreTokens()) {
  902.                         var13 = var4.nextToken().trim();
  903.                      }
  904.  
  905.                      if (var4.hasMoreTokens()) {
  906.                         var14 = var4.nextToken().trim();
  907.                      }
  908.  
  909.                      if (var4.hasMoreTokens()) {
  910.                         var15 = Integer.parseInt(var4.nextToken().trim());
  911.                      }
  912.  
  913.                      if (var4.hasMoreTokens()) {
  914.                         var16 = Integer.parseInt(var4.nextToken().trim());
  915.                      }
  916.  
  917.                      if (var15 == 1) {
  918.                         if (JDPUtils.isOdbcNum(var16)) {
  919.                            var2.addItem(var14, "0:" + Integer.toString(var16), 15);
  920.                         } else {
  921.                            var2.addItem(var14, "' ':" + Integer.toString(var16), 15);
  922.                         }
  923.                      }
  924.  
  925.                      if (var15 == 2 || var15 == 4) {
  926.                         if (JDPUtils.isOdbcNum(var16)) {
  927.                            var3.addItem(var14, "stok.nextToken():" + Integer.toString(var16), 15);
  928.                         } else {
  929.                            var3.addItem(var14, "stok.nextToken():" + Integer.toString(var16), 15);
  930.                         }
  931.                      }
  932.                   }
  933.                }
  934.  
  935.                this.user.mainmsg.clearStatusMsg();
  936.             }
  937.          }
  938.       }
  939.    }
  940.  
  941.    public void setSQLOnly(boolean var1) {
  942.       this.SQLOnly = var1;
  943.       this.Delete.setSQLOnly(var1);
  944.       this.Insert.setSQLOnly(var1);
  945.       this.Select.setSQLOnly(var1);
  946.       this.Update.setSQLOnly(var1);
  947.       this.StoredProcedure.setSQLOnly(var1);
  948.    }
  949.  
  950.    public String getSQL() {
  951.       if (this.Choice1.getSelectedItem().equals("Select")) {
  952.          return this.Select.getSQL();
  953.       } else if (this.Choice1.getSelectedItem().equals("Delete")) {
  954.          return this.Delete.getSQL();
  955.       } else if (this.Choice1.getSelectedItem().equals("Insert")) {
  956.          return this.Insert.getSQL();
  957.       } else if (this.Choice1.getSelectedItem().equals("Update")) {
  958.          return this.Update.getSQL();
  959.       } else {
  960.          return this.Choice1.getSelectedItem().equals("Stored Procedure") ? this.StoredProcedure.getSQL() : "";
  961.       }
  962.    }
  963.  
  964.    public void Choice1Main() {
  965.       if (this.Choice1 == null) {
  966.          this.Choice1 = new JDPChoice();
  967.       }
  968.  
  969.       String[] var1 = new String[]{"Select", "Insert", "Update", "Delete", "Stored Procedure", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""};
  970.       String[] var2 = new String[]{"Select", "Insert", "Update", "Delete", "StoredProcedure", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""};
  971.       this.Choice1.loadChoice(var1, var2);
  972.    }
  973. }
  974.