One-time project templates for tasks on Odoo

Posted 7 hours ago

Worldwide

Summary

# Requirements: Dynamic Forms Inside Project Tasks (Odoo 18) ## Overview Add the ability to select and fill a "form template" (e.g., inspection/report forms) directly from within a Project Task (`project.task`). The user picks a form type, fills it in, adds a signature, saves it linked to that task, and prints it as PDF. ## User Flow 1. Open a task. 2. Click "Add Form." 3. Choose a form type from a predefined list. 4. Form opens with some fields auto-filled from the task. 5. User fills remaining fields (text, selections, images). 6. User signs electronically. 7. Save → record is stored linked to the task, visible in a "Forms" tab/list. 8. User can reopen or print the saved form as PDF. ## Auto-Filled Fields (from Task) | Form Field | Source | |---|---| | Task title/number | `task.name` | | Project name | `task.project_id.name` | | Location/title | task location field (or custom field) | | Date | today (default) | | Responsible/engineer | `task.user_ids` or current user | | Customer | `task.partner_id` | Use `related` fields where the value should stay live, or `default` where it should freeze at creation time. ## Suggested Technical Structure - **Template model** (`task.form.template`): defines available form types. - **Filled-entry model** (`task.form.entry`): fields include `task_id` (M2O → project.task), `form_type`/`template_id`, form-specific data, `signature` (binary), and `state` (draft/signed/final). - **Task integration**: add `form_entry_ids` (One2many) on `project.task`, plus a new "Forms" tab on the Task form view. - **Selector**: button/dropdown in the Forms tab to pick a type and open the entry form. - **Signature**: use Odoo's built-in signature widget, or a custom OWL widget if more control is needed. - **Printing**: a QWeb report per form type, matching the original form's layout (RTL/Arabic support if required, consistent with existing SEC forms). ### Important Architecture Note Due to Odoo 18 view-validation issues, create any new views and access rights for these forms via `post_init_hook` rather than manifest `data` files, to avoid XML validation errors on install — same approach used successfully in the araptech module. ## Functional Requirements 1. "Forms" tab on the Task form view. 2. Button/dropdown to select a form type from predefined templates. 3. Auto-fill task-related fields per the table above. 4. Manual entry for remaining fields, per form type. 5. Mandatory e-signature before final save (or per workflow state). 6. Save as a record linked to the task (visible in a list within the tab). 7. Reopen/edit saved forms while not yet finalized. 8. PDF print button matching the original form's layout. 9. (Optional) Allow multiple forms (same or different types) per task. 10. (Optional) Role-based permissions for create/edit/sign (e.g., engineer vs. admin). ## Open Questions Before Development - Are the only forms needed the existing SEC forms, or will new types be added later? (Determines whether we need a generic dynamic-template system or fixed models per form.) - Can a form be edited after signing, or does it become read-only? - Is more than one entry of the same form type allowed per task? - Does printing need RTL/Arabic support (as with prior SEC forms)? ## Acceptance Criteria - [ ] "Forms" tab appears on the task with a type-selection control. - [ ] Selecting a form type auto-fills task name/project/location correctly, with no manual error risk. - [ ] Form cannot be saved without a signature (per decision above). - [ ] Saved forms are only accessible from within their parent task. - [ ] Print button generates a PDF matching the original layout, including signature. - [ ] No XML validation errors on module install/update (via post_init_hook approach).

  • Less than 30 hrs/week
    Hourly
  • < 1 month
    Duration
  • Entry level
    Experience Level
  • $13.00

    -

    $30.00

    Hourly
  • Remote Job
  • One-time project
    Project Type

Contract-to-hire opportunity

This lets talent know that this job could become full time.
Learn more
Skills and Expertise
Mandatory skills
Odoo
Python
Activity on this job
  • Proposals:20 to 50
  • Last viewed by client:5 hours ago
  • Interviewing:
    3
  • Invites sent:
    4
  • Unanswered invites:
    1
About the client
Member since Jul 20, 2026
  • Saudi Arabia
    8:22 PM

Explore similar jobs on Upwork

Marketplace B2BHourly‐ Posted 2 weeks ago
Web Development
SQL
NoSQL Database
Node.js
NestJS
TypeScript
JavaScript
PostgreSQL
MongoDB
Tailwind CSS
Docker
DevOps
ExpressJS
Next.js
HTML5
CSS 3
Engineering & Architecture
Automation
n8n
Artificial Intelligence
JavaScript
PHP
CSS
HTML5

How it works

  • Post a job icon
    Create your free profile
    Highlight your skills and experience, show your portfolio, and set your ideal pay rate.
  • Talent comes to you icon
    Work the way you want
    Apply for jobs, create easy-to-by projects, or access exclusive opportunities that come to you.
  • Payment simplified icon
    Get paid securely
    From contract to payment, we help you work safely and get paid securely.
Want to get started? Create a profile

About Upwork

  • Rating is 4.9 out of 5.
    4.9/5
    (Average rating of clients by professionals)
  • G2 2021
    #1 freelance platform
  • 49,000+
    Signed contract every week
  • $2.3B
    Freelancers earned on Upwork in 2020

Find the best freelance jobs

Growing your career is as easy as creating a free profile and finding work like this that fits your skills.

Trusted by

  • Microsoft Logo
  • Airbnb Logo
  • Bissell Logo
  • GoDaddy Logo