[AccessD] Find First in an Array?

jwcolby jwcolby at colbyconsulting.com
Wed Feb 18 19:45:33 CST 2009


Does this imply a table structure of:

TR_ID		Auto
TR_CtlName	Text
TR_L1		text (or memo?) for language 1
TR_L2		text (or memo?) for language 2
Etc

I would suggest that you add a form (or container) field.  A control name is unique on a form, 
however it could be the same on different forms but have a different language string.  By having a 
form field you could pull subsets of records based on the form name, then use the control name (now 
guaranteed to be unique), then obtain the language string.

It appears from your email however that you already have this stuff set up, so you might be 
resistant to modifying how it works.

If this is all just one big table with control names guaranteed to be unique then you could just 
stash it in one big collection.  There is a problem however which is that classes get pretty slow as 
they get large.  If you get up past 10,000 strings (I don't know the exact point) it would bog back 
down.  If you broke it down into controls on a form, then you would ensure that the total strings in 
any given collection is pretty small.

Again I would build a class for all the code and the collection to load one form.  then a supervisor 
class to hold instances of this form class keyed on form name.

John W. Colby
www.ColbyConsulting.com


Rocky Smolin at Beach Access Software wrote:
> Max:
> 
> That would work except the table driven approach is so much more easier.
> Easy to add a language (got French and Spanish now in addition to
> traditional and simplified Chinese), too, or make a change to a translation.
> To add a language I just add a column for that language to the Control and
> Messages tables and send them to the translator.  Add that language to the
> language selector combo on the Preferences form, and walla! Another
> language.
> 
> 
> Rocky Smolin
> Beach Access Software
> 858-259-4334
> www.e-z-mrp.com
> www.bchacc.com




More information about the AccessD mailing list