At 11:30 PM 9/27/2010, Javier Valencia wrote:
R:azzak,
Right now, I am using a compiled executable on the server along with
the database that holds the forms and reports. I have a few questions
about pre-loading component in the compiled application.
We currently update several forms/report on the fly (as they are still
evolving) by just loading them into the database from within the System
Maintenance Form in the application. This works great because we do not
have to update the executable on the server or the shortcuts in the
workstationÂ…simply load the forms/reports and they are good to go next
time they are called.
If I include the forms/reports in the compiled executable, what would
happen if I load a newer version of a form/report? Obviously it would
be loaded in the database and not in the compiled application.
When the newer form/report is called from within the application
Does R:Base it still read it from the compiled application?
Or will the form/report just loaded into the database override the
form/report in the compiled executable?
Very good question, Javier!
If you decide to include all your forms, external forms, reports, and
labels as embedded resource files, it will be your responsibility to
re-compile the application (executable) and re-deploy it accordingly.
As mentioned earlier, there is certainly good housekeeping required,
but the benefits are great.
For a compiled RBG9 distributed application, I always keep a master
copy for development, and when all requested enhancements are done,
simply copying the updated form from development database to compiler
project window is as easy as pasting the form. The existing form is
replaced with a warning window if you wish to overwrite the form.
The same principal applies for all reports and labels. Re-compiling
the executable with updated version information is all done on the
fly.
An R:BASE eXtreme 9.0/9.1 compiled application will always look for
the required/called form, external form, report, or label as embedded
resource file first, and then the database, if not found. That's why
re-compiling the executable with updated resource files is a MUST in
order to keep everyone up-to-date. It is not a hard thing to maintain
and keep track of. Having the time-stamp feature is an added bonus to
keep track of everything.
The next question is about themes. There are a few themes that are
used more than other and I would like to pre-load them into the
compiled executable but still make the rest of the themes available.
Does R:Base look for the theme in the compiled application first,
and if not there, look for the RBThemes9.dll file? Or if the
RBThemes9.dll file is present, does R:Base go directly there and
ignore the pre-loaded themes?
You can force your compiled application to only load certain themes
by using the following PROPERTY command. Each additional theme may
be loaded by using the same PROPERTY LOAD_THEME command.
-- Load Application Theme
PROPERTY LOAD_THEME 'Vista CG' 'Styles\Vista CG.msstyles'
You can eXtract your favorite themes as external files, rather than
loading/distributing 92 mb RBThemes9.dll file. Distributing the
required themes only will certainly keep the project clean and light.
I am almost finished with the conversion to 9.0 and I just have
one form left (that has lots of connections to another R:Base)
that is still giving me problems; hopefully I should have it
debugged in the next day or so.
Hope that answers your questions.
Good luck on finishing the conversion to 9.0.
If you wish to see all techniques and get some cool "developer tools",
be sure to attend the 2010 Annual R:BASE Conference, which includes a
session to demonstrate the use of such technique and more ...
http://www.rbase.com/conference/ [Highlights]
Very Best R:egards,
Razzak.
--- RBASE-L
=======================3D=======================3
D=
TO POST A MESSAGE TO ALL MEMBERS:
Send a plain text email to [email protected]
(Don't use any of these words as your Subject:
INTRO, SUBSCRIBE, UNSUBSCRIBE, SEARCH,
REMOVE, SUSPEND, RESUME, DIGEST, RESEND, HELP)
=======================3D=======================3
D=
TO SEE MESSAGE POSTING GUIDELINES:
Send a plain text email to [email protected]
In the message SUBJECT, put just one word: INTRO
=======================3D=======================3
D=
TO UNSUBSCRIBE:
Send a plain text email to [email protected]
In the message SUBJECT, put just one word: UNSUBSCRIBE
=======================3D=======================3
D=
TO SEARCH ARCHIVES:
Send a plain text email to [email protected]
In the message SUBJECT, put just one word: SEARCH-n
(where n is the number of days). In the message body,
place any
text to search for.
=======================3D=======================3
D=