Skip to Content
Reference

Models and fields

Updated Markdown
On this page

Legal foundation setup defines 18 model(s) and 157 field(s) on Jaah 19.0. This page lists every model the app creates or extends and the purpose of each field. Generated from the installed database on 2026-10-13 for version 19.0.2.5.50.

Menu (ir.ui.menu)

Model. Defined by base; extended by this app.

Court Circuit (j.circuit)

Model. Defined by this app.

Active (active)

Type: boolean · Stored

Branch (company_id)

Type: many2one · Stored · Relation: Companies (res.company)

Court (court_id)

Type: many2one · Stored · Relation: Court (j.court)

Created on (create_date)

Type: datetime · Readonly · Stored

Created by (create_uid)

Type: many2one · Readonly · Stored · Relation: User (res.users)

Email (email)

Type: char · Stored

Name (name)

Type: char · Required · Stored

Phone (phone)

Type: char · Stored

Last Updated on (write_date)

Type: datetime · Readonly · Stored

Last Updated by (write_uid)

Type: many2one · Readonly · Stored · Relation: User (res.users)

Court (j.court)

Model. Defined by this app.

Active (active)

Type: boolean · Stored · Tracked in the chatter

Circuits (circuit_ids)

Type: one2many · Stored · Relation: Court Circuit (j.circuit)

City (city)

Type: char · Stored · Tracked in the chatter

Branch (company_id)

Type: many2one · Stored · Relation: Companies (res.company) · Tracked in the chatter

The branch this court belongs to. Leave empty for a court more than one branch litigates in — it is then visible to all of them.

Country (country_id)

Type: many2one · Stored · Relation: Country (res.country) · Tracked in the chatter

Created on (create_date)

Type: datetime · Readonly · Stored

Created by (create_uid)

Type: many2one · Readonly · Stored · Relation: User (res.users)

Email (email)

Type: char · Stored · Tracked in the chatter

Name (name)

Type: char · Required · Stored · Tracked in the chatter

Phone (phone)

Type: char · Stored · Tracked in the chatter

State (state_id)

Type: many2one · Stored · Relation: Country state (res.country.state) · Tracked in the chatter

Street (street)

Type: char · Stored · Tracked in the chatter

Street2 (street2)

Type: char · Stored · Tracked in the chatter

Last Updated on (write_date)

Type: datetime · Readonly · Stored

Last Updated by (write_uid)

Type: many2one · Readonly · Stored · Relation: User (res.users)

Zip (zip)

Type: char · Stored · Tracked in the chatter

Judge (j.judge)

Model. Defined by this app.

Active (active)

Type: boolean · Stored · Tracked in the chatter

Branch (company_id)

Type: many2one · Required · Stored · Relation: Companies (res.company) · Tracked in the chatter

Created on (create_date)

Type: datetime · Readonly · Stored

Created by (create_uid)

Type: many2one · Readonly · Stored · Relation: User (res.users)

Email (email)

Type: char · Stored · Tracked in the chatter

Name (name)

Type: char · Required · Stored · Tracked in the chatter

Phone (phone)

Type: char · Stored · Tracked in the chatter

Last Updated on (write_date)

Type: datetime · Readonly · Stored

Last Updated by (write_uid)

Type: many2one · Readonly · Stored · Relation: User (res.users)

Lawyer (j.lawyer)

Model. Defined by this app.

Active (active)

Type: boolean · Stored · Tracked in the chatter

Uncheck to archive: the lawyer disappears from new pickers but stays linked on historical matters and hearings.

Branch (company_id)

Type: many2one · Required · Stored · Relation: Companies (res.company)

Owning branch (multi-company scope).

Country (country_id)

Type: many2one · Stored · Relation: Country (res.country) · Tracked in the chatter

Country of practice.

Created on (create_date)

Type: datetime · Readonly · Stored

Created by (create_uid)

Type: many2one · Readonly · Stored · Relation: User (res.users)

Name (name)

Type: char · Stored · Tracked in the chatter

Display name of the lawyer; used everywhere the lawyer appears (cases, hearings, agencies, smart buttons). Required unless a Related User is set — in which case the user's name is used.

Practice Area (practice_area_ids)

Type: many2many · Stored · Relation: Law Practice Area (j.practice.area) · Tracked in the chatter

One or more practice areas this lawyer specializes in. Used to filter the lawyer list and to suggest the right lawyer when registering a new matter.

Supervisor (supervisor_id)

Type: many2one · Stored · Relation: User (res.users) · Tracked in the chatter

Optional senior reviewer; used by reporting and by some approval flows in sub-modules.

User (user_id)

Type: many2one · Stored · Relation: User (res.users) · Tracked in the chatter

Optional internal user linked to this lawyer. Leave it blank to have one auto-created from Work Email on save. A given user can be linked to at most one lawyer.

Work Email (work_email)

Type: char · Stored · Tracked in the chatter

Used as the linked res.users login when auto-creating the user. If you leave the related user blank when saving and a Work Email is set here, a user with this email as login is auto-provisioned in the Lawyers / Manager privilege.

Work Phone (work_phone)

Type: char · Stored · Tracked in the chatter

Office or mobile number; mirrored to the linked user's phone.

Last Updated on (write_date)

Type: datetime · Readonly · Stored

Last Updated by (write_uid)

Type: many2one · Readonly · Stored · Relation: User (res.users)

Set Lawyer User Password (j.lawyer.set.password.wizard)

Wizard (transient). Defined by this app.

Confirm Password (confirm_password)

Type: char · Required · Stored

Created on (create_date)

Type: datetime · Readonly · Stored

Created by (create_uid)

Type: many2one · Readonly · Stored · Relation: User (res.users)

Lawyer (lawyer_id)

Type: many2one · Required · Readonly · Stored · Relation: Lawyer (j.lawyer)

New Password (new_password)

Type: char · Required · Stored

User (user_id)

Type: many2one · Readonly · Relation: User (res.users) · Computed · Related to: lawyer_id.user_id

Optional internal user linked to this lawyer. Leave it blank to have one auto-created from Work Email on save. A given user can be linked to at most one lawyer.

Login (user_login)

Type: char · Readonly · Computed · Related to: user_id.login

Used to log into the system

Last Updated on (write_date)

Type: datetime · Readonly · Stored

Last Updated by (write_uid)

Type: many2one · Readonly · Stored · Relation: User (res.users)

Model. Defined by this app.

Type: boolean · Stored

Type: many2many · Stored · Relation: Attachment (ir.attachment)

Type: many2one · Stored · Relation: Client Request Category (j.legal.client.request.category) · Tracked in the chatter

What kind of legal work this request is, independently of which pipeline it becomes (for example a new claim, a case study or an appeal).

Type: many2one · Stored · Relation: Contact (res.partner) · Tracked in the chatter

Type: many2one · Required · Stored · Relation: Companies (res.company)

Type: datetime · Readonly · Stored

Type: many2one · Readonly · Stored · Relation: User (res.users)

Type: date · Stored · Tracked in the chatter

Type: html · Stored

Type: many2many · Stored · Relation: Lawyer (j.lawyer) · Tracked in the chatter

Type: char · Stored

Type: char · Stored · Tracked in the chatter

Adverse party as free text. Carried into the case / consulting summary on registration; lawyers structure the parties on the registered record.

Type: datetime · Readonly · Stored

Type: many2one · Stored · Relation: Legal Client Request Reject Reason (j.legal.client.request.reject.reason)

Type: char · Stored · Tracked in the chatter

Type: char · Stored · Tracked in the chatter

Type: char · Stored · Tracked in the chatter

Type: selection · Stored · Values: Draft (draft), Approved (approved), Rejected (rejected) · Tracked in the chatter

Type: char · Stored · Tracked in the chatter

Type: selection · Required · Stored · Tracked in the chatter

Type: datetime · Readonly · Stored

Type: many2one · Readonly · Stored · Relation: User (res.users)

Model. Defined by this app.

Categories the office classifies incoming requests with: what kind of legal work a request is, independently of which pipeline it becomes. type is optional on purpose. A category left blank is offered on every request; one tied to a type is offered only on requests of that type, so the picker stays short without forcing the office to duplicate a category it uses everywhere.

Type: boolean · Stored · Tracked in the chatter

Type: integer · Stored

Type: many2one · Stored · Relation: Companies (res.company) · Tracked in the chatter

Type: datetime · Readonly · Stored

Type: many2one · Readonly · Stored · Relation: User (res.users)

Type: char · Required · Stored · Translatable · Tracked in the chatter

Type: integer · Readonly · Computed

Type: integer · Stored

Type: selection · Stored · Tracked in the chatter

Leave empty to offer this category on every request. Set it to restrict the category to requests of that type.

Type: datetime · Readonly · Stored

Type: many2one · Readonly · Stored · Relation: User (res.users)

Model. Defined by this app.

Type: many2one · Stored · Relation: Companies (res.company) · Tracked in the chatter

Type: datetime · Readonly · Stored

Type: many2one · Readonly · Stored · Relation: User (res.users)

Type: html · Stored · Translatable

Type: char · Required · Stored · Translatable · Tracked in the chatter

Type: integer · Readonly · Computed

Type: one2many · Stored · Relation: Legal Client Request (j.legal.client.request)

Type: datetime · Readonly · Stored

Type: many2one · Readonly · Stored · Relation: User (res.users)

Wizard (transient). Defined by this app.

Type: datetime · Readonly · Stored

Type: many2one · Readonly · Stored · Relation: User (res.users)

Type: text · Stored

Optional clarification for the chatter.

Type: many2one · Required · Stored · Relation: Legal Client Request Reject Reason (j.legal.client.request.reject.reason)

Type: many2one · Required · Readonly · Stored · Relation: Legal Client Request (j.legal.client.request)

Type: datetime · Readonly · Stored

Type: many2one · Readonly · Stored · Relation: User (res.users)

List Report Wizard (j.list.report.wizard)

Wizard (transient). Defined by this app.

Shared frame for LIST reports (PDFs aggregating multiple records). The base module declares the common filters (date range, lawyers, clients) and a shared _build_date_list helper. Owning modules extend the wizard via _inherit to: * register their type Selection value (e.g. 'matters', 'hearings', 'consulting') with selection_add; * add the per-type state-tag M2M field; * override action_print to dispatch to a _print_<type> method that they implement. Per the split design, j_law_base does NOT know about j.matter, j.hearing or j.consulting — those models live in the cases / consulting modules and contribute their own type, fields, and dispatch branch.

Created on (create_date)

Type: datetime · Readonly · Stored

Created by (create_uid)

Type: many2one · Readonly · Stored · Relation: User (res.users)

From (date_from)

Type: date · Stored

To (date_to)

Type: date · Stored

Group by Date (group_by_date)

Type: boolean · Stored

Print all Durations (ignore_date)

Type: boolean · Stored

Lawyers (lawyer_ids)

Type: many2many · Stored · Relation: Lawyer (j.lawyer)

Clients (partner_ids)

Type: many2many · Stored · Relation: Contact (res.partner)

Type (type)

Type: selection · Required · Stored

User (user_id)

Type: many2one · Stored · Relation: User (res.users)

Last Updated on (write_date)

Type: datetime · Readonly · Stored

Last Updated by (write_uid)

Type: many2one · Readonly · Stored · Relation: User (res.users)

Neglected Report Wizard (j.neglected.report.wizard)

Wizard (transient). Defined by this app.

Abstract wizard frame — owning modules add type + per-type fields.

Created on (create_date)

Type: datetime · Readonly · Stored

Created by (create_uid)

Type: many2one · Readonly · Stored · Relation: User (res.users)

Neglected For (Days) (days)

Type: integer · Required · Stored

Show records whose last write date is older than today minus this number of days. Default is 30 days.

Lawyers (lawyer_ids)

Type: many2many · Stored · Relation: Lawyer (j.lawyer)

Clients (partner_ids)

Type: many2many · Stored · Relation: Contact (res.partner)

Type (type)

Type: selection · Required · Stored

User (user_id)

Type: many2one · Stored · Relation: User (res.users)

Last Updated on (write_date)

Type: datetime · Readonly · Stored

Last Updated by (write_uid)

Type: many2one · Readonly · Stored · Relation: User (res.users)

Law Practice Area (j.practice.area)

Model. Defined by this app.

Active (active)

Type: boolean · Stored · Tracked in the chatter

Branch (company_id)

Type: many2one · Stored · Relation: Companies (res.company) · Tracked in the chatter

Created on (create_date)

Type: datetime · Readonly · Stored

Created by (create_uid)

Type: many2one · Readonly · Stored · Relation: User (res.users)

Lawyer Count (lawyer_count)

Type: integer · Readonly · Computed

Lawyers (lawyer_ids)

Type: many2many · Stored · Relation: Lawyer (j.lawyer)

Name (name)

Type: char · Required · Stored · Translatable · Tracked in the chatter

Last Updated on (write_date)

Type: datetime · Readonly · Stored

Last Updated by (write_uid)

Type: many2one · Readonly · Stored · Relation: User (res.users)

Activity (mail.activity)

Model. Defined by mail; extended by this app.

Review Request Activity (review_request_activity)

Type: boolean · Stored

Flagged on activities created on a j.legal.client.request to ask the assigned lawyer to register or reject it. Auto-closed when the request flips state.

Companies (res.company)

Model. Defined by base; extended by this app.

Court Circuits (circuit_check)

Type: boolean · Stored

When enabled, courts can be split into multiple circuits and the Circuits sub-menu becomes visible.

Default Deadline (client_request_default_deadline_days)

Type: integer · Stored

Number of days from request submission to the auto-computed deadline on the matter. The portal create form does not ask the requester for a deadline; this value drives it.

Default Lawyers (client_request_default_lawyer_ids)

Type: many2many · Stored · Relation: Lawyer (j.lawyer)

Auto-assigned to incoming client requests submitted via the portal when no lawyer is otherwise specified.

Review Within (client_request_review_days)

Type: integer · Stored

Days from request submission when the Register / Reject review activity falls due for the assigned lawyer(s).

Judges (judge_check)

Type: boolean · Stored

When enabled, the Judges menu is visible and a judge can be attached to a hearing.

Register / Reject Client Request Activity (register_request_activity)

Type: boolean · Stored

If enabled, a Register / Reject review activity is auto-scheduled on every incoming client request for each assigned lawyer.

Multi Clients (stakeholders_check)

Type: boolean · Stored

Enable multiple clients per record.

Config Settings (res.config.settings)

Wizard (transient). Defined by base; extended by this app.

Surfaces the per-company j_law_base toggles in the shared Law settings page. Sub-modules add their own related fields via _inherit = 'res.config.settings' and xpath their UI block into the app[name='j_law'] shell defined in views/res_config_settings.xml.

Court Circuits (circuit_check)

Type: boolean · Computed · Related to: company_id.circuit_check

When enabled, courts can be split into multiple circuits and the Circuits sub-menu becomes visible.

Default Deadline (client_request_default_deadline_days)

Type: integer · Computed · Related to: company_id.client_request_default_deadline_days

Number of days from request submission to the auto-computed deadline on the matter. The portal create form does not ask the requester for a deadline; this value drives it.

Default Lawyers (client_request_default_lawyer_ids)

Type: many2many · Relation: Lawyer (j.lawyer) · Computed · Related to: company_id.client_request_default_lawyer_ids

Auto-assigned to incoming client requests submitted via the portal when no lawyer is otherwise specified.

Review Within (client_request_review_days)

Type: integer · Computed · Related to: company_id.client_request_review_days

Days from request submission when the Register / Reject review activity falls due for the assigned lawyer(s).

Judges (judge_check)

Type: boolean · Computed · Related to: company_id.judge_check

When enabled, the Judges menu is visible and a judge can be attached to a hearing.

Register / Reject Client Request Activity (register_request_activity)

Type: boolean · Computed · Related to: company_id.register_request_activity

If enabled, a Register / Reject review activity is auto-scheduled on every incoming client request for each assigned lawyer.

Multi Clients (stakeholders_check)

Type: boolean · Computed · Related to: company_id.stakeholders_check

Enable multiple clients per record.

Contact (res.partner)

Model. Defined by base; extended by this app.

Circuits (circuit_ids)

Type: one2many · Stored · Relation: Court Circuit (j.circuit)

Country (country_id)

Type: many2one · Stored · Relation: Country (res.country) · Tracked in the chatter

Apply only if delivery or invoicing country match.

Default Lawyers (lawyer_ids)

Type: many2many · Stored · Relation: Lawyer (j.lawyer) · Tracked in the chatter · Visible to: Lawyers / Read-only (j_law_base.group_j_law_lawyers_readonly)

Nationality (nationality_id)

Type: many2one · Stored · Relation: Country (res.country) · Tracked in the chatter

User (res.users)

Model. Defined by base; extended by this app.

Lawyers (lawyer_count)

Type: integer · Readonly · Computed

Lawyer (lawyer_id)

Type: many2one · Readonly · Relation: Lawyer (j.lawyer) · Computed

Linked lawyer, if any.

Was this page helpful?

Thank you for your feedback.