From 0da3b007338dbc1f32f9b219e1aa55513aa663e0 Mon Sep 17 00:00:00 2001 From: "Donatienne (dopi)" Date: Tue, 7 May 2024 16:37:22 +0200 Subject: [PATCH] [IMP] Documents: share section to be improved taskid-3898917 closes odoo/documentation#9949 X-original-commit: 3acda8ef0499483d27b6b62e49dc23ec24edda21 Signed-off-by: Audrey Vandromme (auva) Signed-off-by: Donatienne Pirlot (dopi) --- .../applications/productivity/documents.rst | 211 ++++++++++++------ .../productivity/documents/missing-doc.png | Bin 0 -> 27784 bytes 2 files changed, 144 insertions(+), 67 deletions(-) create mode 100644 content/applications/productivity/documents/missing-doc.png diff --git a/content/applications/productivity/documents.rst b/content/applications/productivity/documents.rst index 3bbddd4c2..796d9b1c8 100644 --- a/content/applications/productivity/documents.rst +++ b/content/applications/productivity/documents.rst @@ -20,7 +20,7 @@ centralization of files attached to a specific area of your activity. For exampl :guilabel:`Human Resources`, your HR documents are automatically available in the HR workspace, while documents related to Payroll are automatically available in the Payroll sub-workspace . You can change the default workspace using the dropdown menu and edit its properties by clicking the -internal link button (:guilabel:`➔`). +:guilabel:`➔` (:guilabel:`Internal link`) icon. .. image:: documents/files-centralization.png :alt: Enable the centralization of files attached to a specific area of your activity. @@ -41,39 +41,39 @@ internal link button (:guilabel:`➔`). Workspaces ========== -Workspaces are hierarchical folders having their own set of tags and :ref:`actions -`. Default workspaces exist, but you can create your own by going to -:menuselection:`Documents --> Configuration --> Workspaces` and clicking :guilabel:`New`. On the new -page, fill in the following information: +Workspaces are hierarchical folders having their own set of :ref:`tags ` +and :ref:`actions `. Default workspaces exist, but you can create your +own by going to :menuselection:`Documents --> Configuration --> Workspaces` and clicking +:guilabel:`New`. On the new page, fill in the following information: - :guilabel:`Name` - :guilabel:`Parent Workspace`: if you want to create a sub-workspace, select its :guilabel:`Parent Workspace` +Three tabs are available: :ref:`Tags `, +:ref:`Access Rights `, and :ref:`Description `. + +.. _documents/tags: + Tags ---- Tags are used within workspaces to add a level of differentiation between documents. They are organized per category, and filters can be used to sort them. -Tags can be created from the :guilabel:`Tags` tab. Click :guilabel:`Add a line`, create the -:guilabel:`Tag Category`, and :guilabel:`Name` your tags. +From the :guilabel:`Tags` tab, click :guilabel:`Add a line`, create the :guilabel:`Tag Category`, +and :guilabel:`Name` your tags. .. note:: - The tags of a parent workspace apply to the child workspaces automatically; - - Tags can be created and modified by going to :menuselection:`Configuration --> Tags`; - - Tags can also be created or edited by clicking the gear icon :guilabel:`⚙` on the left menu. + - Tags can be created and modified by going to :menuselection:`Documents --> Configuration --> + Tags`; + - Tags can also be created or edited by clicking the :icon:`fa-cog` (:guilabel:`cog`) icon on + the left menu; + - An :ref:`email alias ` can be used to automatically send received documents + to a specific workspace based on the tag assigned. -An **email alias** can be used to automatically send received documents to a specific workspace -based on the tag assigned. To create an email alias: - -#. Select the tag and the corresponding workspace where the document should be directed in the left - column of your dashboard. - -#. Next to the :guilabel:`Upload` button, click the down arrow, and then click :guilabel:`Share`. - -#. In the new window, click :guilabel:`Download and Upload` and enter the email alias where - documents should be sent. +.. _documents/access-rights: Access rights ------------- @@ -83,6 +83,12 @@ Workspaces`, open the workspace you want to edit, and go to the :guilabel:`Acces You can add :guilabel:`Write Groups` that can view, create, and edit the workspace's documents. You can also add :guilabel:`Read Groups` that can only view the workspace's documents. +.. tip:: + Enable :guilabel:`Own Documents Only` to limit :guilabel:`Read Groups` and + :guilabel:`Write Groups` to the documents of which they are owner. + +.. _documents/description: + Description ----------- @@ -91,54 +97,63 @@ Configuration --> Workspaces`, opening the workspace you want to describe and go :guilabel:`Description` tab. .. note:: - Workspaces can also be created and edited by clicking the gear icon :guilabel:`⚙` on the left - menu. + Workspaces can also be created and edited by clicking the :icon:`fa-cog` (:guilabel:`cog`) icon + on the left menu. .. image:: documents/sub-workspaces-creation.png :alt: Create sub-workspaces from the left menu +.. _documents/management: + Documents management ==================== -When selecting or opening a document, the right panel displays different options. On the top, -additional options might be available: :guilabel:`Download`, :guilabel:`Share`, :guilabel:`Replace`, -:guilabel:`Lock` or :guilabel:`Split`. It is also possible to :guilabel:`Open chatter` or use the -:guilabel:`Move to trash` option. +When selecting or opening a document, the right panel displays different options, including, for +example: :icon:`fa-download` (:guilabel:`Download`), :icon:`fa-share-alt` (:guilabel:`Share this +selection`), :icon:`fa-retweet` (:guilabel:`Replace`), :icon:`fa-unlock` (:guilabel:`Lock`), +:icon:`fa-scissors` (:ref:`Split `), :icon:`fa-comments` (:guilabel:`Open chatter`), +and :icon:`fa-trash` (:guilabel:`Move to trash`). .. image:: documents/right-panel-options.png :align: center :alt: right panel options -Then, you can modify the name of your file by clicking on :guilabel:`Name`. A :guilabel:`Contact` or -an :guilabel:`Owner` can be assigned. The related :guilabel:`Workspace` can be modified and it is +To modify the name of your file, click on :guilabel:`Name`. A :guilabel:`Contact` or an +:guilabel:`Owner` can be assigned. The related :guilabel:`Workspace` can be modified and it is possible to access the related :guilabel:`Journal Entry` or add :guilabel:`Tags`. .. note:: - - The :guilabel:`Contact` is the person related to the document and assigned to it. He can only - view the document and not modify it. I.e.: an existing supplier in your database is the contact - for their bill. - - The person who creates a document is, by default :guilabel:`Owner` of it and has complete - rights to it. It is possible to replace the owner of a document. I.e., an employee - must be owner of a document to be able to see it in "My Profile". + - The :guilabel:`Contact` is a person related to the document who only has read + :ref:`access rights ` to the document, e.g., an existing supplier in + your database; + - The creator of a document is automatically assigned as its :guilabel:`Owner` and is granted + full access rights to it. To replace the owner of a document, select the required user from the + dropdown list in the :guilabel:`Owner` field. + +.. tip:: + An employee must be a user and the owner of a document to view it in **My Profile**. Different :ref:`Actions ` are available at the bottom of the right panel, depending on the workspace where your document is stored. +.. _documents/split: + Split PDF documents ------------------- -Select the PDF you want to split, and click the scissors icon. A new view displays all the pages of -the document. +Select the PDF you want to split, and click the :icon:`fa-scissors` (:guilabel:`scissors`) icon. A +new view displays all the pages of the document. -By default, each page of the document will be split when clicking :guilabel:`Split`. To remove a -split between two pages, click on the scissors icon. +By default, all pages are split when you click :guilabel:`Split`. To remove a split between two +pages, click the :icon:`fa-scissors` (:guilabel:`scissors`) icon. .. image:: documents/split-pdf.png :alt: split your documents .. tip:: - To merge documents from your dashboard, select them and click the scissors icon. Click on the - scissors between the two documents and click :guilabel:`Split` to merge the documents. + To merge documents from your dashboard, select them and click the :icon:`fa-scissors` + (:guilabel:`scissors`) icon. Click on the scissors between the two documents and click + :guilabel:`Split` to merge the documents. Additional features ------------------- @@ -151,29 +166,35 @@ Request You can create "missing documents" and organize them as documents, to remind users to download them. -Select the workspace where the file should be stored, click :guilabel:`Upload`, then -:guilabel:`Request`. Add the :guilabel:`Document Name`, select the person you need it from in the -:guilabel:`Request To` field, fill in the :guilabel:`Due Date In`, confirm the -:guilabel:`Workspace`, the document should belong to, and add :guilabel:`Tags` and a -:guilabel:`Note`, if needed. Then, click :guilabel:`Request`. A placeholder for the missing document +Select the workspace where the file should be stored, click the arrow next to the :guilabel:`Upload` +button, and select the :guilabel:`Request` option. Add the :guilabel:`Document Name`, choose the +person you need it from in the :guilabel:`Request To` field, fill in the :guilabel:`Due Date In`, +confirm the :guilabel:`Workspace` the document should belong to, and add :guilabel:`Tags` and a +:guilabel:`Note` if needed. Then, click :guilabel:`Request`. A placeholder for the missing document is created in the workspace. -When your document is available, click the placeholder to upload it. +.. image:: documents/missing-doc.png + :alt: Placeholder for missing document -You can see all missing documents by going to the **Activity** view and to the :guilabel:`Requested +To upload the document, click the :icon:`fa-upload` (:guilabel:`Upload file`) icon in the document +preview. By default, the requestor is set as the document's :guilabel:`Owner`. + +You can see all missing documents by going to the **Activity** view and the :guilabel:`Requested Document` column. .. tip:: - From the :guilabel:`Activity` view, you can send a **reminder email** to users from whom you are - expecting a document. Go to the :guilabel:`Requested Document` column, click on ⋮ and - :guilabel:`Document Request: Reminder`. + - From the :guilabel:`Activity` view, you can send a **reminder email** to users from whom you + are expecting a document. Go to the :guilabel:`Requested Document` column, click on the + :icon:`fa-ellipsis-v` (:guilabel:`vertical ellipsis`) icon and :guilabel:`Document Request: Reminder`. - Click on a date to see the details of a specific request. You can update it by clicking on the - pen icon, :guilabel:`Preview` the content of the reminder email, or :guilabel:`Send Now` to send - a reminder email. + - Click on a date to see the details of a specific request. You can update it by clicking on the + :icon:`fa-pencil` (:guilabel:`pen`) icon, :guilabel:`Preview` the content of the reminder + email, or :guilabel:`Send Now` to send a reminder email. - .. image:: documents/reminder-email.png - :alt: send a reminder email from the Activity view + .. image:: documents/reminder-email.png + :alt: send a reminder email from the Activity view + +.. _documents/add-a-link: Add a link ~~~~~~~~~~ @@ -184,19 +205,74 @@ To add a link to your documents dashboard, click on :guilabel:`Add a Link`, ente Share ~~~~~ -You can create a share link to a document or all documents of a workspace. It allows anyone to -download the file(s) or upload files to a workspace. +You can make a document or a workspace accessible to anyone by sharing a URL. -To do so, select the workspace or the document and click the arrow next to the :guilabel:`Upload` -button then :guilabel:`Share`. On the pop-up, the share :guilabel:`URL` is displayed. -:guilabel:`Copy` it to share it with anyone. :guilabel:`Name` the share link and set a validity date -for the URL by filling in the :guilabel:`Valid Until` field. Tick the :guilabel:`Include Sub -Folders` box if you also want to share a workspace's sub-folders. To let users upload their own -documents, select :guilabel:`Download and Upload`. +Share a document +**************** + +To generate a **share link** to a document, select the document, click the arrow next to the +:guilabel:`Upload` button, and click :guilabel:`Share`. + +In the pop-up, you can :guilabel:`Name` the share link, set a validity date by filling in the +:guilabel:`Valid Until` field, and if you own more than one site, select the :guilabel:`Website` you +want so the right domain name is reflected in the URL. + +Click :guilabel:`Copy` or :guilabel:`Share` to send the URL to whomever you want. + +.. tip:: + You can also generate a share URL by selecting the document, going to the right panel, and + clicking the :icon:`fa-share-alt` (:guilabel:`Share this selection`) icon. + +Share a workspace +***************** + +You can share a link to a workspace and allow users to :guilabel:`Download` its content or +:guilabel:`Download and Upload` files to it. + +To do so, go to the left column of your dashboard. In the :guilabel:`Workspace` section, select the +workspace to share, and possibly one or several tags that will be automatically added to the +uploaded documents. Then, click the arrow next to the :guilabel:`Upload` button and +:guilabel:`Share`. + +In the pop-up, a share :guilabel:`URL` you can :guilabel:`Copy` is displayed. You can +:guilabel:`Name` your share link, set a validity date by filling in the :guilabel:`Valid Until` +field, tick the :guilabel:`Include Sub Folders` box if you want to share the workspace's +sub-folders, and if you own more than one site, select the :guilabel:`Website` you +want so the share link reflects the right domain name. + +Then, allow users to either :guilabel:`Download` files from your workspace, or to :ref:`Download and +Upload ` files to it. + +.. Note:: + - The links added to your workspace using the :ref:`Add a Link ` option + cannot be shared and are, therefore, excluded. + - When tags are applied to a shared workspace, users can exclusively access the documents + associated with those tags. + +.. _documents/upload: + +Upload by email +^^^^^^^^^^^^^^^ + +Select the :guilabel:`Download and Upload` option to enable users to upload their files to your +workspace using an :guilabel:`Email Alias`. To create the email alias, enter its name in the +:guilabel:`Email Alias` field. The :doc:`domain name <../general/email_communication/email_servers>` +should be set by default, but you can modify it by clicking it. + +The documents sent to this email alias are uploaded to the workspace using the chosen +:ref:`tags `. .. note:: - It is possible to only share one or more documents (without their workspace) by selecting them - and clicking :guilabel:`Share`. + - By default, the :guilabel:`Document Owner` is the person who uploads a file to a workspace, but + you can select another user. You can also set a :guilabel:`Contact`, usually an external + person, such as a partner. + - Enable :guilabel:`Create a new activity` to automatically create an activity when a document is + uploaded. Select the :guilabel:`Activity type` from the dropdown list and set the + :guilabel:`Due Date In` field. You can also add a :guilabel:`Summary` and a + :guilabel:`Responsible` person assigned to the activity. + +.. tip:: + Go to :menuselection:`Configuration --> Share & Emails` to see and manage your share links. New spreadsheet ~~~~~~~~~~~~~~~ @@ -266,9 +342,10 @@ pdf :guilabel:`value`. .. image:: documents/domain-condition-example.png :alt: Example of a workflow action's domain condition in Odoo Documents -Click :guilabel:`Add New Rule` (plus icon) and :guilabel:`Add branch` to add conditions and -sub-conditions. You can then specify if your rule should match :guilabel:`all` or :guilabel:`any` -conditions. You can also edit the rule directly using the :guilabel:`Code editor`. +Click the :icon:`fa-plus` (:guilabel:`Add New Rule`) icon and the :icon:`fa-sitemap` +(:guilabel:`Add branch`) icon to add conditions and sub-conditions. You can then specify if your +rule should match :guilabel:`all` or :guilabel:`any` conditions. You can also edit the rule directly +using the :guilabel:`Code editor`. Configure the actions --------------------- diff --git a/content/applications/productivity/documents/missing-doc.png b/content/applications/productivity/documents/missing-doc.png new file mode 100644 index 0000000000000000000000000000000000000000..272da2d031cd80e422b854616d4cdc65d4b1e2c1 GIT binary patch literal 27784 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 literal 0 HcmV?d00001