Help

ようこそ!

このフォーラムはOdooに興味がある方はどなたでも参加いただけます。Odooに関する質問を投稿したり、質問に回答したりすることができます。

0

任意の画面(フォーム)に自在にバナーメッセージを表示 - web_form_banner

基本情報

  • モジュール名: web_form_banner
  • ライセンス: AGPL-3
  • オーサー: コタエル(Quartile)
  • レポジトリ: https://github.com/OCA/web
  • 利用可能バージョン (2025年10月時点):  12.0(PR未マージ)、15.0(PR未マージ)、16.0、17.0(PR未マージ)、18.0(PR未マージ)、19.0(PR未マージ)


利用用途

任意の画面(フォーム)に自在にバナーメッセージを表示することができます。


活用イメージ例: 

  • 新しくシステムを使い始める方に向けて、操作方法や注意点のメッセージを画面上に表示する
  • 特定の入力欄に値を入れたときに、次に行う操作や注意事項を自動で案内する
  • 入力内容に応じて、関連するデータや画面へのリンクを自動で表示する
  • 特定のお客様との取引データを開いた際に、注意や確認が必要な場合はアラートを出す
  • お客様の残高や与信情報などを、関連する画面で直接確認できるようにする


設定方法

バナーメッセージの設定は、開発者モードに切り替え、管理設定>技術設定>ユーザインタフェース>フォームバナー規則で行います。「+新規」ボタンをクリックしてフォームバナー規則を新規作成します。


モデル: バナーメッセージを表示したいモデルを選択する

トリガ項目: 入力されるとバナーメッセージが更新される項目を設定する

デフォルト重要度: 情報(青)、警告(黄)、危険(赤)の中から選択して、バナーの色を変更する

メッセージ: 表示したいメッセージを入力する(メッセージ値コードで設定した変数を含むテキストや、カスタムHTMLを入力可能)

HTML: チェックするとメッセージをカスタムHTMLとして扱われ、HTMLでの表示が可能になる

ビュー: 特定のビュー単位でバナーメッセージを表示させることが可能

ターゲットXPath: フォーム内のどの位置にバナーを表示するかを、XPathで指定する(デフォルトで「//sheet」に設定されている)

位置: ターゲットの前・ターゲットの後を選択して、ターゲットXPathで指定した要素の前後どちらにバナーメッセージを表示するかを指定する

メッセージ値コード: バナーの表示・非表示、重大度(情報、警告、危険)、およびメッセージ内容を動的に制御するためのPythonコード


設定例


<例①>

この設定方法では、常に任意の画面(フォーム)にバナーを表示させます。


下記のように、指定したモデルに常にバナーメッセージが表示されます。


<例②>

見積書の価格の合計が30,000ドル以上の見積書を黄色のバナー、100,000ドル以上の見積書を赤色のバナーで表示する設定です。


モデル: 販売オーダ(sale.order)

メッセージ: 高額な値を検出しました: ${amount_total}`

メッセージ値コード: 

{

"visible": record.amount_total >= 30000, 

"severity": "danger" if record.amount_total >= 100000 else "warning", 

"values": {"amount_total": record.amount_total},

}

下記のように表示されます。

価格の合計が30,000ドル以上の見積書の場合: 


価格の合計が100,000ドル以上の見積書の場合: 



関連の解説動画:


質問をここに記入してください。
Avatar
Discard

課題の解決が好きな方

OSSを活用して企業のDXを本質的に進めたい方、
コタエルでやってみませんか?