--- FM2SQL/Attic/FM2SQL.java 2004/02/18 13:25:24 1.18 +++ FM2SQL/Attic/FM2SQL.java 2004/02/27 11:34:53 1.21 @@ -70,6 +70,8 @@ public class FM2SQL extends JFrame imple private JCheckBoxMenuItem convertItem; private JCheckBoxMenuItem appendItem; private JCheckBoxMenuItem updateItem; + private JCheckBoxMenuItem deleteItem; + int mode = -1; final static int ID_INDEX = 1; final static int SELECT_INDEX = 2; @@ -597,6 +599,7 @@ public class FM2SQL extends JFrame imple System.out.println("Convert Mode selected"); convert.setText("Convert Tables"); convert.setActionCommand("Convert Tables"); + convert.setToolTipText("Normal table conversion existing table will be deleted"); mode = Convert.DataBase.CONVERT_MODE; } if (command == "Append Mode") @@ -604,6 +607,8 @@ public class FM2SQL extends JFrame imple System.out.println("Append Mode selected"); convert.setText("Append Tables"); convert.setActionCommand("Append Tables"); + convert.setToolTipText("Appends data to an existing table"); + mode = Convert.DataBase.APPEND_MODE; } if (command == "Update Mode") @@ -611,8 +616,18 @@ public class FM2SQL extends JFrame imple System.out.println("Update Mode selected"); convert.setText("Update Tables"); convert.setActionCommand("Update Tables"); + convert.setToolTipText("Updates data that has been changed in source"); mode = Convert.DataBase.UPDATE_MODE; } + if (command == "Delete Mode") + { + System.out.println("Delete Mode selected"); + convert.setText("Delete Tables"); + convert.setActionCommand("Delete Tables"); + convert.setToolTipText("Deletes data that has been deleted in source"); + mode = Convert.DataBase.DELETE_MODE; + } + //writing config if (command.equals("save XML Config")) { @@ -783,6 +798,7 @@ public class FM2SQL extends JFrame imple Convert.passwdDest = destBean.passwd; try { + fmInstance.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); fmInstance.setEnabled(false); Convert.update(bean.url, destURLBox.getSelectedItem().toString(), vectors[0], vectors[1], vectors[2], vectors[3],vectors[4], mode); @@ -935,11 +951,14 @@ public class FM2SQL extends JFrame imple String create =database.creates.get(i).toString(); tC.tableModel.setValueAt(new TableComponent.SQLCommand(create.equals("") ? create:" "+create),index,CREATE_INDEX); - tC.tableModel.setValueAt(new TableComponent.SQLCommand(bean.ids.get(i).toString()),index,ID_INDEX); + // tC.tableModel.setValueAt(new TableComponent.SQLCommand(bean.ids.get(i).toString()),index,ID_INDEX); Object comboBox=tC.tableModel.getValueAt(index,LAYOUT_INDEX); + Object idcomboBox=tC.tableModel.getValueAt(index,ID_INDEX); + indices[i] = index; if(comboBox!=null) ((JComboBox)comboBox).setSelectedItem(database.layouts.get(i)); + if(idcomboBox!=null)((JComboBox)idcomboBox).setSelectedItem(bean.ids.get(i)); tC.tableModel.fireTableDataChanged(); noDBUpdate = false; noUserUpdate = false; @@ -1175,6 +1194,8 @@ public class FM2SQL extends JFrame imple String layout = (model.getValueAt(row,LAYOUT_INDEX)!=null) ?((JComboBox)model.getValueAt(row,LAYOUT_INDEX)).getSelectedItem().toString():""; String query = model.getValueAt(row,SELECT_INDEX).toString(); String create = model.getValueAt(row,CREATE_INDEX).toString(); + String id = (model.getValueAt(row,ID_INDEX)!=null) ?((JComboBox)model.getValueAt(row,ID_INDEX)).getSelectedItem().toString():""; + System.out.println("table" +table+" layout "+layout+" query "+query); if(!create.equals("")) { @@ -1183,7 +1204,19 @@ public class FM2SQL extends JFrame imple if(option==0) model.setValueAt(createStatement(table,destBean,layout,query),row,CREATE_INDEX); } - + if (columnName.equals("Layouts")) + { + + bean.makeQuery("select * from"+bean.getQC()+table+bean.getQC(),1); + + Vector idVec = bean.getColumnNames(); + if (idVec == null) + idVec = new Vector(); + idVec.add(0, ""); + JComboBox box = ((JComboBox) model.getValueAt(row, ID_INDEX)); + box.setModel(new DefaultComboBoxModel(idVec)); + box.setSelectedItem(id); + } } /* Statement stm = bean.getConnection().createStatement(); @@ -1271,6 +1304,14 @@ public class FM2SQL extends JFrame imple bgrp.add(updateItem); menu.add(updateItem); + deleteItem = new JCheckBoxMenuItem("Delete Mode"); + deleteItem.setToolTipText("Deletes data in an existing table \n that has been deleted in source table"); + deleteItem.addActionListener(fm); + + bgrp.add(deleteItem); + + menu.add(deleteItem); + menubar.add(menu); item.addActionListener(fm); @@ -1505,13 +1546,20 @@ public class FM2SQL extends JFrame imple { String name = tableNames.get(i).toString(); Vector layouts = new Vector(); + Vector idVec = new Vector(); + try { + bean.makeQuery("select * from"+bean.getQC()+name+bean.getQC(),1); layouts = bean.getLayoutNames(name); } catch (SQLException e) { layouts = new Vector(); } + + idVec = bean.getColumnNames(); + if(idVec==null) idVec=new Vector(); + idVec.add(0,""); Vector dataRow = new Vector(5); dataRow.setSize(5); @@ -1527,7 +1575,7 @@ public class FM2SQL extends JFrame imple // create row dataRow.set(CREATE_INDEX,new TableComponent.SQLCommand("")); // id row - dataRow.set(ID_INDEX,new TableComponent.SQLCommand("")); + dataRow.set(ID_INDEX,new TableComponent.IDComboBox(idVec));//new TableComponent.SQLCommand("")); bean.ids.add(""); data[0].add(dataRow); @@ -1559,10 +1607,12 @@ public class FM2SQL extends JFrame imple vec[0].add(tC.tableModel.getValueAt(rows[i], 0)); JComboBox box = ((JComboBox) tC.tableModel.getValueAt(rows[i], LAYOUT_INDEX)); String layoutName = (box != null) ? box.getSelectedItem().toString() : ""; + + String idName = ((JComboBox)tC.tableModel.getValueAt(rows[i], ID_INDEX)).getSelectedItem().toString(); vec[1].add(layoutName); vec[2].add(tC.tableModel.getValueAt(rows[i],SELECT_INDEX ).toString()); vec[3].add(tC.tableModel.getValueAt(rows[i], CREATE_INDEX).toString()); - vec[4].add(tC.tableModel.getValueAt(rows[i], ID_INDEX).toString()); + vec[4].add(idName); } return vec;