Header Tile in View-as-List forms

Any type of variables in Text Disply ojbects in the header in View-as-List forms are not updated by the showvariables statement.

That’s correct. Data in the header is not dynamic, it can’t be updated.

It worked perfectly well in Pan 6, though.

1 Like

I have View-as-List forms that are matrices which display values for weekly dates. The header has a matrix which is filled with the dates. I can change the starting date, and the dates will change, but not using showvariables. These do not display properly on the screen, but they print out properly. The matrices are completely, or mostly blank on the screen.

epansoft - just a note that there were several things in Pan6 (and earlier versions of Panorama) that “worked” - though they might have been more like a hand grenade with the pin pulled out.

The perspective that helps me is not to think of PanX as an upgrade, an increment, to Pan6, but as a whole new different database application.

As you’ve seen in posts here, some things are still found and need corrected. But, “It worked in Pan6 so I expect it to work in PanX …” can be a road to disappointment.

The difficult thing for old-time users of Panorama (way before Pan5), is the re-learning of things we already know. Or, more accurately, “Knew”.

It can be like walking into your favorite grocery store that has reset its shelves for the season. Most - not all - of the same food is there; it is just in different places. I wander the aisles, “… Where did they put this? Where did they put that? Do they carry non-dairy vanilla ice cream anymore? …”

So I set out with a goal - a small goal - and then try to read all the Help topics about the elements of that goal. Frankly, I use only a little percentage of the new stuff. That’s probably because my mind is stuck in “the old way” of doing things.

Sometimes, if I need a lift, I make a form with a button that changes the content of a text display object - toggling between two values. Then I push it and watch it work - a Miracle!

I hope you find a solution to what you are trying to accomplish - even if it isn’t how it was done before.

3 Likes

In the header tile, I utilize text display objects to display the title of the searched result and additional information whenever a search is made. Along wiht a special field, this easily retrieves search results by next or previous buttons or keyboard shortcus or a popup button to skip to any specific result.
Using ‘goform’ statement twice will update the variables in the header, but it is not as good. For unlocked files using graphicsmode followed by datamode also works, but goform works better.

I understand why you might want to update information in the header. However, in Panorama X the Text List and Matrix objects have been enhanced to the point that I would recommend using those rather than a View-as-List form. If you do that, you can update objects outside the list or matrix to your heart’s content.

I will give it a try. Thanks!

Matrix objects are as flexibale as Data tiles. However, they cannot be used as a replacement for Data tiles due to their performance limitations. Matrix objects are significantly slower than Data tiles, especially when dealing with large datasets and numerous fields.
It takes too long to move or resize a matrix object in graphics mode when the database data option is enabled. Temporarily disabling the database option solves this issue, but it also take too long to resize a form with the same matrix object in data mode, with no solution available.
Text List objects are fast but lack the flexibility of Data tiles. Additionally, Text List objects with the Database Navigator option (with any non-global variables used in the formula) display ‘field or variable does not exist’ when another database is activated. This does not happen in Matrix objects.

Is it intentional or not possible to update objects in header tiles?

I’m not aware of the performance limitations you are referring to. Matrix objects and view-as-list forms use the exact same code to display a repeating list of data. Not similar code, not a copy of the code, but the same code. So there’s no reason why the performance should be any different if you are displaying the same layout.

I’m also not aware of any issue in regard to fileglobal variables and Text List objects with the Database Navigator option. It’s pretty unusual to use variables in that situation anyway, since that would simply display the same data on every row.

To demonstrate what I posted, I took three screen recordings using ‘My Checkbook’ demo file from Panorama Database Exchange with one form with a Matrix object and another form with a Text List object.

SlowMatrix1.mov: SlowMatrix1.mov - Google Drive

SlowMatrix2.mov: SlowMatrix2.mov - Google Drive

TextList.mov: TextList.mov - Google Drive

You’re right, there is a problem with using fileglobal variables in a Text List if the Database Navigator option is being used. I’ll have to look into that, but in the meantime, there is a simple workaround that can be used. Suppose that you have set up a fileglobal variable like this:

letfileglobal pricePattern = "$ #.##"

As you have discovered, if you use this variable directly in your formula like this, it won’t work if another database is the frontmost window.

pattern(Price,pricePattern)

But if you change the formula to reference the variable thru a fileglobalvalue( function like this:

pattern(Price,fileglobalvalue("","pricePattern")

it does work, no matter what window is frontmost.

As for your other matrix examples, your movie only shows a single window. If you showed the entire screen, I imagine it would show that either the data sheet is open, or another form that does database navigation in a list (perhaps a View-as-List form). Panorama X really doesn’t like it if you have two windows that are both trying to navigate the same database via a list/matrix view. The two windows fight each other, and you get beachballs like the ones shown in your movie. If you close any other windows that navigate this way, the beachballs will go away.

No other windows were open. I added only one form.
Pan X crashes if the green full screen mode button is pressed with or without the option key.
SlowMatrix3.mov: SlowMatrix3.mov - Google Drive

What a remarkable difference! In a clone window, the header tile can be updated with just “goform info(“formname”)”, making it even simpler than showvariables!
The reason for this is unclear, but it is evident that clone windows function significantly better. Most of the bugs I have encountered thus far do not happen in clone windows.