一口にグローバル化、といっても、画面に表示されている領域のタイトルや、ボタンに表示されているラベル、入力項目名、レポートの列名、さらにはデータベースに入っているデータそのもの、日時の表記、タイムゾーンなど、検討が必要な事項は多岐に渡ります。これらを項目に分けて解説していきます。
Oracle APEXアプリケーションのグローバル化として、各種の機能を解説している記事は以下です。
- はじめに
- 初期アプリケーションの作成
- 言語マッピングの作成
- アプリケーション自体の対応
- 言語の切り替え
- タイムゾーンの扱いと自動タイムゾーン
- APIを使用したタイムゾーン設定
- 日時データ型と現在時刻
- 置換文字列とショートカット
このアプリケーションは、架空のファーストフード店のメニュー(竹家としています)をいくつかの言語でリスト表示するものです。
まず、それぞれの言語でのメニューの表記は以下とします。
日本語 | 英語 | 中国語(簡体字) | 韓国語 |
ごろごろ創業ビーフカレー | Takeya Tender Boil Beef Curry | 香炖牛肉竹屋原始咖喱套餐 | 소고기 듬뿍 타케야원조 소고기 카레 |
ビビン丼 | BBQ Beef & Kimchi Bowl | 泡菜五花牛肉盖饭 | 김치소갈비덮밥 |
プレミアム牛めし | Premium Gyumeshi | 高级牛肉饭 | 프리미엄 소고기덮밥 |
次にサイズの表記は以下とします。
日本語 | 英語 | 中国語(簡体字) | 韓国語 |
ミニ盛 | Mini | 小碗 | 미니사이즈 |
並盛 | Regular | 平碗 | 보통사이즈 |
大盛 | Large | 大碗 | 곱빼기 |
メニュー名 | サイズ | 値段 |
ごろごろ創業ビーフカレー | 並盛 | 790 |
ビビン丼 | 大盛 | 600 |
プレミアム牛めし | ミニ盛 | 490 |
非常にシンプルな例ですが、ユーザーが選んだ言語にしたがって以下のようなレポート表示が行われる実装を紹介していきます。
日本語での表示です。
英語での表示です。
中国語(簡体字)での表示です。
韓国語(ハングル)での表示です。
日本でOracle APEXのアプリケーションを作成する場合、大抵はプライマリ言語として日本語を選んでいるはずです。ですので、翻訳の手順の紹介も日本語のアプリケーションありきで進めていきます。