My first App having trouble with Type EMAIL

Hi Everyone, this is my first post, but before I get to my question, I want to say as a former IT Director what a great tool you have, but also as an Angular web developer, I wish I had more control over the user interface!

After learning from the sample apps, I decided to strike out on my own and create something. I decided on something familiar like an Address Book found in many email programs. I wanted to capture more than one email address per contact. Everything is progressing well, but I got hung up on some odd behavior of Email Address of type EMAIL.

In the Inline view, I see the clickable email icon. That’s great functionality, but I’d also like to see the Email Address text. My solution was to create a Virtual Column called Email Address Text of type TEXT that simply takes on the value of Email Address. I was able to get this to work to my satisfaction, but then I discovered problems elsewhere, particularly when I edit the Contact. Now the Inline view shows the Email Address as text, not as an icon. The result is that I see two columns for Email Address, both are text.

I’d like the Inline view to behave like this:

  1. Show the Email Address icon and text when viewing the Contact.
  2. Show only the Email Address text when editing the Contact.

I’m sure that this is a lot easier than I’m making it out to be. All help welcome!

Thank you,
Brian

Inline Actions buttons always overwrite the actual value and the column header inside of Table views (an “inline” view is also a Table view). I don’t personally care for that, which is why I have a feature request to change that:

What you did with the VC of Text type was a good option for getting the display how you want.

I take it that you have a main Contact record, then child records beneath it for each email address? I think what you’re experiencing is the inability to execute Actions inside of Form views (“think” being an operative word, it’d help if you provided some screenshots). And so when “editing” the Contact (i.e. opening its Form view), those inline email Actions get removed from the inline Table, and thus the actual value is displayed again (alongside your new VC).

There are probably multiple ways to solve this. I think an acceptable solution would be to give a CONTEXT() expression in the show_if of your new VC, to hide the new VC values when you’re inside of the Contact Form. I’ll assume the view is called “Contact_Form”, so you can use this expression:

CONTEXT("View") <> "Contact_Form"

Now, I did say an “acceptable” solution, not “perfect”. This won’t actually hide the entire column, it’ll just hide all of the values. But instead of continuing with further solutions I’ll let you try that first and reply again and make sure we’re on the right track.

1 Like

Marc, thank you very much for your reply.

CONTEXT is the function I needed, thank you for leading me to it. It worked at hiding the value, but unfortunately it did not remove the column in the inline table in the Form View. Perhaps there is a way of controlling that.

So I opted for the simple solution: Only show the “Email Address Text” field in the Inline View. It works perfectly, but the disadvantage is that I need to click one more time to compose an email. Not a big deal.

Thanks again,
Brian

2 Likes