Initial commit: OCA Financial packages (186 packages)

This commit is contained in:
Ernad Husremovic 2025-08-29 15:43:04 +02:00
commit 3e0e8473fb
8757 changed files with 947473 additions and 0 deletions

View file

@ -0,0 +1,45 @@
# Stock Analytic
Odoo addon: stock_analytic
## Installation
```bash
pip install odoo-bringout-oca-account-analytic-stock_analytic
```
## Dependencies
This addon depends on:
- stock_account
- analytic
## Manifest Information
- **Name**: Stock Analytic
- **Version**: 16.0.1.4.0
- **Category**: Warehouse Management
- **License**: AGPL-3
- **Installable**: True
## Source
Based on [OCA/account-analytic](https://github.com/OCA/account-analytic) branch 16.0, addon `stock_analytic`.
## License
This package maintains the original AGPL-3 license from the upstream Odoo project.
## Documentation
- Overview: doc/OVERVIEW.md
- Architecture: doc/ARCHITECTURE.md
- Models: doc/MODELS.md
- Controllers: doc/CONTROLLERS.md
- Wizards: doc/WIZARDS.md
- Install: doc/INSTALL.md
- Usage: doc/USAGE.md
- Configuration: doc/CONFIGURATION.md
- Dependencies: doc/DEPENDENCIES.md
- Troubleshooting: doc/TROUBLESHOOTING.md
- FAQ: doc/FAQ.md

View file

@ -0,0 +1,32 @@
# Architecture
```mermaid
flowchart TD
U[Users] -->|HTTP| V[Views and QWeb Templates]
V --> C[Controllers]
V --> W[Wizards Transient Models]
C --> M[Models and ORM]
W --> M
M --> R[Reports]
DX[Data XML] --> M
S[Security ACLs and Groups] -. enforces .-> M
subgraph Stock_analytic Module - stock_analytic
direction LR
M:::layer
W:::layer
C:::layer
V:::layer
R:::layer
S:::layer
DX:::layer
end
classDef layer fill:#eef8ff,stroke:#6ea8fe,stroke-width:1px
```
Notes
- Views include tree/form/kanban templates and report templates.
- Controllers provide website/portal routes when present.
- Wizards are UI flows implemented with `models.TransientModel`.
- Data XML loads data/demo records; Security defines groups and access.

View file

@ -0,0 +1,3 @@
# Configuration
Refer to Odoo settings for stock_analytic. Configure related models, access rights, and options as needed.

View file

@ -0,0 +1,3 @@
# Controllers
This module does not define custom HTTP controllers.

View file

@ -0,0 +1,6 @@
# Dependencies
This addon depends on:
- [stock_account](../../odoo-bringout-oca-ocb-stock_account)
- [analytic](../../odoo-bringout-oca-ocb-analytic)

View file

@ -0,0 +1,4 @@
# FAQ
- Q: Which Odoo version? A: 16.0 (OCA/OCB packaged).
- Q: How to enable? A: Start server with --addon stock_analytic or install in UI.

View file

@ -0,0 +1,7 @@
# Install
```bash
pip install odoo-bringout-oca-account-analytic-stock_analytic"
# or
uv pip install odoo-bringout-oca-account-analytic-stock_analytic"
```

View file

@ -0,0 +1,17 @@
# Models
Detected core models and extensions in stock_analytic.
```mermaid
classDiagram
class stock_move
class stock_move_line
class stock_scrap
class account_analytic_applicability
class stock_picking
class stock_rule
```
Notes
- Classes show model technical names; fields omitted for brevity.
- Items listed under _inherit are extensions of existing models.

View file

@ -0,0 +1,6 @@
# Overview
Packaged Odoo addon: stock_analytic. Provides features documented in upstream Odoo 16 under this addon.
- Source: OCA/OCB 16.0, addon stock_analytic
- License: LGPL-3

View file

@ -0,0 +1,3 @@
# Reports
This module does not define custom reports.

View file

@ -0,0 +1,8 @@
# Security
This module does not define custom security rules or access controls beyond Odoo defaults.
Default Odoo security applies:
- Base user access through standard groups
- Model access inherited from dependencies
- No custom row-level security rules

View file

@ -0,0 +1,5 @@
# Troubleshooting
- Ensure Python and Odoo environment matches repo guidance.
- Check database connectivity and logs if startup fails.
- Validate that dependent addons listed in DEPENDENCIES.md are installed.

View file

@ -0,0 +1,7 @@
# Usage
Start Odoo including this addon (from repo root):
```bash
python3 scripts/nix_odoo_web_server.py --db-name mydb --addon stock_analytic
```

View file

@ -0,0 +1,3 @@
# Wizards
This module does not include UI wizards.

View file

@ -0,0 +1,43 @@
[project]
name = "odoo-bringout-oca-account-analytic-stock_analytic"
version = "16.0.0"
description = "Stock Analytic - Adds analytic distribution in stock move"
authors = [
{ name = "Ernad Husremovic", email = "hernad@bring.out.ba" }
]
dependencies = [
"odoo-bringout-oca-account-analytic-stock_account>=16.0.0",
"odoo-bringout-oca-ocb-analytic>=16.0.0",
"requests>=2.25.1"
]
readme = "README.md"
requires-python = ">= 3.11"
classifiers = [
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Topic :: Office/Business",
]
[project.urls]
homepage = "https://github.com/bringout/0"
repository = "https://github.com/bringout/0"
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.hatch.metadata]
allow-direct-references = true
[tool.hatch.build.targets.wheel]
packages = ["stock_analytic"]
[tool.rye]
managed = true
dev-dependencies = [
"pytest>=8.4.1",
]

View file

@ -0,0 +1,136 @@
==============
Stock Analytic
==============
..
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:b2310970dee4b632b51fa1f2c701bf604040f9ecd87ba5adea140cbfa0474a15
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
.. |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%2Faccount--analytic-lightgray.png?logo=github
:target: https://github.com/OCA/account-analytic/tree/16.0/stock_analytic
:alt: OCA/account-analytic
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/account-analytic-16-0/account-analytic-16-0-stock_analytic
: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/account-analytic&target_branch=16.0
:alt: Try me on Runboat
|badge1| |badge2| |badge3| |badge4| |badge5|
Adds Analytic Distribution field in stock move to be able to get
analytic information when generating the journal items.
**Table of contents**
.. contents::
:local:
Configuration
=============
As necessary, go to *Invoicing > Configuration > Analytic Plans*, open the relevant
record and update the applicability for 'Stock Move'.
Usage
=====
To Assign an Analytic Account to a Stock Move
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
You need to:
#. Create manually or open draft picking
#. Add move lines and assign an **analytic account** in Analytic Distribution field
Assigned Journal Items created from Stock Move with Analytic Account
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
If stock move automatically create journal entry, the journal entry will
contain journal items with following rule:
#. Journal item with account equal to product's valuation account will not be
assigned to any analytic account.
#. Journal item with account different to product's valuation account will be
assigned to an analytic account according to the stock move's analytic
account.
Analytic applicability judgment
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Applicability of the analytic distribution is judged based on the applicability
settings of the analytic plan.
Note that this module adds the 'Stock Move' option to the business domain, and
'Operation Type' field.
Return moves are currently outside the scope of the validation / applicability judgment
(i.e. treated the same as optional) to allow some flexibility in the operation since
multiple factors (e.g. applicability of the original move) may need to be considered
to correctly judge the applicability.
Bug Tracker
===========
Bugs are tracked on `GitHub Issues <https://github.com/OCA/account-analytic/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/account-analytic/issues/new?body=module:%20stock_analytic%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
~~~~~~~
* Julius Network Solutions
* ClearCorp
* OpenSynergy Indonesia
* Hibou Corp.
Contributors
~~~~~~~~~~~~
* Hanane ELKHAL <hanane@julius.fr>
* Yvan Patry <yvan@julius.fr>
* Pierre <pierre@julius.fr>
* Mathieu VATEL <mathieu@julius.fr>
* Fabio Vílchez <fabio.vilchez@clearcorp.co.cr>
* Andhitia Rama <andhitia.r@gmail.com>
* Michael Viriyananda <viriyananda.michael@gmail.com>
* Aaron Henriquez <ahenriquez@forgeflow.com>
* Jared Kipe <jared@hibou.io>
* Alan Ramos <alan.ramos@jarsa.com.mx>
* Mantas Šniukas <mantas@vialaurea.lt>
* `Quartile <https://www.quartile.co>`__:
* Yoshi Tashiro
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.
This module is part of the `OCA/account-analytic <https://github.com/OCA/account-analytic/tree/16.0/stock_analytic>`_ project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

View file

@ -0,0 +1,3 @@
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from . import models

View file

@ -0,0 +1,28 @@
# Copyright 2013 Julius Network Solutions
# Copyright 2015 Clear Corp
# Copyright 2016 OpenSynergy Indonesia
# Copyright 2017 ForgeFlow S.L.
# Copyright 2018 Hibou Corp.
# Copyright 2023 Quartile Limited
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
{
"name": "Stock Analytic",
"summary": "Adds analytic distribution in stock move",
"version": "16.0.1.4.0",
"author": "Julius Network Solutions, "
"ClearCorp, OpenSynergy Indonesia, "
"Hibou Corp., "
"Odoo Community Association (OCA)",
"website": "https://github.com/OCA/account-analytic",
"category": "Warehouse Management",
"license": "AGPL-3",
"depends": ["stock_account", "analytic"],
"data": [
"views/account_analytic_plan_views.xml",
"views/stock_move_views.xml",
"views/stock_scrap_views.xml",
"views/stock_move_line_views.xml",
"views/stock_picking_views.xml",
],
"installable": True,
}

View file

@ -0,0 +1,76 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_analytic
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"Last-Translator: \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: \n"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution
msgid "Analytic"
msgstr "Analitika"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution_search
msgid "Analytic Distribution Search"
msgstr "Pretraga analitičkih distribucija"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_account_analytic_applicability
msgid "Analytic Plan's Applicabilities"
msgstr "Primjenjivost Analitičkog plana"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_precision
msgid "Analytic Precision"
msgstr "Preciznost analitike"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__business_domain
msgid "Domain"
msgstr "Domena"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__stock_picking_type_id
msgid "Operation Type"
msgstr "Tip operacije"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move_line
msgid "Product Moves (Stock Move Line)"
msgstr "Kretanja proizvoda (stavke skladišta)"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_scrap
msgid "Scrap"
msgstr "Otpis"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move
#: model:ir.model.fields.selection,name:stock_analytic.selection__account_analytic_applicability__business_domain__stock_move
msgid "Stock Move"
msgstr "Skladišni prijenos"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_rule
msgid "Stock Rule"
msgstr "Skladišno pravilo"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_picking
msgid "Transfer"
msgstr "Prijenos"

View file

@ -0,0 +1,91 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_analytic
#
# Translators:
# OCA Transbot <transbot@odoo-community.org>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-11-19 22:13+0000\n"
"PO-Revision-Date: 2024-09-11 16:13+0000\n"
"Last-Translator: Jaume Planas <jaumeplan@gmail.com>\n"
"Language-Team: Catalan (https://www.transifex.com/oca/teams/23907/ca/)\n"
"Language: ca\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 5.6.2\n"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution
msgid "Analytic"
msgstr "Analítica"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution_search
msgid "Analytic Distribution Search"
msgstr "Cerca de distribució analítica"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_account_analytic_applicability
msgid "Analytic Plan's Applicabilities"
msgstr "Aplicabilitats del pla analític"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_precision
msgid "Analytic Precision"
msgstr "Precisió analítica"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__business_domain
msgid "Domain"
msgstr "Domini"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__stock_picking_type_id
msgid "Operation Type"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move_line
msgid "Product Moves (Stock Move Line)"
msgstr "Moviments de producte (línia de moviment d'existències)"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_scrap
msgid "Scrap"
msgstr "Ferralla"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move
#: model:ir.model.fields.selection,name:stock_analytic.selection__account_analytic_applicability__business_domain__stock_move
msgid "Stock Move"
msgstr "Moviment d'estoc"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_rule
msgid "Stock Rule"
msgstr "Regla d'estoc"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_picking
msgid "Transfer"
msgstr "Transferència"
#~ msgid "Analytic Account"
#~ msgstr "Compte analític"
#~ msgid "Analytic Tags"
#~ msgstr "Etiquetes analítiques"
#~ msgid "Product"
#~ msgstr "Producte"

View file

@ -0,0 +1,85 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_analytic
#
# Translators:
# Lukáš Spurný <lukasspurny8@gmail.com>, 2018
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-02-21 03:54+0000\n"
"PO-Revision-Date: 2018-02-21 03:54+0000\n"
"Last-Translator: Lukáš Spurný <lukasspurny8@gmail.com>, 2018\n"
"Language-Team: Czech (Czech Republic) (https://www.transifex.com/oca/"
"teams/23907/cs_CZ/)\n"
"Language: cs_CZ\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution
msgid "Analytic"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution_search
msgid "Analytic Distribution Search"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_account_analytic_applicability
msgid "Analytic Plan's Applicabilities"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_precision
msgid "Analytic Precision"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__business_domain
msgid "Domain"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__stock_picking_type_id
msgid "Operation Type"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move_line
msgid "Product Moves (Stock Move Line)"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_scrap
msgid "Scrap"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move
#: model:ir.model.fields.selection,name:stock_analytic.selection__account_analytic_applicability__business_domain__stock_move
msgid "Stock Move"
msgstr "Posunout sklad"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_rule
msgid "Stock Rule"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_picking
msgid "Transfer"
msgstr ""
#~ msgid "Analytic Account"
#~ msgstr "Analytický účet"

View file

@ -0,0 +1,85 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_analytic
#
# Translators:
# OCA Transbot <transbot@odoo-community.org>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-11-19 22:13+0000\n"
"PO-Revision-Date: 2020-01-29 11:13+0000\n"
"Last-Translator: Maria Sparenberg <maria.sparenberg@gmx.net>\n"
"Language-Team: German (https://www.transifex.com/oca/teams/23907/de/)\n"
"Language: de\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 3.10\n"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution
msgid "Analytic"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution_search
msgid "Analytic Distribution Search"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_account_analytic_applicability
msgid "Analytic Plan's Applicabilities"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_precision
msgid "Analytic Precision"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__business_domain
msgid "Domain"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__stock_picking_type_id
msgid "Operation Type"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move_line
msgid "Product Moves (Stock Move Line)"
msgstr "Produkt-Lagerbewegungen"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_scrap
msgid "Scrap"
msgstr "Ausschuss"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move
#: model:ir.model.fields.selection,name:stock_analytic.selection__account_analytic_applicability__business_domain__stock_move
msgid "Stock Move"
msgstr "Lagerbewegung"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_rule
msgid "Stock Rule"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_picking
msgid "Transfer"
msgstr ""
#~ msgid "Analytic Account"
#~ msgstr "Kostenstelle"

View file

@ -0,0 +1,85 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_analytic
#
# Translators:
# OCA Transbot <transbot@odoo-community.org>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-11-19 22:13+0000\n"
"PO-Revision-Date: 2017-11-19 22:13+0000\n"
"Last-Translator: OCA Transbot <transbot@odoo-community.org>, 2017\n"
"Language-Team: Greek (Greece) (https://www.transifex.com/oca/teams/23907/"
"el_GR/)\n"
"Language: el_GR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution
msgid "Analytic"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution_search
msgid "Analytic Distribution Search"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_account_analytic_applicability
msgid "Analytic Plan's Applicabilities"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_precision
msgid "Analytic Precision"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__business_domain
msgid "Domain"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__stock_picking_type_id
msgid "Operation Type"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move_line
msgid "Product Moves (Stock Move Line)"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_scrap
msgid "Scrap"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move
#: model:ir.model.fields.selection,name:stock_analytic.selection__account_analytic_applicability__business_domain__stock_move
msgid "Stock Move"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_rule
msgid "Stock Rule"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_picking
msgid "Transfer"
msgstr ""
#~ msgid "Analytic Account"
#~ msgstr "Αναλυτικός Λογαριασμός"

View file

@ -0,0 +1,86 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_analytic
#
# Translators:
# OCA Transbot <transbot@odoo-community.org>, 2017
# enjolras <yo@miguelrevilla.com>, 2018
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-02-21 03:54+0000\n"
"PO-Revision-Date: 2025-08-07 10:25+0000\n"
"Last-Translator: Miquel Alzanillas <malzanillas@apsl.net>\n"
"Language-Team: Spanish (https://www.transifex.com/oca/teams/23907/es/)\n"
"Language: es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 5.10.4\n"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution
msgid "Analytic"
msgstr "Analítica"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution_search
msgid "Analytic Distribution Search"
msgstr "Búsqueda de Distribución Analítca"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_account_analytic_applicability
msgid "Analytic Plan's Applicabilities"
msgstr "Aplicabilidad del Plan Analítico"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_precision
msgid "Analytic Precision"
msgstr "Precisión Analítica"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__business_domain
msgid "Domain"
msgstr "Dominio"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__stock_picking_type_id
msgid "Operation Type"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move_line
msgid "Product Moves (Stock Move Line)"
msgstr "Movimiento de productos (Movimiento de existencias)"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_scrap
msgid "Scrap"
msgstr "Restos"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move
#: model:ir.model.fields.selection,name:stock_analytic.selection__account_analytic_applicability__business_domain__stock_move
msgid "Stock Move"
msgstr "Movimiento de existencias"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_rule
msgid "Stock Rule"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_picking
msgid "Transfer"
msgstr "Transferir"
#~ msgid "Analytic Account"
#~ msgstr "Cuenta analítica"

View file

@ -0,0 +1,85 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_analytic
#
# Translators:
# Cristian Salamea <ovnicraft@gmail.com>, 2018
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-01-05 23:07+0000\n"
"PO-Revision-Date: 2018-01-05 23:07+0000\n"
"Last-Translator: Cristian Salamea <ovnicraft@gmail.com>, 2018\n"
"Language-Team: Spanish (Ecuador) (https://www.transifex.com/oca/teams/23907/"
"es_EC/)\n"
"Language: es_EC\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution
msgid "Analytic"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution_search
msgid "Analytic Distribution Search"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_account_analytic_applicability
msgid "Analytic Plan's Applicabilities"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_precision
msgid "Analytic Precision"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__business_domain
msgid "Domain"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__stock_picking_type_id
msgid "Operation Type"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move_line
msgid "Product Moves (Stock Move Line)"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_scrap
msgid "Scrap"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move
#: model:ir.model.fields.selection,name:stock_analytic.selection__account_analytic_applicability__business_domain__stock_move
msgid "Stock Move"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_rule
msgid "Stock Rule"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_picking
msgid "Transfer"
msgstr ""
#~ msgid "Analytic Account"
#~ msgstr "Cuenta Analítica"

View file

@ -0,0 +1,85 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_analytic
#
# Translators:
# OCA Transbot <transbot@odoo-community.org>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-11-19 22:13+0000\n"
"PO-Revision-Date: 2017-11-19 22:13+0000\n"
"Last-Translator: OCA Transbot <transbot@odoo-community.org>, 2017\n"
"Language-Team: Spanish (Mexico) (https://www.transifex.com/oca/teams/23907/"
"es_MX/)\n"
"Language: es_MX\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution
msgid "Analytic"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution_search
msgid "Analytic Distribution Search"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_account_analytic_applicability
msgid "Analytic Plan's Applicabilities"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_precision
msgid "Analytic Precision"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__business_domain
msgid "Domain"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__stock_picking_type_id
msgid "Operation Type"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move_line
msgid "Product Moves (Stock Move Line)"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_scrap
msgid "Scrap"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move
#: model:ir.model.fields.selection,name:stock_analytic.selection__account_analytic_applicability__business_domain__stock_move
msgid "Stock Move"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_rule
msgid "Stock Rule"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_picking
msgid "Transfer"
msgstr ""
#~ msgid "Analytic Account"
#~ msgstr "Cuenta analítica"

View file

@ -0,0 +1,84 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_analytic
#
# Translators:
# OCA Transbot <transbot@odoo-community.org>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-11-19 22:13+0000\n"
"PO-Revision-Date: 2017-11-19 22:13+0000\n"
"Last-Translator: OCA Transbot <transbot@odoo-community.org>, 2017\n"
"Language-Team: Finnish (https://www.transifex.com/oca/teams/23907/fi/)\n"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution
msgid "Analytic"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution_search
msgid "Analytic Distribution Search"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_account_analytic_applicability
msgid "Analytic Plan's Applicabilities"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_precision
msgid "Analytic Precision"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__business_domain
msgid "Domain"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__stock_picking_type_id
msgid "Operation Type"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move_line
msgid "Product Moves (Stock Move Line)"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_scrap
msgid "Scrap"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move
#: model:ir.model.fields.selection,name:stock_analytic.selection__account_analytic_applicability__business_domain__stock_move
msgid "Stock Move"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_rule
msgid "Stock Rule"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_picking
msgid "Transfer"
msgstr ""
#~ msgid "Analytic Account"
#~ msgstr "Analyyttinen tili"

View file

@ -0,0 +1,84 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_analytic
#
# Translators:
# OCA Transbot <transbot@odoo-community.org>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-11-19 22:13+0000\n"
"PO-Revision-Date: 2017-11-19 22:13+0000\n"
"Last-Translator: OCA Transbot <transbot@odoo-community.org>, 2017\n"
"Language-Team: French (https://www.transifex.com/oca/teams/23907/fr/)\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution
msgid "Analytic"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution_search
msgid "Analytic Distribution Search"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_account_analytic_applicability
msgid "Analytic Plan's Applicabilities"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_precision
msgid "Analytic Precision"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__business_domain
msgid "Domain"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__stock_picking_type_id
msgid "Operation Type"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move_line
msgid "Product Moves (Stock Move Line)"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_scrap
msgid "Scrap"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move
#: model:ir.model.fields.selection,name:stock_analytic.selection__account_analytic_applicability__business_domain__stock_move
msgid "Stock Move"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_rule
msgid "Stock Rule"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_picking
msgid "Transfer"
msgstr ""
#~ msgid "Analytic Account"
#~ msgstr "Compte analytique"

View file

@ -0,0 +1,84 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_analytic
#
# Translators:
# César Castro Cruz <ulmroan@gmail.com>, 2016
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 8.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-12-16 03:41+0000\n"
"PO-Revision-Date: 2016-12-16 03:41+0000\n"
"Last-Translator: César Castro Cruz <ulmroan@gmail.com>, 2016\n"
"Language-Team: Galician (https://www.transifex.com/oca/teams/23907/gl/)\n"
"Language: gl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution
msgid "Analytic"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution_search
msgid "Analytic Distribution Search"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_account_analytic_applicability
msgid "Analytic Plan's Applicabilities"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_precision
msgid "Analytic Precision"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__business_domain
msgid "Domain"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__stock_picking_type_id
msgid "Operation Type"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move_line
msgid "Product Moves (Stock Move Line)"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_scrap
msgid "Scrap"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move
#: model:ir.model.fields.selection,name:stock_analytic.selection__account_analytic_applicability__business_domain__stock_move
msgid "Stock Move"
msgstr "Movemento de existencias"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_rule
msgid "Stock Rule"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_picking
msgid "Transfer"
msgstr ""
#~ msgid "Analytic Account"
#~ msgstr "Conta analítica"

View file

@ -0,0 +1,85 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_analytic
#
# Translators:
# Parth Goswami <parthgoswami4@gmail.com>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-11-19 22:13+0000\n"
"PO-Revision-Date: 2017-11-19 22:13+0000\n"
"Last-Translator: Parth Goswami <parthgoswami4@gmail.com>, 2017\n"
"Language-Team: Gujarati (India) (https://www.transifex.com/oca/teams/23907/"
"gu_IN/)\n"
"Language: gu_IN\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution
msgid "Analytic"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution_search
msgid "Analytic Distribution Search"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_account_analytic_applicability
msgid "Analytic Plan's Applicabilities"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_precision
msgid "Analytic Precision"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__business_domain
msgid "Domain"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__stock_picking_type_id
msgid "Operation Type"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move_line
msgid "Product Moves (Stock Move Line)"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_scrap
msgid "Scrap"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move
#: model:ir.model.fields.selection,name:stock_analytic.selection__account_analytic_applicability__business_domain__stock_move
msgid "Stock Move"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_rule
msgid "Stock Rule"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_picking
msgid "Transfer"
msgstr ""
#~ msgid "Analytic Account"
#~ msgstr "વિશ્લેષણાત્મક ખાતું"

View file

@ -0,0 +1,85 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_analytic
#
# Translators:
# Parth Goswami <parthgoswami4@gmail.com>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-11-19 22:13+0000\n"
"PO-Revision-Date: 2017-11-19 22:13+0000\n"
"Last-Translator: Parth Goswami <parthgoswami4@gmail.com>, 2017\n"
"Language-Team: Hindi (India) (https://www.transifex.com/oca/teams/23907/"
"hi_IN/)\n"
"Language: hi_IN\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution
msgid "Analytic"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution_search
msgid "Analytic Distribution Search"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_account_analytic_applicability
msgid "Analytic Plan's Applicabilities"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_precision
msgid "Analytic Precision"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__business_domain
msgid "Domain"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__stock_picking_type_id
msgid "Operation Type"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move_line
msgid "Product Moves (Stock Move Line)"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_scrap
msgid "Scrap"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move
#: model:ir.model.fields.selection,name:stock_analytic.selection__account_analytic_applicability__business_domain__stock_move
msgid "Stock Move"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_rule
msgid "Stock Rule"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_picking
msgid "Transfer"
msgstr ""
#~ msgid "Analytic Account"
#~ msgstr "विश्लेषणात्मक खाता"

View file

@ -0,0 +1,86 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_analytic
#
# Translators:
# Bole <bole@dajmi5.com>, 2018
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-02-21 03:54+0000\n"
"PO-Revision-Date: 2024-06-17 17:37+0000\n"
"Last-Translator: Bole <bole@dajmi5.com>\n"
"Language-Team: Croatian (https://www.transifex.com/oca/teams/23907/hr/)\n"
"Language: hr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 4.17\n"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution
msgid "Analytic"
msgstr "Analitika"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution_search
msgid "Analytic Distribution Search"
msgstr "Pretraga analitičkih distribucija"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_account_analytic_applicability
msgid "Analytic Plan's Applicabilities"
msgstr "Primjenjivost Analitičkog plana"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_precision
msgid "Analytic Precision"
msgstr "Preciznost analitike"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__business_domain
msgid "Domain"
msgstr "Domena"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__stock_picking_type_id
msgid "Operation Type"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move_line
msgid "Product Moves (Stock Move Line)"
msgstr "Kretanja proizvoda (stavke skladišta)"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_scrap
msgid "Scrap"
msgstr "Otpis"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move
#: model:ir.model.fields.selection,name:stock_analytic.selection__account_analytic_applicability__business_domain__stock_move
msgid "Stock Move"
msgstr "Skladišni prijenos"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_rule
msgid "Stock Rule"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_picking
msgid "Transfer"
msgstr "Prijenos"
#~ msgid "Analytic Account"
#~ msgstr "Analitički konto"

View file

@ -0,0 +1,86 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_analytic
#
# Translators:
# Bole <bole@dajmi5.com>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-11-19 22:13+0000\n"
"PO-Revision-Date: 2017-11-19 22:13+0000\n"
"Last-Translator: Bole <bole@dajmi5.com>, 2017\n"
"Language-Team: Croatian (Croatia) (https://www.transifex.com/oca/teams/23907/"
"hr_HR/)\n"
"Language: hr_HR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution
msgid "Analytic"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution_search
msgid "Analytic Distribution Search"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_account_analytic_applicability
msgid "Analytic Plan's Applicabilities"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_precision
msgid "Analytic Precision"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__business_domain
msgid "Domain"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__stock_picking_type_id
msgid "Operation Type"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move_line
msgid "Product Moves (Stock Move Line)"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_scrap
msgid "Scrap"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move
#: model:ir.model.fields.selection,name:stock_analytic.selection__account_analytic_applicability__business_domain__stock_move
msgid "Stock Move"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_rule
msgid "Stock Rule"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_picking
msgid "Transfer"
msgstr ""
#~ msgid "Analytic Account"
#~ msgstr "Analitički konto"

View file

@ -0,0 +1,84 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_analytic
#
# Translators:
# OCA Transbot <transbot@odoo-community.org>, 2016
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 8.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-12-16 03:41+0000\n"
"PO-Revision-Date: 2016-12-16 03:41+0000\n"
"Last-Translator: OCA Transbot <transbot@odoo-community.org>, 2016\n"
"Language-Team: Hungarian (https://www.transifex.com/oca/teams/23907/hu/)\n"
"Language: hu\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution
msgid "Analytic"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution_search
msgid "Analytic Distribution Search"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_account_analytic_applicability
msgid "Analytic Plan's Applicabilities"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_precision
msgid "Analytic Precision"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__business_domain
msgid "Domain"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__stock_picking_type_id
msgid "Operation Type"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move_line
msgid "Product Moves (Stock Move Line)"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_scrap
msgid "Scrap"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move
#: model:ir.model.fields.selection,name:stock_analytic.selection__account_analytic_applicability__business_domain__stock_move
msgid "Stock Move"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_rule
msgid "Stock Rule"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_picking
msgid "Transfer"
msgstr ""
#~ msgid "Analytic Account"
#~ msgstr "Analitikus gyűjtőkód könyvelés"

View file

@ -0,0 +1,87 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_analytic
#
# Translators:
# OCA Transbot <transbot@odoo-community.org>, 2016
# Nicola Malcontenti <nicola.malcontenti@gmail.com>, 2016
# Paolo Valier <paolo.valier@hotmail.it>, 2016
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 8.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-12-16 03:41+0000\n"
"PO-Revision-Date: 2025-06-03 07:45+0000\n"
"Last-Translator: mymage <stefano.consolaro@mymage.it>\n"
"Language-Team: Italian (https://www.transifex.com/oca/teams/23907/it/)\n"
"Language: it\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 5.10.4\n"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution
msgid "Analytic"
msgstr "Analitico"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution_search
msgid "Analytic Distribution Search"
msgstr "Ricerca distribuzione analitica"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_account_analytic_applicability
msgid "Analytic Plan's Applicabilities"
msgstr "Applicabilità piano analitico"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_precision
msgid "Analytic Precision"
msgstr "Precisione analitica"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__business_domain
msgid "Domain"
msgstr "Dominio"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__stock_picking_type_id
msgid "Operation Type"
msgstr "Tipo di operazione"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move_line
msgid "Product Moves (Stock Move Line)"
msgstr "Movimenti prodotto (riga movimento di magazzino)"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_scrap
msgid "Scrap"
msgstr "Scarto"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move
#: model:ir.model.fields.selection,name:stock_analytic.selection__account_analytic_applicability__business_domain__stock_move
msgid "Stock Move"
msgstr "Movimento di magazzino"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_rule
msgid "Stock Rule"
msgstr "Regola di giacenza"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_picking
msgid "Transfer"
msgstr "Trasferimento"
#~ msgid "Analytic Account"
#~ msgstr "Conto Analitico"

View file

@ -0,0 +1,85 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_analytic
#
# Translators:
# Cas Vissers <casvissers@brahoo.nl>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-11-19 22:13+0000\n"
"PO-Revision-Date: 2023-10-17 14:38+0000\n"
"Last-Translator: \"Jan Tapper [Onestein]\" <j.tapper@onestein.nl>\n"
"Language-Team: Dutch (https://www.transifex.com/oca/teams/23907/nl/)\n"
"Language: nl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.17\n"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution
msgid "Analytic"
msgstr "Analytisch"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution_search
msgid "Analytic Distribution Search"
msgstr "Analytische distributiezoekopdracht"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_account_analytic_applicability
msgid "Analytic Plan's Applicabilities"
msgstr "Toepasbaarheid van analytische plannen"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_precision
msgid "Analytic Precision"
msgstr "Analytische precisie"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__business_domain
msgid "Domain"
msgstr "Domein"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__stock_picking_type_id
msgid "Operation Type"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move_line
msgid "Product Moves (Stock Move Line)"
msgstr "Productverplaatsingen (voorraadverplaatsingslijn)"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_scrap
msgid "Scrap"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move
#: model:ir.model.fields.selection,name:stock_analytic.selection__account_analytic_applicability__business_domain__stock_move
msgid "Stock Move"
msgstr "Voorraadverplaatsing"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_rule
msgid "Stock Rule"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_picking
msgid "Transfer"
msgstr "Overdracht"
#~ msgid "Analytic Account"
#~ msgstr "Kostenplaats"

View file

@ -0,0 +1,86 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_analytic
#
# Translators:
# Daniel Reis <dreis.pt@gmail.com>, 2016
# OCA Transbot <transbot@odoo-community.org>, 2016
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 8.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-12-16 03:41+0000\n"
"PO-Revision-Date: 2020-02-18 17:13+0000\n"
"Last-Translator: alvarorib <alvaro.ribeiro@exo.pt>\n"
"Language-Team: Portuguese (https://www.transifex.com/oca/teams/23907/pt/)\n"
"Language: pt\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Weblate 3.10\n"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution
msgid "Analytic"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution_search
msgid "Analytic Distribution Search"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_account_analytic_applicability
msgid "Analytic Plan's Applicabilities"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_precision
msgid "Analytic Precision"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__business_domain
msgid "Domain"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__stock_picking_type_id
msgid "Operation Type"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move_line
msgid "Product Moves (Stock Move Line)"
msgstr "Movimento de Artigo (Linha de Movimento de Stock)"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_scrap
msgid "Scrap"
msgstr "Sucata"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move
#: model:ir.model.fields.selection,name:stock_analytic.selection__account_analytic_applicability__business_domain__stock_move
msgid "Stock Move"
msgstr "Movimento Stock"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_rule
msgid "Stock Rule"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_picking
msgid "Transfer"
msgstr ""
#~ msgid "Analytic Account"
#~ msgstr "Conta Analítica"

View file

@ -0,0 +1,93 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_analytic
#
# Translators:
# OCA Transbot <transbot@odoo-community.org>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-11-19 22:13+0000\n"
"PO-Revision-Date: 2024-09-03 15:06+0000\n"
"Last-Translator: Rodrigo Sottomaior Macedo "
"<sottomaiormacedotec@sottomaiormacedo.tech>\n"
"Language-Team: Portuguese (Brazil) (https://www.transifex.com/oca/"
"teams/23907/pt_BR/)\n"
"Language: pt_BR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 5.6.2\n"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution
msgid "Analytic"
msgstr "Analítico"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution_search
msgid "Analytic Distribution Search"
msgstr "Pesquisa de Distribuição Analítica"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_account_analytic_applicability
msgid "Analytic Plan's Applicabilities"
msgstr "Aplicabilidades do Plano Analítico"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_precision
msgid "Analytic Precision"
msgstr "Precisão Analítica"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__business_domain
msgid "Domain"
msgstr "Dominio"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__stock_picking_type_id
msgid "Operation Type"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move_line
msgid "Product Moves (Stock Move Line)"
msgstr "Movimentos de produto (Linha de Movimentação de Estoque)"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_scrap
msgid "Scrap"
msgstr "Sucatear"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move
#: model:ir.model.fields.selection,name:stock_analytic.selection__account_analytic_applicability__business_domain__stock_move
msgid "Stock Move"
msgstr "Movimento de Estoque"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_rule
msgid "Stock Rule"
msgstr "Regra do Estoque"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_picking
msgid "Transfer"
msgstr "Transferir"
#~ msgid "Analytic Account"
#~ msgstr "Conta analítica"
#~ msgid "Analytic Tags"
#~ msgstr "Etiquetas Analíticas"
#~ msgid "Product"
#~ msgstr "Produto"

View file

@ -0,0 +1,85 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_analytic
#
# Translators:
# Daniel Reis <dreis.pt@gmail.com>, 2016
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 8.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-12-16 03:41+0000\n"
"PO-Revision-Date: 2016-12-16 03:41+0000\n"
"Last-Translator: Daniel Reis <dreis.pt@gmail.com>, 2016\n"
"Language-Team: Portuguese (Portugal) (https://www.transifex.com/oca/"
"teams/23907/pt_PT/)\n"
"Language: pt_PT\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution
msgid "Analytic"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution_search
msgid "Analytic Distribution Search"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_account_analytic_applicability
msgid "Analytic Plan's Applicabilities"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_precision
msgid "Analytic Precision"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__business_domain
msgid "Domain"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__stock_picking_type_id
msgid "Operation Type"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move_line
msgid "Product Moves (Stock Move Line)"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_scrap
msgid "Scrap"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move
#: model:ir.model.fields.selection,name:stock_analytic.selection__account_analytic_applicability__business_domain__stock_move
msgid "Stock Move"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_rule
msgid "Stock Rule"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_picking
msgid "Transfer"
msgstr ""
#~ msgid "Analytic Account"
#~ msgstr "Conta Analítica"

View file

@ -0,0 +1,86 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_analytic
#
# Translators:
# Dorin Hongu <dhongu@gmail.com>, 2016
# OCA Transbot <transbot@odoo-community.org>, 2016
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 8.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-12-16 03:41+0000\n"
"PO-Revision-Date: 2016-12-16 03:41+0000\n"
"Last-Translator: OCA Transbot <transbot@odoo-community.org>, 2016\n"
"Language-Team: Romanian (https://www.transifex.com/oca/teams/23907/ro/)\n"
"Language: ro\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?"
"2:1));\n"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution
msgid "Analytic"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution_search
msgid "Analytic Distribution Search"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_account_analytic_applicability
msgid "Analytic Plan's Applicabilities"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_precision
msgid "Analytic Precision"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__business_domain
msgid "Domain"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__stock_picking_type_id
msgid "Operation Type"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move_line
msgid "Product Moves (Stock Move Line)"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_scrap
msgid "Scrap"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move
#: model:ir.model.fields.selection,name:stock_analytic.selection__account_analytic_applicability__business_domain__stock_move
msgid "Stock Move"
msgstr "Mișcare stoc"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_rule
msgid "Stock Rule"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_picking
msgid "Transfer"
msgstr ""
#~ msgid "Analytic Account"
#~ msgstr "Cont analitic"

View file

@ -0,0 +1,85 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_analytic
#
# Translators:
# OCA Transbot <transbot@odoo-community.org>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-11-19 22:13+0000\n"
"PO-Revision-Date: 2017-11-19 22:13+0000\n"
"Last-Translator: OCA Transbot <transbot@odoo-community.org>, 2017\n"
"Language-Team: Slovak (Slovakia) (https://www.transifex.com/oca/teams/23907/"
"sk_SK/)\n"
"Language: sk_SK\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution
msgid "Analytic"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution_search
msgid "Analytic Distribution Search"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_account_analytic_applicability
msgid "Analytic Plan's Applicabilities"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_precision
msgid "Analytic Precision"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__business_domain
msgid "Domain"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__stock_picking_type_id
msgid "Operation Type"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move_line
msgid "Product Moves (Stock Move Line)"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_scrap
msgid "Scrap"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move
#: model:ir.model.fields.selection,name:stock_analytic.selection__account_analytic_applicability__business_domain__stock_move
msgid "Stock Move"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_rule
msgid "Stock Rule"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_picking
msgid "Transfer"
msgstr ""
#~ msgid "Analytic Account"
#~ msgstr "Analytický účet"

View file

@ -0,0 +1,85 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_analytic
#
# Translators:
# OCA Transbot <transbot@odoo-community.org>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-11-19 22:13+0000\n"
"PO-Revision-Date: 2017-11-19 22:13+0000\n"
"Last-Translator: OCA Transbot <transbot@odoo-community.org>, 2017\n"
"Language-Team: Slovenian (https://www.transifex.com/oca/teams/23907/sl/)\n"
"Language: sl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || "
"n%100==4 ? 2 : 3);\n"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution
msgid "Analytic"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution_search
msgid "Analytic Distribution Search"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_account_analytic_applicability
msgid "Analytic Plan's Applicabilities"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_precision
msgid "Analytic Precision"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__business_domain
msgid "Domain"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__stock_picking_type_id
msgid "Operation Type"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move_line
msgid "Product Moves (Stock Move Line)"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_scrap
msgid "Scrap"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move
#: model:ir.model.fields.selection,name:stock_analytic.selection__account_analytic_applicability__business_domain__stock_move
msgid "Stock Move"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_rule
msgid "Stock Rule"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_picking
msgid "Transfer"
msgstr ""
#~ msgid "Analytic Account"
#~ msgstr "Analitični konto"

View file

@ -0,0 +1,76 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_analytic
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"Last-Translator: \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: \n"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution
msgid "Analytic"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution_search
msgid "Analytic Distribution Search"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_account_analytic_applicability
msgid "Analytic Plan's Applicabilities"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_precision
msgid "Analytic Precision"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__business_domain
msgid "Domain"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__stock_picking_type_id
msgid "Operation Type"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move_line
msgid "Product Moves (Stock Move Line)"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_scrap
msgid "Scrap"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move
#: model:ir.model.fields.selection,name:stock_analytic.selection__account_analytic_applicability__business_domain__stock_move
msgid "Stock Move"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_rule
msgid "Stock Rule"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_picking
msgid "Transfer"
msgstr ""

View file

@ -0,0 +1,81 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_analytic
#
# Translators:
# Ivan BARAYEV <ivanbarayev@hotmail.com>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 8.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-01-06 23:06+0000\n"
"PO-Revision-Date: 2017-01-06 23:06+0000\n"
"Last-Translator: Ivan BARAYEV <ivanbarayev@hotmail.com>, 2017\n"
"Language-Team: Turkish (https://www.transifex.com/oca/teams/23907/tr/)\n"
"Language: tr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution
msgid "Analytic"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution_search
msgid "Analytic Distribution Search"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_account_analytic_applicability
msgid "Analytic Plan's Applicabilities"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_precision
msgid "Analytic Precision"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__business_domain
msgid "Domain"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__stock_picking_type_id
msgid "Operation Type"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move_line
msgid "Product Moves (Stock Move Line)"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_scrap
msgid "Scrap"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move
#: model:ir.model.fields.selection,name:stock_analytic.selection__account_analytic_applicability__business_domain__stock_move
msgid "Stock Move"
msgstr "Stok Taşı"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_rule
msgid "Stock Rule"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_picking
msgid "Transfer"
msgstr ""

View file

@ -0,0 +1,82 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_analytic
#
# Translators:
# Ozge Altinisik <ozge@altinkaya.com.tr>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 8.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-12-30 23:06+0000\n"
"PO-Revision-Date: 2016-12-30 23:06+0000\n"
"Last-Translator: Ozge Altinisik <ozge@altinkaya.com.tr>, 2017\n"
"Language-Team: Turkish (Turkey) (https://www.transifex.com/oca/teams/23907/"
"tr_TR/)\n"
"Language: tr_TR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=1; plural=0;\n"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution
msgid "Analytic"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution_search
msgid "Analytic Distribution Search"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_account_analytic_applicability
msgid "Analytic Plan's Applicabilities"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_precision
msgid "Analytic Precision"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__business_domain
msgid "Domain"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__stock_picking_type_id
msgid "Operation Type"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move_line
msgid "Product Moves (Stock Move Line)"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_scrap
msgid "Scrap"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move
#: model:ir.model.fields.selection,name:stock_analytic.selection__account_analytic_applicability__business_domain__stock_move
msgid "Stock Move"
msgstr "Stok hareketi"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_rule
msgid "Stock Rule"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_picking
msgid "Transfer"
msgstr ""

View file

@ -0,0 +1,82 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_analytic
#
# Translators:
# OCA Transbot <transbot@odoo-community.org>, 2016
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 8.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-12-16 03:41+0000\n"
"PO-Revision-Date: 2016-12-16 03:41+0000\n"
"Last-Translator: OCA Transbot <transbot@odoo-community.org>, 2016\n"
"Language-Team: Vietnamese (Viet Nam) (https://www.transifex.com/oca/"
"teams/23907/vi_VN/)\n"
"Language: vi_VN\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=1; plural=0;\n"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution
msgid "Analytic"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution_search
msgid "Analytic Distribution Search"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_account_analytic_applicability
msgid "Analytic Plan's Applicabilities"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_precision
msgid "Analytic Precision"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__business_domain
msgid "Domain"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__stock_picking_type_id
msgid "Operation Type"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move_line
msgid "Product Moves (Stock Move Line)"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_scrap
msgid "Scrap"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move
#: model:ir.model.fields.selection,name:stock_analytic.selection__account_analytic_applicability__business_domain__stock_move
msgid "Stock Move"
msgstr "Dịch chuyển kho"
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_rule
msgid "Stock Rule"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_picking
msgid "Transfer"
msgstr ""

View file

@ -0,0 +1,85 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_analytic
#
# Translators:
# OCA Transbot <transbot@odoo-community.org>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-11-19 22:13+0000\n"
"PO-Revision-Date: 2017-11-19 22:13+0000\n"
"Last-Translator: OCA Transbot <transbot@odoo-community.org>, 2017\n"
"Language-Team: Chinese (China) (https://www.transifex.com/oca/teams/23907/"
"zh_CN/)\n"
"Language: zh_CN\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=1; plural=0;\n"
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution
msgid "Analytic"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_distribution_search
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_distribution_search
msgid "Analytic Distribution Search"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_account_analytic_applicability
msgid "Analytic Plan's Applicabilities"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_move_line__analytic_precision
#: model:ir.model.fields,field_description:stock_analytic.field_stock_scrap__analytic_precision
msgid "Analytic Precision"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__business_domain
msgid "Domain"
msgstr ""
#. module: stock_analytic
#: model:ir.model.fields,field_description:stock_analytic.field_account_analytic_applicability__stock_picking_type_id
msgid "Operation Type"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move_line
msgid "Product Moves (Stock Move Line)"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_scrap
msgid "Scrap"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_move
#: model:ir.model.fields.selection,name:stock_analytic.selection__account_analytic_applicability__business_domain__stock_move
msgid "Stock Move"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_rule
msgid "Stock Rule"
msgstr ""
#. module: stock_analytic
#: model:ir.model,name:stock_analytic.model_stock_picking
msgid "Transfer"
msgstr ""
#~ msgid "Analytic Account"
#~ msgstr "核算科目"

View file

@ -0,0 +1,7 @@
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from . import analytic_applicability
from . import stock_move
from . import stock_picking
from . import stock_rule
from . import stock_scrap

View file

@ -0,0 +1,26 @@
# Copyright 2023 Quartile Limited
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
from odoo import fields, models
class AccountAnalyticApplicability(models.Model):
_inherit = "account.analytic.applicability"
business_domain = fields.Selection(
selection_add=[("stock_move", "Stock Move")],
ondelete={"stock_move": "cascade"},
)
stock_picking_type_id = fields.Many2one(
"stock.picking.type",
string="Operation Type",
)
def _get_score(self, **kwargs):
score = super()._get_score(**kwargs)
if score >= 0 and self.stock_picking_type_id:
if kwargs.get("picking_type") == self.stock_picking_type_id.id:
score += 1
else:
return -1
return score

View file

@ -0,0 +1,120 @@
# Copyright 2013 Julius Network Solutions
# Copyright 2015 Clear Corp
# Copyright 2016 OpenSynergy Indonesia
# Copyright 2017 ForgeFlow S.L.
# Copyright 2018 Hibou Corp.
# Copyright 2023 Quartile Limited
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from odoo import api, fields, models
class StockMove(models.Model):
_name = "stock.move"
_inherit = ["stock.move", "analytic.mixin"]
analytic_distribution = fields.Json(
inverse="_inverse_analytic_distribution",
)
def _inverse_analytic_distribution(self):
"""If analytic distribution is set on move, write it on all move lines"""
for move in self:
move.move_line_ids.write(
{"analytic_distribution": move.analytic_distribution}
)
def _prepare_account_move_line(
self, qty, cost, credit_account_id, debit_account_id, svl_id, description
):
self.ensure_one()
res = super(StockMove, self)._prepare_account_move_line(
qty, cost, credit_account_id, debit_account_id, svl_id, description
)
if not self.analytic_distribution:
return res
accounts = self.product_id.product_tmpl_id.get_product_accounts()
account_valuation_id = (
accounts.get("stock_valuation") and accounts["stock_valuation"].id
)
for line in res:
if line[2]["account_id"] != account_valuation_id:
# Add analytic account in debit line
line[2].update({"analytic_distribution": self.analytic_distribution})
return res
def _prepare_procurement_values(self):
"""
Allows to transmit analytic account from moves to new
moves through procurement.
"""
res = super()._prepare_procurement_values()
if self.analytic_distribution:
res.update(
{
"analytic_distribution": self.analytic_distribution,
}
)
return res
def _prepare_move_line_vals(self, quantity=None, reserved_quant=None):
"""
We fill in the analytic account when creating the move line from
the move
"""
res = super()._prepare_move_line_vals(
quantity=quantity, reserved_quant=reserved_quant
)
if self.analytic_distribution:
res.update({"analytic_distribution": self.analytic_distribution})
return res
def _need_validate_distribution(self):
"""Return moves are made outside the scope of the validation for now, since
there could be cases where the necessity cannot be judged solely by the
operation type.
"""
self.ensure_one()
if self._is_in() and self._is_returned(valued_type="in"):
return False
elif self._is_out() and self._is_returned(valued_type="out"):
return False
elif self.company_id.anglo_saxon_accounting and self._is_dropshipped_returned():
return False
return True
def _action_done(self, cancel_backorder=False):
for move in self:
move.move_line_ids.analytic_distribution = move.analytic_distribution
if not move._need_validate_distribution():
continue
move._validate_distribution(
**{
"product": move.product_id.id,
"picking_type": move.picking_type_id.id,
"business_domain": "stock_move",
"company_id": move.company_id.id,
}
)
return super()._action_done(cancel_backorder=cancel_backorder)
class StockMoveLine(models.Model):
_name = "stock.move.line"
_inherit = ["stock.move.line", "analytic.mixin"]
@api.model
def _prepare_stock_move_vals(self):
"""
In the case move lines are created manually, we should fill in the
new move created here with the analytic account if filled in.
"""
res = super()._prepare_stock_move_vals()
if self.analytic_distribution:
res.update({"analytic_distribution": self.analytic_distribution})
return res
def write(self, vals):
if "analytic_distribution" in vals:
self.move_id.analytic_distribution = vals["analytic_distribution"]
return super().write(vals)

View file

@ -0,0 +1,12 @@
# Copyright 2023 Quartile Limited
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
from odoo import models
class StockPicking(models.Model):
_inherit = "stock.picking"
def button_validate(self):
self = self.with_context(validate_analytic=True)
return super().button_validate()

View file

@ -0,0 +1,11 @@
# Copyright 2024 Atte Isopuro <atte.isopuro@avoin.systems>
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
from odoo import models
class StockRule(models.Model):
_inherit = "stock.rule"
def _get_custom_move_fields(self):
return super()._get_custom_move_fields() + ["analytic_distribution"]

View file

@ -0,0 +1,21 @@
# Copyright (C) 2019 Open Source Integrators
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from odoo import models
class StockScrap(models.Model):
_name = "stock.scrap"
_inherit = ["stock.scrap", "analytic.mixin"]
def _prepare_move_values(self):
res = super()._prepare_move_values()
res.update(
{
"analytic_distribution": self.analytic_distribution,
}
)
return res
def action_validate(self):
self = self.with_context(validate_analytic=True)
return super().action_validate()

View file

@ -0,0 +1,2 @@
As necessary, go to *Invoicing > Configuration > Analytic Plans*, open the relevant
record and update the applicability for 'Stock Move'.

View file

@ -0,0 +1,14 @@
* Hanane ELKHAL <hanane@julius.fr>
* Yvan Patry <yvan@julius.fr>
* Pierre <pierre@julius.fr>
* Mathieu VATEL <mathieu@julius.fr>
* Fabio Vílchez <fabio.vilchez@clearcorp.co.cr>
* Andhitia Rama <andhitia.r@gmail.com>
* Michael Viriyananda <viriyananda.michael@gmail.com>
* Aaron Henriquez <ahenriquez@forgeflow.com>
* Jared Kipe <jared@hibou.io>
* Alan Ramos <alan.ramos@jarsa.com.mx>
* Mantas Šniukas <mantas@vialaurea.lt>
* `Quartile <https://www.quartile.co>`__:
* Yoshi Tashiro

View file

@ -0,0 +1,2 @@
Adds Analytic Distribution field in stock move to be able to get
analytic information when generating the journal items.

View file

@ -0,0 +1,33 @@
To Assign an Analytic Account to a Stock Move
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
You need to:
#. Create manually or open draft picking
#. Add move lines and assign an **analytic account** in Analytic Distribution field
Assigned Journal Items created from Stock Move with Analytic Account
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
If stock move automatically create journal entry, the journal entry will
contain journal items with following rule:
#. Journal item with account equal to product's valuation account will not be
assigned to any analytic account.
#. Journal item with account different to product's valuation account will be
assigned to an analytic account according to the stock move's analytic
account.
Analytic applicability judgment
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Applicability of the analytic distribution is judged based on the applicability
settings of the analytic plan.
Note that this module adds the 'Stock Move' option to the business domain, and
'Operation Type' field.
Return moves are currently outside the scope of the validation / applicability judgment
(i.e. treated the same as optional) to allow some flexibility in the operation since
multiple factors (e.g. applicability of the original move) may need to be considered
to correctly judge the applicability.

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.2 KiB

View file

@ -0,0 +1,487 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="generator" content="Docutils: https://docutils.sourceforge.io/" />
<title>Stock Analytic</title>
<style type="text/css">
/*
:Author: David Goodger (goodger@python.org)
:Id: $Id: html4css1.css 9511 2024-01-13 09:50:07Z milde $
:Copyright: This stylesheet has been placed in the public domain.
Default cascading style sheet for the HTML output of Docutils.
Despite the name, some widely supported CSS2 features are used.
See https://docutils.sourceforge.io/docs/howto/html-stylesheets.html for how to
customize this style sheet.
*/
/* used to remove borders from tables and images */
.borderless, table.borderless td, table.borderless th {
border: 0 }
table.borderless td, table.borderless th {
/* Override padding for "table.docutils td" with "! important".
The right padding separates the table cells. */
padding: 0 0.5em 0 0 ! important }
.first {
/* Override more specific margin styles with "! important". */
margin-top: 0 ! important }
.last, .with-subtitle {
margin-bottom: 0 ! important }
.hidden {
display: none }
.subscript {
vertical-align: sub;
font-size: smaller }
.superscript {
vertical-align: super;
font-size: smaller }
a.toc-backref {
text-decoration: none ;
color: black }
blockquote.epigraph {
margin: 2em 5em ; }
dl.docutils dd {
margin-bottom: 0.5em }
object[type="image/svg+xml"], object[type="application/x-shockwave-flash"] {
overflow: hidden;
}
/* Uncomment (and remove this text!) to get bold-faced definition list terms
dl.docutils dt {
font-weight: bold }
*/
div.abstract {
margin: 2em 5em }
div.abstract p.topic-title {
font-weight: bold ;
text-align: center }
div.admonition, div.attention, div.caution, div.danger, div.error,
div.hint, div.important, div.note, div.tip, div.warning {
margin: 2em ;
border: medium outset ;
padding: 1em }
div.admonition p.admonition-title, div.hint p.admonition-title,
div.important p.admonition-title, div.note p.admonition-title,
div.tip p.admonition-title {
font-weight: bold ;
font-family: sans-serif }
div.attention p.admonition-title, div.caution p.admonition-title,
div.danger p.admonition-title, div.error p.admonition-title,
div.warning p.admonition-title, .code .error {
color: red ;
font-weight: bold ;
font-family: sans-serif }
/* Uncomment (and remove this text!) to get reduced vertical space in
compound paragraphs.
div.compound .compound-first, div.compound .compound-middle {
margin-bottom: 0.5em }
div.compound .compound-last, div.compound .compound-middle {
margin-top: 0.5em }
*/
div.dedication {
margin: 2em 5em ;
text-align: center ;
font-style: italic }
div.dedication p.topic-title {
font-weight: bold ;
font-style: normal }
div.figure {
margin-left: 2em ;
margin-right: 2em }
div.footer, div.header {
clear: both;
font-size: smaller }
div.line-block {
display: block ;
margin-top: 1em ;
margin-bottom: 1em }
div.line-block div.line-block {
margin-top: 0 ;
margin-bottom: 0 ;
margin-left: 1.5em }
div.sidebar {
margin: 0 0 0.5em 1em ;
border: medium outset ;
padding: 1em ;
background-color: #ffffee ;
width: 40% ;
float: right ;
clear: right }
div.sidebar p.rubric {
font-family: sans-serif ;
font-size: medium }
div.system-messages {
margin: 5em }
div.system-messages h1 {
color: red }
div.system-message {
border: medium outset ;
padding: 1em }
div.system-message p.system-message-title {
color: red ;
font-weight: bold }
div.topic {
margin: 2em }
h1.section-subtitle, h2.section-subtitle, h3.section-subtitle,
h4.section-subtitle, h5.section-subtitle, h6.section-subtitle {
margin-top: 0.4em }
h1.title {
text-align: center }
h2.subtitle {
text-align: center }
hr.docutils {
width: 75% }
img.align-left, .figure.align-left, object.align-left, table.align-left {
clear: left ;
float: left ;
margin-right: 1em }
img.align-right, .figure.align-right, object.align-right, table.align-right {
clear: right ;
float: right ;
margin-left: 1em }
img.align-center, .figure.align-center, object.align-center {
display: block;
margin-left: auto;
margin-right: auto;
}
table.align-center {
margin-left: auto;
margin-right: auto;
}
.align-left {
text-align: left }
.align-center {
clear: both ;
text-align: center }
.align-right {
text-align: right }
/* reset inner alignment in figures */
div.align-right {
text-align: inherit }
/* div.align-center * { */
/* text-align: left } */
.align-top {
vertical-align: top }
.align-middle {
vertical-align: middle }
.align-bottom {
vertical-align: bottom }
ol.simple, ul.simple {
margin-bottom: 1em }
ol.arabic {
list-style: decimal }
ol.loweralpha {
list-style: lower-alpha }
ol.upperalpha {
list-style: upper-alpha }
ol.lowerroman {
list-style: lower-roman }
ol.upperroman {
list-style: upper-roman }
p.attribution {
text-align: right ;
margin-left: 50% }
p.caption {
font-style: italic }
p.credits {
font-style: italic ;
font-size: smaller }
p.label {
white-space: nowrap }
p.rubric {
font-weight: bold ;
font-size: larger ;
color: maroon ;
text-align: center }
p.sidebar-title {
font-family: sans-serif ;
font-weight: bold ;
font-size: larger }
p.sidebar-subtitle {
font-family: sans-serif ;
font-weight: bold }
p.topic-title {
font-weight: bold }
pre.address {
margin-bottom: 0 ;
margin-top: 0 ;
font: inherit }
pre.literal-block, pre.doctest-block, pre.math, pre.code {
margin-left: 2em ;
margin-right: 2em }
pre.code .ln { color: gray; } /* line numbers */
pre.code, code { background-color: #eeeeee }
pre.code .comment, code .comment { color: #5C6576 }
pre.code .keyword, code .keyword { color: #3B0D06; font-weight: bold }
pre.code .literal.string, code .literal.string { color: #0C5404 }
pre.code .name.builtin, code .name.builtin { color: #352B84 }
pre.code .deleted, code .deleted { background-color: #DEB0A1}
pre.code .inserted, code .inserted { background-color: #A3D289}
span.classifier {
font-family: sans-serif ;
font-style: oblique }
span.classifier-delimiter {
font-family: sans-serif ;
font-weight: bold }
span.interpreted {
font-family: sans-serif }
span.option {
white-space: nowrap }
span.pre {
white-space: pre }
span.problematic, pre.problematic {
color: red }
span.section-subtitle {
/* font-size relative to parent (h1..h6 element) */
font-size: 80% }
table.citation {
border-left: solid 1px gray;
margin-left: 1px }
table.docinfo {
margin: 2em 4em }
table.docutils {
margin-top: 0.5em ;
margin-bottom: 0.5em }
table.footnote {
border-left: solid 1px black;
margin-left: 1px }
table.docutils td, table.docutils th,
table.docinfo td, table.docinfo th {
padding-left: 0.5em ;
padding-right: 0.5em ;
vertical-align: top }
table.docutils th.field-name, table.docinfo th.docinfo-name {
font-weight: bold ;
text-align: left ;
white-space: nowrap ;
padding-left: 0 }
/* "booktabs" style (no vertical lines) */
table.docutils.booktabs {
border: 0px;
border-top: 2px solid;
border-bottom: 2px solid;
border-collapse: collapse;
}
table.docutils.booktabs * {
border: 0px;
}
table.docutils.booktabs th {
border-bottom: thin solid;
text-align: left;
}
h1 tt.docutils, h2 tt.docutils, h3 tt.docutils,
h4 tt.docutils, h5 tt.docutils, h6 tt.docutils {
font-size: 100% }
ul.auto-toc {
list-style-type: none }
</style>
</head>
<body>
<div class="document" id="stock-analytic">
<h1 class="title">Stock Analytic</h1>
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:b2310970dee4b632b51fa1f2c701bf604040f9ecd87ba5adea140cbfa0474a15
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<p><a class="reference external image-reference" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external image-reference" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/OCA/account-analytic/tree/16.0/stock_analytic"><img alt="OCA/account-analytic" src="https://img.shields.io/badge/github-OCA%2Faccount--analytic-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/account-analytic-16-0/account-analytic-16-0-stock_analytic"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external image-reference" href="https://runboat.odoo-community.org/builds?repo=OCA/account-analytic&amp;target_branch=16.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p>
<p>Adds Analytic Distribution field in stock move to be able to get
analytic information when generating the journal items.</p>
<p><strong>Table of contents</strong></p>
<div class="contents local topic" id="contents">
<ul class="simple">
<li><a class="reference internal" href="#configuration" id="toc-entry-1">Configuration</a></li>
<li><a class="reference internal" href="#usage" id="toc-entry-2">Usage</a><ul>
<li><a class="reference internal" href="#to-assign-an-analytic-account-to-a-stock-move" id="toc-entry-3">To Assign an Analytic Account to a Stock Move</a></li>
<li><a class="reference internal" href="#assigned-journal-items-created-from-stock-move-with-analytic-account" id="toc-entry-4">Assigned Journal Items created from Stock Move with Analytic Account</a></li>
<li><a class="reference internal" href="#analytic-applicability-judgment" id="toc-entry-5">Analytic applicability judgment</a></li>
</ul>
</li>
<li><a class="reference internal" href="#bug-tracker" id="toc-entry-6">Bug Tracker</a></li>
<li><a class="reference internal" href="#credits" id="toc-entry-7">Credits</a><ul>
<li><a class="reference internal" href="#authors" id="toc-entry-8">Authors</a></li>
<li><a class="reference internal" href="#contributors" id="toc-entry-9">Contributors</a></li>
<li><a class="reference internal" href="#maintainers" id="toc-entry-10">Maintainers</a></li>
</ul>
</li>
</ul>
</div>
<div class="section" id="configuration">
<h1><a class="toc-backref" href="#toc-entry-1">Configuration</a></h1>
<p>As necessary, go to <em>Invoicing &gt; Configuration &gt; Analytic Plans</em>, open the relevant
record and update the applicability for Stock Move.</p>
</div>
<div class="section" id="usage">
<h1><a class="toc-backref" href="#toc-entry-2">Usage</a></h1>
<div class="section" id="to-assign-an-analytic-account-to-a-stock-move">
<h2><a class="toc-backref" href="#toc-entry-3">To Assign an Analytic Account to a Stock Move</a></h2>
<p>You need to:</p>
<ol class="arabic simple">
<li>Create manually or open draft picking</li>
<li>Add move lines and assign an <strong>analytic account</strong> in Analytic Distribution field</li>
</ol>
</div>
<div class="section" id="assigned-journal-items-created-from-stock-move-with-analytic-account">
<h2><a class="toc-backref" href="#toc-entry-4">Assigned Journal Items created from Stock Move with Analytic Account</a></h2>
<p>If stock move automatically create journal entry, the journal entry will
contain journal items with following rule:</p>
<ol class="arabic simple">
<li>Journal item with account equal to products valuation account will not be
assigned to any analytic account.</li>
<li>Journal item with account different to products valuation account will be
assigned to an analytic account according to the stock moves analytic
account.</li>
</ol>
</div>
<div class="section" id="analytic-applicability-judgment">
<h2><a class="toc-backref" href="#toc-entry-5">Analytic applicability judgment</a></h2>
<p>Applicability of the analytic distribution is judged based on the applicability
settings of the analytic plan.</p>
<p>Note that this module adds the Stock Move option to the business domain, and
Operation Type field.</p>
<p>Return moves are currently outside the scope of the validation / applicability judgment
(i.e. treated the same as optional) to allow some flexibility in the operation since
multiple factors (e.g. applicability of the original move) may need to be considered
to correctly judge the applicability.</p>
</div>
</div>
<div class="section" id="bug-tracker">
<h1><a class="toc-backref" href="#toc-entry-6">Bug Tracker</a></h1>
<p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/account-analytic/issues">GitHub Issues</a>.
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
<a class="reference external" href="https://github.com/OCA/account-analytic/issues/new?body=module:%20stock_analytic%0Aversion:%2016.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
<p>Do not contact contributors directly about support or help with technical issues.</p>
</div>
<div class="section" id="credits">
<h1><a class="toc-backref" href="#toc-entry-7">Credits</a></h1>
<div class="section" id="authors">
<h2><a class="toc-backref" href="#toc-entry-8">Authors</a></h2>
<ul class="simple">
<li>Julius Network Solutions</li>
<li>ClearCorp</li>
<li>OpenSynergy Indonesia</li>
<li>Hibou Corp.</li>
</ul>
</div>
<div class="section" id="contributors">
<h2><a class="toc-backref" href="#toc-entry-9">Contributors</a></h2>
<ul class="simple">
<li>Hanane ELKHAL &lt;<a class="reference external" href="mailto:hanane&#64;julius.fr">hanane&#64;julius.fr</a>&gt;</li>
<li>Yvan Patry &lt;<a class="reference external" href="mailto:yvan&#64;julius.fr">yvan&#64;julius.fr</a>&gt;</li>
<li>Pierre &lt;<a class="reference external" href="mailto:pierre&#64;julius.fr">pierre&#64;julius.fr</a>&gt;</li>
<li>Mathieu VATEL &lt;<a class="reference external" href="mailto:mathieu&#64;julius.fr">mathieu&#64;julius.fr</a>&gt;</li>
<li>Fabio Vílchez &lt;<a class="reference external" href="mailto:fabio.vilchez&#64;clearcorp.co.cr">fabio.vilchez&#64;clearcorp.co.cr</a>&gt;</li>
<li>Andhitia Rama &lt;<a class="reference external" href="mailto:andhitia.r&#64;gmail.com">andhitia.r&#64;gmail.com</a>&gt;</li>
<li>Michael Viriyananda &lt;<a class="reference external" href="mailto:viriyananda.michael&#64;gmail.com">viriyananda.michael&#64;gmail.com</a>&gt;</li>
<li>Aaron Henriquez &lt;<a class="reference external" href="mailto:ahenriquez&#64;forgeflow.com">ahenriquez&#64;forgeflow.com</a>&gt;</li>
<li>Jared Kipe &lt;<a class="reference external" href="mailto:jared&#64;hibou.io">jared&#64;hibou.io</a>&gt;</li>
<li>Alan Ramos &lt;<a class="reference external" href="mailto:alan.ramos&#64;jarsa.com.mx">alan.ramos&#64;jarsa.com.mx</a>&gt;</li>
<li>Mantas Šniukas &lt;<a class="reference external" href="mailto:mantas&#64;vialaurea.lt">mantas&#64;vialaurea.lt</a>&gt;</li>
<li><a class="reference external" href="https://www.quartile.co">Quartile</a>:<ul>
<li>Yoshi Tashiro</li>
</ul>
</li>
</ul>
</div>
<div class="section" id="maintainers">
<h2><a class="toc-backref" href="#toc-entry-10">Maintainers</a></h2>
<p>This module is maintained by the OCA.</p>
<a class="reference external image-reference" href="https://odoo-community.org">
<img alt="Odoo Community Association" src="https://odoo-community.org/logo.png" />
</a>
<p>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.</p>
<p>This module is part of the <a class="reference external" href="https://github.com/OCA/account-analytic/tree/16.0/stock_analytic">OCA/account-analytic</a> project on GitHub.</p>
<p>You are welcome to contribute. To learn how please visit <a class="reference external" href="https://odoo-community.org/page/Contribute">https://odoo-community.org/page/Contribute</a>.</p>
</div>
</div>
</div>
</body>
</html>

View file

@ -0,0 +1,3 @@
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from . import test_stock_picking
from . import test_stock_scrap

View file

@ -0,0 +1,320 @@
# Copyright 2013 Julius Network Solutions
# Copyright 2015 Clear Corp
# Copyright 2016 OpenSynergy Indonesia
# Copyright 2017 ForgeFlow S.L.
# Copyright 2018 Hibou Corp.
# Copyright 2023 Quartile Limited
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from datetime import datetime
from odoo.exceptions import ValidationError
from odoo.tests.common import TransactionCase
class TestStockPicking(TransactionCase):
@classmethod
def setUpClass(cls):
super().setUpClass()
# Get the MTO route and activate it if necessary
cls.mto_route = cls.env.ref("stock.route_warehouse0_mto")
cls.mto_route.write({"active": True})
cls.product = cls.env["product.product"].create(
{
"name": "Test Product",
"type": "product",
"standard_price": 1.0,
}
)
cls.product_2 = cls.env.ref("product.product_product_5")
cls.product_categ = cls.env.ref("product.product_category_5")
cls.valuation_account = cls.env["account.account"].create(
{
"name": "Test stock valuation",
"code": "tv",
"account_type": "liability_current",
"reconcile": True,
"company_id": cls.env.ref("base.main_company").id,
}
)
cls.stock_input_account = cls.env["account.account"].create(
{
"name": "Test stock input",
"code": "tsti",
"account_type": "expense",
"reconcile": True,
"company_id": cls.env.ref("base.main_company").id,
}
)
cls.stock_output_account = cls.env["account.account"].create(
{
"name": "Test stock output",
"code": "tout",
"account_type": "income",
"reconcile": True,
"company_id": cls.env.ref("base.main_company").id,
}
)
cls.stock_journal = cls.env["account.journal"].create(
{"name": "Stock Journal", "code": "STJTEST", "type": "general"}
)
cls.analytic_distribution = dict(
{str(cls.env.ref("analytic.analytic_agrolait").id): 100.0}
)
cls.warehouse = cls.env.ref("stock.warehouse0")
cls.location = cls.warehouse.lot_stock_id
cls.dest_location = cls.env.ref("stock.stock_location_customers")
cls.outgoing_picking_type = cls.env.ref("stock.picking_type_out")
cls.incoming_picking_type = cls.env.ref("stock.picking_type_in")
cls.product_categ.update(
{
"property_valuation": "real_time",
"property_stock_valuation_account_id": cls.valuation_account.id,
"property_stock_account_input_categ_id": cls.stock_input_account.id,
"property_stock_account_output_categ_id": cls.stock_output_account.id,
"property_stock_journal": cls.stock_journal.id,
}
)
cls.product.update({"categ_id": cls.product_categ.id})
def _create_analytic_applicability(self):
# analytic.analytic_agrolait belongs to analytic.analytic_plan_projects
return self.env["account.analytic.applicability"].create(
{
"business_domain": "stock_move",
"applicability": "optional",
"analytic_plan_id": self.env.ref("analytic.analytic_plan_projects").id,
}
)
def _create_picking(
self,
location_id,
location_dest_id,
picking_type_id,
analytic_distribution=False,
):
picking_data = {
"picking_type_id": picking_type_id.id,
"move_type": "direct",
"location_id": location_id.id,
"location_dest_id": location_dest_id.id,
}
picking = self.env["stock.picking"].create(picking_data)
move_data = {
"picking_id": picking.id,
"product_id": self.product.id,
"location_id": location_id.id,
"location_dest_id": location_dest_id.id,
"date": datetime.now().strftime("%Y-%m-%d %H:%M:%S"),
"date_deadline": datetime.now().strftime("%Y-%m-%d %H:%M:%S"),
"name": self.product.name,
"procure_method": "make_to_stock",
"product_uom": self.product.uom_id.id,
"product_uom_qty": 1.0,
"analytic_distribution": analytic_distribution or False,
}
self.env["stock.move"].create(move_data)
return picking
def __update_qty_on_hand_product(self, product, new_qty):
self.env["stock.quant"]._update_available_quantity(
product, self.location, new_qty
)
def _confirm_picking_no_error(self, picking):
picking.action_confirm()
self.assertEqual(picking.state, "assigned")
def _picking_done_no_error(self, picking):
picking.move_ids.quantity_done = 1.0
picking.button_validate()
self.assertEqual(picking.state, "done")
def _check_account_move_no_error(self, picking):
criteria1 = [
["ref", "=", "{} - {}".format(picking.name, picking.product_id.name)]
]
acc_moves = self.env["account.move"].search(criteria1)
self.assertTrue(len(acc_moves) > 0)
def _check_analytic_account_no_error(self, picking):
move = picking.move_ids[0]
criteria2 = [["move_id.ref", "=", picking.name]]
acc_lines = self.env["account.move.line"].search(criteria2)
for acc_line in acc_lines:
if acc_line.account_id == self.valuation_account:
self.assertEqual(acc_line.analytic_distribution, False)
else:
self.assertEqual(
acc_line.analytic_distribution, move.analytic_distribution
)
def _check_no_analytic_account(self, picking):
criteria2 = [
("move_id.ref", "=", picking.name),
("analytic_distribution", "!=", False),
]
line_count = self.env["account.move.line"].search_count(criteria2)
self.assertEqual(line_count, 0)
def _check_analytic_consistency(self, picking):
for move_line in picking.move_line_ids:
self.assertEqual(
move_line.analytic_distribution, move_line.move_id.analytic_distribution
)
def test_outgoing_picking_with_analytic(self):
picking = self._create_picking(
self.location,
self.dest_location,
self.outgoing_picking_type,
self.analytic_distribution,
)
self.__update_qty_on_hand_product(self.product, 1)
self._confirm_picking_no_error(picking)
self._picking_done_no_error(picking)
self._check_account_move_no_error(picking)
self._check_analytic_account_no_error(picking)
self._check_analytic_consistency(picking)
def test_outgoing_picking_without_analytic_optional(self):
# Create a general optional applicability for stock moves.
self._create_analytic_applicability()
# Create a another applicability which makes the analytic mandatory only for
# incoming stock moves. i.e. applicability should be optional for the outgoing
applicability_specific = self._create_analytic_applicability()
applicability_specific.write(
{
"stock_picking_type_id": self.incoming_picking_type.id,
"applicability": "mandatory",
}
)
picking = self._create_picking(
self.location,
self.dest_location,
self.outgoing_picking_type,
)
self.__update_qty_on_hand_product(self.product, 1)
self._confirm_picking_no_error(picking)
self._picking_done_no_error(picking)
self._check_account_move_no_error(picking)
self._check_no_analytic_account(picking)
self._check_analytic_consistency(picking)
def test_outgoing_picking_without_analytic_mandatory(self):
# Create a general mandatory applicability for stock moves.
applicability_general = self._create_analytic_applicability()
applicability_general.write({"applicability": "mandatory"})
# Create a another applicability which makes the analytic optional only for
# incoming stock moves.
applicability_specific = self._create_analytic_applicability()
applicability_specific.write(
{"stock_picking_type_id": self.incoming_picking_type.id}
)
picking = self._create_picking(
self.location,
self.dest_location,
self.outgoing_picking_type,
)
self.__update_qty_on_hand_product(self.product, 1)
self._confirm_picking_no_error(picking)
with self.assertRaises(ValidationError):
self._picking_done_no_error(picking)
def test_incoming_picking_with_analytic(self):
picking = self._create_picking(
self.location,
self.dest_location,
self.incoming_picking_type,
self.analytic_distribution,
)
self.__update_qty_on_hand_product(self.product, 1)
self._confirm_picking_no_error(picking)
self._picking_done_no_error(picking)
self._check_account_move_no_error(picking)
self._check_analytic_account_no_error(picking)
self._check_analytic_consistency(picking)
def test_picking_add_extra_move_line(self):
picking = self._create_picking(
self.location,
self.dest_location,
self.outgoing_picking_type,
self.analytic_distribution,
)
move_before = picking.move_ids
self.env["stock.move.line"].create(
{
"product_id": self.product_2.id,
"location_id": self.location.id,
"location_dest_id": self.dest_location.id,
"date": datetime.now().strftime("%Y-%m-%d %H:%M:%S"),
"product_uom_id": self.product_2.uom_id.id,
"reserved_uom_qty": 1.0,
"analytic_distribution": self.analytic_distribution,
"company_id": self.env.company.id,
"picking_id": picking.id,
}
)
move_after = picking.move_ids - move_before
self.assertEqual(self.analytic_distribution, move_after.analytic_distribution)
def test__prepare_procurement_values(self):
picking = self._create_picking(
self.location,
self.dest_location,
self.outgoing_picking_type,
self.analytic_distribution,
)
values = picking.move_ids._prepare_procurement_values()
self.assertEqual(self.analytic_distribution, values["analytic_distribution"])
picking = self._create_picking(
self.location,
self.dest_location,
self.outgoing_picking_type,
)
values = picking.move_ids._prepare_procurement_values()
self.assertEqual(values.get("analytic_distribution"), None)
def test_procurement_analytic(self):
rule = self.env["stock.rule"].create(
{
"name": "Test MTO Rule",
"action": "pull",
"location_src_id": self.location.id,
"location_dest_id": self.dest_location.id,
"procure_method": "make_to_order",
"route_id": self.mto_route.id,
"picking_type_id": self.outgoing_picking_type.id,
}
)
# Manually creating a stock move as would result from the rule being triggered
move_values = rule._get_stock_move_values(
self.product,
10,
self.product.uom_id,
self.dest_location,
"Test Move",
False,
self.env.company,
{
"analytic_distribution": self.analytic_distribution,
"date_planned": datetime.now(),
},
)
move = self.env["stock.move"].create(move_values)
# Check that the analytic_distribution data was passed correctly
self.assertEqual(
move.analytic_distribution,
self.analytic_distribution,
"Analytic distribution not correctly propagated.",
)

View file

@ -0,0 +1,81 @@
# Copyright (C) 2019 Open Source Integrators
# Copyright 2023 Quartile Limited
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from odoo.exceptions import ValidationError
from odoo.tests.common import TransactionCase
class TestStockScrap(TransactionCase):
def setUp(self):
super(TestStockScrap, self).setUp()
self.product = self.env.ref("product.product_product_4")
self.warehouse = self.env.ref("stock.warehouse0")
self.location = self.warehouse.lot_stock_id
self.analytic_distribution = dict(
{str(self.env.ref("analytic.analytic_agrolait").id): 100.0}
)
# analytic.analytic_agrolait belongs to analytic.analytic_plan_projects
self.analytic_applicability = self.env["account.analytic.applicability"].create(
{
"business_domain": "stock_move",
"applicability": "optional",
"analytic_plan_id": self.env.ref("analytic.analytic_plan_projects").id,
}
)
def __update_qty_on_hand_product(self, product, new_qty):
qty_wizard = self.env["stock.change.product.qty"].create(
{
"product_id": product.id,
"product_tmpl_id": product.product_tmpl_id.id,
"new_quantity": new_qty,
}
)
qty_wizard.change_product_qty()
def _create_scrap(self, analytic_distribution=False):
scrap_data = {
"product_id": self.product.id,
"scrap_qty": 1.00,
"product_uom_id": self.product.uom_id.id,
"location_id": self.location.id,
"analytic_distribution": analytic_distribution or False,
}
return self.env["stock.scrap"].create(scrap_data)
def _validate_scrap_no_error(self, scrap):
scrap.action_validate()
self.assertEqual(scrap.state, "done")
def _check_analytic_distribution_no_error(self, scrap):
domain = [("name", "=", scrap.name)]
acc_lines = self.env["account.move.line"].search(domain)
for acc_line in acc_lines:
if (
acc_line.account_id
!= scrap.product_id.categ_id.property_stock_valuation_account_id
):
self.assertEqual(
acc_line.analytic_distribution, scrap.analytic_distribution
)
def test_scrap_without_analytic_optional(self):
self.__update_qty_on_hand_product(self.product, 1)
scrap = self._create_scrap()
self._validate_scrap_no_error(scrap)
def test_scrap_without_analytic_mandatory(self):
self.analytic_applicability.write({"applicability": "mandatory"})
self.__update_qty_on_hand_product(self.product, 1)
scrap = self._create_scrap()
with self.assertRaises(ValidationError):
self._validate_scrap_no_error(scrap)
def test_scrap_with_analytic(self):
self.__update_qty_on_hand_product(self.product, 1)
scrap = self._create_scrap(
self.analytic_distribution,
)
self._validate_scrap_no_error(scrap)
self._check_analytic_distribution_no_error(scrap)

View file

@ -0,0 +1,19 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<record id="account_analytic_plan_form_view" model="ir.ui.view">
<field name="name">account.analytic.plan.form</field>
<field name="model">account.analytic.plan</field>
<field name="inherit_id" ref="analytic.account_analytic_plan_form_view" />
<field name="arch" type="xml">
<xpath
expr="//field[@name='applicability_ids']//field[@name='business_domain']"
position="after"
>
<field
name="stock_picking_type_id"
attrs="{'readonly': [('business_domain', '!=', 'stock_move')]}"
/>
</xpath>
</field>
</record>
</odoo>

View file

@ -0,0 +1,54 @@
<?xml version="1.0" encoding="utf-8" ?>
<!-- Copyright 2021 ACSONE SA/NV
License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). -->
<odoo>
<record id="view_move_line_tree" model="ir.ui.view">
<field name="name">stock.move.line.tree (in stock_analytic)</field>
<field name="model">stock.move.line</field>
<field name="inherit_id" ref="stock.view_move_line_tree" />
<field name="arch" type="xml">
<field name="product_id" position="after">
<field
name="analytic_distribution"
widget="analytic_distribution"
optional="hide"
groups="analytic.group_analytic_accounting"
options="{'product_field': 'product_id', 'business_domain': 'stock_move'}"
/>
</field>
</field>
</record>
<!-- This view is disable because search on "analytic_distribution" is not available yet, so we do queries by hand when we need to search on keys. -->
<!-- <record id="stock_move_line_view_search" model="ir.ui.view">
<field name="name">stock.move.line.search (in stock_analytic)</field>
<field name="model">stock.move.line</field>
<field name="inherit_id" ref="stock.stock_move_line_view_search" />
<field name="arch" type="xml">
<field name="product_id" position="after">
<field name="analytic_distribution" />
</field>
</field>
</record> -->
<!-- In picking lines -->
<record id="view_move_line_detailed_tree" model="ir.ui.view">
<field name="name">stock.move.line.detailed.tree (in stock_analytic)</field>
<field name="model">stock.move.line</field>
<field
name="inherit_id"
ref="stock.view_stock_move_line_detailed_operation_tree"
/>
<field name="arch" type="xml">
<field name="product_id" position="after">
<field
name="analytic_distribution"
widget="analytic_distribution"
optional="hide"
groups="analytic.group_analytic_accounting"
options="{'product_field': 'product_id', 'business_domain': 'stock_move'}"
/>
</field>
</field>
</record>
</odoo>

View file

@ -0,0 +1,66 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<record id="view_picking_move_tree" model="ir.ui.view">
<field name="name">stock.move.picking.tree</field>
<field name="model">stock.move</field>
<field name="inherit_id" ref="stock.view_picking_move_tree" />
<field name="arch" type="xml">
<xpath expr="//field[@name='product_uom']" position="after">
<field
name="analytic_distribution"
widget="analytic_distribution"
groups="analytic.group_analytic_accounting"
options="{'product_field': 'product_id', 'business_domain': 'stock_move'}"
/>
</xpath>
</field>
</record>
<record id="view_move_tree" model="ir.ui.view">
<field name="name">stock.move.tree</field>
<field name="model">stock.move</field>
<field name="inherit_id" ref="stock.view_move_tree" />
<field name="arch" type="xml">
<xpath expr="//field[@name='location_dest_id']" position="after">
<field
name="analytic_distribution"
widget="analytic_distribution"
optional="hide"
groups="analytic.group_analytic_accounting"
options="{'product_field': 'product_id', 'business_domain': 'stock_move'}"
/>
</xpath>
</field>
</record>
<record id="view_move_form" model="ir.ui.view">
<field name="name">stock.move.form</field>
<field name="model">stock.move</field>
<field name="inherit_id" ref="stock.view_move_form" />
<field name="arch" type="xml">
<xpath expr="//field[@name='location_dest_id']" position="after">
<field
name="analytic_distribution"
widget="analytic_distribution"
groups="analytic.group_analytic_accounting"
options="{'product_field': 'product_id', 'business_domain': 'stock_move'}"
/>
</xpath>
</field>
</record>
<record
id="view_move_tree_receipt_picking_inherit_analytic_account"
model="ir.ui.view"
>
<field name="name">stock.move.tree2 - Analytic Account</field>
<field name="model">stock.move</field>
<field name="inherit_id" ref="stock.view_move_tree_receipt_picking" />
<field name="arch" type="xml">
<xpath expr="//field[@name='location_dest_id']" position="after">
<field
name="analytic_distribution"
widget="analytic_distribution"
groups="analytic.group_analytic_accounting"
/>
</xpath>
</field>
</record>
</odoo>

View file

@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<record id="view_picking_form" model="ir.ui.view">
<field name="name">stock.picking.form</field>
<field name="model">stock.picking</field>
<field name="inherit_id" ref="stock.view_picking_form" />
<field name="arch" type="xml">
<xpath
expr="//field[@name='move_ids_without_package']/tree/field[@name='product_id']"
position="after"
>
<field
name="analytic_distribution"
widget="analytic_distribution"
optional="hide"
groups="analytic.group_analytic_accounting"
options="{'product_field': 'product_id', 'business_domain': 'stock_move'}"
/>
</xpath>
</field>
</record>
</odoo>

View file

@ -0,0 +1,32 @@
<odoo>
<record id="view_scrap_analytic_form" model="ir.ui.view">
<field name="name">stock.scrap.analytic.form</field>
<field name="model">stock.scrap</field>
<field name="inherit_id" ref="stock.stock_scrap_form_view" />
<field name="arch" type="xml">
<xpath expr="//group/group[1]" position="inside">
<field
name="analytic_distribution"
widget="analytic_distribution"
groups="analytic.group_analytic_accounting"
options="{'product_field': 'product_id', 'business_domain': 'stock_move'}"
/>
</xpath>
</field>
</record>
<record id="stock_scrap_form_view2" model="ir.ui.view">
<field name="name">stock.scrap.form2</field>
<field name="model">stock.scrap</field>
<field name="inherit_id" ref="stock.stock_scrap_form_view2" />
<field name="arch" type="xml">
<xpath expr="//group/group[1]" position="inside">
<field
name="analytic_distribution"
widget="analytic_distribution"
groups="analytic.group_analytic_accounting"
options="{'product_field': 'product_id', 'business_domain': 'stock_move'}"
/>
</xpath>
</field>
</record>
</odoo>