Forum Discussion

AndrewFry's avatar
AndrewFry
Qrew Assistant Captain
5 years ago

Best Practice - Related field vs Actual field

Looking for some input/recommendations/suggestions on what would be considered "best practice" for the following scenario.

I have a Clients table and it is related to the Contacts table as follows:
Client < Contacts

When I input a new Contact via the contact form, there are two fields I can have in the Contact form from the Clients table to represent the Client Name. However, I am not sure which field I should use as best practice. The fields are:
  • Related Client
  • Client Name
When looking at the fields within the Contacts  table, the Related Client is a numeric type, while Client Name is a text type.

If I understand this all correctly, the Related Client is a reference back to the Record ID# in the Client Table; whereas the Client Name is a Lookup Field where the Reference field is the Related Client and the value presented is the Client Name.

However, I have noticed that I can change the Default Record picker values for the Clients table such that the Related Client shows the Client Name, rather than a numeric value.

So which is best practice? I would think that I should use the Client Name rather than the Related Client, but is there a Good vs Best way of doing this?

Again, just looking for some clarification on best practice. Thanks!

------------------------------
Andrew
andrew.fry25@gmail.com
------------------------------
  • np,
    Proxy Fields to the rescue.

    There is absolutely a best practice here in fact it is such a best practice it is actually the only practice. The magic here is to look at the relationship and you will see that you anchor the relationship on the right side of the Relationship is [Related Client].

    That is a number and it is a meaningless number to users so what do you want on the form is someone to represent that related client field but it's a little better dressed and better looking. So you edit the field properties of related client and you select a proxy field of Client Name. 

    Then what you do is you always use client name on your reports and on any forms and the magic is that when you edit a form there is a Jekyll and Hyde behaviour of that Proxy field and when you are in edit mode on the form it will behave as [related client] but still will disguise that number from ever being made visible to your users.  In fact if you were in edit mode on the form and you right click on the field name for client name, you will see that in fact in edit mode it is actually related client. But it never reveals that to the user.

    ------------------------------
    Mark Shnier (YQC)
    Quick Base Solution Provider
    Your Quick Base Coach
    http://QuickBaseCoach.com
    mark.shnier@gmail.com
    ------------------------------
    • AndrewFry's avatar
      AndrewFry
      Qrew Assistant Captain
      Fantastic! Thanks a ton Mark. I had in fact already noticed that in Edit mode, the Related Client is present, but masked as the Client Name.

      I guess that is what was throwing me off as in some modes it was Client Name, but in other (e.g. Edit), it was Related Client.

      Your explanation makes sense. Thanks for the clarification.

      ------------------------------
      Andrew
      andrew.fry25@gmail.com
      ------------------------------
  • We typically leave the related field alone and remove it from all reports, forms etc. The Related comes in handy when you want to start changing its value and see the text in the [Contact Name] field change. The benefits of this are that you can style the Name field. Or you can make it read only. Or other features that do not affect the related field.
    If the related field gets corralled, the relationship suffers. So best practice is to leave the related field alone and remove it from User view.

    Also uncheck the add everything to the form and add everything to the report. Then when you add a field for testing or something, your Users don't start asking why there is a field named test on their Default Report or on the main form.

    ------------------------------
    Jim Harrison
    ------------------------------
    • AndrewFry's avatar
      AndrewFry
      Qrew Assistant Captain
      So that is what best practice would be then: removing it from all report, forms, etc., and using the Proxy Field (i.e. Client Name) in those reports, forms, etc, correct?

      I had noticed that every new field gets added to the forms/reports and it is annoying and a hassle to remove them all. Great tip!! Thanks Jim!

      ------------------------------
      Andrew
      andrew.fry25@gmail.com
      ------------------------------
      • MarkShnier__You's avatar
        MarkShnier__You
        Icon for Qrew Legend rankQrew Legend
        Yes you will only use client name and all your reports and all your forms now that you have correctly set the proxy field. Once your form stabilizers then go into the form properties and set fiancé not to automatically be added to the bottom of the form. Also go into your default report setting and similarly click the button not to automatically add fields to the report.

        Can you set the report settings by going into settings then reports then way up at the top right there is a link to set defaults.

        ------------------------------
        Mark Shnier (YQC)
        Quick Base Solution Provider
        Your Quick Base Coach
        http://QuickBaseCoach.com
        mark.shnier@gmail.com
        ------------------------------