1

Using ArcCatalog, I created a relationship with the following parameters:

  • Origin Table: Owner // a table
  • Destination Table: Parcel // a feature class
  • Relationship Type: Composite
  • Message Direction: Forward
  • Cardinality: One_To_Many
  • Origin Primary Key: ObjectId
  • Origin Foreign Key: OwnerId (Parcel has OwnerId field of type Long)

Now In ArcMap, when trying to edit the Parcel layer, I supposed -for the OwnerId field- to find a drop-down list of values from Owner table. but I found a normal text box that I can edit with any number, not just those numbers of 'Owner.ObjectId's.

  1. How to populate Owner.ObjectId values as drop-down list to choose from it while editing Parcel.OwnerId field?
  2. How to prevent entries that not exist in Owner.ObjectId values?
1

Arcmap is not supposed to work with relationship classes like that. Suppose an Owner table with 1000 of records. Showing this number in a combobox isn't feasible.

To relate parcels to an owner, first select the parcels in the map. then select the owner with select by attribute. right click each parcel and then click "Add selected" button.

To answer your both questions see the following snapshot:

enter image description here

  • Thanks @Farid, but what about my second question, arcmap allows any number in Parcel.OwnerID even if it's not exist in Owner.ObjectID. – Angie Feb 7 '15 at 15:32
  • ArcMap treats relationship fields (Parcel.OwnerID) like any other field. No constraint applies to such fields. you should write your own code (e.g. Arcobjects) to restrict user input for such fields. – Farid Cheraghi Feb 7 '15 at 16:04
  • Lio, if you think this the correct answer please mark is as the answer. gis.stackexchange.com/tour – Farid Cheraghi Feb 9 '15 at 11:07

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.