|· Hosting provided by Anduin.net / Øverby Consulting ·|
|Anonymous | Login | Signup for a new account||2015-03-28 02:47 CET|
|My View | View Issues | Change Log | Roadmap|
|View Issue Details|
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0000990||Scribus||Plug-ins||public||2004-08-23 20:12||2013-02-24 16:47|
|Target Version||Fixed in Version|
None of the info I have read or demos I have seen indicates SCRIBUS has an out-of-the-box simple mail-merge capability - for letters or adress labels (many records per single sheet of paper). I really need this feature - badly. I can do all the pre-filtering with a database product or etc, so the capability only needs to be reasonably simple. I also really don't want to have to learn Python to do this myself -- will take me far too long.
thanks a lot
|Tags||No tags attached.|
that sounds like a job for e.g. openoffice.org (to me).
Maybe one day we will have an_universal_database_connector in scribus but today is the only way the Python Scripter.
I cannot speak in the name of the others but I think you will wait very long time to this ;)
Try to ask at the mailing list - maybe somebody will write script you need exactly for you.
In answer to 'maybe this is more suitable for e.g. OpenOffice' - I have used a very old but truly excellent DTP program - PublishIT Easy (PIE) on my Mac (this is totally different from a PIE which is available on a PC) which many readers may be familiar with. PIE as a company died around 1994, but I still use the program almost every day.
It contains a simple but very very useful GUI-driven mail-merge capability, which I have found invaluable - the input file is nothing more than a simple flat text file, where the first line contains the field names (comma or tab separated), and the other lines contain data. One can do mailings with one record per document/letter, or many records per document/letter (for address labels). One can also step through the records to see what the document/letter looks like when the data is plugged in, and print particular pages accordingly. [Note that the flat file can be easily produced as a result table/simple report from any decent database program, or as a simple export from an Excel spreadsheet.]
I would greatly apreciate this as a plug-in, but do not have the programming experience to pull it off easily - someone really skilled in Python could probably put something quite useful together in 16-24 hours
Mail Merge (or database merge, 'cause its pretty useful for a lot of things) would still be nice as a direct feature of Scribus. It could help in generating print catalogs from a database, and it *is* very handy if you use Scribus for any kind of newsletter. I reboot to Windows just to print a monthly newsletter with PageMaker 7, because the layout is too involved for OpenOffice.
BTW--Mailmerge in PageMaker 7 is handled by a (default) plugin. It works like a charm, but it cannot do the merge at print time. Instead, it creates a new document with the merged records. If you have a fairly complex layout, it consumes quite a bit of memory to produce, say, 500 merged records.
So what we want is :)
- Integrated database-merge, with the option to merge to individual pages in a new document, to merge to seperate documents or to merge at print time.
|I did a primitive mail merge script in Python a while ago. Now that there is support for PyQt and frame annotations in Scribus, I think a fairly solid mail merge feature could be done in Python.|
|database merge to create new documents or new pages, would be great for some of my projects as well, such as designing playing cards. If I could specify the image to go into the image frame, and the text to go into each text frame, as well as colours etc in a database it would make this type of project much faster, easier, and more precise.|
One of my students is considering writing this plugin as bachelor project. Could you help me with more formal specification of the project? Please provide your requerements: functional, not functional or design.
My points: create genral source input for various sources (XML, CSV, SQL database), ability to read Scribus document templates, ability to read information from these sources and print documents (printer, PDF), configuration dialog with source configuration (file, database connection + definition of fields to read + some basic conversions for all fields - e.g. uppercase, lowercase, replace, trim, strip.
Non functional requirements: Python + PyQT for dialogs, the datasource API to be general (to allow use in other plugins or Scribus some day).
Please comment this, thank you.
Just for terminology:
* "plugin" is C++ code called by dlopen() etc. Dynamically loaded into scribus in start phase.
* "Python script" or "scripter script" is Python script or more files called by "Scripter plugin" (yep, written in C/C++) when scribus is running.
I'm afraid there will be some issues with PyQt due the limitations of the Python sub-interpreters.
I suggest the student should start with "backend" - creating mail-merge from various formats. GUI can be added a little bit later. There is a lot of to do with various RDBMS support.
|Proper mail merge *requires* the new text engine. Mail merge has been discussed and will be supported better in 1.3.5 or 1.3.6.|
no problem Craig ;)
Bohuslav Ječmen (the student mentioned above) is working on "scribus independent" python "data getter". We expect a bag of classes to get the data from various sources transformed into documented format (some kind of dictionary or whatever). The scribus integration part will follow and it should be very simple today - with the easy way to replace with something more exact (depending on the NLS).
I think it will be great ;)
What do you think about http://bugs.scribus.net/view.php?id=4467 [^]
i missed the Mail Merge functionality in Scribus as well. i have implemented an extension script in Python called SRIBUS GENERATOR which could fit your need. it replaces text with data and it is easy to use with a self-explanatory UI. have a look at: http://www.ekkehardwill.de/sg/ [^]
|2004-08-23 20:12||walter||New Issue|
|2004-08-23 20:34||subik||Note Added: 0002196|
|2004-08-24 22:41||walter||Note Added: 0002217|
|2004-09-14 04:20||packetbell||Note Added: 0002373|
|2005-06-23 09:24||ringerc||Status||new => acknowledged|
|2005-06-23 09:24||ringerc||Note Added: 0005098|
|2006-05-13 23:38||christoph_s||Relationship added||related to 0003813|
|2006-06-17 06:23||porter235||Note Added: 0011656|
|2006-10-12 12:29||zapletal||Note Added: 0012935|
|2006-10-12 12:57||subik||Note Added: 0012937|
|2006-10-29 21:59||subik||Status||acknowledged => assigned|
|2006-10-29 21:59||subik||Assigned To||=> subik|
|2006-10-29 22:22||cbradney||Note Added: 0013180|
|2006-10-30 08:10||subik||Note Added: 0013182|
|2006-11-05 00:36||jeffz||Note Added: 0013276|
|2006-11-06 08:20||subik||Relationship added||related to 0004467|
|2010-12-10 15:38||ahappyday||Note Added: 0025016|
|My View | View Issues | Change Log | Roadmap|
|Copyright © 2000 - 2015 MantisBT Team|