That is good information. I have copy and pasted different controls from one 
form to another have not tried to paste it into rbedit.

Dan Goldberg


From: [email protected] 
Sent: Wednesday, November 30, 2011 3:54 PM
To: RBASE-L Mailing List 
Subject: [RBASE-L] - Some cool things I did with a complicated form
This will probably be long, but there's 2 kinda neat things I did with a form 
today that might help someone in a similar situation.

The scenario

Client enters GL entries once a month.  We have a "template" table built with 
all the possible accounts, and each is assigned to one of 8 "groups".  For ease 
of entry, he wanted one form with a tab control, and for each group to be on 
its own tab.  Each month we take the data from the template table and dump it 
into a permanent "temp" table that holds the data until it is posted.  

The form

We wanted the data to be in one table, not a table for each separate group.  I 
based the form on a dummy table (or it could be a variable form, but I wanted 
to be able to define form variables).   Then I created 8 permanent 
single-table, ordered views for each of the groups:
       CREATE VIEW vJournal1 ( Acct1, Division1, .... ) AS SELECT Acct, 
Division, ...  FROM JournalEntry WHERE tabPage = 1 ORDER BY JSeq
       CREATE VIEW vJournal2 ( Acct2, Division2, .... ) AS SELECT Acct, 
Division, ...  FROM JournalEntry WHERE tabPage = 2 ORDER BY JSeq

I added each view as a slave table on the form.  So that each view is 
displayed, each view must have unique column names, nothing must be in common.  
So that's why you see the alias defined above.  I located a DBGrid on each of 
the pages, bound each grid to its view.  These views are editable.  

Copying the DBGrid to the other pages

There are alot of columns on the DBGrid, and each column had quite a bit of 
customization.  If you copy and paste a grid from one place to another and then 
change the driving table on the grid, you have to "start from scratch" in 
assigning columns and all the customization.  I didn't want to have to repeat 
all that work.

I knew this could be done, but I had never tried it before:  I got one grid 
perfect.  Then I clicked on the grid, copied it, and pasted it into RBEdit.  I 
changed the following:
1.    First row was "object RDBGrid1: TRDBGrid"    I changed RDBGrid1 to 
RDBGrid2
2.    Five rows below was the componentid DBGrid1 which I changed to DBGrid2
3.    At line 26 was the name of the table:  TblName = 'vJournal1'      So I 
changed the table to vJournal2
4.    Because I'm using a column for the Row Color, line 34:    
BackgroundColorField = 'RowColorText1'
5.    Starting at line 44 was the section for columns.  It was easy to type 
over the old column (Acct1) with the new column (Acct2).  Each column name 
appears only once.

Then I copied the text, went to my form, highlighted my new tage page, and did 
a paste!   Amazing!  It's all there beautifully!   Now I got 6 more of these to 
go!

Karen

Reply via email to