dbTalk Databases Forums  

Customizing FM interface based on user

comp.databases.filemaker comp.databases.filemaker


Discuss Customizing FM interface based on user in the comp.databases.filemaker forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
acuccia@gmail.com
 
Posts: n/a

Default Customizing FM interface based on user - 03-14-2007 , 02:17 PM






I've got 4 users running FM 8.5 (Mac), with one client hosting the
files. I am trying to find a way to make one of our "main" layouts
display information specific to the currently logged in user
(different for each machine).

For example, imagine each record represents an open "project", which
any one of 4 users can be assigned to (their name is in a "responsible
party" field). All users generally use the same layout (say
"projects"), which just shows information about each project in the
database. I would like to have a status indicator at the top of the
layout that says something like "Bob: 5 projects", which would
indicate that Bob is currently assigned to 5 of the projects.

This seems like something that maybe FM can't do. It would seem that
the status indicator I'm trying to create wouldn't have a place to
"live". It can't be saved as part of the record, since all users see
the same record. It's really temporary information that doesn't need
to be saved with the record. I could obviously create separate layouts
for each user, but I'm afraid that would be a nightmare to manage (and
enforce).

Any ideas?

Thanks,
Anthony


Reply With Quote
  #2  
Old   
Matt Wills
 
Posts: n/a

Default Re: Customizing FM interface based on user - 03-14-2007 , 02:49 PM








On 03/14/2007 16:17:21 acuccia (AT) gmail (DOT) com wrote:

Quote:
I've got 4 users running FM 8.5 (Mac), with one client hosting the files.
I am trying to find a way to make one of our "main" layouts display
information specific to the currently logged in user (different for each
machine).

For example, imagine each record represents an open "project", which any
one of 4 users can be assigned to (their name is in a "responsible party"
field). All users generally use the same layout (say "projects"), which
just shows information about each project in the database. I would like
to have a status indicator at the top of the layout that says something
like "Bob: 5 projects", which would indicate that Bob is currently
assigned to 5 of the projects.

This seems like something that maybe FM can't do. It would seem that the
status indicator I'm trying to create wouldn't have a place to "live". It
can't be saved as part of the record, since all users see the same record.
It's really temporary information that doesn't need to be saved with the
record. I could obviously create separate layouts for each user, but I'm
afraid that would be a nightmare to manage (and enforce).

Any ideas?

Thanks, Anthony
Global fields being unique to the user, consider either global calcs or set globals to contain the appropriate information. Put them whever you want on the layout.

Matt


Reply With Quote
  #3  
Old   
acuccia@gmail.com
 
Posts: n/a

Default Re: Customizing FM interface based on user - 03-14-2007 , 03:25 PM



On Mar 14, 1:49 pm, Matt Wills <I... (AT) witz (DOT) end> wrote:
Quote:
On 03/14/2007 16:17:21 acuc... (AT) gmail (DOT) com wrote:



I've got 4 users running FM 8.5 (Mac), with one client hosting the files.
I am trying to find a way to make one of our "main" layouts display
information specific to the currently logged in user (different for each
machine).
For example, imagine each record represents an open "project", which any
one of 4 users can be assigned to (their name is in a "responsible party"
field). All users generally use the same layout (say "projects"), which
just shows information about each project in the database. I would like
to have a status indicator at the top of the layout that says something
like "Bob: 5 projects", which would indicate that Bob is currently
assigned to 5 of the projects.
This seems like something that maybe FM can't do. It would seem that the
status indicator I'm trying to create wouldn't have a place to "live". It
can't be saved as part of the record, since all users see the same record.
It's really temporary information that doesn't need to be saved with the
record. I could obviously create separate layouts for each user, but I'm
afraid that would be a nightmare to manage (and enforce).
Any ideas?
Thanks, Anthony

Global fields being unique to the user, consider either global calcs or set globals to contain the appropriate information. Put them whever you want on the layout.

Matt
Sorry, I don't get that. How do I show only the "correct" global field
(the one for the current user) on the layout?

-Anthony



Reply With Quote
  #4  
Old   
Grip
 
Posts: n/a

Default Re: Customizing FM interface based on user - 03-14-2007 , 06:57 PM



On Mar 14, 3:25 pm, acuc... (AT) gmail (DOT) com wrote:
Quote:
On Mar 14, 1:49 pm, Matt Wills <I... (AT) witz (DOT) end> wrote:



On 03/14/2007 16:17:21 acuc... (AT) gmail (DOT) com wrote:

I've got 4 users running FM 8.5 (Mac), with one client hosting the files.
I am trying to find a way to make one of our "main" layouts display
information specific to the currently logged in user (different for each
machine).
For example, imagine each record represents an open "project", which any
one of 4 users can be assigned to (their name is in a "responsible party"
field). All users generally use the same layout (say "projects"), which
just shows information about each project in the database. I would like
to have a status indicator at the top of the layout that says something
like "Bob: 5 projects", which would indicate that Bob is currently
assigned to 5 of the projects.
This seems like something that maybe FM can't do. It would seem that the
status indicator I'm trying to create wouldn't have a place to "live". It
can't be saved as part of the record, since all users see the same record.
It's really temporary information that doesn't need to be saved with the
record. I could obviously create separate layouts for each user, but I'm
afraid that would be a nightmare to manage (and enforce).
Any ideas?
Thanks, Anthony

Global fields being unique to the user, consider either global calcs or set globals to contain the appropriate information. Put them whever you want on the layout.

Matt

Sorry, I don't get that. How do I show only the "correct" global field
(the one for the current user) on the layout?

-Anthony
Create separate login names for each user. Create the global fields,
AccountName CountProjects. Create a script that runs on start up. In
that script write the script step:

Set Field AccountName = Get(AccountName).
Set Field CountProjects = well there's a couple ways of summing the
number of projects a user has, tell us more about the db and we can
help.

Those global fields will show different information depending on who's
looking at the record.

G



Reply With Quote
  #5  
Old   
Helpful Harry
 
Posts: n/a

Default Re: Customizing FM interface based on user - 03-14-2007 , 11:43 PM



In article <1173907502.797616.53040 (AT) e65g2000hsc (DOT) googlegroups.com>,
acuccia (AT) gmail (DOT) com wrote:

Quote:
On Mar 14, 1:49 pm, Matt Wills <I... (AT) witz (DOT) end> wrote:
On 03/14/2007 16:17:21 acuc... (AT) gmail (DOT) com wrote:

I've got 4 users running FM 8.5 (Mac), with one client hosting the files.
I am trying to find a way to make one of our "main" layouts display
information specific to the currently logged in user (different for each
machine).
For example, imagine each record represents an open "project", which any
one of 4 users can be assigned to (their name is in a "responsible party"
field). All users generally use the same layout (say "projects"), which
just shows information about each project in the database. I would like
to have a status indicator at the top of the layout that says something
like "Bob: 5 projects", which would indicate that Bob is currently
assigned to 5 of the projects.
This seems like something that maybe FM can't do. It would seem that the
status indicator I'm trying to create wouldn't have a place to "live". It
can't be saved as part of the record, since all users see the same record.
It's really temporary information that doesn't need to be saved with the
record. I could obviously create separate layouts for each user, but I'm
afraid that would be a nightmare to manage (and enforce).
Any ideas?
Thanks, Anthony

Global fields being unique to the user, consider either global calcs or set
globals to contain the appropriate information. Put them whever you want on
the layout.

Sorry, I don't get that. How do I show only the "correct" global field
(the one for the current user) on the layout?
You have a set of Global fields that "hide" in the background and never
appear on a layout (except temporarily so you can put in the data of
course), or if you must you an use a single Global field with enough
repetitions for each possible user. Either way, these are used to store
the appropriate data for each user.

You can then have another Global field that is the one which is
displayed on the Layout(s). This field can be set to the appropriate
user's Global data via a script - usually an "Opening Script" which you
define to be run in the Documents' Preferences whenever the file is
opened (or connected to if running on a server).


For example, the "hidden" User gGloabl fields might be:

g_Bob_Projects "Working, Sleeping"

g_John_Projects "Eating, Driving"

g_Mary_Projects "Walking, Talking"


The "Opening Script" could then check the User Name (as defined in the
Application Preferences) at set a g_User_Data field to the appropriate
Project data.
eg.
If (Get(CurrentUserName) = "Bob")
Set Field (g_User_Data, g_Bob_Projects)
End If
If (Get(CurrentUserName) = "John")
Set Field (g_User_Data, g_John_Projects)
End If
If (Get(CurrentUserName) = "Mary")
Set Field (g_User_Data, g_Mary_Projects)
End If

This single g_User_Date field can be put on the Layout(s) and will
display the data appropriate to the user who opened / connected to the
file.




Helpful Harry
Hopefully helping harassed humans happily handle handiwork hardships ;o)


Reply With Quote
  #6  
Old   
acuccia@gmail.com
 
Posts: n/a

Default Re: Customizing FM interface based on user - 03-15-2007 , 04:00 PM



On Mar 14, 10:43 pm, Helpful Harry <helpful_ha... (AT) nom (DOT) de.plume.com>
wrote:
Quote:
In article <1173907502.797616.53... (AT) e65g2000hsc (DOT) googlegroups.com>,



acuc... (AT) gmail (DOT) com wrote:
On Mar 14, 1:49 pm, Matt Wills <I... (AT) witz (DOT) end> wrote:
On 03/14/2007 16:17:21 acuc... (AT) gmail (DOT) com wrote:

I've got 4 users running FM 8.5 (Mac), with one client hosting the files.
I am trying to find a way to make one of our "main" layouts display
information specific to the currently logged in user (different for each
machine).
For example, imagine each record represents an open "project", which any
one of 4 users can be assigned to (their name is in a "responsible party"
field). All users generally use the same layout (say "projects"), which
just shows information about each project in the database. I would like
to have a status indicator at the top of the layout that says something
like "Bob: 5 projects", which would indicate that Bob is currently
assigned to 5 of the projects.
This seems like something that maybe FM can't do. It would seem that the
status indicator I'm trying to create wouldn't have a place to "live". It
can't be saved as part of the record, since all users see the same record.
It's really temporary information that doesn't need to be saved with the
record. I could obviously create separate layouts for each user, but I'm
afraid that would be a nightmare to manage (and enforce).
Any ideas?
Thanks, Anthony

Global fields being unique to the user, consider either global calcs or set
globals to contain the appropriate information. Put them whever you want on
the layout.

Sorry, I don't get that. How do I show only the "correct" global field
(the one for the current user) on the layout?

You have a set of Global fields that "hide" in the background and never
appear on a layout (except temporarily so you can put in the data of
course), or if you must you an use a single Global field with enough
repetitions for each possible user. Either way, these are used to store
the appropriate data for each user.

You can then have another Global field that is the one which is
displayed on the Layout(s). This field can be set to the appropriate
user's Global data via a script - usually an "Opening Script" which you
define to be run in the Documents' Preferences whenever the file is
opened (or connected to if running on a server).

For example, the "hidden" User gGloabl fields might be:

g_Bob_Projects "Working, Sleeping"

g_John_Projects "Eating, Driving"

g_Mary_Projects "Walking, Talking"

The "Opening Script" could then check the User Name (as defined in the
Application Preferences) at set a g_User_Data field to the appropriate
Project data.
eg.
If (Get(CurrentUserName) = "Bob")
Set Field (g_User_Data, g_Bob_Projects)
End If
If (Get(CurrentUserName) = "John")
Set Field (g_User_Data, g_John_Projects)
End If
If (Get(CurrentUserName) = "Mary")
Set Field (g_User_Data, g_Mary_Projects)
End If

This single g_User_Date field can be put on the Layout(s) and will
display the data appropriate to the user who opened / connected to the
file.

Helpful Harry
Hopefully helping harassed humans happily handle handiwork hardships ;o)
Thanks, everyone. I'm making some progress with this now. Somehow I
had never figured out that global fields were unique to each user.

-Anthony



Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.3
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.