Jump to content

Alex Taylor

Members
  • Content Count

    16
  • Joined

  • Last visited

Community Reputation

0 Neutral

About Alex Taylor

  • Rank
    member

Profile Information

  • Gender
    Not Telling
  1. I think your idea of jumping to a separate layout is a good one, if you want to make sure the user understands what they're doing. You could also throw up a simple dialog with the default button set to 'Cancel' so that the user simply has to confirm that they want to mark it as complete. This would be more standard, although depending on your solution maybe you would prefer to go with the full-page idea. If you're using FileMaker 12, I believe you can create modal dialogs which are based on layouts but more involved than the Custom Dialog box. This might suit your purposes nicely.
  2. You would definitely need a bookings table to track the actual bookings as they occur. A good rule of thumb when designing databases is that for every "entity' you wish to track, you need a separate table. So your Products are one kind of entity, the Cameras are another (since each camera may be the same product, but still a unique item in itself), and Bookings are yet another, given that each Booking consists of a specific Camera being loaned out for a specific date range. In terms of implementing this, when your user is creating a new booking, you could design the interface so that they
  3. Indeed. That was my hope! Thanks for the clarification, Priyabrata.
  4. If you want to ignore case, you could create a stored calc in your table that uses Lower() to convert the field all to lowercase, then do your sort on that.
  5. I implemented your script and gave it a shot, although it looks like it's considerably slower than the first two methods. My guess is because of the multiple layout switching involved. In the first script where I tried the globals idea, I just stayed on one layout and looped through the Shift records, relying on the unstored calc to do the work behind-the-scenes for each availability record. Thanks for all the help, I've definitely learned a few things!
  6. Here's how I've got my original method set up: A number field in Shift with an AutoEnter calc that sends the shift data + related availability data (using List() of a stored calc field in the Employee_Availability table that concatenates the required fields) to the custom function. The custom function returns the ID of the best availability record. A script with a "Replace Field Contents" step that clears the result of the AutoEnter calc field, thus forcing it to recalculate for every record in the found set. I've added timers to this script so I can see how long it runs for. I tried
  7. Good method, comment! I didn't think of using global fields before. Looks like using a scripted loop to set the globals and grab the ID of the related record with the highest availability runs the same speed as a calculation that grabs a List() of the related records and passes it to my custom function. So maybe I've hit the natural limit of how fast this is going to be
  8. Thanks for the attachment, eos! However, I believe the calculation you're using in the Employee table to determine the amount of overlap would not cover situations where there's more than one shift in a given day. Since the calculation only has access to the first matched record in the relationship, subsequent shifts would see the data from the first shift displayed in the portal. I believe the calculation has to be done from the Shift side so that each shift can be evaluated in turn. I came up with this calculation to determine the value of the overlap: Max( 0; Min ( employeeEnd; shiftE
  9. I'm working on a solution which I'm trying to optimize for speed (who isn't!) and I was hoping I could get some feedback on my current method. Here's the problem: I'm working on an assignment which is a scheduling system for shift workers. Each employee can, in advance, specify the dates and time ranges during which they want to be available to work. So some employees might say they would like to work Mondays to Fridays, 9am to 5pm, others might specify night shifts, others may say they're only available certain days out of the week. Given this list of employees, and a list of shifts (
  10. I've been working on optimizing a complex part of a solution that relied on the List() function to send multiple parameters to a custom function. Through my research I came across this article: http://www.teamdf.com/weetbicks/the-search-for-fast-aggregates--trial--error/99/ This article discusses the fact that when you use List(), Sum() or other aggregate functions, FileMaker sends the entire record set to the client, not just the data from the requested field(s). Does anyone know if this is also the case with ExecuteSQL()? I would assume that an SQL query would only return the re
  11. Thanks, Steven. It's always hard wrangling multiple platforms! This seemed fairly straightforward though, once I enabled the correct extended privilege. Another interesting note: I'm able to log into my databases using EITHER the full account name OR the short name, which is cool. Our account names have spaces in them, but it still works just fine. I've also cooked up a Change Password script that uses a web viewer, PHP script and shell command to change the Mac OS account password from "within" FileMaker (transparent to the users, anyway). If anybody is interested in seeing that scr
  12. Huzzah - just figured it out! My problem was that within the Privilege Set I was using (happened to be the default [Data Entry]), I had forgotten to enable the extended privilege "Access via FileMaker Network (fmapp)." As soon as I enabled this and tried logging in with my 'externaltest' user, it worked! Hope this thread comes in handy for somebody else in the future.
  13. Hi, I've read the tech brief on External Server Authentication as well as looked through the last few pages of topics for some clues to my answer, but I can't seem to fix the problem I'm having. I can't authenticate an external user in my FileMaker database. Here's my setup: Server: FileMaker Server 11 running on Mac OS X Server 10.6.8 Enabled Client authentication using "FileMaker and external server accounts" Database: Created an External Server Account named 'fmgroup' Users/Group: On Mac OS X Server, used System Prefs to create a new user named 'externaltest'. Used Wor
  14. Is there a way to use a Quick Find to constrain a current found set, instead of having it search the entire table? I'd like to be able to use a List View to present a found set to the user via a script, then give them the ability to search within that found set. I suppose I could make my own "Quick Find" box on the layout but I was hoping I could use the actual box for it.
  15. Wow, thanks for the replies everyone! This was exactly what I was looking for. I haven't got into Custom Functions too much yet, so this is great to have some solid examples to learn from. Thanks for the input! It's going to be used as a way of determining total time if multiple people are involved in the same task. Let's say Adam and Betty were both in a meeting for 2 hours, and they separately log their time for that. We want to be able to say that 2 "company" hours were spent in the meeting, instead of 4 cumulative "man hours."
×
×
  • Create New...

Important Information

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