OpenProject Connector

by
Odoo          
v 10.0 Third Party 183
Download for 10.0 series Deploy on Odoo.sh
You bought this module and need support ? Click here !
Technical name connector_openproject
LicenseAGPL-3
Websitehttps://naglis.me/
Required Apps Timesheets (hr_timesheet)
Project (project)
Invoicing (account)
Employee Directory (hr)
Included Dependencies
Technical name connector_openproject
LicenseAGPL-3
Websitehttps://naglis.me/
Required Apps Timesheets (hr_timesheet)
Project (project)
Invoicing (account)
Employee Directory (hr)
Included Dependencies

OpenProject Connector

OpenProject Connector is a unidirectional (OpenProject -> Odoo) connector, compatible with Odoo 10.0 and OpenProject 7.3+.

What can be synchronized?

  • Users -> Users (res.users);
  • Projects -> Projects (project.project);
  • Work Packages -> Tasks (project.task);
  • Time Entries -> Timesheet Lines (account.analytic.line);
  • Work Package Activities (comments, updates) -> Messages (mail.message under project.task);
  • Work Package Statuses -> Stages (project.task.type).

Installation

To install this module, you need to:

  1. Install Odoo Connector module.
  2. Install pip dependencies for this module (check the requirements.txt file at the top level in module repository).

Configuration

OpenProject side

  1. Create a limited role for Odoo synchronization, eg. Odoo with the following permissions:
    1. Time tracking / View spent time.
    2. Work package tracking / View work packages.
  2. Create an Odoo synchronization user (eg. Odoo Bot) and assign it with the Odoo role to all projects you will be syncing with Odoo.
  3. Generate an API key for the Odoo Bot user.

Odoo side

  1. Configure the OpenProject Connector queue job channel in your Odoo configuration file, eg.:

    [queue_job]
    channels = root:2,root.openproject:1
    
  2. Login to your Odoo instance with a user with Connector Manager access rights.

  3. In debug mode (Settings -> Activate the developer mode) go to Connectors -> OpenProject -> Backends and create a new backend for your OpenProject instance, fill in the name, OpenProject instance URL and API key of the OpenProject synchronization user. Once finished, save the record.

Usage

  1. Login to your Odoo instance with a user with Connector Manager access rights.
  2. In debug mode go to Settings -> Technical -> Automation -> Scheduled Actions, select OpenProject Sync) and click the Run Manually button or click the Run Import button on the OpenProject backend record.
  3. On the OpenProject backend record, click on the Projects button at the top - the projects from your OpenProject instance will appear here after synchronization finishes.
  4. Once all projects are created (no more pending jobs in Job Queue -> Queue -> Jobs), configure the projects and things you want to synchronize for each project (whether to sync work packages descriptions, and which types of activites to sync).
  5. Once done with the configuration, run the OpenProject Sync cron job again.

Known issues / Roadmap

  • OpenProject time entry API endpoint currently does not support updatedAt filtering. See also: https://goo.gl/Kst39h.

FAQ

Are you planning on making it bidirectional?

Personally, no, as currently I do not have a need for it. If you want to give a try yourself, please note that the current version of the OpenProject API (at the time of writing: API v3 on OpenProject 7.4) does not support creating projects via API, same goes for time entries, but at least for time entries create support is planned.

Credits

Images

Please log in to comment on this module

Please choose a rating from 1 to 5 for this module.