Info and FAQ

PineCode DataBase Publisher FAQs

Q: What is DBP?
A: An example of useful publishing automation using AppleScript on the Macintosh platform. DBP can transfer data from your FileMaker Pro database to a Adobe InDesign document to create a catalog or to do a mail merge or... DBP can also handle pictures and even modify them on the fly using Adobe Photoshop. DBP is Open Source and Freeware. This means you can use it for free and if you want you can modify DBP to implement the features you need. So, you can use the DBP source code as an example to write your own program to do a similar job.
Q: How does it Work?
A: The DBP interface is simple. DBP has seven steps. Steps 1 through 6 are used for settings (you'll have to tell DBP which database to use, which fields to transfer, etc.) Step 7 runs an AppleScript to transfer your data. DBP gets the data from the first selected field from the first record. Then DBP goes to your InDesign document and searches for the first text frame with a data tag. The data tag is a text string or place holder you specified. It can be anything as long as you choose a unique text string that doesn't occur in the document at places where the text should not be modified. For example you could choose *[name]* as a data tag for a database field that contains names. When DBP has found the data tag for a specific field it will replace the data tag with the contents of the database field. Other text in the same text frame will remain untouched. DBP will repeat this until the data from all other specified fields for the first record is transferred to InDesign. Then it proceeds to the next record and does the same trick again, etc. When all data from all specified fields from all specified records is transferred, DBP saves the result in InDesign file format. Optionally you can let DBP export the result automatically.
  • If DBP encounters a container field that contains a reference to an image file, it will make a copy of the image file. Optionally you can specify a Photoshop action to modify all copies of the images automatically. DBP places the copy of the image in your InDesign document. (Hence, your original image files will remain untouched!)
  • Instead of transferring the data from all records to one InDesign document, you can also choose to generate an InDesign document for each record. This option is useful to do things like mail merges.
  • When you choose to transfer the data from all records to one InDesign document you only have to setup a master spread. DBP will calculate how many records will fit on a master spread and will add exactly enough spreads to hold the data from all records automatically.
  • You have full control over the order in which the records end up in your InDesign document. And of course you can transfer only a selection of records.
For more detailed information download DBP and read the manual. The manual also contains screen shots to show you how it works.
Q: Who should use DBP and what are the limitations, advantages and disadvantages?
A: DBP was written as a hobby just for fun. It can be used for free, but there is no support. There are no guarantees that it will work. So you can use it only at your own risk! If it doesn't work the way it should or if you would like new features to be implemented you can either get Xcode (the Mac OS X Developers Tools), download the DBP source code and create your own custom solution... Yes, that means programming, but AppleScript is very easy to learn! Or you can also send me an e-mail and explain what doesn't work or what options you would like to see in a future release of DBP. If I can find some time I'll look into it, but I can't promise anything.

As of version 4 InDesign comes with a data merge plug-in. This plug-in provides similar functionality as DBP, but there are differences too and both have their strenghts. I've compiled an overview of the differences between DBP and the InDesign data merge plug-in

There are also some commercial products (mostly InDesign plug-ins) that can be used for database publishing. Their availability isn't great, their pricing is steep and although they are expensive most of them don't support images. Some of them do support a bidirectional link between FileMaker Pro and XPress or InDesign. This means you can transfer data from FileMaker Pro to XPress or InDesign and back. DBP only transfers data from FileMaker Pro to InDesign and not the other way around. The available commercial products are usually written using a programming language whereas DBP was written using a scripting language. Programming languages are usually much faster than scripting languages and hence the commercial products are usually much faster than DBP. In fact, DBP ain't quite a speed freak, but hey, it's free and it's still much faster than doing the job manually!

Summarizing, if you need a product with support or when time = a lot of money, go get yourself a commercial third party InDesign plug-in. If speed is not crucial, take a look at DBP and the data merge plug-in that comes with InDesign. If you want to develop a custom solution, you might want to take a look at the DBP source code.

The "Publishing Report" website (German only) has a good overview comparing many features of tools, programs and complete publishing solutions for InDesign and XPress.

Q: How do I get the files from the downloads page?
A: Download the *.dmg.gz or *.dmg.zip file. Just click the link and your browser should ask you where you want to save the file. If your browser loads a page with weird characters instead use the back button in your browser to go back to the link. Control-click (or use the right mouse button if you have got one) the link. From the contextual menu that pops up choose Download link target, Save link as, Download link to disk or something similar (differs in each browser). The *.gz files were compressed with Gzip and *.zip files were compressed with the built-in archive fuction of the Mac OS X 10.3+ Finder. You can decompress both file types using the free Stuffit expander from Aladdin Systems. After decompressing you should have a *.dmg file. This is a standard Mac OS X disk image that you can mount using the Disk Utility application located in the utilities folder of the applications folder.
Q: Is there a version for Mac OS 9?
A: Yes and No. The DBP project originally started on Mac OS 9 with Quark XPress. An old version for this platform is still available, but it is less stable and won't be updated anymore. See the next FAQ below for more info. There won't be a version for InDesign on Mac OS 9 (That would require another complete rewrite of the project).
Q: Is there a version for Quark XPress or some other page layout software package?
A: Yes and No. The DBP project originally started on Mac OS 9 with Quark XPress 4.1. An old version for this platform is still available, but it is less stable and won't be updated anymore. The old version includes some example files, but the documentation is very limited. Quark XPress has a buggy AppleScript support. Even in minor updates of XPress lots of bugs in the implementation of AppleScript are solved (and unfortunately also a bunch of new ones are introduced.) Therefore there are NO versions of DBP for Quark XPress 4.0 through 4.0.4 or 4.1.1. I haven't tested DBP with XPress 5.0, but I would be surprised if it works... I strongly recommend you use the new version for InDesign and Mac OS X, but if you really really really want to use the old version for XPress and Mac OS 9 you can send me an e-mail to request a copy of this DBP version. XPress 6.0 for OS X will have to have some freakin' awesome implementation of AppleScript to make me rewrite the entire project again. UPDATE: Well, finally Quark has released XPress 6.0 for Mac OS X. I have tried the demo version. It has a large AppleScript dictionary, but I couldn't find anything to get really excited about...

Other page layout software packages are not supported, but you can use DBP to let InDesign automatically export the generated document(s) to several file formats
Q: Is there a version for other databases or data sources?
A: No, but... FileMaker Pro can import various database formats. It even has a special option to turn a MicroSoft Excel document into a simple FileMaker Pro database. Or you can try to export your data in XML format and import that directly into InDesign.
Q: Is there a version for other platforms like Windows or Linux/UNIX?
A: No, there is no Windows version and there never will be one. FileMaker Pro, Adobe Photoshop and Adobe InDesign are available for the Windows platform, but the glue that holds DBP together is not. DBP is written in AppleScript, which is only available for the Mac OS platform. The Macintosh versions of FileMaker Pro, Adobe Photoshop and Adobe InDesign speak AppleScript making it possible to let these applications work together. The Windows versions don't speak AppleScript. They speak Visual Basic for Applications (VBA) instead. VBA on Windows might be used to write an application similar to DBP, but porting DBP to windows is impossible. It would require a complete rewrite of the code on an operating system, that I consider to be a pain in the *ss. (I've worked with Windows boxes for years so I know what I'm talking about!)

There is also no Linux/UNIX version as FileMaker Pro, Adobe Photoshop and Adobe InDesign are not available for any Linux/UNIX flavour nor is AppleScript (the glue that holds DBP together). But who knows, maybe one day...

Q: Can I export the output to other formats than the InDesign file format?
A: Yes, you can! DBP always saves it's result in InDesign file format. In addition you can let DBP export the generated InDesign document automatically to any of these file formats:
  • PS (Both device dependent PostScript and device independent PostScript)
  • EPS (Encapsulated PostScript)
  • PDF (Portable Document Format)
  • XML (eXtended Markup Language)
  • SVG (Scaled Vector Graphics)
  • INX (InDesign interchange format)
Of course you can also export the result manually from InDesign if you want.
Q: Why is DBP so slow?
A: Well, DBP ain't a speed devil, but it is definitely faster than doing the job manually. If you have to copy and paste data from FileMaker Pro to InDesign manually at the same speed as with which DBP does the job, you'll have RSI within 10 minutes! Other things to consider:
  • DBP was written using AppleScript. AppleScript is great but it ain't the fastest scripting language out there.
  • InDesign is great, but it ain't a speed devil (yet) either. Especially searching for data tags in templates, creating pages and overriding the master page items on new pages to create page items is rather slow.
  • Don't sit behind your desk staring at your monitor waiting for DBP to complete it's job. Let DBP run overnight instead, come back the next morning and admire the result!
  • If speed is a really big issue, buy a commercial plug-in for InDesign or XTension for XPress.
  • If you have any ideas on how to speed up the entire process or know how to optimize the source code, let me know!!!
Q: I selected a database, but I can't find the fields I want to transfer in the list of database fields. What is wrong?
A: You have selected the wrong database file. Sometimes a FileMaker Pro solution consists of many files. Usually, there is one main database file you open. This file might even contain only (a part of) the graphical user interface and no fields and records at all! Using FileMaker scripting this file can then open many other files. Therefore, navigate in FileMaker Pro to the layout that contains the cells whose data you want to transfer. Now take a good look at the window's title bar, because it shows you the name of the file, whose layout you are looking at. Locate this file and select it in DBP.
Q: I selected a template, but DBP can't find some of my / any data tags in the template file. What is wrong?
A: All versions:
  • Check the preferences for the data tags. Go to menu DBP -> menu item Preferences....
  • Make sure you've put your data tags in text frames and NOT in nested (master) page items like tables in text frames or in text frames that are part of a group of (master) page items.
  • When you want DBP to add pages automatically based on a master spread, the data tags must be master page items on a master spread.
  • When you want to use existing pages in your template for the data transfer, the data tags must be page items (i.e. NOT master page items) on spreads of your template.
  • Check the spelling of your data tags. Data tags are case sensitive!
DBP up to version 4.0v1:
  • Make sure your data tags don't contain spaces or numbers.
  • Make sure the part of the data tags between the prefix and the suffix doesn't contain characters other than letters. (Hence only use [a-zA-Z], no spaces, no numbers, no underscores, no dashes, etc)
  • Make sure your data tags are not longer than the maximum data tag length, which can be changed in menu DBP -> menu item Preferences....
DBP version 4.2b1 and up:
  • Make sure all the parts (prefix, middle and suffix) of the data tags don't contain any characters that can be interpreted as special GREP meta-characters. Check the InDesign documentation for which characters function as GREP meta-characters.
  • You no longer have to worry about a maximum length for datatags, but try to keep them short and descriptive. You can use spaces, numbers, underscores and some other symbols in data tags now.
Q: The data ends up in my InDesign document, but in the wrong order. How do I change that?
A: The order in which the data is transferred from FileMaker Pro to InDesign depends on 2 things:
  • Firstly, you must make sure your records are sorted correctly in FileMaker Pro.
  • Secondly, the order by which DBP places data in frames of an InDesign document is determined by the stacking order of those frames. For example, if you have two objects on a page and you would have them partially overlapping, you will see that one is on top of the other (i.e. one is the frontmost and the other the backmost object.) Use menu Object > submenu Arrange > Send Backward or Bring Forward to change the order of the objects on your (master) pages. The frontmost object that contains a certain tag will be the first object whose contents will be replaced with data from the database, etc., etc. and finally the backmost object will be the last one on a page whose contents will be replaced with data from the database. Refer to the manual for more info.
Q: Help, I think DBP crashed! Now what?
A: Are you sure DBP really crashed? Especially creating pages and overriding the master page items on new pages to create page items can be slow. If the progress bar is still getting longer from left to right, DBP and InDesign are still working hard to get your job done. While DBP is running you can activate InDesign by clicking it's icon in the Dock. You can navigate through the document, zoom the document's window and activate the pages palette to monitor the progress and see what is actually happening in InDesign. (While a data transfer is in progress InDesign will respond slowly to your mouse clicks, so be patient...) Don't do any other things in InDesign as it might interfere with what DBP is trying to tell InDesign to do and/or cause time outs. Sit back, relax, have another drink and wait for DBP to complete it's job. If you want to make sure DBP is still running, use something like Applications -> Utilities -> Activity Viewer or the unix tool top.

When you are sure you've crashed DBP (or running DBP caused FileMaker Pro, Photoshop or InDesign to crash) and it didn't quit unexpectedly, you can kill the application by pressing the [command]+[alt]+[esc] buttons or you can choose Force Quit from the Apple menu. Please send me a bug report if you can't find a solution yourself and if the error is reproducible. Preferably send me some example files, so I can reproduce the problem. I'll see what I can do...
Q: Help, I think I ran into a serious bug! Now what?
A: Please go to the contact page and send me a bug report! I'll see what I can do...
I develop DBP as a hobby in my spare time, so I don't have the time to reply to e-mails about problems whose solutions are from the RTFM category.
Q: Are there known issues / bugs in DBP?
  • DBP was not tested by the author for compatibility with UFS or Unix formatted (hard) disks nor with volumes on a network. It was only tested on a stand alone machine with HFS+ formatted hard disks. It was only tested with the versions of other software packages listed in system requirements. DBP was not tested with third party plug-ins for FileMaker Pro, Photoshop or InDesign.

    16-07-2003: DBP was reported to be incompatible with the InFlow plug-in for InDesign. (The combination crashes InDesign.)

    I have no idea whether other setups will work or not. When you've tested another setup I would like to hear from you!

  • Currently you can NOT use data tags in nested page items. DBP expects to find data tags in text frames on a page / spread. When you group text frames together, when you use tables in text frames or when you use some other form of nesting, DBP won't find data tags in those nested objects. You can put multiple tags for textual data from the same record inside the same text frame and you can use layers if you want. Tags for image data should always be put in their own frames.

    07-04-2004: As of version 3.0b8 DBP can also work with data tags in text on a path of a page item. Support for tables is planned for a future release, but not yet implemented. Other forms of nesting remain unsupported.

  • When you use a Photoshop action to modify images on the fly, Photoshop might popup dialogs under certain circumstances (even though DBP tells Photoshop not to popup dialogs). For example, Photoshop will popup a dialog with save options like image quality for the JPEG file format, when the images are in JPEG file format and were not previously saved with Photoshop.

  • Currently you can NOT elegantly abort a data transfer. The only way to abort a data transfer is to Force Quit DBP.