Tom R.

  • Content count

  • Joined

  • Last visited

  • Days Won


Tom R. last won the day on November 19 2012

Tom R. had the most liked content!

Community Reputation

5 Neutral

About Tom R.

  • Rank
  • Birthday September 30

Profile Information

  • Gender
  • Location
    Denver, CO

FIleMaker Profile

  • FM Application
    14 Advanced
  • Platform
    Mac OS X Yosemite
  • Skill Level
  • Membership
  • Title
    Attorney/database user
  • Industry
    Legal/Natural Resources

Recent Profile Visitors

2,450 profile views
  1. Sorry, I guess that was more of an aside than a because. A join table between two occurrences of the Parties table? Or between the Parties table and...? I will play around with it and see what I can figure out. Thanks!
  2. Hi, For my solution I have set up a party model, with separate tables for People, Organizations, and Parties. Since a Party can be either a person or an organization, the user creates a new party record, selecting whether it's a person or org; then a related child record is created in the appropriate table. My question is, I would like to come up with some sort of compound party model, but am not sure how to structure it. In my solution, Parties can own interests in leases, and they get credited with line items in a line items table. So for example I might have Bill Smith and Jean Smith with separate records in the Party table (and associated records in the People table). I want to be able to create a compound party out of them, based on their relation as husband and wife; so the party would be "Bill Smith and Jean Smith, husband and wife". I would like the new party record to be based on the existing records in the Parties and People tables; not a completely new record based on an Organization. Similar examples might be "Jennifer Jones, Mike Carlson and Jeff Black, co-trustees of the Jones Family Revocable Trust", where each of the individual people/organizations, are existing records already. I'm not sure whether I might be able to do something with repeating fields, or if I need an additional join table, or what. Any advice appreciated. Thanks, Tom
  3. Hi, This is an interesting problem, and one that I've given some thought to in the past in the context of my work as a title attorney creating chains of title to parcels of land. I'm curious what the nature of your research is? Also, when you say you'd like to "show" the various incarnations, what exactly to you have in mind? Something like a map, or more of a narrative/textual history or report? Also, are you dealing with metes and bounds described tracts or PLS sections, quarter-sections, etc (assuming the lands are even in the U.S.)? At any rate, this is a classic many-to-many relationship, where a given tract of land could potentially have multiple child tracts and/or multiple parent tracts. This is usually dealt with using a join table. Taking this approach, you would need a table for Tracts (or parcels, or your preferred naming convention), that would include an ID field, a legal description field, and whatever other data you might want to track, maybe acreage, etc. You would need a second table to use as join table; I can't think of a meaningful name for it, so you could call it something like TractJoin. This table would have at a minimum a field for a parent tract foreign ID and a child tract foreign ID. You would then handle creating new records by script - for a tract that is subdivided into smaller tracts, save the ID of the parent tract in a variable, then in a loop create a new Tract record, save its ID in a variable, then create a new record in the Join Table, and set the parent and Child ID fields with the appropriate variable. For combined tracts, it would be the opposite - save each of the parent tract IDs in a variable, create a new tract record and get its ID, then loop through and create records in the Join table. I hope this helps!
  4. Hi, I have a solution set up that is hosted on a dedicated Mac Mini running FM Server 14; the container fields are set up to "Store container data externally" with the "secure storage" option checked. The field contents are all PDFs. I would like to write a script to open the field contents directly in Preview (or the user's default PDF viewer), but am not sure how to get the path where the file is stored, or otherwise how to proceed. Any advice appreciated! Tom
  5. Comment - perfect! Thank you so much. That did the trick.
  6. Hi Lee, Thanks for your reply. In my solution, I'm calling the CF and passing a number, and the result is written to a text field in a virtual list. The attached file is representative. My test data is "1/6000" for the expression (evaluated using the Evaluate ( ) function); if precision is set as 8 you get "0.00016667", which is correct. If you set it to ten, you get "0.+101666667", which I assume is the correct number is scientific format, but the result I want is "0.0001666667". Thanks, Tom CF_test.fmp12
  7. Hi, I've been using Geoffrey Gerhard's FormatNumberAsText custom function ( for quite a while and have found it very handy. It accepts a number as input and outputs a text string formatted to a specified number of decimals (among other useful things). In my solution, I've always specified 8 digits for the number of decimals and had no problem, but a recent project I've needed to specify 10 digits. With that precision, the function sometimes returns a number in scientific notation rather than decimal - for example 0..0e+107440 when I was hoping for 0.0000107440. I've looked at the function to see if there's anything I could change to make it always return a decimal rather than a scientific number, but frankly the logic is over my head. I was wondering if anyone here might have a suggestion. Thanks, Tom Here's the function: /* Function: FormatNumberAsText ( number ; currency ; separator ; decimal ; precision ) Parameters: number = the number you want to format currency = the string that identifies the currency or is a prefix - optional separator = the punctuation that breaks up big numbers - optional decimal = the punctuation that separates integer digits from fraction digits It defaults based on FMP's localization unless rounding is <= 0, in which case it's omitted precision = number of places for rounding - defaults to 2 if parameter is not a digit or is unspecified Purpose: This function formats numbers for use in text strings or calculations with a text result. It's especially useful when there are multiple numbers in a text string and at least one must be displayed in a different format than the others. Notes: Could expand to include colorization parameter (for negative numbers) Could expand to include choice of negative symbology for numbers < 0 Could expand to include trailing/leading parameter for currency notation */ Let ( [ t = Int ( GetAsNumber ( precision ) ) ; prec = Case ( Length ( t ) ; t ; 2 ) ; dec = Case ( Length ( decimal ) ; decimal ; Filter ( 1/2 ; ".," ) ) ; n = Round ( number + 0 ; prec ) ; sgn = Case ( n < 0 ; "-" ) ; n = Abs ( n ); x = NumToJText ( Int ( n ) ; 1 ; 0 ) ; y = NumToJText ( n * 10^prec ; 0 ; 0 ) ] ; sgn & currency & Substitute ( x ; "," ; separator ) & Case ( prec > 0 ; dec & Right ( 10^prec & y ; prec ) ) )
  8. I have the Apple Server software installed on the same machine as FM Server, but have not upgraded from 10.10 to 10.11. If I upgrade, would I just need to turn off all services in the Apple Server or would I need to completely remove the software? I'm currently running FMServer 13 and would like to upgrade to 14. tThanks
  9. Thank you for the reply. The Open Record/Request script step does exactly what I need.
  10. I am trying to come up with a way to keep multiple users from working with the same record. I have a main table of leases, and for each lease a user needs to create (or link an existing) record in an orders table. All of the data entry on the lease layout is done using global fields - user enters the order data in the globals, then a script trigger fires a script that either finds a matching order or creates a new one, then creates a link record in a join table. After a lease is processed, a flag is set in the lease record as "completed". Then a script takes the user to the next record that is not flagged as "completed". I'm aware of checking for error 301, to see if a record is locked. But if the user is just viewing the record (not editing a field's contents), I don't think that error will occur - and I'm guessing that if the user is in a global field, the record will not be locked? At any rate, I would just like to make sure that multiple users aren't taken to the same non-"completed" record at the same time. Any advice appreciated. Thanks!
  11. What sort of system are you trying to model, and what are some of the tables you plan to use? Depending on what sort of graph model you adopt, it may make a difference. I think the standard for Anchor-Buoy is to use 3 or 4 letter acronyms for your table, and then name the TO based on it's position in the TO group. For example, a table occurrence group consisting of People, Addressses and Phone Numbers, where the People TO is the Anchor, I would name People "PPL" (or similar), Addresses "ppl_ADDR"; and Phone Numbers "ppl_PHON". The point being to put the name of the actual table in all-caps, and to prepend the names of the anchor table and any preceding buoy tables in lower case. For join tables, I sometimes just use the two names of the tables to be joined as the name of the join table; for example, a join table between people and events I might name "PersonEvents"; but depending on your model, the join table might store additional info and have its own purpose, so you could call it "Registrations" instead of PersonEvents. There's website called Filemaker Standards ( that has lots of info on coding standards, naming standards, and so forth; but their standards are a little arcane, and from my perspective as an intermediate level developer, somewhat hard to grasp in some respects. If I were in your situation, I would be inclined to learn Anchor-Buoy first and get used to that. Then after your comfortable, you could move on to Selector Connector, which actually can be used in conjunction with anchor-buoy, rather than a complete replacement of it. Hope this helps. Tom
  12. I second Mark's recommendation of Todd Geist's video on Selector Connector model. There's a video on youtube that I found helpful in addition to Todd's video. Matt Petrowski does a good job explaining things for people - such as myself - who are not on quite such an advanced level.
  13. I'm glad to find this discussion. I have a solution that catalogs different types of documents filed in county courthouses, such as deeds, leases, mortgages and so on. Each type of document has different data to include, so it doesn't make sense to have a document table that includes fields for all of the separate document types (for the reasons that've been discussed above). Right now, I'm using an entity-attribute-value approach with a table for documents and a connected table of attributes. I'm running into difficulty using the attributes in calculations, so was thinking of changing to a model with a documents table, and then separate tables for each of the document types, such as lease, deed, mortgage, etc. I'm unsure of how to set up the relationship. From the perspective of validating uniqueness, it seems like it would make sense to put an id_any field in my documents table, that would hold the primary key of the related lease/deed/mortgage record. That way, I only need to validate in the documents table and the related record's table. However, since record creation will be done on a layout based on the documents table, it seems like it would be easier to put an id_document field in the lease/deed/mortgage tables. But then, for instance, for a lease document I would validate uniqueness in the document & lease tables, but would there be a need to also check the deed & mortgage tables? Thanks, Tom
  14. Has anyone been using FMP Server 14 in beta and have an opinion on whether it's ready for use in a production deployment? Or should I wait until a rev or 2 has be released and then upgrade from Server 13? Oh, and also the same question about FileMaker Pro 14. Thanks! Tom
  15. Hi James, I adjusted my settings to disable screen saver and prevent screen from turning off, and left my database open all night last night. This morning, everything was fine, and I had not been disconnected. So yes, I think it must be the same issue you have run into. Maybe this has been fixed in FMPro 14? (It's within the realm of possibility, but I wouldn't lay odds.) Thanks, Tom