How can I link to another row in the same tab...

expressions
(Aksel Gresvig) #1

How can I link to another row in the same table from a Form view?

I have a log type app, where I log training sessions. I want a quick way to see the previous entry’s detail view, while adding a new entry using it’s Form view.

I have tried creating an Action to go to a row, but this won’t work in Form view since I cannot add custom Actions for forms (only Save action is available). So this will only work in detail view, where I get a “Go to row” button.

I’ve also tried adding a virtual column of type App, and specifies an app formula for it uses a Deep Link expression to link to another row. This approach works in detail view, but not in Form view. In Form view the link is displayed as greyed out text which cannot be clicked. In detail view however, the link is active and takes me to previous row’s detail view.

All advice is greatly appreciated!

#2

Hi @Aksel_Gresvig Not sure if this will help but you can make an action that will copy a row and open it for edting.

(Aleksi Alkio) #3

@Aksel_Gresvig Yes that’s correct that you can’t trigger actions from the form view. Better option would be if you add a virtual column or Show/Text field where you can show values from previous record as you like.

(Aksel Gresvig) #4

@Aleksi_Alkio Thanks for quick reply. I see.

Can I use a query that displays all info of the related row, or will I have to have one Virtual Column per column of the related row?

(Aleksi Alkio) #5

You can read values with one column if you CONCATENATE those columns together. You just need to take care of that it’s readable.

(Aksel Gresvig) #6

@Aleksi_Alkio Hmm, ok. Thats gonna be one long expression, not sure how to structure it. Can I save the return value of a reference somehow? The related row is the previous training session with the same exercise type, and I find it like so:

MAXROW(TrainingLog, Datestamp, [Exercise]=[_THISROW].[Exercise])

Where “Datestamp” is the ID column of TrainingLog table. The “Exercise” must match that of the new entry.

So, this query gives me the related row. Now I need to print out values from 4 different columns of this row. A shorthand reference to the MAXROW result would come in very handy.

Thanks for the help, all advice is greatly appreciated!

(Aleksi Alkio) #7

Because you have the key column’s value already with the MAXROW, you can call your columns like… CONCATENATE([MaxRowColumn].[ColA],"

“,[MaxRowColumn].[ColB],”

“,[MaxRowColumn].[ColC],”

",[MaxRowColumn].[ColD])

(Aksel Gresvig) #8

@Aleksi_Alkio Thanks! This approach works. However, for better presentation I’d like to show these values on different lines or with tabs between them. Adding ,"\n", to a CONCATENATE does not work. Is text formatting with newlines/tabs supported at all?

(Aksel Gresvig) #9

@Aleksi_Alkio Never mind, I figured that concatenating the newline directly, like you actually did in your example, does the trick. I think we can call this a Closed Case then.

Thanks for the help

(Aksel Gresvig) #10

Last note here - the ability link to row/link to detail view from Form view is a highly requested feature! It would greatly accelerate app setup of the types of app I create, which are “training apps”.

(Aleksi Alkio) #11

I believe the challenge would be when you need to go away from that form view and then come back again.