Jump to content
Claris Engage 2025 - March 25-26 Austin Texas ×
The Claris Museum: The Vault of FileMaker Antiquities at Claris Engage 2025! ×

This topic is 3231 days old. Please don't post here. Open a new topic instead.

Recommended Posts

Posted

In our legacy system (currently FM 12), I set a global date field "Record Lock Date" which is the period close date from a financial perspective. Users cannot create timesheets with dates prior to the Record Lock Date (because they will have already been invoiced to clients at that point). Validation for Date field in Timesheet table looks like this with CAT being me: 
If (Get ( AccountName ) = "CAT" ; 1 ; (Date  >  Globals::Record Lock Date) )

Monthly, when we move to a new billing period, I close the file on the server and log in directly (without sharing), and I manually update that Globals::Record Lock Date field.

I'm designing a new system in FM 14, and I'm trying to figure out if there is a way for this date to be set without kicking everyone out of the file, closing the file, opening directly/unshared, making the global field change, and then logging out to open the file on the server again.

Currently I'm the only person with admin rights on the server to log in to the Admin Console, and corporate IT does not want to expand that, so it's something I have to be available to do every month at a certain time, regardless of other commitments, vacations, etc. I'd like someone with a certain privilege set to be able to update that field without needing to access the Admin Console to close the file and remove all users.

 

Posted

Write the value into a startup script, and set it when users logon.

Then you only need to update the script each month.

Posted

Create a table, call it Prefs or Admin or something and give it appropriate permissions. Create a Lock Date field. Create a single record in that table.

Create a script that runs at startup -- in FileMaker 14 it's the OnFirstWindowOpen script trigger under File Options -- and it would just go to the Prefs layout and set the Global Lock Date to the Prefs Lock date.

Or you could forget the global field and just trigger a validation script against the Prefs fields, e.g. via ExecuteSQL.

Posted

I guess I left out some detail:  I initially wrote a script to trigger on first window open which sets the global lock date from a field in an Admin table. However, I realized that anyone already logged in at the time that the date is updated would still be able to enter and edit records based on the prior lock date until they logged out and back in to set their global field.

Is there a way for the billing administrator to "kick out" users without her having access directly to the Admin Console? This date is needs to be updated around 10 am, when we've given everyone a "last chance to finish your timesheets for the month" warning, but users are often still logged in during this time.

Posted

1. As Fitch already noted, you can validate against the "real" field directly.

2. You could have a script triggered on validating the field (IMHO, you should have that anyway, since Filemaker's built-in validation error messages are not exactly user-friendly).

3. Is there not a method in this madness that you could use for validating by a calculation?

This topic is 3231 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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.