From 507ec4561688597dbc14a2fdb3ba6335b26cc5bc Mon Sep 17 00:00:00 2001 From: hoangvv Date: Fri, 28 Feb 2025 03:47:22 +0700 Subject: [PATCH] update --- Makefile | 6 +++- content/administration/odoo_online.md | 18 +++++------ content/administration/on_premise.md | 4 +-- content/applications/essentials/activities.md | 32 +++++++++---------- .../essentials/export_import_data.md | 18 +++++------ .../essentials/in_app_purchase.md | 4 +-- content/applications/essentials/reporting.md | 12 +++---- content/applications/essentials/search.md | 16 +++++----- 8 files changed, 57 insertions(+), 53 deletions(-) diff --git a/Makefile b/Makefile index 68e06f4bb..e96c92e13 100644 --- a/Makefile +++ b/Makefile @@ -70,11 +70,15 @@ html: $(HTML_BUILD_DIR)/_static/style.css hot_reload: SPHINXOPTS += -A collapse_menu=True hot_reload: @echo "Starting Live Server..." + @LAST_MODIFIED=$$(find $(SOURCE_DIR) -name "*.rst" | xargs ls -t | head -n1); \ + echo "Building changed file first: $$LAST_MODIFIED"; \ + $(SPHINXBUILD) -b html $(SOURCE_DIR) $(HTML_BUILD_DIR) -c $(CONFIG_DIR) -D master_doc=$$(basename $$LAST_MODIFIED .rst); \ $(SPHINX_AUTO_BUILD) $(SOURCE_DIR) $(HTML_BUILD_DIR) \ --port 8000 --host $(SERVER_IP) \ --watch $(THEME) --watch $(LOCALE) --watch $(STATIC) --watch $(REDIRECTS) --watch $(THEME_STATIC) --watch . \ --pre-build "sh -c 'mkdir -p $(HTML_BUILD_DIR)/_static && python3 -m pysassc $(THEME)/static/style.scss $(HTML_BUILD_DIR)/_static/style.css'" \ - $(SPHINXOPTS) -c $(CONFIG_DIR) -b html -q + $(SPHINXOPTS) -c $(CONFIG_DIR) -b html + # To call *after* `make html` diff --git a/content/administration/odoo_online.md b/content/administration/odoo_online.md index 9c5b9802c..160f61500 100644 --- a/content/administration/odoo_online.md +++ b/content/administration/odoo_online.md @@ -26,15 +26,15 @@ database name. It is only displayed if an upgrade is available. :alt: Accessing the database management options ``` -- {ref}`odoo_online/upgrade` -- {ref}`odoo_online/duplicate` -- {ref}`odoo_online/rename` -- {ref}`odoo_online/download` -- {ref}`odoo_online/domains` -- {ref}`odoo_online/tags` -- {ref}`odoo_online/delete` -- {ref}`odoo_online/contact-support` -- {ref}`odoo_online/users` +- {ref}`odoo-online-upgrade` +- {ref}`odoo-online-duplicate` +- {ref}`odoo-online-rename` +- {ref}`odoo-online-download` +- {ref}`odoo-online-domains` +- {ref}`odoo-online-tags` +- {ref}`odoo-online-delete` +- {ref}`odoo-online-contact-support` +- {ref}`odoo-online-users` (odoo-online-upgrade)= diff --git a/content/administration/on_premise.md b/content/administration/on_premise.md index fc431ca88..6d62bab72 100644 --- a/content/administration/on_premise.md +++ b/content/administration/on_premise.md @@ -42,7 +42,7 @@ To resolve the issue: :::{tip} If a test or a development database is needed, you can {ref}`duplicate a database - `. + `. ::: - Verify that **no databases share the same UUID** (Universally Unique Identifier) by opening your @@ -81,7 +81,7 @@ To resolve the issue, either: - **Add more users** to your subscription by clicking the {guilabel}`Upgrade your subscription` link displayed in the message to validate the upsell quotation and pay for the extra users. -- {ref}`Deactivate users ` and **reject** the upsell quotation. +- {ref}`Deactivate users ` and **reject** the upsell quotation. Once your database has the correct number of users, the expiration message disappears automatically after a few days, when the next verification occurs. diff --git a/content/applications/essentials/activities.md b/content/applications/essentials/activities.md index a31cdf23d..1852af4b6 100644 --- a/content/applications/essentials/activities.md +++ b/content/applications/essentials/activities.md @@ -10,7 +10,7 @@ substitutions: (activities-important)= The icon used to display activities varies, depending on the {ref}`activity type -`: +`: - {icon}`fa-clock-o` {guilabel}`(clock)` icon: the default activities icon. - {icon}`fa-phone` {guilabel}`(phone)` icon: a phone call is scheduled. @@ -23,8 +23,8 @@ The icon used to display activities varies, depending on the {ref}`activity type ## Schedule activities Activities can be scheduled on any page of the database that contains a {ref}`chatter -` thread, {ref}`Kanban view `, {ref}`list view -`, or {ref}`activities view ` of an application. +` thread, {ref}`Kanban view `, {ref}`list view +`, or {ref}`activities view ` of an application. (activities-chatter)= @@ -34,7 +34,7 @@ Activities can be created from the chatter on any record. To schedule a new activity, click the {guilabel}`Activities` button, located at the top of the chatter. In the {guilabel}`Schedule Activity` pop-up window that appears, {ref}`fill out the -Schedule Activity form `. +Schedule Activity form `. ```{image} activities/chatter.png :align: center @@ -50,7 +50,7 @@ Activities can also be created from the {icon}`oi-view-kanban` {guilabel}`(Kanba To do so, click on the {{ clock }} located at the bottom of an individual record. Click {guilabel}`+ Schedule An Activity`, then proceed to {ref}`fill out the Schedule Activity form -`. +`. ```{image} activities/schedule-kanban-activity.png :align: center @@ -72,7 +72,7 @@ If the {guilabel}`Activities` column is hidden, reveal it using the {icon}`oi-se {guilabel}`(settings adjust)` icon in the far-right of the top row. Then, click on the {{ clock }} for the record the activity is being added to, and click {guilabel}`+ -Schedule an activity`. Proceed to {ref}`fill out the Schedule Activity form ` that +Schedule an activity`. Proceed to {ref}`fill out the Schedule Activity form ` that appears. :::{note} @@ -118,7 +118,7 @@ regardless of the activity type, or the view. To schedule an activity for a record, hover over the corresponding field. Click the {icon}`fa-plus` {guilabel}`(plus)` icon that appears, and then {ref}`fill out the Schedule Activity form -`. +`. ```{image} activities/activity-view.png :align: center @@ -130,9 +130,9 @@ To schedule an activity for a record, hover over the corresponding field. Click ### Schedule Activity form Activities can be scheduled from many different places, such as from the {ref}`chatter -` of a record, or from one of multiple views in an application, when available: -the {ref}`Kanban view `, {ref}`list view `, or {ref}`activity -view `. +` of a record, or from one of multiple views in an application, when available: +the {ref}`Kanban view `, {ref}`list view `, or {ref}`activity +view `. Enter the following information on the form: @@ -212,7 +212,7 @@ activities that are {guilabel}`Late`, due {guilabel}`Today`, and scheduled in th ### Request a document The option to {guilabel}`Request a Document` is available at the bottom of the list of {ref}`all -scheduled activities `, the option to {guilabel}`Request a Document` appears. Click +scheduled activities `, the option to {guilabel}`Request a Document` appears. Click {guilabel}`Request a Document`, and a {guilabel}`Request a file` pop-up window appears. Enter the following information on the form: @@ -225,7 +225,7 @@ Enter the following information on the form: reveal a drop-down menu. Select the desired time-frame option from the list. The options are {guilabel}`Days`, {guilabel}`Weeks`, or {guilabel}`Months`. - {guilabel}`Workspace`: using the drop-down menu, select the specific {ref}`Workspace - ` the document is being uploaded to. + ` the document is being uploaded to. - {guilabel}`Tags`: select any desired tags from the drop-down menu. The available tags displayed are based on the tags configured for the selected {guilabel}`Workspace`. - {guilabel}`Message`: enter a message to clarify the document request in this field. @@ -264,7 +264,7 @@ example, to view and edit the activities available for the *CRM* application, go ### Edit activity types -To edit an existing {ref}`activity type `, click on the activity type, and the +To edit an existing {ref}`activity type `, click on the activity type, and the activity type form loads. Make any desired changes to the activity type form. The form automatically saves, but it can be @@ -273,7 +273,7 @@ saved manually at any time by clicking the {guilabel}`Save Manually` option, rep ### Create new activity types -To create a new {ref}`activity type `, click {guilabel}`New` from the +To create a new {ref}`activity type `, click {guilabel}`New` from the {guilabel}`Activity Types` page, and a blank activity type form loads. Enter a {guilabel}`Name` for the activity type at the top of the form, then enter the following @@ -296,7 +296,7 @@ information on the form. Available activity types vary based on the installed applications in the database. ::: -- {guilabel}`Folder`: select a specific {ref}`workspace ` folder to save a +- {guilabel}`Folder`: select a specific {ref}`workspace ` folder to save a document to. This field **only** appears if {guilabel}`Upload Document` is selected for the {guilabel}`Action`. @@ -315,7 +315,7 @@ information on the form. ::: - {guilabel}`Keep Done`: tick this checkbox to keep activities that have been marked as `Done` - visible in the {ref}`activity view `. + visible in the {ref}`activity view `. - {guilabel}`Default Note`: enter any notes to appear with the activity. diff --git a/content/applications/essentials/export_import_data.md b/content/applications/essentials/export_import_data.md index dcef26bdf..41bc6db99 100644 --- a/content/applications/essentials/export_import_data.md +++ b/content/applications/essentials/export_import_data.md @@ -41,7 +41,7 @@ several options for the data to export: 1. With the {guilabel}`I want to update data (import-compatable export)` option ticked, the system only shows the fields that can be imported. This is helpful in the case where the {ref}`existing - records need to be updated `. This works like a filter. Leaving the box + records need to be updated `. This works like a filter. Leaving the box unticked, gives many more field options because it shows all the fields, not just the ones that can be imported. 2. When exporting, there is the option to export in two formats: `.csv` and `.xls`. With `.csv`, @@ -75,7 +75,7 @@ because then, the only data exported is what should be modified and re-imported. ## Import data into Odoo Importing data into Odoo is extremely helpful during implementation, or in times where data needs to -be {ref}`updated in bulk `. The following documentation covers how to import +be {ref}`updated in bulk `. The following documentation covers how to import data into an Odoo database. :::{warning} @@ -115,7 +115,7 @@ Open the view of the object to which the data should be imported/populated, clic ``` Click {icon}`fa-download`{guilabel}`Import Template for Customers` at the center of the page to -download a {ref}`template ` and populate it with +download a {ref}`template ` and populate it with the company's own data. Such templates can be imported in one click since the data mapping is already preconfigured. @@ -182,9 +182,9 @@ from previous software to facilitate the transition to Odoo. Setting an ID is not mandatory when importing, but it helps in many cases: -- {ref}`Update imports `: import the same file several times without +- {ref}`Update imports `: import the same file several times without creating duplicates. -- {ref}`Import relation fields `. +- {ref}`Import relation fields `. To recreate relationships between different records, the unique identifier from the original application should be used to map it to the {guilabel}`External ID` (ID) column in Odoo. @@ -288,7 +288,7 @@ the {guilabel}`Formatting` options (displayed under the {guilabel}`Import` {abbr :::{important} If the {abbr}`CSV (Comma-separated Values)` file has a tabulation as a separator, Odoo does **not** detect the separations. The file format options need to be modified in the spreadsheet -application. See the following {ref}`Change CSV file format ` +application. See the following {ref}`Change CSV file format ` section. ::: @@ -409,11 +409,11 @@ respective contacts: ### Import image files -To import image files along with the {ref}`uploaded ` +To import image files along with the {ref}`uploaded ` CSV or Excel file, follow the next steps: 1. Add the image file names to the relevant {guilabel}`Image` column in the data file. -2. {ref}`Upload the data file ` or reload it by +2. {ref}`Upload the data file ` or reload it by clicking {guilabel}`Load Data File`. 3. Click {guilabel}`Upload your files` under the {guilabel}`Files to import` section. 4. Select the relevant image files. The number of files selected appears next to the button. @@ -518,7 +518,7 @@ the companies, and then the people. ## Update data in Odoo Existing data can be updated in bulk through a data import, as long as the {ref}`External ID -` remains consistent. +` remains consistent. ### Prepare data export diff --git a/content/applications/essentials/in_app_purchase.md b/content/applications/essentials/in_app_purchase.md index 0574c99f2..98e9688cf 100644 --- a/content/applications/essentials/in_app_purchase.md +++ b/content/applications/essentials/in_app_purchase.md @@ -23,7 +23,7 @@ Catalog](https://iap.odoo.com/iap/all-in-app-services). {{ IAP }} services do **not** need to be configured or set up before use. Odoo users can simply click on the service in the app to activate it. However, each service requires its own prepaid credits, and -when they run out, users **must** {ref}`buy more ` in order to keep using it. +when they run out, users **must** {ref}`buy more ` in order to keep using it. :::{note} Enterprise Odoo users with a valid subscription get free credits to test IAP features before @@ -103,7 +103,7 @@ related to SMS functionality in Odoo, review the documentation below: Every time an {{ IAP }} service is used, the prepaid credits for that service are spent. Odoo prompts the purchase of more credits when there are not enough credits left to continue using a service. -Email alerts can also be set up for when {ref}`credits are low `. +Email alerts can also be set up for when {ref}`credits are low `. Credits are purchased in *Packs* from the [Odoo IAP Catalog](https://iap.odoo.com/iap/all-in-app-services), and pricing is specific to each service. diff --git a/content/applications/essentials/reporting.md b/content/applications/essentials/reporting.md index ba31d0353..2b1ea155a 100644 --- a/content/applications/essentials/reporting.md +++ b/content/applications/essentials/reporting.md @@ -15,7 +15,7 @@ two generic views are dedicated to reporting: the graph and pivot views. ### Graph view -The {ref}`graph view ` is used to visualize your records' data, helping you +The {ref}`graph view ` is used to visualize your records' data, helping you identify patterns and trends. The view is often found under the {guilabel}`Reporting` menu of apps but can be found elsewhere. Click the **graph view button** located at the top right to access it. @@ -28,7 +28,7 @@ it. ### Pivot view -The {ref}`pivot view ` is used to aggregate your records' data and break it +The {ref}`pivot view ` is used to aggregate your records' data and break it down for analysis. The view is often found under the {guilabel}`Reporting` menu of apps but can be found elsewhere. Click the **pivot view button** located at the top right to access it. @@ -46,14 +46,14 @@ edit it, click {guilabel}`Measures` and choose one or, only for pivots, multiple :::{note} When you select a measure, Odoo aggregates the values recorded on that field for the filtered -records. Only numerical fields ({ref}`integer `, -{ref}`decimal `, {ref}`monetary -`) can be measured. In addition, the {guilabel}`Count` +records. Only numerical fields ({ref}`integer `, +{ref}`decimal `, {ref}`monetary +`) can be measured. In addition, the {guilabel}`Count` option is used to count the total number of filtered records. ::: After choosing what you want to measure, you can define how the data should be {ref}`grouped -` depending on the dimension you want to analyze. By default, the data is often +` depending on the dimension you want to analyze. By default, the data is often grouped by *Date > Month*, which is used to analyze the evolution of a measure over the months. :::{tip} diff --git a/content/applications/essentials/search.md b/content/applications/essentials/search.md index 34a826a85..f560d6beb 100644 --- a/content/applications/essentials/search.md +++ b/content/applications/essentials/search.md @@ -2,8 +2,8 @@ Odoo allows for the searching, filtering, and grouping of records in a view to display only the most relevant records. The search bar is located at the top of the view, start typing to {ref}`search for -values `, or click the {guilabel}`🔽 (down arrow)` icon to access the {ref}`Filter -`, {ref}`Group By `, and {ref}`Favorites ` drop-down +values `, or click the {guilabel}`🔽 (down arrow)` icon to access the {ref}`Filter +`, {ref}`Group By `, and {ref}`Favorites ` drop-down menus. (search-values)= @@ -15,7 +15,7 @@ to search for, and select the desired option from the drop-down menu to apply th ```{eval-rst} .. example:: - Instead of adding a :ref:`custom filter ` to select records where + Instead of adding a :ref:`custom filter ` to select records where *Mitchell Admin* is the salesperson on the *Sales Analysis* report (:menuselection:`Sales app --> Reporting --> Sales`), search for `Mitch`, and click the :guilabel:`⏵ (right arrow)` next to :guilabel:`Search Salesperson for: Mitch`, and select :guilabel:`Mitchell Admin`. @@ -27,7 +27,7 @@ to search for, and select the desired option from the drop-down menu to apply th :::{note} Using the search field is equivalent to using the *contains* operator when adding a {ref}`custom -filter `. If a partial value is entered, and the desired field is directly +filter `. If a partial value is entered, and the desired field is directly selected (without selecting the {guilabel}`⏵ (right arrow)`), *all* records containing the typed characters for the selected field are included. ::: @@ -38,7 +38,7 @@ characters for the selected field are included. Filters are used to select records that meet specific criteria. The default selection of records is specific to each view, but can be modified by selecting one (or several) {ref}`preconfigured filters -`, or by adding a {ref}`custom filter `. +`, or by adding a {ref}`custom filter `. (search-preconfigured-filters)= @@ -77,7 +77,7 @@ applied conditions. However, selecting filters from different groups requires re ### Custom filters -If the {ref}`preconfigured filters ` are not specific enough, add a +If the {ref}`preconfigured filters ` are not specific enough, add a custom filter. To do so, click the {guilabel}`🔽 (down arrow)` icon in the search bar, then select {menuselection}`Filters --> Add Custom Filter`. @@ -106,7 +106,7 @@ structure of a filter rule: are nested within another field. These fields have an {guilabel}`> (arrow)` icon beside them, which can be selected to reveal the nested fields. 2. The second inline field is the conditional *operator* used to compare the field name to the - value. The {ref}`available conditional operators ` are specific to the + value. The {ref}`available conditional operators ` are specific to the field's data type. 3. The third inline field is the variable *value* of the field name. The value input may appear as a drop-down menu, a text input, a number input, a date/time input, a boolean selector, or it may be @@ -173,7 +173,7 @@ the {guilabel}`Group By` options from the drop-down menu. .. example:: To group the records by salesperson on the *Sales Analysis* report (:menuselection:`Sales app --> Reporting --> Sales`), click the :guilabel:`Salesperson` option from the :guilabel:`Group By` - drop-down menu. The view changes to group the records by salesperson, without filtering out any + drop-down menu. The view changes to group the records by salesperson, without filtering out any records. .. image:: search/group.png