My apologies: I'm sure the topic is talked about somewhere but couldn't find hints that help me.
I have a Filemaker Pro 12 runtime for billing and accounting and I am noticing how end-users need to customize invoice printing in their runtime solutions. (Layout mode is not available in runtimes, thanks god...) The runtime works very well and is stable, but I have found myself customizing the print layout for users who have a so different Logo, need other sizes of text, want the Payment details in another place... hat the pagination, want the whole invoice on one page at all cost... My runtime is a monolithic file at the moment: I had not developped it for separation of data from layout. Instead, users get updates where they can easily reimport their data. This made development faster for me.
What is a good architecture to enable end-users to use or even create own print templates? What's your experience?
Approach 1) XML plus Xalan XSLT
I think of using the export records script step to spit out an xml. I have already implemented this successfully, and it works perfectly in the runtime. However, it s not really easy for me to create an XSLT stylesheet which filemaker accepts. I had used Altova Style Vision 2014 to create XSLTs, and within Altova I got very cool results (from HTML to RTF up to Word 2007+ invoices). However, filemaker, which accepts XSLT stylesheets for XML export, gave me errors on the XSLT. I realize Altova is not compatible with the Xalan system from Filemaker. As I am really an XML beginner, I hop to find an XSLT editor that is compatible with filemaker 12 pro Advances. Do you know of one? What do I need to look out for? Also: Do you know if Filemaker's Xalan implementation is capable of producing RTF or Word output with the XSLT, or only HTML? (..printing and HTML is no fun...)
Approach 2) Separation: Create a second Filemaker Solution that works like a template engine, holding no data other that print data.
Import the to be printed data into another small Filemaker runtime which I name "print templates".
Not sure if this will work, but I think of somehow sending the data to a second runtime which I yet have to create. This runtime would feature all kinds of templates - and I could make new templates available for download. Even thought end-users will not be able to customize this, I could develop the "print templates" easily with the rich features Filemaker offers and thus cater for about 90% of the requests I have for these templates.
A third appoach seems to the IWP in connection with FPDF.org, but I don't like the dependency on the web for the print process (my users often do not have web access). Also, I am no good at PHP.
What do you think is really feasible? Will I have to go through the pain and learn all about XSLT and XML or is there a "Filemaker friendly " editor (maybe stylus- studio?). Or will it be easier and faster to introduce separation and say good bye to the thought of enabling users to customize their layouts themselves?
Is there no other, simpler way? For example dumping the XML to Open Office Org Writer...(did not try).
Your help is very much appreciated! Thanks for any hint or URL. Pleas reply if you have done something similar or know of a post that might help here!
My best regards,
PS: I attached an example PDF (invoice from Therapist John Doe to his client)
I like RTF more than PDF because it s cross-plattform, compatible with many applications inkl. Open Office / Libre Office and the user can edit the file before printing.
example.rtf 93.6 K