========== Date Range ========== .. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Mature-brightgreen.png :target: https://odoo-community.org/page/development-status :alt: Mature .. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html :alt: License: AGPL-3 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fserver--ux-lightgray.png?logo=github :target: https://github.com/OCA/server-ux/tree/14.0/date_range :alt: OCA/server-ux .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png :target: https://translation.odoo-community.org/projects/server-ux-14-0/server-ux-14-0-date_range :alt: Translate me on Weblate .. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png :target: https://runbot.odoo-community.org/runbot/250/14.0 :alt: Try me on Runbot |badge1| |badge2| |badge3| |badge4| |badge5| This module lets you define global date ranges that can be used to filter your values in tree views. It also provides a mixin model for developers that extends the model's search view so that date ranges can be search as any relational field. **Table of contents** .. contents:: :local: Installation ============ The addon use the daterange method from postgres. This method is supported as of postgresql 9.2 Configuration ============= For regular usage, see `Usage` below. This section is to clarify optional functionality to developers. To configure a model to use the Many2one style search field, make the model inherit from `date.range.search.mixin`: .. code-block:: class AccountMove(models.Model): _name = "account.move" _inherit = ["account.move", "date.range.search.mixin"] This will make a `Period` field show up in the search view: .. figure:: https://raw.githubusercontent.com/OCA/server-tools/12.0/date_range/static/description/date_range_many2one_search_field.png :scale: 80 % :alt: Date range Many2one search field By default, the mixin works on the `date` field. If you want the mixin to work on a field with a different name, you can set a property on your model: .. code-block:: _date_range_search_field = "invoice_date" Usage ===== To configure this module, you need to: * Go to Settings > Technical > Date ranges > Date Range Types where you can create types of date ranges. .. figure:: https://raw.githubusercontent.com/OCA/server-tools/14.0/date_range/static/description/date_range_type_create.png :scale: 80 % :alt: Create a type of date range * Go to Settings > Technical > Date ranges > Date Ranges where you can create date ranges. .. figure:: https://raw.githubusercontent.com/OCA/server-tools/14.0/date_range/static/description/date_range_create.png :scale: 80 % :alt: Date range creation It's also possible to launch a wizard from the 'Generate Date Ranges' menu. .. figure:: https://raw.githubusercontent.com/OCA/server-tools/14.0/date_range/static/description/date_range_wizard.png :scale: 80 % :alt: Date range wizard The wizard is useful to generate recurring periods. Set an end date or enter the number of ranges to create. .. figure:: https://raw.githubusercontent.com/OCA/server-tools/14.0/date_range/static/description/date_range_wizard_result.png :scale: 80 % :alt: Date range wizard result * Your date ranges are now available in the search filter for any date or datetime fields Date range types are proposed as a filter operator .. figure:: https://raw.githubusercontent.com/OCA/server-tools/14.0/date_range/static/description/date_range_type_as_filter.png :scale: 80 % :alt: Date range type available as filter operator Once a type is selected, date ranges of this type are porposed as a filter value .. figure:: https://raw.githubusercontent.com/OCA/server-tools/14.0/date_range/static/description/date_range_as_filter.png :scale: 80 % :alt: Date range as filter value And the dates specified into the date range are used to filter your result. .. figure:: https://raw.githubusercontent.com/OCA/server-tools/14.0/date_range/static/description/date_range_as_filter_result.png :scale: 80 % :alt: Date range as filter result * You can configure date range types with default values for the generation wizard on the `Generation` tab. In the same tab you can also configure date range types for auto-generation. New ranges for types configured for this are generated by a scheduled task that runs daily. .. figure:: https://raw.githubusercontent.com/OCA/server-tools/14.0/date_range/static/description/date_range_type_autogeneration.png :scale: 80 % :alt: Configure a date range for auto-generaton Bug Tracker =========== Bugs are tracked on `GitHub Issues `_. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us smashing it by providing a detailed and welcomed `feedback `_. Do not contact contributors directly about support or help with technical issues. Credits ======= Authors ~~~~~~~ * ACSONE SA/NV Contributors ~~~~~~~~~~~~ * Laurent Mignon * Alexis de Lattre * Miquel Raïch * Andrea Stirpe * Stefan Rijnhart Maintainers ~~~~~~~~~~~ This module is maintained by the OCA. .. image:: https://odoo-community.org/logo.png :alt: Odoo Community Association :target: https://odoo-community.org OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use. .. |maintainer-lmignon| image:: https://github.com/lmignon.png?size=40px :target: https://github.com/lmignon :alt: lmignon Current `maintainer `__: |maintainer-lmignon| This module is part of the `OCA/server-ux `_ project on GitHub. You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.