for (DBConstraint constraint : column.getConstraints()) {
if (constraint.isForeignKey()) {
DBConstraint foreignKeyConstraint = constraint.getForeignKeyConstraint();
if (foreignKeyConstraint != null) {
DBDataset foreignKeyDataset = foreignKeyConstraint.getDataset();
DatasetFilterInput filterInput = new DatasetFilterInput(foreignKeyDataset);
for (DBColumn constraintColumn : constraint.getColumns()) {
DBObject constraintCol = constraintColumn.getUndisposedElement();
if (constraintCol != null) {
DBColumn foreignKeyColumn = ((DBColumn) constraintCol).getForeignKeyColumn();
Object value = record.getColumnValue(column);
filterInput.setColumnValue(foreignKeyColumn, value);
}
}
return filterInput;
}
}