public void refrescaPartes() throws SQLException, DataStoreException { // setea y recupera los partes en estado generados _dsPartes.reset(); _dsPartes.retrieve("partes_mo.estado = \"0003.0001\""); // si no recuperó ningún parte en estado generado, inserta al menos un registro _dsPartes.waitForRetrieve(); if (_dsPartes.getRowCount() == 0) { int row = _dsPartes.insertRow(); java.sql.Date hoy = new java.sql.Date(System.currentTimeMillis() - (1000 * 60 * 60 * 24)); _dsPartes.setPartesMoFecha(row, hoy); _fechaTE3.setFocus(row, true); } }
@Override public boolean submitPerformed(SubmitEvent e) throws Exception { if (e.getComponent() == _grabarParteBUT3) { try { _dsPartes.update(); } catch (DataStoreException ex) { displayErrorMessage(ex.getMessage()); return false; } } if (e.getComponent() == _nuevoParteCopiarBUT1 || e.getComponent() == _nuevoBUT91) { int rowActual = _dsPartes.getRow(); // si existe row anterior, le copia los valores if (rowActual != -1) { // valido el parte que estoy copiando try { _dsPartes.completaUnParte(rowActual); } catch (DataStoreException ex) { // muestro mensaje pero sigo sin problemas displayErrorMessage(ex.getMessage()); _fechaTE3.setFocus(rowActual, true); return false; } int row = _dsPartes.insertRow(0); _dsPartes.setPartesMoFecha(row, _dsPartes.getPartesMoFecha(rowActual + 1)); _dsPartes.setPartesMoHoraDesde(row, _dsPartes.getPartesMoHoraDesde(rowActual + 1)); _dsPartes.setPartesMoHoraHasta(row, _dsPartes.getPartesMoHoraHasta(rowActual + 1)); _dsPartes.setPartesMoNroLegajo(row, _dsPartes.getPartesMoNroLegajo(rowActual + 1)); _dsPartes.setPartesMoProyecto(row, _dsPartes.getPartesMoProyecto(rowActual + 1)); _dsPartes.setPartesMoProyectoNombre( row, _dsPartes.getPartesMoProyectoNombre(rowActual + 1)); _dsPartes.setPartesMoSectorId(row, _dsPartes.getPartesMoSectorId(rowActual + 1)); _dsPartes.setPartesMoSupervisor(row, _dsPartes.getPartesMoSupervisor(rowActual + 1)); // hace foco en el registro int nroPagerow = _datatable1.getPage(row); int nroPageActual = _datatable1.getPage(_dsPartes.getRow()); if (nroPagerow != nroPageActual) _datatable1.setPage(_datatable1.getPage(row)); _fechaTE3.setFocus(row, true); } else { displayErrorMessage("Debe seleccionar un parte primero antes de copiarlo"); return false; } } if (e.getComponent() == _nuevoParteNuevoBUT2 || e.getComponent() == _nuevoBUT92) { int rowActual = _dsPartes.getRow(); int row = _dsPartes.insertRow(0); // si existe row anterior, s�lo copia valores b�sicos if (row > 1) { // valido el parte que estoy copiando _dsPartes.setPartesMoFecha(row, _dsPartes.getPartesMoFecha(rowActual + 1)); _dsPartes.setPartesMoProyectoId(row, _dsPartes.getPartesMoProyectoId(rowActual + 1)); } // hace foco en el registro int nroPagerow = _datatable1.getPage(row); int nroPageActual = _datatable1.getPage(_dsPartes.getRow()); if (nroPagerow != nroPageActual) _datatable1.setPage(_datatable1.getPage(row)); _fechaTE3.setFocus(row, true); } if (e.getComponent() == _eliminaParteBUT4) { // elimina todos los partes seleccionados for (int i = 0; i < _dsPartes.getRowCount(); i++) { if (_dsPartes.getInt(i, SELECCION_PARTE_FLAG) == 1) { // Rol marcado para selecci�n _dsPartes.deleteRow(i); } } _dsPartes.update(); refrescaPartes(); } if (e.getComponent() == _refrescarBUT5) { refrescaPartes(); } return super.submitPerformed(e); }