Cardbox Talk


CardboxForumsCardbox Talk > "Qunatum Leap (18 years)"

Qunatum Leap (18 years)

CPM/+ 8bit Amstrad

Posted By Post


28-Aug-2012 08:31

It's been 15 years since I used Cardbox. Back then, it
was on an Amstrad running CPM/+. Now, with diminishing
memory power, I'm contemplating recording all sorts of
things, using an XP windoze machine.

Rather than just 'use' Cardbox, I actually designed the
two databases in the organisation I worked for, so I had
some 'back-end' know-how. Merging the cardbox databases
using Locoscript mailmerge was something I initiated
and customised, too. Now, it's just for personal use.

Any long-in-the-tooth forumites who have followed (and
kept up with!) the changes of the years got any pointers
and/or experience to proffer?

First item is a couple of contacts databases. That said,
what is a good way of extracting data on a conditional
instruction basis, to create a hard copy list? As in,
what software to use. Word seems very limited in its
options? Open Office? Libre Office? Something else?

Tally ho!


28-Aug-2012 09:35

For you hard copy you can easy print from Cardbox in almost any wished format. Make a special format for it!
I you need a more complex output, then you can use macros for it en use Word as report generator.
Communication between Cardbox and Word/Excel is by Cardbox macro's as well as Word/Excel macros perfect to arrange.

That is something different with Open/Libre etc Office because these programs are not so easy (as MS Office) to manipulate with vbscript=Cardbox macros.
Not so easy, however, possible. Last month I succeeded the content of a record using a Cardbox macro (which did not write to disk or did use the clipboard), insert into a new generated Open Office Writer document. But to now to Calc.... Not so easy as Excel and there are not much examples to find.
Open/Libre Office is not developed (only) for Windows and has it own macro language. There are only developed some 'friendly' gates of approaching Open Office with VB Script.



3-Sep-2012 00:32

Howdy, Bert

Do you have enough wrinkles to remember Locofile and Locoscript?
Locofile was simply the neatest little pop-up database EVER! I used
to write the mailmerge files for Locofile, as I once did - long ago -
for Cardbox. Again, that was using Locoscript, using its mailmerge
programming options. Despite being 8-bit@4Hz and as slim a program
as was necessary for minimal memory machines of the era, I've yet
to come across anything contemporary that combines such splendid
simplicity and amazing sophistication: all in one. They had the
KISS principle well worked out, way back then.

My present idea - if possible - is to duplicate that combination,
using Cardbox and whatever mailmerge word processor does the best
with the Cardbox datafile contents.

As I dimly recall, the datafile was merged with the mailmerge word
processor file, using the automatic mode. That word processor doc-
ument started out by defining some text items as (printed) field
identifiers. E.g. Bus Tel: Cell: Home Tel: Bus E-mail: Home E-mail:
Comments: and so on.

The mailmerge document had lots of conditional instructions in it.
E.g. If comments field contained the word redundant, skip to next
record. If Home Tel field was *not empty, insert field identifier
[Home Tel:] then the contents of the Home Tel field, then a full
stop, then move on to test the next field. When that entire record
was processed, proceed to the next record until all records in the
database had been processed.

* There was some odd reason why a double negative worked better. Not
empty functioned better than asking if the field contained content.

So if I dabble with Cardbox afresh, after all these years, will I be
able to find a word processor (or some other way) to extract and
process the data into a tidy print out, I wonder?


3-Sep-2012 05:58

Been doing some more reading and investigating, today. My initial
assessment is that developing the mailmerge is going to be among
the harder parts of this effort.

Today, I created a new d'base (Boy! Is it different from the ol'
CPM+ options (of which there were few). I also need to look into
the book to see what import options are available. The dilemma
with that is (although I can export the old data as ASCII) whatever
changes I make to the fields are going to create match problems
if/when the data is imported.

I may have to re-enter the data manually. However, before making
that effort, it would be nice to have a better appreciation of
the print-out options. Either direct or via/into a word processor.

Charles Welling

3-Sep-2012 09:11

Before you are going to do this the hard way, i.e. trying to use all kinds of external software to create printed copy, have a look at the built-in options of Cardbox. Perhaps they'll suit your needs very well.

If however you want to use complex conditional statements, consider the following option:

Create a custum "reports" database. Do you want to print 5 fields? Give it 5 fields as well. Write a macro that handles all your conditions, make it read the records that you want to print from the main database, add all the comment, headings or whatever and write the resulting report to the reports database. Print the hard copy from Reports.

An added bonus is that you will have digital copies of your printed output in your Reports database. Even when the main database changes, your Reports database will stay as it is. And of course you can have as many Reports databases as you wish.


3-Sep-2012 09:33

Old databases often can export data as "comma delimited" or ASCII.
Mostly is that the format we call today "CSV".
Sometimes you can only export to DBase. In that case you have to import it first to Excel (or Calc), then save as csv, then import it in Cardbox.
This will succeed then.


PS Good suggestion from Charles.
However this needs some macro knowledge of Cardbox.
Sometimes mailmerge in Word is a little easier for some people because this can be done in the user interface.


3-Sep-2012 09:52

Thanks, Charles. I'm not seeking to do this the hard way. Not for a moment.
If I can get the same printed output from within Cardbox, so much the better.

The conditional instructions need not be all that complex, for my needs.
Two main objectives:
1) skip certain records that are not wanted in the printed output;
2) skip empty fields in desired records so that I don't have empty lines.

I.e. I don't want this:

Home Tel: 1928374
Home Fax:
Home Email: furry@thecat.com
Home URL:
Work Tel: 7685940
Work Fax:
Work Email: rooster@thehenhouse.com
Work URL: www.thehenhouse.com

Rather, this:

Home Tel: 1928374
Home Email: furry@thecat.com
Work Tel: 1928374
Work Email: rooster@thehenhouse.com
Work URL: www.thehenhouse.com

I did a few mail merges out of the Locofile d'base today. I suspect that
I can either manipulate the resultant ASCII data to make an import work;
Or (more likely) do it manually, as there's only about 60 sets of data to
key in. Be different if it was hundreds or thousands. A good rainy evening
or wet day job.


3-Sep-2012 09:57


Sixty to start with. The output containing all the redundant records
was a lot bigger. I may re-key some of those, but the rest are pro-
ably well consigned to the dustbin of my personal history, methinks.
Well, maybe. So long as it doesn't 'die,' or I don't throw it away,
I could still exhume the data from the old W2kP PC, if necessary.

Charles Welling

3-Sep-2012 13:25

Skip certain records: that depends on your selection. You can easily exclude records that do not meet certain conditions. But once you start printing, all records are used. None are skipped halfway the process.

Do not print empty fields: standard option in merge blocks. Merge blocks are used in your formats to combine fixed text with the content of fields. There are two options: "omit text if all fields are blank" and "display text only if all fields are blank".
The first option will prevent that any empty fields are printed, in which case "Work Fax:" will be omitted.
The second option makes it possible to do the opposite, i.e. to print a comment in case the field is empty, such as:

Work Fax: Sorry, no fax available.


5-Sep-2012 08:51

From what you're describing, the Printing options now available
from within the program are far more sophisticated than the few
I can remember from long ago. Sounds good. Any 'print-type' tem-
plates (merge blocks) available which you suggest that I peer at?

Charles Welling

5-Sep-2012 11:28

I have the impression, correct me if I'm wrong, that you are eager to know everything about Cardbox 3.1 before you've even started using it. Just give it a go, and you'll see how absolutely simple it works. Even merge blocks are simplicity itself: draw a box on the screen, enter fixed texts, enter the fields you want to print at the appropriate places within the text and that's it really.
You could try to experiment with the options. There's no such thing as a print formats and a screen format. They are just formats and they will show on the screen in the same way as in print. That means that any change in your format with immediately be reflected in the screen layout.

This is really basic knowledge of the programme which you can dig up from the help file.


5-Sep-2012 12:48

I completely agree with Charles. Just give it a go to see how simple it is. I begun using it around 1980 and it is still as good and uncomplicated as ever for a simpleton like me; and one of the best things is right here. The support even after all this time.


12-Sep-2012 07:38

Yes, Charles, a fair observation. I was very familiar with the CP/M+
version[s], but they were very limited in their functionality. And it
was a long time ago! In some ways, given the likely significant var-
iations, it may be said that I'm almost starting from scratch, now.

"Even merge blocks are simplicity itself: draw a box on the screen,
enter fixed texts, enter the fields you want to print at the appro-
priate places within the text and that's it really." - Charles
(not sure that BB Code quoted text works, here)

My main reservation was that I might embark on the creation of the
Cardbox database, put in a lot of work, then find I could not get
the print output that I wanted. That's a potential pain of past
experience that I want to avoid repeating. Many of the alternatives
which I've tried have exceptionally limited attention paid to the
printed output options.

I have started. One of the earlier differences I became aware of
was the need for less structure. To explain: my original cardbox
database 'template' had multiple fields for an address. E.g.

Seems that's 'bad form' with the Windoze version. In the database
template that I've since prepared as a substitute, I have one Address
field, but one with three lines, instead of the 'ancient' example
I've given, just above.

Live and learn! (By trying. And reading the manual)

© 2010 Cardbox Software Limited   Home