Beispiel #1
0
  void updateDs(DSDataSourceProxy out) throws DataStoreException, java.sql.SQLException, Exception {
    int rowNo = -1;
    DataStoreRow row = new DataStoreRow(this, null, _desc);

    // do deletes
    for (rowNo = 0; rowNo < _deletedRows.size(); rowNo++) {
      row.setDSDataRow((DSDataRow) _deletedRows.elementAt(rowNo));
      ((DSDataRow) _deletedRows.elementAt(rowNo)).setProxyRow(rowNo);
      if (!out.deleteRow(this, row)) throw new Exception("$Delete$");
    }

    // do the updates
    for (rowNo = 0; rowNo < _rows.size(); rowNo++) {
      row.setDSDataRow((DSDataRow) _rows.elementAt(rowNo));
      ((DSDataRow) _rows.elementAt(rowNo)).setProxyRow(rowNo);
      if (row.getDSDataRow().getRowStatus() == STATUS_MODIFIED) {
        if (!out.updateRow(this, row)) throw new Exception("$Update$");
      }
    }

    // do the inserts
    for (rowNo = 0; rowNo < _rows.size(); rowNo++) {
      row.setDSDataRow((DSDataRow) _rows.elementAt(rowNo));
      ((DSDataRow) _rows.elementAt(rowNo)).setProxyRow(rowNo);
      if (row.getDSDataRow().getRowStatus() == STATUS_NEW_MODIFIED) {
        if (!out.insertRow(this, row)) throw new Exception("$Insert$");
      }
    }
  }