Larry,

 

I'm not really interested in trying to do version control in the database -
we have four developers spread over two states and five major sites that run
the code.  I don't want that headache.   We use MS VSS for our central
repository, so I'm happy to have the version control done there.  However
the version number in the table structure below should be useful to us for
comparing code in various copies of the database.  Clearly this method will
require building some tools to load and unload the code, move between
databases, etc.

 

I seem to recall calculating at one point that our app had over 200,000
lines of code, but that was not later than 6.5, and only looked at our main
application.  7.x has given us tools to vastly reduce the line count, but
there's still a lot of code that I don't think should burden menu forms,
reports, etc.  RUN SELECT seems like a perfect solution to the issue, and I
thank you for whatever role you may have played in its implementation.

 

I've created one form  so far where all the eep code is contained in custom
form actions, and the form starts off with one variable radio group, two
labels, one button and two speed buttons (one to exit the form and one to
print the screen.)  All the other objects are created dynamically (or
destroyed) as required.  I can report that it is a bit of work to get there,
but once done, a very nice result. 

 

That said, a menu that profiles itself to the user is certainly achievable.
I've been having a debate with myself over whether to move in that
direction, or to go to EFFs for menus.  Using EFFs, where do you get the
user security data?  (One possible answer:  a security database .)

 

So many features, so little time!

 

Emmitt Dove

Manager, DairyPak Business Systems

Blue Ridge Paper Products, Inc.

[EMAIL PROTECTED]

[EMAIL PROTECTED]

(203) 643-8022

 

From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf Of Lawrence
Lustig
Sent: Thursday, January 03, 2008 1:14 PM
To: RBASE-L Mailing List
Subject: [RBASE-L] - RE: storing code in the database

 

<< 

-          Process name (PK)

-          Disk filename (for auto loading and unloading)

-          d/t created

-          author

-          d/t last revised

-          revised by

-          version number

-          comment

-          code column (varchar datatype)

>> 


Emmitt:

I originally requested the RUN SELECT functionality way, way, way back in
RBDos days when there was no way at all of storing code in the database
(short of sticking it in a NOTE field and unloading it yourself preparatory
to running it).  My goal was to build my own menu / permissions system in
which I only had to update the rows in the code table and some accompanying
access control lists and then use a common, unchanging piece of code to
present that data to the user as an application.

In my opinion the need for RUN SELECT has been eliminated for almost all
cases by all the new features of R:Base.  However, it sounds like you want
to take things further than R:Base currently does by essentially turning
your RUN SELECT system into a version control management system (you could
even keep older versions of each procedure on line if you wanted to).

My original idea was to use CHOOSE to display menus to the user showing only
the commands that the user was permitted to see.  With the new R:Base
functionality to create objects at runtime, I imagine you could easily have
each form create a customized version of a menu or group bar from data in
the procedures table based on the current user login and other information.
That would be very cool -- menus and forms that automatically adjusted
themselves to the user's identity!

If you go this route, it would be _very_ nice if you submitted an
enhancement request for a new kind of rich text editing control -- one that
would act exactly like RBEDIT.  Then you could _really_ build a version
control system on top of R:Base.


--
Larry

Reply via email to