might be worth checking this out - from the wonder blog :-) ERXEOControlUtilities. validateUniquenessOf provides a utility method for validating unique EO attribute values.
2009/3/25 Dan Grec <[email protected]>: > Full of questions today.... > I have an EO that has a field "RemoteSystemID" that must be unique in the > DB. > I have the constraint in the DB and that works well. > What I would like, is a way in EOF to detect non-uniqueness without going to > the db and relying on the SQL Exception. > Currently, I have something like this: > �...@override > public void validateForSave() throws NSValidation.ValidationException { > validateRemoteSystemId(); > super.validateForSave(); > } > //check that no Categories have this same remoteSystemID > public void validateRemoteSystemId() { > NSArray<Category> categories = > SCEOFetcher.objectsMatchingKeyAndValue(editingContext(), Category.class, > _Category.REMOTE_SYSTEM_ID_KEY, remoteSystemId(), EOFetcher.DBEC); > if (categories.count() > 1) > throw new NSValidation.ValidationException("Category Remote System > Id must be unique.", this, REMOTE_SYSTEM_ID_KEY); > } > This works really well if there is already one in the DB with a value of say > "123" and I try to add with with a value of "123". > This does not work if I try to add two at the same time with a value of > "567", it allows them both through. > Does anyone have a strategy to catch uniqueness at the EOF level? > Or, is it fine to just rely on the DB throwing an SQLException and catch > that after ec().saveChanges() ? > (I feel like letting that happen is bad, and might leave EOF in an un-happy > state - is there any chance of that?) > Thanks again, > -Dan Grec > _______________________________________________ > Do not post admin requests to the list. They will be ignored. > Webobjects-dev mailing list ([email protected]) > Help/Unsubscribe/Update your Subscription: > http://lists.apple.com/mailman/options/webobjects-dev/simon%40potwells.co.uk > > This email sent to [email protected] > _______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list ([email protected]) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com This email sent to [email protected]
