I have several applications in my project. So I want to use multilanguage, being English (ISO8859-1) and nederlands (that is Dutch so ISO8859-15) where Nederlands is the default.
Well that seems fine so far. So now I go to my datadictionary I open it and I see a ‘Edit Data Dictionary: Digiform’ which is the description of my project.
I see a load of tables and I choose one table to make into a multi language version. For example: SCRIPTCASE.SC_DELEGATE appratenly my 3 fields
have been given a label.
I choose from my dictionary tables the mentioned table and choose the next button under synchronize applications.
Then I get this window (see 2.jpg)
Of course typical for scriptcase there seems to be no valuable help. I see 2 forms on the left that aparently use that table and I see properties on the right that it wants to change. It is unclear how this exactly works but ok I choose Label (although it doesnt seem to make a difference what I choose).
Then I click synchronize…
I get a result:
— Processing start —
Table: SCRIPTCASE.SC_DELEGATE
Application: form_delegate
Field: EMPLID_LEIDING - ok
Field: EMPLID_DELEGATE - ok
Field: SC_APPID - ok
Field: SC_ROLEID - ok
Field: DATE_FROM - ok
Field: DATE_TO - ok
Field: ACTIVE - ok
Field: NR - ok
Application: grid_delegate
Field: EMPLID_LEIDING - ok
Field: EMPLID_DELEGATE - ok
Field: SC_APPID - ok
Field: SC_ROLEID - ok
Field: DATE_FROM - ok
Field: DATE_TO - ok
Field: ACTIVE - ok
Field: NR - ok
— Processing completed —
I get a log that holds some text as well with before and after in it. That basically looks good…
So that ought to be good…
So something like {lang_SCRIPTCASE.SC_DELEGATE_…} so far so good.
So now I check my result so I go to the form that uses it. My form_deletate uses this table so it should be updated, so it was told in the log:
able: SCRIPTCASE.SC_DELEGATE
Application: form_delegate
Field Label Label (filter)
EMPLID_LEIDING Before Medewerker EMPLID LEIDING
After {lang_SCRIPTCASE_SC_DELEGATE_fld_EMPLID_LEIDING} {lang_SCRIPTCASE_SC_DELEGATE_fld_EMPLID_LEIDING}
EMPLID_DELEGATE Before Delegeert aan EMPLID DELEGATE
After {lang_SCRIPTCASE_SC_DELEGATE_fld_EMPLID_DELEGATE} {lang_SCRIPTCASE_SC_DELEGATE_fld_EMPLID_DELEGATE}
SC_APPID Before Applicatie SC APPID
After {lang_SCRIPTCASE_SC_DELEGATE_fld_SC_APPID} {lang_SCRIPTCASE_SC_DELEGATE_fld_SC_APPID}
SC_ROLEID Before Rol SC ROLEID
After {lang_SCRIPTCASE_SC_DELEGATE_fld_SC_ROLEID} {lang_SCRIPTCASE_SC_DELEGATE_fld_SC_ROLEID}
DATE_FROM Before Datum van DATE FROM
After {lang_SCRIPTCASE_SC_DELEGATE_fld_DATE_FROM} {lang_SCRIPTCASE_SC_DELEGATE_fld_DATE_FROM}
DATE_TO Before Datum tot DATE TO
After {lang_SCRIPTCASE_SC_DELEGATE_fld_DATE_TO} {lang_SCRIPTCASE_SC_DELEGATE_fld_DATE_TO}
ACTIVE Before Actief ACTIVE
After {lang_SCRIPTCASE_SC_DELEGATE_fld_ACTIVE} {lang_SCRIPTCASE_SC_DELEGATE_fld_ACTIVE}
NR Before NR NR
After {lang_SCRIPTCASE_SC_DELEGATE_fld_NR} {lang_SCRIPTCASE_SC_DELEGATE_fld_NR}
Application: grid_delegate
Field Label Label (filter)
EMPLID_LEIDING Before Medewerker EMPLID LEIDING
After {lang_SCRIPTCASE_SC_DELEGATE_fld_EMPLID_LEIDING} {lang_SCRIPTCASE_SC_DELEGATE_fld_EMPLID_LEIDING}
EMPLID_DELEGATE Before Delegeert aan medewerker EMPLID DELEGATE
After {lang_SCRIPTCASE_SC_DELEGATE_fld_EMPLID_DELEGATE} {lang_SCRIPTCASE_SC_DELEGATE_fld_EMPLID_DELEGATE}
SC_APPID Before Applicatie SC APPID
After {lang_SCRIPTCASE_SC_DELEGATE_fld_SC_APPID} {lang_SCRIPTCASE_SC_DELEGATE_fld_SC_APPID}
SC_ROLEID Before Rol SC ROLEID
After {lang_SCRIPTCASE_SC_DELEGATE_fld_SC_ROLEID} {lang_SCRIPTCASE_SC_DELEGATE_fld_SC_ROLEID}
DATE_FROM Before Datum van DATE FROM
After {lang_SCRIPTCASE_SC_DELEGATE_fld_DATE_FROM} {lang_SCRIPTCASE_SC_DELEGATE_fld_DATE_FROM}
DATE_TO Before Datum tot DATE TO
After {lang_SCRIPTCASE_SC_DELEGATE_fld_DATE_TO} {lang_SCRIPTCASE_SC_DELEGATE_fld_DATE_TO}
ACTIVE Before Actief ACTIVE
After {lang_SCRIPTCASE_SC_DELEGATE_fld_ACTIVE} {lang_SCRIPTCASE_SC_DELEGATE_fld_ACTIVE}
NR Before NR NR
After {lang_SCRIPTCASE_SC_DELEGATE_fld_NR} {lang_SCRIPTCASE_SC_DELEGATE_fld_NR}
I open my form_delegate and see all nice {lang…} labels… (see 3.jpg)
So far so good (although often the above already fails in creating {lang_…} labels in many places!!).
Now I go to tools->locales->languages and I search for my table: tbl_SCRIPTCASE_SC_DELEGATE
I find this but then what I see is basically very bad… See 4.jpg
I would have expected at least one column to not have the record name but the dutch label field. Now I LOST ALL MY LABELS from my single language version.
This smells like another serious bug… Was this ever good?
Also in many cases it occrus that when a table is made multilanguage that the fieldlabels with it do NOT GET transformed to their {lang_…} version…
Can someone tell me how this exactly works properly? So far it just screws up everything!