Joint Calendar v.11
The tool to combine different Odoo events in a few configurable super calendars. Shared calendar. Common calendar.
Multifarious events on a single calendar
Besides, you may have an unlimited number of joint calendars with various events, configurations and user groups included, divided by teams or functional areas. Each joint calendar has an own menu item.
Super calendars are updated automatically according to the scheduled jobs. It is fast, especially if you applied time frames.
Screenshots
Joint document types on a single calendar
![Odoo super calendar events](/web/image/2559/joint_main.png)
Fast switching between functional areas
Topical and relevant information
You may also define which documents to show by setting up special filters. Show opportunities but not leads. Work with orders of this sales team but not of others. Merge only overdue activities but not future ones.
How to add a new document type for a joint calendar
To add a new document type for a joint calendar you should set up a joint calendar rule. This rule defines which Odoo objects should create events, which fields of that object should be shown, and whether any filtering should take place. The app will try to add the most typical values by default, but you should think which data is required in your exact case.
- Model - which objects to scan: opportunities, tasks, orders, meetings, activities, and so on. You can choose your custom document type as well!
- Name – what to use as a joint event name (also used as calendar event title). Usually it is 'name', 'subject' or 'reference'.
- Start date - when an event starts. For example, 'expecting closing' for opportunities or 'order date' for quotations. It may be any date or date with time field of a source Odoo object.
- Attendees – who are participants (responsible persons, event owners). Usually, it is a field 'assigned to', 'a sales person' or 'attendees'. You may use even document 'followers'. It is possible to apply both users and partners as attendees
- Stop date – when an even is shown as finished on a calendar.
- Always Whole Day - means that all generated events would last the whole day disregarding whether start or stop are defined with hours and minutes. Such an event would be shown at a special place on a calendar (above the time line)
- Whole Day - a special boolean field of source object which indicates that a related joint event may lasts the whole day. This setting is usually applied to standard Odoo calendar events which both might have definite time indicated or might be planned for a whole day.
- Description – are there any notes important for joint events? Usually the fields like 'internal notes' or 'comments' are used
- Domain – the special filters' constructor to include only topical documents into a joint calendar. You might search almost by any criteria. For example, show only quotations without sales orders, or show opportunities only of this sales team or of this customer. If you are confident to make Reverse Polish Notations you may also turn on the debug mode to construct advanced filters.
- Action – defines which form view should be shown when you open a source document from a joint event. It is a technical field which in the most cases should not be changed in comparison to a default value.
How to configure a new joint calendar based on rules
As soon as you prepare a few joint event rules, you are ready to configure a new joint calendar.
First of all, define a title. It would be used as a menu entry for all joint calendar users.
Second of all, choose document types (rules) which should be merged on this shared calendar.
Then, switch to the advanced settings. Some of those might be useful:
- Sequence – in which order various joint calendars' entries are shown. Should it be before the previous super calendar? Then, make a sequence smaller.
- Privacy – let you make a calendar public or private (for predefined user groups only).
- Time limits – allow you optimizing performance of joint events' interfaces. Often there is no need to show the documents of the last year on a calendar.
Is this joint calendar is not any more of use, but it might be needed in the Future? Fine, just archive this calendar: you can activate it at any moment afterwards.
Screenshots
Multiple rules to search documents by types
![Shared calendar: combine various events](/web/image/2561/calendar_rules.png)
Joint calendar settings
![Advanced settings of joint calendar](/web/image/2562/calendar_settings.png)
Joint event rule (example of opportunities)
![Opportunity joint events](/web/image/2565/opportunities.png)
Joint event rule (example of sale orders)
![Sales orders joint calendar](/web/image/2566/sale_orders.png)
Joint event rule (example of meetings)
![Meetings joint calendar](/web/image/2567/meetings.png)
Joint event rule (example of tasks)
![Tasks joint calendar](/web/image/2568/tasks.png)
Automatic reminders for any Odoo document
How to introduce a warning system
All you need is to prepare a few reminders and indicate those as default on a shared calendar form. Once joint events are generated, each of those would have the same alarms. Afterwards, you may update the these alarms for certain items if you want.
Thus, you can make reminders for any Odoo document automatically. Remind sales persons about next actions in opportunities and calls. Warn workers about a new manufacturing order. Notify programmers about deadlines. So on and so on.
Use both email notifications or pop-up warnings. Warn attendees and responsible users at the moment you like to: from 5 minutes to hundreds of days before.
Screenshots
Configure pop-up alarm for any Odoo event
![Reminder by joint event](/web/image/2563/popupreminder.png)
Email reminder by any Odoo object
![Email notification of joint event](/web/image/2564/email_reminder.png)
Quick access to source details
How are source documents and joint events interrelated
Users observes a link for a source document right on an event form. Thus, it is always possible to expand miscellaneous details.
If you changed a joint event, its parent object would be updated correspondingly in real time. For example, you drag a record and drop it to another date, then a source document would be also moved. Be cautious: it does not work for computed and readonly fields (e.g. a create date can not be modified logically).
If you changed a source object, a joint event would be updated with a next super calendar scheduled job.
Screenshots
Joint event form with simple access to parent document
![Parent object from Odoo joint event](/web/image/2560/joint_event_form.png)
Simple user rights administration
More details about joint calendar security
The right to create and configure joint calendars belongs only to Odoo administrators (users with the rights 'Administration - Access Rights').
Users may open joint events related to public joint calendars or private joint calendar with one of her/his group indicated. Configure private groups on a joint calendar form, the tab 'Settings', the fields 'Privacy' and 'Groups'. In such a way it is possible to make a joint calendar only for sales managers or only for accountants.
Take into account that in order a user may observe or update a joint event, she/he should have the same rights for a source document. For example, if a sales person doesn't have a right to observe an opportunity, she/he would not see a related joint event as well.
Manually created joint events (without a parent object) may be either public (for all employees) or private (visible for attendees only).
Used in any functional area
Have a look at typical use cases
Activities by all objects and responsibles on a single calendar
Activities are a great Odoo invention, which helps you organize daily routine as a set of well-reached and structured tasks. They are quite comfortable for use, but for team collaboration and efficient management, sometimes you want to have a calendar overview of planned and overdue activities.
Joint Calendar let you achieve that goal. Just add an activity rule as joint calendar rule:
- As a model use 'Activity'
- As a name use 'Display Name'
- As a start date field use 'Due Date'
- As attendees fields use 'Assigned to'
- As a domain apply 'Summary is set'
- For the action field create a new one: go to the Settings > Technical > Actions > Window Action. As an object use 'mail.activity', as a view mode – 'form', as a name – any suitable
Opportunities on a super calendar
- As a model use 'Lead / Opportunity'
- As a name use 'Opportunity'
- As a start date field use 'Expecting Closing'
- As attendees fields use 'Salesperson'
- As a domain optionally restrict opportunities by sales teams.
Tasks on a joint calendar
- As a model use 'Task'
- As a name use 'Title'
- As a start date field use 'Deadline'
- As attendees fields use 'Assigned to'
- As a domain optionally you can set definite projects
Better then expected
The app does exactly what was needed. Combine all tasks from all calendars to one. And allows to manages all activities from all modules in one place.
This makes the Event Calendar so much more useful !
We bought this to combine certain project tasks with the schedules of our maintenance engineers. We now have a better overview which moments are overlapping the schedules of other events. The joining of multiple events in 1 event calendar is super easy, it should be a standard option in ODOO.
Excellent responsive team of programmers
Joint Calendar is the perfect addition to the standard Calendaring system that Odoo offers. It makes the job of setting up specific departmental calendars filled with any objects you wish very easy and Alex and the team provides fantastic after-sales support, responding in most cases within 24 hours to requests for help. Thanks for a great module.
Essential to have Activities, Tasks, Meetings etc all in one calendar and shared.
Great service support very quick and were right on with fixing the issue... I think the ability to see everything on one shared calendar is such an essential part of coordination and time management. Great product once you sort out the rules you need!
Configuration and Installation Tips for Joint Calendar Odoo v.11
Scheduled jobs
- Turn on the debug mode
- Go to technical settings > Automation > Scheduled jobs
- Find the job 'Refresh Joint Events' to change the frequency of calendars' update
- Find the job 'Notify About Joint Event' to change the frequency of email alarms.
Email alarm style
- Activate the developer mode
- Go to technical settings > Email > Templates
- Find the template 'Joint Event Notification'
- You are welcome to change here message body
- Email subject might be changed through the translated term 'Reminder by Event'.
Frequently Asked Questions about Joint Calendar Odoo v.11
When the option "Always Whole Day" is turned on, then all generated events created with the rule will last the whole day disregarding whether start or stop are defined with hours and minutes. Such an event will be shown at a special place on a calendar.
For example, if you create a rule for the model "Sale Order", and turn on the option "Always Whole Day", then the event will be placed on the daily and weekly super calendars above the timeline.
If you turn off the option, then, if the start or stop are defined with hours/minutes, the event will be placed at a particular time on the day's timeline and you will see the time before the event's title.
Make sure:
1. There is at least one joint calendar created configured and refreshed. Please refresh your browser page after setting up any joint calendar
2. You have the access to at least one of the calendars
There might be several reasons for that. It is possible, that the related scheduled job hasn't yet took place. In this case, you can launch the cron manually by clicking on the button refresh on the right column of the joint calendar interface.
Also check, whether you have Time Limits set to the calendar as otherwise the events for only a particular time range will be shown. For example, if you have a calendar 'Sale Orders' with time limits 10 days before and 30 days after. If a Sale Order was created, for example, 12 days before, then it will not be shown in the calendar.
Make sure, that there aren't any filters applied to the rules as there might be no records matching them. For example, if you have a rule 'Sale Order' with the filter 'Customer = Deco Addict', then only orders of this customer will be shown in the related calendar.
You can combine as many Odoo documents as you like into a single calendar. Or, you can divide those between several calendars (for example Sales Calendar and Projects, Tasks and Activities Calendar) and then switch between them in the systray.
Rules define which Odoo objects should create events, which fields of that object should be used and shown, and whether any filtering should take place.
While creating a rule, you can define by your own what to consider a joint event title, start or stop date, who are target attendees, etc.
Stop date - a field of the target Odoo model, which defines when an even is shown as finished on a calendar. For example, if you create a rule for the model "Sale Order" and choose the "Delivery Date" for the Stop date field, then the event will be shown in the events menu from the day for which this quotation is planned (Start Date field - Order Date) till the day of the product's delivery.
It is an optional field, so you can leave it empty. In this case, the event will be placed only on the day defined by the Start Date field.
It means that this event was created manually. It has no parent object, and is not regulated by a rule. Such joint events would be available under the filter "Undefined", without color.
All people, who have the access to see the calendar, may create and see its undefined events.
According to the current Odoo Apps Store policies:
- every module bought for version 12.0 and prior gives you access to all versions up to 12.0.
- starting from version 13.0, every module version should be purchased separately.
- disregarding the version, purchasing a tool grants you a right to all updates and bug fixes within a major version.
Take into account that the faOtools team does not control those policies. For all questions, please contact the Odoo Apps Store representatives directly.
The easiest approach is to use the Odoo store built-in workflow:
1. Open the module's page and click the button Deploy on odoo.sh
2. After that, you will be redirected to the GitHub page. Login to your account and click 'Create a new repo' or use the existing one. Please, make sure, that your repository is private. It is not permitted to publish the apps under the OPL-1 license. If necessary, create a new repo for your Odoo.sh project
3. Then, go to odoo.sh and click on the deploy button, submit the decision in the pop-up window and click 'Continue'. The action will trigger the installation process.
These steps would install the app for your project production branch. If you wanted to deploy the apps for other branches or update the module, you should undertake the following actions:
1. Upload the source code for the app from the Odoo store
2. Commit the module to a required GitHub repository. Make sure that none of the app folders/files are ignored (included in the .gitignore of your repo). Repositories are automatically created by odoo.sh, which might add by default some crucial items there (e.g. /lib). You should upload all module directories, subdirectories, and files without exceptions
3. Deploy a target branch of the odoo.sh project or wait until it is automatically built if your settings assume that.
Unzip the source code of the purchased tools in one of your Odoo add-ons' directories;
Re-start the Odoo server;
Turn on the developer mode (technical settings);
Update the apps' list (the apps' menu);
Find the app and push the button 'Install';
Follow the guidelines on the app's page if those exist.
Yes, sure. Take into account that Odoo automatically adds all dependencies to a cart. You should exclude previously purchased tools.
A red/orange warning itself does not influence features of the app. Regretfully, sometimes our modules do not pass standard automatic tests, since the latter assumes behavior which is in conflict with our apps goals. For example, we change price calculation, while standard Odoo module tests compare final price to standard algorithm.
So, first of all, please check deployed database features. Does everything work correctly?
If you still assume that warning influences real features, please contact us and forward full installation logs and the full lists of deployed modules (including core and third party ones).
No, we distribute the tools only through the official Odoo apps store
Regretfully, we do not have a technical possibility to provide individual prices.
No, third party apps can not be used on Odoo Online.
Yes, all modules marked in dependencies are absolutely required for a correct work of our tool. Take into account that price marked on the app page already includes all necessary dependencies.
The price for our modules is set up in euros. The Odoo store converts prices in others currencies according to its internal exchange rate. Thus, the price in US Dollars may change, when exchange rate changes.
Bug reporting
In case you have faced any bugs or inconsistent behavior, do not hesitate to contact us. We guarantee to provide fixes within 60 days after the purchase, while even after this period we are strongly interested to improve our tools.
No phone number or credit card is required to contact us: only a short email sign up which does not take more than 30 seconds.
Please include in your request as many details as possible: screenshots, Odoo server logs, a full description of how to reproduce your problem, and so on. Usually, it takes a few business days to prepare a working plan for an issue (if a bug is confirmed) or provide you with guidelines on what should be done (otherwise).
Public features requests and module ideas (free development)
We are strongly motivated to improve our tools and would be grateful for any sort of feedback. In case your requirements are of public use and might be efficiently implemented, the team would include those in our to-do list.
Such a to-do list is processed on a regular basis and does not assume extra fees. Although we cannot promise deadlines and final design, it might be a good way to get desired features without investments and risks.
No phone number or credit card is required to contact us: only a short email sign up which does not take more than 30 seconds.
The technical core to synchronize your cloud storage solution with Odoo
245€The tool to automatically synchronize Odoo attachments with OneDrive files in both ways
394€The tool to automatically synchronize Odoo attachments with Google Drive files in both ways
394€The tool to automatically synchronize Odoo attachments with OwnCloud / NextCloud files in both ways
394€The tool to build deep and structured knowledge base for internal and external use. Knowledge System. KMS
298€The tool for time-based service management from booking appointments to sales and reviews
398€The tool to set up KPI targets and control their fulfillment by periods. KPI dashboards. Dashboard designer. KPI charts
198€The tool to create website documentation based on your knowledge base
436€