ヘッダーをスキップ
Oracle® Fusion Middleware Oracle ADFデスクトップ統合によるアプリケーションの開発
12c (12.1.2)
E48098-01
  目次へ移動
目次

前
 
次
 

9 統合Excelワークブックの外観の構成

この章では、Excelでの定義済スタイルおよびカスタム・スタイルを使用して統合Excelワークブックの外観を構成する方法、EL式を使用して実行時にワークブックのOracle ADFコンポーネントにスタイルを動的に適用する方法、ラベルを使用してExcelワークブックをブランディングする方法、およびワークシート保護機能を使用する方法についても説明します。

この章の内容は次のとおりです。

9.1 統合Excelワークブックの外観の構成の概要

Excel機能とOracle ADF機能の両方を使用して、統合Excelワークブックの外観を構成できます。ワークブックの外観を構成すると、エンド・ユーザーにとってのワークブックの使い勝手をよくすることができます。たとえば、実行時にADF出力テキスト・コンポーネントをレンダリングするセルに特定のスタイルを適用して、そのセルが読取り専用であることをエンド・ユーザーに示すことができます。また、会社のスタイル・シートやExcelワークブックが統合するFusion Webアプリケーションの色のスキームと一致するように、統合Excelワークブックの外観を構成する場合もあります。

統合Excelワークブックでスタイルを使用してデータを構成することには、様々な利点があります。たとえば、ADF出力テキスト・コンポーネントに特定のスタイルを使用し、ADF入力テキスト・コンポーネントには異なるスタイルを使用できます。

ADFデスクトップ統合には、ワークブックで構成するADFデスクトップ統合コンポーネントに適用する事前定義済のExcelスタイルがいくつか用意されています。デスクトップ統合プロジェクトのニーズを満たすために、追加のスタイルを定義することもできます。その場合は、ロケールや地域、言語に応じて様々にレンダリングされるExcelワークブックの形式を十分に理解しておいてください。

9.1.1 統合Excelワークブックの構成のユースケースおよび例

スタイルを使用して、ADFデスクトップ統合のコンポーネントの外観をカスタマイズできます。その例として、図9-1は、EditCustomers-DT.xlsxのADF表の列に適用される様々なスタイルを示しています。図9-1に示すスタイルの一部は事前定義済スタイルで(例: _ADFDI_TableCellStyle)、その他はExcelが作成したもの(例: Explanatory Text)です。

図9-1 EditCustomers-DT.xlsxのADF表の列に適用されるスタイル

ADF表の列に適用されるスタイル

9.1.2 統合Excelワークブックの外観を構成するための追加の機能

統合Excelワークブックの外観を構成するためにスタイルを適用した後、ワークブックを構成するための機能をさらに追加することが必要になる場合があります。使用可能な他の機能へのリンクは次のとおりです。

  • ブランディング: ADFデスクトップ統合には、スタイル以外にもプロパティの集合(BrandingItems)が用意されており、これによって、アプリケーション名、アプリケーションのバージョン詳細および著作権情報を使用した統合Excelワークブックのブランディングが可能になります。詳細は、9.6項「統合Excelワークブックのブランディング」を参照してください。

  • ローカライズ: Fusion Webアプリケーションでの国際化およびローカライズの処理の一部として、統合Excelワークブックをカスタマイズできます。詳細は、第10章「統合Excelワークブックの国際化」を参照してください。

9.2 スタイルの使用

ADFデスクトップ統合には、Excelで定義されたスタイルを実行時に一部のOracle ADFコンポーネントに適用するメカニズムが用意されています。スタイルの適用をサポートするOracle ADFコンポーネントには、名前にStyleNameを含むプロパティがあります。たとえば、ADF表コンポーネントとADF読取り専用表コンポーネントの列プロパティは、実行時に適用されるスタイルを決定するプロパティHeaderStyleNameおよびCellStyleNameをサポートします。

9.2.1 ADFデスクトップ統合の事前定義済スタイル

多くのプロパティには、ADFデスクトップ統合モジュールのスタイルの事前定義済リストから引き出されるデフォルトの値があります。たとえば、HeaderStyleNameプロパティのデフォルト値は、ADFデスクトップ統合で事前定義されたスタイルの1つである_ADFDI_HeaderStyleです。ADFデスクトップ統合は、ExcelワークブックがADFデスクトップ統合との併用が有効になっている場合、これらの事前定義済スタイルをExcelワークブックに自動的に追加します。

次に、事前定義済スタイルを示します。

  • _ADFDI_FormBottomStyle

  • _ADFDI_FormDoubleClickCellStyle

  • _ADFDI_FormTopStyle

  • _ADFDI_HeaderStyle

  • _ADFDI_InputTextStyle

  • _ADFDI_LabelStyle

  • _ADFDI_OutputTextStyle

  • _ADFDI_ReadOnlyTableStyle

  • _ADFDI_TableCellROStyle

  • _ADFDI_TableCellStyle

  • _ADFDI_TableChangedColumnStyle

  • _ADFDI_TableDoubleClickCellStyle

  • _ADFDI_TableFlagColumnStyle

  • _ADFDI_TableKeyCellStyle

  • _ADFDI_TriangleHeaderStyle

自分で定義するこれらのスタイルや他のスタイルを、統合ExcelワークブックからFusion Webアプリケーションと統合する予定の別のExcelワークブックにマージできます。追加で使用するスタイルをExcelワークブックで作成することもできます。たとえば、日付に固有の形式を追加するには、_ADFDI_TableCellStyleeを複製して、MyTableCellDateStyleという名前を付け、日付に固有の形式を追加します。

実行時にADFデスクトップ統合のコンポーネントに適用するスタイルを決定したら、EL式を記述してスタイルをコンポーネントに関連付けることができます。StyleNameを名前に含むADFデスクトップ統合コンポーネントのプロパティは、EL式を値として受け入れます。他のADFコンポーネントのADFラベル・コンポーネントとLabelプロパティでも、EL式がサポートされます。これらのEL式は、リソース・バンドルで定義された文字列キーの値やFusion Webアプリケーションで定義された属性コントロール・ヒントの値を取得できます。

新しいスタイルの作成と、ワークブックへのスタイルのマージの詳細は、Excelのドキュメントを参照してください。

9.2.2 Excelの日付形式とMicrosoft Windowsの地域と言語のオプション

Excelでセルに適用できる、「数値」スタイルの「日付」に分類される表示形式の一部は、ユーザーがMicrosoft Windowsの「コントロール パネル」からアクセスできる「地域と言語のオプション」を使用してローカル・システムのロケールを変更すると変わります。「タイプ」リストのこれらの形式の先頭に*文字が付きます。図9-2に示す日付の種類の例では、「フランス語(フランス)」の表記規則を使用してセルの日付書式が設定されています。

図9-2 Excelのフランス語の日付書式

Excelの日付書式

エンド・ユーザーが、図9-3にあるように「英語 (米国)」を使用するようにシステムの地域オプションを変更した場合、 図9-2のスタイルでフォーマットされるセルは、「英語 (米国)」の表記規則を使用します。

図9-3 Excelの英語(米国)の日付書式

Excelの地域と言語のオプション

注意:

Excelが時間コンポーネントのないデータ値を適切に書式設定および操作するようにするには、フォームまたは表の属性で、アプリケーションのモデル定義内のjava.sql.Dateデータ型を使用する必要があります。


9.2.3 Oracle ADFコンポーネントへのスタイルの適用方法

Oracle ADFコンポーネントにスタイルを適用するには、プロパティ・インスペクタを使用して、StyleNameを名前に持つプロパティの値を設定します。

始める前に:

スタイルについて理解しておくと役立ちます。詳細は、9.2項「スタイルの使用」を参照してください。

他のADFデスクトップ統合の機能を使用して追加できる機能についても理解しておくと役立ちます。詳細は、9.1.2項「統合Excelワークブックの外観を構成するための追加の機能」を参照してください。

スタイルを適用するには:

  1. 統合Excelワークブックで、変更するOracle ADFコンポーネントを参照するセルを選択して、「Oracle ADF」タブの「プロパティの編集」ボタンをクリックします。

  2. StyleNameプロパティを選択し、参照(...)アイコンをクリックして「式の編集」ダイアログを表示します。

  3. Stylesノードを展開して、実行時にセルに適用するスタイルを選択します。

    たとえば、見出しスタイル(Heading 4スタイル)をバインディング・ウェアハウスID出力テキスト・フィールドに適用します。一般的なスタイルではなくHeading 4スタイルをフィールドに適用することで、データが青色の太字で表示されます。

  4. 「式に挿入」をクリックして、選択したスタイルを「式」フィールドに挿入します。

    図9-4に、「式の編集」ダイアログを示します。

    図9-4 スタイルを適用する「式の編集」ダイアログ

    「式の編集」ダイアログ・ボックスでスタイルを適用しています。
  5. 「OK」をクリックします。

9.2.4 実行時の処理: ADFコンポーネントへのスタイルの適用方法

名前にStyleNameが付いているプロパティの値として入力したEL式は、実行時に評価されます。これが事前定義済スタイルまたは開発者が定義したスタイルに対応する場合、そのスタイルはプロパティを設定したADFコンポーネントに適用されます。

ADFコンポーネントを参照するセルに、ADFのプロパティで定義されたものとは異なるスタイルが適用されている場合、ADFコンポーネントは既存のスタイルを実行時に上書きして、プロパティで定義されたスタイルを適用します。

たとえば、図9-5は、Heading 4スタイルが適用されてデフォルトの_ADFDI_OutputTextStyleスタイルが上書きされた後のバインディング・ウェアハウスIDの実行時の値を示しています。

図9-5 別のスタイルを適用した後の実行時の値

別のスタイルを適用した後の実行時の列の値

9.3 EL式を使用した動的なスタイルの適用

StyleNameを名前に含むOracle ADFコンポーネントのプロパティは、EL式を値として受け入れます。記述するEL式は、実行時に指定されたADFコンポーネントに適用されるExcelスタイルに解決することができます。記述するEL式は、ADFデータ・バインディング式などを使用するExcel式です。ADFデスクトップ統合は、ユーザーがセル間を移動するときやアップロード時には、結果を評価または適用しません。

次の例は、EL式を使用して、実行時のADFコンポーネントの動作および外観を決定できる様々なコンテキストを示しています。例9-1では、ダウンロード時にスタイルを動的に適用します。バインディングのステータス値がClosedの場合、読取り専用スタイル(MyReadOnlyStyle)を適用します。それ以外のときは、別のスタイル(MyReadWriteStyle)を適用します。

例9-1 ダウンロード時にスタイルを動的に適用する場合

=IF("#{bindings.Status}" = "Closed", "MyReadOnlyStyle", "MyReadWriteStyle")

例9-2では、Excel式とADFバインディング式を取り混ぜて使用し、エラーおよびタイプ変換を処理します。

例9-2 エラーをタイプ変換を処理するEL式

=IF(ISERROR(VALUE("#{bindings.DealSize}")), "BlackStyle", IF(VALUE("#{bindings.DealSize}") > 300, "RedStyle", "BlackStyle"))

9.3.1 実行時の処理: EL式の評価方法

実行時にEL式を評価する際、ADFデスクトップ統合はEL式が参照する値を決定します。そしてExcel式のEL式を、その値に置換します。例9-1では、まずADFデスクトップ統合は次のExcel式でEL式、#{bindings.Status}の値を決定します。

=IF("#{bindings.Status}" = "Closed", "MyReadOnlyStyle", "MyReadWriteStyle")

続いて、次の例にあるようにEL式を実行時の値に置換します。ここでは、式はClosedに評価されます。

=IF("Closed" = "Closed", "MyReadOnlyStyle", "MyReadWriteStyle")

Excelは式を評価し、この例ではMyReadOnlyStyleスタイルに適用します。

9.3.2 実行時にスタイルを適用するEL式の記述方法

Oracle ADFコンポーネントのプロパティ・インスペクタからアクセスできる「式の編集」ダイアログに、EL式をサポートするOracle ADFコンポーネントのプロパティのEL式を記述します。図9-6に、ADFボタン・コンポーネントのプロパティ・インスペクタ・ウィンドウから起動された「式の編集」ダイアログを示します。

図9-6 「式の編集」ダイアログ

ELの「式の編集」ダイアログ・ボックス

始める前に:

動的にスタイルを適用する方法を理解しておくと役立ちます。詳細は、9.3項「EL式を使用した動的なスタイルの適用」を参照してください。

他のADFデスクトップ統合の機能を使用して追加できる機能についても理解しておくと役立ちます。詳細は、9.1.2項「統合Excelワークブックの外観を構成するための追加の機能」を参照してください。

実行時にスタイルを適用するEL式を記述するには:

  1. 統合Excelワークブックを開きます。

  2. EL式を記述する、Oracle ADFコンポーネントを参照するExcelワークシートのセルを選択します。

  3. 「Oracle ADF」タブの「プロパティの編集」ボタンをクリックして、プロパティ・インスペクタを表示します。

  4. EL式を関連付けるプロパティ・インスペクタのプロパティを選択し、参照(...)アイコンをクリックして「式の編集」ダイアログを表示します。


    注意:

    「式の編集」ダイアログは、手順2で選択したOracle ADFコンポーネントがEL式をサポートする場合のみ表示されます。コンテキストによっては、参照(...)アイコンで「アクションの編集」ダイアログなどの他のエディタが起動する場合があります。


    図9-6に示すように「式の編集」ダイアログには、EL式で参照できるOracle ADFコンポーネント、バインディング、スタイル、リソース、Excel機能の階層リストが表示されます。このダイアログに入力するEL式の構文の詳細は、付録B「ADFデスクトップ統合のEL式」を参照してください。

9.3.3 スタイルを適用するEL式に関する留意事項

スタイルに評価されるEL式は、次の場合に適用されます。

  • ADF表コンポーネントがDownloadアクションまたはDownloadForInsertアクションを起動する場合

  • 行がADF表コンポーネントに挿入される場合

  • ワークシートがDownSyncアクションを起動する場合

スタイルに評価されるEL式は、次の場合には適用されません。

  • ADF表コンポーネントがRowDownSyncアクションを起動する場合

  • エンド・ユーザーがセルの形式のプロパティを編集する場合

    また、エンド・ユーザーがセルの値を編集すると、スタイルに評価されるEL式は再評価されない点にも注意してください。

  • EL式の実行時の値は、エンド・ユーザーの統合Excelワークブックで定義されたスタイルには一致しません。

    このシナリオでは、対象セルのスタイルの形式は変わりません。既存のスタイル形式が保持されます。クライアントサイドのロギングを構成した場合、EL式がエンド・ユーザーの統合Excelワークブックで定義されていないスタイルに評価されると、ADFデスクトップ統合はログ・ファイルにエントリを生成します。クライアントサイドのロギングの詳細は、C.3項「統合Excelワークブックのログ・ファイルの生成」を参照してください。

9.4 統合Excelワークブックでのラベルの使用

ラベルを使用して、統合Excelワークブックの機能をどのように使用するかについての情報をエンド・ユーザーに提供します。リソース・バンドルで定義された文字列キーの値あるいは属性コントロール・ヒントを取得するEL式を記述できます。統合Excelワークブックは、ワークブックが初期化されるときにのみLabelプロパティの値を評価します。

9.4.1 リソース・バンドルからの文字列キーの値の取得

図9-7に、ADFデスクトップ統合のSummitサンプル・アプリケーションのEditWarehouses-DT.xlsxワークブックの設計時の表示の部分を示します。対応するLabelプロパティにEL式が指定されている、ADFラベル・コンポーネントとADF入力テキスト・コンポーネントの例を示します。

図9-7 Labelプロパティを持つADFラベル・コンポーネントとADF入力テキスト・コンポーネントの設計時の表示

labelプロパティの設計時の表示

実行時にこれらのEL式は、ADFデスクトップ統合のSummitサンプル・アプリケーションに登録されたresリソース・バンドルに定義された文字列キーに解決されます。リソース・バンドルは、「ワークブック・プロパティ」ダイアログで定義します。リソース・バンドルからの文字列キーの参照の詳細は、10.2項「統合Excelワークブックでのリソース・バンドルの使用」を参照してください。

図9-8は、図9-7に設計モードで示されているADFラベル・コンポーネントとAD入力テキスト・コンポーネントに相当する実行時の表示を示しています。

図9-8 Labelプロパティを持つADFラベル・コンポーネントとADFボタン・コンポーネントの実行時の表示

labelプロパティの実行時の表示

9.4.2 属性コントロール・ヒントの値の取得

リソース・バンドルからの文字列キーの他に、ADFラベル・コンポーネントと他のADFコンポーネントのLabelプロパティは、JDeveloperプロジェクトのエンティティ・オブジェクトとビュー・オブジェクトに定義する属性コントロール・ヒントを参照できます。図9-9は、EditCustomers-DT.xlsxワークブックのADF表コンポーネントにあるPhone列の式ビルダーを示しています。式ビルダーは、実行時に属性コントロール・ヒントに定義される値(Phone)を取得する、Phone列のHeaderLabelプロパティに対するEL式を含みます。

図9-9 Labelプロパティの属性コントロール・ヒントの値を取得するEL式

属性コントロール・ヒントを取得するEL式

属性コントロールのヒントは、ビュー・オブジェクトとエンティティ・オブジェクトの両方に構成できます。エンティティ・オブジェクトに属性コントロール・ヒントを追加する方法の詳細は、Oracleアプリケーション開発フレームワークによるFusion Webアプリケーションの開発のエンティティ・オブジェクトの属性コントロール・ヒントの定義に関する項を参照してください。ビュー・オブジェクトのUIヒントを定義する方法の詳細は、Oracleアプリケーション開発フレームワークによるFusion Webアプリケーションの開発のビュー・オブジェクトのUIヒントの定義に関する項を参照してください。

9.4.3 統合ExcelワークブックがLabelプロパティをどのように評価するか

統合Excelワークブックは、開発者またはエンド・ユーザーが初めてワークブックを開いた後、ワークブックが初期化されるときにADFコンポーネントのLabelプロパティを評価します。統合Excelワークブックは、ワークブック自身がシステム上のディレクトリに保存されるときに、Labelプロパティの取得された値を保存します。

Labelプロパティの取得された値は、ワークシートのDownSyncアクションやADF表コンポーネントのDownloadアクションのようなアクションの起動中にリフレッシュされません。表A-17に示されるようにワークブックのアクションClearAllDataまたはEditOptionsを起動する場合、Labelプロパティの取得された値を間接的にリフレッシュします。

9.5 操作性を向上するスタイルの使用

統合Excelワークブックのエンド・ユーザーに、Fusion Webアプリケーションに統合する目的で提供するADFコンポーネントの使用方法に関するわかりやすい情報を提供することはよい習慣です。これには次のようにします。

9.5.1 使い勝手を向上するADFラベル・コンポーネントの使用

ADFラベル・コンポーネントを使用して、統合Excelワークブックのエンド・ユーザーに、ワークブックで他のADFコンポーネントを使用する方法に関する情報を提供できます。たとえば、便宜上は多くのフォームで*を使用して、入力フィールドへの値の入力が必須であることをエンド・ユーザーに示します。図9-10は、2つのADF入力テキスト・コンポーネントと隣接するセルのADFラベル・コンポーネントを示しています。それぞれのADFラベル・コンポーネントは、実行時にリソース・バンドルから文字列キーの値を取得するEL式を参照します。各文字列キーは、値の入力が必須であることをエンド・ユーザーに示すために、*文字を含めます。

図9-10 エンド・ユーザーに説明を提供するADFラベル・コンポーネント

エンド・ユーザーに説明を提供するADFラベル・コンポーネント

リソース・バンドルの使用の詳細は、10.2項「統合Excelワークブックでのリソース・バンドルの使用」を参照してください。

9.5.2 統合Excelワークブック内の読取り専用プロパティに関する留意事項

統合Excelワークブックの読取り専用プロパティに関して、次の点に注意してください。

  • ADF出力テキスト、ADFラベルおよびADF表ヘッダー行には、読取り専用のプロパティはありません。ただし、これらのコンポーネントは読取り専用の動作を意味してきました。また、エンド・ユーザーはこれらのコンポーネントをホストするセルに値を入力でき、これらのセルに表示される値を一時的に変更できます。ADFデスクトップ統合は、ワークシートからアップロードする際はこれらの変更を無視し、Fusion Webアプリケーションからデータをダウンロードする際にこれらを上書きします。

  • ADF入力テキスト・コンポーネント、ADF値リスト・コンポーネント、TreeNodeListサブコンポーネントには、それぞれに読取り専用のプロパティ(ReadOnly)があります。


    注意:

    ADF入力テキスト・コンポーネントのValueプロパティにExcel式を指定する場合、コンポーネントはReadOnlyプロパティがTrueに設定されているかのように動作します。コンポーネントは、ReadOnlyプロパティの実際の値を無視します。


  • 実行時に読取り専用セルの値を保護するには、ワークシート保護を自動に設定します。ワークシート保護を有効にした後で読取り専用セルの編集を試みた場合、Excelで警告メッセージが表示され、編集はブロックされます。ワークシート保護の詳細は、9.7項「ワークシート保護の使用」を参照してください。

  • Excelのシートの保護機能やブックの保護機能は、統合Excelワークブックで直接使用しないでください。また、エンド・ユーザーがこれらの機能を使用しないようにしてください。

エンド・ユーザーの混乱を避けるため、ADF出力テキスト・コンポーネントなどのコンポーネントに対して、コンポーネントが読取り専用か編集可能かをエンド・ユーザーに示すスタイルを適用してください。デフォルトでは、ADF出力テキスト・コンポーネントは事前定義済のスタイル、_ADFDI_OutputTextStyleを使用します。この章の説明にあるように、独自のスタイルを定義してそれをコンポーネントに適用できます。

ADFデスクトップ統合のコンポーネントがサポートするプロパティの詳細は、付録A「ADFデスクトップ統合コンポーネントのプロパティとアクション」を参照してください。

9.6 統合Excelワークブックのブランディング

ADFデスクトップ統合には、アプリケーション名やバージョン情報、著作権情報などの情報によって構成して統合Excelワークブックのブランディングに使用できるいくつかの機能があります。この情報を統合Excelワークブックに関連付けるために、ワークブックのBrandingItemsプロパティ・グループを使用できます。エンド・ユーザーがViewAboutDialogワークブック・アクションを実行時に起動するリボン・ボタンをクリックすればこのブランディング情報を閲覧できるように、8.3項「実行時リボン・タブの構成」の説明に従って、リボン・タブを構成する必要があります。ワークブック・アクションの詳細は、表A-17を参照してください。

また、リソース・バンドルに文字列キーを定義して、タイトルなどの情報を1つの場所に定義しておくと、実行時、EL式がこれらの文字列キーの値を取得する際に、統合Excelワークブック内の複数の場所でこの情報を使用できます。文字列キーの定義の詳細は、10.2項「統合Excelワークブックでのリソース・バンドルの使用」を参照してください。

9.6.1 統合Excelワークブックのブランディング方法

ワークブックBrandingItemsプロパティ・グループの値を定義します。

始める前に:

統合Excelワークブックのブランドのカスタマイズ方法を理解しておくと役立ちます。詳細は、9.6項「統合Excelワークブックのブランディング」を参照してください。

他のADFデスクトップ統合の機能を使用して追加できる機能についても理解しておくと役立ちます。詳細は、9.1.2項「統合Excelワークブックの外観を構成するための追加の機能」を参照してください。

統合Excelワークブックをブランディングするには:

  1. 統合Excelワークブックを開きます。

  2. 「Oracle ADF」タブの「ワークブック」グループで、「ワークブック・プロパティ」をクリックします。

  3. 「ワークブック・プロパティの編集」ダイアログで、BrandingItemsの入力フィールドの横にある参照(...)アイコンをクリックします。

  4. 「BrandingItemsの編集」ダイアログで、「追加」をクリックして、新しい要素に次のように値を指定します。

    • Name

      定義するブランディング項目の名前、またはEL式を指定します。

    • Value

      リテラル文字列を指定するか、または参照(...)アイコンをクリックして、式ビルダーを起動し、実行時に値を取得するEL式を記述します。BrandingItemsは、リテラル文字列またはリソース式を使用しなければならず、バインディング式を一切含むことはできません。

    図9-11に、ADFデスクトップ統合のSummitサンプル・アプリケーションのブランディング項目の設計時の表示を示します。

    図9-11 ADFデスクトップ統合のSummitサンプル・アプリケーションのブランディング項目の設計時の表示

    ブランディング項目の設計時の表示
  5. 「OK」をクリックします。

9.6.2 実行時の処理: BrandingItemsプロパティ・グループ

実行時には、BrandingItemsプロパティ・グループに定義する名前と値の組合せが、「Oracle ADF」タブの「情報」ボタンからエンド・ユーザーが起動するダイアログに表示されます。これは、8.3項「実行時リボン・タブの構成」の説明に従って、表示するように構成済です。図9-12に、EditCustomers.xlsxワークブックのブランディング項目の実行時の表示を示します。

図9-12 ADFデスクトップ統合のSummitサンプル・アプリケーションのブランディング項目の実行時の表示

ブランディング項目の実行時の表示

9.7 ワークシート保護の使用

デフォルトでは、ロックされたセルおよびADFデスクトップ統合の読取り専用コンポーネント(ADFラベルおよびADF出力テキストなど)の値をエンド・ユーザーが実行時に編集できます。データをアップロードする際、Fusion Webアプリケーションからデータをダウンロードするときに、ADFデスクトップ統合はこれらの変更を無視して上書きします。

ロックされたセルが実行時に編集されるのを防ぐため、ワークシート保護を有効にする必要があります。オプションで、エンド・ユーザーがワークシート保護をオフにしないように、パスワードを提供できます。

9.7.1 ワークシート保護を有効化する方法

ワークシート保護を使用すると、ロックされたセルおよび読取り専用セルについて正真正銘の読取り専用モードを有効化し、実行時に編集されないようにします。

始める前に:

ワークシート保護について理解しておくと役立ちます。詳細は、9.7項「ワークシート保護の使用」を参照してください。

他のADFデスクトップ統合の機能を使用して追加できる機能についても理解しておくと役立ちます。詳細は、9.1.2項「統合Excelワークブックの外観を構成するための追加の機能」を参照してください。

ワークシート保護を有効化するには:

  1. 統合Excelワークブックを開きます。

  2. 「Oracle ADF」タブの「ワークブック」グループで、「ワークブック・プロパティ」をクリックします。

  3. 「ワークシート・プロパティの編集」ダイアログで、Protectionプロパティを展開して次のように値を構成します。

    • 実行時にワークシートの保護を有効化するには、「モード」「自動」に設定します。

    • 必要があれば、「パスワード」・フィールドに値を入力します。エンド・ユーザーは、この値を知らなければ実行時にシートの保護をオフにできません。

      パスワードは暗号化されず、Excelで有効なパスワードの長さは最大255文字です。これより長いパスワードを指定すると、シート保護を切り替える際に実行時に警告なしで切り捨てられます。

    図9-13に、ADFデスクトップ統合のSummitサンプル・アプリケーションのワークシート保護の設計時の表示を示します。

    図9-13 ADFデスクトップ統合のSummitサンプル・アプリケーションのワークシート保護の設計時の表示

    ワークシート保護モードの設計時の表示
  4. 「OK」をクリックします。

9.7.2 実行時の処理: ロックされたプロパティの動作方法

実行時にエンド・ユーザーが読取り専用のセルやADFデスクトップ統合の読取り専用コンポーネントを編集しようとすると、Excelに図9-14に示すような警告メッセージが表示されます。

図9-14 実行時のワークシート保護の警告

実行時のワークシート保護エラー

ワークシート保護が有効化されている場合、ADFデスクトップ統合はADFデスクトップ統合コンポーネントの範囲にあるセルのLockedプロパティを制御します。ADFデスクトップ統合コンポーネントの範囲外にあるLockedプロパティは、影響を受けません。ADFデスクトップ統合コンポーネントの範囲外にあるLockedプロパティは、影響を受けません。

実行時には、ADFデスクトップ統合はコンポーネントの読取り専用動作を評価します。ADFラベルやADF出力テキストなど一部のコンポーネントは常に読取り専用で、ADF入力テキストのような他のコンポーネントは読取り専用のプロパティを持っています。実行時には、読取り専用コンポーネントがtrueに評価されると、Lockedプロパティはtrueに設定されます。ADF表コンポーネントのヘッダー・ラベルは常に読取り専用ですが、列のサブコンポーネントはADF出力テキストやADF入力テキストである場合があります。実行時には、各コンポーネントの読取り専用の動作が評価され、対応するセルのLockedプロパティは適切な値に設定されます。

9.7.3 ワークシートの保護に関する留意事項

ワークシートの保護はデフォルトでは有効化されておらず、特定のワークシートに使用する場合は設計時に有効化する必要があります。また、ワークシートの保護が有効化された後は、セルのLockedプロパティは設計時ではなく、実行時に設定されます。

ワークシート保護に使用するパスワードは暗号化されず、安全な場所に保存されない点にも注意してください。ワークシートの保護は、ワークシートの操作性を向上するためのものであり、重要なデータを保護するものではありません。

ワークシート保護を有効化した後は、Excelの動作が異なります。主な動作の違いは次のとおりです。

  • ADF表コンポーネントはKey列に読取り専用セルを含むため、ソートできません。

  • エンド・ユーザーは行全体または列全体を挿入できます。ただし、一度挿入すると削除はできません。

  • エンド・ユーザーは行や列を部分的には挿入できません。