| Subject |
Re: beginappend() Problem Fixed |
| From |
Mervyn Bick <invalid@invalid.invalid> |
| Date |
Mon, 10 Jul 2023 13:56:31 +0200 |
| Newsgroups |
dbase.getting-started |
| Attachment(s) |
loadshed_10_July.png |
On 2023/07/10 09:24, Lee Grant wrote:
> Just a follow-up,
>
> Now I'm going through all my forms and changing the necessary code to
> assign the rowset to the form where it applies, and changing the code in
> the method/functions to correct this oversight of mine with this little
> 'bug'.
It wouldn't be worth it for one or two forms but a little program to
change all the forms wouldn't take long to write. If you want to
explore this let's start a new thread.
I have a penchant for writing programs that write, or alter, programs.
It started back in the 1980's when I used dBASE II to write macros for
VisiCalc. Later I wrote macros for Kermit which was a comms program I
used to fetch files from an Apple to my PC. I have a little program that
strips the path from the .dbf name that the form designer insists on
adding in the SELECT statement for a query. I've done this to apply a
custom form to a set of forms. I've also, on occasion, changed
entryfields to custom controls. Many years ago when I worked for (er
was employed by :-) ) the Johannesburg City Council I wrote
configuration files for a new accounting program we were installing on
our ICL mainframe computer.
> I've also been remiss in other areas of dBASE, so I'm re-educating
> myself on some localSQL stuff and database specific stuff, to try and
> get my head better around the data manipulation stuff as well as things
> that I was doing the hard way, because I hadn't found the easier way.
If you're going to be digging into localSQL it may be worthwhile going
the whole hog and move to SQL especially for any new programs. Although
SQL requires a new "hit and run" approach to data access, it opens a
whole new world when it comes to data manipulation. And if you opt for
Firebird you gain access to an extremely powerful language for creating
stored procedures.
Load shedding in Johannesburg is allocated in 2hour slots plus 30
minutes to allow for staggered reconnection. Once level 5 is reached
consecutive slots can be allocated resulting in a 4hour period without
power. Instead of simply displaying the individual 2hour slots it makes
a more meaningful display to show the actual periods power will be off
with start and stop times. Screenshot attached. To do this in dBASE
would mean creating a temporary table or perhaps an arrrayRowset each
time. With Firebird a stored procedure that accepts a date and a level
does the job.
> Like adding images/binaries to my database. I was doing it by entering
> the information and the images via the designer, rather than on my form,
> because I hadn't been familiar with the fields objects (although I've
> probably heard it mentioned) until I started searching for a solution
> and ran across an old dBulletin article by Jean-Pierre Martel about
> getting binary data into dBASE tables via .replaceFromFile(<filename>)
> method of the field objects. Then I found it again in Ken's book. <sigh>
>
There are two schools of thought on this. I side with those who feel
that images should be stored as individual files and that the filename
and path should be stored in a table. The only time I would consider
saving the images in a table would be for something like specimen
signatures or photos used for facial recognition. And even then it
wouldn't be with .dbf and .dbt tables.
Lights off in 5 minutes. :-(
Mervyn.
|
|