Link to home
Start Free TrialLog in
Avatar of GaryZ
GaryZ

asked on

R5 Frames - Referencing a field in another frame set

In R5 I have 2 frames (top bottom).

The bottom frame has a formula to add 1 to a counter, and then does a Refresh on the top frame.

What I need to do is have the top frame know what the new value of this counter is. So, either I have to be able to add 1 to the counter in the top frame, or pass the value back to the top frame.
Avatar of HemanthaKumar
HemanthaKumar

Use something like this in onLoad event of the frameset, which will refer the frame2 and set the count field

onLoad="parent.frames[0].document.forms[0].Count.value=parent.frames[1].document.forms[0].Count.value"


~Hemanth

Avatar of GaryZ

ASKER

Not working for some reason. On the inital load of the frameset I set the counter to 0 in the top frame and to 1 in the bottom, onLoad shows 0 and when the counter is updated in the bottom frame the top frame is stil showing 0.
Avatar of GaryZ

ASKER

Ah, I think the problem is that the top frame is not being refreshed, I do have the value changing on the initial load.

I have the following code in the button to refresh:

FIELD F6_ShowSection := F6_ShowSection + 1;
@If(F6_ShowSection > F6_MaxSections; @SetField(F6_ShowSection;F6_MaxSections);"");
@SetTargetFrame("Top");
@Command([FileSave]);
@Command([ViewRefreshFields])
That is right you have to refresh( and you menioned that in the question) the top frame and if you include the JS code whic I posted in onload event will always refer to the frame 2 counter.

~Hemanth
That is right you have to refresh( and you menioned that in the question) the top frame and if you include the JS code whic I posted in onload event will always refer to the frame 2 counter.

~Hemanth
Avatar of GaryZ

ASKER

Something is not correct.

1. Notes is not refreshing the top frame, if I refresh using the browser button, then the field is refreshed from the bottom frame.

2. For some reason, the "hide-whens" no longer work. At first I had the default value set to the value of the field, and nothing displayed (all hidden). I then changed the default vaue to 1, and the first section displays. When I refresh the complete screen (using the browser refresh button), the counter changes to 2 (from bottom frame), however, the first section still displays, not Section 2.
Just open the form in a browser and test , then see what happens without frameset

Avatar of GaryZ

ASKER

The frameset being refreshed is the bottom one not the top. I put a "hide-when" in the bottom frame based on the counter and that is working.
ASKER CERTIFIED SOLUTION
Avatar of HemanthaKumar
HemanthaKumar

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of GaryZ

ASKER

When I click on the hotspot, I get a third frame that looks the same as the bottom frame.
Avatar of GaryZ

ASKER

The "bottom" frame has a counter (F6_ShowSection) that gets incremented when a hotspot is clicked.

The counter has the following code in the onClick event:

parent.frames["top"].document.forms[0].F5_ShowSection.value=document.forms[0].F6_ShowSection.value

The hotspot is updating the counter and not creating a new frame.

The "top" frame has the counter (F5_ShowSection), but the value is not being passed to the top, I am assuming I need to get the top frame to refresh to get the value.
If you refresh the frame, the values will be lost, but if you pass that as the source to the frame then it is retained and aswell it is refreshed.

If you want I can take a look at your db and apply the functionality. Because i have done this sometime ago and is working well.

mailto:Hemanthakumark@bigfoot.com

~Hemanth