Dépôt officiel du code source de l'ERP OpenConcerto
Rev 144 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
/*
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright 2011-2019 OpenConcerto, by ILM Informatique. All rights reserved.
*
* The contents of this file are subject to the terms of the GNU General Public License Version 3
* only ("GPL"). You may not use this file except in compliance with the License. You can obtain a
* copy of the License at http://www.gnu.org/licenses/gpl-3.0.html See the License for the specific
* language governing permissions and limitations under the License.
*
* When distributing the software, include this License Header Notice in each file.
*/
/*
* Créé le 19 oct. 2011
*/
package org.openconcerto.erp.core.supplychain.order.element;
import org.openconcerto.erp.core.common.component.TransfertBaseSQLComponent;
import org.openconcerto.erp.core.common.element.ComptaSQLConfElement;
import org.openconcerto.erp.core.common.element.NumerotationAutoSQLElement;
import org.openconcerto.erp.panel.PanelOOSQLComponent;
import org.openconcerto.sql.Configuration;
import org.openconcerto.sql.element.ElementSQLObject;
import org.openconcerto.sql.element.SQLElement;
import org.openconcerto.sql.model.SQLBackgroundTableCache;
import org.openconcerto.sql.model.SQLRow;
import org.openconcerto.sql.model.SQLRowAccessor;
import org.openconcerto.sql.model.SQLRowValues;
import org.openconcerto.sql.model.SQLTable;
import org.openconcerto.sql.sqlobject.ElementComboBox;
import org.openconcerto.sql.sqlobject.JUniqueTextField;
import org.openconcerto.sql.ui.RadioButtons;
import org.openconcerto.sql.users.UserManager;
import org.openconcerto.sql.view.EditFrame;
import org.openconcerto.sql.view.list.RowValuesTable;
import org.openconcerto.ui.DefaultGridBagConstraints;
import org.openconcerto.ui.FormLayouter;
import org.openconcerto.ui.JDate;
import org.openconcerto.ui.TitledSeparator;
import org.openconcerto.ui.VFlowLayout;
import org.openconcerto.ui.component.ITextArea;
import org.openconcerto.ui.component.InteractionMode;
import org.openconcerto.utils.ExceptionHandler;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.sql.SQLException;
import java.util.List;
import javax.swing.BorderFactory;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.SwingConstants;
import javax.swing.SwingUtilities;
public class DemandePrixSQLComponent extends TransfertBaseSQLComponent {
JUniqueTextField field = new JUniqueTextField();
DemandePrixItemTable table = new DemandePrixItemTable();
PanelOOSQLComponent panelOO;
private ElementSQLObject componentPrincipaleAdr;
public DemandePrixSQLComponent(SQLElement elt) {
super(elt);
}
@Override
protected void addViews() {
GridBagConstraints c = new DefaultGridBagConstraints();
setLayout(new GridBagLayout());
// Champ Module
c.gridx = 0;
c.gridy++;
c.gridwidth = GridBagConstraints.REMAINDER;
final JPanel addP = ComptaSQLConfElement.createAdditionalPanel();
this.setAdditionalFieldsPanel(new FormLayouter(addP, 2));
this.add(addP, c);
// c.gridy++;
// c.gridx = 0;
// c.weightx = 0;
// this.add(new JLabel(getLabelFor("ID_COMMANDE_PREV"), SwingConstants.RIGHT), c);
// c.gridx++;
// c.weightx = 1;
// final ElementComboBox boxCmd = new ElementComboBox();
// this.add(boxCmd, c);
// this.addView(boxCmd, "ID_COMMANDE_PREV");
c.gridy++;
c.gridwidth = 1;
c.gridx = 0;
c.weightx = 0;
this.add(new JLabel(getLabelFor("NUMERO"), SwingConstants.RIGHT), c);
c.gridx++;
c.weightx = 1;
this.add(field, c);
this.addView(field, "NUMERO", REQ);
c.gridx++;
c.weightx = 0;
this.add(new JLabel(getLabelFor("DATE"), SwingConstants.RIGHT), c);
c.gridx++;
c.weightx = 1;
JDate date = new JDate(true);
this.add(date, c);
this.addView(date, "DATE", REQ);
c.gridx = 0;
c.gridy++;
c.weightx = 0;
this.add(new JLabel(getLabelFor("ID_FOURNISSEUR"), SwingConstants.RIGHT), c);
c.gridx++;
c.weightx = 1;
final ElementComboBox boxFournisseur = new ElementComboBox();
this.add(boxFournisseur, c);
this.addView(boxFournisseur, "ID_FOURNISSEUR", REQ);
c.gridx++;
c.weightx = 0;
this.add(new JLabel(getLabelFor("DATE_BUTOIRE"), SwingConstants.RIGHT), c);
c.gridx++;
c.weightx = 1;
JDate dateButoire = new JDate(false);
this.add(dateButoire, c);
this.addView(dateButoire, "DATE_BUTOIRE");
//
// c.gridx++;
// c.weightx = 0;
// this.add(new JLabel(getLabelFor("DATE_DISPOSITION"), SwingConstants.RIGHT), c);
// c.gridx++;
// c.weightx = 1;
// final JDate dateDisposition = new JDate();
// this.add(dateDisposition, c);
// this.addView(dateDisposition, "DATE_DISPOSITION", REQ);
// c.gridx = 0;
// c.gridy++;
// c.weightx = 0;
// this.add(new JLabel(getLabelFor("ID_CONTACT_FOURNISSEUR"), SwingConstants.RIGHT), c);
// c.gridx++;
// c.weightx = 1;
// final ElementComboBox boxContactFournisseur = new ElementComboBox();
// this.add(boxContactFournisseur, c);
// final SQLElement contactElement =
// Configuration.getInstance().getDirectory().getElement("CONTACT_FOURNISSEUR");
// boxContactFournisseur.init(contactElement, contactElement.getComboRequest(true));
// this.addView(boxContactFournisseur, "ID_CONTACT_FOURNISSEUR", REQ);
//
// boxFournisseur.addModelListener("wantedID", new PropertyChangeListener() {
//
// @Override
// public void propertyChange(PropertyChangeEvent arg0) {
//
// SQLRow selectedRow =
// boxFournisseur.getRequest().getPrimaryTable().getRow(boxFournisseur.getWantedID());
// if (selectedRow != null) {
// boxContactFournisseur.getRequest().setWhere(new
// Where(contactElement.getTable().getField("ID_FOURNISSEUR"), "=", selectedRow.getID()));
// } else {
// boxContactFournisseur.getRequest().setWhere(null);
// }
// }
// });
// this.addView("ID_ADRESSE");
// Etat devis
// c.gridx = 0;
// c.gridy++;
//
// this.add(new JLabel(getLabelFor("ID_COMMERCIAL")), c);
// c.gridx++;
// ElementComboBox boxComm = new ElementComboBox();
// this.add(boxComm, c);
// this.addView(boxComm, "ID_COMMERCIAL");
// SQLRequestComboBox boxEtat = new SQLRequestComboBox();
// c.weightx = 0;
// this.add(new JLabel(getLabelFor("ID_ETAT_DEMANDE_PRIX")), c);
// c.gridx++;
// c.weightx = 1;
// this.add(boxEtat, c);
// this.addView(boxEtat, "ID_ETAT_DEMANDE_PRIX");
c.gridx = 0;
c.gridy++;
c.weightx = 0;
this.add(new JLabel(getLabelFor("ID_COMMERCIAL"), SwingConstants.RIGHT), c);
c.gridx++;
c.weightx = 1;
final ElementComboBox boxCom = new ElementComboBox();
this.add(boxCom, c);
this.addView(boxCom, "ID_COMMERCIAL", REQ);
c.weightx = 0;
c.gridheight = 1;
c.gridx = 0;
c.gridy++;
c.anchor = GridBagConstraints.WEST;
c.weightx = 0;
JLabel labelObjet = new JLabel(getLabelFor("OBJET"), SwingConstants.RIGHT);
this.add(labelObjet, c);
c.gridx++;
ITextArea area = new ITextArea();
c.weightx = 1;
this.add(area, c);
this.addView(area, "OBJET");
RadioButtons radioEtat = new RadioButtons("NOM");
radioEtat.setLayout(new VFlowLayout());
radioEtat.setBorder(BorderFactory.createTitledBorder(getLabelFor("ID_ETAT_DEMANDE_PRIX")));
c.gridx = 3;
c.gridheight = 5;
c.anchor = GridBagConstraints.NORTHWEST;
this.add(radioEtat, c);
this.addView(radioEtat, "ID_ETAT_DEMANDE_PRIX", REQ);
// c.gridx = 0;
// c.gridy++;
// c.gridwidth = 2;
// c.weightx = 1;
// this.add(new TitledSeparator("Adresse de destination"), c);
// c.gridy++;
// c.weightx = 0;
// final JCheckBox boxLivr = new JCheckBox("Livré par le fournisseur");
// this.add(boxLivr, c);
// this.addView(boxLivr, "LIVRAISON_F");
// c.gridy++;
// final ElementComboBox boxAdr = new ElementComboBox();
// final SQLElement adrElement = getElement().getForeignElement("ID_ADRESSE");
// boxAdr.init(adrElement);
// c.gridwidth = 1;
// final JLabel labelAdrLiv = new JLabel("Adresse de livraison existante");
// this.add(labelAdrLiv, c);
// c.gridx++;
// c.gridwidth = 2;
// this.add(boxAdr, c);
// c.gridy++;
// c.gridx = 0;
// this.addView("ID_ADRESSE");
// final DefaultElementSQLObject comp = (DefaultElementSQLObject)
// this.getView("ID_ADRESSE").getComp();
// componentPrincipaleAdr = (ElementSQLObject) this.getView("ID_ADRESSE");
// this.add(comp, c);
// boxLivr.addActionListener(new ActionListener() {
//
// @Override
// public void actionPerformed(ActionEvent e) {
// if (boxLivr.isSelected() && !comp.isCreated()) {
// comp.setCreated(true);
// componentPrincipaleAdr.setEditable(InteractionMode.READ_WRITE);
// final SQLRow selectedRow2 = boxAffaire.getSelectedRow();
// if (selectedRow2 != null) {
// SQLRowValues rowVals = getLivraisonAdr(selectedRow2.asRow());
// rowVals.put("RUE", "");
// comp.setValue(rowVals);
// }
// } else {
// if (!boxLivr.isSelected()) {
// comp.setCreated(false);
// componentPrincipaleAdr.setEditable(InteractionMode.DISABLED);
// }
// }
//
// }
// });
// comp.addValueListener(new PropertyChangeListener() {
//
// @Override
// public void propertyChange(PropertyChangeEvent evt) {
// boxAdr.setVisible(comp.isCreated());
// labelAdrLiv.setVisible(comp.isCreated());
// }
// });
// boxAffaire.addModelListener("wantedID", new PropertyChangeListener() {
// SQLTable tableAdr = getTable().getTable("ADRESSE");
//
// @Override
// public void propertyChange(PropertyChangeEvent evt) {
//
// SQLRow selectedRow =
// boxAffaire.getRequest().getPrimaryTable().getRow(boxAffaire.getWantedID());
// boxCmd.getRequest().setWhere(Where.FALSE);
// if (selectedRow != null && !selectedRow.isUndefined()) {
//
// SQLRow client = selectedRow.getForeign("ID_CLIENT");
//
// boxAdr.getRequest().setWhere(((AffaireSQLElement)
// boxAffaire.getElement()).getWhereAdrL(client));
// boxCmd.getRequest().setWhere(new
// Where(getTable().getForeignTable("ID_COMMANDE_PREV").getField("ID_AFFAIRE"), "=",
// selectedRow.getID()));
//
// }
// }
// });
// boxAdr.addValueListener(new PropertyChangeListener() {
//
// @Override
// public void propertyChange(PropertyChangeEvent evt) {
// final SQLRow selectedRow = boxAdr.getSelectedRow().asRow();
// if (selectedRow != null && !selectedRow.isUndefined()) {
// SQLRowValues rowVals = selectedRow.asRowValues();
// rowVals.clearPrimaryKeys();
// rowVals.put("RUE", "");
// comp.setValue(rowVals);
// }
// }
// });
// boxAdr.setVisible(false);
// labelAdrLiv.setVisible(false);
c.gridwidth = GridBagConstraints.REMAINDER;
c.gridheight = 1;
c.gridy += 6;
c.gridx = 0;
c.weightx = 1;
c.weighty = 1;
c.fill = GridBagConstraints.BOTH;
this.add(this.table, c);
// boxFournisseur.addValueListener(new PropertyChangeListener() {
//
// @Override
// public void propertyChange(PropertyChangeEvent evt) {
// // TODO Raccord de méthode auto-généré
// table.setFournisseurFilterOnCompletion(boxFournisseur.getSelectedRow().asRow());
// if (boxFournisseur.getSelectedRow().asRow() != null &&
// !boxFournisseur.getSelectedRow().asRow().isUndefined()) {
// SQLRow rowFam =
// boxFournisseur.getSelectedRow().asRow().getForeignRow("ID_FAMILLE_ARTICLE");
// if (rowFam != null && !rowFam.isUndefined()) {
// table.getRowValuesTable().getRowValuesTableModel().getDefaultRowValues().put("ID_FAMILLE_ARTICLE",
// rowFam.getID());
// } else {
// table.getRowValuesTable().getRowValuesTableModel().getDefaultRowValues().putEmptyLink("ID_FAMILLE_ARTICLE");
// }
// } else {
// table.getRowValuesTable().getRowValuesTableModel().getDefaultRowValues().putEmptyLink("ID_FAMILLE_ARTICLE");
// }
// }
// });
// INfos
c.gridx = 0;
c.gridy++;
c.gridheight = 1;
c.weighty = 0;
c.weightx = 1;
c.anchor = GridBagConstraints.WEST;
c.gridwidth = 3;
c.fill = GridBagConstraints.HORIZONTAL;
this.add(new TitledSeparator(getLabelFor("INFOS")), c);
c.gridy++;
c.weightx = 1;
c.weighty = 1;
c.fill = GridBagConstraints.BOTH;
JTextArea infos = new ITextArea();
final JScrollPane scrollPane = new JScrollPane(infos);
scrollPane.setBorder(null);
this.add(scrollPane, c);
// Total
// DeviseField fieldHT = new DeviseField();
// DeviseField fieldTVA = new DeviseField();
// DeviseField fieldTTC = new DeviseField();
// fieldHT.setOpaque(false);
// fieldTVA.setOpaque(false);
// fieldTTC.setOpaque(false);
//
// addRequiredSQLObject(fieldHT, "T_HT");
// addRequiredSQLObject(fieldTVA, "T_TVA");
// addRequiredSQLObject(fieldTTC, "T_TTC");
// JTextField poids = new JTextField();
// // addSQLObject(poids, "T_POIDS");
// final TotalPanel totalTTC = new TotalPanel(this.table.getRowValuesTable(),
// this.table.getPrixTotalHTElement(), this.table.getPrixTotalTTCElement(),
// this.table.getHaElement(),
// this.table.getQteElement(), fieldHT, fieldTVA, fieldTTC, new DeviseField(), new
// DeviseField(), new DeviseField(), this.table.getPrixServiceElement(), new DeviseField(),
// this.table.getTableElementTotalDevise(), poids, this.table.getPoidsTotalElement());
//
// c.gridx = GridBagConstraints.RELATIVE;
// c.gridy--;
// c.gridwidth = GridBagConstraints.REMAINDER;
// c.gridheight = 2;
// c.anchor = GridBagConstraints.NORTHEAST;
// c.fill = GridBagConstraints.NONE;
// c.weighty = 0;
//
// this.add(totalTTC, c);
addSQLObject(infos, "INFOS");
this.panelOO = new PanelOOSQLComponent(this);
c.gridwidth = 1;
c.fill = GridBagConstraints.HORIZONTAL;
c.anchor = GridBagConstraints.SOUTHEAST;
// c.gridx = 0;
c.gridx += 3;
c.weightx = 0;
c.fill = GridBagConstraints.NONE;
c.gridwidth = GridBagConstraints.REMAINDER;
this.add(this.panelOO, c);
// this.addView("PRIX");
// boxAffaire.addValueListener(new PropertyChangeListener() {
//
// @Override
// public void propertyChange(PropertyChangeEvent evt) {
// SQLRow selectedRow = boxAffaire.getSelectedRow().asRow();
// if (!isFilling() && selectedRow != null && !selectedRow.isUndefined()) {
// Calendar date = selectedRow.getDate("DATE_LIVRAISON_EFFECTIVE");
// if (date != null) {
//
// dateDisposition.setValue(date.getTime());
// }
// }
// }
// });
}
private SQLRowValues getLivraisonAdr(SQLRow rowAffaire) {
if (rowAffaire != null) {
SQLRow rowClient = rowAffaire.getForeignRow("ID_CLIENT");
SQLRow rowAdrL = rowClient.getForeignRow("ID_ADRESSE_L");
if (rowAdrL == null || rowAdrL.isUndefined()) {
rowAdrL = rowClient.getForeignRow("ID_ADRESSE");
}
SQLRowValues rowVals = rowAdrL.asRowValues();
rowVals.clearPrimaryKeys();
return rowVals;
} else {
return new SQLRowValues(getTable().getTable("ADRESSE"));
}
}
@Override
public void select(SQLRowAccessor r) {
// TODO Raccord de méthode auto-généré
if (getTable().contains("LIVRAISON_F") && componentPrincipaleAdr != null) {
final boolean bLivraison = r != null && r.getFields().contains("ID_ADRESSE") && !r.isForeignEmpty("ID_ADRESSE");
componentPrincipaleAdr.setEditable(bLivraison ? InteractionMode.READ_WRITE : InteractionMode.DISABLED);
}
if (r != null) {
// final SQLRowValues rVals = r.asRowValues().deepCopy();
// final SQLRowValues vals = new SQLRowValues(r.getTable());
// vals.load(rVals, CollectionUtils.createSet("ID_AFFAIRE"));
// // vals a besoin de l'ID sinon incohérence entre ID_AFFAIRE et ID (eg for
// // reloadTable())
// // ne pas supprimer l'ID de rVals pour qu'on puisse UPDATE
// vals.setID(rVals.getID());
// super.select(vals);
// rVals.remove("ID_AFFAIRE");
// super.select(rVals);
super.select(r);
this.field.setIdSelected(r.getID());
this.table.insertFrom("ID_DEMANDE_PRIX", r.getID());
} else {
super.select(r);
}
}
@Override
public int insert(SQLRow order) {
int idCommande = getSelectedID();
// on verifie qu'un devis du meme numero n'a pas été inséré entre temps
if (this.field.checkValidation()) {
idCommande = super.insert(order);
// this.table.updateField("ID_COMMANDE_CLIENT", idCommande);
this.table.updateField("ID_DEMANDE_PRIX", idCommande);
// Création des articles
// this.table.createArticle(idCommande, this.getElement());
// generation du document
final SQLRow row = getTable().getRow(idCommande);
DemandePrixSheetXML sheet = new DemandePrixSheetXML(row);
sheet.createDocumentAsynchronous();
sheet.showPrintAndExportAsynchronous(true, false, true, getElement(), row);
// incrémentation du numéro auto
if (NumerotationAutoSQLElement.getNextNumero(DemandePrixSQLElement.class).equalsIgnoreCase(this.field.getText().trim())) {
SQLTable tableNum = Configuration.getInstance().getRoot().findTable("NUMEROTATION_AUTO");
SQLRowValues rowVals = new SQLRowValues(tableNum);
int val = tableNum.getRow(2).getInt("DMD_PRIX_START");
val++;
rowVals.put("DMD_PRIX_START", new Integer(val));
try {
rowVals.update(2);
} catch (SQLException e) {
e.printStackTrace();
}
}
DemandeAchatItemSQLElement elt = getElement().getDirectory().getElement(DemandeAchatItemSQLElement.class);
elt.updateStatus(getTable(), getTable().getTable("DEMANDE_PRIX_ELEMENT"), idCommande);
} else {
ExceptionHandler.handle("Impossible d'ajouter, numéro de demande existant.");
Object root = SwingUtilities.getRoot(this);
if (root instanceof EditFrame) {
EditFrame frame = (EditFrame) root;
frame.getPanel().setAlwaysVisible(true);
}
}
return idCommande;
}
@Override
public void update() {
if (!this.field.checkValidation()) {
ExceptionHandler.handle("Impossible d'ajouter, numéro de demande existant.");
Object root = SwingUtilities.getRoot(this);
if (root instanceof EditFrame) {
EditFrame frame = (EditFrame) root;
frame.getPanel().setAlwaysVisible(true);
}
return;
}
super.update();
// this.table.updateField("ID_COMMANDE_CLIENT", getSelectedID());
// this.table.createArticle(getSelectedID(), this.getElement());
this.table.updateField("ID_DEMANDE_PRIX", getSelectedID());
DemandeAchatItemSQLElement elt = getElement().getDirectory().getElement(DemandeAchatItemSQLElement.class);
elt.updateStatus(getTable(), getTable().getTable("DEMANDE_PRIX_ELEMENT"), getSelectedID());
final SQLRow row = getTable().getRow(getSelectedID());
DemandePrixSheetXML sheet = new DemandePrixSheetXML(row);
sheet.createDocumentAsynchronous();
sheet.showPrintAndExportAsynchronous(true, false, true, getElement(), row);
}
@Override
protected SQLRowValues createDefaults() {
SQLRowValues rowVals = new SQLRowValues(getTable());
rowVals.put("NUMERO", NumerotationAutoSQLElement.getNextNumero(DemandePrixSQLElement.class));
SQLElement eltComm = getElement().getForeignElement("ID_COMMERCIAL");
int idUser = UserManager.getInstance().getCurrentUserID();
SQLRow rowsComm = SQLBackgroundTableCache.getInstance().getCacheForTable(eltComm.getTable()).getFirstRowContains(idUser, eltComm.getTable().getField("ID_USER_COMMON"));
if (rowsComm != null) {
rowVals.put("ID_COMMERCIAL", rowsComm.getID());
}
if (getTable().getUndefinedID() == SQLRow.NONEXISTANT_ID) {
rowVals.put("ID_ETAT_DEMANDE_PRIX", EtatDemandePrixSQLElement.EN_ATTENTE);
} else {
SQLRow rowUndef = getTable().getRow(getTable().getUndefinedID());
SQLRow foreign = rowUndef.getForeign("ID_ETAT_DEMANDE_PRIX");
if (foreign != null && !foreign.isUndefined()) {
rowVals.put("ID_ETAT_DEMANDE_PRIX", foreign.getID());
} else {
rowVals.put("ID_ETAT_DEMANDE_PRIX", EtatDemandePrixSQLElement.EN_ATTENTE);
}
}
if (getTable().contains("LIVRAISON_F") && componentPrincipaleAdr != null) {
componentPrincipaleAdr.setEditable(InteractionMode.DISABLED);
}
return rowVals;
}
/**
* Création d'une demande à partir d'une demande existante
*
* @param idDemande
*
*/
public void loadDemandeExistant(final int idDemande) {
final SQLElement demande = Configuration.getInstance().getDirectory().getElement("DEMANDE_PRIX");
final SQLElement demandeElt = Configuration.getInstance().getDirectory().getElement("DEMANDE_PRIX_ELEMENT");
// On duplique la demande
if (idDemande > 1) {
final SQLRow row = demande.getTable().getRow(idDemande);
final SQLRowValues rowVals = new SQLRowValues(demande.getTable());
rowVals.put("ID_AFFAIRE", row.getInt("ID_AFFAIRE"));
// rowVals.put("DATE_BUTOIRE", row.getObject("DATE_BUTOIRE"));
// rowVals.put("DATE_DISPOSITION", row.getObject("DATE_DISPOSITION"));
rowVals.put("NUMERO", NumerotationAutoSQLElement.getNextNumero(DemandePrixSQLElement.class));
rowVals.put("ID_ETAT_DEMANDE_PRIX", EtatDemandePrixSQLElement.EN_ATTENTE);
rowVals.put("OBJET", row.getObject("OBJET"));
rowVals.put("ID_COMMERCIAL", row.getObject("ID_COMMERCIAL"));
this.select(rowVals);
}
// On duplique les elements de devis
final List<SQLRow> myListItem = demande.getTable().getRow(idDemande).getReferentRows(demandeElt.getTable());
if (myListItem.size() != 0) {
this.table.getModel().clearRows();
for (final SQLRow rowElt : myListItem) {
final SQLRowValues rowVals = rowElt.createUpdateRow();
rowVals.clearPrimaryKeys();
this.table.getModel().addRow(rowVals);
final int rowIndex = this.table.getModel().getRowCount() - 1;
this.table.getModel().fireTableModelModified(rowIndex);
}
} else {
this.table.getModel().clearRows();
}
this.table.getModel().fireTableDataChanged();
this.table.repaint();
}
@Override
protected RowValuesTable getRowValuesTable() {
return this.table.getRowValuesTable();
}
@Override
protected void refreshAfterSelect(SQLRowAccessor rSource) {
// TODO Auto-generated method stub
}
}