任意のメッセージコードについて、言語の LanguageObjectName (このパラメーターが省略されている場合は現在の言語) を検索します。
GetMessageText(MessageCode, [
LanguageObjectName ]
)
入力値の説明: MessageCode は、翻訳対象の文字列です。
LanguageObjectName は、翻訳に使用される言語の名前です。
オブジェクト: Procedure、
Transaction、
Web Panel、
Panel、
Data Provider ジェネレーター: .NET、
.NET Framework、
Java、
Apple、
Android、
Angular
次のフレーズは、
Webパネルに配置されたテキストブロック (テキストと呼ばれる) で翻訳されます。
Text.Caption = GetMessageText('Test about the GetMessageText function', 'Spanish')
Web Panel を指定した後、次のように、Spanish 言語オブジェクトの [ ローカライズされたテキスト ] 列にあるフレーズを翻訳します。
次に、F5 キーを押します。Web Panel には、コントロールが次のように表示されます。
注: この関数はエラーは返しません。現在の言語で MessageCode が見つからない場合、MessageCode は返されません。したがって、MessageCode に、メッセージとして意味が分かるテキストを指定しておくと便利です。
実行時に
[ Translation Type ] プロパティを設定する場合は、GetMessageText 関数の両方のパラメーターに、感嘆符 (!) をつけてください。
Text.Caption = GetMessageText(!'Test about the GetMessageText function', !'Spanish')
また、目的のテキストをコードに記述する必要もあります。これにより、アプリケーションのメタデータに目的の翻訳が取り込まれます。実行時翻訳の正しいコードは次のとおりです。
&sample = 'Test about the GetMessageText function' // アプリケーションのメタデータにテキストを追加するために必要
Text.Caption = GetMessageText(!'Test about the GetMessageText function', !'Spanish')
注: 実行時に感嘆符のないリテラルが翻訳されて表示されるように、分析時に GetMessageText 関数が使用されます (指定子によってインジェクトされます)。この結果、DBMS が GetMessageText を評価できないためにパフォーマンスの問題が発生したり、分析の警告や次のようなエラーが発生したりする可能性があります。:
spc0075 演算項 getmessagetext( "M") は、IN 比較の &var のデータタイプと一致しません。(Events, Line: 2)