In message <Marcel-1.53-1130115702-0b0zokP@...>
Michael Talibard <michael@...> wrote:
> Questions about S-Base
>
> I have invested an enormous amount of time in making
> database applications, using Datapower; but when they
> re-designed it for another platform, I stayed with their
> last Risc-OS-only version, which I really really like. However,
> they no longer support it.
>
> If I change to S-Base, will it do the following things?
> (I don't need instructions for doing them - I can read
> manuals - but just a fairly simple yes/no on whether
> S-Base can be made to answer each of these needs.
>
> 1. I need to be able to show a page of records one
> below another, 'spread-sheet style' - e.g. to list
> the pupils in a class and all their grades, etc.
Yes. Known as a 'table' in S-Base, each field in each record is fully
editable by the user (if the app creator allows it).
>
> 2. I need to be able to click on an icon which sits
> as a field in each record, and thus cause other
> software - specifically SwiftJpeg - to do its thing
> (e.g. displaying images whole-screen).
Yes. Using the S-Base commands "oscli" and "sys" you have access to
every *star, SWI or other command in the OS. On top of that there are
well over 300 inbuilt commands and functions.
>
> 3. I am fussy about the appearance of records, and
> much prefer to be able to determine in detail their
> lay-out, colours, fonts used, etc.
Yes
>
> 4. It is also important to me to be able to alter this
> design at will, without having to start again on
> entering the data.
Yes. You can also alter the structure of data files; - adding,
deleting or altering fields and indexes without affecting the data
already there (the only exception is if you change the 'type' of an
existing field - the data previously in that field will be lost).
>
> 5. I dislike query-formats laid out differently from
> the records themselves. Ease of use is much greater,
> I find, if the search criteria are entered into something
> that is laid out just like a record in that database, and
> changes with each re-design of the record.
Yes. You can use the same 'card' for different purposes, it is just a
case of how you write the underlying control code.
>
> 6. I much prefer Datapower's assumption that you
> may want to search on practically any field, and that
> they don't need to make you choose a 'key' field. Can
> S-Base work like that?
Yes. You have two alternatives (or a mixture of the two). At any time
you can define permanent indexes on any field in the data file (no
limit on the number created), which are updated whenever new records
are added or existing records changed. You can also create a temporary
index in your code, which is used on the fly. The trade-off is that
the permanent indexes are quicker to search but use more disk storage,
whereas the temporary indexes take a bit longer to search but don't
have the storage overhead. The same applies to queries, which can be
either permanent or temporary. The best example of where a temporary
index is useful is in your question 5 above. A user enters data in
various fields that he wants to search on, then the app constructs
temporary indexes and a query based only on the fields designated.
When the search is complete, those particular indexes and query are
probably no longer required.
>
> 7. As well as formula fields working within a record,
> I need some such facility (as I now have) to stick
> into a 'header' or 'footer' area something to show
> such functions as the sum or average of the values
> of a particular field across all records, or all records
> turned up by the latest search/query.
>
Yes. The great strength of S-Base is that it will do absolutely
anything you code it to do. Unfortunately that is also it greatest
weakness for people starting out with it - it won't do very much at
all unless you tell it to.
I am not a 'programmer' but have always been able to get by with
higher level languages like BASIC. In 1993 I desperately needed a
database program to develop a book-keeping system for a company that
was outgrowing its manual invoicing system but didn't want an off the
shelf package that would have made it change all its working
practices. The app that I gradually developed became a fully-fledged
accounts package including wages, invoicing, stock control etc.
I now use S-Base for all of my own hobby projects and work. I have an
S-Base app that controls hardware connected to my serial port to run
the central heating, and central locking (like on a car) of all doors
in my house. This is fully multi-tasking and although running 24 hours
a day does not cause any delays or pauses in the desktop for other
(keyboard intensive) applications.
I have another S-Base hobby project which processes data and then
creates and displays DrawScript drawfiles from the results.
All of my applications which contain address data will communicate
seamlessly with !AddressIt (the Post Office postcode database from
RComp) - typing in a postcode and clicking on an icon in the S-Base
app will fetch the rest of the address from AddressIt using the WIMP
message system and paste it into the address fields of the S-Base
app, in almost exactly the same way as !Organizer does it. If anyone
would like a copy of the S code I use for this, I would be happy to
pass it on.
> I would also like to know the cost of a single-user copy
> of S-Base.
Can't help you with that. Ask Simon Glass or Steve Simatos at
s-base@... They are still actively developing S-Base.
Hope that helps.
Regards,
--
Robin Hampshire
Robin@...