データソース

リストピボットテーブル、または:ref:グラフ <spreadsheet/insert/chart>がOdooスプレッドシートに挿入されるたびに作成されるデータソースは、スプレッドシートとデータベース内の関連する:doc:モデル <../../studio/models_modules_apps>を接続し、スプレッドシート内のデータを最新の状態に保ちます。

各データソースは、データメニューからアクセスできるプロパティによって定義されます。データソースは、それぞれの:icon:oi-view-pivot(ピボットテーブル)(リスト)、または:icon:fa-bar-chart(グラフ)アイコンと、それに続くIDと名前で識別されます。例: (#1) Sales Analysis by Product

データメニューに一覧表示されたデータソース

データソースをクリックすると、スプレッドシートの右側のペインに関連するプロパティが開きます。

ちなみに

  • プロパティペインは、挿入されたリストまたはピボットテーブルの任意のセルを右クリックし、リストプロパティを表示または:icon:oi-view-pivotピボットプロパティを表示をクリックするか、挿入されたグラフの右上にある:icon:fa-bars(メニュー)アイコンをクリックしてから、編集をクリックしても開くことができます。

  • 特定のデータソースの物件が開いた後は、スプレッドシートのタブ間を移動しても開いたままになります。物件ペインを閉じるには、ペイン右上の閉じるアイコンをクリックします。

注釈

挿入されたリストまたはピボットテーブルを削除しても、またそれが挿入されたシートを削除しても、元となるデータソースは削除されません。挿入されたリストまたはピボットテーブルのデータソースは、そのデータソースの物件からのみ削除できます。

データメニューに警告が表示され、対応するリストまたはピボットテーブルがスプレッドシート内に存在しなくなったデータソースが識別されます。

未使用リストに関する警告メッセージ

一方、挿入されたグラフを削除すると、元となるデータソースも削除されます。

リストを挿入

重要

スプレッドシートにリストを挿入する前に、リストがニーズに合わせて調整されていることを確認してください。どのフィールドを表示するか、レコードをどのようにフィルタリングまたはソートするかを検討してください。これは、スプレッドシートの読み込み時間とユーザーフレンドリーさの両方に影響を与える可能性があります。

リストを挿入するには:

  1. データベースで関連するリストビューを開いた状態で、ビュー名の横にある(アクション)アイコンをクリックしてから、スプレッドシート ‣スプレッドシートにリストを挿入をクリックします。

    注釈

    特定のレコードのみを挿入するには、関連するレコードを選択し、画面上部中央に表示されるアクションボタンをクリックし、次にスプレッドシートに挿入をクリックします。

  2. 開いたウィンドウで、必要に応じてリストの名前を編集します。

    リスト名はシート名とリスト物件で使用されます。

    スプレッドシートへのリストの挿入
  3. 必要に応じて、挿入するレコード数、つまり行数を編集します。

    デフォルトでは、表示される数はリストの最初のページに表示されるレコード数です。たとえば、リストに150件のレコードが含まれていても、表示されているのが80件のみの場合、このフィールドには80と表示されます。

    注釈

    リスト内のデータはデータベースへの接続によって最新の状態に保たれますが、挿入されたリストは、新しいレコード(たとえば、新しいプロダクトカテゴリや新しい営業担当者)を収容するために自動的に拡張されることはありません。

    新しいレコードが追加される可能性がある場合は、リストを挿入する際に追加の行を追加することを検討してください。スプレッドシートの挿入後に、レコード/行を手動で追加することもできます。

    Example

    現在、会社には10のプロダクトカテゴリがあり、このリストをスプレッドシートに挿入します。11番目のプロダクトカテゴリが作成され、挿入されたリストに10行しかない場合、新しいカテゴリはスプレッドシート内の適切な位置に挿入され、既存のカテゴリが削除されます。

    これを回避する1つの方法は、リストを挿入する際に追加の行を追加することです。

  4. 空白のスプレッドシートをクリックするか、リストを挿入する既存のスプレッドシートを選択します。

    注釈

    新しいスプレッドシートは、**Odocoドキュメント**アプリのマイドライブ個人ワークスペース、またはスプレッドシートに対してファイル一元化が有効になっている場合はスプレッドシートワークスペースに保存されます。

  5. 確認をクリックします。

リストはスプレッドシート内の新しいシートに挿入されます。下部バーのシートタブには、リスト名とそれに続くリストID(例:Quotations by Total (List #1))が表示されます。画面の右側にペインが表示され、リスト物件が表示されます。

ちなみに

  • 挿入されたリストの個々のレコードを表示するには、該当する行の任意のセルを右クリックし、レコードを表示をクリックします。スプレッドシートに戻るには、ビュー上部のパンくずリストにあるスプレッドシート名をクリックします。

  • 挿入されたリストとデータベース間のリンクを切断するには、リスト全体を選択し、右クリックしてコピーを選択し、再度右クリックして特殊貼り付け ‣ 値として貼り付けを選択します。

  • シート名のリストIDは変更しないでください。挿入されたリストは、スプレッドシートの有効期間中このIDを保持します。このリストIDは、データベースからデータを取得するスプレッドシート関数で使用されます。

リスト関数

リストがスプレッドシートに挿入されると、次の関数を使用して、それぞれヘッダーとフィールド値が取得されます:

=ODOO.LIST.HEADER(list_id, field_name)
=ODOO.LIST(list_id, index, field_name)

関数の引数は次のとおりです:

  • list_id:リストが挿入されたときに割り当てられたID。スプレッドシートに挿入された最初のリストにはリストID `1`が割り当てられ、2番目にはリストID `2`が割り当てられます。

  • index:挿入前にリスト内でレコードが表示された行を識別します。最初の行のインデックスは 1、2番目のインデックスは `2`です。

  • field_name:フィールドの技術名。

ちなみに

個々のセルをクリックすると、関連する数式がある場合は数式バーに表示されます。スプレッドシートのすべての数式を同時に表示するには、メニューバーで:menuselection:View -->:menuselection:`Show --> Formulas`をクリックします。以下の例は、リストのヘッダーと値を取得するために使用される関数を示しています。

スプレッドシートのセルの数式の表示

リストプロパティ

リストが挿入されると、リストの物件が画面の右側に表示されます。これらは、Data`メニューから、:icon:`oi-view-list(list)`アイコンが付いた関連リストをクリックすることで、いつでもアクセスできます。また、リスト上の任意の場所を右クリックし、:icon:`oi-view-list:guilabel:`See list properties`をクリックすることでもアクセスできます。

以下のリスト物件が表示され、一部は編集可能です:

  • List #: リストID。リストIDは、スプレッドシートに追加のリストが挿入されると順次割り当てられます。

  • List Name: リストの名前。必要に応じて編集します。リスト物件でリスト名を編集しても、シート名に表示されるリスト名は変更されず、その逆も同様です。

  • Model: データが抽出されたモデル。

  • Columns: リストが挿入されたときに表示されていたモデルのフィールド。

  • Domain: どのレコードを表示するかを決定するために使用されるルール。ルールを追加または編集するには、:ref:`Edit domain <search/custom-filters>`をクリックします。

    注釈

    グローバルフィルターが使用されている場合、このドメインは、データがスプレッドシートに読み込まれる前に、グローバルフィルターの選択された値と組み合わされます。

  • Sorting: データがソートされている方法(該当する場合)。ソートルールを追加するには、Add`をクリックし、フィールドを選択してから、ソートを:guilabel:`Ascending`にするか:guilabel:`Descending`にするかを選択します。ソートルールを削除するには、:icon:`fa-times:guilabel:`(delete)`アイコンをクリックします。

リストのデータソースを複製または削除するには、(歯車)アイコンをクリックし、必要に応じて複製または削除をクリックします。

挿入されたリストの管理

OdooデータベースからのリストがOdooスプレッドシートに挿入された後、次のことができます:

リストへのレコード/行の追加

リストにレコードを追加するには、次のいずれかの方法を使用します:

  • テーブルの最後の行を選択し、プラスアイコンが表示されるまで青い四角にカーソルを合わせます。クリックして下にドラッグし、必要な数の行を追加します。新しい行のセルには、リスト値を取得するための適切な数式が設定されます。データベースに対応するデータがある場合、セルにデータが入力されます。

    セルを下にドラッグしてレコードを追加
  • シートの左上のセルにカーソルを置き、メニューバーから:menuselection:`データ --> リストを再挿入`をクリックし、適切なリストを選択します。ポップアップウィンドウで、挿入するレコードの数を指定し、:guilabel:`確定`をクリックします。更新されたリストが挿入され、以前のリストが上書きされます。

ちなみに

上記の方法は、スプレッドシート表に空白行を追加する場合にも使用できます。これは、データベースで追加のレコードが生成されることが予想されるリスト(例:新しいプロダクトカテゴリや新しい営業担当者)に役立ちます。

リストにフィールド/列を追加

リストにフィールド/列を追加するには:

  1. 新しい列を挿入する位置の右または左の列を選択します。

  2. メニューバーから:menuselection:挿入 --> 列を挿入、次に:icon:os-insert-col-before 左に列`または:icon:`os-insert-col-after 右に列`をクリックするか、右クリックして:icon:`os-insert-col-before 左に列を挿入`または:icon:`os-insert-col-after :guilabel:`右に列を挿入`を選択します。

  3. 任意の列のヘッダーセルをコピーし、新しい列のヘッダーセルに貼り付けて、`Enter`を押します。

  4. 新しいヘッダーセルをダブルクリックし、数式の最後に引用符で表示されるフィールド名をクリックします。関連モデルのすべてのフィールドの技術名のリストが表示されます。

    数式を編集してフィールド/列を追加
  5. 適切なフィールド名を選択し、`Enter`を押します。フィールドのラベルがヘッダーに表示されます。

    ちなみに

    フィールドの技術名を確認するには、関連するビューに移動し、:ref:`開発者モードを有効化 <developer-mode>`してから、フィールドのラベルの横にある疑問符にカーソルを合わせてフィールド名を確認します。

  6. ヘッダーセルを選択した状態で、右下隅の青い四角をダブルクリックします。列のセルに、リストの値を取得するための適切な数式が入力されます。データベースに対応するデータがある場合、セルに値が入力されます。

リストを複製

リストのプロパティ経由でリストを複製すると、追加のデータソースが作成されます。これにより、1つのスプレッドシート内で同じデータに対して異なる操作を実行できます。

リスト物件を開いた状態で、(歯車)アイコンをクリックし、次に複製をクリックします。

新しいデータソースには、次に使用可能なリストIDが割り当てられます。例えば、それまでに他のリストが挿入されていない場合、リスト #1を複製するとリスト #2が作成されます。

リストを挿入する場合とは異なり、複製されたリストはスプレッドシートに自動的に挿入されません。挿入するには、次の手順を実行します:

  1. スプレッドシートの左下にある:icon:os-plus :guilabel:`(シートを追加)`アイコンをクリックして、新しいシートを追加します。

  2. メニューバーから:menuselection:`データ --> リストを再挿入`をクリックし、適切なリストを選択します。

  3. 挿入するレコード数を定義して、:guilabel:`確定`をクリックします。

  4. 必要に応じて、プロパティペインでリスト名を編集します。

  5. シートタブを右クリックし、:guilabel:`名前の変更`を選択して、新しいシート名を入力することで、シートの名前を変更します。

注釈

挿入されたリストをコピー&ペーストで複製したり、挿入されたシートを複製したりしても、新しいデータソースは作成されません。したがって、リストのプロパティに加えた変更は、リストのすべてのコピーに影響します。

リストの削除

スプレッドシートからリストと基礎となるデータソースを完全に削除するには、次の手順を任意の順序で実行します:

  • キーボードコマンド、スプレッドシートメニュー、またはシートの削除など、お好みの方法でスプレッドシートテーブルを削除します。これにより、データの視覚的表現が削除されます。

  • 関連リストのプロパティペインから、(歯車)アイコンをクリックし、次に削除をクリックします。これにより、リストのデータソースがスプレッドシートから削除されます。

ピボットテーブルの挿入

ちなみに

挿入されたピボットテーブルを動的ピボットテーブルに変換すると、寸法(つまり列と行)とメジャーを追加、削除、操作できるようになります。したがって、最小限の設定で基本的なピボットテーブルを挿入し、それを動的ピボットテーブルに変換してから、スプレッドシート内で直接洗練させることができます。

ピボットテーブルを挿入するには:

  1. データベースで関連するピボットビューを開いた状態で、:guilabel:`スプレッドシートに挿入`をクリックします。

  2. 開いたウィンドウで、必要に応じてピボットの名前を編集します。

    この名前は、シート名とピボットテーブルプロパティで使用されます。

    スプレッドシートへのピボットテーブルの挿入
  3. 空白のスプレッドシートをクリックするか、ピボットテーブルを挿入する既存のスプレッドシートを選択します。

    注釈

    新しいスプレッドシートは、**Odocoドキュメント**アプリのマイドライブ個人ワークスペース、またはスプレッドシートに対してファイル一元化が有効になっている場合はスプレッドシートワークスペースに保存されます。

  4. 確認をクリックします。

ピボットテーブルは、スプレッドシートの新しいシートに挿入されます。下部バーのシートタブには、ピボットテーブルの名前とピボットテーブルIDが表示されます(例:Sales Analysis by Sales Team (Pivot #1))。画面の右側にペインが表示され、ピボットテーブルプロパティが表示されます。

ちなみに

  • ピボットテーブルの個々のセルが参照するレコードを表示するには、セルを右クリックし、レコードを表示をクリックします。スプレッドシートに戻るには、ビュー上部のパンくずリストにあるスプレッドシート名をクリックします。

  • 挿入されたピボットテーブルとデータベース間のリンクを切断するには、ピボットテーブル全体を選択し、右クリックして:icon:fa-clone:guilabel:`コピー`を選択し、再度右クリックして:menuselection:`特殊貼り付け --> 値として貼り付け`を選択します。

  • シート名のピボットテーブルIDは変更しないでください。挿入されたピボットテーブルは、スプレッドシートの有効期間中このIDを保持します。このピボットテーブルIDは、データベースからデータを取得するスプレッドシート関数で使用されます。

ピボットテーブル関数

動的ピボットテーブルに変換されていない挿入されたピボットテーブルは、次の関数を使用して、それぞれヘッダーとフィールド値を取得します:

=PIVOT.HEADER(pivot_id, [domain_field_name, …], [domain_value, …])
=PIVOT.VALUE(pivot_id, measure_name, [domain_field_name, …], [domain_value, …])

関数の引数は次のとおりです:

  • pivot_id:ピボットテーブルが挿入されたときに割り当てられるID。スプレッドシートに挿入された最初のピボットテーブルにはピボットID 1 が割り当てられ、2番目にはピボットID 2 が割り当てられます。

  • measure_name: 測定対象の技術名の後に集計タイプを続けます(例: product_uom_qty:sum)。

  • domain_field_name: ディメンションとして使用されるフィールドの技術名(例: user_id)、またはディメンションが期間の場合は、日付フィールドの技術名の後に期間を続けます(例: date_order:month)。

  • domain_value: レコードのID、またはディメンションが期間の場合は、対象となる日付または期間。

ちなみに

個々のセルをクリックすると、該当する場合は関連する数式が数式バーに表示されます。スプレッドシートのすべての数式を同時に表示するには、メニューバーで表示 ‣表示 ‣ 数式をクリックします。以下の例は、静的ピボットテーブルのヘッダーと値を取得するために使用される関数を示しています。

静的ピボットテーブルの関数

ピボットテーブルの物件

ピボットテーブルプロパティは、ピボットテーブルが挿入されたときに画面の右側に表示されます。これらは、データメニューから、(ピボット)アイコンが先頭に付いた関連ピボットテーブルをクリックするか、ピボットテーブル上の任意の場所を右クリックしてピボットプロパティを表示をクリックすることで、いつでもアクセスできます。

以下のピボットテーブルプロパティが表示され、一部は編集可能です:

  • Pivot #:ピボットテーブルID。ピボットテーブルIDは、スプレッドシートに追加のピボットテーブルが挿入されると順次割り当てられます。

  • 名前:ピボットテーブルの名前。必要に応じて編集します。ピボットテーブルプロパティで名前を編集しても、シート名に表示される名前は変更されません。その逆も同様です。

  • Model: データが抽出されたモデル。

  • :モデルからデータを分類またはグループ化するために使用している寸法。

  • メジャー:選択した寸法に基づいて測定または分析している内容。

    ちなみに

    スプレッドシートに挿入されたばかりのピボットテーブルの列、行、またはメジャーを変更しようとすると、画面の右上にエラーが表示されます。

    静的ピボットテーブルを操作しようとしたときのエラーメッセージ

    ピボットテーブルのプロパティを操作できるようにするには、静的ピボットテーブルを動的ピボットテーブルに変換します。

  • Domain: どのレコードを表示するかを決定するために使用されるルール。ルールを追加または編集するには、:ref:`Edit domain <search/custom-filters>`をクリックします。

    注釈

    グローバルフィルターが使用されている場合、このドメインは、データがスプレッドシートに読み込まれる前に、グローバルフィルターの選択された値と組み合わされます。

ピボットテーブルのデータソースを複製または削除するには、(歯車)アイコンをクリックし、次に複製または削除をクリックします。

挿入されたピボットテーブルを管理する

OdooデータベースからのピボットテーブルがOdooスプレッドシートに挿入されると、次のことができます:

  • :ref:`動的ピボットテーブルに変換 <spreadsheet/dynamic-pivot-tables/create>`して、ディメンションとメジャーを操作できるようにする

  • :ref:`ピボットテーブルを複製 <spreadsheet/insert/pivot-table-duplicate>`して、新しい同一のデータソースを作成する

  • :ref:`ピボットテーブルとその基盤となるデータソースを削除 <spreadsheet/insert/pivot-table-delete>`する

ピボットテーブルを複製

ピボットテーブルのプロパティからピボットテーブルを複製すると、追加のデータソースが作成されます。これにより、1つのスプレッドシート内で同じデータに対して異なる操作を実行できます。

たとえば、異なる寸法で集計された同じデータを表示したり、グローバルフィルターを使用して日付をオフセットし、現在の期間のデータを前期間と比較するピボットテーブルを作成したりできます。

ピボットテーブルを複製するには、次の手順を実行します:

  1. ピボットテーブルのプロパティ <spreadsheet/insert/pivot-table-properties>`を開いた状態で、:icon:`fa-cog (歯車)`アイコンをクリックし、次に:icon:`fa-clone :guilabel:`複製`をクリックします。

    複製されたピボットテーブルは、スプレッドシートの新しいシートに自動的に挿入され、右側のペインにピボットテーブルのプロパティが開きます。

  2. 必要に応じて、プロパティペインの:guilabel:`名前`とシートタブを編集します。

新しいデータソースには、次に使用可能なピボットテーブルIDが割り当てられます。たとえば、その間に他のピボットテーブルが挿入されていない場合、Pivot #1を複製するとPivot #2が作成されます。

注釈

  • 挿入されたピボットテーブルをコピー&ペーストするか、シートを複製して複製しても、新しいデータソースは作成されません。したがって、ピボットテーブルのプロパティに加えた変更は、ピボットテーブルのコピーにも影響します。

  • ピボットテーブルが複製されると、新しいピボットテーブルはデフォルトで動的ピボットテーブルになります。

ピボットテーブルを削除

スプレッドシートからピボットテーブルとその基盤となるデータソースを完全に削除するには、次の手順を任意の順序で実行します:

  • キーボードコマンド、スプレッドシートメニュー、またはシートの削除など、お好みの方法でスプレッドシートテーブルを削除します。これにより、データの視覚的表現が削除されます。

  • 関連するピボットテーブルのプロパティペイン <spreadsheet/insert/pivot-table-properties>`から、:icon:`fa-cog (歯車)`アイコンをクリックし、次に:icon:`fa-trash :guilabel:`削除`をクリックします。これにより、ピボットテーブルのデータソースが削除されます。

グラフを挿入

OdooデータベースからOdooスプレッドシートにグラフを挿入するには:

  1. データベースで関連するグラフビューを開いた状態で、スプレッドシートに挿入をクリックします。

  2. 開いたウィンドウで、必要に応じてグラフの名前を編集します。

  3. :guilabel:`空のスプレッドシート`をクリックするか、グラフを挿入する既存のスプレッドシートを選択します。

    注釈

    新しいスプレッドシートは、**Odocoドキュメント**アプリのマイドライブ個人ワークスペース、またはスプレッドシートに対してファイル一元化が有効になっている場合はスプレッドシートワークスペースに保存されます。

  4. 確認をクリックします。

チャートはスプレッドシートの最初のシートに挿入されます。画面の右側のペインにはチャート物件が表示され、チャートの設定とデザインのさまざまな側面を変更できます。

ちなみに

グラフのデータポイントをクリックすると、データベース内の関連するリストビューが開きます。この例では、Jessica Childsをクリックすると、グラフのドメインに一致するこの営業担当者によるすべての販売のリストビューが開きます。

Odooメニューへのクリック可能なリンクとクリック可能なデータポイント

財務データの挿入

レポートやダッシュボードを作成する際、アカウントID、特定のアカウントの貸方と借方、課税年度の開始日と終了日など、特定の会計関連データを含めることが役立つ場合があります。

Odoo固有のスプレッドシート関数を使用すると、データベースからそのような会計データを取得し、スプレッドシートに挿入できます。