I’m supporting an application that has a large number of rules inside the SmartForms. My task is to change some text. Instead of combing through all of the views and forms to find the text I need to change, I thought I’d try to work a little smarter.
The Set Language control enables a limited multilingual capability for K2 SmartForms. The control was developed by a developer at K2, though the control is not officially supported as part of the K2 SmartForms product. The control may be downloaded from the K2 Community. An account is required to perform the download. Be sure to consult the document included in the download.
This post walks through a simple demonstration of how to use the Set Language multilingual control. In my brief exploration, I found that the control will not work on objects like message popups. In this demonstration, I manufacture a message popup using a simple subform, and show how a language value can be passed from one form to another to preserve the appearance of text in a chosen language.
In the second post of this series I showed how you could use XML functions to return your recordset from the database as HTML
row and cell elements (“Make the Database Return Your Recordset as an HTML Table — Using XML”, 8/6/2016). We did this by naming the XML elements after the appropriate HTML elements.
If we stopped at this point, we could create a SmartObject that returns our string of HTML
data to the caller. For example, we can already have the HTML for the rest of the report elsewhere, and this SmartObject simply “plugs in” the data to be displayed. This could be as easy as concatenating strings (say, an HTML report header, the HTML
output from the SmartObject, and an HTML report footer) in a Data Event.
We can go further. By using XSL Transform, we should be able to have the database return our entire HTML report — not just the table.