1 2 Previous Next 27 Replies Latest reply on Jun 20, 2017 1:37 AM by bigtom

    Multilingual form

    thekops

      Hi, I am quite new on FM. And currently, I am trying to create a multilingual form using FM. Is it possible for FM to translate the labels of the fields in the layout?? Thanks:)

        • 1. Re: Multilingual form
          beverly

          I'm sure there are several threads in this forum. The way this is handled (on eCommerce web) in databases is to have a table of labels. Variables are set on open and these are used on the layout (merge variables) instead of static text. Careful planning is needed as the length of the labels can vary by language. See what you can find searching here (& elsewhere).

           

          Sent from miPhone

          • 2. Re: Multilingual form
            gofmp15

            I have with a bit of helpful info from here created a method of using a table to hold any number of language translations for each word.

             

            Language Translated.PNG

            The idea is that $$Variable is the text I want to use and each variable has a record for the languages in my set as you can see. Currently I use a few less than 400 $$variables.

             

            The user selects a language and then instantly all of the buttons and text labels change to reflect that language. The text in the fields is not modified at this time.

             

            These variables work in buttons, text labels and even record fields if done correctly.

             

            These translati0ns can be imported into a file and used there.

             

            I am finishing the concept so that anyone can use it and will present the file soon.

             

            Watch my blog ( under construction) for details:  gofmp.com

            1 of 1 people found this helpful
            • 3. Re: Multilingual form
              bigtom

              When I first need multi language I started with examples from Modular FileMaker. Labels are easy and I actually created a new label solution that is much faster over WAN than the the MFM label maker and almost as fast as having the language table locally. The Value Lists example are more complex, but if you take the time to see what you are looking at, it will make sense.

               

              http://www.modularfilemaker.org/module/labelmaker-pro-enable-multilingual-field-labels-for-your-filemaker-solution/

               

              http://www.modularfilemaker.org/module/multilingual-valuelists/

              1 of 1 people found this helpful
              • 4. Re: Multilingual form
                gofmp15

                I see I am not the first...

                 

                Stripped to its essentials my idea shown above use:

                 

                Variable Name: $$Help

                Language:English

                Translated Text: Help

                 

                The table uses 400 variables currently and more can be added.

                Each variable is used in a record for each language so the value can be edited.

                A script finds all records for a language and loops through them putting the translation into the variable.

                This loop is almost instantaneous on my laptop or iPhone which has opened the file over Wifi.

                All buttons and labels using the variables are changed instantly.

                 

                There is no need using this method to use a link to any table. I tried that method and it was unsatisfactory.

                • 5. Re: Multilingual form
                  gofmp15

                  Here's a blog post which shows my Language file in action. What how easy it is to select one of a dozen languages and how instantly 400 variables are updated to that language.

                   

                  Multi-Lingual Buttons and Text Labels #FileMaker – Photos & More

                  • 6. Re: Multilingual form
                    bigtom

                    gofmp15 wrote:

                     

                    I see I am not the first...

                     

                    Stripped to its essentials my idea shown above use:

                     

                    Variable Name: $$Help

                    Language:English

                    Translated Text: Help

                     

                    The table uses 400 variables currently and more can be added.

                    Each variable is used in a record for each language so the value can be edited.

                    A script finds all records for a language and loops through them putting the translation into the variable.

                    This loop is almost instantaneous on my laptop or iPhone which has opened the file over Wifi.

                    All buttons and labels using the variables are changed instantly.

                     

                    There is no need using this method to use a link to any table. I tried that method and it was unsatisfactory.

                    It would be interesting to see what the completion time is over 3g, 4g and wifi on an iPhone for 400 labels on first run without first running the script on startup. Can you run those tests?

                    • 7. Re: Multilingual form
                      bigtom

                      I added 11 languages and 400 labels to a version of my label module (not manually). I also added all 400 merge variables to a single layout. As a reference the process times for iPhone 6 are ~60ms over wifi, ~500ms over 4G, ~900ms over 3G.

                      • 8. Re: Multilingual form
                        gofmp15

                        My file uses records for each word/language. So to change the language a search for the language occurs then each word is inserted into its $$variable.

                         

                        I added a the millisecond function for start and finish and came up with these numbers. These are second try times.

                         

                        To change 358 $$variables from language A to language B

                         

                        FileMaker PRO acting as a host with one iPhone logged in: 47 Miliseconds

                        iPhone acting as a client to Pro over wifi: 236 Miliseconds

                        iPhone with Local copy of file: 200 miliseconds

                         

                        The results are fast enough to NOT be noticeable by the user. Barely a blink. 2/10ths of a second is not much of an inconvenience and the reaction time between tapping a button and becoming aware of the action takes longer.

                         

                        If millions of records were involved, then this would be a problem especially over the Internet.

                         

                        This is for my beta file that isn't optimized.

                         

                        The real value is how easy it is for the user to add a new variable and then I have a method of using Google translate for each language. This makes ensure well translate the word... 

                        • 9. Re: Multilingual form
                          bigtom

                          It's not bad but real world testing with a server and 4G, 3G should be done eventually. My module is setup with Yandex API, but basically similar to using GT.

                           

                          Is the file you have an example of implementing localization or a localization tool? Sounds like a bit of both. It looks nice so far. Like you said, you are not the first, but certainly looks like the most user friendly interface.

                           

                          Things to note for resetting variables on language change:

                           

                          You do not need to have the user enter the $$. Just the word or  phrase.

                           

                          You do not need a loop in your script.

                           

                          You do not need a script at all.

                          • 10. Re: Multilingual form
                            gofmp15

                            My design works this way:

                            In the new button bar you enter something like

                            $$variablename

                            or If(isemtpy($$VariableName) ; "Variable Name" ; $$VariableName)

                            Text labels and the old buttons get:

                            <<$$VariableName>>

                             

                            The user enters his new variable into a field.

                            Another field produces $$NewVariableName

                            A third waits for the translation

                             

                            The rest is sheer poetry... 

                            • 11. Re: Multilingual form
                              ibrahim_bittar

                              Hello

                               

                              Take a look at this sample file, hope it helps:

                               

                              http://www.eikonsys.com/downloads/samples/languageswitch.zip

                               

                              regards

                               

                              Ibrahim

                              • 12. Re: Multilingual form
                                bigtom

                                gofmp15 you can see ibrahim_bittar is using virtual lists which is another valid way to do this and it gets you value lists as well as labels.

                                • 13. Re: Multilingual form
                                  gofmp15

                                  I had tested similar ideas over the years and rejected all of them settling on my current technique. One table, one script.

                                   

                                  The problem with the sample file is that it requires more than one table and the big problem is that to make it work you must create several relationships to any table in the db. Thise lead me to abandon this method after having to set up the 33rd set of relationships in just one table... 

                                   

                                  My method uses only one table for the words/variables and a master file can be used to store the values. Then any table can import the new values. It was designed to be simple and powerful.

                                  • 14. Re: Multilingual form
                                    bigtom

                                    I agree with you there and that's why I prefer variables for labels rather than VLs. The other reason I prefer variables is many time labels can exist in one layout object rather than many. Some solutions only need labels.

                                    1 2 Previous Next