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

  1. import java.awt.BorderLayout;
  2. import java.awt.Color;
  3. import java.awt.Container;
  4. import java.awt.Event;
  5. import java.awt.Font;
  6. import java.awt.Label;
  7. import java.awt.List;
  8. import java.awt.Panel;
  9. import java.awt.TextField;
  10. import java.util.StringTokenizer;
  11. import java.util.Vector;
  12.  
  13. public class SalesMasterDetail extends JDPClassLayout {
  14.    JDPUser user;
  15.    JDPJagg jaggSQL;
  16.    JDPPopupMessage popuppanel;
  17.    JDPMaskEdit JDPMaskEditMain;
  18.    String moduleParameter;
  19.    Panel Main;
  20.    JDPChiselFramePanel ChiselPanel1;
  21.    Panel MasterDetail1;
  22.    Panel Panel1;
  23.    Panel Panel2;
  24.    JDPScrollPanel ScrollPanel1;
  25.    Label stor_idLabel1;
  26.    TextField b_stor_id1;
  27.    Label stor_nameLabel1;
  28.    TextField b_stor_name1;
  29.    Label stor_addressLabel1;
  30.    TextField b_stor_address1;
  31.    Label cityLabel1;
  32.    Panel cityLine1;
  33.    TextField b_city1;
  34.    TextField b_state1;
  35.    TextField b_zip1;
  36.    Label ord_numLabel1;
  37.    TextField a_ord_num1;
  38.    Label ord_dateLabel1;
  39.    JDPDate a_ord_date1;
  40.    JDPTextGrid MasterDetail1GL1;
  41.    JDPButtons JDPButtons1;
  42.    Panel Panel3;
  43.    JDPWhereClause MasterDetail1SP1;
  44.    JDPSearchResults MasterDetail1RL1;
  45.  
  46.    public void InitClass(JDPUser var1, Panel var2, String var3) {
  47.       this.user = var1;
  48.       this.moduleParameter = var3;
  49.       this.jaggSQL = new JDPJagg(var1.jaggPath);
  50.       ((Container)this).setLayout(new BorderLayout());
  51.       this.popuppanel = new JDPPopupMessage(var1, this);
  52.       ((Container)this).add(this.popuppanel);
  53.       this.JDPMaskEditMain = new JDPMaskEdit();
  54.       this.Main = new Panel();
  55.       this.ChiselPanel1 = new JDPChiselFramePanel(var1, "Sales Detail Inquiry");
  56.       this.MasterDetail1 = new Panel();
  57.       this.Panel1 = new Panel();
  58.       this.Panel2 = new Panel();
  59.       this.ScrollPanel1 = new JDPScrollPanel();
  60.       this.stor_idLabel1 = new Label("Store Id:", 0);
  61.       this.b_stor_id1 = new TextField("b.stor_id", 6);
  62.       this.stor_nameLabel1 = new Label("Name:", 0);
  63.       this.b_stor_name1 = new TextField("b.stor_name", 42);
  64.       this.stor_addressLabel1 = new Label("Address:", 0);
  65.       this.b_stor_address1 = new TextField("b.stor_address", 42);
  66.       this.cityLabel1 = new Label("", 0);
  67.       this.cityLine1 = new Panel();
  68.       this.b_city1 = new TextField("b.city", 22);
  69.       this.b_state1 = new TextField("b.state", 4);
  70.       this.b_zip1 = new TextField("b.zip", 7);
  71.       this.ord_numLabel1 = new Label("Order Number:", 0);
  72.       this.a_ord_num1 = new TextField("a.ord_num", 20);
  73.       this.ord_dateLabel1 = new Label("Order Date:", 0);
  74.       this.a_ord_date1 = new JDPDate(var1, "", 19);
  75.       this.MasterDetail1GL1 = new JDPTextGrid(var1);
  76.       String[] var4 = new String[]{"Apply", "Refresh", "Remove"};
  77.       int[] var5 = new int[]{JDPButton.getIconValue("Save"), JDPButton.getIconValue("Undo"), JDPButton.getIconValue("Delete")};
  78.       this.JDPButtons1 = new JDPButtons(var1, var4, var5, JDPButtons.getAlignmentValue("Horizontal"));
  79.       this.Panel3 = new Panel();
  80.       this.Main.setLayout(new BorderLayout());
  81.       ((Container)this).add("Center", this.Main);
  82.       this.Main.add("Center", this.ChiselPanel1);
  83.       this.ChiselPanel1.add("Center", this.MasterDetail1);
  84.       this.MasterDetail1.setLayout(new BorderLayout());
  85.       this.MasterDetail1Main();
  86.       this.MasterDetail1.add("Center", this.Panel1);
  87.       this.Panel1.setLayout(new BorderLayout());
  88.       this.Panel1.add("North", this.Panel2);
  89.       this.Panel2.setLayout(new BorderLayout());
  90.       this.Panel2.add("Center", this.ScrollPanel1);
  91.       this.ScrollPanel1.add("Left", this.stor_idLabel1);
  92.       this.ScrollPanel1.add("Right", this.b_stor_id1);
  93.       this.ScrollPanel1.add("Left", this.stor_nameLabel1);
  94.       this.ScrollPanel1.add("Right", this.b_stor_name1);
  95.       this.ScrollPanel1.add("Left", this.stor_addressLabel1);
  96.       this.ScrollPanel1.add("Right", this.b_stor_address1);
  97.       this.ScrollPanel1.add("Left", this.cityLabel1);
  98.       this.ScrollPanel1.add("Right", this.cityLine1);
  99.       this.cityLine1.setLayout(new JDPLineLayout());
  100.       this.cityLine1.add("Left", this.b_city1);
  101.       this.cityLine1.add("Left", this.b_state1);
  102.       this.cityLine1.add("Left", this.b_zip1);
  103.       this.ScrollPanel1.add("Left", this.ord_numLabel1);
  104.       this.ScrollPanel1.add("Right", this.a_ord_num1);
  105.       this.ScrollPanel1.add("Left", this.ord_dateLabel1);
  106.       this.ScrollPanel1.add("Right", this.a_ord_date1);
  107.       this.Panel1.add("Center", this.MasterDetail1GL1);
  108.       this.Panel1.add("South", this.JDPButtons1);
  109.       this.MasterDetail1.add("West", this.Panel3);
  110.       this.Panel3.setLayout(new BorderLayout());
  111.       this.Panel3.add("North", this.MasterDetail1SP1);
  112.       this.Panel3.add("Center", this.MasterDetail1RL1);
  113.       this.stor_idLabel1.setFont(new Font("Helvetica", 1, 11));
  114.       this.b_stor_id1.setEditable(false);
  115.       this.popuppanel.addComponent(this.b_stor_id1, "Stor Id", "");
  116.       this.b_stor_id1.setEditable(false);
  117.       this.stor_nameLabel1.setFont(new Font("Helvetica", 1, 11));
  118.       this.b_stor_name1.setEditable(false);
  119.       this.popuppanel.addComponent(this.b_stor_name1, "Stor name", "");
  120.       this.b_stor_name1.setEditable(false);
  121.       this.stor_addressLabel1.setFont(new Font("Helvetica", 1, 11));
  122.       this.b_stor_address1.setEditable(false);
  123.       this.popuppanel.addComponent(this.b_stor_address1, "Stor Address", "");
  124.       this.b_stor_address1.setEditable(false);
  125.       this.cityLabel1.setFont(new Font("Helvetica", 1, 11));
  126.       this.b_city1.setEditable(false);
  127.       this.popuppanel.addComponent(this.b_city1, "City", "");
  128.       this.b_city1.setEditable(false);
  129.       this.b_state1.setEditable(false);
  130.       this.popuppanel.addComponent(this.b_state1, "State", "");
  131.       this.b_state1.setEditable(false);
  132.       this.b_zip1.setEditable(false);
  133.       this.popuppanel.addComponent(this.b_zip1, "Zip", "");
  134.       this.b_zip1.setEditable(false);
  135.       this.ord_numLabel1.setFont(new Font("Helvetica", 1, 11));
  136.       this.popuppanel.addComponent(this.a_ord_num1, "Ord Num", "");
  137.       this.ord_dateLabel1.setFont(new Font("Helvetica", 1, 11));
  138.       this.popuppanel.addComponent(this.a_ord_date1, "Ord Date", "");
  139.       this.InitComponents();
  140.       var1.gParm.addElement(this);
  141.    }
  142.  
  143.    public boolean handleEvent(Event var1) {
  144.       switch (var1.id) {
  145.          case 401:
  146.             if (var1.key == 9 && var1.modifiers != 1) {
  147.                if (var1.target.equals(this.b_stor_id1)) {
  148.                   this.user.u.cursor(this.b_stor_name1);
  149.                   return true;
  150.                }
  151.  
  152.                if (var1.target.equals(this.b_stor_name1)) {
  153.                   this.user.u.cursor(this.b_stor_address1);
  154.                   return true;
  155.                }
  156.  
  157.                if (var1.target.equals(this.b_stor_address1)) {
  158.                   this.user.u.cursor(this.b_city1);
  159.                   return true;
  160.                }
  161.  
  162.                if (var1.target.equals(this.b_city1)) {
  163.                   this.user.u.cursor(this.b_state1);
  164.                   return true;
  165.                }
  166.  
  167.                if (var1.target.equals(this.b_state1)) {
  168.                   this.user.u.cursor(this.b_zip1);
  169.                   return true;
  170.                }
  171.  
  172.                if (var1.target.equals(this.b_zip1)) {
  173.                   this.user.u.cursor(this.a_ord_num1);
  174.                   return true;
  175.                }
  176.  
  177.                if (var1.target.equals(this.a_ord_num1)) {
  178.                   this.user.u.cursor(this.a_ord_date1);
  179.                   return true;
  180.                }
  181.  
  182.                if (var1.target.equals(this.a_ord_date1)) {
  183.                   this.user.u.cursor(this.b_stor_id1);
  184.                   return true;
  185.                }
  186.             }
  187.  
  188.             if (var1.key == 9 && var1.modifiers == 1) {
  189.                if (var1.target.equals(this.b_stor_id1)) {
  190.                   this.user.u.cursor(this.a_ord_date1);
  191.                   return true;
  192.                }
  193.  
  194.                if (var1.target.equals(this.b_stor_name1)) {
  195.                   this.user.u.cursor(this.b_stor_id1);
  196.                   return true;
  197.                }
  198.  
  199.                if (var1.target.equals(this.b_stor_address1)) {
  200.                   this.user.u.cursor(this.b_stor_name1);
  201.                   return true;
  202.                }
  203.  
  204.                if (var1.target.equals(this.b_city1)) {
  205.                   this.user.u.cursor(this.b_stor_address1);
  206.                   return true;
  207.                }
  208.  
  209.                if (var1.target.equals(this.b_state1)) {
  210.                   this.user.u.cursor(this.b_city1);
  211.                   return true;
  212.                }
  213.  
  214.                if (var1.target.equals(this.b_zip1)) {
  215.                   this.user.u.cursor(this.b_state1);
  216.                   return true;
  217.                }
  218.  
  219.                if (var1.target.equals(this.a_ord_num1)) {
  220.                   this.user.u.cursor(this.b_zip1);
  221.                   return true;
  222.                }
  223.  
  224.                if (var1.target.equals(this.a_ord_date1)) {
  225.                   this.user.u.cursor(this.a_ord_num1);
  226.                   return true;
  227.                }
  228.             }
  229.  
  230.             return false;
  231.          case 503:
  232.          case 504:
  233.          case 505:
  234.             this.popuppanel.postEvent(var1);
  235.             return false;
  236.          case 1001:
  237.             if (var1.target.equals(this.JDPButtons1.button[0])) {
  238.                this.MasterDetail1UpdateRows(this.MasterDetail1RL1.getSelectedKey());
  239.                return true;
  240.             } else if (var1.target.equals(this.JDPButtons1.button[1])) {
  241.                this.MasterDetail1LoadGrid(this.MasterDetail1RL1.getSelectedKey());
  242.                return true;
  243.             } else if (var1.target.equals(this.JDPButtons1.button[2])) {
  244.                this.MasterDetail1DeleteRows(this.MasterDetail1RL1.getSelectedKey());
  245.                return true;
  246.             } else if (var1.target.equals(this.MasterDetail1SP1)) {
  247.                this.MasterDetail1RL1.clearList();
  248.                this.MasterDetail1RL1.setFromWhereClause(this.MasterDetail1SP1.getFromWhereClause());
  249.                this.MasterDetail1RL1.loadList();
  250.                return true;
  251.             } else {
  252.                if (var1.target.equals(this.MasterDetail1RL1)) {
  253.                   this.MasterDetail1Load(this.MasterDetail1RL1.getSelectedKey());
  254.                   this.MasterDetail1LoadGrid(this.MasterDetail1RL1.getSelectedKey());
  255.                   return true;
  256.                }
  257.  
  258.                return false;
  259.             }
  260.          default:
  261.             return false;
  262.       }
  263.    }
  264.  
  265.    public void InitComponents() {
  266.       this.jaggSQL.setKeepConnectionOpen(false);
  267.    }
  268.  
  269.    public void MasterDetail1Main() {
  270.       this.MasterDetail1ClearFields();
  271.       this.MasterDetail1SetGridSettings();
  272.       this.MasterDetail1LoadChoices();
  273.       this.MasterDetail1WhereClauseMain();
  274.       this.MasterDetail1SearchResultsMain();
  275.    }
  276.  
  277.    public void MasterDetail1Load(String[] var1) {
  278.       int var3 = 0;
  279.       Vector var4 = new Vector();
  280.       String var5 = this.jaggSQL.getSEP();
  281.       if (var1 != null && var1.length >= 0) {
  282.          String var7 = "SELECT a.ord_num,a.ord_date,b.stor_id,b.stor_name,b.stor_address,b.city,b.state,b.zip FROM {oj dbo_sales a LEFT OUTER JOIN dbo_stores b ON a.stor_id = b.stor_id} WHERE (1=1)";
  283.          if (var1.length > 0 && var1[0] != null) {
  284.             var7 = var7 + " AND a.stor_id='" + var1[0] + "'";
  285.          }
  286.  
  287.          if (var1.length > 1 && var1[1] != null) {
  288.             var7 = var7 + " AND a.ord_num='" + var1[1] + "'";
  289.          }
  290.  
  291.          if (var1.length > 2 && var1[2] != null) {
  292.             var7 = var7 + " AND a.title_id='" + var1[2] + "'";
  293.          }
  294.  
  295.          this.jaggSQL.setDSN("JDP Tutorial");
  296.          this.jaggSQL.setUID("");
  297.          this.jaggSQL.setPWD("");
  298.          this.jaggSQL.setMRW("1000");
  299.          this.jaggSQL.setTOUT("60");
  300.          this.user.mainmsg.setStatusMsg(JDPLang.get("Message0"), 0);
  301.          var3 = this.jaggSQL.execSQL(var7, var4);
  302.          if (var3 == -1) {
  303.             this.user.u.setSqlMessage(this.jaggSQL, var7);
  304.          } else if (var3 >= 1) {
  305.             String var6 = (String)var4.elementAt(0);
  306.             if (var6 != null && var6.trim().compareTo("") != 0) {
  307.                StringTokenizer var2 = new StringTokenizer(var6, var5);
  308.                this.a_ord_num1.setText(var2.nextToken().trim());
  309.                this.a_ord_date1.setText(JDPDate.format(Long.valueOf(var2.nextToken())));
  310.                this.b_stor_id1.setText(var2.nextToken().trim());
  311.                this.b_stor_name1.setText(var2.nextToken().trim());
  312.                this.b_stor_address1.setText(var2.nextToken().trim());
  313.                this.b_city1.setText(var2.nextToken().trim());
  314.                this.b_state1.setText(var2.nextToken().trim());
  315.                this.b_zip1.setText(var2.nextToken().trim());
  316.             }
  317.  
  318.             if (var3 > 1) {
  319.                this.user.mainmsg.setStatusMsg(JDPLang.get("Message1"), 10);
  320.             } else {
  321.                this.user.mainmsg.clearStatusMsg();
  322.             }
  323.          } else {
  324.             this.user.mainmsg.setStatusMsg(JDPLang.get("Message2"), 10);
  325.             this.MasterDetail1ClearFields();
  326.          }
  327.       } else {
  328.          this.MasterDetail1ClearFields();
  329.       }
  330.    }
  331.  
  332.    public void MasterDetail1ClearFields() {
  333.       this.a_ord_num1.setText("");
  334.       this.a_ord_date1.setText("");
  335.       this.b_stor_id1.setText("");
  336.       this.b_stor_name1.setText("");
  337.       this.b_stor_address1.setText("");
  338.       this.b_city1.setText("");
  339.       this.b_state1.setText("");
  340.       this.b_zip1.setText("");
  341.    }
  342.  
  343.    public boolean MasterDetail1CheckFields() {
  344.       return true;
  345.    }
  346.  
  347.    public void MasterDetail1LoadGridFromWhereClause(String var1) {
  348.       int var2 = var1.indexOf("WHERE ");
  349.       var1 = " AND" + var1.substring(var2 + 5);
  350.       String[] var3 = new String[0];
  351.       this.MasterDetail1LoadGridMain(var3, var1);
  352.    }
  353.  
  354.    public void MasterDetail1LoadGrid(String[] var1) {
  355.       this.MasterDetail1LoadGridMain(var1, (String)null);
  356.    }
  357.  
  358.    void MasterDetail1LoadGridMain(String[] var1, String var2) {
  359.       JDPTextGrid var3 = this.MasterDetail1GL1;
  360.       int var5 = 0;
  361.       Vector var6 = new Vector();
  362.       String var7 = this.jaggSQL.getSEP();
  363.       int var8 = 0;
  364.       byte var10 = 3;
  365.       new Vector();
  366.       new Vector();
  367.       String var11 = "SELECT a.stor_id, a.ord_num, a.title_id, a.title_id, a.qty, a.payterms FROM {oj dbo_sales a LEFT OUTER JOIN dbo_stores b ON a.stor_id = b.stor_id} WHERE (1=1)  ";
  368.       if (var1.length > 0 && var1[0] != null) {
  369.          var11 = var11 + " AND a.stor_id='" + var1[0] + "'";
  370.       }
  371.  
  372.       if (var1.length > 1 && var1[1] != null) {
  373.          var11 = var11 + " AND a.ord_num='" + var1[1] + "'";
  374.       }
  375.  
  376.       if (var1.length > 2 && var1[2] != null) {
  377.          var11 = var11 + " AND a.title_id='" + var1[2] + "'";
  378.       }
  379.  
  380.       if (var2 != null) {
  381.          var11 = var11 + var2;
  382.       }
  383.  
  384.       this.user.mainmsg.setStatusMsg(JDPLang.get("Message0"), 0);
  385.       this.jaggSQL.setDSN("JDP Tutorial");
  386.       this.jaggSQL.setUID("");
  387.       this.jaggSQL.setPWD("");
  388.       this.jaggSQL.setMRW("1000");
  389.       this.jaggSQL.setTOUT("60");
  390.       var5 = this.jaggSQL.execSQL(var11, var6);
  391.       if (var5 == -1) {
  392.          this.user.u.setSqlMessage(this.jaggSQL, var11);
  393.       } else {
  394.          var3.totalDataRows = this.jaggSQL.getRowCount();
  395.          var8 = this.jaggSQL.getRowCount() + 20;
  396.          var3.currentText = new String[var10][var8];
  397.          var3.cellChanged = null;
  398.          var3.rowChanged = null;
  399.          var3.columnSelected = null;
  400.          byte var12 = 3;
  401.          var3.rowKey = new String[var8][var12];
  402.          var3.recordLockValue = new String[var8];
  403.  
  404.          for(int var14 = 0; var14 < var8 - 20; ++var14) {
  405.             String var9 = (String)var6.elementAt(var14);
  406.             if (var9 != null && var9.trim().compareTo("") != 0) {
  407.                StringTokenizer var4 = new StringTokenizer(var9, var7);
  408.  
  409.                for(int var15 = 0; var15 < var12; ++var15) {
  410.                   var3.rowKey[var14][var15] = var4.nextToken().trim();
  411.                }
  412.  
  413.                for(int var16 = 0; var16 < var10; ++var16) {
  414.                   String var13 = var4.nextToken().trim();
  415.                   var3.currentText[var16][var14] = var13;
  416.                   if (var16 == 0 && var3.pullDownValue[0][0].indexOf(var13) >= 0) {
  417.                      var3.currentText[var16][var14] = var3.pullDownList[0][0].getItem(var3.pullDownValue[0][0].indexOf(var13));
  418.                   }
  419.  
  420.                   if (var16 == 2 && var3.pullDownValue[2][0].indexOf(var13) >= 0) {
  421.                      var3.currentText[var16][var14] = var3.pullDownList[2][0].getItem(var3.pullDownValue[2][0].indexOf(var13));
  422.                   }
  423.                }
  424.             }
  425.          }
  426.  
  427.          for(int var19 = var8 - 20; var19 < var8; ++var19) {
  428.             for(int var20 = 0; var20 < var1.length; ++var20) {
  429.                var3.rowKey[var19][var20] = var1[var20];
  430.             }
  431.          }
  432.  
  433.          var3.newTable();
  434.          this.user.mainmsg.clearStatusMsg();
  435.       }
  436.    }
  437.  
  438.    public void MasterDetail1UpdateRowsFromWhereClause(String var1) {
  439.       int var2 = var1.indexOf("WHERE ");
  440.       var1 = " AND" + var1.substring(var2 + 5);
  441.       String[] var3 = new String[0];
  442.       this.MasterDetail1UpdateRowsMain(var3, var1);
  443.    }
  444.  
  445.    public void MasterDetail1UpdateRows(String[] var1) {
  446.       this.MasterDetail1UpdateRowsMain(var1, (String)null);
  447.    }
  448.  
  449.    void MasterDetail1UpdateRowsMain(String[] var1, String var2) {
  450.       JDPTextGrid var3 = this.MasterDetail1GL1;
  451.       int var4 = 0;
  452.       int var5 = 0;
  453.       int var6 = 1;
  454.       int var7 = 1;
  455.       boolean var8 = false;
  456.  
  457.       for(int var9 = 0; var9 < var3.rowChanged.length; ++var9) {
  458.          if (var3.rowChanged[var9]) {
  459.             if (var9 >= var3.totalDataRows) {
  460.                ++var5;
  461.             } else {
  462.                ++var4;
  463.             }
  464.          }
  465.       }
  466.  
  467.       for(int var10 = 0; var10 < var3.rowChanged.length; ++var10) {
  468.          if (var3.rowChanged[var10]) {
  469.             if (var10 >= var3.totalDataRows) {
  470.                this.user.mainmsg.setStatusMsg(JDPLang.get("Message7", var7++, var5), 0);
  471.                this.MasterDetail1SaveData(var10, "I");
  472.             } else {
  473.                this.user.mainmsg.setStatusMsg(JDPLang.get("Message8", var6++, var4), 0);
  474.                if (this.MasterDetail1SaveData(var10, "U")) {
  475.                   var8 = true;
  476.                }
  477.             }
  478.  
  479.             var3.rowChanged[var10] = false;
  480.          }
  481.       }
  482.  
  483.       if (var5 > 0 || var8) {
  484.          this.MasterDetail1LoadGridMain(var1, var2);
  485.       }
  486.  
  487.    }
  488.  
  489.    public void MasterDetail1DeleteRowsFromWhereClause(String var1) {
  490.       int var2 = var1.indexOf("WHERE ");
  491.       var1 = " AND" + var1.substring(var2 + 5);
  492.       String[] var3 = new String[0];
  493.       this.MasterDetail1DeleteRowsMain(var3, var1);
  494.    }
  495.  
  496.    public void MasterDetail1DeleteRows(String[] var1) {
  497.       this.MasterDetail1DeleteRowsMain(var1, (String)null);
  498.    }
  499.  
  500.    void MasterDetail1DeleteRowsMain(String[] var1, String var2) {
  501.       JDPTextGrid var3 = this.MasterDetail1GL1;
  502.       int var4 = 0;
  503.       int var5 = 1;
  504.  
  505.       for(int var6 = 0; var6 < var3.rowChanged.length; ++var6) {
  506.          if (var3.rowSelected[var6]) {
  507.             ++var4;
  508.          }
  509.       }
  510.  
  511.       for(int var7 = 0; var7 < var3.rowChanged.length; ++var7) {
  512.          if (var3.rowSelected[var7]) {
  513.             this.user.mainmsg.setStatusMsg(JDPLang.get("Message9", var5++, var4), 0);
  514.             this.MasterDetail1SaveData(var7, "D");
  515.          }
  516.       }
  517.  
  518.       if (var4 > 0) {
  519.          this.MasterDetail1LoadGridMain(var1, var2);
  520.       }
  521.  
  522.    }
  523.  
  524.    boolean MasterDetail1SaveData(int var1, String var2) {
  525.       JDPTextGrid var3 = this.MasterDetail1GL1;
  526.       int var4 = 0;
  527.       Vector var5 = new Vector();
  528.       this.jaggSQL.getSEP();
  529.       String var6 = "";
  530.       String var7 = null;
  531.       this.jaggSQL.setDSN("JDP Tutorial");
  532.       this.jaggSQL.setUID("");
  533.       this.jaggSQL.setPWD("");
  534.       this.jaggSQL.setMRW("1000");
  535.       this.jaggSQL.setTOUT("60");
  536.       if (var2.equals("I")) {
  537.          var6 = "INSERT INTO dbo_sales (stor_id, ord_num, title_id, qty, payterms, ord_date) VALUES('" + var3.rowKey[var1][0] + "', " + "'" + var3.rowKey[var1][1] + "', " + "'" + (String)var3.pullDownValue[0][0].elementAt(this.user.u.listIndexOf(var3.pullDownList[0][0], var3.currentText[0][var1])) + "', " + "" + JDPUtils.tonum(var3.currentText[1][var1]) + ", " + "'" + (String)var3.pullDownValue[2][0].elementAt(this.user.u.listIndexOf(var3.pullDownList[2][0], var3.currentText[2][var1])) + "', " + "'" + JDPDate.format("") + "')";
  538.       } else if (var2.equals("D")) {
  539.          var6 = "DELETE FROM dbo_sales WHERE stor_id='" + var3.rowKey[var1][0] + "'" + " AND ord_num='" + var3.rowKey[var1][1] + "'" + " AND title_id='" + var3.rowKey[var1][2] + "'";
  540.          if (var3.recordLockValue[var1] != null) {
  541.             var7 = var6;
  542.          }
  543.       } else {
  544.          var6 = "UPDATE dbo_sales SET qty = " + JDPUtils.tonum(var3.currentText[1][var1]) + ", " + "payterms = '" + (String)var3.pullDownValue[2][0].elementAt(this.user.u.listIndexOf(var3.pullDownList[2][0], var3.currentText[2][var1])) + "'" + " WHERE stor_id='" + var3.rowKey[var1][0] + "'" + " AND ord_num='" + var3.rowKey[var1][1] + "'" + " AND title_id='" + var3.rowKey[var1][2] + "'";
  545.          if (var3.recordLockValue[var1] != null) {
  546.             var7 = var6;
  547.          }
  548.       }
  549.  
  550.       var4 = this.jaggSQL.execSQL(var6, var5);
  551.       if (this.user.DEBUG) {
  552.          System.out.println("saveData CNT: " + Integer.toString(var4));
  553.       }
  554.  
  555.       if (var4 == 0 && var7 != null) {
  556.          String[] var8 = new String[]{"Reload", "Update"};
  557.          int[] var9 = new int[]{6, 0};
  558.          JDPMessageDialog var10 = new JDPMessageDialog(this.user, this.user.jdpMainWindow, JDPLang.get("Dialog0"), JDPLang.get("Dialog1"), var8, var9);
  559.          ((JDPDialog)var10).display();
  560.          if (var10.getPressedButton() != 1) {
  561.             return true;
  562.          }
  563.  
  564.          var5 = new Vector();
  565.          var4 = this.jaggSQL.execSQL(var7, var5);
  566.       }
  567.  
  568.       if (var4 == -1) {
  569.          this.user.u.setSqlMessage(this.jaggSQL, var6);
  570.          return false;
  571.       } else {
  572.          if (var4 == 1) {
  573.             if (var2.equals("I")) {
  574.                this.user.mainmsg.setStatusMsg(JDPLang.get("Message4"), 3);
  575.             } else if (var2.equals("D")) {
  576.                this.user.mainmsg.setStatusMsg(JDPLang.get("Message5"), 3);
  577.             } else {
  578.                this.user.mainmsg.setStatusMsg(JDPLang.get("Message6"), 3);
  579.             }
  580.          } else {
  581.             this.user.u.setSqlMessage(this.jaggSQL, var6);
  582.          }
  583.  
  584.          return var7 != null;
  585.       }
  586.    }
  587.  
  588.    public void MasterDetail1LoadEmptyGrid() {
  589.       JDPTextGrid var1 = this.MasterDetail1GL1;
  590.       byte var2 = 3;
  591.       var1.currentText = new String[var2][50];
  592.       var1.cellChanged = null;
  593.       var1.rowChanged = null;
  594.       var1.columnSelected = null;
  595.       var1.rowKey = new String[50][1];
  596.       var1.newTable();
  597.       var1.totalDataRows = 0;
  598.    }
  599.  
  600.    void MasterDetail1SetGridSettings() {
  601.       if (this.MasterDetail1 == null) {
  602.          this.MasterDetail1 = new JDPTextGrid(this.user);
  603.       }
  604.  
  605.       JDPTextGrid var1 = this.MasterDetail1GL1;
  606.       byte var2 = 3;
  607.       var1.columnHeader = new String[var2];
  608.       var1.columnHeaderStyle = new int[var2];
  609.       var1.columnStyle = new int[var2];
  610.       var1.columnHeaderColor = new Color[var2];
  611.       var1.columnColor = new Color[var2];
  612.       var1.columnBGColor = new Color[var2];
  613.       var1.columnProtected = new boolean[var2];
  614.       var1.columnWidth = new int[var2];
  615.       var1.rightJustify = new boolean[var2];
  616.       var1.rowHeader = null;
  617.       var1.columnHeight = null;
  618.  
  619.       for(int var3 = 0; var3 < var2; ++var3) {
  620.          var1.columnHeaderStyle[var3] = 1;
  621.          var1.columnStyle[var3] = 0;
  622.          var1.columnHeaderColor[var3] = Color.black;
  623.          var1.columnColor[var3] = Color.black;
  624.          var1.columnBGColor[var3] = Color.white;
  625.          var1.columnStyle[var3] = 0;
  626.       }
  627.  
  628.       var1.columnProtected[0] = true;
  629.       var1.columnProtected[2] = true;
  630.       var1.columnWidth[0] = 307;
  631.       var1.columnWidth[1] = 52;
  632.       var1.columnWidth[2] = 100;
  633.       var1.rightJustify[1] = true;
  634.       var1.columnHeader[0] = "Title";
  635.       var1.columnHeader[1] = "Quantity";
  636.       var1.columnHeader[2] = "Terms";
  637.       this.MasterDetail1LoadEmptyGrid();
  638.    }
  639.  
  640.    void MasterDetail1LoadChoices() {
  641.       JDPTextGrid var1 = this.MasterDetail1GL1;
  642.       byte var2 = 3;
  643.       this.jaggSQL.setDSN("JDP Tutorial");
  644.       this.jaggSQL.setUID("");
  645.       this.jaggSQL.setPWD("");
  646.       this.jaggSQL.setMRW("1000");
  647.       this.jaggSQL.setTOUT("60");
  648.       var1.isPullDownCol = new boolean[var2];
  649.       var1.pullDownColType = new int[var2];
  650.       var1.pullDownList = new List[var2][1];
  651.       var1.isPullDownCol[0] = true;
  652.       var1.isPullDownCol[2] = true;
  653.       var1.pullDownColType[0] = 0;
  654.       var1.pullDownColType[2] = 0;
  655.       var1.pullDownList[0][0] = new List();
  656.       var1.pullDownList[2][0] = new List();
  657.       var1.pullDownValue[2][0] = new Vector();
  658.       var1.pullDownList[2][0].addItem("Net 30");
  659.       var1.pullDownValue[2][0].addElement("Net 30");
  660.       var1.pullDownList[2][0].addItem("Net 60");
  661.       var1.pullDownValue[2][0].addElement("Net 60");
  662.       var1.pullDownList[2][0].addItem("ON invoice");
  663.       var1.pullDownValue[2][0].addElement("ON invoice");
  664.       var1.pullDownValue[0][0] = new Vector();
  665.       new JDPLoadChoice(this.user, this.jaggSQL, var1.pullDownList[0][0], "title", "title_id", "dbo_titles", "(1=1)", var1.pullDownValue[0][0]);
  666.    }
  667.  
  668.    public void MasterDetail1WhereClauseMain() {
  669.       String[] var1 = new String[3];
  670.       String[] var2 = new String[3];
  671.       Vector var3 = new Vector();
  672.       Vector var4 = new Vector();
  673.       var1[0] = "Order Num";
  674.       var2[0] = "a.ord_num";
  675.       var1[1] = "Store name";
  676.       var2[1] = "b.stor_name";
  677.       var1[2] = "Store Address";
  678.       var2[2] = "b.stor_address";
  679.       var3.addElement(new Vector());
  680.       var4.addElement(new Vector());
  681.       var3.addElement(new Vector());
  682.       var4.addElement(new Vector());
  683.       var3.addElement(new Vector());
  684.       var4.addElement(new Vector());
  685.       ((Vector)var3.elementAt(0)).addElement("Begins with");
  686.       ((Vector)var4.elementAt(0)).addElement("like");
  687.       ((Vector)var3.elementAt(0)).addElement("Contains");
  688.       ((Vector)var4.elementAt(0)).addElement("like");
  689.       ((Vector)var3.elementAt(1)).addElement("Begins with");
  690.       ((Vector)var4.elementAt(1)).addElement("like");
  691.       ((Vector)var3.elementAt(1)).addElement("Contains");
  692.       ((Vector)var4.elementAt(1)).addElement("like");
  693.       ((Vector)var3.elementAt(2)).addElement("Begins with");
  694.       ((Vector)var4.elementAt(2)).addElement("like");
  695.       ((Vector)var3.elementAt(2)).addElement("Contains");
  696.       ((Vector)var4.elementAt(2)).addElement("like");
  697.       int[] var5 = new int[3];
  698.       boolean[] var6 = new boolean[3];
  699.       var5[0] = 22;
  700.       var6[0] = true;
  701.       var5[1] = 44;
  702.       var6[1] = true;
  703.       var5[2] = 44;
  704.       var6[2] = true;
  705.       this.MasterDetail1SP1 = new JDPWhereClause(this.user, super.targetPanel, "", true, "", var1, var2, var3, var4, (String[][])null, (String[][])null, var5, var6, "FROM {oj dbo_sales a LEFT OUTER JOIN dbo_stores b ON a.stor_id = b.stor_id} WHERE (1=1)");
  706.       this.MasterDetail1SP1.setDSNType("ACCESS");
  707.       this.MasterDetail1SP1.setDataType(0, 12);
  708.       this.MasterDetail1SP1.setDataType(1, 12);
  709.       this.MasterDetail1SP1.setDataType(2, 12);
  710.    }
  711.  
  712.    public void MasterDetail1SearchResultsMain() {
  713.       String var1 = "a.stor_id,a.ord_num";
  714.       String[] var2 = new String[]{"a.ord_num"};
  715.       String var3 = "(1=1)";
  716.       String[] var4 = new String[]{"Stor name", "Stor Address"};
  717.       String[] var5 = new String[]{"b.stor_name", "b.stor_address"};
  718.       JDPJagg var6 = new JDPJagg(this.user.jaggPath);
  719.       var6.setDSN("JDP Tutorial");
  720.       var6.setUID("");
  721.       var6.setPWD("");
  722.       var6.setMRW("1000");
  723.       var6.setTOUT("60");
  724.       this.MasterDetail1RL1 = new JDPSearchResults(this.user, super.targetPanel, true, var6, false, var1, var2, var3, var4, var5, var5, "", true, "Total Entries:");
  725.       int[] var7 = new int[14];
  726.       var7[0] = 3;
  727.       var7[1] = 5;
  728.       var7[2] = 8;
  729.       this.MasterDetail1RL1.setMinWidth(130);
  730.       this.MasterDetail1RL1.setIcons(var7);
  731.       this.MasterDetail1RL1.setFromWhereClause(" FROM {oj dbo_sales a LEFT OUTER JOIN dbo_stores b ON a.stor_id = b.stor_id} WHERE (1=1)");
  732.       this.MasterDetail1RL1.clearList("");
  733.       this.MasterDetail1RL1.loadList();
  734.    }
  735. }
  736.