aliquis Posted January 16, 2008 Posted January 16, 2008 For some time I’ve been using repeating fields to hold short-hand keys to data from another table which is then displayed in full on the record via a portal. The repeating field has been the match field for the full data on the other table. But I want to hide the repeating field from my end users, who need to see only the full data displayed in the portal. To achieve this I’ve been using the trick I learnt in this forum of covering the field with another portal which doesn’t display to other users when there is no matching field . (http://fmforums.com/forum/showtopic.php?tid/177010/post/229456/#229456) Now, having also learnt that repeating fields are not generally considered to be a good thing I’ve spent some time reconfiguring the database to put all the repeats, separated out, in another related table which I now access through a second portal, instead of a repeating field. Having got that far I now find that when I come to use the old trick to hide the short-hand keys that used to be in a repeating field but are now in a portal, it doesn’t work. I can see but can no longer access the portal to input the data that will display the full information to the end user. Presumably this is because you can’t put a portal on a portal? So my question is: how do I hide the portal? Have I just gone wrong somewhere? I’d be grateful for any help.
The Big Bear Posted January 16, 2008 Posted January 16, 2008 Aliquis You can hide the portal by baseing the relationship on a case or if statement. If(relatioship is true) then portal will be displayed. when the (relationship is not true) the portal is not displayed.
aliquis Posted January 16, 2008 Author Posted January 16, 2008 Thanks Big Bear - that sounds promising, but I don't quite get it. Where do I set up this relationship?
The Big Bear Posted January 16, 2008 Posted January 16, 2008 Aliquis Check the file out. Press the button marked "Press". aliquis.zip
Lee Smith Posted January 16, 2008 Posted January 16, 2008 You can hide the portal by baseing the relationship on a case or if statement. You still have to give it the Real Estate though. I modified your example file and added the color to call attention to what I mean. Lee portal.fp7.zip
aliquis Posted January 16, 2008 Author Posted January 16, 2008 Many thanks both - I'll take a look at these.
aliquis Posted January 17, 2008 Author Posted January 17, 2008 Thanks to both of you for working on this. I fear I didn't quite explain my set up well enough. I've attached 2 files. The first has the Repeating Field solution where hiding the field that I want to hide works OK. In the second I've replaced the repeating field with a portal in the way I believe you should if you want to avoid repeating fields. But now I can't hide the portal. I don't think it can be done through altering the relationship because then it breaks all the links. If you can see a way of doing this with the Port.fp7 file that would be very handy. RptPrtl.zip
comment Posted January 17, 2008 Posted January 17, 2008 You cannot have a portal in another portal, so the 'visibility' trick won't work here. You can "hide" layout elements by using a tab control. But I don't understand why you need this at all: under what circumstances do you want to show these codes? Why not simply remove them from the layout altogether (at least from the user's layout)?
aliquis Posted January 17, 2008 Author Posted January 17, 2008 Thanks - I thought that was the reason why it wouldn't work. As the information provider I use the codes in order to input the data which then summons the full record details into the display, so I don't have to write 'History, Geography, Chemistry' in full. (In reality I use course codes as there are about 600 of them - too many for a value list.) My end users don't actually input data - they only need to see and get reports about which courses each student is doing, and which student is doing which courses. I have quite a few of these little details and the layout is very cluttered for the viewer if I can't hide them. The visibility trick on the repeating fields was ideal. But you mention using tab control. How would this work? I could duplicate the layout on a tab except for the portals, but there is then no way of making the tab invisible is there? It would surely just be a tab where I say to the users 'Don't go there - it doesn't concern you.'
comment Posted January 17, 2008 Posted January 17, 2008 It could work this way (attached). If you change the tab control's border width to "None", there will be no way to switch tabs other than by a button/script. Another way would be to make a whole new layout - with access restricted to you only. Port2.fp7.zip
aliquis Posted January 17, 2008 Author Posted January 17, 2008 Thanks a lot - that is really good. Very clever. I can build a script to run at login to set all the tabs in all the layouts to the dev or usr view depending on the login details. And just as I was beginning to think I'd have to go back to repeating fields! You've really helped - thanks.
comment Posted January 17, 2008 Posted January 17, 2008 I can build a script to run at login to set all the tabs in all the layouts to the dev or usr view depending on the login details. I don't think that's going to work well - the tab control will revert to the default tab every time you switch layouts. You could make all navigation scripted, with the tab switching included - but I believe it would be easier to have a set of layouts for yourself only.
aliquis Posted January 17, 2008 Author Posted January 17, 2008 (edited) So it does. That's a pity. I'm reluctant to go to multiple layouts. In fact that's the way I started out. It was learning the visibility trick that prompted me to ditch all the duplicates. But all my layout changes are scripted anyway, so I can set window size, window titles and so on. It may not be such a problem to build the tab setting for each layout into the change layout script. Edited January 17, 2008 by Guest
Recommended Posts
This topic is 6155 days old. Please don't post here. Open a new topic instead.
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now