I need to create a BDE that allows to store the text in a language different from the one of the connection to LN.
This question has been asked in a different way before, but no answer has been found:
The text field being passed to the BDE has the datatype 'tctxtn', which has a DB Type of 'db.text'. Internally, the BDE calls a function 'convert.xml.to.text()', which converts the content of the XML node to a text number. The text is stored with the language set for the user of the connection. The requirement is that the text needs to be stored in language 'x' instead.
- Using a connection with a different user/language is not a solution, because it could be that the table has several text fields that require different languages.
- I tried using the 'After Execute Hook' to 'transfer' the text via the 'text.copy.language.shared()' function from the current language to 'x'. It works for a 'Create', but I have seen that the Text Keyword fields are getting blanked out, so there is some conflict with the text handling. When trying the same for a 'Change', it does not work. The function 'text.present.in.language.shared()' returns that text exists for the source language, but when using 'text.copy.language.shared()', it does not find any. I am suspecting that this is caused by the tools processing (some of) the text in a separate database transactions, so that the text number is created without locking the text indefinitely.
- A suggestion of one the previous posts was to pass the text as a string and then store that with the correct language. This has the the limitation that text cannot be longer than the maximum length of the domain, so it is not ideal, either.
Does anyone have any experience or suggestions with this?