Automatic procedures

As far as I know only these few automatic procedures are currently supported in Panorama X:

• .CustomMenu (haven’t tried it but it is mentioned in the Help file)
• .Initialize
• .ModifyFill
• .ModifyRecord
• .NewRecord

There is one additional automatic procedure I would really like to see implemented but it is a double dot “handler” procedure and I don’t know if it will be possible in the new version: …CloseDatabase

If any other automatic procedures are currently available I am not aware of them and they have not been mentioned in the Help file.

I’m using these successfully:

.CurrentRecord
.DeleteRecord
.NewRecord

Good, I’ll add them to my list of supported automatic procedures. The .CurrentRecord hidden procedure was noted in release notes for version 0.1.019 but .DeleteRecord is not mentioned anywhere in the Help file. Also, I forgot to include the new .PreInitialize procedure which was also implemented in the same release notes.

Alright, I’ll bite, what is a double dot procedure?

In Panorama 6 there were 4 such “handler” automatic procedures that were identified by starting their name with a double dot instead of the single dot.

…ActivateForm
…CustomAbout
…CloseDatabase
…OpenForm

So far none of these have been included with Panorama X.

Actually, there is a replacement for …ActivateForm and …OpenForm, but I haven’t really documented it yet. But see the info(“formevent”):

You can use this function in the Form Event Procedure, which goes here:

So whatever code you put in there can handle three types of events – open, activate and resize. Of course you can call an external subroutine, often handy since this box is rather small.

…CustomAbout is probably not going to happen. Not sure about …CloseDatabase, which is very tricky to do and cannot work the same way it did in Panorama 6.

I have already been using info("formevent") on a couple of my current projects (check out my use in the Variable View file I posted some time ago) and it is a reasonable substitute method to replace …ActivateForm & …OpenForm. The minor downside is that the old auto-procedures handled everything in one procedure rather than in individual form code. I actually like it the new way much better especially if there was some way to incorporate it within the datasheet as well.

If there is no plan for the …CustomAbout or .About procedures or their equivalents then that does not bode well for the future ability to create true stand alone projects based on Panorama X. Any such custom apps running under their own name would add a level of confusion if the About menu was showing another app’s name instead. This would of course be a moot point if a stand alone scheme is never implemented in Panorama X like the old Panorama Engine…ouch!

For me the …CloseDatabase is sorely missed especially with all the auto-save that the current system software incorporates. You never know what exact state Panorama X was last saved in so it might then reopen differently than you would prefer. In Panorama 6 you could have it open every time with no windows and have the .Initialize procedure regenerate the exact conditions you want on startup including a temporary custom startup form.

As you can see my biggest concern is in regard to being able to use Panorama X for creating independent apps. If the app is a freeware product the cost for the developer to ProVUE should be minimal as it was in the past. Commercial apps could be a one time charge as before or set up with a royalty scheme where the app developer and ProVUE partner in the commercialization, possibly even via the App Store. Don’t mean to proselytize but keeping my fingers crossed.