In addition to the below, you'll need to think about what database you
want to use. With Base, you can use the built-in HSQLDB, but from all
reports you really don't want to do that. I'd suggest setting up
something like PostgreSQL or MariaDB on your machine, and using that
with Base as the frontend.
I'm not sure how much you know about this stuff or how closely you've
been following the discussions on this list regarding Base database
backends, but it isn't really that hard from what I gather, and it's
best to start off with a good setup, although you can opt to start off
simply with the builtin backend and migrate later, but that will mean a
little more work down the line.
On Fri, 8 Aug 2014 13:04:18 -0700
Joel Madero <firstname.lastname@example.org> wrote:
when I make the form to enter new data (ie. a new read book) can it be
designed to where it searches the current books in Books table and
then if, and only if, it doesn't find a match (based on author + book
title), it starts a new form for me to enter new data?
This probably requires a macro in Base, so I'm not sure exactly how
complicated this will get, but yes, it should be able to do this. With
constraints on the database (like a unique key on the author and
title) it should prevent you actually entering duplicate data (barring
a misspelling), but you of course want to know about that situation
before filling in the whole form, so probably a macro, or a button to
check the table for the book, before you continue filling in the form.
It should also be easy enough to make a search screen to find books in
the table, which is probably something you want anyway. So you could do
this before entering books that might already be in there, but that is
then a two step process, instead of the more straightforward process as
described above, although probably slightly simpler to set up.
This is something I would leave out for now, just get it working first,
then add these sorts of helpful things once the basic design is working.
For a series, is there a way for me to do like "enter a series" and
then it would prompt ("how many books in this series") and when I
put in 5, it would then auto fill author + series name, so all I have
to do is enter book titles for the 5 books and all 5 would be added
to the Books table?
This should be doable. I'm not sure exactly how to do it in Base, but it
is probably simplest with something like two entry forms, one that
just enters a single book, and one that takes an author and series name,
but a list of titles. Or maybe just a button on the entry form that says
"Add next in series", that would re-bring up the entry form with those
Again, probably just get a single book entry screen going first, then
add or adapt it to do series.
Reading books twice - I don't do this often, but when I do, I expect
the pages to count twice. Best way to accomplish this is to have
another field called "Count" and then page count would be Page Count
* Count (# of times read)?
Best to call this something like ReadCount. You want your names to be
descriptive, without being horrendously long.
So the table would have a PageCount and a ReadCount, and any report
that you design would have a field called ReadPageCount, that would
show PageCount * ReadCount, but it wouldn't be stored in the database
(no need, and it would again be a case of duplication).
I'm getting excited about this as I've come up with another cool idea
that might be easy. I'm going to link books to the library, so for
"next book in series" would be a link that I could click and easily
put on hold at the library :) I think that this would be both awesome
and relatively easy (assuming the library has a standard method of
searching which I suspect it does).
You would need to have some way of interfacing with the library system,
but yes, assuming they have such a thing, it can be done. Again, I'm
unsure of the limits with Base, but it is probably doable through a
macro. This might be a bit advanced, I'm not sure. Best to leave it
till all the rest is working :)