I can replicate this behavior in WIndows Xp on FileMaker 12 for all the functions you list except WindowNames. That one still works when I rename a database file to include an extra decimal point.
And including the file extension does work around this issue. I was able to modify the Get ( FileName ) call I ususally use in these functions to be:
Get ( FileName ) & ".fmp12"
to get things working. Knowing that, I can construct a different version of this expression that will append the correct file extension for the current file.
This is still a problem in FMPA 13.03. I just ran across this bug again trying to use 'get(filename)' function to feed into the 'fieldnames()' function. Very strange, and...still present.
Putting quotes around the name (i.e. quote(get(filename)) doesn't help. Escaping the period doesn't help (e.g. substitute ( get(filename) ; "." ; "\." ).
As Phil noted, though, if you re-append the file extension to the name, it is happy again: get(filename) & ".fmp12"
Thank you for your post, and I apologize for not responding to the original post.
Our Development and Testing teams are aware of this issue. I have attached your post to the original report, When more information becomes available, I will let you know.
The FileMaker Pro 14 Help for “Creating a FileMaker Pro file” states:
“For files you plan to host on FileMaker Server, avoid using more than one period in FileMaker Pro filenames. The filename should include only the period before the fmp12 filename extension.”
Interesting; is that a new suggestion with 14? I don't recall if my test situation was on a local file or a server-file, either.
But in some respects that appears to not quite align with experience, though: if you re-append the file extension (including another period) it would work fine. So it works fine to have multiple periods as long as you provided the full file extension. Again, not sure what the exact test environment was.
That advice must be addressing a different issue, since it strongly implies it is only dealing with Server issues. This bug (and the one Fred linked to below) happens on local files, not just hosted ones.
Any follow-up on this? The bug persists in FileMaker 14. And, the bug happens on local files, not just hosted files, so the advice mentioned by ntaylor is not sufficient.
I usually avoid putting extra periods in my FileMaker file names (partially because that server-related advice has been around for over a decade, I believe), but the documentation should be more emphatic on this, unless the Development and Testing team intends to fix this bug.
TSGal, can you let us know if there is any motion on this? At the very least, the documentation should explicitly say "Do NOT use periods in a FileMaker database name, except immediately before the file extension." This bug has been around for at least versions 11 through 14 (I just tested on 11, 12, 13, and 14), and I believe it has been around in versions since the functions in question existed (it's been too long for me to remember for sure). In the bug report I submitted, I have detailed instructions on how to demonstrate the bug exists (using LayoutNames, but all design functions behave similarly), as well as a nonsensical "work-around" that makes the functions return results again.
Someone in the other thread pointed out that the documentation for the Design functions does say to include the file extension of the non-file-extension portion of the file name contains a period:
That is good advice, when possible. But, sometimes you are not hard-coding a file name into a call to a Design function (in fact, it is usually unwise to hard-code a file name like that). Instead, you should be better off using Get ( FileName ), if you want to get some design information about the current file. But, then the functions break if your file name has a period in it.
It seems the real problem is with terminology: it seems like the development team at FileMaker is using an inconsistent definition of what a FileName is, as reflected by the way different functions handle it differently. Perhaps the Design functions could be rebuilt to first TRY the name sent in before stripping off whatever comes after the last period? That would make them work as expected when they are called with a non-file-extension file name as the parameter, but also switch over gracefully to stripping off the file extension if the user sent that as the parameter.