Just a thought.....
Could you mimic the form on FM? Have users enter the information needed in FileMaker on a layout that looks exactly like the form. Then they click a button and their info gets exported to a PDF document that opens automatically.
That way they get the file and your database keeps the information.
You might also take a look at SuperContainer: http://www.google.com/url?sa=t&source=web&cd=1&ved=0CBUQFjAA&url=http%3A%2F%2Fwww.360works.com%2Fsupercontainer%2F&ei=DugPTOTYAYj2NKmu2a8M&usg=AFQjCNEUSiFMkkbcMMMl-M2TltqtW95icA
I thought about that, but there are too many and not information I really want to track in the database. Plus it would be very time consuming for me to format them in the database and then if there is any formatting or pagination that needs done later, it won't be easy like in Word. There are a couple forms I'm considering putting in there like that, but not most of them.
Thank you for the input though! :)
You can script Export Field Contents. So you could export a file embedded in a container field to the user's desktop, with no interaction needed. The only question is whether the file name needs to be unique; which you can do with an added timestamp.
Set Variable [ $path; a calculated full FileMaker syntax path to the desktop ]
Export Field Contents [ file_embedded; $path ]
I also considered running a script that would automatically download the file, but then the file is saved on their machine and I really wanted to give them the choice of whether or not they want to save and also where to save the file. Hmmmmm..... still can't decide what I want do. :)
Can you further explain "calculated full FileMaker syntax path to the desktop"? Every time I try to use paths (usually via a "get" function), I just can't seem to make them work. :(
I think I finally got it! I used a Variable like this:
Let ( [
MAC = "filemac:" & Get ( TemporaryPath ) ;
PC = "filewin:" & Get ( TemporaryPath )
Case(Abs(Get ( SystemPlatform )) = 1; MAC; Abs(Get ( SystemPlatform ))= 2 ;
PC ) & GetAsText ( 'fieldname here' ) )
It opens the file, but doesn't appear to save it anywhere. So, the user can work in it and save or simply close without saving.
The only thing that would make this even better would be if I could make the fieldname variable. For example, instead of having a script or parameter for each field, to somehow tell it to use the field that the user is clicking on. ?? Hmm .... off to figure out more! :)
In your example replace "GetAsText ( 'fieldname here' )" with just table::textField or Get (scriptParameter) and you should have exactly that.
Thanks Phil. I replaced it with Get (scriptParameter) and it works. I still have to create an unique export for each parameter, but that's not so bad, I guess. I don't suppose there is a way to calculate the target field based on which field is being clicked on?
Well isn't that what you get by passing a parameter and use Get ( ScriptParameter )?
You can use the same script for several buttons (Can be fields if you want) and just pass the data as a parameter. When you set your button up, you can use an expression that extracts the text from a field as your parameter. ( ie. TableName::FieldName )