1 Reply Latest reply on Dec 16, 2010 10:18 AM by philmodjunk

    Setting-up self-join



      Setting-up self-join



      I am attempting to set-up a self-join, and it's a little over my head. Sorry if this is a repetitive post, I didn't ask the first question in the right way to get an answer I could understand and apply. Thank you in advance for any help you can give!

      I am designing a database for a non-profit organization that wants to track people who sign up for memberships, classes and to buy materials.

      The problem I am having is with tracking yearly memberships. Individuals, Organizations, and Families can all buy memberships. I would like for all memberships to be a record within the People table, regardless of if they are an organization, an individual, or a family. As well as buying an individual membership, Individuals can gain "member status" for a year through an organization;s active membership.

      The vision I have is of setting a "Record Type" that is validated by a value list of "Individual, Organization, or Family." If an individual is entered and record type is "Individual", nothing will happen. If an Organization is added and record type is "Organization," I would like to do a self-join so the organization records are available to be linked to future individuals that are entered and want to be counted as part of the membership. That way, the individual's membership status will be dependent on that of their organization's. I envision that family memberships could work the same way. Is this possible? I am very confused by the self-join feature and how it works.

      I am a filemaker noobie, so if you could provide a step-by-stepped dumbed down answer I would appreciate it!!!! I am especially confused as to what specific fields I need in the self-join to make this happen.

      Thank you!



        • 1. Re: Setting-up self-join

          Wouldn't it make more sense to add a "membership" table?

          Individuals would link to individual membership records. Families and Groups would link to a common membership record for their group.

          A "membership type" field in the people table could then be used, to insure that individual memberships are truly individual if you find that you need to.

          Count ( membership::MembershipID ) defined in the People table would return 1 for individual memberships and more than 1 for group memberships.