Subject Re: Menu inactive on first screen firm
From Pieter van Heerden <psvh@mweb.co.za>
Date Thu, 10 May 2018 03:49:53 -0400
Newsgroups dbase.getting-started

Thanks Mervyn, problem solved.

SAPWAT started small and could handle everything easily, but has now grown to a an unforeseen size in content and in number of users as well as countries.  I agree that there are approaches which would solve a lot of problems, but I think the reprogramming necessary is beyond my capabilities.  Thanks anyway for the thought and advice.

Pieter

Mervyn Bick Wrote:

> On 2018-05-08 8:45 AM, Pieter van Heerden wrote:
> > Aandy
> >
> > This is the line that generates the error message
> > _app.startcomplete = setup::tablesetup()
> >
> > There is a return true at the end of the function.
>
> My copy of Thunderbird has been acting up lately.  I've missed a couple
> of messages and I've only seen them when they've been quoted in replies.
>   It is, therefore, possible that the message I posted the other day has
> found it's way to the bit-bucket in the sky.
>
> If you have seen the message I'm afraid this is going to waste a bit of
> bandwidth.
>
> **** Repeat *****
>
> I think the problem may be in your sapwatMenu.mnu file.  It depends on
> how you execute menu selections but if the functions called or the forms
> to be opened haven't been instantiated yet selecting a menu option can't
> open a new form.  It looks as if everything the menu needs is only made
> available when you open the irrireq form.
>
> I assume the onClick event handler for the Proceed button on
> sapwatstartup.wfm looks something like
>
>     function PROCEED_onClick()
>        f.irrireq = new irrireqform() //move this line
>        f.irrireq.open()
>        return
>
>
> Try moving irrireq = new irrireqform() to setup.prg and create the
> instance of irrireqform before you open the sapwatstartup form.
>
> // Open the irrigation requirement main form
> set procedure to sapwatstartup.wfm
> local f
> f = new sapwatstartupForm()
> set procedure to "irrireq.wfm" additive
> f.irrireq = new irrireqform() //create the instance of irrireqform here
> f.open()
> f.setFocus()   //shouldn't be necessary.
> return true  //this seems to be redundant.
>
> As an aside, with the amount of data you are handling you should
> seriously consider moving the data to a SQL server.  Converting your
> program will entail a fair amount of work but it should improve
> performance quite dramatically.  The improved data handling ability
> should also allow you to do away with temporary tables.
>
> ********
>
> Mervyn.