Documentation/OOoAuthors User Manual/Base Guide/Planning
This is the place to list topics to be covered in the Base Guide, and organise them into an outline for the book. Feel free to add or change things on this page, and annotate what you add or change. You can use the Discussion tab to discuss ideas with others working on this book.
See also this page of Base FAQs and this section of the OOoForum. Andrew Pitonyak and Drew Jensen have added a lot of material to the discussion page for this topic (click tab above).
Base Guide Outline Proposal
Here is my (Jean) version of Drew’s outline on the discussion page of the wiki. Previous material on this page has been moved to Discussion.
I would like to make two main changes to his outline: (1) shorten the chapters by splitting some of those in Drew’s outline into 2 or more, in whatever way works for the topic area; and (2) separate info about data input/removal techniques from data (info) output techniques. This separation makes sense to me as a user; would like to hear from others on this. Separating input and output info into different chapters also contributes to shortening the chapters.
I also propose to reuse as much as possible of Dan Lewis’s excellent “Getting Started with Base” chapter, splitting it up to fit into this book’s outline and adding other material as needed—or should we have a separate chapter or appendix with his relational d/b example and use a flat d/b example in the earlier chapters?
Question: where should we put something on XForms: getting data into a d/b from a form on a website? Or did I miss this in your outline, Drew?
Preface (could be chapter 1 and renumber all the other chapters)
To cover Drew’s suggestions to help people with where to start reading and suggest a different route through the chapters:
+ I have a Base database ( *.odb file ) and I need to work with it.
+ I need to create a database, like I have done before with ( XXXX )[Access, FileMaker..]
+ I need to create a database, like I have with Excel or Calc before.
+ I think I want a database, but have never used a database manager before
The examples used in the book
[not sure whether this belongs in here]: A brief history of OO.o databases and Base
Chapter 1: Introducing Base
1.1 What is Base?
1.2 How to open a Base file (or start a new one)
1.3 Main Base Document Window and its parts (as given by Drew)
1.4 Database objects
(These are the 4 items in the left-hand column of the Base window. Details as given by Drew, but write at quite a general introductory level and leave details for the chapter covering use of the item.)
1.4.5 keep track of it all (Using folders to keep things together.) [I’m not sure what this is, so not sure whether to keep it here or not.]
1.5 Data input and removal (general intro, with reference to Chapter 3 for details)
1.6 How to find your information (Searches and Filters) (general, with ref to Chapter 4 for details)
1/7 Let Wizards do most of the work (general intro, with refs to other chapters)
1.7 Mixing Base with the rest of OO.o (general intro, with refs to other chapters for details)
(Mention both input and output)
1.8 Using Base with other data sources (general intro, with refs to other chapters)
Chapter 2: Planning/designing your database
(I haven’t worked out the outline for this chapter yet, but I think it should contain these topics.)
2.1 Flat and relational databases
2.2 Data types (Default and HSQL datatypes—as given by Drew)
2.4 Other basic theory-type topics needed when planning/designing?
[Yes. With the user in mind, the conceptual data base design (CDBD) is the simplest way to approach this topic. CDBD is based on abstractions. You uses abstractions (they are not another thing that mental processes), every day. CDBD uses simple abstractions: generalization/specialization, classification and aggregation. For example, you uses an aggregation when you thinks: a seat, two wheels, a chain, a pinion, ..., are parts of a bicycle. Thus, you have identified a whole, being based on the parts. For example, you uses a classification when you thinks: a mountain bike, my bike, the bike that I want to give to my son... they are all bicycles (they are elements of the same type). Thus, you have identified a class (set), being based on members. For example, you uses a generalization when you thinks: a moto, a car, a light truck, a bus, etc., are vehicles of motor. Thus, you have identified a super class (super set), being based on sub classes (sub sets). The elements that are identified by means of these three abstractions correspond to the entities and relationships of E/R model. CDDB, avoids the complexity of E/R model to design data bases. Also it avoids (at a nonprofessional level) the necessity to normalize the tables.] [Fabián Flores]
2.5 Introduce example(s) to be used in the book (flat d/b and a relational one)?
Chapter 3: Data input and removal (topics not ncessarily in order)
3.1 New Table Wizard
3.2 Form Wizard
3.2 Working with the table templates
3.3 Create Exercise Log table
3.4 Other topics?
3.5 Example (flat database)
3.6 Example (relational d/b)?
Chapter 4: Data (information) output
4.1 Query Wizard
4.2 Report Wizard
4.2.1 Tables and Queries and SQL
4.2.2 Chose a layout
4.2.3 Can I make this little change?
4.2 Example (flat d/b)
4.3 Example (relational d/b)
Chapter 5: Exchanging data (include both input and output)
(include theory, practice, and an example in each case)
5.1 Working with Calc
5.2 Working with Writer
5.3 Working with Text files
Chapter 6: Customizing your database design
6.1 HSQL database properties (not sure what goes in here, Drew)
6.2 Designers (When you need to do it your way)
6.2.1 Table Designer
6.2.2 Relation Designer
6.2.3 Query Designer
6.2.4 Form Designer
8.2.5 Report Designer
Chapter 7: More customization
7.1 Using Macros (not sure what you have in mind here)
7.2 Validating data input
7.3 Generating calculated data
7.4 Working with multiple forms
7.5 Using other OO.o documents
Chapter 8: Using Base at work
(This may need to be subdivided into more than 1 chapter.)
8.1 Moving from an embedded single user Base file to a Multi-User HSQL server
8.1.1 Calling User Defined Functions
8.2 Using Other Servers (details from Drew’s outline)
8.2.3 MS Access
8.3 Understanding Connections
8.3.1 Auto Commit
8.3.2 Handling multiple table transactions
8.4 Restricting Access to Forms and Reports
Appendix I Build the example database
Appendix II Overview of A Database
Appendix III Further reading on database design