画面の変換
- Q画面のユーザーインターフェースはCaravel™によって自動的に変換されますか、それとも手動でセットアップする必要がありますか?
- A
画面ユーザーインターフェースのカスタマイズは次のように行います。
アプリケーションを変換するときに、ユーザーの要望に応じてユーザーインターフェースを自動的に生成するか、単一の画面をカスタマイズするかを選択できます。前者の場合、画面の外観は、Caravel™が提供し、画面の各フィールドに対して同等のHTMLコードを生成できるようにする特定の変換規則に基づいています。結果は、元のものと同じフィールド、サイズ、および位置を生成するHTMLコードになります。機能に影響しない色の属性、ソース、背景色などをカスタマイズして、生成されたすべての画面に自動的に適用することができます。
後者の場合、お客様がカスタマイズしたい各画面用のJSPテンプレートを作成できます。このテンプレートは任意の画面とすることができ、オリジナルと同じである必要はありません。画面の準備を容易にする目的で、Caravel™は標準のJSPメカニズムを提供し、アプリケーションからの情報(レコード、サブファイル、フィールド、属性)の使用を容易にする「JSP TagLib」を使用します。
Caravel™はこれらのフィールドを管理し、情報をアプリケーションに送り返すためのJavaScript関数も提供しています(例えばファンクションキー)。このソリューションは、設計者が望む通りの見た目を実現するためのあらゆる柔軟性を提供します。
これら2つの解決策は互換性がありません。アプリケーションの一部の画面のみをカスタマイズすることは可能です。このプロセスは漸進的に行うことも、あるいはお客様のニーズに応じて行うこともできます。アプリケーションは最初にカスタマイズされた画面を検索し、それが見つからない場合は、選択されたユーザーインターフェースのパラメータに従って動的に画面を作成します。
カスタマイズプロセスは、お客様側で実行することも、プロジェクトの一部として組み込むことも可能です。上記最後のケースでは、お客様は希望するルール、標準、およびスタイルを定義できます。アプリケーションの見た目はJSPテンプレート群によって定義されているため、任意のグラフィック要素をいつでも変更できます。
- Q画面を多言語対応に変換できますか?日本語の画面を多言語化(例えば日本語と英語対応)にできますか?
- A
オリジナルが多言語対応ではない場合、変換プロセス中に言語に固有のリテラルを抽出し、それらを外部ファイルにエクスポートするように構成できます。そのファイルを編集して翻訳することによって、アプリケーションを多言語対応に変換することができます。
- QラジオボタンやプルダウンのようなHTML形式に変更することは可能ですか?可能な場合、画面定義ファイルにはどのように記述しますか?頻繁に使用されるいくつかの機能を変更したいと思います。
- A
Caravel™によって変換されたアプリケーションは、インターフェース構造からロジックが分離されています。
そのため、変換されたプログラムに影響を与えずにインターフェースをカスタマイズすることが可能です。したがって、ボタン、ラジオボタン、プルダウンなどのグラフィック標準コンポーネントを含めることが可能です。
変換されたプログラムは、JSPやTypeScriptを使用してユーザーとのデータ交換を管理します。このJSPやTypeScriptはユーザーに情報を表現する役割を担います。
画面のカスタマイズは、グループまたは1つずつ行うことができます。画面のグループで使用される共有部品を使うか、または画面ごとに個別の部品(JSPやTypeScript+HTML+CSS)を使用します。
変換中に、CSS(スタイルシート)はデフォルトで全ての画面に対して生成され、いつでも変更することができます。
さらに、Caravel™アーキテクチャでは、変換されたアプリケーションをRESTサービスアーキテクチャで使用することができます。この場合、変換されたアプリケーションへのRESTサービスによってHTML + CSS + (JavaScriptまたはAngular TypeScript)を使用することが可能です。
- Q上記質問に関連して、使用できない機能はありますか。また、同じアーキテクチャで新しいスクリーンを開発する際の制約について知りたいです。
- A
画面のカスタマイズに大きな制限はありません。ただし、唯一の制約は、プログラムが画面データをどのように使用するかに関連します。
具体的には、変換されたプログラムがカーソル位置や、すでに押されたファンクションキーを考慮する必要がある場合があり、カスタマイズではこの動作を考慮し、尊重する必要があります。
Caravel™変換では、これらの状況を管理するためのデフォルト実装が用意されています。
さらに、画面間のナビゲーションロジックを考慮する必要があります。この動作によって、スクリーンのカスタマイズの柔軟性が左右されることがあります。
- Q膨大な数の列があるため、現在、画面を複数の画面に分割しています。しかし、将来的にはそれらを1つの画面に統合したいと考えています。 そのため、24×80以上の画面を表示することや、行と列について制限はありますか?
- A
1つの画面に複数の画面を統合して画面サイズを変更することは可能です。
画面のカスタマイズにはさまざまなレベルがあります。影響の少ないカスタマイズ(例:CSSの変更のみ)から、ロジックの変更が必要となる影響の大きいカスタマイズまであります。
いずれの場合でも、アプリケーションの機能が維持されるようにするために、ロジックの変更が必要になることがあります。(例:1画面に表示する件数に関するロジック変更や、画面レイアウト変更に対応する変更)
- QJavaScriptは利用可能ですか?可能な場合、画面定義ファイルでどのように定義しますか?新しい機能、例えばTABがシフトしたときに値をチェックする、といったものを追加したいと思います。また、jQueryなどのJavaScriptを使用した画面コンポーネントを使用して、同じアーキテクチャで新しい画面を開発したいと思います。
- A
JavaScriptは利用可能です。
JavaScriptやjQueryのようなフレームワークを使用することは可能です。JSPを使用している場合、アプリケーションがHTML + JavaScriptを使用している場合、またはAngularを使用している場合でも、これが可能です。
Caravel™の標準実装では、お客様の要望に応じてJSP、HTML+JavaScript、HTML+Angular+TypeScriptの選択が可能です。
- QCSSは利用可能ですか?もし可能なら、どのように定義しますか?
— CSSファイルの定義方法、および各タグのクラス属性について。将来、新しい画面を開発するときは、CSSデザインを統合したいと思います。 - A
CSSは100%標準的な方法で使用できます。すべてのJSPまたはHTMLに目的のCSSを含めることができます。
Caravel™の標準的な実装では、画面にはデフォルトでCSSが含まれています。