Better late than never. As promised, here are some class notes on the SAT in Houston last weekend. Razzak has been a busy bee creating many samples for the increasing R:BASE toolbox, some of which he has already published in his daily tip email, so no code below <g>.
It's hard to pinpoint what makes this class such a gem. There are always surprises, both new and old; the real new stuff that you didn't see before and the old stuff that you did but you forgot about even though it is now relevant to something you're working on. The tips and tricks that make you go Ahhhh! The knowledge you gain in two days which would take two weeks digging out on your own. Installation 101 ================ Let the installer pick the default directories; understand the CFG file but don't alter it, make changes in a startup file instead (.dat, .rmd or onconnect embedded eep). New trick: If you put your startup file code in an onconnect statement in the on start of an external form, you need no separate startup file. Designing and Deploying Applications Using External Form Files ============================================================== This is how you can create a switchboard type form, unattached to any database or table or anything else and from whence you can run any database or databases. Ultimately, you could have only that on your desktop and run everything from it, including your email! See Razzak's cool sample: http://www.rbaseuniversity.com/Super_Advanced_RBASE_76_SampleApplications.jp g Drag and Drop ============= Instead of clicking to give the appearance of moving things from one side to the other you simply drag and drop just like you do in Windows. Enhanced DBGrid =============== You can now specify Zebra stripes and the row background and font colors you want as well as sorter icons to allow the user to sort the columns in ascending or descending order. You can programmatically specify different zebra stripe colors, even customize them for each user! DBGrid as a Search Form ======================= Very nice approach. In the sample, whatever you click on focuses the search to that column, enter your criteria and either see your results highlighted one at a time or as another dbgrid with all the results. The trick is to place the main dbgrid on top of the subset dbgrid and to select/refresh them as needed. MDI Applications ================ Very cool to be able to put several independent albeit related forms on one screen in a specific order and a precise location and to go back and forth between them to edit data. You are free to move them around and close them one at a time or all at the same time. Tab Set Control Application =========================== Tabs pointing to the bottom of the screen (they look like an Excel spreadsheet name tabs) and able to launch any code. Another option to designing menus. Radio Group Properties ====================== Control every aspect of radio groups such as the spacing, font color, name, size, style. Razzak even designs menus with that object. Dynamic List Views and Multi-Select Variable List Views ======================================================= Smoke and mirrors I tell you! In the mutually exclusive setup, the real table is on the left and a temporary one on the right. As you click on the left, you add the row to the temporary table, rerun the select on both and refresh and voilĂ , the row is missing on the left (not really, of course) and visible on the right. After you've made your choices, you can take whatever action based on the list of the objects on the right. Zebra-style reports =================== No more page style roulette to get zebra stripes. You know, where the text didn't always match the stripe just right? You put a shape object around your objects in your detail line and control its on and off color with the property command. Conditional check boxes in reports ================================== Together with an "Execute before preview" action to limit the criteria, and the property command, flag data on a report for high visibility either with a visible/checked checkbox or with a field color, row color, let your imagination guide you. Reports and Labels as MDI ========================= A new ability to run a report "minimized" while you do something else. Print preview options ===================== Total control over every object at the top of the print preview screen. DBCalc results as variables in reports ====================================== Finally, the ability to capture the value of a dbcalc object in any band where it appears as a variable available for further calculations, such as tax as a percentage of cost. Crosstab Reports ================ New here is the ability to rename the title on the report. Sub-reports and nested sub-reports ================================== As powerful as ever. Organize all aspects of your report before you start the design process. It's important to do it in the right order as well as to watch for extraneous tables and to make sure that slave tables are in the proper relational order. Integrating Plugin and Themes ============================= Themes are available on just about everything. Gateway Export to create full-color, multi-page spreadsheets ============================================================ This is amazing! You have to see the sample. You can now have a spreadsheet or a workbook that matches your color dbgrid in R:BASE. New TOP and LEFT parameters =========================== No more centering on the screen, you specify the screen coordinates where you want the DIALOG or the CHOOSE command to appear. Debug techniques ================ Put the command: DEBUG SET TRACE ON and the DEBUG SET TRACE OFF around code that you wish to debug in a command file. When you're ready to debug the code, type SET DEBUG ON at the R> prompt. Don't forget to SET DEBUG OFF when you're done. The DEBUG command in your file will only be read by R:BASE when SET DEBUG ON is set. Enterprise Edition ================== This is the icing on the cake. Only SAT class attendees get this little jewel. If you've ever wondered how many different options are available on each object that you place on a form, you can now see each one of them and drill down to every sub-choice. Dynamic Form Objects ==================== CREATEOBJECT command now allows you to make an object appear on a form after the form is already onscreen. DELETEOBJECT removes it. This is where having Enterprise Edition will come in handy to find and manipulate every object detail. This is the cat's MEOW! Plan to attend a scheduled class or facilitate the scheduling of a class in your city. I personally guarantee that you will be happy you did! http://www.rbaseuniversity.com/Super_Advanced_RBASE_76_Course_Outline.pdf http://www.rbase.com/events/ And don't forget to buy socks! Claudine :) --- 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=

