I'm just looking at the new functionality in the release notes for 23.4 and 24.1 and I see Translation Sets that allow you to translate your applications to another language. The walkthrough on the release notes show going in to an interface, clicking a button to generate strings which get put in to the translation object that then you export as excel and send to your translators, to which they fill out, send back, and then you re-upload.
But I'm confused about a few things.
1. Our application has over 100s of interfaces, do we need to go through each interface and click this button?
2. If we do that, it's only getting the strings where the text is hardcoded as string values on the interface. We have always put our labels, instructions, etc in constants so that if we ever have to change verbiage we can just change the constant instead. This functionality is not picking up the constants? Is it expected that we remove all constants and go back to literal strings on the interfaces? We have over 1,000 constants throughout the application, most named properly to identify ("TEXT_LABEL") but that doesn't seem like a good idea to do that? Am I missing something?If anyone has any thoughts, please let me know.
Thanks
Discussion posts and replies are publicly visible
One last question. Since I have an application with 1000+ interfaces and constants in the spots everywhere for labels and instructions. What is the best approach to identify those spots? Is it just going in to each interface one by one and just looking line by line? Crtl F'ing for 'label' or 'instructions' or 'cons'? - I had another team member mention a plug-in that can be used to identify the spots - they instructed to use this to atleast identify the labels and instructions - https://community.appian.com/b/appmarket/posts/application-translator - but I havent done anything with it yet and I don't even know if using this plug in from 4 years ago really makes sense.Thanks again.
That plugin will not help you in refactoring your apps to make use of translation sets. BTW, do you need to do that? If not, either continue with what you are doing now, or refactor objects when touching them to the new style of choice.
The ask is coming in to refactor the whole application. In regards to government in Canada requiring language to be french canadian. They want the application to be in both english and french now. Understood the plugin wont actually do the refactoring, (and apologies, I havent looked much in to it yet) but will it scan the application for everything and then make a excel sheet, then I can make that the translation set as a starting point. When I go in to my first interface, I could just delete the constant for say "Manage Documents" and just type translation!ManageDocuments and it will link to that in the Translation Set?
Did you try the built in feature to create translations automatically from existing interfaces?
It only works with hardcoded strings, does not pick up constants.
OK. Good to know. I never tested that plugin, but checked the documentation. AFAIK it tries to create property files. But I have no idea whether it picks up constants.