リストを挿入

There are two ways to insert an Odoo list into an Odoo spreadsheet:

In both cases, the list is connected to the underlying database data thanks to its unique data source, which keeps the data up-to-date and provides access to the underlying data directly from the spreadsheet. However, whether or not the list expands to accommodate new records depends on whether it is a static or dynamic list.

Static vs dynamic lists

When a list from an Odoo list view is inserted into an Odoo spreadsheet, it is, by default, a static list, where each cell retrieves data from the database via an Odoo-specific function. The list's data is kept up to date, but it does not expand to accommodate new records.

Inserting an Odoo list directly from an Odoo spreadsheet results in a dynamic list, where a single Odoo-specific array function retrieves data from the database. The list's data is kept up to date and, if desired, the array function can be modified to allow the list to expand to accommodate new records.

注釈

静的リストは必要に応じて 動的リストに変換 したり、動的リストを 静的リストに変換 したりできます。

リストビューからOdooリストを挿入

ちなみに

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

  • プロパティフィールド は、リストビューで表示されている場合、リストがスプレッドシートに挿入される際にも含まれます。

リストビューからOdooスプレッドシートに Odooリストビュー を挿入するには、次のようにします。

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

    ちなみに

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

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

  3. 必要に応じて、挿入する :guilabel:`レコード`数(行数)を編集します。

    デフォルトでは、表示される数はリストビューの最初のページに表示されているレコード数です。例えば、リストに150件のレコードがあっても80件しか表示されていない場合、このフィールドには80と表示されます。

    ちなみに

    Odooリストビューから挿入されたリストは 静的リスト であり、新しいレコードに対応するために自動的に拡張されることはありません。データベースに新しいレコードが追加される可能性がある場合は、リストを挿入する際に行を余分に追加することを検討してください。

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

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

リストはスプレッドシートの新しいシートに挿入されます。下部バーのシートタブには、リスト名に続いてリストIDが表示されます(例: 合計別見積 (List #1))。スプレッドシートの右側にあるパネルには、 リストプロパティ が表示されます。

デフォルトでは、リストは 静的リスト で、各セルにはデータベースからデータを取得する Odoo固有の関数 が含まれています。

注釈

  • この リスト名 はシート名と リストプロパティ で使用され、いつでも編集できます。

  • レコード/行は、スプレッドシートが挿入された後に 手動で追加 することもできます。あるいは、挿入されたリストを 動的リストに変換 して、新しいレコードに対応できるように拡張することも可能です。

  • リストを新しいスプレッドシートに挿入すると、スプレッドシートはOdooドキュメントアプリのマイドライブ個人フォルダに保存されます。

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

静的リスト関数

静的リストは、以下の Odoo固有の関数 を使用して、その データソース を介してそれぞれヘッダーとフィールドの値を取得します。

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

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

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

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

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

ちなみに

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

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

動的リストを静的リストに変換

挿入されたリストが新しいレコードに対応できるように拡張するには、リストを 動的リスト に変換してから、 配列関数を更新 します。

静的リストを動的リストに変換する主な方法は2つあります。

  • リストプロパティからリストを複製します。新しい動的リストは、元のリストと同じスタイル設定を継承します。

    注釈

    With this method, the new dynamic list is assigned the next available list ID. This means multiple lists can be associated with the same model, but have distinct configurations or calculations.

  • Re-insert a dynamic list from the Data menu. On the sheet that contains the static list, position the cursor in an empty cell. Click Data ‣ Re-insert dynamic list from the menu bar, then select the relevant list.

    A new dynamic list appears, with the same styling as the original list.

    ちなみに

    It is also possible to re-insert a dynamic list by entering the function of the dynamic list in an empty cell, e.g., =ODOO.LIST(1), where 1 is the list ID. However, with this method, the table styling needs to be re-applied manually.

    注釈

    When a dynamic list is re-inserted from the data menu or by manually entering the dynamic list function, the static and dynamic lists share the same data source and, consequently, the same list ID. To avoid confusion, delete the original static list.

The top-left cell of the new dynamic list contains an Odoo-specific array function that retrieves data from the database.

Insert an Odoo list from a spreadsheet

To insert an Odoo list directly from an Odoo spreadsheet:

  1. ドキュメントアプリから関連する Odoo スプレッドシートを開くか、新しい空白のスプレッドシートを作成します。

  2. Click Insert ‣ Odoo list from the menu bar.

  3. In the New Odoo list panel at the right of the sheet, select the Model from which data should be retrieved, then click Save.

The default list for the model is inserted into a new sheet in the spreadsheet. The sheet name in the bottom bar shows the model name followed by the list ID, e.g., Sales Order (List #1). A panel on the right side of the spreadsheet shows the properties of the list.

By default, the list is a dynamic list, where the top-left cell contains an Odoo-specific array function that retrieves data from the database.

ちなみに

動的リストが最初にスプレッドシートに挿入された時点では、最大80件のレコードが表示されます。表示する最大レコード数を変更する場合や、すべてのレコードを表示して新しいレコードに対応できるようにリストを拡張できるようにするには、配列関数を編集します。

動的リスト関数

静的リストでは各セルがデータソースを介してデータを取得する固有の関数を含みますが、それとは異なり、動的リストには単一のOdoo固有の配列関数があります:

=ODOO.LIST(list_id, [row_count])

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

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

  • row_count:行/レコードの数を制限する値を設定します。

動的リストを静的リストに変換

手動で入力した数式を含む列を追加できるようにするなど、状況によっては、各セルがデータソースからデータを取得する個別の関数を持つ静的リストに動的リストを変換する必要がある場合があります。そのためには、以下の手順に従います:

  1. 動的リストが含まれているシートで、空白のセルにカーソルを置きます。

  2. メニューバーからデータ ‣ 静的リストを再挿入をクリックし、該当するリストを選択します。

元のリストと同じスタイルを持つ新しい静的リストが表示されます。セルをクリックすると、数式バーに関数が表示されます。

リストプロパティ

リストを挿入すると、画面右側にリストプロパティが表示されます。これは、データメニューの リストセクションから該当するリストを選択するか、リストの任意の場所を右クリックして リストプロパティを表示をクリックすることで、いつでもアクセスできます。

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

  • リスト #:スプレッドシート内でリストを識別するために使用されるリストID。リストIDは、スプレッドシートに追加のリストが挿入されるにつれて連番で割り当てられます。

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

  • モデル:データの抽出元モデルおよびそのモデル内の総レコード数。レコード数は、スプレッドシートを開くたび、またはブラウザやスプレッドシートを更新するたびに再計算されます。

  • 列:リスト挿入時にリストビューに表示されていた列、またはスプレッドシートからリストを挿入した場合はそのリストのデフォルトの列。

  • 並べ替え:該当する場合、データがどのように並べ替えされているか。

  • ドメイン:表示するレコードを決定するために使用されるルール。ドメインを編集をクリックしてルールを追加または編集します。

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

注釈

  • 動的リストでは、列の追加、非表示、削除はリストプロパティからのみ実行でき、リスト自体では実行できません。静的リストではその逆で、列の追加、非表示、削除はリスト自体でのみ実行できます。

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

挿入されたリストの操作

列を並び替え

注釈

表示データにのみ機能する標準のスプレッドシートフィルタとは異なり、リストプロパティパネルの並べ替え機能はスプレッドシートの基盤となるデータソースに対して機能し、基本的にデータが読み込まれる前に並べ替えます。

特定の列でリストを並べ替えるには:

  1. リストのプロパティパネルを開きます。

  2. 並べ替えセクションで、追加をクリックします。

  3. 適切なフィールドを選択します。選択したフィールド/列に基づいて、テーブルが昇順で並べ替えられます。

  4. 必要に応じて、並べ替え順序を降順に変更します。

並べ替えルールを削除するには、フィールドのカードにある (削除)アイコンをクリックします。

ちなみに

複数の並べ替えルールを追加して階層的な並べ替えを作成できます。この場合、データはまず第1の並べ替えフィールド/列で並べ替えられ、次に後続のフィールド/列の順に並べ替えられます。例えば、階層的な並べ替えを使用すると、顧客をアルファベット昇順で表示し、それぞれの販売オーダを合計金額の降順で表示することができます。階層的な並べ替えが適用される順序を変更するには、フィールドのカードを目的の位置にドラッグします。

静的リストの操作

OdooのリストビューからOdooスプレッドシートにリストを挿入した後は、以下の操作が可能です:

行/レコードの追加

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

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

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

ちなみに

上記の方法は、スプレッドシートテーブルに空の行を追加するためにも使用できます。これは、新しい製品カテゴリや新しい営業担当者など、データベースで追加のレコードが生成される可能性が高いリストに役立ちます。

列の追加、非表示、削除、名前の変更

静的リストに列を追加するには:

  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. Double-click the new header cell, then select and delete the field name that appears in the first set of quotation marks; a list of all the technical names of the fields of the related model appears.

    数式を編集してフィールド/列を追加
  5. Select the appropriate field from the list.

    ちなみに

    • Hover over the technical name of a field to reveal the field's label.

    • To add a related field, click the (right arrow) on the line of a field to access the list of related fields. Select the appropriate field or type . then type the technical name of the field. For example, to display a column with the customer's country in a list from the Sales Order model, use the related field partner_id.country by selecting Customer, then Country.

  6. Edit the field label if desired.

  7. Select the header cell, then double-click on the blue square in the bottom-right corner of the cell. The cells of the column are populated with the appropriate formula to retrieve the list values. If there is corresponding data in the database, the cells are populated.

静的リストで列を非表示にするには、列文字ヘッダを右クリックし、 列を非表示をクリックします。列の非表示を解除するには、非表示にした列の両側にあるヘッダ上のまたは (左右のキャレット)をクリックします。

静的リストで列を削除するには、列文字ヘッダを右クリックし、 列を削除をクリックします。

静的リストで列名を変更するには、ヘッダセルをダブルクリックし、2つ目の引用符内に表示されるフィールドラベルを編集します。デフォルトのOdooフィールドラベルに戻すには、フィールドラベルを完全に削除します。

動的リストの操作

表示する行/レコード数の指定

デフォルトでは、スプレッドシートから直接Odooリストを挿入した場合、またはリストをリストプロパティから複製した場合、最大80件のレコードが挿入されます。

注釈

モデル内の総レコード数は、モデルの下、リストプロパティ内に表示されます。

表示する行/レコード数を変更するには、表の左上のセルをダブルクリックして、次のいずれかを行います:

  • 角括弧内の2番目の値(行数)を希望の数値に変更する。または、

  • 行数の値を削除して*すべての*レコードを表示し、新しいレコードに合わせてリストが拡張できるようにする。

動的リストでの列の追加、非表示、または削除

挿入されたOdooリストに列を追加するには:

  1. リストのプロパティパネルを開きます。

  2. 列セクションで、追加をクリックします。

  3. 適切なフィールドを選択します。

  4. 列名を変更する場合は、列のカードをクリックして新しい名前を入力します。

列を非表示または表示にするには、列カード上の (非表示)または (表示)アイコンをクリックします。

列を削除するには、列カード上の (削除)アイコンをクリックします。

挿入されたリストの複製または削除

注釈

挿入されたリストを複製または削除する際は、各リストにデータソースもあることに注意してください。

挿入されたリストの複製

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

To duplicate an inserted list:

  1. With the list properties open, click the (gear) icon next to the List Name, then Duplicate. The duplicated list is automatically inserted into a new sheet in the spreadsheet, with the list properties open in the right panel.

  2. Edit the List Name in the properties panel and the sheet tab if desired.

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

注釈

  • Duplicating an inserted list by copying and pasting it or by duplicating the sheet into which it has been inserted does not create a new data source. Any changes made to such a list's properties would therefore impact all copies of the list.

  • Duplicating a:

    • static list results in the insertion of the default dynamic list for that model, i.e., with default columns and a maximum of 80 records;

    • dynamic list results in the insertion of a list with the same columns as the original list and a maximum of 80 records, even if the original list had been modified to have a different or no limit.

Delete an inserted list

To fully delete an inserted list and the underlying data source from a spreadsheet, perform the following steps in any order:

  • Delete the spreadsheet table containing the list using the preferred method, e.g., via keyboard commands, spreadsheet menus, or by deleting the sheet. This deletes the visual representation of the data.

  • From the properties panel of the list, click the (gear) icon, then Delete. This deletes the data source of the list from the spreadsheet.

ちなみに

Alternatively, after deleting an inserted list from a spreadsheet, use the Data cleanup tool to delete the corresponding data source.