2020年6月1日月曜日

Oracle APEXアプリケーションのグローバル化(1) - はじめに

Oracle APEXには、作成したアプリケーションを色々な言語に対応させる機能が組み込まれています。簡単なシナリオを定義して、それに沿って作成されるアプリケーションを各国語に対応させることで、その手順を紹介します。


一口にグローバル化、といっても、画面に表示されている領域のタイトルや、ボタンに表示されているラベル、入力項目名、レポートの列名、さらにはデータベースに入っているデータそのもの、日時の表記、タイムゾーンなど、検討が必要な事項は多岐に渡ります。これらを項目に分けて解説していきます。 

Oracle APEXアプリケーションのグローバル化として、各種の機能を解説している記事は以下です。

このアプリケーションは、架空のファーストフード店のメニュー(竹家としています)をいくつかの言語でリスト表示するものです。

まず、それぞれの言語でのメニューの表記は以下とします。
 日本語 英語 中国語(簡体字) 韓国語
ごろごろ創業ビーフカレーTakeya Tender Boil Beef Curry香炖牛肉竹屋原始咖喱套餐 소고기 듬뿍 타케야원조 소고기 카레
ビビン丼BBQ Beef & Kimchi Bowl泡菜五花牛肉盖饭김치소갈비덮밥
プレミアム牛めしPremium Gyumeshi高级牛肉饭프리미엄 소고기덮밥

次にサイズの表記は以下とします。
 日本語 英語 中国語(簡体字) 韓国語
ミニ盛Mini小碗미니사이즈
並盛Regular平碗보통사이즈
大盛Large大碗곱빼기

そして、レポートとして表示するデータを、主言語である日本語のデータとして以下を準備します。
 メニュー名 サイズ値段 
 ごろごろ創業ビーフカレー 並盛790 
 ビビン丼 大盛 600
 プレミアム牛めし ミニ盛 490

非常にシンプルな例ですが、ユーザーが選んだ言語にしたがって以下のようなレポート表示が行われる実装を紹介していきます。

日本語での表示です。

英語での表示です。

中国語(簡体字)での表示です。

韓国語(ハングル)での表示です。

日本でOracle APEXのアプリケーションを作成する場合、大抵はプライマリ言語として日本語を選んでいるはずです。ですので、翻訳の手順の紹介も日本語のアプリケーションありきで進めていきます。