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

  1. import java.awt.BorderLayout;
  2. import java.awt.Button;
  3. import java.awt.CardLayout;
  4. import java.awt.Color;
  5. import java.awt.Component;
  6. import java.awt.Container;
  7. import java.awt.Event;
  8. import java.awt.Panel;
  9. import java.awt.TextField;
  10. import java.util.StringTokenizer;
  11. import java.util.Vector;
  12.  
  13. public class JDPTemplateMaint extends Panel {
  14.    JDPUser user;
  15.    JDPWhereClause jdpWhereClause;
  16.    JDPSearchResults searchResults;
  17.    JDPSelectDSN selectDSN;
  18.    JDPSelectTable selectTable;
  19.    Panel targetPanel;
  20.    JDPTabSelectPanel tabPanel;
  21.    JDPDatabaseMaint target;
  22.    Panel tabMainPanel;
  23.    JDPTemplDtlMaint templateDetail;
  24.    JDPTabSelectPanel tabPanelMain;
  25.    JDPJagg jaggSQL;
  26.    String[] psortChoice;
  27.    String[] pdisplayChoice;
  28.    int itemIndex;
  29.    boolean insertRequested;
  30.    boolean deleteRequested;
  31.    boolean typeChanged;
  32.    String pfromWhereClause;
  33.    TextField a_templname;
  34.    TextField a_templdesc;
  35.    JDPChoice a_templtype;
  36.    Vector valuea_templtype;
  37.    JDPChoice a_groupname;
  38.    Vector valuea_groupname;
  39.  
  40.    void loadChoices() {
  41.       this.valuea_templtype = new Vector();
  42.       new JDPLoadChoice(this.user, this.jaggSQL, this.a_templtype, "typedesc", "templtype", "JDPTmpType", "(1=1)", this.valuea_templtype);
  43.       this.valuea_groupname = new Vector();
  44.       new JDPLoadChoice(this.user, this.jaggSQL, this.a_groupname, "groupdesc", "groupname", "JDPTmpGrp", "(1=1)", this.valuea_groupname);
  45.    }
  46.  
  47.    void clearFields() {
  48.       this.a_templname.setText("");
  49.       this.a_templdesc.setText("");
  50.       this.a_templtype.select(0);
  51.       this.a_groupname.select(0);
  52.    }
  53.  
  54.    public JDPTemplateMaint(JDPUser var1, Panel var2, String var3, JDPDatabaseMaint var4) {
  55.       this.user = var1;
  56.       this.targetPanel = var2;
  57.       this.target = var4;
  58.       this.jaggSQL = new JDPJagg(var1.jaggPath);
  59.       this.jaggSQL.loadSettings(var1);
  60.       ((Container)this).setLayout(new BorderLayout());
  61.       ((Component)this).setFont(var1.plainFont);
  62.       Panel var5 = new Panel();
  63.       ((Container)var5).setLayout(new BorderLayout());
  64.       Panel var6 = new Panel();
  65.       ((Container)var6).setLayout(new BorderLayout());
  66.       Panel var7 = new Panel();
  67.       ((Container)var7).setLayout(new BorderLayout());
  68.       Panel var8 = new Panel();
  69.       ((Container)var8).setLayout(new BorderLayout());
  70.       JDPScrollPanel var9 = new JDPScrollPanel();
  71.       Panel var10 = new Panel();
  72.       ((Container)var10).setLayout(new BorderLayout());
  73.       Panel var11 = new Panel();
  74.       ((Container)var11).setLayout(new BorderLayout());
  75.       Panel var12 = new Panel();
  76.       ((Container)var12).setLayout(new BorderLayout());
  77.       this.psortChoice = new String[1];
  78.       this.psortChoice[0] = "c.typedesc";
  79.       this.pdisplayChoice = this.psortChoice;
  80.       this.a_templname = new TextField("", 22);
  81.       this.a_templdesc = new TextField("", 42);
  82.       this.a_templtype = new JDPChoice();
  83.       this.a_groupname = new JDPChoice();
  84.       this.loadChoices();
  85.       ((Container)var9).add("Left", new JDPWrapLabel(var1, "Name:", Color.black));
  86.       ((Container)var9).add("Left", new JDPWrapLabel(var1, "Description:", Color.black));
  87.       Panel var13 = new Panel();
  88.       ((Container)var13).setLayout(new JDPLineLayout());
  89.       ((Container)var13).add("Left", this.a_templname);
  90.       ((Container)var9).add("Right", var13);
  91.       Panel var14 = new Panel();
  92.       ((Container)var14).setLayout(new JDPLineLayout());
  93.       ((Container)var14).add("Left", this.a_templdesc);
  94.       ((Container)var9).add("Right", var14);
  95.       ((Container)var8).add("North", var9);
  96.       this.selectDSN = new JDPSelectDSN();
  97.       ((Container)var11).add("Center", this.selectDSN);
  98.       this.selectDSN.InitClass(var1, var11, "JDPTemplateMaint");
  99.       this.selectTable = new JDPSelectTable();
  100.       ((Container)var12).add("Center", this.selectTable);
  101.       this.selectTable.InitClass(var1, var12, "JDPTemplateMaint");
  102.       String[] var15 = new String[]{"Select a Data Source", "Select Tables"};
  103.       Panel[] var16 = new Panel[]{var11, var12};
  104.       this.tabPanel = new JDPTabSelectPanel(var1, var15, var16, "North");
  105.       this.tabMainPanel = new Panel();
  106.       this.tabMainPanel.setLayout(new CardLayout());
  107.       this.tabMainPanel.add("blank", new Panel());
  108.       this.tabMainPanel.add("E", this.tabPanel);
  109.       ((Container)var8).add("Center", this.tabMainPanel);
  110.       this.a_templname.setForeground(Color.black);
  111.       this.a_templdesc.setForeground(Color.black);
  112.       this.a_templtype.setForeground(Color.black);
  113.       this.a_groupname.setForeground(Color.black);
  114.       this.a_templname.setBackground(Color.white);
  115.       this.a_templdesc.setBackground(Color.white);
  116.       this.a_templtype.setBackground(Color.white);
  117.       this.a_groupname.setBackground(Color.white);
  118.       if (var3.compareTo("Inquiry") == 0) {
  119.          this.a_templname.setEditable(false);
  120.          this.a_templdesc.setEditable(false);
  121.          String[] var17 = new String[]{""};
  122.          ((Container)this).add("South", new JDPButtons(var1, var17, JDPButtons.HORIZONTAL));
  123.       } else {
  124.          String[] var20 = new String[]{"Apply", "Reset"};
  125.          int[] var18 = new int[]{0, 6};
  126.          ((Container)this).add("South", new JDPButtons(var1, var20, var18, JDPButtons.HORIZONTAL));
  127.       }
  128.  
  129.       ((Container)var5).add("Center", var8);
  130.       this.templateDetail = new JDPTemplDtlMaint(var1, var3, this);
  131.       ((Container)var6).add("Center", this.templateDetail);
  132.       ((Component)var6).paintAll(((Component)var6).getGraphics());
  133.       String[] var21 = new String[]{"Template Definition", "Template Details"};
  134.       Panel[] var22 = new Panel[]{var5, var6};
  135.       this.tabPanelMain = new JDPTabSelectPanel(var1, var21, var22, "North");
  136.       ((Container)this).add("Center", this.tabPanelMain);
  137.       if (this.psortChoice.length > 0) {
  138.       }
  139.  
  140.       ((Component)var2).paintAll(((Component)var2).getGraphics());
  141.       var1.gParm.addElement(this);
  142.       int[] var19 = new int[]{4, 0, 2, 1};
  143.       var4.tree.setIcons(var19);
  144.       var4.tree.setRoot(var1.JDesignerPro.wwwroot, true);
  145.       this.loadTypes();
  146.       this.loadGroups();
  147.       this.loadTemplates();
  148.    }
  149.  
  150.    void retrieveHandle() {
  151.       for(int var1 = 0; var1 < this.user.gParm.size(); ++var1) {
  152.       }
  153.  
  154.    }
  155.  
  156.    void loadTypes() {
  157.       int var2 = 0;
  158.       Vector var3 = new Vector();
  159.       String var4 = this.jaggSQL.getSEP();
  160.       int var5 = 0;
  161.       String var7 = "SELECT typedesc FROM JDPTmpType WHERE JDPSystem = '" + this.user.JDPSystem + "' ORDER BY typedesc";
  162.       this.user.mainmsg.setStatusMsg("Loading Type definitions, please wait...", 0);
  163.       int[] var8 = new int[]{4, 0, 2, 1};
  164.       this.target.tree.setIcons(var8);
  165.       var2 = this.jaggSQL.execSQL(var7, var3);
  166.       if (var2 != -1) {
  167.          var5 = this.jaggSQL.getRowCount();
  168.          this.jaggSQL.getColumnCount();
  169.          String[] var9 = new String[2];
  170.  
  171.          for(int var10 = 0; var10 < var5; ++var10) {
  172.             String var6 = (String)var3.elementAt(var10);
  173.             if (var6 != null && var6.trim().compareTo("") != 0) {
  174.                StringTokenizer var1 = new StringTokenizer(var6, var4);
  175.                var9[0] = var1.nextToken().trim();
  176.                var9[1] = "";
  177.                this.target.tree.addEntry(var9);
  178.             }
  179.          }
  180.  
  181.          this.user.mainmsg.clearStatusMsg();
  182.       }
  183.    }
  184.  
  185.    void loadData(String[] var1) {
  186.       int var3 = 0;
  187.       Vector var4 = new Vector();
  188.       String var5 = this.jaggSQL.getSEP();
  189.       String var7 = "";
  190.       String var8 = this.selectDSN.connectstring.getText();
  191.       String[] var9;
  192.       if (var1 != null) {
  193.          var9 = var1;
  194.       } else {
  195.          if ((this.itemIndex = this.target.tree.getSelectedIndex()) < 0) {
  196.             this.clearFields();
  197.             return;
  198.          }
  199.  
  200.          var9 = this.target.tree.getSelectedBranch();
  201.       }
  202.  
  203.       String var10 = "SELECT a.templname," + "a.templdesc," + "a.templtype," + "a.templdsn," + "a.templcstr," + "a.templtbls," + "a.templjoin," + "a.groupname" + " FROM JDPTmpTable a,JDPTmpGrp b,JDPTmpType c" + " WHERE a.templtype = c.templtype AND a.groupname = b.groupname AND a.JDPSystem = b.JDPSystem AND a.JDPSystem = c.JDPSystem AND a.JDPSystem='" + this.user.JDPSystem + "'" + " AND b.groupdesc='" + var9[2] + "' AND a.templname='" + var9[3] + "'";
  204.       this.user.mainmsg.setStatusMsg("Accessing database...", 0);
  205.       var3 = this.jaggSQL.execSQL(var10, var4);
  206.       if (var3 == -1) {
  207.          this.user.u.setSqlMessage(this.jaggSQL, var10);
  208.       } else {
  209.          if (var3 >= 1) {
  210.             String var6 = (String)var4.elementAt(0);
  211.             if (var6 != null && var6.trim().compareTo("") != 0) {
  212.                StringTokenizer var2 = new StringTokenizer(var6);
  213.                this.a_templname.setText(var2.nextToken(var5).trim());
  214.                this.a_templdesc.setText(var2.nextToken(var5).trim());
  215.                var7 = var2.nextToken(var5).trim();
  216.                if (this.valuea_templtype.indexOf(var7) >= 0) {
  217.                   this.a_templtype.select(this.valuea_templtype.indexOf(var7));
  218.                }
  219.  
  220.                if (var7.equals("E")) {
  221.                   ((CardLayout)this.tabMainPanel.getLayout()).show(this.tabMainPanel, "E");
  222.                } else {
  223.                   ((CardLayout)this.tabMainPanel.getLayout()).show(this.tabMainPanel, "blank");
  224.                }
  225.  
  226.                this.selectDSN.datasourceC.select(var2.nextToken(var5).trim());
  227.                this.selectDSN.datasource.setText(this.selectDSN.datasourceC.getSelectedItem());
  228.                this.selectDSN.sourcetype.setText(this.selectDSN.recordName[this.selectDSN.datasourceC.getSelectedIndex()]);
  229.                this.selectDSN.connectstring.setText(var2.nextToken(var5).trim());
  230.                String var11 = var2.nextToken(var5).trim();
  231.                String var12 = var2.nextToken(var5).trim();
  232.                String var13 = var2.nextToken(var5).trim();
  233.                if (this.valuea_groupname.indexOf(var13) >= 0) {
  234.                   this.a_groupname.select(this.valuea_groupname.indexOf(var13));
  235.                }
  236.  
  237.                String var14 = this.selectDSN.connectstring.getText();
  238.                int var15 = var14.indexOf("UID=");
  239.                int var16 = 0;
  240.                if (var15 > 0) {
  241.                   var16 = var14.substring(var15).indexOf(";");
  242.                   this.selectDSN.userid.setText(var14.substring(var15 + 4, var15 + var16));
  243.                }
  244.  
  245.                var15 = var14.indexOf("PWD=");
  246.                if (var15 > 0) {
  247.                   var16 = var14.substring(var15).indexOf(";");
  248.                   this.selectDSN.password.setText(var14.substring(var15 + 4, var15 + var16));
  249.                }
  250.  
  251.                var15 = var14.indexOf("DATABASE=");
  252.                if (var15 > 0) {
  253.                   var16 = var14.substring(var15).indexOf(";");
  254.                   this.selectDSN.database.setText(var14.substring(var15 + 9, var15 + var16));
  255.                }
  256.  
  257.                if (var7.equals("E") && !var8.equals(this.selectDSN.connectstring.getText())) {
  258.                   this.selectDSN.setNewDSN();
  259.                   this.selectTable.refresh();
  260.                }
  261.  
  262.                int var17 = -1;
  263.  
  264.                for(int var18 = 0; var18 < this.selectTable.stables.countItems(); ++var18) {
  265.                   if (var11.indexOf(this.selectTable.stables.getItem(var18) + ";") >= 0) {
  266.                      this.selectTable.stables.select(var18);
  267.                      if (var17 < 0) {
  268.                         var17 = var18;
  269.                      }
  270.                   } else {
  271.                      this.selectTable.stables.deselect(var18);
  272.                   }
  273.                }
  274.  
  275.                if (var17 >= 0) {
  276.                   this.selectTable.stables.makeVisible(var17);
  277.                }
  278.  
  279.                this.selectTable.resetAlias();
  280.                StringTokenizer var26 = new StringTokenizer(var12, ";");
  281.                this.selectTable.joinConditions.clear();
  282.  
  283.                while(var26.hasMoreElements()) {
  284.                   this.selectTable.joinConditions.addItem(var26.nextToken().trim());
  285.                }
  286.             }
  287.  
  288.             if (var3 > 1) {
  289.                this.user.mainmsg.setStatusMsg("Multiple records found - first match only displayed.", 10);
  290.             } else {
  291.                this.user.mainmsg.clearStatusMsg();
  292.             }
  293.          } else {
  294.             this.user.mainmsg.setStatusMsg("Requested entry does not exist.", 10);
  295.             this.clearFields();
  296.          }
  297.  
  298.          this.templateDetail.loadData(var1);
  299.       }
  300.    }
  301.  
  302.    boolean saveData() {
  303.       int var1 = 0;
  304.       Vector var2 = new Vector();
  305.       this.jaggSQL.getSEP();
  306.       String var3 = "";
  307.       String[] var4 = this.target.tree.getSelectedBranch();
  308.       String var5 = this.formatTables();
  309.       String var6 = "";
  310.  
  311.       for(int var7 = 0; var7 < this.selectTable.joinConditions.countItems(); ++var7) {
  312.          var6 = var6 + this.selectTable.joinConditions.getItem(var7);
  313.          var6 = var6 + ";";
  314.       }
  315.  
  316.       if (this.insertRequested) {
  317.          var3 = "INSERT INTO JDPTmpTable (JDPSystem, templname, " + "templdesc, " + "templtype, " + "templdsn, " + "templcstr, " + "templtbls, " + "templjoin, " + "groupname) VALUES('" + this.user.JDPSystem + "','" + this.a_templname.getText() + "', " + "'" + this.a_templdesc.getText() + "', " + "'" + var4[1].substring(0, 1) + "', " + "'" + this.selectDSN.datasourceC.getSelectedItem() + "', " + "'" + this.selectDSN.connectstring.getText() + "', " + "'" + var5 + "', " + "'" + var6 + "', " + "'" + (String)this.valuea_groupname.elementAt(this.a_groupname.getSelectedIndex()) + "')";
  318.       } else if (this.deleteRequested) {
  319.          var3 = "DELETE FROM JDPTmpTable" + " WHERE JDPSystem='" + this.user.JDPSystem + "'" + " AND templtype='" + var4[1].substring(0, 1) + "' AND groupname='" + (String)this.valuea_groupname.elementAt(this.a_groupname.getSelectedIndex()) + "' AND templname='" + this.a_templname.getText() + "'";
  320.       } else {
  321.          var3 = "UPDATE JDPTmpTable SET templdesc = '" + this.a_templdesc.getText() + "', " + "templtype = '" + (String)this.valuea_templtype.elementAt(this.a_templtype.getSelectedIndex()) + "', " + "templdsn = '" + this.selectDSN.datasourceC.getSelectedItem() + "', " + "templcstr = '" + this.selectDSN.connectstring.getText() + "', " + "templtbls = '" + var5 + "', " + "templjoin = '" + var6 + "' " + " WHERE JDPSystem='" + this.user.JDPSystem + "'" + " AND templtype='" + var4[1].substring(0, 1) + "' AND groupname='" + (String)this.valuea_groupname.elementAt(this.a_groupname.getSelectedIndex()) + "' AND templname='" + this.a_templname.getText() + "'";
  322.       }
  323.  
  324.       this.user.mainmsg.setStatusMsg("Accessing database...", 0);
  325.       var1 = this.jaggSQL.execSQL(var3, var2);
  326.       if (var1 == -1) {
  327.          this.user.u.setSqlMessage(this.jaggSQL, var3);
  328.          return false;
  329.       } else {
  330.          if (var1 == 1) {
  331.             if (this.insertRequested) {
  332.                this.user.mainmsg.setStatusMsg("Record successfully added.", 3);
  333.             } else if (this.deleteRequested) {
  334.                var3 = "DELETE FROM JDPTmpDetail" + " WHERE JDPSystem='" + this.user.JDPSystem + "'" + " AND templtype='" + var4[1].substring(0, 1) + "' AND groupname='" + (String)this.valuea_groupname.elementAt(this.a_groupname.getSelectedIndex()) + "' AND templname='" + this.a_templname.getText() + "'";
  335.                this.jaggSQL.execSQL(var3, var2);
  336.                this.user.mainmsg.setStatusMsg("Record successfully removed.", 3);
  337.                this.target.tree.removeBranch(this.target.tree.getSelectedBranch());
  338.             } else {
  339.                this.user.mainmsg.setStatusMsg("Record successfully updated.", 3);
  340.             }
  341.          } else {
  342.             this.user.u.setSqlMessage(this.jaggSQL, var3);
  343.          }
  344.  
  345.          this.templateDetail.checkRows();
  346.          this.loadTemplates();
  347.          if (this.insertRequested) {
  348.             String[] var12 = this.target.tree.getSelectedBranch();
  349.             var12[3] = this.a_templname.getText();
  350.             this.target.tree.nothingChanged = false;
  351.             this.target.tree.select(var12, 3);
  352.             this.target.tree.repaint();
  353.             this.templateDetail.loadGrid(var12);
  354.          }
  355.  
  356.          this.insertRequested = false;
  357.          this.deleteRequested = false;
  358.          return true;
  359.       }
  360.    }
  361.  
  362.    void loadTemplates() {
  363.       int var2 = 0;
  364.       Vector var3 = new Vector();
  365.       String var4 = this.jaggSQL.getSEP();
  366.       int var5 = 0;
  367.       String var7 = "SELECT c.templtype, c.typedesc, b.groupdesc, a.templname FROM JDPTmpTable a,JDPTmpGrp b,JDPTmpType c WHERE a.templtype = c.templtype AND a.groupname = b.groupname AND a.JDPSystem = b.JDPSystem AND a.JDPSystem = c.JDPSystem AND a.JDPSystem = '" + this.user.JDPSystem + "' ORDER BY c.typedesc, b.groupdesc, a.templname";
  368.       this.user.mainmsg.setStatusMsg("Loading Template definitions, please wait...", 0);
  369.       int[] var8 = new int[]{4, 0, 2, 1};
  370.       this.target.tree.setIcons(var8);
  371.       var2 = this.jaggSQL.execSQL(var7, var3);
  372.       if (var2 != -1) {
  373.          var5 = this.jaggSQL.getRowCount();
  374.          this.jaggSQL.getColumnCount();
  375.          Object[] var9 = new Object[]{null, null, "Tables", "Templates"};
  376.          this.target.tree.setDropKeys(var9);
  377.          String[] var10 = new String[3];
  378.  
  379.          for(int var11 = 0; var11 < var5; ++var11) {
  380.             String var6 = (String)var3.elementAt(var11);
  381.             if (var6 != null && var6.trim().compareTo("") != 0) {
  382.                StringTokenizer var1 = new StringTokenizer(var6, var4);
  383.                var1.nextToken().trim();
  384.                var10[0] = var1.nextToken().trim();
  385.                var10[1] = var1.nextToken().trim();
  386.                var10[2] = var1.nextToken().trim();
  387.                this.target.tree.addEntry(var10);
  388.             }
  389.          }
  390.  
  391.          this.target.tree.setDropKeys((Object[])null);
  392.          this.user.mainmsg.clearStatusMsg();
  393.       }
  394.    }
  395.  
  396.    String formatTables() {
  397.       String var1 = "";
  398.  
  399.       for(int var2 = 0; var2 < this.selectTable.stables.countItems(); ++var2) {
  400.          if (this.selectTable.stables.isSelected(var2)) {
  401.             var1 = var1 + this.selectTable.stables.getItem(var2);
  402.             var1 = var1 + ";";
  403.          }
  404.       }
  405.  
  406.       return var1;
  407.    }
  408.  
  409.    public boolean handleEvent(Event var1) {
  410.       switch (var1.id) {
  411.          case 202:
  412.             if (var1.target instanceof JDPTabSelectPanel) {
  413.                if (var1.target.equals(this.tabPanel) && this.tabPanel.isSelected(1)) {
  414.                   String var3 = this.selectDSN.connectstring.getText();
  415.                   if (var3.equals("")) {
  416.                      this.selectDSN.buildConnectString();
  417.                   }
  418.  
  419.                   if (!var3.equals(this.selectDSN.connectstring.getText())) {
  420.                      this.selectDSN.setNewDSN();
  421.                      this.selectTable.refresh();
  422.                   }
  423.                }
  424.  
  425.                if (var1.target.equals(this.tabPanelMain) && this.tabPanelMain.isSelected(1)) {
  426.                   this.templateDetail.templdsn = this.selectDSN.datasource.getText();
  427.                   this.templateDetail.templcstr = this.selectDSN.connectstring.getText();
  428.                   this.templateDetail.templtbls = this.formatTables();
  429.                   if (this.templateDetail.currentType.equals("E")) {
  430.                      this.templateDetail.loadColumns();
  431.                   }
  432.                }
  433.  
  434.                return true;
  435.             }
  436.  
  437.             return false;
  438.          case 401:
  439.             if (var1.key == 9) {
  440.                if (var1.modifiers != 1) {
  441.                   if (var1.target.equals(this.a_templname)) {
  442.                      this.user.u.cursor(this.a_templdesc);
  443.                      return true;
  444.                   }
  445.  
  446.                   if (var1.target.equals(this.a_templdesc)) {
  447.                      this.user.u.cursor(this.a_templtype);
  448.                      return true;
  449.                   }
  450.  
  451.                   if (var1.target.equals(this.a_templtype)) {
  452.                      this.user.u.cursor(this.a_groupname);
  453.                      return true;
  454.                   }
  455.  
  456.                   if (!this.valuea_templtype.elementAt(this.a_templtype.getSelectedIndex()).equals("E")) {
  457.                      if (var1.target.equals(this.a_groupname)) {
  458.                         this.user.u.cursor(this.a_templname);
  459.                         return true;
  460.                      }
  461.                   } else if (this.tabPanel.isSelected(0)) {
  462.                      if (!JDPJagg.useJaggServer) {
  463.                         if (var1.target.equals(this.a_groupname)) {
  464.                            this.user.u.cursor(this.selectDSN.datasourceC);
  465.                            return true;
  466.                         }
  467.  
  468.                         if (var1.target.equals(this.selectDSN.datasourceC)) {
  469.                            this.user.u.cursor(this.selectDSN.userid);
  470.                            return true;
  471.                         }
  472.  
  473.                         if (var1.target.equals(this.selectDSN.userid)) {
  474.                            this.user.u.cursor(this.selectDSN.password);
  475.                            return true;
  476.                         }
  477.  
  478.                         if (var1.target.equals(this.selectDSN.password)) {
  479.                            this.user.u.cursor(this.selectDSN.database);
  480.                            return true;
  481.                         }
  482.  
  483.                         if (var1.target.equals(this.selectDSN.database)) {
  484.                            this.user.u.cursor(this.selectDSN.connectstring);
  485.                            return true;
  486.                         }
  487.  
  488.                         if (var1.target.equals(this.selectDSN.connectstring)) {
  489.                            this.user.u.cursor(this.a_templname);
  490.                            return true;
  491.                         }
  492.                      } else {
  493.                         if (var1.target.equals(this.a_groupname)) {
  494.                            this.user.u.cursor(this.selectDSN.datasource);
  495.                            return true;
  496.                         }
  497.  
  498.                         if (var1.target.equals(this.selectDSN.datasource)) {
  499.                            this.user.u.cursor(this.selectDSN.sourcechoice);
  500.                            return true;
  501.                         }
  502.  
  503.                         if (var1.target.equals(this.selectDSN.sourcechoice)) {
  504.                            this.user.u.cursor(this.selectDSN.userid);
  505.                            return true;
  506.                         }
  507.  
  508.                         if (var1.target.equals(this.selectDSN.userid)) {
  509.                            this.user.u.cursor(this.selectDSN.password);
  510.                            return true;
  511.                         }
  512.  
  513.                         if (var1.target.equals(this.selectDSN.password)) {
  514.                            this.user.u.cursor(this.selectDSN.database);
  515.                            return true;
  516.                         }
  517.  
  518.                         if (var1.target.equals(this.selectDSN.database)) {
  519.                            this.user.u.cursor(this.selectDSN.connectstring);
  520.                            return true;
  521.                         }
  522.  
  523.                         if (var1.target.equals(this.selectDSN.connectstring)) {
  524.                            this.user.u.cursor(this.a_templname);
  525.                            return true;
  526.                         }
  527.                      }
  528.                   }
  529.                } else {
  530.                   if (var1.target.equals(this.a_templdesc)) {
  531.                      this.user.u.cursor(this.a_templname);
  532.                      return true;
  533.                   }
  534.  
  535.                   if (var1.target.equals(this.a_templtype)) {
  536.                      this.user.u.cursor(this.a_templdesc);
  537.                      return true;
  538.                   }
  539.  
  540.                   if (var1.target.equals(this.a_groupname)) {
  541.                      this.user.u.cursor(this.a_templtype);
  542.                      return true;
  543.                   }
  544.  
  545.                   if (!this.valuea_templtype.elementAt(this.a_templtype.getSelectedIndex()).equals("E")) {
  546.                      if (var1.target.equals(this.a_templname)) {
  547.                         this.user.u.cursor(this.a_groupname);
  548.                         return true;
  549.                      }
  550.                   } else if (this.tabPanel.isSelected(0)) {
  551.                      if (var1.target.equals(this.a_templname)) {
  552.                         this.user.u.cursor(this.selectDSN.connectstring);
  553.                         return true;
  554.                      }
  555.  
  556.                      if (!JDPJagg.useJaggServer) {
  557.                         if (var1.target.equals(this.selectDSN.datasourceC)) {
  558.                            this.user.u.cursor(this.a_groupname);
  559.                            return true;
  560.                         }
  561.  
  562.                         if (var1.target.equals(this.selectDSN.userid)) {
  563.                            this.user.u.cursor(this.selectDSN.datasourceC);
  564.                            return true;
  565.                         }
  566.  
  567.                         if (var1.target.equals(this.selectDSN.password)) {
  568.                            this.user.u.cursor(this.selectDSN.userid);
  569.                            return true;
  570.                         }
  571.  
  572.                         if (var1.target.equals(this.selectDSN.database)) {
  573.                            this.user.u.cursor(this.selectDSN.password);
  574.                            return true;
  575.                         }
  576.  
  577.                         if (var1.target.equals(this.selectDSN.connectstring)) {
  578.                            this.user.u.cursor(this.selectDSN.database);
  579.                            return true;
  580.                         }
  581.                      } else {
  582.                         if (var1.target.equals(this.selectDSN.datasource)) {
  583.                            this.user.u.cursor(this.a_groupname);
  584.                            return true;
  585.                         }
  586.  
  587.                         if (var1.target.equals(this.selectDSN.sourcechoice)) {
  588.                            this.user.u.cursor(this.selectDSN.datasource);
  589.                            return true;
  590.                         }
  591.  
  592.                         if (var1.target.equals(this.selectDSN.userid)) {
  593.                            this.user.u.cursor(this.selectDSN.sourcechoice);
  594.                            return true;
  595.                         }
  596.  
  597.                         if (var1.target.equals(this.selectDSN.password)) {
  598.                            this.user.u.cursor(this.selectDSN.userid);
  599.                            return true;
  600.                         }
  601.  
  602.                         if (var1.target.equals(this.selectDSN.database)) {
  603.                            this.user.u.cursor(this.selectDSN.password);
  604.                            return true;
  605.                         }
  606.  
  607.                         if (var1.target.equals(this.selectDSN.connectstring)) {
  608.                            this.user.u.cursor(this.selectDSN.database);
  609.                            return true;
  610.                         }
  611.                      }
  612.                   }
  613.                }
  614.  
  615.                return false;
  616.             }
  617.  
  618.             return false;
  619.          case 701:
  620.             if (!var1.target.equals(this.selectTable.stables) || var1.id != 701 && var1.id != 702) {
  621.                return false;
  622.             } else {
  623.                this.selectTable.resetAlias();
  624.                return true;
  625.             }
  626.          case 1001:
  627.             if (var1.target instanceof JDPTreePicker) {
  628.                this.loadData((String[])null);
  629.                return true;
  630.             } else if (var1.target instanceof Button) {
  631.                String var2 = (String)var1.arg;
  632.                if (var2.trim().compareTo("Apply") == 0) {
  633.                   if (this.valuea_templtype.elementAt(this.a_templtype.getSelectedIndex()).equals("E")) {
  634.                      this.selectDSN.buildConnectString();
  635.                      this.selectDSN.setNewDSN();
  636.                   }
  637.  
  638.                   if (this.checkFields()) {
  639.                      if (this.insertRequested) {
  640.                         this.saveData();
  641.                      } else {
  642.                         this.saveData();
  643.                      }
  644.  
  645.                      this.typeChanged = false;
  646.                   } else {
  647.                      this.tabPanelMain.select(0);
  648.                   }
  649.  
  650.                   return true;
  651.                } else {
  652.                   if (var2.trim().compareTo("Reset") == 0) {
  653.                      this.loadData((String[])null);
  654.                      return true;
  655.                   }
  656.  
  657.                   return true;
  658.                }
  659.             } else if (var1.target instanceof JDPChoice) {
  660.                if (var1.target.equals(this.a_templtype)) {
  661.                   if (this.valuea_templtype.elementAt(this.a_templtype.getSelectedIndex()).equals("E")) {
  662.                      ((CardLayout)this.tabMainPanel.getLayout()).show(this.tabMainPanel, "E");
  663.                   } else {
  664.                      ((CardLayout)this.tabMainPanel.getLayout()).show(this.tabMainPanel, "blank");
  665.                   }
  666.  
  667.                   this.typeChanged = true;
  668.                }
  669.  
  670.                if (var1.target.equals(this.selectDSN.datasourceC)) {
  671.                   this.selectDSN.buildConnectString();
  672.                   this.selectDSN.setNewDSN();
  673.                   this.selectDSN.sourcetype.setText(this.selectDSN.recordName[this.selectDSN.datasourceC.getSelectedIndex()]);
  674.                }
  675.  
  676.                return true;
  677.             } else {
  678.                if (var1.target instanceof TextField) {
  679.                   if (this.jdpWhereClause != null && var1.target.equals(this.jdpWhereClause.matchConstant)) {
  680.                      this.insertRequested = false;
  681.                      this.deleteRequested = false;
  682.                      return true;
  683.                   }
  684.  
  685.                   this.checkFields();
  686.                   return true;
  687.                }
  688.  
  689.                return false;
  690.             }
  691.          default:
  692.             if (var1.target instanceof TextField) {
  693.                if (!var1.target.equals(this.selectDSN.userid) && !var1.target.equals(this.selectDSN.password) && !var1.target.equals(this.selectDSN.database)) {
  694.                   return false;
  695.                } else {
  696.                   this.selectDSN.connectstring.setText("");
  697.                   return false;
  698.                }
  699.             } else {
  700.                return false;
  701.             }
  702.       }
  703.    }
  704.  
  705.    boolean checkFields() {
  706.       String var1 = this.a_templname.getText();
  707.       var1 = this.user.u.replace(var1, " ", "");
  708.       this.a_templname.setText(var1);
  709.       if (!this.user.u.ischaracter(this.a_templname, this.user.mainmsg, "Please enter a template name")) {
  710.          return false;
  711.       } else {
  712.          return this.user.u.ischaracter(this.a_templdesc, this.user.mainmsg, "Please enter a template description");
  713.       }
  714.    }
  715.  
  716.    void loadGroups() {
  717.       int var2 = 0;
  718.       Vector var3 = new Vector();
  719.       String var4 = this.jaggSQL.getSEP();
  720.       int var5 = 0;
  721.       String var7 = "SELECT c.typedesc, b.groupdesc FROM JDPTmpGrp b,JDPTmpType c WHERE b.templtype = c.templtype AND b.JDPSystem = c.JDPSystem AND b.JDPSystem = '" + this.user.JDPSystem + "' ORDER BY c.typedesc, b.groupdesc";
  722.       this.user.mainmsg.setStatusMsg("Loading Group definitions, please wait...", 0);
  723.       int[] var8 = new int[]{4, 0, 2, 1};
  724.       this.target.tree.setIcons(var8);
  725.       var2 = this.jaggSQL.execSQL(var7, var3);
  726.       if (var2 != -1) {
  727.          Object[] var9 = new Object[]{null, null, "Tables", null};
  728.          String[] var10 = new String[]{null, null, "Drop here to create a new template from this table", null};
  729.          this.target.tree.setDropKeys(var9);
  730.          this.target.tree.setDropMessages(var10);
  731.          var5 = this.jaggSQL.getRowCount();
  732.          this.jaggSQL.getColumnCount();
  733.          String[] var11 = new String[3];
  734.  
  735.          for(int var12 = 0; var12 < var5; ++var12) {
  736.             String var6 = (String)var3.elementAt(var12);
  737.             if (var6 != null && var6.trim().compareTo("") != 0) {
  738.                StringTokenizer var1 = new StringTokenizer(var6, var4);
  739.                var11[0] = var1.nextToken().trim();
  740.                var11[1] = var1.nextToken().trim();
  741.                var11[2] = "";
  742.                this.target.tree.addEntry(var11);
  743.             }
  744.          }
  745.  
  746.          this.target.tree.setDropKeys((Object[])null);
  747.          this.target.tree.setDropMessages((String[])null);
  748.          this.loadChoices();
  749.          this.user.mainmsg.clearStatusMsg();
  750.       }
  751.    }
  752. }
  753.