Brudderman Posted July 5, 2005 Posted July 5, 2005 I'm using a calculated field (FMD 7) as the source for a value list. Here is the formula for the field: LayoutNames(Get(filename)). The field is stored with indexing set to automatic as needed. But when I change the name of a layout, the value list of layout names does not update because the field is stored so that it can be indexed. Is there a better approach to this? I just want to populate a value list with layout names and have the value list update if I change a layout name. Any suggestions will be appreciated! Brudderman
RalphL Posted July 5, 2005 Posted July 5, 2005 If you want it to update make it unstored, but then you can not use it as a value list. What is the purpose of this value list?
-Queue- Posted July 5, 2005 Posted July 5, 2005 You can make it an indexed calculation or an auto-entered text calculation (with 'do no replace existing value' and 'do not evaluate if all referenced fields are empty' unchecked) of If( somefield; LayoutNames(Get(FileName)); LayoutNames(Get(FileName)) ) then whenever somefield is modified or cleared, the calculation will update. Note that this is the same as Evaluate( "LayoutNames(Get(FileName))"; somefield ) but may be more intuitive for you.
-Queue- Posted July 5, 2005 Posted July 5, 2005 You mean who? Brudderman, of course. I just want to populate a value list with layout names and have the value list update if I change a layout name. Of course, he should put this into a prefs table or a similar table which only contains one record.
comment Posted July 5, 2005 Posted July 5, 2005 If it's up to Brudderman to initiate the update, then wouldn't it be simpler to run a script (or a script step) setting the field directly, instead of modifying somefield, which in turn will trigger the auto-enter?
-Queue- Posted July 5, 2005 Posted July 5, 2005 It might take about the same number of clicks, depending on whether the script is attached to a button on the current layout or available from the visible Scripts list, or where somefield is when he makes the change. I would think it would be cleaner to keep it all to the field itself, but that's just me. I would probably also use If( field1 and field2 and field3 ... ), and include some regularly modified fields, in which case no interaction may be necessary, depending on the current number of active users.
LaRetta Posted July 5, 2005 Posted July 5, 2005 If it's up to Brudderman to initiate the update, then wouldn't it be simpler to run a script ... I envisioned layout-switch script firing it. But that's just me ... I capture window and layout movement anyway in multiline. This is powerful stuff here!
comment Posted July 5, 2005 Posted July 5, 2005 Well, I don't know - I prefer simple every time. How often does he intend to change the layout names anyway? Just so that I am not merely nitpicking, here's another syntax for a triggered auto-enter, which I happen to like: Let ( [ trigger = TriggerField1 & TriggerField2 & TriggerField3 ] ; << put your auto-enter calc here >> )
-Queue- Posted July 5, 2005 Posted July 5, 2005 Alas, I have no idea. But it sounded as if it might be a somewhat regular occurrence. That one's nice, too. What if all three fields are empty though, via the only non-empty field being cleared? Does it still evaluate?
Recommended Posts
This topic is 7085 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