Question Order of Tabbed Documents

KACJR

Registered User.
Local time
Today, 15:18
Joined
Jul 26, 2012
Messages
98
Greetings to the well of knowledge...

Because of certain design considerations and the amount of data I'm maintaining, I have chosen to use tabbed documents rather than floating windows or subforms.

The hierarchy is supposed to be a person who is categorized as either a client, family member, donor, etc. Further, a client may use one or more services. In the example, our client uses Specialized Home Care. However, the tabs are intuitively out of order: the people tab is left-most, followed by the Specilaized Home Care tab, and lastly the Client tab. It should be People, People:Client, People:Client:Service. If a person uses a lot of our services, there will be separate People:Client:Service tabs and the People:Client tab will scroll off to the right. I'd like Access to order them properly but see no way to do it.

Keep in mind that when the forms are opened, it's people first followed by the high-level classification (i.e. Client), and the lastly the specific Client:Service tabs. I would expect Access to open and display them left to right, but, as you can see, it doesn't.

Anyone thoughts as to whether this is just the way it works or if it is configurable?

Kind regards,
Ken Carter :confused:
 
Can you clarify a bit more? Do you have a tabbed control being used in one form? or do you have Access settings to open all of your forms in a tabbed format. Are you starting with one form and then users are opening the other forms are do you have the system automatically opening each form. Please tell me more.
 
No, this is not a tabbed control embedded in a form. Each form is separate and independent. They are certainly linked from a relationships perspective, but they are not subforms. I have, as you noted, set the database options (File/Options/Current Database) to display documents as "Tabbed Documents" and not as "Overlapping Windows".

Users view People information on a single form. The user can scroll through each person and view their basic demographic information (e.g. address, phone #, email). Each person also has a particular classification (e.g. Client, Family Member, Donor, etc). The "On Current" property executes VBA code to check what the individual's classification is (e.g. Client).

In this instance, the code opens the People:Client form for this particular person as a separate tabbed document and displays the Client-specific information for that person. The user can click on the tab to view that info. Each client also has one or more subclassifications based on the services they receive. The "On Current" property of this form executes VBA code to check to see what services the client gets and will then open one or more additional forms as tabbed documents for each such service displaying information specific to each service. Needless to say, it all happens fairly instantaneously.

The problem is the order of the tabs. The initial high-level People form is displayed as the left-most tab, as it should be. Intuitively, the next-level People:Client tabbed document form SHOULD be displayed as the next tab to the right, followed then by each People:Client:Service tabbed document form.

But that's not what is happening. Indeed, the high-level People form is displayed left-most. But then each of the People:Client:Service tabs follow to the right of the People tab. The second-level People:Client tabs is then at the very end, oftentimes hidden if several People:Client:Service tabs are open, requiring the user to scroll to the right to see it.

So it sort of looks like this visually:
[People] [People:Client:Service1] [People:Client:Service2] [People:Client]

...when it should look like this:
[People] [People:Client] [People:Client:Service1] [People:Client:Service2]

It's not a big deal, it's just that it's not intuitive to the user.

Hope that explains what I'm doing here.

Regards,
Ken
 
Yes...I completely understand what you are trying to do. Thanks for the clarification. I just did a test and it is strange. If you take the code out of the current event and open each from the navigation pane in the same order - the tabs are in the correct order. But with VBA it's not. I'm curious to find a solution for this one.
 
Would it possibly have anything to do with what form has the focus when the others are opened? When the People:Client:Service forms are open, the People:Client form has the focus becuase that's the form that opens the People:Client:Service forms. Intuitively, I would expect the People:Client:Service forms to go to the right of People:Client.
 
Just did another test and it apparently only happens when the form is initially opened and the OnCurrent event is fired. If you do a test on People:Client and have that form already opened with all other forms closed except People, and you navigate to a new record in People:Client through the forms navigation bar, the People:Client>Service 1 form should open in the correct order. What I think is happening is if the oncurrent event is fired on first opening the form Access still hasn't processed the handle of that window becuase it's not fully opened. So then it fires the open form event on another form and opens that form ahead of the first form. Does that make sense?? Maybe in your code you can somehow trick access into waiting to open subsequent forms? You could have client:service1 open with a global flag set to false - and in the oncurrent event check to see if the flag is false. If it's false then don't open the next form. From your opening form, then set flag to true and navigate to the correct record in People:client:service 1. Does that make sense?
 
That's a possibility. I'll see what I can come up with.

Another suggestion I hear is that Windows arranges the tabs in alphabetical order by either tab caption title or the name of the form itself. Another interesting thought.
 
Just tested that theory...doesn't work. Form1 caption = A, Form2 Caption = B. If B opened first, B will stay to the left.
 

Users who are viewing this thread

Back
Top Bottom