Jump to content
View in the app

A better way to browse. Learn more.

FMForums.com

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

track layout access

Featured Replies

Is there a function I could use to track layout access: layout name, when used, by whom? This would be useful to clean up a legacy database that has a lot of old (probably unused) layouts.

Use a script called by OnLayoutEnter to create a new record in a Layout Usage table.

  • 1 year later...

I have the same question. I created a table and layout (z_Layout Tracking) to hold the information as records. I would like the data for all layouts in the file in a single location. I want to see what layouts are used and how often.

This is my script...

Set Variable [$LayoutName; Value: Get ( LayoutName )]

Go to Layout ["z_Layout Tracking" (z_Layout Tracking)]

New Record/Request

Set Field [z_Layout Tracking::layout_name; $LayoutName]

Go to Layout [original layout}

I had it set as a script trigger on the layout using "OnLayoutEnter" which functions, HOWEVER, the last step where it puts the user back into their original layout causes the layout to be entered again and creates an endless loop. I had thousands of records in just a few seconds. Is there any way to fix that or am I going about it all wrong?

perhaps you could set a global variable like $$tracked to the current layout name. Then on your layout enter script you could do

Set Variable [$LayoutName; Value: Get ( LayoutName )]

if [ $LayoutName ≠ $$tracked ]

Go to Layout ["z_Layout Tracking" (z_Layout Tracking)]

New Record/Request

Set Field [z_Layout Tracking::layout_name; $LayoutName]

Set Variable [$$tracked; Value: $LayoutName]

Go to Layout [original layout}

End If

Or you could just use a global variable all the way through

if [ $$LayoutName ≠ Get ( LayoutName )

Set Variable [$$LayoutName; Value: Get ( LayoutName )]

Go to Layout ["z_Layout Tracking" (z_Layout Tracking)]

New Record/Request

Set Field [z_Layout Tracking::layout_name; $$LayoutName]

Go to Layout [original layout}

End If

Fantastic!! This worked. Thank you so much.

One more thing you might consider is just writing to multiline global variable throughout the User session - only writing those values to record in Layouts table OnFileClose. I've considered similar when I wanted to track user movement on layouts with multiple portals - to see how they are using the system. Attach object names to everything then tooltip captures the value.

IIRC, Macs are too slow to capture tool tip in this way and you do not list your OS but it might be worth playing with. :^)

Create an account or sign in to comment

Important Information

By using this site, you agree to our Terms of Use.

Account

Navigation

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.