Integer n = (Integer)itemGroupsIter.next();
container.getPropertyPane().setIconAt(n, null);
}
itemGroupsIter = container.getItemGroups().iterator();
while (componentExtIter.hasNext()) {
ComponentExt componentExt = (ComponentExt)componentExtIter.next();
Integer n = (Integer)itemGroupsIter.next();
JLabel alertLabel = (JLabel)alertLabelIter.next();
JComponent component = componentExt.getComponent();
Column column = componentExt.getColumn();
if (column.isMandatory()) {
if ( (ComponentManager.getValue(component) == null) || (ComponentManager.getValue(component).toString().trim().equals("")) ) {
alertLabel.setVisible(true);
alertLabel.setIcon(ImageManager.getImage(ImageManager.EXCLAMATION_IMAGE));
if (column.isPrimaryKey()) {
alertLabel.setText(TxtManager.getTxt("VALIDATE.PRIMARYKEYISMUST"));
} else {
alertLabel.setText(TxtManager.getTxt("VALIDATE.NULLVALUE"));
}
container.getPropertyPane().setIconAt(n, ImageManager.getImage(ImageManager.ERROR_IMAGE));
result = false;
} else {
if (column.isPrimaryKey()) {
alertLabel.setIcon(ImageManager.getImage(ImageManager.HELP_IMAGE));
alertLabel.setText("");
} else {
alertLabel.setVisible(false);
}
}
}
}
//second,validate insert or edit execute
if (result) {
setItemCellValue(container.getSelectedRow());
Row row = container.getSelectedRow();
if (row.isAdd()) {
result = container.getObject().classInsert_Child(row, true);
if (result) {
Iterator rowIter = container.getContainer().getCurrentRow().getRowSet().getRows().iterator();
while (rowIter.hasNext()) {
Row tempRow = (Row)rowIter.next();
if ( (row != tempRow) && (!tempRow.isDelete()) ) {
boolean flag = false;
Iterator cellIter = row.getNewCells().iterator();
Iterator tempCellIter = tempRow.getNewCells().iterator();
while (cellIter.hasNext()) {
Cell cell = (Cell)cellIter.next();
Cell tempCell = (Cell)tempCellIter.next();
Column column = findColumn(container.getObject(), cell.getTableName(), cell.getColumnName());
if ( (column.isPrimaryKey()) && (column.getTableName().equals(container.getObject().getChildTableName())) ) {
if (!cell.getColumnValue().equals(tempCell.getColumnValue())) {
flag = true;
break;
}
}
}
result = flag;
if (!result)
break;
}
}
}
}
else if (row.isModify()) {
result = container.getObject().classUpdate_Child(row, true);
}
componentExtIter = container.getItemComponentExts().iterator();
alertLabelIter = container.getItemAlertLabels().iterator();
itemGroupsIter = container.getItemGroups().iterator();
while (componentExtIter.hasNext()) {
Integer n = (Integer)itemGroupsIter.next();
ComponentExt componentExt = (ComponentExt)componentExtIter.next();
JLabel alertLabel = (JLabel)alertLabelIter.next();
Column column = componentExt.getColumn();
if (column.isPrimaryKey()) {
if (!result) {
alertLabel.setIcon(ImageManager.getImage(ImageManager.EXCLAMATION_IMAGE));
alertLabel.setText(TxtManager.getTxt("VALIDATE.PRIMARYKEYCONFLICT"));
container.getPropertyPane().setIconAt(n, ImageManager.getImage(ImageManager.ERROR_IMAGE));