server-tools/attachment_synchronize
Florian da Costa e6a8b97d5c [IMP] attachment synchronize : when importing files from a remote server :
If one task is failing, keep processing the others
Commit fir attachment imported after each file to be sure not to loose any data, when deleting on remote after import for example
2024-04-24 17:40:15 +02:00
..
data [IMP] attachment_synchronize: pre-commit 2023-09-07 11:17:48 +02:00
demo [IMP] attachment synchronize : when importing files from a remote server : 2024-04-24 17:40:15 +02:00
i18n Translated using Weblate (Italian) 2024-04-04 11:35:49 +00:00
models [IMP] attachment synchronize : when importing files from a remote server : 2024-04-24 17:40:15 +02:00
readme [MIG] attachment_synchronize : Migration to v16 2023-09-07 11:17:48 +02:00
security [REF] refactor code and add test 2023-09-07 11:17:48 +02:00
static/description [BOT] post-merge updates 2024-01-30 10:01:19 +00:00
tests [IMP] attachment synchronize : when importing files from a remote server : 2024-04-24 17:40:15 +02:00
views [IMP] remove unnecessary comments 2024-01-26 15:38:18 -03:00
README.rst [BOT] post-merge updates 2024-01-30 10:01:19 +00:00
__init__.py Migrate and refactore external_file_location 2023-09-07 11:17:48 +02:00
__manifest__.py [MIG] attachment_synchronize : Migration to v16 2023-09-07 11:17:48 +02:00

README.rst

======================
Attachment Synchronize
======================

.. 
   !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
   !! This file is generated by oca-gen-addon-readme !!
   !! changes will be overwritten.                   !!
   !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
   !! source digest: sha256:df01bd9b8a51738a68feed9421bed8ce9d5a23d4c5e8db7a8f230218cb95a611
   !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
    :target: https://odoo-community.org/page/development-status
    :alt: Beta
.. |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--tools-lightgray.png?logo=github
    :target: https://github.com/OCA/server-tools/tree/16.0/attachment_synchronize
    :alt: OCA/server-tools
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
    :target: https://translation.odoo-community.org/projects/server-tools-16-0/server-tools-16-0-attachment_synchronize
    :alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
    :target: https://runboat.odoo-community.org/builds?repo=OCA/server-tools&target_branch=16.0
    :alt: Try me on Runboat

|badge1| |badge2| |badge3| |badge4| |badge5|

This module allows to **import/export files** from/to backend servers.

A backend server is defined by the basic `fs_storage <https://github.com/OCA/storage/tree/16.0/fs_storage>`_ OCA module, while it can be configured (amazon S3, sftp,...) with additional modules fs python libraries

The imported files (and the files to be exported) are stored in Odoo as ``attachment.queue`` objects, defined by the `attachment_queue <https://github.com/OCA/server-tools/tree/16.0/attachment_queue>`_ module while the importation itself (resp. exportation) is realized by **"Attachments Import Tasks"** (resp. "Attachments Export Tasks") defined by this current module.

**Table of contents**

.. contents::
   :local:

Usage
=====

As importation and exportation are different processes, they are triggered in different ways :

**To import files**, you need to create an *"Attachment Import Task"* (menu *Settings > Technical > Attachments Import Tasks*) which defines :

- where to find the files to import from the backend server (path to the files, selection pattern)
- what to do with the source files in the backend server (avoid duplicates, delete/rename after import...)
- how the files will be processed once imported (through the **File Type** field).

.. image:: https://raw.githubusercontent.com/OCA/server-tools/16.0/attachment_synchronize/static/description/import_task.png

.. epigraph::

  🔎 The **File Type** options are defined by other modules built to process the Attachments Queues with the same "File Type".

**To export files**, you need first to register them as *"Attachments Queues"* objects linked to an *"Attachment Export Task"* (which set automatically their **File Type** to *"Export File (External Location)"*).

Then, you can export one file at a time from the *Attachment Queue*'s form view, or export all the *Attachments Queues* in a pending state related to the same *Export Task* from the given *Export Task* form view (menu *Settings > Technical > Attachments Export Tasks*) :

.. image:: https://raw.githubusercontent.com/OCA/server-tools/16.0/attachment_synchronize/static/description/export_task.png

Bug Tracker
===========

Bugs are tracked on `GitHub Issues <https://github.com/OCA/server-tools/issues>`_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us to smash it by providing a detailed and welcomed
`feedback <https://github.com/OCA/server-tools/issues/new?body=module:%20attachment_synchronize%0Aversion:%2016.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.

Do not contact contributors directly about support or help with technical issues.

Credits
=======

Authors
~~~~~~~

* Akretion

Contributors
~~~~~~~~~~~~

`Akretion <https://www.akretion.com/>`_ :

- Valentin CHEMIERE
- Mourad EL HADJ MIMOUNE <mourad.elhadj.mimoune@akretion.com>
- Florian DA COSTA <florian.dacosta@akretion.com>
- Clément MOMBEREAU <clement.mombereau@akretion.com.br>

GS Lab:

- Giovanni SERRA <giovanni@gslab.it>

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-florian-dacosta| image:: https://github.com/florian-dacosta.png?size=40px
    :target: https://github.com/florian-dacosta
    :alt: florian-dacosta
.. |maintainer-sebastienbeau| image:: https://github.com/sebastienbeau.png?size=40px
    :target: https://github.com/sebastienbeau
    :alt: sebastienbeau
.. |maintainer-GSLabIt| image:: https://github.com/GSLabIt.png?size=40px
    :target: https://github.com/GSLabIt
    :alt: GSLabIt
.. |maintainer-bealdav| image:: https://github.com/bealdav.png?size=40px
    :target: https://github.com/bealdav
    :alt: bealdav

Current `maintainers <https://odoo-community.org/page/maintainer-role>`__:

|maintainer-florian-dacosta| |maintainer-sebastienbeau| |maintainer-GSLabIt| |maintainer-bealdav| 

This module is part of the `OCA/server-tools <https://github.com/OCA/server-tools/tree/16.0/attachment_synchronize>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.