← Back to team overview

credativ team mailing list archive

[Merge] lp:~credativ/credativ-openerp/sale_order_partner_filter into lp:credativ-openerp

 

mistotebe has proposed merging lp:~credativ/credativ-openerp/sale_order_partner_filter into lp:credativ-openerp.

Requested reviews:
  credativ (credativ)

For more details, see:
https://code.launchpad.net/~credativ/credativ-openerp/sale_order_partner_filter/+merge/220262

Implements partner filtering for the invoice and delivery addresses.
-- 
The attached diff has been truncated due to its size.
https://code.launchpad.net/~credativ/credativ-openerp/sale_order_partner_filter/+merge/220262
Your team credativ is requested to review the proposed merge of lp:~credativ/credativ-openerp/sale_order_partner_filter into lp:credativ-openerp.
=== added directory 'account_voucher_remittance_report'
=== renamed directory 'account_voucher_remittance_report' => 'account_voucher_remittance_report.moved'
=== added file 'account_voucher_remittance_report/__init__.py'
--- account_voucher_remittance_report/__init__.py	1970-01-01 00:00:00 +0000
+++ account_voucher_remittance_report/__init__.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,27 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution
+#    Copyright (C) 2014 credativ Ltd (<http://credativ.co.uk>).
+#    All Rights Reserved
+#    $Id$
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+import account_voucher_remittance_report
+
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

=== added file 'account_voucher_remittance_report/__openerp__.py'
--- account_voucher_remittance_report/__openerp__.py	1970-01-01 00:00:00 +0000
+++ account_voucher_remittance_report/__openerp__.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,41 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution
+#    Copyright (C) 2014 credativ Ltd (<http://credativ.co.uk>).
+#    All Rights Reserved
+#    $Id$
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+{
+    "name" : "Remittance Advice Report",
+    'version': '1.0',
+    "category": 'Accounting & Finance',
+    'description': """
+    Adds "remittance advice report" on supplier payment page and "receipt advice report" on customer payment page.
+    """,
+    'author': 'credativ',
+    'website' : 'http://credativ.co.uk',
+    'depends': ['account_voucher',
+                    ],
+    'update_xml': ['account_voucher_remittance_report.xml',
+                    ],
+    'demo_xml': [],
+    'installable': True,
+    'active': False,
+}
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

=== added file 'account_voucher_remittance_report/account_voucher_remittance_report.py'
--- account_voucher_remittance_report/account_voucher_remittance_report.py	1970-01-01 00:00:00 +0000
+++ account_voucher_remittance_report/account_voucher_remittance_report.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,61 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution
+#    Copyright (C) 2014 credativ Ltd (<http://credativ.co.uk>).
+#    All Rights Reserved
+#    $Id$
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+import report
+
+class account_voucher_remittance_report(report.report_sxw.rml_parse):
+    _name = 'report.remittance.advice'
+
+    def __init__(self, cr, uid, name, context=None):
+        super(account_voucher_remittance_report, self).__init__(cr, uid, name, context=context)
+        self.context = context
+        self.localcontext.update({
+            '_get_non_zero_lines': self._get_non_zero_lines,
+        })
+        
+    def _get_non_zero_lines(self, all_line_ids):
+        filtered_line_ids = [x for x in all_line_ids if x.amount]
+        self._get_sum_amount(filtered_line_ids)
+        return filtered_line_ids
+        
+    def _get_sum_amount(self, filtered_line_ids):
+        sum_amount = 0
+        for line in filtered_line_ids:
+            if line.type == 'cr':
+                if line.account_id and line.account_id.type == 'payable':
+                    sum_amount -= line.amount
+                else:
+                    sum_amount += line.amount
+            else:
+                if line.account_id and line.account_id.type == 'payable':
+                    sum_amount += line.amount
+                else:
+                    sum_amount -= line.amount
+        sum_amount_string = '%.2f' % (sum_amount)
+        self.localcontext.update({
+            '_get_sum_amount': sum_amount_string,
+        })
+        return sum_amount
+        
+report.report_sxw.report_sxw('report.remittance.advice', 'account.voucher', 'account_voucher_remittance_report/account_voucher_remittance_report.rml', parser=account_voucher_remittance_report, header=True)
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

=== added file 'account_voucher_remittance_report/account_voucher_remittance_report.rml'
--- account_voucher_remittance_report/account_voucher_remittance_report.rml	1970-01-01 00:00:00 +0000
+++ account_voucher_remittance_report/account_voucher_remittance_report.rml	2014-05-20 13:49:41 +0000
@@ -0,0 +1,83 @@
+<?xml version="1.0"?>
+<document filename="remittance.pdf">
+  <template title="Remittance Advice" author="OpenERP" allowSplitting="20">
+    <pageTemplate id="first">
+      <frame id="first" x1="34.0" y1="28.0" width="530" height="786"/>
+    </pageTemplate>
+  </template>
+  <stylesheet>
+    <blockTableStyle id="Standard_Outline">
+      <blockAlignment value="LEFT"/>
+      <blockValign value="TOP"/>
+    </blockTableStyle>
+    <blockTableStyle id="Table">
+      <blockAlignment value="LEFT"/>
+      <blockValign value="TOP"/>
+      <lineStyle kind="LINEBELOW" colorName="black"/>
+      <lineStyle kind="LINEABOVE" colorName="black"/>
+    </blockTableStyle>
+    <blockTableStyle id="Tableau2">
+      <blockAlignment value="LEFT"/>
+      <blockValign value="TOP"/>
+    </blockTableStyle>
+    <initialize>
+      <paraStyle name="all" alignment="justify"/>
+    </initialize>
+    <paraStyle name="SMALL" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
+    <paraStyle name="NORMAL" fontName="Helvetica" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
+    <images/>
+  </stylesheet>
+  <story>
+    <para style="SMALL">[[repeatIn(objects,'payment')]]</para>
+    <condPageBreak height="21cm"/>
+    <para style="SMALL">[[ setLang(payment.lang) ]]</para>
+    <spacer length="30"/>
+    <blockTable colWidths="286.0,224.0" style="Tableau2">
+      <tr>
+        <td>
+          <para style="NORMAL">[[ payment.partner_id.title.name or '' ]] [[ payment.partner_id.name ]]</para>
+          <para style="NORMAL">[[ payment.partner_id.street ]]</para>
+          <para style="NORMAL">[[ payment.partner_id.street2 or removeParentNode('para') ]]</para>
+          <para style="NORMAL">[[ payment.partner_id.city ]] [[ payment.partner_id.zip ]]</para>
+          <para style="NORMAL">[[ payment.partner_id.state_id.name or removeParentNode('para')]]</para>
+          <para style="NORMAL">[[ payment.partner_id.country_id.name ]]</para>
+          <para style="NORMAL"><font color="white"> </font></para>
+          <para style="NORMAL"><font color="white"> </font></para>
+        </td>
+        <td>
+          <para style="NORMAL"><b>Reference: </b>[[ payment.reference or 'N/A']]</para>
+          <para style="NORMAL"><b>Partner Ref: </b>[[ payment.name or 'N/A']]</para>
+          <para style="NORMAL"><b>Date: </b>[[ payment.date ]]</para>
+          <para style="NORMAL"><b>Currency: </b>[[ payment.company_id.currency_id.name ]]</para>
+          <para style="NORMAL">
+            <font color="white"> </font>
+          </para>
+        </td>
+      </tr>
+    </blockTable>
+    <blockTable style="Table" colWidths="4cm, 4cm, 5cm, 5cm">
+      <tr>
+        <td><para style="NORMAL">Invoice</para></td>
+        <td><para style="NORMAL">Date</para></td>
+        <td><para style="NORMAL">Invoice Amount</para></td>
+        <td><para style="NORMAL">Amount Paid</para></td>
+      </tr>
+        <tr>
+          <para style="NORMAL">[[repeatIn(_get_non_zero_lines(payment.line_ids),'line')]]</para>
+          <td><para style="NORMAL">[[ line.move_line_id.invoice.number ]]</para></td>
+          <td><para style="NORMAL">[[ line.date_original ]]</para></td>
+          <td><para style="NORMAL">[[ (line.account_id and line.account_id.type == 'receivable' and line.type == 'cr' and line.amount_original) or (line.account_id and line.account_id.type == 'payable' and line.type == 'dr' and line.amount_original) or -line.amount_original ]]</para></td>
+          <td>
+            <para style="NORMAL">[[ line.amount_original != line.amount and removeParentNode('para') ]] [[ (line.account_id and line.account_id.type == 'receivable' and line.type == 'cr' and line.amount) or (line.account_id and line.account_id.type == 'payable' and line.type == 'dr' and line.amount) or -line.amount ]]</para>
+            <para style="NORMAL">[[ line.amount_original == line.amount and removeParentNode('para') ]] <i>[[ (line.account_id and line.account_id.type == 'receivable' and line.type == 'cr' and line.amount) or (line.account_id and line.account_id.type == 'payable' and line.type == 'dr' and line.amount) or -line.amount ]]</i></para>
+          </td>
+        </tr>
+      <tr>
+        <td><para style="NORMAL">Total Payment</para></td>
+        <td><para style="NORMAL"></para></td>
+        <td><para style="NORMAL"></para></td>
+        <td><para style="NORMAL">[[ _get_sum_amount ]]</para></td>
+      </tr>
+    </blockTable>
+  </story>
+</document>

=== added file 'account_voucher_remittance_report/account_voucher_remittance_report.xml'
--- account_voucher_remittance_report/account_voucher_remittance_report.xml	1970-01-01 00:00:00 +0000
+++ account_voucher_remittance_report/account_voucher_remittance_report.xml	2014-05-20 13:49:41 +0000
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="utf-8"?>
+<openerp>
+    <data>
+        <report header='True' auto="False" id="report_remittance_advice" model="account.voucher" name="remittance.advice"
+                rml="account_voucher_remittance_report/account_voucher_remittance_report.rml" string="Remittance/Receipt Advice (PDF)"
+                usage="default"
+                />
+    </data>
+</openerp>

=== added directory 'invoice_tax_currency'
=== added file 'invoice_tax_currency/__init__.py'
--- invoice_tax_currency/__init__.py	1970-01-01 00:00:00 +0000
+++ invoice_tax_currency/__init__.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,21 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution   
+#    Copyright (C) 2014 credativ Ltd (<http://credativ.co.uk>).
+#    All Rights Reserved
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU Affero General Public License as
+#    published by the Free Software Foundation, either version 3 of the
+#    License, or (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU Affero General Public License for more details.
+#
+##############################################################################
+import invoice
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

=== added file 'invoice_tax_currency/__openerp__.py'
--- invoice_tax_currency/__openerp__.py	1970-01-01 00:00:00 +0000
+++ invoice_tax_currency/__openerp__.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,59 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution   
+#    Copyright (C) 2014 credativ Ltd (<http://credativ.co.uk>).
+#    All Rights Reserved
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU Affero General Public License as
+#    published by the Free Software Foundation, either version 3 of the
+#    License, or (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU Affero General Public License for more details.
+#
+##############################################################################
+
+{
+    "name": "Invoice Tax with Invoice Currency",
+    "version": "1.0",
+    'category' : 'Accounting & Finance',
+    'description' :""" 
+Tax in Invoice currency
+=================================================
+This module create tax entries in invoice currency instead of company currency.
+
+Setup
+-----
+* Install module
+* Go to Accounting/Configuration/Taxes/Taxes
+* Check enable_invoice_entry field to enable taxation entries in invoice currency
+
+Usage Scenario
+--------------
+This module can be use for companies using multi company accounting along with multi currency setup.
+
+E.g 
+A company based in Spain selling to UK customer. A shop is setup in London selling products in GBP paying 20% VAT to UK GOV.
+Setup
+
+* Create new Tax codes 1. UK sales 2. UK VAT 20%
+* Create new tax in sysem, viz 20% UK TAX
+* Check enable_invoice_entry field on tax form view
+* Create new invoice with GBP currency and UK VAT TAX
+* Verify taxes appears in GBP amount on tax report
+
+Note: A different UK chart of accounts can be created to manage UK Tax more efficiently.
+""",
+    'website': 'http://www.credativ.co.uk',
+    "depends": ["account"],
+    "author": "Credativ",
+    'data': ['account_view.xml'],
+    'installable': True,
+    'auto_install': False,
+}
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

=== added file 'invoice_tax_currency/account_view.xml'
--- invoice_tax_currency/account_view.xml	1970-01-01 00:00:00 +0000
+++ invoice_tax_currency/account_view.xml	2014-05-20 13:49:41 +0000
@@ -0,0 +1,18 @@
+<?xml version="1.0"?>
+<openerp>
+    <data>
+        <record model="ir.ui.view" id="view_account_tax_invoice_tax_inherit">
+            <field name="name">account.tax.invoice.tax</field>
+            <field name="model">account.tax</field>
+            <field name="inherit_id" ref="account.view_tax_form" />
+            <field name="type">form</field>
+            <field name="arch" type="xml">
+                <data>
+                    <xpath expr="//field[@name='price_include']" position="after">
+                            <field name="enable_invoice_entry"/>
+                    </xpath>
+                </data>
+            </field>
+        </record>
+    </data>
+</openerp>

=== added file 'invoice_tax_currency/invoice.py'
--- invoice_tax_currency/invoice.py	1970-01-01 00:00:00 +0000
+++ invoice_tax_currency/invoice.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,84 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution   
+#    Copyright (C) 2014 credativ Ltd (<http://credativ.co.uk>).
+#    All Rights Reserved
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU Affero General Public License as
+#    published by the Free Software Foundation, either version 3 of the
+#    License, or (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU Affero General Public License for more details.
+#
+##############################################################################
+
+from osv import osv, fields
+
+class account_invoice_line(osv.osv):
+    _inherit = 'account.invoice.line'
+
+    def move_line_get(self, cr, uid, invoice_id, context=None):
+
+        context = context or {}
+        res = super(account_invoice_line,self).move_line_get(cr, uid, invoice_id, context=context)
+        cur_obj = self.pool.get('res.currency')
+        inv = self.pool.get('account.invoice').browse(cr, uid, invoice_id, context=context)
+        company_currency = inv.company_id.currency_id
+        #Change tax amount to invoice currency
+        for vals in res:
+            vals['tax_amount'] = cur_obj.compute(cr, uid, company_currency.id,inv.currency_id.id, vals['tax_amount'], context={'date': inv.date_invoice})
+        return res
+
+account_invoice_line()
+
+class account_invoice_tax(osv.osv):
+    _inherit = 'account.invoice.tax'
+
+    def amount_change(self, cr, uid, ids, amount, currency_id=False, company_id=False, date_invoice=False):
+        '''Update Tax amount '''
+
+        cur_obj = self.pool.get('res.currency')
+        res = super(account_invoice_tax,self).amount_changeamount_change(cr, uid, ids, amount, currency_id, company_id, date_invoice)
+        factor = 1
+        if ids:
+            factor = self.read(cr, uid, ids[0], ['factor_tax'])['factor_tax']
+        if currency_id:
+            amount = cur_obj.round(cr, uid, currency_id, amount*factor)
+            res['value']['tax_amount'] = amount
+        return res
+
+    def compute(self, cr, uid, invoice_id, context=None):
+        '''Compute tax base and tax amount '''
+
+        tax_obj = self.pool.get('account.tax')
+        inv = self.pool.get('account.invoice').browse(cr, uid, invoice_id, context=context)
+        res = super(account_invoice_tax,self).compute(cr, uid, invoice_id, context)
+        #update base values with calculated values
+        for key in res:
+            tax = tax_obj.search(cr,uid,[('name','=',res[key]['name'])])
+            if len(tax) > 1:
+                #Narrow down search criteria on based on company
+                tax = tax_obj.search(cr,uid,[('name','=',res[key]['name']),('company_id','=',inv.company_id.id)])
+            if tax and tax_obj.browse(cr,uid,tax[0]).enable_invoice_entry:
+                res[key]['base_amount'] = res[key]['base_amount'] > 0 and res[key]['base'] or (res[key]['base'] * -1)
+                res[key]['tax_amount'] = res[key]['tax_amount'] > 0 and res[key]['amount'] or (res[key]['amount'] * -1)
+        return res
+
+account_invoice_tax()
+
+class account_tax(osv.osv):
+
+    _inherit = 'account.tax'
+    
+    _columns = {
+        'enable_invoice_entry': fields.boolean('Use Currency Amount', help='Check if you wish this tax to be calculated using currency amount instead of amounting company currency.'),
+        }
+
+account_tax()
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

=== added directory 'order_edit'
=== renamed directory 'order_edit' => 'order_edit.moved'
=== added file 'order_edit/__init__.py'
--- order_edit/__init__.py	1970-01-01 00:00:00 +0000
+++ order_edit/__init__.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,25 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution	
+#    Copyright (C) 2013 credativ ltd (<http://www.credativ.co.uk>). All Rights Reserved
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+import wizard
+import order_edit
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file

=== added file 'order_edit/__openerp__.py'
--- order_edit/__openerp__.py	1970-01-01 00:00:00 +0000
+++ order_edit/__openerp__.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,51 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution    
+#    Copyright (C) 2013 credativ Ltd (<http://credativ.co.uk>).
+#    All Rights Reserved
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+
+{
+    'name': 'Sale Order Edit',
+    'version': '0.1',
+    'category': 'Sales & Purchases',
+    'description':
+        """
+        Sale Order Edit
+        """,
+    'author': 'credativ Ltd',
+    'website' : 'http://credativ.co.uk',
+    'depends': [
+        'sale',
+        'purchase',
+        'mail',
+        'account_cancel',
+        ],
+    'init_xml': [
+        ],
+    'update_xml': [
+        'wizard/order_edit_wizard_view.xml',
+        'sale_view.xml'
+    ],
+    'demo_xml': [
+    ],
+    'installable': True,
+    'active': False,
+}
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

=== added file 'order_edit/order_edit.py'
--- order_edit/order_edit.py	1970-01-01 00:00:00 +0000
+++ order_edit/order_edit.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,587 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution
+#    Copyright (C) 2013 credativ Ltd (<http://credativ.co.uk>).
+#    All Rights Reserved
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+import logging
+import re
+import time
+
+from osv import osv, fields
+from openerp.tools.misc import DEFAULT_SERVER_DATETIME_FORMAT
+from tools.translate import _
+import itertools
+import netsvc
+
+import util
+from collections import defaultdict
+
+
+class order_edit(object):
+
+    def _consolidate_edit_lines(self, cr, uid, original_ids, order, context=None):
+        """
+        Given an original order, and an edit order:
+         * Check that no done lines are reduced.
+         * Remove all lines from the edit order.
+         * Recreate up to two lines for each product:
+           - one for shipped items, and
+           - one for unshipped items
+         * Return a list of done lines.
+        """
+        original = self.browse(cr, uid, original_ids[0], context=context)
+
+        done_totals = {}
+        moves = []
+
+        for picking in original.picking_ids:
+            for move in picking.move_lines:
+                moves.append(move)
+                if move.state in ['done','assigned']:
+                    done_totals[move.product_id] = done_totals.setdefault(move.product_id, 0) + move.product_qty
+
+        # Get a list of lines for each product in the edit sale order
+        edit_totals = {}
+        for line in order.order_line:
+            if line.product_id.id == False or line.product_id.type == 'service':
+                continue
+            if self._name == 'sale.order':
+                qty = line.product_uom_qty
+            else:
+                qty = line.product_qty
+            edit_totals[line.product_id] = edit_totals.setdefault(line.product_id, 0) + qty
+
+        # Check that the totals in the edit aren't less than the shipped qty
+        for product, done_total in done_totals.iteritems():
+            if edit_totals.get(product, 0) < done_total:
+                raise osv.except_osv(_('Error !'),
+                                     _('There must be at least %d of %s in'
+                                       ' the edited sale order, as they have'
+                                       ' already been assigned or shipped.'
+                                            % (done_total, product.name)))
+
+        new_vals = {}
+        for line in order.order_line:
+            if line.product_id.id == False or line.product_id.type == 'service':
+                continue
+            new_vals[line.product_id.id] = {'price_unit': line.price_unit}
+            if self._name == 'purchase.order':
+                new_vals[line.product_id.id].update({'date_planned': line.date_planned})
+            if self._name == 'sale.order':
+                line.button_cancel(context=context)
+            line.unlink(context=context)
+
+        def add_product_order_line(product_id, qty):
+            line_obj = self.pool.get(order.order_line[0]._name)
+            product = self.pool.get('product.product').browse(cr, uid, product_id, context=context)
+
+            #type: make_to_stock is default in sale.order.line
+            vals = {'order_id': order.id,
+                    'name': product.name,
+                    'product_id': product.id,
+                    'product_uom': product.uom_id.id,
+                    }
+
+            if self._name == 'sale.order':
+                vals.update({'product_uom_qty': qty})
+
+            vals.update(new_vals[product.id])
+
+            line_id = line_obj.create(cr, uid, vals, context=context)
+            if self._name == 'sale.order':
+                line_obj.browse(cr, uid, line_id, context=context).button_confirm()
+            return line_id
+
+        line_moves = defaultdict(list)
+        other_moves = defaultdict(list)
+        for m in moves:
+            if m.state in ['done', 'assigned']:
+                line_id = add_product_order_line(m.product_id.id, m.product_qty)
+                line_moves[line_id].append(m)
+            else:
+                other_moves[m.product_id.id].append(m)
+
+        remain_moves = {}
+        for product, edit_total in edit_totals.iteritems():
+            remainder = edit_total - done_totals.get(product, 0)
+            if remainder > 0:
+                line_id = add_product_order_line(product.id, remainder)
+                remain_moves[line_id] = other_moves.get(product.id)
+
+        return line_moves, remain_moves
+
+    def check_consolidation(self, cr, uid, ids, context=None):
+        # TODO: edit with available moves
+        # move may be made available after the initial copy so can't give a warning then
+        # need to change confirm button to run an action that warns user of the available move
+        # and then trigger the workflow to continue the current behaviour
+        line_moves = None
+        remain_moves = None
+        for order in self.browse(cr, uid, ids, context=context):
+            original_ids = None
+            if order.origin:
+                original_ids = self.search(cr, uid, [('name', '=', order.origin)], context=context)
+            if original_ids:
+                line_moves, remain_moves = self._consolidate_edit_lines(cr, uid, original_ids,
+                                                          order, context)
+        return line_moves, remain_moves
+
+    def copy_for_edit(self, cr, uid, id_, context=None):
+        if context is None:
+            context = {}
+        context = context.copy()
+        context['order_edit'] = True
+        try:
+            if len(id_) == 1:
+                id_ = id[0]
+        except TypeError:
+            pass
+        order = self.browse(cr, uid, id_, context=context)
+
+        order_states = {
+            'sale.order':     ('progress','manual'),
+            'purchase.order': ('confirmed','approved'),
+            }
+
+        if order.state in order_states[self._name]:
+            new_id = self.copy(cr, uid, id_, context=context)
+            original_order_name = re.sub('-edit[0-9]+$', '', order.name)
+            similar_name_ids = self.search(cr, uid, [('name', 'like', original_order_name + '%')], context=context)
+            similar_names = set(similar_order['name'] for similar_order in self.read(cr, uid, similar_name_ids, ['name'], context=context))
+            for i in itertools.count(1):
+                new_name = '%s-edit%d' % (original_order_name, i)
+                if new_name not in similar_names:
+                    break
+            vals = {'name': new_name, 'origin': order.name}
+
+            self.write(cr, uid, new_id, vals, context=context)
+
+            if self._name == 'purchase.order':
+                wf_service = netsvc.LocalService('workflow')
+                wf_service.trg_validate(uid, self._name, new_id, 'purchase_confirm', cr)
+
+            return new_id
+        else:
+            raise osv.except_osv('Could not copy order', 'Order should be in progress.')
+
+class sale_shop(osv.osv):
+    _inherit = 'sale.shop'
+
+    _columns={
+        'default_customer_refund_account': fields.many2one('account.account', 'Default Refund Account', \
+                    help='This account will be used in sale order edit to make refund customer payments'),
+        'default_customer_refund_journal': fields.many2one('account.journal', 'Default Journal Account', \
+                    help='This Journal will be used in sale order edit to make customer refunds'),
+        }
+
+sale_shop()
+
+class sale_order(osv.osv, order_edit):
+    _inherit = 'sale.order'
+
+    def _refund_check_order(self, sale, cancel_assigned, accept_done):
+        if sale.state not in ('progress', 'manual'):
+            raise osv.except_osv(_('Error !'), _('Sale order is not in progress.'))
+
+        # Check picking states
+        for pick in sale.picking_ids:
+            if not cancel_assigned and pick.state == 'assigned':
+                raise self.RefundStockAssignedException(_('Error !'),
+                    _('Stock has already been assigned - please cancel pickings manually'))
+            if not accept_done and pick.state == 'done':
+                raise osv.except_osv(_('Error !'),
+                    _('Stock has already been shipped - please process manually'))
+
+    def _check_invoices(self, sale):
+        invoices = []
+        for inv in sale.invoice_ids:
+            if inv.type == 'out_invoice' and inv.state not in ['cancel', 'draft']:
+                invoices.append(inv)
+        if len(invoices) > 1:
+            raise osv.except_osv(_('Error!'), _('There is more than one invoice associated with this order'))
+        return invoices
+
+    def _check_refund_account(self, sale):
+        if not sale.shop_id.default_customer_refund_account:
+            raise osv.except_osv(_('Configuration Error'), _('Please define a customer payment account for this shop'))
+        return sale.shop_id.default_customer_refund_account.id
+
+    def _cancel_pickings(self, cr, uid, sale, accept_done):
+        wf_service = netsvc.LocalService("workflow")
+        for pick in sale.picking_ids:
+            if pick.state == 'cancel' or (accept_done and pick.state == 'done'):
+                continue
+            all_done = True
+            for move in pick.move_lines:
+                if move.state != 'done':
+                    all_done = False
+            if all_done:
+                wf_service.trg_validate(uid, 'stock.picking', pick.id, 'button_done', cr)
+            wf_service.trg_validate(uid, 'stock.picking', pick.id, 'button_cancel', cr)
+            #Call work flow twice to cancel stock picking
+            wf_service.trg_validate(uid, 'stock.picking', pick.id, 'button_cancel', cr)
+            util.log(self, 'Cancelled picking %s, state %s' % (pick.name, pick.state), logging.INFO)
+            
+        sale.refresh()
+
+        # Check if all picks are now cancelled
+        for pick in sale.picking_ids:
+            acceptable_states = ['draft', 'cancel']
+            if accept_done:
+                acceptable_states.append('done')
+            if pick.state not in acceptable_states:
+                raise osv.except_osv(
+                    _('Could not cancel sale order'),
+                    _('There was a problem cancelling the associated stock moves.'))
+
+    def _refund_invoices(self, cr, uid, sale, invoices, refund_account_id, context=None):
+        invoice_obj = self.pool.get('account.invoice')
+        wf_service = netsvc.LocalService("workflow")
+
+        for inv in invoices:
+            if inv.type != 'out_invoice':
+                continue
+            # Generate refund
+            refund_journal_ids = self.pool.get('account.journal').search(cr, uid, [('type','=','sale')], context=context)
+            if refund_journal_ids:
+                refund_journal_id = refund_journal_ids[0]
+            else:
+                refund_journal_id = None
+            refund_id = invoice_obj.refund(cr, uid, [inv.id], description=False, journal_id=refund_journal_id)[0]
+            # Confirm invoice
+            invoice_obj.button_compute(cr, uid, [refund_id])
+            wf_service.trg_validate(uid, 'account.invoice', refund_id, 'invoice_open', cr)
+            refund = invoice_obj.browse(cr, uid, refund_id, context=context)
+            if inv.payment_ids:
+                # Generate refund accounting move
+                payment = inv.payment_ids[0]
+                refund_account_id = payment.account_id.id
+                refund_journal_id = payment.journal_id.id
+            else:
+                ids = self.pool.get('account.journal').search(cr, uid, [('default_debit_account_id','=',refund_account_id)], context=context)
+                if not ids:
+                    raise osv.except_osv(
+                        _('Could not cancel sale order'),
+                        _('Could not find a journal for the payment account.'))
+                refund_journal_id = ids[0]
+
+            invoice_obj.pay_and_reconcile(cr, uid, [refund.id], inv.amount_total, refund_account_id, refund.period_id.id,
+                refund_journal_id, refund_account_id, refund.period_id.id, refund_journal_id)
+            util.log(self, 'Created refund for sale order %s' % (sale.name), logging.INFO)
+            break
+
+    def refund(self, cr, uid, ids, description, cancel_assigned=False, accept_done=False, return_cois=False, context=None):
+        for sale in self.browse(cr, uid, ids, context=context):
+            self._refund_check_order(sale, cancel_assigned, accept_done)
+            invoices = self._check_invoices(sale)
+            self._cancel_pickings(cr, uid, sale, accept_done)
+            if invoices:
+                refund_account_id = self._check_refund_account(sale)
+                self._refund_invoices(cr, uid, sale, invoices, refund_account_id, context=context)
+            event_vals = {'subject': 'Sale Order Refunded: %s' % sale.name,
+                      'body_text': 'Sale Order Refunded: %s' % sale.name,
+                      'partner_id': sale.partner_id.id,
+                      'date': time.strftime(DEFAULT_SERVER_DATETIME_FORMAT),
+                      'model': 'sale.order',
+                      'res_id': sale.id,
+                      'user_id': uid,
+                      'email_from': 'OpenERP <openerp@localhost>'}
+            self.pool.get('mail.message').create(cr, uid, event_vals, context=context)
+            self.pool.get('sale.order.line').write(cr, uid, [line.id for line in sale.order_line], {'state': 'cancel'}, context=context)
+            self.write(cr, uid, [sale.id], {'state': 'cancel'}, context=context)
+            util.log(self, 'Cancelled sale order %s' % sale.name, logging.INFO)
+
+    def _generate_payment_with_journal(self, cr, uid, journal_id, partner_id,
+                                      amount, payment_ref, entry_name,
+                                      date, should_validate, context):
+        """
+        Generate a voucher for the payment
+
+        It will try to match with the invoice of the order by
+        matching the payment ref and the invoice origin.
+
+        The invoice does not necessarily exists at this point, so if yes,
+        it will be matched in the voucher, otherwise, the voucher won't
+        have any invoice lines and the payment lines will be reconciled
+        later with "auto-reconcile" if the option is used.
+
+        Source: base_sale_multichannels module
+        copyright :(C) 2009 Akretion (<http://www.akretion.com>)
+        """
+        voucher_obj = self.pool.get('account.voucher')
+        voucher_line_obj = self.pool.get('account.voucher.line')
+        move_line_obj = self.pool.get('account.move.line')
+
+        journal = self.pool.get('account.journal').browse(
+            cr, uid, journal_id, context=context)
+
+        voucher_vals = {'reference': entry_name,
+                        'journal_id': journal.id,
+                        'amount': amount,
+                        'date': date,
+                        'partner_id': partner_id,
+                        'account_id': journal.default_credit_account_id.id,
+                        'currency_id': journal.company_id.currency_id.id,
+                        'company_id': journal.company_id.id,
+                        'type': 'receipt', }
+        voucher_id = voucher_obj.create(cr, uid, voucher_vals, context=context)
+
+        # call on change to search the invoice lines
+        onchange_voucher = voucher_obj.onchange_partner_id(
+            cr, uid, [],
+            partner_id=partner_id,
+            journal_id=journal.id,
+            amount=amount,
+            currency_id=journal.company_id.currency_id.id,
+            ttype='receipt',
+            date=date,
+            context=context)['value']
+
+        # keep in the voucher only the move line of the
+        # invoice (eventually) created for this order
+        matching_line = {}
+        if onchange_voucher.get('line_cr_ids'):
+            voucher_lines = onchange_voucher['line_cr_ids']
+            line_ids = [line['move_line_id'] for line in voucher_lines]
+            matching_ids = [line.id for line
+                            in move_line_obj.browse(
+                                cr, uid, line_ids, context=context)
+                            if line.ref == entry_name]
+            matching_lines = [line for line
+                              in voucher_lines
+                              if line['move_line_id'] in matching_ids]
+            if matching_lines:
+                matching_line = matching_lines[0]
+                matching_line.update({
+                    'amount': amount,
+                    'voucher_id': voucher_id,
+                })
+
+        if matching_line:
+            voucher_line_obj.create(cr, uid, matching_line, context=context)
+        if should_validate:
+            wf_service = netsvc.LocalService("workflow")
+            wf_service.trg_validate(uid, 'account.voucher', voucher_id, 'proforma_voucher', cr)
+        return voucher_id
+    
+    def _cancel_mo(self,cr,uid,order,context=None):
+        '''Cancel Manufacturing Order'''
+        if context is None:
+            context={}
+        mo_pool = self.pool.get('mrp.production')
+        mo_ids = mo_pool.search(cr,uid,[('origin','=',order.name), ('state','!=','cancel')],context=context)
+        wf_service = netsvc.LocalService("workflow")
+        # TODO Cancel Picking for MO which are not in (done,in_production) state. If MO are in (done,in_production)state then move MO to edited order.
+        if mo_ids:
+            try:
+                self.pool.get('mrp.production').action_cancel(cr,uid,mo_ids,context=context)
+                proc_pool = self.pool.get('procurement.order')
+                #Run schedule to create new Manufacturing order
+                proc_pool.run_scheduler(cr,uid,False,False,context=context)
+            except Exception, e:
+                raise osv.except_osv('Error in cancelling Manufacturing order','Error in cancelling Manufacturing order. ' + e.value)
+
+    def _refund(self, cr, uid, original, order, context=None):
+
+        acc_move_line_obj = self.pool.get('account.move.line')
+
+        # 1. Grab old invoice and payments
+        old_invoices = [i for i in original.invoice_ids if i.type == 'out_invoice' and i.state not in ('cancel', 'draft')]
+
+        if len(old_invoices) == 1:
+            has_invoice = True
+        elif len(old_invoices) == 0:
+            has_invoice = False
+        else:
+            raise osv.except_osv(('Error!'),('Multiple Invoices to Refund'))
+
+        # 2. Unreconcile old invoice
+        if has_invoice:
+            invoice_old = old_invoices[0]
+            payments = [p for p in invoice_old.payment_ids]
+            payment_ids = [p.id for p in payments]
+            if payment_ids:
+                p_acc_id = acc_move_line_obj.browse(cr, uid, payment_ids[0], context=context).account_id.id
+
+                recs = acc_move_line_obj.read(cr, uid, payment_ids, ['reconcile_id','reconcile_partial_id'], context=context)
+                unlink_ids = []
+                full_recs = filter(lambda x: x['reconcile_id'], recs)
+                rec_ids = [rec['reconcile_id'][0] for rec in full_recs]
+                part_recs = filter(lambda x: x['reconcile_partial_id'], recs) # Should not be partial - but for completeness it is included
+                part_rec_ids = [rec['reconcile_partial_id'][0] for rec in part_recs]
+                unlink_ids += rec_ids
+                unlink_ids += part_rec_ids
+                if len(unlink_ids):
+                    self.pool.get('account.move.reconcile').unlink(cr, uid, unlink_ids, context=context)
+
+        # 3. Refund with credit note and reconcile with origional invoice
+        self.refund(cr, uid, [original.id], 'Edit Refund:%s' % original.name, accept_done=True, cancel_assigned=True, context=context)
+
+        if has_invoice:
+            # 4. Create a new invoice and find difference between this and existing payment(s)
+            payment_credit = reduce(lambda x,y: x+(y.credit-y.debit), payments, 0.0)
+            invoice_id = self.action_invoice_create(cr, uid, [order.id], context=context)
+            invoice = self.pool.get('account.invoice').browse(cr, uid, [invoice_id], context=context)[0]
+            wkf_service = netsvc.LocalService('workflow')
+            wkf_service.trg_validate(uid, 'account.invoice', invoice_id, 'invoice_open', cr)
+            if payment_ids:
+                payment_ids.extend([pmnt.id for pmnt in invoice.move_id.line_id if pmnt.account_id.id == p_acc_id])
+            payment_diff = invoice.amount_total - payment_credit
+
+            # 5. If difference then generate a payment for the difference
+            if payment_diff:
+                assert original.shop_id.default_customer_refund_journal, 'Default Refund journal not found. Please set Refund Journal in Shop'
+                voucher_id = self._generate_payment_with_journal(cr, uid, original.shop_id.default_customer_refund_journal.id, order.partner_id.id,
+                                      payment_diff, order.name, order.name, order.date_order, True, context)
+                voucher = self.pool.get('account.voucher').browse(cr, uid, voucher_id, context=context)
+                if payment_ids:
+                    payment_ids.extend([pmnt.id for pmnt in voucher.move_id.line_id if pmnt.account_id.id == p_acc_id])
+
+            # 6. Reconcile all payments with current invoice
+            if payment_ids:
+                acc_move_line_obj.reconcile(cr, uid, payment_ids, context=context)
+
+            #7. Cancel old invoices invoices
+            wkf_service = netsvc.LocalService('workflow')
+
+        #8 Cancel MO,create new MO and run procurement scheduler
+        if self.pool.get('mrp.production'):
+            self._cancel_mo(cr,uid,original,context=context)
+
+
+    def _unreconcile_refund_and_cancel(self, cr, uid, original_id, order, context=None):
+        if context == None:
+            context = {}
+        original = self.browse(cr, uid, original_id, context=context)
+        try:
+            self._refund(cr, uid, original, order, context=context)
+        except osv.except_osv, e:
+            raise osv.except_osv('Error while refunding %s' % original.name, e.value)
+
+    def get_edit_original(self, cr, uid, order, context=None):
+        if order.origin:
+            original_ids = self.search(cr, uid, [('name', '=', order.origin)], context=context)
+            if len(original_ids) == 1:
+                return original_ids[0]
+            elif len(original_ids) == 0:
+                return False
+            else:
+                raise osv.except_osv('Found multiple sale orders with origin %s, must only be to edit.' % order.origin)
+        else:
+            return False
+
+    def _fixup_created_picking(self, cr, uid, line_moves, remain_moves, context):
+        # This is a post confirm hook
+        # - post-action hook: replace new stuff generated in the action with old stuff
+        # identified in the pre-action hook
+        move_pool = self.pool.get('stock.move')
+        pick_pool = self.pool.get('stock.picking')
+        wf_service = netsvc.LocalService("workflow")
+
+        if line_moves is not None:
+            for line_id, old_moves in line_moves.iteritems():
+                line = self.pool.get('sale.order.line').browse(cr, uid, line_id)
+                created_moves = [x for x in line.move_ids]
+                for old_move in old_moves:
+                    try:
+                        created_move = created_moves.pop()
+                    except IndexError:
+                        raise osv.except_osv(_('Error!'), _('The edited order must include any done or assigned moves'))
+                    # Move old stock_move and stock_picking to new order
+                    picking = created_move.picking_id
+                    move_pool.write(cr, uid, [old_move.id], {'sale_line_id': line_id})
+                    pick_pool.write(cr, uid, old_move.picking_id.id, {'sale_id':line.order_id.id})
+                    # Cancel and remove new replaced stock_move and stock_picking
+                    move_pool.write(cr, uid, created_move.id, {'sale_line_id': False, 'picking_id': False})
+                    created_move.action_cancel()
+                    picking.refresh()
+                    if not picking.move_lines:
+                        pick_pool.write(cr, uid, picking.id, {'sale_id': False})
+                        wf_service.trg_validate(uid, 'stock.picking', picking.id, 'button_cancel', cr)
+                        wf_service.trg_validate(uid, 'stock.picking', picking.id, 'button_cancel', cr)
+                        pick_pool.action_cancel(cr, uid, [picking.id])
+                assert(len(created_moves) == 0)
+
+        if remain_moves is not None:
+            picking = None
+            old_picking_copy = None
+            for line_id, old_moves in remain_moves.iteritems():
+                line = self.pool.get('sale.order.line').browse(cr, uid, line_id)
+                created_moves = [x for x in line.move_ids]
+                if not picking and not old_picking_copy:
+                    picking = old_moves and old_moves[0].picking_id or None
+                    if picking:
+                        old_picking_copy = pick_pool.copy(cr, uid, picking.id, {'move_lines': [], 'sale_id': line.order_id.id, 'name': '/'})
+                if not old_picking_copy or not created_moves:
+                    continue
+                for created_move in created_moves:
+                    new_picking = created_move.picking_id
+                    move_pool.write(cr, uid, created_move.id, {'sale_line_id': line_id, 'picking_id': old_picking_copy})
+                    new_picking.refresh()
+                    if not new_picking.move_lines:
+                        pick_pool.write(cr, uid, new_picking.id, {'sale_id': False})
+                        wf_service.trg_validate(uid, 'stock.picking', new_picking.id, 'button_cancel', cr)
+                        wf_service.trg_validate(uid, 'stock.picking', new_picking.id, 'button_cancel', cr)
+                        pick_pool.action_cancel(cr, uid, [new_picking.id])
+            if old_picking_copy:
+                wf_service.trg_validate(uid, 'stock.picking', old_picking_copy, 'button_confirm', cr)
+            # Old confirmed moves get canceled during refund
+
+    def action_ship_create(self, cr, uid, ids, context=None):
+        # run on order confirm, after action_wait
+
+#        # Sale order edit
+#        # -  pre-action hook: find what has been edited
+        line_moves, remain_moves = self.check_consolidation(cr, uid, ids, context)
+
+        # -    action: run original action
+        res = super(sale_order, self).action_ship_create(cr, uid, ids, context=context)
+
+#        # - post-action hook: replace new stuff generated in the action with old stuff
+        self._fixup_created_picking(cr, uid, line_moves, remain_moves, context)
+
+        for order in self.browse(cr, uid, ids, context=context):
+            original_id = self.get_edit_original(cr, uid, order, context=context)
+            if original_id:
+                self._unreconcile_refund_and_cancel(cr, uid, original_id, order, context=context)
+            
+        return res
+
+sale_order()
+
+
+class sale_order_line(osv.osv):
+    _inherit = 'sale.order.line'
+    
+    _columns = {
+        'order_edit_original_line_id': fields.many2one('sale.order.line', 'Order Edit Original Line',
+                                                    help='A reference to the line this was copied from, if any'), 
+    }
+
+    def copy_data(self, cr, uid, id_, default=None, context=None):
+        if context and context.get('order_edit'):
+            if not default:
+                default = {}
+            default['order_edit_original_line_id'] = id_
+        return super(sale_order_line, self).copy_data(cr, uid, id_, default, context=context)
+
+
+sale_order_line()
+

=== added file 'order_edit/order_edit_test.py'
--- order_edit/order_edit_test.py	1970-01-01 00:00:00 +0000
+++ order_edit/order_edit_test.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,110 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution    
+#    Copyright (C) 2013 credativ Ltd (<http://credativ.co.uk>).
+#    All Rights Reserved
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+# run with:
+# bzr branch lp:millerpunittest # need to confirm this, should be 6.1 branch
+# python ~/src/millerpunittest/run_unittests.py -- order_edit_test.SaleOrderTestCase
+
+
+import datetime
+import time
+import netsvc
+
+import millerpunittest.util as util
+
+from osv import orm, osv
+
+
+class SaleOrderTestCase(util.ERPTestCase):
+
+    def setUp(self):
+        super(SaleOrderTestCase, self).setUp()
+        self.so_obj = self.pool.get('sale.order')
+        self.product_id = util.duplicate_product(self, self.id_get('product.product_product_pc1'))
+
+    def test_edit(self):
+        order = util.create_empty_sale_order(self, {'order_policy': 'manual'})
+
+        line = util.add_product_sale_order_line(self, order.id, self.id_get('product.product_product_worker0'), 1)
+        self.assertEqual(line.product_id.type, 'service')
+        order = self.click('sale.order', None, 'Confirm Order', order)
+
+#        order = self.click('sale.order', None, 'Create Invoice', order)
+        
+#        so_invoice = self.click('account.invoice', None, 'Validate', order.invoice_ids[0])
+#        so_debit = [payment for payment in so_invoice.move_id.line_id if payment.account_id == so_invoice.account_id][0]
+#        payment_id = self.pool.get('sale.order').generate_payment_with_pay_code(self.cr, self.uid, 'paypal_standard', order.partner_id.id, so_debit.debit, order.name, order.name, order.date_order, True, {})
+#        payment = self.pool.get('account.bank.statement.line').browse(self.cr, self.uid, payment_id)
+#        so_credit_id = [pmnt.id for pmnt in payment.move_ids[0].line_id if pmnt.account_id.id == so_invoice.account_id.id][0]
+#        rec_id = self.pool.get('account.move.line').reconcile(self.cr, self.uid, [so_debit.id, so_credit_id])
+#        order = self.refresh(order)
+
+#        po = util.create_made_purchase_order(self)
+#        util.add_purchase_order_line(self, po.id, self.product_id, 2)
+#        self.workflow(po, 'purchase_confirm')
+#        po = self.workflow(po, 'purchase_approve')
+#        batch_id = po.made_batches_batch_ids[0].id
+#
+#        for i in range(int(order.order_line[0].product_uom_qty)):
+#            self.pool.get('made_batches.coi').create(self.cr, self.uid,
+#                {'made_batch_id': batch_id,
+#                 'product_id': order.order_line[0].product_id.id,
+#                 'sale_order_id': order.id,
+#                 'sale_order_line_id': order.order_line[0].id})
+#        
+#        self.workflow(order, 'manual_invoice') # create draft invoice
+#        order = self.so_obj.browse(self.cr, self.uid, order.id)
+#        self.workflow('account.invoice', order.invoice_ids[0].id, 'invoice_open') # confirm invoice
+
+        edit_order_id = order.copy_for_edit()
+        edit_order = self.so_obj.browse(self.cr, self.uid, edit_order_id)
+        self.assertEqual(edit_order.origin, order.name)
+        self.assertEqual(edit_order.name, order.name + '-edit1')
+
+        line = util.add_product_sale_order_line(self, edit_order.id, self.id_get('product.product_product_employee0'), 1)
+        self.assertEqual(line.product_id.type, 'service') 
+        edit_order = self.click('sale.order', None, 'Confirm Order', edit_order)
+        self.assertEqual(len(edit_order.order_line), 2)
+
+        # old order cancelled
+        order = self.refresh(order)
+        self.assertEqual(order.state, 'cancel')
+        invoice_ids = self.pool.get('account.invoice').search(self.cr, self.uid, [('name', '=', 'Edit Refund:%s' % order.name)])
+        self.assertEqual(len(invoice_ids), 0) # no invoices yet
+        #refund = self.pool.get('account.invoice').browse(self.cr, self.uid, invoice_ids[0])
+        #self.assertEqual(refund.state, 'paid')
+
+        # edit the edit
+        edit2_order_id = edit_order.copy_for_edit()
+        edit2_order = self.so_obj.browse(self.cr, self.uid, edit2_order_id)
+        self.assertEqual(edit2_order.name, order.name + '-edit2')
+        self.assertEqual(edit2_order.origin, edit_order.name)
+        self.click('sale.order', None, 'Confirm Order', edit2_order)
+        edit2_order = self.refresh(edit2_order)
+        self.assertEqual(len(edit2_order.order_line), 2)
+
+        edit_order = self.refresh(edit_order)
+        
+        self.assertEqual(self.pool.get('project.project').search(self.cr, self.uid, [('order_id', '=', order.id)]), [])
+        edit_project = self.search_browse('project.project', [('order_id', '=', edit2_order.id)])
+        self.assertEqual(set(task.name for task in edit_project.tasks), set(['Worker', 'Employee']))
+

=== added file 'order_edit/sale_view.xml'
--- order_edit/sale_view.xml	1970-01-01 00:00:00 +0000
+++ order_edit/sale_view.xml	2014-05-20 13:49:41 +0000
@@ -0,0 +1,21 @@
+<?xml version="1.0"?>
+<openerp>
+    <data>
+        <record model="ir.ui.view" id="order_edit_shop_view">
+            <field name="name">Order Edit Shop View</field>
+            <field name="model">sale.shop</field>
+            <field name="inherit_id" ref="sale.view_shop_form" />
+            <field name="type">form</field>
+            <field name="arch" type="xml">
+                <data>
+                    <xpath expr="//field[@name='company_id']" position="after">
+                        <group colspan="4">
+                            <field name="default_customer_refund_account"/>
+                            <field name="default_customer_refund_journal"/>
+                        </group>
+                    </xpath>
+                </data>
+            </field>
+        </record>
+    </data>
+</openerp>
\ No newline at end of file

=== added file 'order_edit/util.py'
--- order_edit/util.py	1970-01-01 00:00:00 +0000
+++ order_edit/util.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,37 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution    
+#    Copyright (C) 2013 credativ Ltd (<http://credativ.co.uk>).
+#    All Rights Reserved
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+import datetime
+import logging
+import sys
+
+def get_id(cr, uid, pool, id_str):
+    mod, id_str = id_str.split('.')
+    result = pool.get('ir.model.data')._get_id(cr, uid, mod, id_str)
+    return int(pool.get('ir.model.data').read(cr, uid, [result], ['res_id'])[0]['res_id'])
+
+def get_date(s):
+    return datetime.datetime.strptime(s, "%Y-%m-%d").date()
+
+def log(self, msg, level=logging.INFO):
+    logger = logging.getLogger(self._name)
+    logger.log(level, "%s(): %s", sys._getframe(1).f_code.co_name, msg)

=== added directory 'order_edit/wizard'
=== added file 'order_edit/wizard/__init__.py'
--- order_edit/wizard/__init__.py	1970-01-01 00:00:00 +0000
+++ order_edit/wizard/__init__.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,26 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution	
+#    Copyright (C) 2013 credativ Ltd (<http://credativ.co.uk>).
+#    All Rights Reserved
+#    $Id$
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+import order_edit_wizard
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file

=== added file 'order_edit/wizard/order_edit_wizard.py'
--- order_edit/wizard/order_edit_wizard.py	1970-01-01 00:00:00 +0000
+++ order_edit/wizard/order_edit_wizard.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,62 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution
+#    Copyright (C) 2013 credativ Ltd (<http://credativ.co.uk>).
+#    All Rights Reserved
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+
+import netsvc
+import time
+from osv import osv, fields
+from tools.translate import _
+
+class sale_order_wizard_order_edit(osv.osv_memory):
+    _name = "sale.order.wizard_order_edit"
+    _description = "Edit Order Items"
+    _columns = {
+        'sale_order_id' : fields.many2one('sale.order', required=True),
+        }
+
+    def default_get(self, cr, uid, fields, context):
+        sale_order_id = context and context.get('active_id', False) or False
+        res = super(sale_order_wizard_order_edit, self).default_get(cr, uid, fields, context=context)
+        res.update({'sale_order_id': sale_order_id or False})
+        return res
+    
+    def edit_order(self, cr, uid, ids, context=None):
+        rec_id = context and context.get('active_id', False)
+        assert rec_id, _('Active ID is not set in Context')
+        sale_obj = self.pool.get('sale.order')
+
+        for data in self.browse(cr, uid, ids, context=context):
+            new_id = sale_obj.copy_for_edit(cr, uid, data.sale_order_id.id, context=context)
+
+        return {
+                'name': 'Edit Order',
+                'view_type': 'form',
+                'view_mode': 'form,tree',
+                'res_model': 'sale.order',
+                'view_id': False,
+                'res_id': new_id,
+                'type': 'ir.actions.act_window',
+            }
+
+sale_order_wizard_order_edit()
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

=== added file 'order_edit/wizard/order_edit_wizard_view.xml'
--- order_edit/wizard/order_edit_wizard_view.xml	1970-01-01 00:00:00 +0000
+++ order_edit/wizard/order_edit_wizard_view.xml	2014-05-20 13:49:41 +0000
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- 
+vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+-->
+<openerp>
+    <data>
+
+        <!-- Sale order Edit Wizard -->
+        <record id="view_wizard_sale_order_edit" model="ir.ui.view">
+            <field name="name">Edit Order</field>
+            <field name="model">sale.order.wizard_order_edit</field>
+            <field name="type">form</field>
+            <field name="arch" type="xml">
+                <form string="Edit Order Items">
+                    <field name="sale_order_id" invisible="1"/>
+                    <label colspan="2" string="Edit order?"/>
+                    <group col="2" colspan="2">
+                        <button special="cancel" string="_Cancel" icon="gtk-cancel"/>
+                        <button name="edit_order" string="_Edit" type="object" icon="terp-gtk-go-back-rtl"/>
+                    </group>
+                </form>
+            </field>
+        </record>
+        <record id="action_wizard_sale_order_edit" model="ir.actions.act_window">
+            <field name="name">Edit Order</field>
+            <field name="type">ir.actions.act_window</field>
+            <field name="res_model">sale.order.wizard_order_edit</field>
+            <field name="view_type">form</field>
+            <field name="view_mode">form</field>
+            <field name="view_id" ref="view_wizard_sale_order_edit"/>
+            <field name="target">new</field>
+        </record>
+        <record model="ir.values" id="wizard_sale_order_edit">
+            <field name="model_id" ref="sale.model_sale_order" />
+            <field name="object" eval="1" />
+            <field name="name">Edit Order</field>
+            <field name="key2">client_action_multi</field>
+            <field name="value" eval="'ir.actions.act_window,' + str(ref('action_wizard_sale_order_edit'))" />
+            <field name="key">action</field>
+            <field name="model">sale.order</field>
+        </record>
+    </data>
+</openerp>

=== added directory 'planned_purchases'
=== renamed directory 'planned_purchases' => 'planned_purchases.moved'
=== added file 'planned_purchases/__init__.py'
--- planned_purchases/__init__.py	1970-01-01 00:00:00 +0000
+++ planned_purchases/__init__.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,26 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution	
+#    Copyright (C) 2013 credativ Ltd (<http://credativ.co.uk>).
+#    All Rights Reserved
+#    $Id$
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+import purchase
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

=== added file 'planned_purchases/__openerp__.py'
--- planned_purchases/__openerp__.py	1970-01-01 00:00:00 +0000
+++ planned_purchases/__openerp__.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,48 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution
+#    Copyright (C) 2013 credativ Ltd (<http://credativ.co.uk>).
+#    All Rights Reserved
+#    $Id$
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+{
+    'name' : 'Planned Purchases',
+    'version' : '2.0.0',
+    'author' : 'credativ',
+    'website' : 'http://credativ.co.uk',
+    'depends' : [
+        'mrp', 
+    ],
+    'category' : 'Generic Modules/Purchases',
+    'description': '''
+1. Adds new scheduler which search for purchase order in draft state and merge with same supplier.
+2. Amalgamate new Purchase Orders with existing ones of the same product and company.
+''',
+    'init_xml' : [
+    ],
+    'demo_xml' : [],
+    'update_xml' : [
+        'planned_purchase_cron.xml'
+    ],
+    'active': True,
+    'installable': True,
+    'auto_install': False,
+    'application': True,
+}
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

=== added file 'planned_purchases/planned_purchase_cron.xml'
--- planned_purchases/planned_purchase_cron.xml	1970-01-01 00:00:00 +0000
+++ planned_purchases/planned_purchase_cron.xml	2014-05-20 13:49:41 +0000
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="utf-8"?>
+<openerp>
+    <data>
+		<!-- Scheduler -->
+        <record forcecreate="True" id="ir_cron_po_merge" model="ir.cron">
+            <field name="name">Run Auto Merge Scheduler PO</field>
+            <field eval="False" name="active"/>
+            <field name="user_id" ref="base.user_root"/>
+            <field name="interval_number">1</field>
+            <field name="interval_type">days</field>
+            <field name="numbercall">-1</field>
+            <field eval="False" name="doall"/>
+            <field name="model">purchase.order</field>
+            <field name="function">merge_po</field>
+            <field name="args">([])</field>
+        </record>
+	</data>
+</openerp>
\ No newline at end of file

=== added file 'planned_purchases/purchase.py'
--- planned_purchases/purchase.py	1970-01-01 00:00:00 +0000
+++ planned_purchases/purchase.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,159 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution
+#    Copyright (C) 2013 credativ Ltd (<http://credativ.co.uk>).
+#    All Rights Reserved
+#    $Id$
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+import time
+from datetime import datetime
+from dateutil.relativedelta import relativedelta
+from osv import osv
+
+class purchase_order(osv.osv):
+    _inherit='purchase.order'
+
+    def merge_po(self,cr,uid,ids=[],context=None):
+        '''Auto merge Purchase orders with same supplier and in draft state '''
+
+        if context is None:
+            context={}
+        po_group_obj = self.pool.get('purchase.order.group')
+
+        #Search for po which are in draft state
+        if not ids:
+            cr.execute("select id from purchase_order where state='draft' and id in (select purchase_id as id from procurement_order where state='running')")
+            ids = map(lambda x: x[0], cr.fetchall())
+
+        #assign ids to active_ids in context
+        context['active_ids'] = ids
+
+        #Call merge_orders method from purchase.order.group object to merge PO
+        return po_group_obj.merge_orders(cr,uid,[],context=context)
+
+purchase_order()
+
+
+class procurement_order(osv.osv):
+    _inherit = 'procurement.order'
+
+    def make_po(self, cr, uid, ids, context=None):
+        """ Make purchase order from procurement
+        @return: New created Purchase Orders procurement wise
+        """
+
+        res = {}
+        if context is None:
+            context = {}
+        company = self.pool.get('res.users').browse(cr, uid, uid, context=context).company_id
+        partner_obj = self.pool.get('res.partner')
+        uom_obj = self.pool.get('product.uom')
+        pricelist_obj = self.pool.get('product.pricelist')
+        prod_obj = self.pool.get('product.product')
+        acc_pos_obj = self.pool.get('account.fiscal.position')
+        po_obj = self.pool.get('purchase.order')
+        po_line_obj = self.pool.get('purchase.order.line')
+        #Get All PO's which were genereated through scheduler
+        cr.execute("select id from purchase_order where state='draft' and id in (select purchase_id as id from procurement_order where state='running')")
+        po_ids = map(lambda x: x[0], cr.fetchall())
+        self.pool.get('purchase.order').merge_po(cr,uid,po_ids,context=context)
+        for procurement in self.browse(cr, uid, ids, context=context):
+            res_id = procurement.move_id and procurement.move_id.id or False
+            partner = procurement.product_id.seller_id # Taken Main Supplier of Product of Procurement.
+            seller_qty = procurement.product_id.seller_qty
+            seller_delay = int(procurement.product_id.seller_delay)
+            partner_id = partner.id
+            address_id = partner_obj.address_get(cr, uid, [partner_id], ['delivery'])['delivery']
+            pricelist_id = partner.property_product_pricelist_purchase.id
+            fiscal_position = partner.property_account_position and partner.property_account_position.id or False
+
+            uom_id = procurement.product_id.uom_po_id.id
+
+            qty = uom_obj._compute_qty(cr, uid, procurement.product_uom.id, procurement.product_qty, uom_id)
+            if seller_qty:
+                qty = max(qty,seller_qty)
+
+            price = pricelist_obj.price_get(cr, uid, [pricelist_id], procurement.product_id.id, qty, partner_id, {'uom': uom_id})[pricelist_id]
+
+            newdate = datetime.strptime(procurement.date_planned, '%Y-%m-%d %H:%M:%S')
+            newdate = (newdate - relativedelta(days=company.po_lead)) - relativedelta(days=seller_delay)
+
+            res_onchange = po_line_obj.product_id_change(cr, uid, ids, pricelist_id, procurement.product_id.id, qty, uom_id,
+                partner_id, time.strftime('%Y-%m-%d'), fiscal_position_id=fiscal_position, date_planned=datetime.now() + relativedelta(days=seller_delay or 0.0),
+            name=procurement.name, price_unit=procurement.product_id.list_price)
+
+            #Passing partner_id to context for purchase order line integrity of Line name
+            context.update({'lang': partner.lang, 'partner_id': partner_id})
+
+            product = prod_obj.browse(cr, uid, procurement.product_id.id, context=context)
+
+            line = {
+                'name': product.partner_ref,
+                'product_qty': res_onchange['value']['product_qty'],
+                'product_id': procurement.product_id.id,
+                'product_uom': res_onchange['value']['product_uom'],
+                'price_unit': res_onchange['value']['price_unit'],
+                'date_planned': newdate.strftime('%Y-%m-%d %H:%M:%S'),
+                'move_dest_id': res_id,
+            }
+
+            taxes_ids = procurement.product_id.product_tmpl_id.supplier_taxes_id
+            taxes = acc_pos_obj.map_tax(cr, uid, partner.property_account_position, taxes_ids)
+            line.update({
+                'taxes_id': [(6,0,taxes)]
+            })
+
+            #Update an existing purchase order
+            user_class = self.pool.get('res.users')
+            user_company_id = user_class.browse(cr, uid, uid, context = context).company_id.id
+            po_exists = po_obj.search(cr, uid, [('company_id','=', user_company_id),
+            ('partner_id', '=', partner_id),
+            ('state', 'in', ['draft']),
+            ('id', 'in', po_ids)])
+
+            if po_exists:
+                purchase_id = po_exists[0]
+
+            else:
+                purchase_id = po_obj.create(cr, uid, {
+                'state': 'draft',
+                'origin': procurement.origin,
+                'partner_id': partner_id,
+                'partner_address_id': address_id,
+                'pricelist_id': pricelist_id,
+                'location_id': procurement.location_id.id,
+                'company_id': procurement.company_id.id,
+                'fiscal_position': partner.property_account_position and partner.property_account_position.id or False
+                })
+
+            line_exists = po_line_obj.search(cr, uid, [('product_id','=',procurement.product_id.id),('order_id','=',purchase_id)])
+            if line_exists:
+                purchase_line_id = line_exists[0]
+                quantity = po_line_obj.browse(cr, uid, purchase_line_id).product_qty + res_onchange['value']['product_qty']
+                po_line_obj.write(cr, uid, [purchase_line_id], {'product_qty': quantity})
+            else:
+                line.update({'order_id': purchase_id})
+                purchase_line_id = po_line_obj.create(cr, uid, line)
+            res[procurement.id] = purchase_id
+            self.write(cr, uid, [procurement.id], {'state': 'running', 'purchase_id': purchase_id})
+            return res
+
+procurement_order()
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

=== added directory 'product_uom_unique'
=== added file 'product_uom_unique/__init__.py'
--- product_uom_unique/__init__.py	1970-01-01 00:00:00 +0000
+++ product_uom_unique/__init__.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,25 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution    
+#    Copyright (C) 2014 credativ Ltd (<http://credativ.co.uk>).
+#    All Rights Reserved
+#    $Id$
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+import purchase
+import product
+import sale

=== added file 'product_uom_unique/__openerp__.py'
--- product_uom_unique/__openerp__.py	1970-01-01 00:00:00 +0000
+++ product_uom_unique/__openerp__.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,51 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution    
+#    Copyright (C) 2014 credativ Ltd (<http://credativ.co.uk>).
+#    All Rights Reserved
+#    $Id$
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+{
+    'name' : 'Purchase Orders by Unit Quantity',
+    'version' : '1.0.0',
+    'author' : 'credativ',
+    'website' : 'http://credativ.co.uk',
+    'depends' : [
+        'base',
+        'purchase',
+        'sale',
+    ],
+    'category' : 'Generic Modules/Purchase',
+    'description': '''
+This module will add functionality to choose quantity on purchase order lines by unit quantity or quantity of units of measure (UoMs).
+Modifying one will calculate the other automatically depending on the UoM.
+Products can also be assigned to specific UoMs.  This results in that particular UoM only appearing on the associated products.
+If no products are allocated to a UoM, this UoM is available to all products.
+
+''',
+    'init_xml' : [],
+    'demo_xml' : [],
+    'update_xml' : [
+        "purchase_view.xml",
+        "product_view.xml",
+        "sale_view.xml",
+    ],
+    'active': False,
+    'installable': True
+}
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

=== added file 'product_uom_unique/product.py'
--- product_uom_unique/product.py	1970-01-01 00:00:00 +0000
+++ product_uom_unique/product.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,41 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution    
+#    Copyright (C) 2014 credativ Ltd (<http://credativ.co.uk>).
+#    All Rights Reserved
+#    $Id$
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+from osv import osv, fields
+
+class product_product(osv.osv):
+    _inherit = 'product.product'
+    
+    _columns = {
+                'uom_ids': fields.many2many('product.uom', 'product_uom_rel', 'uom_id', 'product_id', 'Units of Measure'),
+    }
+
+product_product()
+
+class product_uom(osv.osv):
+    _inherit = 'product.uom'
+    
+    _columns = {
+                'product_ids': fields.many2many('product.product', 'product_uom_rel', 'product_id', 'uom_id', "Products"),
+    }
+
+product_uom()

=== added file 'product_uom_unique/product_view.xml'
--- product_uom_unique/product_view.xml	1970-01-01 00:00:00 +0000
+++ product_uom_unique/product_view.xml	2014-05-20 13:49:41 +0000
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- 
+vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+-->
+<openerp>
+    <data>
+        <record id="product_uom_form_case" model="ir.ui.view">
+            <field name="name">product.uom.form.case</field>
+            <field name="model">product.uom</field>
+            <field name="inherit_id" ref="product.product_uom_form_view" />
+            <field name="arch" type="xml">
+                <group>
+                    <field name="product_ids" colspan="4"/>
+                </group>
+            </field>
+        </record>
+        <record id="product_normal_form_view_case" model="ir.ui.view">
+            <field name="name">product.product.form.case</field>
+            <field name="model">product.product</field>
+            <field name="inherit_id" ref="product.product_normal_form_view" />
+            <field name="arch" type="xml">
+                <field name="uom_id" position="attributes">
+                    <attribute name="domain">['|', ('product_ids','in', [id]), ('product_ids', 'not in', [])]</attribute>
+                </field>
+                <field name="uom_po_id" position="attributes">
+                    <attribute name="domain">['|', ('product_ids','in', [id]), ('product_ids', 'not in', [])]</attribute>
+                </field>
+            </field>
+        </record>
+    </data>
+</openerp>
+

=== added file 'product_uom_unique/purchase.py'
--- product_uom_unique/purchase.py	1970-01-01 00:00:00 +0000
+++ product_uom_unique/purchase.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,142 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution    
+#    Copyright (C) 2014 credativ Ltd (<http://credativ.co.uk>).
+#    All Rights Reserved
+#    $Id$
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+from osv import osv, fields
+import decimal_precision as dp
+
+def rounding(f, r):
+    if not r:
+        return f
+    return round(f / r) * r
+
+class purchase_order_line(osv.osv):
+    _inherit = 'purchase.order.line'
+    
+    def onchange_product_uom(self, cr, uid, ids, pricelist_id, product_id, qty, uom_id,
+            partner_id, date_order=False, fiscal_position_id=False, date_planned=False,
+            name=False, price_unit=False, context=None):
+        """
+        onchange handler of product_uom.
+        """
+        if not uom_id:
+            return {'value': {'price_unit': price_unit or 0.0, 'name': name or '', 'product_uom' : uom_id or False}}
+        return self.onchange_product_id(cr, uid, ids, pricelist_id, product_id, qty, uom_id,
+            partner_id, date_order=date_order, fiscal_position_id=fiscal_position_id, date_planned=date_planned,
+            name=name, price_unit=price_unit, context=context)
+    
+    def onchange_product_id(self, cr, uid, ids, pricelist_id, product_id, qty, uom_id,
+            partner_id, date_order=False, fiscal_position_id=False, date_planned=False,
+            name=False, price_unit=False, context=None):
+        """
+        onchange handler of product_id.
+        """
+        res = super(purchase_order_line, self).onchange_product_id(cr,uid,ids,pricelist_id, product_id, qty, uom_id,
+            partner_id, date_order=date_order, fiscal_position_id=fiscal_position_id, date_planned=date_planned,
+            name=name, price_unit=price_unit, context=context)
+        
+        # Remove warning message restricting a supplier to a single UoM
+        if res.get('warning', False) and res['warning'].get('message', False) and res['warning']['message'][0:48] == 'The selected supplier only sells this product by':
+            del res['warning']
+        
+        if product_id and uom_id:
+            uom = self.pool.get('product.uom').browse(cr,uid,uom_id,context=context)
+            qty_per_uom = 1.0 / uom.factor
+            value={
+                'qty_per_uom': qty_per_uom,
+                'unit_qty': qty * qty_per_uom
+                   }
+            res['value'].update(value)
+            res.setdefault('domain', {}).setdefault('product_uom', []).extend(['|', ('product_ids','in', [product_id]), ('product_ids', '!=', [])])
+        return res
+
+    product_id_change = onchange_product_id
+
+    def onchange_unit_qty(self, cr, uid, ids, pricelist_id, product_id, qty, uom_id,
+            partner_id, date_order=False, fiscal_position_id=False, date_planned=False,
+            name=False, price_unit=False, unit_qty=0.0, qty_per_uom=0.0, context=None):
+        """
+        onchange handler of unit_qty.
+        """
+        res = {}
+        if product_id and uom_id:
+            uom = self.pool.get('product.uom').browse(cr, uid, uom_id, context=context)
+            product_qty = rounding(qty_per_uom and (float(unit_qty) / qty_per_uom) or 0.0, uom.rounding)
+            value = {'product_qty': product_qty, 'unit_qty': product_qty * qty_per_uom}
+            res['value'] = value
+        return res
+
+    def _get_qty_per_uom(self, cr, uid, ids, name, data, context=None):
+        res = {}
+        for pol in self.browse(cr, uid, ids, context):
+            uom = pol.product_uom
+            if uom:
+                res[pol.id] = 1.0 / uom.factor
+            else:
+                res[pol.id] = 1.0
+        return res
+        
+    def _get_unit_qty(self, cr, uid, ids, name, data, context=None):
+        res = {}
+        for pol in self.browse(cr, uid, ids, context):
+            res[pol.id] = pol.product_qty * pol.qty_per_uom
+        return res
+        
+        
+    _columns = {
+                'qty_per_uom': fields.function(_get_qty_per_uom, type='float', string='Quantity per UOM', digits_compute=dp.get_precision('Product UoM'), required=True, readonly=True),
+                'unit_qty': fields.function(_get_unit_qty, type='float', string='Unit Quantity', digits_compute=dp.get_precision('Product UoM'), required=True),
+    }
+    
+    def _search_replace_uom(self,cr,uid,val,context=None):
+        '''Search and replace base reference of product uom and product '''
+        
+        if 'product_uom' in val:
+            product_uom = self.pool.get('product.uom')
+            cat_id = product_uom.browse(cr,uid,val['product_uom'],context=context).category_id.id
+            #Search uom base reference.
+            val['product_uom'] = product_uom.search(cr,uid,[('category_id','=', cat_id), ('factor', '=', 1), ('uom_type','=','reference')],context=context)[0]
+            if 'unit_qty' in val:
+                uom_qty = val['unit_qty'] / val['product_qty']
+                val['product_qty'] = val['unit_qty']
+                val['price_unit'] = val['price_unit'] / uom_qty
+        
+        return True
+    
+    def create(self,cr,uid,vals,context=None):
+        ''' Purchase order line create method overide to set product uom '''
+        
+        if not context:
+            context={}
+        
+        self._search_replace_uom(cr, uid, vals, context=context)
+        return super(purchase_order_line,self).create(cr,uid,vals,context=context)
+        
+    def write(self, cr, uid, ids, vals, context=None):
+        ''' Purchase order line write method overide to set product uom '''
+        
+        if not context:
+            context = {}
+        
+        self._search_replace_uom(cr, uid, vals, context=context)
+        return super(purchase_order_line,self).write(cr, uid, ids, vals, context)
+    
+purchase_order_line()

=== added file 'product_uom_unique/purchase_view.xml'
--- product_uom_unique/purchase_view.xml	1970-01-01 00:00:00 +0000
+++ product_uom_unique/purchase_view.xml	2014-05-20 13:49:41 +0000
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- 
+vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+-->
+<openerp>
+    <data>
+        <record id="purchase_order_line_form_case" model="ir.ui.view">
+            <field name="name">purchase.order.line.form.case</field>
+            <field name="model">purchase.order</field>
+            <field name="inherit_id" ref="purchase.purchase_order_form" />
+            <field name="arch" type="xml">
+                <xpath expr="/form/sheet/notebook/page[@string='Purchase Order']/field[@name='order_line']/tree/field[@name='product_uom']" position="after">
+                    <field name="unit_qty" readonly="0" on_change="onchange_unit_qty(parent.pricelist_id,product_id,product_qty,product_uom,parent.partner_id, parent.date_order,parent.fiscal_position,date_planned,name,price_unit,unit_qty,qty_per_uom,context)" context="{'force_product_uom': True}"/>
+                    <field name="qty_per_uom"/>
+                </xpath>
+                <xpath expr="/form/sheet/notebook/page[@string='Purchase Order']/field[@name='order_line']/tree/field[@name='product_qty']" position="attributes">
+                    <attribute name="string">Quantity of UOMs</attribute>
+                </xpath>
+                <xpath expr="/form/sheet/notebook/page[@string='Purchase Order']/field[@name='order_line']/tree/field[@name='product_uom']" position="attributes">
+                    <attribute name="domain">['|', ('product_ids','in', [product_id]), ('product_ids', 'not in', [])]</attribute>
+                </xpath>
+            </field>
+        </record>
+	</data>
+</openerp>

=== added file 'product_uom_unique/sale.py'
--- product_uom_unique/sale.py	1970-01-01 00:00:00 +0000
+++ product_uom_unique/sale.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,132 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution    
+#    Copyright (C) 2014 credativ Ltd (<http://credativ.co.uk>).
+#    All Rights Reserved
+#    $Id$
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+from osv import osv, fields
+import decimal_precision as dp
+
+def rounding(f, r):
+    if not r:
+        return f
+    return round(f / r) * r
+
+class sale_order_line(osv.osv):
+    _inherit = 'sale.order.line'
+    
+    def product_uom_change(self, cr, uid, ids, pricelist, product, qty=0, uom=False, qty_uos=0, uos=False, name='', partner_id=False, lang=False, update_tax=True, date_order=False, context=None):
+        """
+        onchange handler of product_uom.
+        """
+        if not uom:
+            return {'value': {'name': name or '', 'product_uom' : uom or False}}
+        return self.product_id_change(cr, uid, ids, pricelist, product, qty, uom, qty_uos, uos, name, partner_id, lang, update_tax, date_order, context=context)
+
+    def product_id_change(self, cr, uid, ids, pricelist, product, qty=0, uom=False, qty_uos=0, uos=False, name='', partner_id=False, lang=False, update_tax=True, date_order=False, packaging=False, fiscal_position=False, flag=False, context=None):
+        """
+        onchange handler of product_id.
+        """
+        res = super(sale_order_line, self).product_id_change(cr,uid,ids,pricelist, product, qty, uom, qty_uos, uos, name, partner_id, lang, update_tax, date_order, packaging, fiscal_position, flag, context)
+        
+        # Remove warning message restricting a supplier to a single UoM
+        if res.get('warning', False) and res['warning'].get('message', False) and res['warning']['message'][0:48] == 'The selected supplier only sells this product by':
+            del res['warning']
+        
+        if product and uom:
+            uom_browse = self.pool.get('product.uom').browse(cr,uid,uom,context=context)
+            qty_per_uom = 1.0 / uom_browse.factor
+            value={
+                'qty_per_uom': qty_per_uom,
+                'unit_qty': qty * qty_per_uom
+                   }
+            res['value'].update(value)
+            res.setdefault('domain', {}).setdefault('product_uom', []).extend(['|', ('product_ids','in', [product]), ('product_ids', '!=', [])])
+        return res
+
+    def onchange_unit_qty(self, cr, uid, ids, pricelist_id, product_id, qty, uom_id,
+            partner_id, date_order=False, fiscal_position_id=False,
+            name=False, price_unit=False, unit_qty=0.0, qty_per_uom=0.0, context=None):
+        """
+        onchange handler of unit_qty.
+        """
+        res = {}
+        if product_id and uom_id:
+            uom = self.pool.get('product.uom').browse(cr, uid, uom_id, context=context)
+            product_qty = rounding(qty_per_uom and (float(unit_qty) / qty_per_uom) or 0.0, uom.rounding)
+            value = {'product_qty': product_qty, 'unit_qty': product_qty * qty_per_uom}
+            res['value'] = value
+        return res
+
+    def _get_qty_per_uom(self, cr, uid, ids, name, data, context=None):
+        res = {}
+        for sol in self.browse(cr, uid, ids, context):
+            uom = sol.product_uom
+            if uom:
+                res[sol.id] = 1.0 / uom.factor
+            else:
+                res[sol.id] = 1.0
+        return res
+        
+    def _get_unit_qty(self, cr, uid, ids, name, data, context=None):
+        res = {}
+        for sol in self.browse(cr, uid, ids, context):
+            res[sol.id] = sol.product_uom_qty * pol.qty_per_uom
+        return res
+        
+        
+    _columns = {
+                'qty_per_uom': fields.function(_get_qty_per_uom, type='float', string='Quantity per UOM', digits_compute=dp.get_precision('Product UoM'), required=True, readonly=True),
+                'unit_qty': fields.function(_get_unit_qty, type='float', string='Unit Quantity', digits_compute=dp.get_precision('Product UoM'), required=True),
+    }
+    
+    def _search_replace_uom(self,cr,uid,val,context=None):
+        '''Search and replace base reference of product uom and product '''
+        
+        if 'product_uom' in val:
+            product_uom = self.pool.get('product.uom')
+            cat_id = product_uom.browse(cr,uid,val['product_uom'],context=context).category_id.id
+            #Search uom base reference.
+            val['product_uom'] = product_uom.search(cr,uid,[('category_id','=', cat_id), ('factor', '=', 1), ('uom_type','=','reference')],context=context)[0]
+            if 'unit_qty' in val:
+                uom_qty = val['unit_qty'] / val['product_uom_qty']
+                val['product_uom_qty'] = val['unit_qty']
+                val['price_unit'] = val['price_unit'] / uom_qty
+        
+        return True
+    
+    def create(self,cr,uid,vals,context=None):
+        ''' Purchase order line create method overide to set product uom '''
+        
+        if not context:
+            context={}
+        
+        self._search_replace_uom(cr, uid, vals, context=context)
+        return super(sale_order_line,self).create(cr,uid,vals,context=context)
+        
+    def write(self, cr, uid, ids, vals, context=None):
+        ''' Purchase order line write method overide to set product uom '''
+        
+        if not context:
+            context = {}
+        
+        self._search_replace_uom(cr, uid, vals, context=context)
+        return super(sale_order_line,self).write(cr, uid, ids, vals, context)
+    
+sale_order_line()

=== added file 'product_uom_unique/sale_view.xml'
--- product_uom_unique/sale_view.xml	1970-01-01 00:00:00 +0000
+++ product_uom_unique/sale_view.xml	2014-05-20 13:49:41 +0000
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- 
+vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+-->
+<openerp>
+    <data>
+        <record id="sale_order_line_form_case" model="ir.ui.view">
+            <field name="name">sale.order.line.form.case</field>
+            <field name="model">sale.order</field>
+            <field name="inherit_id" ref="sale.view_order_form" />
+            <field name="arch" type="xml">
+                <xpath expr="/form/sheet/notebook/page[@string='Order Lines']/field[@name='order_line']/form/group/group[1]/div" position="after">
+                    <field name="unit_qty" readonly="0" on_change="onchange_unit_qty(parent.pricelist_id,product_id,product_uom_qty,product_uom,parent.partner_id, parent.date_order,parent.fiscal_position,name,price_unit,unit_qty,qty_per_uom,context)" context="{'force_product_uom': True}"/>
+                    <field name="qty_per_uom"/>
+                </xpath>
+                <xpath expr="/form/sheet/notebook/page[@string='Order Lines']/field[@name='order_line']/form/group/group[1]/div/field[@name='product_uom_qty']" position="attributes">
+                    <attribute name="string">Quantity of UOMs</attribute>
+                </xpath>
+                <xpath expr="/form/sheet/notebook/page[@string='Order Lines']/field[@name='order_line']/form/group/group[1]/div/field[@name='product_uom']" position="attributes">
+                    <attribute name="domain">['|', ('product_ids','in', [product_id]), ('product_ids', 'not in', [])]</attribute>
+                </xpath>
+            </field>
+        </record>
+	</data>
+</openerp>

=== added directory 'purchase_company_prefix'
=== added file 'purchase_company_prefix/__init__.py'
--- purchase_company_prefix/__init__.py	1970-01-01 00:00:00 +0000
+++ purchase_company_prefix/__init__.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,27 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution	
+#    Copyright (C) 2014 credativ Ltd (<http://credativ.co.uk>).
+#    All Rights Reserved
+#    $Id$
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+import purchase
+import company
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

=== added file 'purchase_company_prefix/__openerp__.py'
--- purchase_company_prefix/__openerp__.py	1970-01-01 00:00:00 +0000
+++ purchase_company_prefix/__openerp__.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,47 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution
+#    Copyright (C) 2014 credativ Ltd (<http://credativ.co.uk>).
+#    All Rights Reserved
+#    $Id$
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+{
+    'name' : 'Purchase Company Prefix',
+    'version' : '1.0.0',
+    'author' : 'credativ',
+    'website' : 'http://credativ.co.uk',
+    'depends' : [
+                'purchase',
+                 ],
+    'category' : 'Generic Modules/Purchases',
+    'description': '''
+Adds new prefix field to a company which is included at the start of purchase order names.
+This allows purchase orders to use the same sequence numbers but keep unique prefixes per company.
+''',
+    'init_xml' : [],
+    'demo_xml' : [],
+    'update_xml' : [
+        'company_view.xml'
+    ],
+    'active': True,
+    'installable': True,
+    'auto_install': False,
+    'application': True,
+}
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

=== added file 'purchase_company_prefix/company.py'
--- purchase_company_prefix/company.py	1970-01-01 00:00:00 +0000
+++ purchase_company_prefix/company.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,35 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution
+#    Copyright (C) 2014 credativ Ltd (<http://credativ.co.uk>).
+#    All Rights Reserved
+#    $Id$
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+from openerp.osv import fields, osv
+
+class res_company(osv.osv):
+    _inherit = "res.company"
+
+    _columns = {
+        'purchase_prefix': fields.char('Purchase Prefix', size=64, help="Appears at the start of purchase order names for this company."),
+    }
+
+res_company()
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

=== added file 'purchase_company_prefix/company_view.xml'
--- purchase_company_prefix/company_view.xml	1970-01-01 00:00:00 +0000
+++ purchase_company_prefix/company_view.xml	2014-05-20 13:49:41 +0000
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="utf-8"?>
+<openerp>
+    <data>
+        <record id="res_company_purchase_prefix" model="ir.ui.view">
+            <field name="name">res.company.purchase.prefix</field>
+            <field name="model">res.company</field>
+            <field name="priority">20</field>
+            <field name="inherit_id" ref="base.view_company_form"/>
+            <field name="arch" type="xml">
+                <xpath expr="//group[@name='account_grp']" position="after">
+                    <group name="purchase_grp" string="Purchase">
+                        <field name="purchase_prefix"/>
+                    </group>
+                </xpath>
+            </field>
+        </record>
+	</data>
+</openerp>
\ No newline at end of file

=== added file 'purchase_company_prefix/purchase.py'
--- purchase_company_prefix/purchase.py	1970-01-01 00:00:00 +0000
+++ purchase_company_prefix/purchase.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,40 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution
+#    Copyright (C) 2014 credativ Ltd (<http://credativ.co.uk>).
+#    All Rights Reserved
+#    $Id$
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+from openerp.osv import fields, osv
+
+class purchase_order(osv.osv):
+    _inherit='purchase.order'
+
+    def create(self, cr, uid, vals, context=None):
+        if vals.get('name','/')=='/':
+            company = self.pool.get('res.company').browse(cr, uid, vals.get('company_id', []), context=context)
+            prefix = company and company.purchase_prefix or ''
+            sequence = self.pool.get('ir.sequence').get(cr, uid, 'purchase.order') or '/'
+            vals['name'] = '%s%s' % (prefix, sequence)
+        order =  super(purchase_order, self).create(cr, uid, vals, context=context)
+        return order
+
+purchase_order()
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

=== added directory 'sale_analysis_multi'
=== added file 'sale_analysis_multi/__init__.py'
--- sale_analysis_multi/__init__.py	1970-01-01 00:00:00 +0000
+++ sale_analysis_multi/__init__.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,24 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution   
+#    Copyright (C) 2013 credativ ltd (<http://www.credativ.co.uk>). All Rights Reserved
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+import sale_report
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file

=== added file 'sale_analysis_multi/__openerp__.py'
--- sale_analysis_multi/__openerp__.py	1970-01-01 00:00:00 +0000
+++ sale_analysis_multi/__openerp__.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,48 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution   
+#    Copyright (C) 2013 credativ ltd (<http://www.credativ.co.uk>). All Rights Reserved
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+{
+    'name': 'Sales Analyis User Currency',
+    'version': '0.1',
+    'category': 'Sales & Purchases',
+    'description':
+        """
+        Sale Order Analysis view in User currency. This module calculates all sales total into exisiting user's' currency
+        """,
+    'author': 'Credativ Ltd',
+    'website' : 'http://credativ.co.uk',
+    'depends': [
+        'sale',
+        'sale_stock',
+        ],
+    'init_xml': [
+        ],
+    'data': [
+        'security/ir.model.access.csv',
+        'sale_report_view.xml',
+    ],
+    'demo_xml': [
+    ],
+    'installable': True,
+    'active': False,
+}
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

=== added file 'sale_analysis_multi/sale_report.py'
--- sale_analysis_multi/sale_report.py	1970-01-01 00:00:00 +0000
+++ sale_analysis_multi/sale_report.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,192 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution   
+#    Copyright (C) 2013 credativ ltd (<http://www.credativ.co.uk>). All Rights Reserved
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+from openerp import tools
+from openerp.osv import fields, osv
+
+class sales_analysis_multi(osv.osv_memory):
+    """
+    For sales analysis report
+    """
+    _name = "sales.analysis.multi"
+    _description = "Sales Analysis multi Wizard"
+    _columns = {
+        'currency_id': fields.many2one('res.currency', \
+                                    'Select Report Currency',  \
+                                    help='Select currency for which report needs to generate'),
+        'date_from': fields.date('Start date'),
+        'date_to': fields.date('End date'),
+    }
+
+    def _get_currency(self, cr, uid, context=None):
+        """Return default  Currency value"""
+
+        return self.pool.get('res.users').browse(cr,uid,uid).company_id.currency_id.id
+
+    def sales_report_open_window(self, cr, uid, ids, context=None):
+        """
+        Opens Sales Analysis
+        @param cr: the current row, from the database cursor,
+        @param uid: the current user’s ID for security checks,
+        @param ids: List of account chart’s IDs
+        @return: dictionary of Sales analysis window on given fiscalyear and all Entries or posted entries
+        """
+
+        mod_obj = self.pool.get('ir.model.data')
+        act_obj = self.pool.get('ir.actions.act_window')
+        if context is None:
+            context = {}
+        data = self.read(cr, uid, ids, [], context=context)[0]
+        result = mod_obj.get_object_reference(cr, uid, 'sale_analysis_multi', 'action_view_sale_report_multi')
+        id = result and result[1] or False
+        result = act_obj.read(cr, uid, [id], context=context)[0]
+        if data['currency_id']:
+            result['domain'] = str([('sales_currency_id', '=', data['currency_id'][0])])
+            result['name'] += ':' + data['currency_id'][1]
+            result['sales_currency_id'] = data['currency_id'][0]
+        return result
+
+    _defaults = {
+        'currency_id': _get_currency,
+    }
+
+sales_analysis_multi()
+
+class sale_report_multi(osv.osv):
+
+    _name = "sale.report.multi"
+    _description = "Sales Orders Statistics in other Currency"
+    _auto = False
+    _rec_name = 'date'
+
+    _columns = {
+        'date': fields.date('Date Order', readonly=True),
+        'date_confirm': fields.date('Date Confirm', readonly=True),
+        'year': fields.char('Year', size=4, readonly=True),
+        'month': fields.selection([('01', 'January'), ('02', 'February'), ('03', 'March'), ('04', 'April'),
+            ('05', 'May'), ('06', 'June'), ('07', 'July'), ('08', 'August'), ('09', 'September'),
+            ('10', 'October'), ('11', 'November'), ('12', 'December')], 'Month', readonly=True),
+        'day': fields.char('Day', size=128, readonly=True),
+        'product_id': fields.many2one('product.product', 'Product', readonly=True),
+        'product_uom': fields.many2one('product.uom', 'Unit of Measure', readonly=True),
+        'product_uom_qty': fields.float('# of Qty', readonly=True),
+        'partner_id': fields.many2one('res.partner', 'Partner', readonly=True),
+        'shop_id': fields.many2one('sale.shop', 'Shop', readonly=True),
+        'company_id': fields.many2one('res.company', 'Company', readonly=True),
+        'user_id': fields.many2one('res.users', 'Salesperson', readonly=True),
+        'price_total': fields.float('Total Price', readonly=True),
+        'delay': fields.float('Commitment Delay', digits=(16,2), readonly=True),
+        'categ_id': fields.many2one('product.category','Category of Product', readonly=True),
+        'nbr': fields.integer('# of Lines', readonly=True),
+        'pricelist_id': fields.many2one('product.pricelist', 'Pricelist', readonly=True),
+        'analytic_account_id': fields.many2one('account.analytic.account', 'Analytic Account', readonly=True),
+        'shipped': fields.boolean('Shipped', readonly=True),
+        'shipped_qty_1': fields.integer('Shipped', readonly=True),
+        'currency_total':fields.float('Total in currency', digits=(16,2), readonly=True),
+        'sales_currency_id':fields.many2one('res.currency','Report Currency', readonly=True),
+        'ship_date': fields.date('Date Order', readonly=True),
+        'state': fields.selection([
+            ('draft', 'Quotation'),
+            ('waiting_date', 'Waiting Schedule'),
+            ('manual', 'Manual In Progress'),
+            ('progress', 'In Progress'),
+            ('invoice_except', 'Invoice Exception'),
+            ('done', 'Done'),
+            ('cancel', 'Cancelled')
+            ], 'Order Status', readonly=True),
+    }
+
+    def init(self, cr):
+        tools.drop_view_if_exists(cr, 'sale_report_multi')
+        cr.execute("""
+            create or replace view sale_report_multi as (
+                select
+                    min(l.id) as id,
+                    l.product_id as product_id,
+                    t.uom_id as product_uom,
+                    sum(l.product_uom_qty / u.factor * u2.factor) as product_uom_qty,
+                    sum(l.product_uom_qty * l.price_unit * (100.0-l.discount) / 100.0) as price_total,
+                    count(*) as nbr,
+                    s.date_order as date,
+                    s.date_confirm as date_confirm,
+                    to_char(s.date_order, 'YYYY') as year,
+                    to_char(s.date_order, 'MM') as month,
+                    to_char(s.date_order, 'YYYY-MM-DD') as day,
+                    s.partner_id as partner_id,
+                    s.user_id as user_id,
+                    s.shop_id as shop_id,
+                    s.company_id as company_id,
+                    extract(epoch from avg(date_trunc('day',s.date_confirm)-date_trunc('day',s.create_date)))/(24*60*60)::decimal(16,2) as delay,
+                    t.categ_id as categ_id,
+                    s.pricelist_id as pricelist_id,
+                    s.project_id as analytic_account_id,
+                    sm.date as ship_date,
+                    c.id as sales_currency_id,
+                    (sum(l.product_uom_qty * l.price_unit * (100.0-l.discount) / 100.0)/(cr_in.rate / cr.rate)) as currency_total
+                from
+                    sale_order_line l
+                      join sale_order s on (l.order_id=s.id) 
+                         left join product_product p on (l.product_id=p.id)
+                            left join product_template t on (p.product_tmpl_id=t.id)
+                    left join product_uom u on (u.id=l.product_uom)
+                    left join product_uom u2 on (u2.id=t.uom_id)
+                    left join product_pricelist pl on (pl.id = s.pricelist_id)
+                    cross join res_currency c
+                    left join res_currency_rate cr on (cr.currency_id = c.id)
+                    left join res_currency_rate cr_in on (cr.currency_id = c.id)
+                    inner join stock_move sm on (sm.sale_line_id = l.id)
+                where
+                    cr.id in (select id from res_currency_rate c_rate
+                    where 
+                    c_rate.currency_id = c.id and c_rate.name::timestamp with time zone <= sm.date::timestamp with time zone order by name DESC LIMIT 1)
+                    and
+                    cr_in.id in (select id from res_currency_rate c_rate
+                    where
+                    c_rate.currency_id = pl.currency_id and c_rate.name::timestamp with time zone <= sm.date::timestamp with time zone order by name DESC LIMIT 1)
+                    and
+                    sm.state in ('done')
+                    and
+                    c.active = 't'
+                group by
+                    l.product_id,
+                    l.order_id,
+                    t.uom_id,
+                    t.categ_id,
+                    s.date_order,
+                    s.date_confirm,
+                    s.partner_id,
+                    s.user_id,
+                    s.shop_id,
+                    s.company_id,
+                    s.pricelist_id,
+                    s.project_id,
+                    c.name,
+                    cr.rate,
+                    c.id,
+                    cr_in.id,
+                    sm.date
+                order by c.id, l.product_id, l.order_id
+            )
+        """)
+
+sale_report_multi()
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

=== added file 'sale_analysis_multi/sale_report_view.xml'
--- sale_analysis_multi/sale_report_view.xml	1970-01-01 00:00:00 +0000
+++ sale_analysis_multi/sale_report_view.xml	2014-05-20 13:49:41 +0000
@@ -0,0 +1,128 @@
+<?xml version="1.0" encoding="utf-8"?>
+<openerp>
+<data>
+
+    <record id="view_sales_analysis_multi" model="ir.ui.view">
+        <field name="name">sales.analysis.multi.form</field>
+        <field name="model">sales.analysis.multi</field>
+        <field name="arch" type="xml">
+            <form string="Sales Analysis in Currency" version="7.0">
+                <group>
+                    <label for="Sales Analaysis" string="Report Currency"/>
+                    <div>
+                        <field name="currency_id" class="oe_inline" required="1"/>
+                    </div>
+                </group>
+                <footer>
+                    <button string="Open Report" name="sales_report_open_window" type="object" class="oe_highlight"/>
+                    or
+                    <button string="Cancel" class="oe_link" special="cancel"/>
+                </footer>
+            </form>
+        </field>
+    </record>
+
+    <record id="action_sales_analysis_multi" model="ir.actions.act_window">
+        <field name="name">Sales Analysis in Currency</field>
+        <field name="res_model">sales.analysis.multi</field>
+        <field name="view_type">form</field>
+        <field name="view_mode">tree,form</field>
+        <field name="view_id" ref="view_sales_analysis_multi"/>
+        <field name="target">new</field>
+    </record>
+
+    <record id="view_sale_report_multi_tree" model="ir.ui.view">
+        <field eval="1" name="priority"/>
+        <field name="name">sale.report.multi.tree</field>
+        <field name="model">sale.report.multi</field>
+        <field name="arch" type="xml">
+            <tree string="Sales Analysis" create="false">
+                <field name="date" invisible="1"/>
+                <field name="ship_date" invisible="1"/>
+                <field name="user_id" invisible="1"/>
+                <field name="year" invisible="1"/>
+                <field name="day" invisible="1"/>
+                <field name="month" invisible="1"/>
+                <field name="shop_id" invisible="1"/>
+                <field name="company_id" invisible="1" groups="base.group_multi_company"/>
+                <field name="partner_id" invisible="1"/>
+                <field name="product_id" invisible="1"/>
+                <field name="categ_id" invisible="1"/>
+                <field name="nbr" sum="# of Lines"/>
+                <field name="product_uom_qty" sum="# of Qty"/>
+                <field name="product_uom" invisible="not context.get('set_visible',False)"/>
+                <field name="price_total" sum="Total Price"/>
+                <field name="delay" sum="Commitment Delay" invisible="1"/>
+                <field name="state" invisible="1"/>
+                <field name="analytic_account_id" invisible="1" groups="analytic.group_analytic_accounting"/>
+                <field name="currency_total" sum="Total Sales in Currency"/>
+            </tree>
+        </field>
+    </record>
+
+    <record id="view_sale_report_multi_graph" model="ir.ui.view">
+         <field name="name">sale.report.multi.graph</field>
+         <field name="model">sale.report.multi</field>
+         <field name="arch" type="xml">
+             <graph string="Sales Analysis" type="bar">
+                 <field name="product_id"/>
+                 <field name="currency_total"/>
+             </graph>
+         </field>
+    </record>
+
+    <record id="view_sale_report_multi_search" model="ir.ui.view">
+        <field name="name">sale.report.multi.search</field>
+        <field name="model">sale.report.multi</field>
+        <field name="arch" type="xml">
+            <search string="Sales Analysis">
+                <field name="date"/>
+                <field name="date_confirm"/>
+                <filter icon="terp-document-new" string="Quotations" domain="[('state','=','draft')]"/>
+                <filter icon="terp-check" string="Sales" domain="[('state','not in',('draft','done','cancel'))]"/>
+                <separator/>
+                <filter icon="terp-accessories-archiver" string="Picked" domain="[('shipped','=',True)]"/>
+                <separator/>
+                <filter icon="terp-personal" string="My Sales" help="My Sales" domain="[('user_id','=',uid)]"/>
+                <field name="partner_id"/>
+                <field name="product_id"/>
+                <field name="user_id"/>
+                <group expand="0" string="Extended Filters...">
+                    <field name="shop_id"/>
+                    <field name="categ_id"/>
+                    <field name="company_id" groups="base.group_multi_company"/>
+                </group>
+                <group expand="1" string="Group By...">
+                    <filter string="Salesperson" icon="terp-personal" name="User" context="{'group_by':'user_id'}"/>
+                    <filter string="Partner" icon="terp-partner"  name="Customer" context="{'group_by':'partner_id'}"/>
+                    <filter string="Product" icon="terp-accessories-archiver" context="{'group_by':'product_id','set_visible':True}"/>
+                    <filter string="Reference Unit of Measure" icon="terp-mrp" context="{'group_by':'product_uom'}"/>
+                    <filter string="Category of Product" icon="terp-stock_symbol-selection" name="Category" context="{'group_by':'categ_id'}"/>
+                    <filter string="Analytic Account" icon="terp-folder-green" context="{'group_by':'analytic_account_id'}" groups="analytic.group_analytic_accounting"/>
+                    <filter string="Status" icon="terp-stock_effects-object-colorize" context="{'group_by':'state'}"/>
+                    <filter string="Shop" icon="terp-go-home" context="{'group_by':'shop_id'}"/>
+                    <filter string="Company" icon="terp-go-home" groups="base.group_multi_company" context="{'group_by':'company_id'}"/>
+                    <filter string="Day" icon="terp-go-today" context="{'group_by':'day'}" help="Ordered date of the sales order"/>
+                    <filter string="Month" name="order_month" icon="terp-go-month" context="{'group_by':'month'}" help="Ordered month of the sales order"/>
+                    <filter string="Year" icon="terp-go-year" context="{'group_by':'year'}" help="Ordered Year of the sales order"/>
+                    <filter string="Shipment Date" context="{'group_by':'ship_date'}" help="Shippment date of sales order"/>
+                </group>
+            </search>
+        </field>
+    </record>
+
+    <record id="action_view_sale_report_multi" model="ir.actions.act_window">
+        <field name="name">Sales Analysis Currency</field>
+        <field name="res_model">sale.report.multi</field>
+        <field name="view_type">form</field>
+        <field name="view_mode">tree,graph</field>
+        <field name="search_view_id" ref="view_sale_report_multi_search"/>
+        <field name="view_id" ref="view_sale_report_multi_tree"/>
+        <field name="context">{'search_default_year':1,'search_default_month':1,'search_default_User':1,'group_by_no_leaf':1,'group_by':[]}</field>
+        <field name="help">This report performs analysis in different currencies on your sales orders based on delivery. Analysis check your sales revenues and sort it by different group criteria (salesman, partner, product, etc.) Use this report to perform analysis on sales which have been delivered. If you want to analyse your turnover, you should use the Invoice Analysis report in the Accounting application.</field>
+    </record>
+
+    <menuitem action="action_sales_analysis_multi" id="menu_view_sale_report_multi" parent="base.next_id_64" sequence="11" groups="base.group_sale_manager"/>
+
+</data>
+</openerp>

=== added directory 'sale_analysis_multi/security'
=== added file 'sale_analysis_multi/security/ir.model.access.csv'
--- sale_analysis_multi/security/ir.model.access.csv	1970-01-01 00:00:00 +0000
+++ sale_analysis_multi/security/ir.model.access.csv	2014-05-20 13:49:41 +0000
@@ -0,0 +1,2 @@
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_sale_report_multi,sale_report_multi,model_sale_report_multi,base.group_sale_manager,1,1,1,1

=== added directory 'sale_order_partner_filter'
=== added file 'sale_order_partner_filter/__init__.py'
=== added file 'sale_order_partner_filter/__openerp__.py'
--- sale_order_partner_filter/__openerp__.py	1970-01-01 00:00:00 +0000
+++ sale_order_partner_filter/__openerp__.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,38 @@
+# -*- coding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution
+#    Copyright (C) 2014 credativ Ltd (<http://credativ.co.uk>).
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU Affero General Public License as
+#    published by the Free Software Foundation, either version 3 of the
+#    License, or (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU Affero General Public License for more details.
+#
+#    You should have received a copy of the GNU Affero General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+{
+    "name": "Sale order partner filter",
+    "description":
+        """
+        Restricts the invoice and delivery addresses on a sale order just to those related to the customer.
+        """,
+    "version": "1.0",
+    "author" : "credativ Ltd",
+    "website" : "http://credativ.co.uk";,
+    "category" : "",
+    "depends" : [
+        "sale",
+        ],
+    "data" : [
+        "sale_order_view.xml",
+        ],
+    "auto_install": False,
+}

=== added file 'sale_order_partner_filter/sale_order_view.xml'
--- sale_order_partner_filter/sale_order_view.xml	1970-01-01 00:00:00 +0000
+++ sale_order_partner_filter/sale_order_view.xml	2014-05-20 13:49:41 +0000
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<openerp>
+	<data>
+		<record id="sale_order_partner_filter" model="ir.ui.view">
+			<field name="name">sale_order_partner_filter</field>
+			<field name="model">sale.order</field>
+			<field name="inherit_id" ref="sale.view_order_form" />
+			<field name="arch" type="xml">
+                <data>
+                    <xpath expr="//field[@name='partner_invoice_id']" position="replace">
+                        <field name="partner_invoice_id" groups="sale.group_delivery_invoice_address" context="{'default_type':'invoice'}" domain="[('id','child_of',[partner_id])]"/>
+                    </xpath>
+                    <xpath expr="//field[@name='partner_shipping_id']" position="replace">
+                        <field name="partner_shipping_id" groups="sale.group_delivery_invoice_address" context="{'default_type':'delivery'}" domain="[('id','child_of',[partner_id])]"/>
+                    </xpath>
+                </data>
+			</field>
+		</record>
+	</data>
+</openerp>

=== added directory 'sale_order_shop_prefix'
=== added file 'sale_order_shop_prefix/__init__.py'
--- sale_order_shop_prefix/__init__.py	1970-01-01 00:00:00 +0000
+++ sale_order_shop_prefix/__init__.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,26 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution	
+#    Copyright (C) 2014 credativ Ltd (<http://credativ.co.uk>).
+#    All Rights Reserved
+#    $Id$
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+import sale
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

=== added file 'sale_order_shop_prefix/__openerp__.py'
--- sale_order_shop_prefix/__openerp__.py	1970-01-01 00:00:00 +0000
+++ sale_order_shop_prefix/__openerp__.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,47 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution
+#    Copyright (C) 2014 credativ Ltd (<http://credativ.co.uk>).
+#    All Rights Reserved
+#    $Id$
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+{
+    'name' : 'Sale Order Shop Prefix',
+    'version' : '1.0.0',
+    'author' : 'credativ',
+    'website' : 'http://credativ.co.uk',
+    'depends' : [
+                'sale',
+                 ],
+    'category' : 'Generic Modules/Sales',
+    'description': '''
+Adds new prefix field to a shop which is included at the start of sale order names.
+This allows sale orders to use the same sequence numbers but keep unique prefixes per shop.
+''',
+    'init_xml' : [],
+    'demo_xml' : [],
+    'update_xml' : [
+        'sale_view.xml'
+    ],
+    'active': True,
+    'installable': True,
+    'auto_install': False,
+    'application': True,
+}
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

=== added file 'sale_order_shop_prefix/sale.py'
--- sale_order_shop_prefix/sale.py	1970-01-01 00:00:00 +0000
+++ sale_order_shop_prefix/sale.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,49 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution
+#    Copyright (C) 2014 credativ Ltd (<http://credativ.co.uk>).
+#    All Rights Reserved
+#    $Id$
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+from openerp.osv import fields, osv
+
+class sale_shop(osv.osv):
+    _inherit='sale.shop'
+
+    _columns = {
+        'sale_prefix': fields.char('Sale Prefix', size=64, help="Appears at the start of sale order names for this shop."),
+    }
+
+sale_shop()
+
+class sale_order(osv.osv):
+    _inherit='sale.order'
+
+    def create(self, cr, uid, vals, context=None):
+        if vals.get('name','/')=='/':
+            shop = self.pool.get('sale.shop').browse(cr, uid, vals.get('shop_id', []), context=context)
+            prefix = shop and shop.sale_prefix or ''
+            sequence = self.pool.get('ir.sequence').get(cr, uid, 'sale.order') or '/'
+            vals['name'] = '%s%s' % (prefix, sequence)
+        order =  super(sale_order, self).create(cr, uid, vals, context=context)
+        return order
+
+sale_order()
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

=== added file 'sale_order_shop_prefix/sale_view.xml'
--- sale_order_shop_prefix/sale_view.xml	1970-01-01 00:00:00 +0000
+++ sale_order_shop_prefix/sale_view.xml	2014-05-20 13:49:41 +0000
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="utf-8"?>
+<openerp>
+    <data>
+        <record id="sale_shop_sale_prefix" model="ir.ui.view">
+            <field name="name">sale.shop.sale.prefix</field>
+            <field name="model">sale.shop</field>
+            <field name="priority">20</field>
+            <field name="inherit_id" ref="sale.view_shop_form"/>
+            <field name="arch" type="xml">
+                <xpath expr="//field[@name='company_id']" position="after">
+                    <field name="sale_prefix"/>
+                </xpath>
+            </field>
+        </record>
+	</data>
+</openerp>
\ No newline at end of file

=== added directory 'so_line_delivery_date'
=== added file 'so_line_delivery_date/__init__.py'
--- so_line_delivery_date/__init__.py	1970-01-01 00:00:00 +0000
+++ so_line_delivery_date/__init__.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,25 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution	
+#    Copyright (C) 2013 credativ Ltd (<http://credativ.co.uk>).
+#    All Rights Reserved
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+import sale
+import report
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

=== added file 'so_line_delivery_date/__openerp__.py'
--- so_line_delivery_date/__openerp__.py	1970-01-01 00:00:00 +0000
+++ so_line_delivery_date/__openerp__.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,43 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution
+#    Copyright (C) 2013 credativ Ltd (<http://credativ.co.uk>).
+#    All Rights Reserved
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+{
+    'name' : 'Sale Order Line Delivery Dates',
+    'version' : '1.0.0',
+    'author' : 'credativ',
+    'website' : 'http://credativ.co.uk',
+    'depends' : [
+        'sale',
+        'sale_stock',
+    ],
+    'category' : 'Sales Management',
+    'description': '''
+Add functionality to set specific delivery dates on each sale order line.
+''',
+    'init_xml' : [
+    ],
+    'demo_xml' : [],
+    'update_xml' : [
+        'sale_view.xml',
+    ],
+    'installable': True
+}
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

=== added directory 'so_line_delivery_date/report'
=== added file 'so_line_delivery_date/report/__init__.py'
--- so_line_delivery_date/report/__init__.py	1970-01-01 00:00:00 +0000
+++ so_line_delivery_date/report/__init__.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,24 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution	
+#    Copyright (C) 2013 credativ Ltd (<http://credativ.co.uk>).
+#    All Rights Reserved
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+import sale_order
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

=== added file 'so_line_delivery_date/report/sale_order.py'
--- so_line_delivery_date/report/sale_order.py	1970-01-01 00:00:00 +0000
+++ so_line_delivery_date/report/sale_order.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,47 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution
+#    Copyright (C) 2013 credativ ltd (<http://www.credativ.co.uk>). All Rights Reserved
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+import time
+
+from openerp.report import report_sxw
+
+class order_delivery_date(report_sxw.rml_parse):
+    _name = 'report.sale.order.delivery.date'
+    
+    def __init__(self, cr, uid, name, context=None):
+        super(order_delivery_date, self).__init__(cr, uid, name, context=context)
+        self.localcontext.update({
+            'time': time, 
+            'show_discount':self._show_discount,
+        })
+
+    def _show_discount(self, uid, context=None):
+        cr = self.cr
+        try: 
+            group_id = self.pool.get('ir.model.data').get_object_reference(cr, uid, 'sale', 'group_discount_per_so_line')[1]
+        except:
+            return False
+        return group_id in [x.id for x in self.pool.get('res.users').browse(cr, uid, uid, context=context).groups_id]
+
+report_sxw.report_sxw('report.sale.order.delivery.date', 'sale.order', 'credativ-addons-7.0/so_line_delivery_date/report/sale_order.rml', parser=order_delivery_date, header="external")
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+

=== added file 'so_line_delivery_date/report/sale_order.rml'
--- so_line_delivery_date/report/sale_order.rml	1970-01-01 00:00:00 +0000
+++ so_line_delivery_date/report/sale_order.rml	2014-05-20 13:49:41 +0000
@@ -0,0 +1,351 @@
+<?xml version="1.0"?>
+<document filename="Sales Order.pdf">
+  <template title="Sales Order" author="OpenERP S.A.(sales@xxxxxxxxxxx)" allowSplitting="20">
+    <pageTemplate id="first">
+      <frame id="first" x1="15.0" y1="42.0" width="539" height="758"/>
+    </pageTemplate>
+  </template>
+  <stylesheet>
+    <blockTableStyle id="Standard_Outline">
+      <blockAlignment value="LEFT"/>
+      <blockValign value="TOP"/>
+    </blockTableStyle>
+    <blockTableStyle id="Table1">
+      <blockAlignment value="LEFT"/>
+      <blockValign value="TOP"/>
+    </blockTableStyle>
+    <blockTableStyle id="Table2">
+      <blockAlignment value="LEFT"/>
+      <blockValign value="TOP"/>
+      <lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="0,0" stop="0,-1"/>
+      <lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="0,0" stop="0,0"/>
+      <lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
+      <lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="1,0" stop="1,-1"/>
+      <lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="1,0" stop="1,0"/>
+      <lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
+      <lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="2,0" stop="2,-1"/>
+      <lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="2,0" stop="2,0"/>
+      <lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="2,-1" stop="2,-1"/>
+      <lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="3,0" stop="3,-1"/>
+      <lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="3,0" stop="3,-1"/>
+      <lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="3,0" stop="3,0"/>
+      <lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="3,-1" stop="3,-1"/>
+    </blockTableStyle>
+    <blockTableStyle id="Table3">
+      <blockAlignment value="LEFT"/>
+      <blockValign value="TOP"/>
+      <lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="0,0" stop="0,-1"/>
+      <lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="0,0" stop="0,0"/>
+      <lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
+      <lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="1,0" stop="1,-1"/>
+      <lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="1,0" stop="1,0"/>
+      <lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
+      <lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="2,0" stop="2,-1"/>
+      <lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="2,0" stop="2,0"/>
+      <lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="2,-1" stop="2,-1"/>
+      <lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="3,0" stop="3,-1"/>
+      <lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="3,0" stop="3,-1"/>
+      <lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="3,0" stop="3,0"/>
+      <lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="3,-1" stop="3,-1"/>
+    </blockTableStyle>
+    <blockTableStyle id="Table4">
+      <blockAlignment value="LEFT"/>
+      <blockValign value="TOP"/>
+      <lineStyle kind="LINEBELOW" colorName="#000000" start="0,-1" stop="0,-1"/>
+      <lineStyle kind="LINEBELOW" colorName="#000000" start="1,-1" stop="1,-1"/>
+      <lineStyle kind="LINEBELOW" colorName="#000000" start="2,-1" stop="2,-1"/>
+      <lineStyle kind="LINEBELOW" colorName="#000000" start="3,-1" stop="3,-1"/>
+      <lineStyle kind="LINEBELOW" colorName="#000000" start="4,-1" stop="4,-1"/>
+      <lineStyle kind="LINEBELOW" colorName="#000000" start="5,-1" stop="5,-1"/>
+      <lineStyle kind="LINEBELOW" colorName="#000000" start="6,-1" stop="6,-1"/>
+    </blockTableStyle>
+    <blockTableStyle id="Table5">
+      <blockAlignment value="LEFT"/>
+      <blockValign value="TOP"/>
+      <lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
+      <lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
+      <lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="2,-1" stop="2,-1"/>
+      <lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="3,-1" stop="3,-1"/>
+      <lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="4,-1" stop="4,-1"/>
+      <lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="5,-1" stop="5,-1"/>
+      <lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="6,-1" stop="6,-1"/>
+    </blockTableStyle>
+    <blockTableStyle id="Table6">
+      <blockAlignment value="LEFT"/>
+      <blockValign value="TOP"/>
+      <lineStyle kind="LINEABOVE" colorName="#ffffff" start="0,0" stop="0,0"/>
+      <lineStyle kind="LINEABOVE" colorName="#000000" start="1,0" stop="1,0"/>
+      <lineStyle kind="LINEABOVE" colorName="#000000" start="2,0" stop="2,0"/>
+      <lineStyle kind="LINEBEFORE" colorName="#ffffff" start="0,1" stop="0,-1"/>
+      <lineStyle kind="LINEBELOW" colorName="#ffffff" start="0,-1" stop="0,-1"/>
+      <lineStyle kind="LINEBEFORE" colorName="#ffffff" start="0,2" stop="0,-1"/>
+      <lineStyle kind="LINEBELOW" colorName="#ffffff" start="0,-1" stop="0,-1"/>
+      <lineStyle kind="LINEABOVE" colorName="#000000" start="1,2" stop="1,2"/>
+      <lineStyle kind="LINEABOVE" colorName="#000000" start="2,2" stop="2,2"/>
+    </blockTableStyle>
+    <blockTableStyle id="Table7">
+      <blockAlignment value="LEFT"/>
+      <blockValign value="TOP"/>
+    </blockTableStyle>
+    <initialize>
+      <paraStyle name="all" alignment="justify"/>
+    </initialize>
+    <paraStyle name="Standard" fontName="Helvetica"/>
+    <paraStyle name="Text body" fontName="Helvetica" spaceBefore="0.0" spaceAfter="6.0"/>
+    <paraStyle name="Heading" fontName="Helvetica" fontSize="8.0" leading="10" spaceBefore="12.0" spaceAfter="6.0"/>
+    <paraStyle name="List" fontName="Helvetica" spaceBefore="0.0" spaceAfter="6.0"/>
+    <paraStyle name="Table Contents" fontName="Helvetica"/>
+    <paraStyle name="Table Heading" fontName="Helvetica" alignment="CENTER"/>
+    <paraStyle name="Caption" fontName="Helvetica" fontSize="12.0" leading="15" spaceBefore="6.0" spaceAfter="6.0"/>
+    <paraStyle name="Index" fontName="Helvetica"/>
+    <paraStyle name="terp_header" fontName="Helvetica-Bold" fontSize="15.0" leading="19" alignment="LEFT" spaceBefore="12.0" spaceAfter="6.0"/>
+    <paraStyle name="terp_default_8" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
+    <paraStyle name="terp_default_Bold_8" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
+    <paraStyle name="terp_default_Bold_9" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
+    <paraStyle name="terp_default_9" fontName="Helvetica" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
+    <paraStyle name="terp_tblheader_General" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="6.0" spaceAfter="6.0"/>
+    <paraStyle name="terp_tblheader_General_Centre" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="CENTER" spaceBefore="6.0" spaceAfter="6.0"/>
+    <paraStyle name="terp_default_Centre_8" fontName="Helvetica" fontSize="8.0" leading="10" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
+    <paraStyle name="terp_tblheader_Details" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="6.0" spaceAfter="6.0"/>
+    <paraStyle name="Footer" fontName="Helvetica"/>
+    <paraStyle name="Horizontal Line" fontName="Helvetica" fontSize="6.0" leading="8" spaceBefore="0.0" spaceAfter="14.0"/>
+    <paraStyle name="Heading 9" fontName="Helvetica-Bold" fontSize="75%" leading="NaN" spaceBefore="12.0" spaceAfter="6.0"/>
+    <paraStyle name="terp_tblheader_General_Right" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="6.0" spaceAfter="6.0"/>
+    <paraStyle name="terp_tblheader_Details_Centre" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="CENTER" spaceBefore="6.0" spaceAfter="6.0"/>
+    <paraStyle name="terp_tblheader_Details_Right" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="RIGHT" spaceBefore="6.0" spaceAfter="6.0"/>
+    <paraStyle name="terp_default_Right_8" fontName="Helvetica" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
+    <paraStyle name="terp_header_Right" fontName="Helvetica-Bold" fontSize="15.0" leading="19" alignment="LEFT" spaceBefore="12.0" spaceAfter="6.0"/>
+    <paraStyle name="terp_header_Centre" fontName="Helvetica-Bold" fontSize="15.0" leading="19" alignment="CENTER" spaceBefore="12.0" spaceAfter="6.0"/>
+    <paraStyle name="terp_default_address" fontName="Helvetica" fontSize="10.0" leading="13" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
+    <paraStyle name="terp_default_Centre_9" fontName="Helvetica" fontSize="9.0" leading="11" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
+    <paraStyle name="terp_default_Right_9" fontName="Helvetica" fontSize="9.0" leading="11" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
+    <paraStyle name="terp_default_1" fontName="Helvetica" fontSize="2.0" leading="3" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
+    <paraStyle name="terp_default_Right_9_Bold" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
+    <paraStyle name="terp_default_Italic" rightIndent="0.0" leftIndent="20.0" fontName="Helvetica-Oblique" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
+    <paraStyle name="Preformatted Text" fontName="Helvetica" fontSize="10.0" leading="13" spaceBefore="0.0" spaceAfter="0.0"/>
+    <paraStyle name="terp_default_Centre_9_Bold" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
+    <images/>
+  </stylesheet>
+  <story>
+  <pto>
+  <para style="terp_default_8">[[repeatIn(objects,'o')]]</para>
+  <para style="terp_default_8">[[ setLang(o.partner_id.lang) ]]</para>
+  <pto_header>
+    <blockTable colWidths="181.0,70.0,80.0,70.0,50.0,85.0" repeatRows="1" style="Table4">
+      <tr>
+        <td>
+          <para style="terp_tblheader_Details">Description</para>
+        </td>
+        <td>
+          <para style="terp_tblheader_Details_Centre">Tax</para>
+        </td>
+        <td>
+          <para style="terp_tblheader_Details_Right">Quantity</para>
+        </td>
+        <td>
+          <para style="terp_tblheader_Details_Right">Unit Price</para>
+        </td>
+        <td>
+          <para style="terp_tblheader_Details_Centre">Disc.(%)</para>
+        </td>
+        <td>
+          <para style="terp_tblheader_Details_Right">Price</para>
+        </td>
+      </tr>
+    </blockTable>
+  </pto_header>
+    <para style="terp_default_8">
+      <font color="white"> </font>
+    </para>
+    <para style="terp_default_8">
+      <font color="white"> </font>
+    </para>
+    <blockTable colWidths="265.0,51.0,225.0" style="Table1">
+      <tr>
+        <td>
+          <para style="terp_default_Bold_9">Shipping address :</para>
+          <para style="terp_default_9">[[ (o.partner_shipping_id and o.partner_id.title and o.partner_shipping_id.title.name) or '' ]] [[ (o.partner_shipping_id and o.partner_shipping_id.name) or '' ]]</para>
+          <para style="terp_default_9">[[ o.partner_shipping_id and display_address(o.partner_shipping_id) ]]</para>
+          <para style="terp_default_9">
+            <font color="white"> </font>
+          </para>
+          <para style="terp_default_Bold_9">Invoice address :</para>
+          <para style="terp_default_9">[[ (o.partner_invoice_id and o.partner_invoice_id.title and o.partner_invoice_id.title.name) or '' ]] [[ (o.partner_invoice_id and o.partner_invoice_id.name) or '' ]]</para>
+          <para style="terp_default_9">[[ o.partner_invoice_id and display_address(o.partner_invoice_id) ]] </para>
+        </td>
+        <td>
+          <para style="terp_default_8">
+            <font color="white"> </font>
+          </para>
+        </td>
+        <td>
+          <para style="terp_default_9">[[ (o.partner_id and o.partner_id.title and o.partner_id.title.name) or '' ]] [[ (o.partner_id and o.partner_id.name) or '' ]]</para>
+          <para style="terp_default_9">[[ o.partner_id and display_address(o.partner_id) ]] </para>
+          <para style="terp_default_9">
+            <font color="white"> </font>
+          </para>
+          <para style="terp_default_9">Tel. : [[ (o.partner_id.phone) or removeParentNode('para') ]]</para>
+          <para style="terp_default_9">Fax : [[ (o.partner_id.fax) or removeParentNode('para') ]]</para>
+          <para style="terp_default_9">TVA : [[ (o.partner_id.vat) or removeParentNode('para') ]]</para>
+          <para style="terp_default_9">
+            <font color="white"> </font>
+          </para>
+        </td>
+      </tr>
+    </blockTable>
+    <para style="terp_default_8">
+      <font color="white"> </font>
+    </para>
+    <para style="terp_header">[[ o.state not in ['draft','sent'] and removeParentNode('para') ]] Quotation N° [[ o.name ]]</para>
+    <para style="terp_header">[[ o.state in ['draft','sent'] and removeParentNode('para') ]] Order N° [[ o.name ]]</para>
+    <para style="terp_default_8">
+      <font color="white"> </font>
+    </para>
+    <blockTable colWidths="132.0,134.0,135.0,135.0" style="Table2">
+      <tr>
+        <td>
+          <para style="terp_tblheader_General_Centre">Your Reference </para>
+        </td>
+        <td>
+          <para style="terp_tblheader_General_Centre">[[ o.state in ['draft','sent'] and removeParentNode('para') ]] Date Ordered</para>
+          <para style="terp_tblheader_General_Centre">[[ o.state not in ['draft','sent'] and removeParentNode('para') ]] Quotation Date</para>
+        </td>
+        <td>
+          <para style="terp_tblheader_General_Centre">Salesperson</para>
+        </td>
+        <td>
+          <para style="terp_tblheader_General_Centre">Payment Term</para>
+        </td>
+      </tr>
+    </blockTable>
+    <blockTable colWidths="132.0,134.0,135.0,135.0" style="Table3">
+      <tr>
+        <td>
+          <para style="terp_default_Centre_8">[[ o.client_order_ref ]]</para>
+        </td>
+        <td>
+          <para style="terp_default_Centre_8">[[ formatLang(o.date_order,date = True) ]]</para>
+        </td>
+        <td>
+          <para style="terp_default_Centre_8">[[ (o.user_id and o.user_id.name) or '' ]]</para>
+        </td>
+        <td>
+          <para style="terp_default_Centre_8">[[ (o.payment_term and o.payment_term.name) or '' ]]</para>
+        </td>
+      </tr>
+    </blockTable>
+    <para style="terp_default_8">
+      <font color="white"> </font>
+    </para>
+    <blockTable colWidths="131.0,50.0,70.0,80.0,70.0,50.0,85.0" repeatRows="1" style="Table4">
+      <tr>
+        <td>
+          <para style="terp_tblheader_Details">Description</para>
+        </td>
+        <td>
+          <para style="terp_tblheader_Details">[[ ( not o.requested_delivery_dates or o.state in ['draft','sent'] ) and removeParentNode('para') ]] Delivery Date</para>
+          <para style="terp_tblheader_Details">[[ ( not o.requested_delivery_dates or o.state not in ['draft','sent'] ) and removeParentNode('para') ]] Target Delivery Date</para>
+        </td>
+        <td>
+          <para style="terp_tblheader_Details_Centre">Tax</para>
+        </td>
+        <td>
+          <para style="terp_tblheader_Details_Right">Quantity</para>
+        </td>
+        <td>
+          <para style="terp_tblheader_Details_Right">Unit Price</para>
+        </td>
+        <td>
+          <para style="terp_tblheader_Details_Centre">[[not show_discount(user.id) and removeParentNode('para') ]]Disc.(%)</para>
+        </td>
+        <td>
+          <para style="terp_tblheader_Details_Right">Price</para>
+        </td>
+      </tr>
+    </blockTable>
+    <section>
+      <para style="terp_default_1">[[repeatIn(o.order_line,'line')]]</para>
+      <blockTable colWidths="130.0,50.0,70.0,80.0,70.0,50.0,85.0" style="Table5">
+        <tr>
+          <td>
+            <para style="terp_default_9">[[ format(line.name) ]] </para>
+          </td>
+          <td>
+            <para style="terp_default_9">[[ ( line.requested_delivery_date == 'False' and removeParentNode('para') ) ]] [[ formatLang(line.requested_delivery_date,date = True)  ]] </para>
+          </td>
+          <td>
+            <para style="terp_default_Centre_9">[[ ', '.join(map(lambda x: x.name, line.tax_id)) ]]</para>
+          </td>
+          <td>
+            <para style="terp_default_Right_9">[[ formatLang(line.product_uos and line.product_uos_qty or line.product_uom_qty) ]] [[ line.product_uos and line.product_uos.name or line.product_uom.name ]]</para>
+          </td>
+          <td>
+            <para style="terp_default_Right_9">[[ formatLang(line.price_unit , digits=get_digits(dp='Product Price'))]]</para>
+          </td>
+          <td>
+            <para style="terp_default_Centre_9">[[show_discount(user.id) and formatLang(line.discount, digits=get_digits(dp='Discount')) or '']]</para>
+          </td>
+          <td>
+            <para style="terp_default_Right_9">[[ formatLang(line.price_subtotal, digits=get_digits(dp='Account'), currency_obj=o.pricelist_id.currency_id) ]] </para>
+          </td>
+        </tr>
+      </blockTable>
+    </section>
+    <blockTable colWidths="381.0,60.0,93.0" style="Table6">
+      <tr>
+        <td>
+          <para style="terp_default_9">
+            <font color="white"> </font>
+          </para>
+        </td>
+        <td>
+          <para style="terp_default_9">Net Total :</para>
+        </td>
+        <td>
+          <para style="terp_default_Right_9">[[ formatLang(o.amount_untaxed, dp='Account', currency_obj=o.pricelist_id.currency_id) ]]</para>
+        </td>
+      </tr>
+      <tr>
+        <td>
+          <para style="terp_default_9">
+            <font color="white"> </font>
+          </para>
+        </td>
+        <td>
+          <para style="terp_default_9">Taxes :</para>
+        </td>
+        <td>
+          <para style="terp_default_Right_9">[[ formatLang(o.amount_tax, dp='Account', currency_obj=o.pricelist_id.currency_id) ]]</para>
+        </td>
+      </tr>
+      <tr>
+        <td>
+          <para style="terp_default_9">
+            <font color="white"> </font>
+          </para>
+        </td>
+        <td>
+          <para style="terp_default_Bold_9">Total :</para>
+        </td>
+        <td>
+          <para style="terp_default_Right_9_Bold">[[ formatLang(o.amount_total, dp='Account', currency_obj=o.pricelist_id.currency_id) ]]</para>
+        </td>
+      </tr>
+    </blockTable>
+    <para style="terp_default_8">
+      <font color="white"> </font>
+    </para>
+    <para style="terp_default_9">[[ format(o.note or '') ]]</para>
+    <blockTable colWidths="533.0" style="Table7">
+      <tr>
+        <td>
+          <para style="terp_default_9">[[ format(o.payment_term and o.payment_term.note or (o.partner_id.property_payment_term and o.partner_id.property_payment_term.note or '')) ]]</para>
+        </td>
+      </tr>
+    </blockTable>
+    <para style="terp_default_8">
+      <font color="white"> </font>
+    </para>
+  </pto>
+  </story>
+</document>

=== added file 'so_line_delivery_date/sale.py'
--- so_line_delivery_date/sale.py	1970-01-01 00:00:00 +0000
+++ so_line_delivery_date/sale.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,136 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution   
+#    Copyright (C) 2013 credativ Ltd (<http://credativ.co.uk>).
+#    All Rights Reserved
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU General Public License as published by
+#    the Free Software Foundation, either version 3 of the License, or
+#    (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+from osv import osv, fields
+import datetime
+
+class sale_order(osv.osv):
+    _inherit = 'sale.order'
+
+    def _fnct_requested_delivery_dates(self, cr, uid, ids, field_name, arg, context=None):
+        res = {}
+        # Return True if any lines have requested_delivery_date set
+        for order in self.browse(cr, uid, ids, context=context):
+            res[order.id] = False
+            for line in order.order_line:
+                if line.requested_delivery_date:
+                    res[order.id] = True
+                    continue
+        return res
+
+    _columns = { 
+        'requested_delivery_dates': fields.function(_fnct_requested_delivery_dates, string='Requested Delivery Dates', type='bool', help="Do any lines have requested delivery dates set?", readonly=True),
+    }
+
+sale_order()
+
+class sale_order_line(osv.osv):
+    _inherit = 'sale.order.line'
+
+    def onchange_delay(self, cr, uid, ids, delay, context=None):
+        context = context or {}
+        res = {'value':{}}
+        res['value']['default_delivery_date'] = self._get_single_default_delivery_date(cr, uid, ids and ids[0], delay=delay, context=context)
+        return res
+
+    def _get_single_days_until_delivery(self, cr, uid, id, requested_delivery_date, context=None):
+        today = datetime.datetime(year=datetime.datetime.today().year, month=datetime.datetime.today().month, day=datetime.datetime.today().day)
+        if requested_delivery_date and not id:
+            timedelta_until_delivery = datetime.datetime.strptime(requested_delivery_date, '%Y-%m-%d') - today
+            return timedelta_until_delivery.days
+        try:
+            line = self.browse(cr, uid, id, context=context)
+            if not requested_delivery_date:
+                requested_delivery_date = line.requested_delivery_date
+            date_confirm = line.order_id.date_confirm and datetime.datetime.strptime(line.order_id.date_confirm, '%Y-%m-%d')
+            timedelta_until_delivery = datetime.datetime.strptime(requested_delivery_date, '%Y-%m-%d') - ( date_confirm or today )
+            return timedelta_until_delivery.days
+        except:
+            return False
+
+    def _fnct_days_until_delivery(self, cr, uid, ids, field_name, arg, context=None):
+        context = context or {}
+        res = {}
+        for line in self.browse(cr, uid, ids, context=context):
+            res[line.id] = self._get_single_days_until_delivery(cr, uid, line.id, line.requested_delivery_date, context=context)
+        return res
+
+    def _get_single_default_delivery_date(self, cr, uid, id, delay, context=None):
+        today = datetime.datetime(year=datetime.datetime.today().year, month=datetime.datetime.today().month, day=datetime.datetime.today().day)
+        if delay and not id:
+            default_delivery_datetime = datetime.timedelta(days=delay) + today
+            return default_delivery_datetime.strftime('%Y-%m-%d')
+        try:
+            line = self.browse(cr, uid, id, context=context)
+            if not delay:
+                delay = line.delay
+            date_confirm = line.order_id.date_confirm and datetime.datetime.strptime(line.order_id.date_confirm, '%Y-%m-%d')
+            default_delivery_datetime = datetime.timedelta(days=delay) + ( date_confirm or today )
+            return default_delivery_datetime.strftime('%Y-%m-%d')
+        except:
+            return False
+        
+    def _fnct_default_delivery_date(self, cr, uid, ids, field_name, arg, context=None):
+        context = context or {}
+        res = {}
+        for line in self.browse(cr, uid, ids, context=context):
+            if line.state == 'confirmed':
+                res[line.id] = line.default_delivery_date_when_confirmed
+            else:
+                res[line.id] = self._get_single_default_delivery_date(cr, uid, line.id, delay=line.delay, context=context)
+        return res
+
+    def onchange_requested_delivery_date(self, cr, uid, ids, requested_delivery_date, default_delivery_date, context=None):
+        if not context:
+            context = {}
+        if not isinstance(ids, list):
+            ids = [ids]
+        res = {}
+        res = {'value':{}}
+        res['value']['days_until_delivery'] = self._get_single_days_until_delivery(cr, uid, ids and ids[0], requested_delivery_date=requested_delivery_date, context=None)
+        if requested_delivery_date < default_delivery_date:
+            res['warning'] = {'title':'Requested days until delivery is less than delivery lead time', 'message':'Please ensure this delivery date is manageable before continuing.'}
+        return res
+
+    def button_confirm(self, cr, uid, ids, context=None):
+        if not context:
+            context = {}
+        for line in self.browse(cr, uid, ids, context=context):
+            self.write(cr, uid, line.id, {'default_delivery_date_when_confirmed': line.default_delivery_date})
+            if line.requested_delivery_date:
+                self.write(cr, uid, line.id, {'delay': line.days_until_delivery})
+        res = super(sale_order_line, self).button_confirm(cr, uid, ids, context=context)
+        return res
+
+    _columns = { 
+        'days_until_delivery': fields.function(_fnct_days_until_delivery, string='Days Until Delivery', type='float', help="Number of days remaining until requested delivery date.", readonly=True),
+        'requested_delivery_date': fields.date('Requested Delivery Date', select=True, help="Date on which customer has requested delivery."),
+        'default_delivery_date_when_confirmed': fields.date('Default Delivery Date When Confirmed'),
+        'default_delivery_date': fields.function(_fnct_default_delivery_date, string='Default Delivery Date', type='date', help="Date on which delivery is projected, assuming customer has not requested a specific date."),
+    }
+    _defaults = {
+        'requested_delivery_date': False,
+    }
+
+sale_order_line()
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

=== added file 'so_line_delivery_date/sale_view.xml'
--- so_line_delivery_date/sale_view.xml	1970-01-01 00:00:00 +0000
+++ so_line_delivery_date/sale_view.xml	2014-05-20 13:49:41 +0000
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+-->
+<openerp>
+    <data>
+        <record id="view_order_form_delivery_dates" model="ir.ui.view">
+            <field name="name">sale.order.form.delivery.date</field>
+            <field name="model">sale.order</field>
+            <field name="inherit_id" ref="sale_stock.view_order_form_inherit"/>
+            <field name="arch" type="xml">
+                <data>
+                   <xpath expr="//page[@string='Order Lines']/field[@name='order_line']/tree[@string='Sales Order Lines']/field[@name='name']" position="after">
+                       <field name="default_delivery_date"/>
+                       <field name="requested_delivery_date"/>
+                       <field name="days_until_delivery" invisible="1"/>
+                   </xpath>
+                   <xpath expr="//page[@string='Order Lines']/field[@name='order_line']/tree[@string='Sales Order Lines']" position="attributes">
+                       <attribute name="colors"> red:requested_delivery_date and (requested_delivery_date&lt;default_delivery_date) </attribute>
+                   </xpath>
+                   <label for="delay" position="replace"/>
+                   <xpath expr="//page[@string='Order Lines']/field[@name='order_line']/form[@string='Sales Order Lines']/group/group/div[field[@name='delay']]" position="replace"/>
+                   <xpath expr="//page[@string='Order Lines']/field[@name='order_line']/form[@string='Sales Order Lines']/group/group/field[@name='price_unit']" position="after">
+                       <label for="delay" help="Number of days from confirmation date of order until delivery. The requested delivery date will override this if it is set."/>
+                       <div>
+                           <field name="delay" on_change="onchange_delay(delay)" class="oe_inline" help="Number of days from confirmation date of order until delivery. The requested delivery date will override this if it is set."/> days
+                       </div>
+                        <label for="default_delivery_date"/> 
+                       <div>
+                           <field name="default_delivery_date" class="oe_inline"/>
+                       </div>
+                       <label for="requested_delivery_date"/>
+                       <div>
+                           <field name="requested_delivery_date" on_change="onchange_requested_delivery_date(requested_delivery_date, default_delivery_date)" class="oe_inline"/>
+                       </div>
+                       <label for="days_until_delivery"/>
+                       <div>
+                           <field name="days_until_delivery" class="oe_inline"/> days
+                       </div>
+                   </xpath>
+                </data>
+            </field>
+        </record>
+        
+        <report auto="False" id="report_sale_order_delivery_date" model="sale.order" name="sale.order.delivery.date"
+                rml="so_line_delivery_date/report/sale_order.rml" string="Quotation / Order (Delivery Dates)"
+                usage="default"/>
+    </data>
+</openerp>

=== added directory 'stock_planning'
=== added file 'stock_planning/__init__.py'
--- stock_planning/__init__.py	1970-01-01 00:00:00 +0000
+++ stock_planning/__init__.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,26 @@
+# -*- coding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution
+#    Copyright (C) 2004-2010 Tiny SPRL (<http://tiny.be>).
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU Affero General Public License as
+#    published by the Free Software Foundation, either version 3 of the
+#    License, or (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU Affero General Public License for more details.
+#
+#    You should have received a copy of the GNU Affero General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+import stock_planning
+import wizard
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+

=== added file 'stock_planning/__openerp__.py'
--- stock_planning/__openerp__.py	1970-01-01 00:00:00 +0000
+++ stock_planning/__openerp__.py	2014-05-20 13:49:41 +0000
@@ -0,0 +1,251 @@
+# -*- coding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution
+#    Copyright (C) 2004-2010 Tiny SPRL (<http://tiny.be>).
+#    Copyright (C) 2014 credativ Ltd (<http://credativ.co.uk>).
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU Affero General Public License as
+#    published by the Free Software Foundation, either version 3 of the
+#    License, or (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU Affero General Public License for more details.
+#
+#    You should have received a copy of the GNU Affero General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+{
+    'name': 'Master Procurement Schedule',
+    'version': '2.0.0',
+    'author': 'OpenERP SA and Grzegorz Grzelak (OpenGLOBE) and credativ Ltd',
+    'website' : 'http://credativ.co.uk',
+    'category' : 'Manufacturing',
+    'images': ['images/master_procurement_schedule.jpeg','images/sales_forecast.jpeg','images/stock_planning_line.jpeg','images/stock_sales_period.jpeg'],
+    'depends': ['crm', 'stock','sale'],
+    'description': """
+This module is ported from version 6.1 revno 7902.
+
+MPS allows to create a manual procurement plan apart of the normal MRP scheduling, which works automatically based on minimum stock rules.
+======================================================
+
+Quick Glossary:
+---------------
+    - Stock Period - the time boundaries (between Start Date and End Date) for
+      your Sales and Stock forecasts and planning
+    - Sales Forecast - the quantity of products you plan to sell during the
+      related Stock Period.
+    - Stock Planning - the quantity of products you plan to purchase or produce
+      for the related Stock Period.
+
+To avoid confusion with the terms used by the ``sale_forecast`` module,
+('Sales Forecast' and 'Planning' are amounts) we use terms 'Stock and Sales
+Forecast' and 'Stock Planning' to emphasize that we use quantity values.
+
+Where to begin:
+---------------
+Using this module is done in three steps:
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+    * Create Stock Periods via the **Warehouse** > **Configuration** > **Stock Periods** menu
+      (Mandatory step)
+    * Create Sale Forecasts fill them with forecast quantities, via the
+      **Sales** > **Sales Forecast** menu. (Optional step but useful for further planning)
+    * Create the actual MPS plan, check the balance and trigger the procurements
+      as required. The actual procurement is the final step for the Stock Period.
+
+Stock Period configuration:
+---------------------------
+You have two menu items for Periods in "**Warehouse** > **Configuration** > **Stock Periods**".
+
+There are:
+~~~~~~~~~~
+    * "Create Stock Periods" - can automatically creating daily, weekly or
+      monthly periods.
+    * 'Stock Periods' - allows to create any type of periods, change the dates
+      and change the state of period.
+
+Creating periods is the first step. You can create custom periods using the 'New'
+button in 'Stock Periods', but it is recommended to use the automatic assistant
+'Create Stock Periods'.
+
+Remarks:
+++++++++
+    - These periods (Stock Periods) are completely distinct from Financial or
+      other periods in the system.
+    - Periods are not assigned to companies (when you use multicompany). Module
+      suppose that you use the same periods across companies. If you wish to use
+      different periods for different companies define them as you wish (they can
+      overlap). Later on in this text will be indications how to use such periods.
+    - When periods are created automatically their start and finish dates are with
+      start hour 00:00:00 and end hour 23:59:00. When you create daily periods they
+      will have start date 31.01.2010 00:00:00 and end date 31.01.2010 23:59:00.
+      It works only in automatic creation of periods. When you create periods
+      manually you have to take care about hours because you can have incorrect
+      values form sales or stock.
+    - If you use overlapping periods for the same product, warehouse and company
+      results can be unpredictable.
+    - If current date doesn't belong to any period or you have holes between
+      periods results can be unpredictable.
+
+Sales Forecasts configuration:
+------------------------------
+You have few menus for Sales forecast in "**Sales** > **Sales Forecasts**":
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+    - "Create Sales Forecasts" - can automatically create forecast lines
+      according to your needs
+    - 'Sales Forecasts' - for managing the Sales forecasts
+
+Menu 'Create Sales Forecasts' creates Forecasts for products from selected
+Category, for selected Period and for selected Warehouse.
+It is also possible to copy the previous forecast.
+
+Remarks:
+++++++++
+    - This tool doesn't duplicate lines if you already have an entry for the same
+      Product, Period, Warehouse, created or validated by the same user. If you
+      wish to create another forecast, if relevant lines exists you have to do it
+      manually as described below.
+    - When created lines are validated by someone else you can use this tool to
+      create another line for the same Period, Product and Warehouse.
+    - When you choose 'Copy Last Forecast', created line take quantity and other
+      settings from your (validated by you or created by you if not validated yet)
+      forecast which is for last period before period of created forecast.
+
+On 'Sales Forecast' form mainly you have to enter a forecast quantity in
+'Product Quantity'. Further calculation can work for draft forecasts. But
+validation can save your data against any accidental changes. You can click
+'Validate' button but it is not mandatory.
+
+Instead of forecast quantity you may enter the amount of forecast sales via the
+'Product Amount' field. The system will count quantity from amount according to
+Sale price of the Product.
+
+All values on the form are expressed in unit of measure selected on form. You can
+select a unit of measure from the default category or from secondary category.
+When you change unit of measure the forecast product quantity will be re-computed
+according to new UoM.
+
+To work out your Sale Forecast you can use the 'Sales History' of the product.
+You have to enter parameters to the top and left of this table and system will
+count sale quantities according to these parameters. So you can get results for
+a given sales team or period.
+
+
+MPS or Procurement Planning:
+----------------------------
+An MPS planning consists in Stock Planning lines, used to analyze and possibly
+drive the procurement of products for each relevant Stock Period and Warehouse.
+
+The menu is located in "**Warehouse** > **Schedulers** > **Master Procurement Schedule**"
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+    - "Create Stock Planning Lines" - a wizard to help automatically create many
+      planning lines
+    - 'Master Procurement Schedule' - management of your planning lines
+
+Similarly to the way Sales forecast serves to define your sales planning, the MPS
+lets you plan your procurements (Purchase/Manufacturing).You can quickly populate
+the MPS with the 'Create Stock Planning Lines' wizard, and then proceed to review
+them via the 'Master Procurement Schedule' menu.
+
+The 'Create Stock Planning Lines' wizard lets you to quickly create all MPS lines
+for a given Product Category, and a given Period and Warehouse.When you enable
+the 'All Products with Forecast' option of the wizard, the system creates lines
+for all products having sales forecast for selected Period and Warehouse (the
+selected Category will be ignored in this case).
+
+Under menu 'Master Procurement Schedule' you will usually change the 'Planned Out'
+and 'Planned In' quantities and observe the resulting 'Stock Simulation' value
+to decide if you need to procure more products for the given Period. 'Planned Out'
+will be initially based on 'Warehouse Forecast' which is the sum of all outgoing
+stock moves already planned for the Period and Warehouse. Of course you can alter
+this value to provide your own quantities. It is not necessary to have any forecast.
+'Planned In' quantity is used to calculate field 'Incoming Left' which is the
+quantity to be procured to reach the 'Stock Simulation' at the end of Period. You
+can compare 'Stock Simulation' quantity to minimum stock rules visible on the form.
+And you can plan different quantity than in Minimum Stock Rules. Calculations are
+done for whole Warehouse by default, if you want to see values for Stock location
+of calculated warehouse you can check 'Stock Location Only'.
+
+When you are satisfied with the 'Planned Out', 'Planned In' and end of period
+'Stock Simulation', you can click on 'Procure Incoming Left' to create a
+procurement for the 'Incoming Left' quantity. You can decide if procurement will
+go to the to Stock or Input location of the Warehouse.
+
+If you don't want to Produce or Buy the product but just transfer the calculated
+quantity from another warehouse you can click 'Supply from Another Warehouse'
+(instead of 'Procure Incoming Left') and the system will create the appropriate
+picking list (stock moves). You can choose to take the goods from the Stock or
+the Output location of the source warehouse. Destination location (Stock or Input)
+in the destination warehouse will be taken as for the procurement case.
+
+To see update the quantities of 'Confirmed In', 'Confirmed Out', 'Confirmed In
+Before', 'Planned Out Before' and 'Stock Simulation' you can press 'Calculate
+Planning'.
+
+All values on the form are expressed in unit of measure selected on form. You can
+select one of unit of measure from default category or from secondary category.
+When you change unit of measure the editable quantities will be re-computed
+according to new UoM. The others will be updated after pressing 'Calculate Planning'.
+
+Computation of Stock Simulation quantities:
+-------------------------------------------
+The Stock Simulation value is the estimated stock quantity at the end of the
+period. The calculation always starts with the real stock on hand at the beginning
+of the current period, then adds or subtracts the computed quantities.
+
+When you are in the same period (current period is the same as calculated) Stock Simulation is calculated as follows:
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+**Stock Simulation =** Stock of beginning of current Period - Planned Out + Planned In
+
+When you calculate period next to current:
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+**Stock Simulation =** Stock of beginning of current Period - Planned Out of current Period + Confirmed In of current Period  (incl. Confirmed Incoming) - Planned Out of calculated Period + Planned In of calculated Period .
+
+As you see the calculated Period is taken the same way as in previous case, but
+the calculation in the current Period is a little bit different. First you should
+note that system takes for only Confirmed moves for the current period. This means
+that you should complete the planning and procurement of the current Period before
+going to the next one.
+
+When you plan for future Periods:
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+**Stock Simulation =** Stock of beginning of current Period - Sum of Planned Out of Periods before calculated + Sum of Confirmed In of Periods before calculated (incl. Confirmed Incoming) - Planned Out of calculated Period + Planned In of calculated Period.
+
+Here 'Periods before calculated' designates all periods starting with the current
+until the period before the one being calculated.
+
+Remarks:
+++++++++
+    - Remember to make the proceed with the planning of each period in chronological
+      order, otherwise the numbers will not reflect the reality
+    - If you planned for future periods and find that real Confirmed Out is larger
+      than Planned Out in some periods before, you can repeat Planning and make
+      another procurement. You should do it in the same planning line. If you
+      create another planning line the suggestions can be wrong.
+    - When you wish to work with different periods for some products, define two
+      kinds of periods (e.g. Weekly and Monthly) and use them for different
+      products. Example: If you use always Weekly periods for Product A, and
+      Monthly periods for Product B all calculations will work correctly. You
+      can also use different kind of periods for the same product from different
+      warehouse or companies. But you cannot use overlapping periods for the same
+      product, warehouse and company because results can be unpredictable. The
+      same applies to Forecasts lines.
+""",
+    'data': [
+        'security/stock_planning_security.xml',
+        'security/ir.model.access.csv',
+        'stock_planning_view.xml',
+        'wizard/stock_planning_create_periods_view.xml',
+        'wizard/stock_planning_forecast_view.xml',
+        'wizard/stock_planning_createlines_view.xml',
+    ],
+    #'test': ['test/stock_planning.yml'],
+    'auto_install': False,
+    'installable': True,
+}
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+

=== added directory 'stock_planning/i18n'
=== added file 'stock_planning/i18n/ar.po'
--- stock_planning/i18n/ar.po	1970-01-01 00:00:00 +0000
+++ stock_planning/i18n/ar.po	2014-05-20 13:49:41 +0000
@@ -0,0 +1,1423 @@
+# Arabic translation for openobject-addons
+# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
+# This file is distributed under the same license as the openobject-addons package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2012.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-02-08 00:37+0000\n"
+"PO-Revision-Date: 2012-01-17 03:05+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Arabic <ar@xxxxxx>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2012-10-30 05:29+0000\n"
+"X-Generator: Launchpad (build 16206)\n"
+
+#. module: stock_planning
+#: code:addons/stock_planning/wizard/stock_planning_createlines.py:73
+#, python-format
+msgid ""
+"No forecasts for selected period or no products in selected category !"
+msgstr "لا يوجد توقعات للفترة المحددة او لا يوجد منتجات في التصنيف المحدد !"
+
+#. module: stock_planning
+#: help:stock.planning,stock_only:0
+msgid ""
+"Check to calculate stock location of selected warehouse only. If not "
+"selected calculation is made for input, stock and output location of "
+"warehouse."
+msgstr ""
+"تحقق لحساب مكان المخزون للمستودع المحدد. اذا لم يكن الحساب المحدد تم "
+"للمدخلات, والمخزون ومكان المخرجات للمستودع."
+
+#. module: stock_planning
+#: field:stock.planning,maximum_op:0
+msgid "Maximum Rule"
+msgstr "الحد الاقصى للقاعدة"
+
+#. module: stock_planning
+#: view:stock.planning:0
+#: view:stock.sale.forecast:0
+msgid "Group By..."
+msgstr "تجميع حسب..."
+
+#. module: stock_planning
+#: help:stock.sale.forecast,product_amt:0
+msgid ""
+"Forecast value which will be converted to Product Quantity according to "
+"prices."
+msgstr "قيمة المستودع التي ستحول الى كمية المنتج طبقًا للاسعار."
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:626
+#: code:addons/stock_planning/stock_planning.py:670
+#, python-format
+msgid "Incoming Left must be greater than 0 !"
+msgstr "يجب ان يكون المتروك الاتي اكبر من 0 !"
+
+#. module: stock_planning
+#: help:stock.planning,outgoing_before:0
+msgid ""
+"Planned Out in periods before calculated. Between start date of current "
+"period and one day before start of calculated period."
+msgstr ""
+"المخطط له في الفترات قبل حسابه. بين تاريخ البداية للفترة الحالية ويوم واحد "
+"قبل بداية الفترة المحسوبة."
+
+#. module: stock_planning
+#: help:stock.sale.forecast.createlines,warehouse_id:0
+msgid ""
+"Warehouse which forecasts will concern. If during stock planning you will "
+"need sales forecast for all warehouses choose any warehouse now."
+msgstr ""
+"المستودع الذي سيهتم به التوقع. اذا كان خلال تخطيط المخزون ستحتاج الى مستودع "
+"المبيعات لكل المستودعات تختار اي مستودع الان."
+
+#. module: stock_planning
+#: field:stock.planning,outgoing_left:0
+msgid "Expected Out"
+msgstr "متوقع من"
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid " "
+msgstr " "
+
+#. module: stock_planning
+#: field:stock.planning,incoming_left:0
+msgid "Incoming Left"
+msgstr "المتروكات الآتية"
+
+#. module: stock_planning
+#: view:stock.sale.forecast.createlines:0
+msgid "Create Forecasts Lines"
+msgstr "انشيء خطوط التوقعات"
+
+#. module: stock_planning
+#: help:stock.planning,outgoing:0
+msgid "Quantity of all confirmed outgoing moves in calculated Period."
+msgstr "كمية كل التحركات الخارجة المؤكدة في الفترة المحسوبة."
+
+#. module: stock_planning
+#: view:stock.period.createlines:0
+msgid "Create Daily Periods"
+msgstr "انشيء فترات يومية"
+
+#. module: stock_planning
+#: view:stock.planning:0
+#: field:stock.planning,company_id:0
+#: field:stock.planning.createlines,company_id:0
+#: view:stock.sale.forecast:0
+#: field:stock.sale.forecast,company_id:0
+#: field:stock.sale.forecast.createlines,company_id:0
+msgid "Company"
+msgstr "شركة"
+
+#. module: stock_planning
+#: help:stock.planning,warehouse_forecast:0
+msgid ""
+"All sales forecasts for selected Warehouse of selected Product during "
+"selected Period."
+msgstr ""
+"كل توقعات المبيعات للمستودع المحدد للمنتج المحدد خلال الفترة المحددة."
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Minimum Stock Rule Indicators"
+msgstr "مؤشرات الحد الأدنى لقاعدة المخزون"
+
+#. module: stock_planning
+#: help:stock.sale.forecast.createlines,period_id:0
+msgid "Period which forecasts will concern."
+msgstr "الفترة التي ستركز عليها التوقعات"
+
+#. module: stock_planning
+#: field:stock.planning,stock_only:0
+msgid "Stock Location Only"
+msgstr "مكان المخزون فقط"
+
+#. module: stock_planning
+#: help:stock.planning,already_out:0
+msgid ""
+"Quantity which is already dispatched out of this warehouse in current period."
+msgstr "الكمية التي بالفعل ارسلت خارج هذا المستودع في الفترة الحالية."
+
+#. module: stock_planning
+#: field:stock.planning,incoming:0
+msgid "Confirmed In"
+msgstr "مؤكد في"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Current Period Situation"
+msgstr "موقف الفترة الحالية"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_stock_period_createlines_form
+msgid ""
+"This wizard helps with the creation of stock planning periods. These periods "
+"are independent of financial periods. If you need periods other than day-, "
+"week- or month-based, you may also add then manually."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period.createlines:0
+msgid "Create Monthly Periods"
+msgstr "إنشاء فترات شهرية"
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_period_createlines
+msgid "stock.period.createlines"
+msgstr "المخزون.الفترة.خطوط الانشاء"
+
+#. module: stock_planning
+#: field:stock.planning,outgoing_before:0
+msgid "Planned Out Before"
+msgstr "يعتزم الخروج قبل"
+
+#. module: stock_planning
+#: field:stock.planning.createlines,forecasted_products:0
+msgid "All Products with Forecast"
+msgstr "كل المنتجات مع التوقعات"
+
+#. module: stock_planning
+#: help:stock.planning,maximum_op:0
+msgid "Maximum quantity set in Minimum Stock Rules for this Warehouse"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Periods :"
+msgstr "الفترات:"
+
+#. module: stock_planning
+#: help:stock.planning,procure_to_stock:0
+msgid ""
+"Check to make procurement to stock location of selected warehouse. If not "
+"selected procurement will be made into input location of warehouse."
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,already_in:0
+msgid ""
+"Quantity which is already picked up to this warehouse in current period."
+msgstr "الكمية المخُختارة بالفعل لهذا المستودع في الفترة الحالية."
+
+#. module: stock_planning
+#: code:addons/stock_planning/wizard/stock_planning_forecast.py:60
+#, python-format
+msgid "No products in selected category !"
+msgstr "لا يوجد منتجات في التصنيف المحدد !"
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Stock and Sales Forecast"
+msgstr "توقع المخزون والمبيعات"
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_sale_forecast
+msgid "stock.sale.forecast"
+msgstr "مخزون.البيع.التوقع"
+
+#. module: stock_planning
+#: field:stock.planning,to_procure:0
+msgid "Planned In"
+msgstr "المخطط له في"
+
+#. module: stock_planning
+#: field:stock.planning,stock_simulation:0
+msgid "Stock Simulation"
+msgstr "مشابه للمخزون"
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_planning_createlines
+msgid "stock.planning.createlines"
+msgstr "المخزون.التخطيط.خطوط الانشاء"
+
+#. module: stock_planning
+#: help:stock.planning,incoming_before:0
+msgid ""
+"Confirmed incoming in periods before calculated (Including Already In). "
+"Between start date of current period and one day before start of calculated "
+"period."
+msgstr ""
+"المؤكد الآتي في الفترات قبل الحساب (متضمنه فيها بالفعل). بين تاريخ البداية "
+"للفترة الحالية و قبل البداية بيوم من الفترة المحسوبة."
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Search  Sales Forecast"
+msgstr "أبحث عن توقع للمبيعات"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period5_per_user:0
+msgid "This User Period5"
+msgstr "فترة هذا المستخدم 5"
+
+#. module: stock_planning
+#: help:stock.planning,history:0
+msgid "History of procurement or internal supply of this planning line."
+msgstr "سجل المشتريات او التزيد الداخلي لخط التخطيط هذا."
+
+#. module: stock_planning
+#: help:stock.planning,company_forecast:0
+msgid ""
+"All sales forecasts for whole company (for all Warehouses) of selected "
+"Product during selected Period."
+msgstr ""
+"كل التوقعات للمبيعات لكل الشركة (لكل المستودعات) للمنتج المحدد خلال الفترة "
+"المحددة."
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_per_user:0
+msgid "This User Period1"
+msgstr "فترة هذا المستخدم 1"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_per_user:0
+msgid "This User Period3"
+msgstr "فترة هذا المستخدم 3"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Stock Planning"
+msgstr "التخطيط للمخزون"
+
+#. module: stock_planning
+#: field:stock.planning,minimum_op:0
+msgid "Minimum Rule"
+msgstr "قاعدة الحد الأدنى"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Procure Incoming Left"
+msgstr "عطلة الشراء القادمة"
+
+#. module: stock_planning
+#: view:stock.planning.createlines:0
+#: view:stock.sale.forecast.createlines:0
+msgid "Create"
+msgstr "أنشئ"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_view_stock_planning_form
+#: model:ir.ui.menu,name:stock_planning.menu_stock_planning
+#: model:ir.ui.menu,name:stock_planning.menu_stock_planning_manual
+#: view:stock.planning:0
+msgid "Master Procurement Schedule"
+msgstr "جدول الاستاذ للمشتريات"
+
+#. module: stock_planning
+#: field:stock.planning,line_time:0
+msgid "Past/Future"
+msgstr "ماضي/مستقبل"
+
+#. module: stock_planning
+#: view:stock.period:0
+#: field:stock.period,state:0
+#: field:stock.planning,state:0
+#: field:stock.sale.forecast,state:0
+msgid "State"
+msgstr "حالة"
+
+#. module: stock_planning
+#: help:stock.sale.forecast.createlines,product_categ_id:0
+msgid "Product Category of products which created forecasts will concern."
+msgstr "تصنيف المنتج للمنتجات التي ستركز على التوقعات المُنشأه."
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_period
+msgid "stock period"
+msgstr "فترة المخزون"
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_sale_forecast_createlines
+msgid "stock.sale.forecast.createlines"
+msgstr "المخزون.البيع.التوقع.خطوط الانشاء"
+
+#. module: stock_planning
+#: field:stock.planning,warehouse_id:0
+#: field:stock.planning.createlines,warehouse_id:0
+#: field:stock.sale.forecast,warehouse_id:0
+#: field:stock.sale.forecast.createlines,warehouse_id:0
+msgid "Warehouse"
+msgstr "المستودع"
+
+#. module: stock_planning
+#: help:stock.planning,stock_simulation:0
+msgid ""
+"Stock simulation at the end of selected Period.\n"
+" For current period it is: \n"
+"Initial Stock - Already Out + Already In - Expected Out + Incoming Left.\n"
+"For periods ahead it is: \n"
+"Initial Stock - Planned Out Before + Incoming Before - Planned Out + Planned "
+"In."
+msgstr ""
+"التثمين للمخزون في نهاية الفترة المحددة.\n"
+"عن الفترة الحالية هو:\n"
+"المخزون  الأولي - بالفعل + بالفعل في - من المتوقع نفاد +المتبقي الوارد.\n"
+"لفترات قدما هو:\n"
+"المخزون الأولي - خارج المخطط قبل + واردة قبل - خارج المخطط + المقررة في."
+
+#. module: stock_planning
+#: help:stock.sale.forecast,analyze_company:0
+msgid "Check this box to see the sales for whole company."
+msgstr "تحقق من هذه الخانة لترى المبيعات للشركة ككل."
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Per Department :"
+msgstr "لكل قسم :"
+
+#. module: stock_planning
+#: field:stock.planning,incoming_before:0
+msgid "Incoming Before"
+msgstr "الاتي من قبل"
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:641
+#, python-format
+msgid ""
+" Procurement created by MPS for user: %s   Creation Date: %s                 "
+"                        \n"
+" For period: %s                                         \n"
+" according to state:                                         \n"
+" Warehouse Forecast: %s                                         \n"
+" Initial Stock: %s                                         \n"
+" Planned Out: %s    Planned In: %s                                         \n"
+" Already Out: %s    Already In: %s                                         \n"
+" Confirmed Out: %s    Confirmed In: %s                                       "
+"  \n"
+" Planned Out Before: %s    Confirmed In Before: %s                           "
+"              \n"
+" Expected Out: %s    Incoming Left: %s                                       "
+"  \n"
+" Stock Simulation: %s    Minimum stock: %s"
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:626
+#: code:addons/stock_planning/stock_planning.py:670
+#: code:addons/stock_planning/stock_planning.py:672
+#: code:addons/stock_planning/stock_planning.py:674
+#: code:addons/stock_planning/wizard/stock_planning_createlines.py:73
+#: code:addons/stock_planning/wizard/stock_planning_forecast.py:60
+#, python-format
+msgid "Error !"
+msgstr "خطأ !"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_user_id:0
+msgid "This User"
+msgstr "هذا المستخدم"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Forecasts"
+msgstr "الخطة"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Supply from Another Warehouse"
+msgstr "تزويد من مستودع اخر"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Calculate Planning"
+msgstr "قم بحساب التخطيط"
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:146
+#, python-format
+msgid "Invalid action !"
+msgstr "إجراء خاطئ!"
+
+#. module: stock_planning
+#: help:stock.planning,stock_start:0
+msgid "Stock quantity one day before current period."
+msgstr "كمية المخزون لليوم الواحد قبل الفتره الحالية"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Procurement history"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,product_uom:0
+msgid ""
+"Unit of Measure used to show the quantities of stock calculation.You can use "
+"units from default category or from second category (UoS category)."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period.createlines:0
+msgid "Create Weekly Periods"
+msgstr "انشيء فترات اسبوعية"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_stock_period_form
+msgid ""
+"Stock periods are used for stock planning. Stock periods are independent of "
+"account periods. You can use wizard for creating periods and review them "
+"here."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Calculated Period Simulation"
+msgstr "الظاهر للفترة المحسوبة"
+
+#. module: stock_planning
+#: view:stock.period.createlines:0
+msgid "Cancel"
+msgstr "إلغاء"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period4_per_user:0
+msgid "This User Period4"
+msgstr "مستخدم الفترة هذه 4"
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Stock and Sales Period"
+msgstr "فترة المخزون والمبيعات"
+
+#. module: stock_planning
+#: field:stock.planning,company_forecast:0
+msgid "Company Forecast"
+msgstr "توقع الشركة"
+
+#. module: stock_planning
+#: help:stock.planning,minimum_op:0
+msgid "Minimum quantity set in Minimum Stock Rules for this Warehouse"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Per User :"
+msgstr "لكل مستخدم :"
+
+#. module: stock_planning
+#: help:stock.planning.createlines,warehouse_id:0
+msgid "Warehouse which planning will concern."
+msgstr "المستودع الذي سيركز عليه التخطيط"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,user_id:0
+msgid "Created/Validated by"
+msgstr "أُنشأت/التحقق من صلاحيتها بواسطة"
+
+#. module: stock_planning
+#: field:stock.planning,warehouse_forecast:0
+msgid "Warehouse Forecast"
+msgstr "توقع المستودع"
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:674
+#, python-format
+msgid ""
+"You must specify a Source Warehouse different than calculated (destination) "
+"Warehouse !"
+msgstr "يجب ان تخصص مستودع للمصدر مختلف عن المستودع المحسوب (التخصيص) !"
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:146
+#, python-format
+msgid "Cannot delete a validated sales forecast!"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period5_per_company:0
+msgid "This Company Period5"
+msgstr "فترة هذه الشركة 5"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,product_uom:0
+msgid "Product UoM"
+msgstr "وحدة القياس للمنتج"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_per_company:0
+msgid "This Company Period1"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_per_company:0
+msgid "This Company Period2"
+msgstr "فترة هذه الشركة 2"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_per_company:0
+msgid "This Company Period3"
+msgstr "فترة هذه الشركة 3"
+
+#. module: stock_planning
+#: field:stock.period,date_start:0
+#: field:stock.period.createlines,date_start:0
+msgid "Start Date"
+msgstr "تاريخ البداية"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_per_user:0
+msgid "This User Period2"
+msgstr "مستخدم هذه الفترة 2"
+
+#. module: stock_planning
+#: field:stock.planning,confirmed_forecasts_only:0
+msgid "Validated Forecasts"
+msgstr "التحقق من التوقعات"
+
+#. module: stock_planning
+#: help:stock.planning.createlines,product_categ_id:0
+msgid ""
+"Planning will be created for products from Product Category selected by this "
+"field. This field is ignored when you check \"All Forecasted Product\" box."
+msgstr ""
+"سيتم انشاء التوقعات للمنتجات من تصنيف المنتج المحدد من هذا الحقل. تم تجاهل "
+"هذا الحقل عند تحققك من خانة \"كل المنتجات المتوقعة\"."
+
+#. module: stock_planning
+#: field:stock.planning,planned_outgoing:0
+msgid "Planned Out"
+msgstr "تخطيط الخارج"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,product_qty:0
+msgid "Forecast Quantity"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Forecast"
+msgstr "توقّع"
+
+#. module: stock_planning
+#: selection:stock.period,state:0
+#: selection:stock.planning,state:0
+#: selection:stock.sale.forecast,state:0
+msgid "Draft"
+msgstr "مسودة"
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Closed"
+msgstr "مغلق"
+
+#. module: stock_planning
+#: view:stock.planning:0
+#: view:stock.sale.forecast:0
+msgid "Warehouse "
+msgstr "مستودع "
+
+#. module: stock_planning
+#: help:stock.sale.forecast,product_uom:0
+msgid ""
+"Unit of Measure used to show the quantities of stock calculation.You can use "
+"units form default category or from second category (UoS category)."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Planning and Situation for Calculated Period"
+msgstr "التخطيط والموقف للفترة المحسوبة"
+
+#. module: stock_planning
+#: help:stock.planning,planned_outgoing:0
+msgid ""
+"Enter planned outgoing quantity from selected Warehouse during the selected "
+"Period of selected Product. To plan this value look at Confirmed Out or "
+"Sales Forecasts. This value should be equal or greater than Confirmed Out."
+msgstr ""
+"ادخل الكمية المخططة الخارجة من المستودع المحدد خلال الفترة المحددةللمنتج "
+"المحدد. لتخطط لهذه القيمة انظر الى الخارج المؤكد او توقعات المبيعات. يجب ان "
+"تكون هذه القيمة مساوية او اكبر من الخارج المؤكد."
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Current Periods"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Internal Supply"
+msgstr "تزويد خارجي"
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:724
+#, python-format
+msgid "%s Pick List %s (%s,  %s) %s %s \n"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_stock_sale_forecast_createlines_form
+#: model:ir.ui.menu,name:stock_planning.menu_stock_sale_forecast_createlines
+msgid "Create Sales Forecasts"
+msgstr "انشأ توقعات للمبيعات"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period4_id:0
+msgid "Period4"
+msgstr "الفترة 4"
+
+#. module: stock_planning
+#: field:stock.period,name:0
+#: field:stock.period.createlines,name:0
+msgid "Period Name"
+msgstr "اسم الفترة"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_id:0
+msgid "Period2"
+msgstr "الفترة 2"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_id:0
+msgid "Period3"
+msgstr "الفترة 3"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_id:0
+msgid "Period1"
+msgstr "الفترة 1"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_stock_planning_createlines_form
+msgid ""
+"This wizard helps create MPS planning lines for a given selected period and "
+"warehouse, so you don't have to create them one by one. The wizard doesn't "
+"duplicate lines if they already exist for this selection."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,outgoing:0
+msgid "Confirmed Out"
+msgstr "الخارج المؤكد"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_stock_planning_createlines_form
+#: model:ir.ui.menu,name:stock_planning.menu_stock_planning_createlines
+#: view:stock.planning.createlines:0
+msgid "Create Stock Planning Lines"
+msgstr "انشيء خطوط التخطيط للمخزون"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "General Info"
+msgstr "معلومات عامة"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_view_stock_sale_forecast_form
+msgid "Sales Forecast"
+msgstr "توقع المبيعات"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_per_warehouse:0
+msgid "This Warehouse Period1"
+msgstr "فترة هذا المستودع 1"
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Sales History"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,supply_warehouse_id:0
+msgid "Source Warehouse"
+msgstr "مستودع المصدر"
+
+#. module: stock_planning
+#: help:stock.sale.forecast,product_qty:0
+msgid "Forecast Product quantity."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,stock_supply_location:0
+msgid "Stock Supply Location"
+msgstr "مكان تزويد المخزون"
+
+#. module: stock_planning
+#: help:stock.period.createlines,date_stop:0
+msgid "Ending date for planning period."
+msgstr "تاريخ انتهاء فترة التخطيط."
+
+#. module: stock_planning
+#: help:stock.planning.createlines,forecasted_products:0
+msgid ""
+"Check this box to create planning for all products having any forecast for "
+"selected Warehouse and Period. Product Category field will be ignored."
+msgstr ""
+"تحقق من هذه الخانة لانشاء التخطيط لكل المنتجات بأي توقع للمستودع والفترة "
+"المحددة. سيتم تجاهل حقل التصنيف للمنتج."
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:632
+#: code:addons/stock_planning/stock_planning.py:678
+#: code:addons/stock_planning/stock_planning.py:702
+#, python-format
+msgid "MPS(%s) %s"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,already_in:0
+msgid "Already In"
+msgstr "بالفعل في"
+
+#. module: stock_planning
+#: field:stock.planning,product_uom_categ:0
+#: field:stock.planning,product_uos_categ:0
+#: field:stock.sale.forecast,product_uom_categ:0
+msgid "Product UoM Category"
+msgstr "تصنيف وحدة قياس المنتج"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_view_stock_sale_forecast_form
+msgid ""
+"This quantity sales forecast is an indication for Stock Planner to make "
+"procurement manually or to complement automatic procurement. You can use "
+"manual procurement with this forecast when some periods are exceptional for "
+"usual minimum stock rules."
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_view_stock_planning_form
+msgid ""
+"The Master Procurement Schedule can be the main driver for warehouse "
+"replenishment, or can complement the automatic MRP scheduling (minimum stock "
+"rules, etc.).\n"
+"Each MPS line gives you a pre-computed overview of the incoming and outgoing "
+"quantities of a given product for a given Stock Period in a given Warehouse, "
+"based on the current and future stock levels,\n"
+"as well as the planned stock moves. The forecast quantities can be altered "
+"manually, and when satisfied with resulting (simulated) Stock quantity, you "
+"can trigger the procurement of what is missing to reach your desired "
+"quantities"
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:685
+#, python-format
+msgid ""
+"Pick created from MPS by user: %s   Creation Date: %s                        "
+"             \n"
+"For period: %s   according to state:                                     \n"
+" Warehouse Forecast: %s                                     \n"
+" Initial Stock: %s                                     \n"
+" Planned Out: %s  Planned In: %s                                     \n"
+" Already Out: %s  Already In: %s                                     \n"
+" Confirmed Out: %s   Confirmed In: %s                                     \n"
+" Planned Out Before: %s   Confirmed In Before: %s                            "
+"         \n"
+" Expected Out: %s   Incoming Left: %s                                     \n"
+" Stock Simulation: %s   Minimum stock: %s "
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,period_id:0
+#: field:stock.planning.createlines,period_id:0
+#: field:stock.sale.forecast,period_id:0
+#: field:stock.sale.forecast.createlines,period_id:0
+msgid "Period"
+msgstr "فترة"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,product_uos_categ:0
+msgid "Product UoS Category"
+msgstr "تصنيف وحدة مبيعات المنتج"
+
+#. module: stock_planning
+#: field:stock.planning,active_uom:0
+#: field:stock.sale.forecast,active_uom:0
+msgid "Active UoM"
+msgstr "فعٍل وحدة القياس"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Search Stock Planning"
+msgstr "ابحث عن تخطيط المخزون"
+
+#. module: stock_planning
+#: field:stock.sale.forecast.createlines,copy_forecast:0
+msgid "Copy Last Forecast"
+msgstr "انسخ اخر توقع"
+
+#. module: stock_planning
+#: help:stock.sale.forecast,product_id:0
+msgid "Shows which product this forecast concerns."
+msgstr "وتبين اي منتج يركز عليه هذا التوقع"
+
+#. module: stock_planning
+#: selection:stock.planning,state:0
+msgid "Done"
+msgstr "تم"
+
+#. module: stock_planning
+#: field:stock.period.createlines,period_ids:0
+msgid "Periods"
+msgstr "فترات"
+
+#. module: stock_planning
+#: model:ir.ui.menu,name:stock_planning.menu_stock_period_creatlines
+msgid "Create Stock Periods"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period:0
+#: selection:stock.period,state:0
+#: view:stock.planning.createlines:0
+#: view:stock.sale.forecast.createlines:0
+msgid "Close"
+msgstr "إغلاق"
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+#: selection:stock.sale.forecast,state:0
+msgid "Validated"
+msgstr "تم التحقق"
+
+#. module: stock_planning
+#: view:stock.period:0
+#: selection:stock.period,state:0
+msgid "Open"
+msgstr "فتح"
+
+#. module: stock_planning
+#: help:stock.sale.forecast.createlines,copy_forecast:0
+msgid "Copy quantities from last Stock and Sale Forecast."
+msgstr "انسخ الكميات من اخر مخزون وتوقع البيع."
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_per_dept:0
+msgid "This Dept Period1"
+msgstr "فترة هذا القسم 1"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_per_dept:0
+msgid "This Dept Period3"
+msgstr "فترة  هذا القسم 3"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_per_dept:0
+msgid "This Dept Period2"
+msgstr "فترة هذا القسم 2"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period5_per_dept:0
+msgid "This Dept Period5"
+msgstr "فترة هذا القسم 5"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period4_per_dept:0
+msgid "This Dept Period4"
+msgstr "فترة هذا القسم 4"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_per_warehouse:0
+msgid "This Warehouse Period2"
+msgstr "فترة هذا المستودع 2"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_per_warehouse:0
+msgid "This Warehouse Period3"
+msgstr "فترة هذا المستودع 3"
+
+#. module: stock_planning
+#: help:stock.planning,stock_supply_location:0
+msgid ""
+"Check to supply from Stock location of Supply Warehouse. If not checked "
+"supply will be made from Output location of Supply Warehouse. Used in "
+"'Supply from Another Warehouse' with Supply Warehouse."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,create_uid:0
+msgid "Responsible"
+msgstr "مسئول"
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Default UOM"
+msgstr "وحدة قياس افتراضية"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period4_per_warehouse:0
+msgid "This Warehouse Period4"
+msgstr "فترة هذا المستودع 4"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period5_per_warehouse:0
+msgid "This Warehouse Period5"
+msgstr "فترة هذا المستودع 5"
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Current"
+msgstr "الحالي"
+
+#. module: stock_planning
+#: help:stock.planning,supply_warehouse_id:0
+msgid ""
+"Warehouse used as source in supply pick move created by 'Supply from Another "
+"Warehouse'."
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_planning
+msgid "stock.planning"
+msgstr "تخطيط.المخزون"
+
+#. module: stock_planning
+#: help:stock.sale.forecast,warehouse_id:0
+msgid ""
+"Shows which warehouse this forecast concerns. If during stock planning you "
+"will need sales forecast for all warehouses choose any warehouse now."
+msgstr ""
+"وتبين اي مستودع يركز عليه هذا التوقع. اذا كان خلال تخطيط المخزون ستحتاج الى "
+"توقع مبيعات لكل المستودعات تختار اي مستودع الآن."
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:661
+#, python-format
+msgid "%s Procurement (%s,  %s) %s %s \n"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyze_company:0
+msgid "Per Company"
+msgstr "لكل شركة"
+
+#. module: stock_planning
+#: help:stock.planning,to_procure:0
+msgid ""
+"Enter quantity which (by your plan) should come in. Change this value and "
+"observe Stock simulation. This value should be equal or greater than "
+"Confirmed In."
+msgstr ""
+"ادخل الكمية التي(بخطتك) يجب ان تدخل. غير هذه القيمة ولاحظ الظاهر من المخزون. "
+"هذه القيمة يجب ان تكون مساوية او اكثر من المؤكد."
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period4_per_company:0
+msgid "This Company Period4"
+msgstr "فترة هذه الشركة 4"
+
+#. module: stock_planning
+#: help:stock.planning.createlines,period_id:0
+msgid "Period which planning will concern."
+msgstr "الفترة التي سيركز عليها التخطيط."
+
+#. module: stock_planning
+#: field:stock.planning,already_out:0
+msgid "Already Out"
+msgstr "خارج بالفعل"
+
+#. module: stock_planning
+#: help:stock.planning,product_id:0
+msgid "Product which this planning is created for."
+msgstr "المنتج الذي أُنشأ هذا التخطيط من أجله."
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Per Warehouse :"
+msgstr "لكل مستودع:"
+
+#. module: stock_planning
+#: field:stock.planning,history:0
+msgid "Procurement History"
+msgstr "سجل المشتريات"
+
+#. module: stock_planning
+#: help:stock.period.createlines,date_start:0
+msgid "Starting date for planning period."
+msgstr "تاريخ البداية لفترة التخطيط."
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_stock_period_createlines_form
+#: model:ir.actions.act_window,name:stock_planning.action_stock_period_form
+#: model:ir.ui.menu,name:stock_planning.menu_stock_period
+#: model:ir.ui.menu,name:stock_planning.menu_stock_period_main
+#: view:stock.period:0
+#: view:stock.period.createlines:0
+msgid "Stock Periods"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Stock"
+msgstr "مخزون"
+
+#. module: stock_planning
+#: help:stock.planning,incoming:0
+msgid "Quantity of all confirmed incoming moves in calculated Period."
+msgstr "الكمية لكل الآتي المؤكد يتحرك في الفترة المحسوبة."
+
+#. module: stock_planning
+#: field:stock.period,date_stop:0
+#: field:stock.period.createlines,date_stop:0
+msgid "End Date"
+msgstr "تاريخ الإنتهاء"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "No Requisition"
+msgstr "ليست مصادرة"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,name:0
+msgid "Name"
+msgstr "الاسم"
+
+#. module: stock_planning
+#: help:stock.sale.forecast,period_id:0
+msgid "Shows which period this forecast concerns."
+msgstr "وتبين اي فترة يركز عليه هذا التوقع."
+
+#. module: stock_planning
+#: field:stock.planning,product_uom:0
+msgid "UoM"
+msgstr "وحدة القياس"
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Closed Periods"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+#: field:stock.planning,product_id:0
+#: view:stock.sale.forecast:0
+#: field:stock.sale.forecast,product_id:0
+msgid "Product"
+msgstr "المنتج"
+
+#. module: stock_planning
+#: model:ir.ui.menu,name:stock_planning.menu_stock_sale_forecast
+#: model:ir.ui.menu,name:stock_planning.menu_stock_sale_forecast_all
+#: view:stock.sale.forecast:0
+msgid "Sales Forecasts"
+msgstr "توقعات المبيعات"
+
+#. module: stock_planning
+#: field:stock.planning.createlines,product_categ_id:0
+#: field:stock.sale.forecast.createlines,product_categ_id:0
+msgid "Product Category"
+msgstr "فئة المنتج"
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:672
+#, python-format
+msgid "You must specify a Source Warehouse !"
+msgstr "يجب ان تخصص مستودع للمصدر !"
+
+#. module: stock_planning
+#: field:stock.planning,procure_to_stock:0
+msgid "Procure To Stock Location"
+msgstr "تحصيل لمكان المخزون"
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Approve"
+msgstr "إقرار"
+
+#. module: stock_planning
+#: help:stock.planning,period_id:0
+msgid ""
+"Period for this planning. Requisition will be created for beginning of the "
+"period."
+msgstr "الفترة لهذا التخطيط. ستُنشا المصادرة لبداية الفترة."
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:631
+#, python-format
+msgid "MPS planning for %s"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,stock_start:0
+msgid "Initial Stock"
+msgstr "المخزون الاولي"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,product_amt:0
+msgid "Product Amount"
+msgstr "كمية المنتج"
+
+#. module: stock_planning
+#: help:stock.planning,confirmed_forecasts_only:0
+msgid ""
+"Check to take validated forecasts only. If not checked system takes "
+"validated and draft forecasts."
+msgstr ""
+"تحقق لأخذ التوقعات المتحقق منها فقط. اذا لم يتم التحقق منها سيأخذ النظام "
+"التوقعات للسحب ةالمتحقق منها."
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period5_id:0
+msgid "Period5"
+msgstr "الفترة 5"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_warehouse_id:0
+msgid "This Warehouse"
+msgstr "هذا المستودع"
+
+#. module: stock_planning
+#: help:stock.sale.forecast,user_id:0
+msgid "Shows who created this forecast, or who validated."
+msgstr "ويوضح من انشأ هذا التوقع, او من تحقق منه."
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_team_id:0
+msgid "Sales Team"
+msgstr "فريق المبيعات"
+
+#. module: stock_planning
+#: help:stock.planning,incoming_left:0
+msgid ""
+"Quantity left to Planned incoming quantity. This is calculated difference "
+"between Planned In and Confirmed In. For current period Already In is also "
+"calculated. This value is used to create procurement for lacking quantity."
+msgstr ""
+"الكمية المتروكة لكمية الآتي المخطط. تم حسابها باختلاف بين المخطط الداخل "
+"والمؤكد الداخل. للفترة الحالية بالفعل بالداخل تم حسابها ايضًا. هذه القيمة "
+"استخدمت لانشاء المشتريات للكمية المعدمة."
+
+#. module: stock_planning
+#: help:stock.planning,outgoing_left:0
+msgid ""
+"Quantity expected to go out in selected period besides Confirmed Out. As a "
+"difference between Planned Out and Confirmed Out. For current period Already "
+"Out is also calculated"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Calculate Sales History"
+msgstr "احسب سجل المبيعات"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_stock_sale_forecast_createlines_form
+msgid ""
+"This wizard helps create many forecast lines at once. After creating them "
+"you only have to fill in the forecast quantities. The wizard doesn't "
+"duplicate the line when another one exist for the same selection."
+msgstr ""
+
+#~ msgid "This Copmany Period1"
+#~ msgstr "فترة هذه الشركة 1"
+
+#~ msgid "Create Stock and Sales Periods"
+#~ msgstr "انشيء مخزون وفترة مبيعات"
+
+#, python-format
+#~ msgid ""
+#~ "\n"
+#~ " Initial Stock: "
+#~ msgstr ""
+#~ "\n"
+#~ " مخزون أولي: "
+
+#~ msgid "Requisition history"
+#~ msgstr "سجل المصادرة"
+
+#~ msgid ""
+#~ "Warehouse used as source in supply pick move created by 'Supply from Another "
+#~ "Warhouse'."
+#~ msgstr ""
+#~ "أُستخدم المستودع كمصدر في تزويد تحرك الاختيار المُنشأ بواسطة ‘التزويد من "
+#~ "مستودع اخر‘."
+
+#~ msgid ""
+#~ "Chect to make procurement to stock location of selected warehouse. If not "
+#~ "selected procurement will be made into input location of warehouse."
+#~ msgstr ""
+#~ "تحقق لتجعل المشتريات لمكان المخزون للمستودع المحدد. اذا لم يتم تحديده ستُصنع "
+#~ "المشتريات لمكان المدخلات للمستودع."
+
+#, python-format
+#~ msgid "    Confirmed In Before: "
+#~ msgstr "    تم تأكيده من قبل: "
+
+#~ msgid "This Department"
+#~ msgstr "هذا القسم"
+
+#, python-format
+#~ msgid "Pick List "
+#~ msgstr "اختار قائمة "
+
+#, python-format
+#~ msgid "    Incoming Left: "
+#~ msgstr "    العطلة القادمة: "
+
+#, python-format
+#~ msgid "Manual planning for "
+#~ msgstr "التخطيط اليدوي لـ "
+
+#, python-format
+#~ msgid "  Creation Date: "
+#~ msgstr "  تاريخ الانشاء: "
+
+#~ msgid "Creates planning lines for selected period and warehouse."
+#~ msgstr "وينشأ خطوط التخيطي للفترة المحددة والمستودع"
+
+#~ msgid "Maximum quantity set in Minimum Stock Rules for this Warhouse"
+#~ msgstr "اقصى كمية الموضوعه في الحد الادنى لقواعد المخزون للمستودع هذا"
+
+#, python-format
+#~ msgid "Procurement created in MPS by user: "
+#~ msgstr "ـم انشاء المشتريات في مزود تخطيط التصنيع "
+
+#, python-format
+#~ msgid ""
+#~ "\n"
+#~ " Confirmed Out: "
+#~ msgstr ""
+#~ "\n"
+#~ " الخارج المؤكد: "
+
+#~ msgid ""
+#~ "Unit of Measure used to show the quanities of stock calculation.You can use "
+#~ "units form default category or from second category (UoS category)."
+#~ msgstr ""
+#~ "تستخدم وحدة القياس لتبين كميات حساب المخزون. يمكنك استخدام الوحدات من "
+#~ "التصنيف الافتراضي او من التصنيف الثاني (وحدة التصنيف الثاني)."
+
+#~ msgid "Note: Doesn't duplicate existing lines created by you."
+#~ msgstr "لاحظ : لا يوجد تكرار للخطوط المنشأه بواسطتك."
+
+#, python-format
+#~ msgid ""
+#~ "\n"
+#~ " Already Out: "
+#~ msgstr ""
+#~ "\n"
+#~ " خارج بالفعل: "
+
+#, python-format
+#~ msgid ""
+#~ "\n"
+#~ " Expected Out: "
+#~ msgstr ""
+#~ "\n"
+#~ " الخارج المتوقع: "
+
+#~ msgid ""
+#~ "Quantity expected to go out in selected period. As a difference between "
+#~ "Planned Out and Confirmed Out. For current period Already Out is also "
+#~ "calculated"
+#~ msgstr ""
+#~ "الكمية المتوقعه للخروج في الفترة المحددة. كالاختلاف بين الخارج المخطط و "
+#~ "الخارج المؤكد. بالنسبة للفترة الحالي بالفعل خارجة وتم حسابها ايضًا"
+
+#~ msgid "Creates forecast lines for selected warehouse and period."
+#~ msgstr "وينشا خطوط التوقع للمستودع والفترة المحددة."
+
+#, python-format
+#~ msgid ""
+#~ "\n"
+#~ " Planned Out: "
+#~ msgstr ""
+#~ "\n"
+#~ " المخطط الخارج: "
+
+#, python-format
+#~ msgid "Cannot delete Validated Sale Forecasts !"
+#~ msgstr "لا يمكنه حذف توقعات اليع المتحقق منه !"
+
+#, python-format
+#~ msgid "Requisition ("
+#~ msgstr "المصادرة ("
+
+#~ msgid "Create periods for Stock and Sales Planning"
+#~ msgstr "انشيء فترات لتخطيط المبيعات و المخزون"
+
+#, python-format
+#~ msgid "    Already In: "
+#~ msgstr "    بالفعل في : "
+
+#, python-format
+#~ msgid "    Minimum stock: "
+#~ msgstr "    الحد الادني للمخزون : "
+
+#, python-format
+#~ msgid "    Confirmed In: "
+#~ msgstr "    مؤكد في "
+
+#~ msgid "Sales history"
+#~ msgstr "سجل المبيعات"
+
+#~ msgid "Forecasted quantity."
+#~ msgstr "الكمية المتوقعة"
+
+#~ msgid "Product Quantity"
+#~ msgstr "كمية المنتج"
+
+#, python-format
+#~ msgid " according to state:"
+#~ msgstr " طبقًا للحالة:"
+
+#, python-format
+#~ msgid ""
+#~ "\n"
+#~ " Stock Simulation: "
+#~ msgstr ""
+#~ "\n"
+#~ " المخزون الظاهر: "
+
+#, python-format
+#~ msgid "    Planned In: "
+#~ msgstr "    مخطط في: "
+
+#, python-format
+#~ msgid ""
+#~ "\n"
+#~ " Warehouse Forecast: "
+#~ msgstr ""
+#~ "\n"
+#~ " توقع للمستودع: "
+
+#~ msgid ""
+#~ "Check to supply from Stock location of Supply Warehouse. If not checked "
+#~ "supply will be made from Output location of Supply Warehouse. Used in "
+#~ "'Supply from Another Warhouse' with Supply Warehouse."
+#~ msgstr ""
+#~ "تحقق من التزويد من مكان المخزون من مستودع التزويد. اذا لم يتم التحقق منها "
+#~ "فالتزويد سوف يتم من مكان المخرجات لمستودع التزويد. المستخدم في \" التزويد من "
+#~ "مستودع اخر\" مع مستودع التزويد."
+
+#~ msgid "Minimum quantity set in Minimum Stock Rules for this Warhouse"
+#~ msgstr ""
+#~ "الحد الادنى للكمية الموجودة في الحد الادنى لقواعد المخزون لهذا المستودع"
+
+#, python-format
+#~ msgid ""
+#~ "\n"
+#~ "For period: "
+#~ msgstr ""
+#~ "\n"
+#~ "للفترة: "
+
+#, python-format
+#~ msgid "MPS("
+#~ msgstr "تزويد تخطيط التصنيع"
+
+#, python-format
+#~ msgid "Pick created from MPS by user: "
+#~ msgstr "اختار المُنشأ من مزود تخطيط التصنيع بواسطة المستخدم: "
+
+#~ msgid "Stock and Sales Planning Periods"
+#~ msgstr "فترات التخطيط للمبيعات والمخزون"
+
+#, python-format
+#~ msgid ""
+#~ "\n"
+#~ " Planned Out Before: "
+#~ msgstr ""
+#~ "\n"
+#~ " المخطط الخارج من قبل : "
+
+#~ msgid "Stock and Sales Periods"
+#~ msgstr "فترات المبيعات والمخزون"

=== added file 'stock_planning/i18n/bg.po'
--- stock_planning/i18n/bg.po	1970-01-01 00:00:00 +0000
+++ stock_planning/i18n/bg.po	2014-05-20 13:49:41 +0000
@@ -0,0 +1,1187 @@
+# Bulgarian translation for openobject-addons
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the openobject-addons package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-02-08 00:37+0000\n"
+"PO-Revision-Date: 2011-02-11 12:21+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Bulgarian <bg@xxxxxx>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2012-10-30 05:29+0000\n"
+"X-Generator: Launchpad (build 16206)\n"
+
+#. module: stock_planning
+#: code:addons/stock_planning/wizard/stock_planning_createlines.py:73
+#, python-format
+msgid ""
+"No forecasts for selected period or no products in selected category !"
+msgstr ""
+"Няма прогнози за избрания период или няма продукти в избраната категория!"
+
+#. module: stock_planning
+#: help:stock.planning,stock_only:0
+msgid ""
+"Check to calculate stock location of selected warehouse only. If not "
+"selected calculation is made for input, stock and output location of "
+"warehouse."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,maximum_op:0
+msgid "Maximum Rule"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+#: view:stock.sale.forecast:0
+msgid "Group By..."
+msgstr "Групиране по..."
+
+#. module: stock_planning
+#: help:stock.sale.forecast,product_amt:0
+msgid ""
+"Forecast value which will be converted to Product Quantity according to "
+"prices."
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:626
+#: code:addons/stock_planning/stock_planning.py:670
+#, python-format
+msgid "Incoming Left must be greater than 0 !"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,outgoing_before:0
+msgid ""
+"Planned Out in periods before calculated. Between start date of current "
+"period and one day before start of calculated period."
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.sale.forecast.createlines,warehouse_id:0
+msgid ""
+"Warehouse which forecasts will concern. If during stock planning you will "
+"need sales forecast for all warehouses choose any warehouse now."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,outgoing_left:0
+msgid "Expected Out"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid " "
+msgstr " "
+
+#. module: stock_planning
+#: field:stock.planning,incoming_left:0
+msgid "Incoming Left"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast.createlines:0
+msgid "Create Forecasts Lines"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,outgoing:0
+msgid "Quantity of all confirmed outgoing moves in calculated Period."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period.createlines:0
+msgid "Create Daily Periods"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+#: field:stock.planning,company_id:0
+#: field:stock.planning.createlines,company_id:0
+#: view:stock.sale.forecast:0
+#: field:stock.sale.forecast,company_id:0
+#: field:stock.sale.forecast.createlines,company_id:0
+msgid "Company"
+msgstr "Фирма"
+
+#. module: stock_planning
+#: help:stock.planning,warehouse_forecast:0
+msgid ""
+"All sales forecasts for selected Warehouse of selected Product during "
+"selected Period."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Minimum Stock Rule Indicators"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.sale.forecast.createlines,period_id:0
+msgid "Period which forecasts will concern."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,stock_only:0
+msgid "Stock Location Only"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,already_out:0
+msgid ""
+"Quantity which is already dispatched out of this warehouse in current period."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,incoming:0
+msgid "Confirmed In"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Current Period Situation"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_stock_period_createlines_form
+msgid ""
+"This wizard helps with the creation of stock planning periods. These periods "
+"are independent of financial periods. If you need periods other than day-, "
+"week- or month-based, you may also add then manually."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period.createlines:0
+msgid "Create Monthly Periods"
+msgstr "Създаване на месечни периоди"
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_period_createlines
+msgid "stock.period.createlines"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,outgoing_before:0
+msgid "Planned Out Before"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning.createlines,forecasted_products:0
+msgid "All Products with Forecast"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,maximum_op:0
+msgid "Maximum quantity set in Minimum Stock Rules for this Warehouse"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Periods :"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,procure_to_stock:0
+msgid ""
+"Check to make procurement to stock location of selected warehouse. If not "
+"selected procurement will be made into input location of warehouse."
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,already_in:0
+msgid ""
+"Quantity which is already picked up to this warehouse in current period."
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/wizard/stock_planning_forecast.py:60
+#, python-format
+msgid "No products in selected category !"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Stock and Sales Forecast"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_sale_forecast
+msgid "stock.sale.forecast"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,to_procure:0
+msgid "Planned In"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,stock_simulation:0
+msgid "Stock Simulation"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_planning_createlines
+msgid "stock.planning.createlines"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,incoming_before:0
+msgid ""
+"Confirmed incoming in periods before calculated (Including Already In). "
+"Between start date of current period and one day before start of calculated "
+"period."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Search  Sales Forecast"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period5_per_user:0
+msgid "This User Period5"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,history:0
+msgid "History of procurement or internal supply of this planning line."
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,company_forecast:0
+msgid ""
+"All sales forecasts for whole company (for all Warehouses) of selected "
+"Product during selected Period."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_per_user:0
+msgid "This User Period1"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_per_user:0
+msgid "This User Period3"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Stock Planning"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,minimum_op:0
+msgid "Minimum Rule"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Procure Incoming Left"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning.createlines:0
+#: view:stock.sale.forecast.createlines:0
+msgid "Create"
+msgstr "Създаване"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_view_stock_planning_form
+#: model:ir.ui.menu,name:stock_planning.menu_stock_planning
+#: model:ir.ui.menu,name:stock_planning.menu_stock_planning_manual
+#: view:stock.planning:0
+msgid "Master Procurement Schedule"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,line_time:0
+msgid "Past/Future"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period:0
+#: field:stock.period,state:0
+#: field:stock.planning,state:0
+#: field:stock.sale.forecast,state:0
+msgid "State"
+msgstr "Състояние"
+
+#. module: stock_planning
+#: help:stock.sale.forecast.createlines,product_categ_id:0
+msgid "Product Category of products which created forecasts will concern."
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_period
+msgid "stock period"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_sale_forecast_createlines
+msgid "stock.sale.forecast.createlines"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,warehouse_id:0
+#: field:stock.planning.createlines,warehouse_id:0
+#: field:stock.sale.forecast,warehouse_id:0
+#: field:stock.sale.forecast.createlines,warehouse_id:0
+msgid "Warehouse"
+msgstr "Склад"
+
+#. module: stock_planning
+#: help:stock.planning,stock_simulation:0
+msgid ""
+"Stock simulation at the end of selected Period.\n"
+" For current period it is: \n"
+"Initial Stock - Already Out + Already In - Expected Out + Incoming Left.\n"
+"For periods ahead it is: \n"
+"Initial Stock - Planned Out Before + Incoming Before - Planned Out + Planned "
+"In."
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.sale.forecast,analyze_company:0
+msgid "Check this box to see the sales for whole company."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Per Department :"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,incoming_before:0
+msgid "Incoming Before"
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:641
+#, python-format
+msgid ""
+" Procurement created by MPS for user: %s   Creation Date: %s                 "
+"                        \n"
+" For period: %s                                         \n"
+" according to state:                                         \n"
+" Warehouse Forecast: %s                                         \n"
+" Initial Stock: %s                                         \n"
+" Planned Out: %s    Planned In: %s                                         \n"
+" Already Out: %s    Already In: %s                                         \n"
+" Confirmed Out: %s    Confirmed In: %s                                       "
+"  \n"
+" Planned Out Before: %s    Confirmed In Before: %s                           "
+"              \n"
+" Expected Out: %s    Incoming Left: %s                                       "
+"  \n"
+" Stock Simulation: %s    Minimum stock: %s"
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:626
+#: code:addons/stock_planning/stock_planning.py:670
+#: code:addons/stock_planning/stock_planning.py:672
+#: code:addons/stock_planning/stock_planning.py:674
+#: code:addons/stock_planning/wizard/stock_planning_createlines.py:73
+#: code:addons/stock_planning/wizard/stock_planning_forecast.py:60
+#, python-format
+msgid "Error !"
+msgstr "Грешка!"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_user_id:0
+msgid "This User"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Forecasts"
+msgstr "Прогнози"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Supply from Another Warehouse"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Calculate Planning"
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:146
+#, python-format
+msgid "Invalid action !"
+msgstr "Невалидно действие !"
+
+#. module: stock_planning
+#: help:stock.planning,stock_start:0
+msgid "Stock quantity one day before current period."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Procurement history"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,product_uom:0
+msgid ""
+"Unit of Measure used to show the quantities of stock calculation.You can use "
+"units from default category or from second category (UoS category)."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period.createlines:0
+msgid "Create Weekly Periods"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_stock_period_form
+msgid ""
+"Stock periods are used for stock planning. Stock periods are independent of "
+"account periods. You can use wizard for creating periods and review them "
+"here."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Calculated Period Simulation"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period.createlines:0
+msgid "Cancel"
+msgstr "Отмяна"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period4_per_user:0
+msgid "This User Period4"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Stock and Sales Period"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,company_forecast:0
+msgid "Company Forecast"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,minimum_op:0
+msgid "Minimum quantity set in Minimum Stock Rules for this Warehouse"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Per User :"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning.createlines,warehouse_id:0
+msgid "Warehouse which planning will concern."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,user_id:0
+msgid "Created/Validated by"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,warehouse_forecast:0
+msgid "Warehouse Forecast"
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:674
+#, python-format
+msgid ""
+"You must specify a Source Warehouse different than calculated (destination) "
+"Warehouse !"
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:146
+#, python-format
+msgid "Cannot delete a validated sales forecast!"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period5_per_company:0
+msgid "This Company Period5"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,product_uom:0
+msgid "Product UoM"
+msgstr "Мерни единици на продукт"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_per_company:0
+msgid "This Company Period1"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_per_company:0
+msgid "This Company Period2"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_per_company:0
+msgid "This Company Period3"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.period,date_start:0
+#: field:stock.period.createlines,date_start:0
+msgid "Start Date"
+msgstr "Начална дата"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_per_user:0
+msgid "This User Period2"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,confirmed_forecasts_only:0
+msgid "Validated Forecasts"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning.createlines,product_categ_id:0
+msgid ""
+"Planning will be created for products from Product Category selected by this "
+"field. This field is ignored when you check \"All Forecasted Product\" box."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,planned_outgoing:0
+msgid "Planned Out"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,product_qty:0
+msgid "Forecast Quantity"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Forecast"
+msgstr "Прогноза"
+
+#. module: stock_planning
+#: selection:stock.period,state:0
+#: selection:stock.planning,state:0
+#: selection:stock.sale.forecast,state:0
+msgid "Draft"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Closed"
+msgstr "Приключен"
+
+#. module: stock_planning
+#: view:stock.planning:0
+#: view:stock.sale.forecast:0
+msgid "Warehouse "
+msgstr "Склад "
+
+#. module: stock_planning
+#: help:stock.sale.forecast,product_uom:0
+msgid ""
+"Unit of Measure used to show the quantities of stock calculation.You can use "
+"units form default category or from second category (UoS category)."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Planning and Situation for Calculated Period"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,planned_outgoing:0
+msgid ""
+"Enter planned outgoing quantity from selected Warehouse during the selected "
+"Period of selected Product. To plan this value look at Confirmed Out or "
+"Sales Forecasts. This value should be equal or greater than Confirmed Out."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Current Periods"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Internal Supply"
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:724
+#, python-format
+msgid "%s Pick List %s (%s,  %s) %s %s \n"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_stock_sale_forecast_createlines_form
+#: model:ir.ui.menu,name:stock_planning.menu_stock_sale_forecast_createlines
+msgid "Create Sales Forecasts"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period4_id:0
+msgid "Period4"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.period,name:0
+#: field:stock.period.createlines,name:0
+msgid "Period Name"
+msgstr "Име на период"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_id:0
+msgid "Period2"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_id:0
+msgid "Period3"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_id:0
+msgid "Period1"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_stock_planning_createlines_form
+msgid ""
+"This wizard helps create MPS planning lines for a given selected period and "
+"warehouse, so you don't have to create them one by one. The wizard doesn't "
+"duplicate lines if they already exist for this selection."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,outgoing:0
+msgid "Confirmed Out"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_stock_planning_createlines_form
+#: model:ir.ui.menu,name:stock_planning.menu_stock_planning_createlines
+#: view:stock.planning.createlines:0
+msgid "Create Stock Planning Lines"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "General Info"
+msgstr "Обща информация"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_view_stock_sale_forecast_form
+msgid "Sales Forecast"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_per_warehouse:0
+msgid "This Warehouse Period1"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Sales History"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,supply_warehouse_id:0
+msgid "Source Warehouse"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.sale.forecast,product_qty:0
+msgid "Forecast Product quantity."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,stock_supply_location:0
+msgid "Stock Supply Location"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.period.createlines,date_stop:0
+msgid "Ending date for planning period."
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning.createlines,forecasted_products:0
+msgid ""
+"Check this box to create planning for all products having any forecast for "
+"selected Warehouse and Period. Product Category field will be ignored."
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:632
+#: code:addons/stock_planning/stock_planning.py:678
+#: code:addons/stock_planning/stock_planning.py:702
+#, python-format
+msgid "MPS(%s) %s"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,already_in:0
+msgid "Already In"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,product_uom_categ:0
+#: field:stock.planning,product_uos_categ:0
+#: field:stock.sale.forecast,product_uom_categ:0
+msgid "Product UoM Category"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_view_stock_sale_forecast_form
+msgid ""
+"This quantity sales forecast is an indication for Stock Planner to make "
+"procurement manually or to complement automatic procurement. You can use "
+"manual procurement with this forecast when some periods are exceptional for "
+"usual minimum stock rules."
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_view_stock_planning_form
+msgid ""
+"The Master Procurement Schedule can be the main driver for warehouse "
+"replenishment, or can complement the automatic MRP scheduling (minimum stock "
+"rules, etc.).\n"
+"Each MPS line gives you a pre-computed overview of the incoming and outgoing "
+"quantities of a given product for a given Stock Period in a given Warehouse, "
+"based on the current and future stock levels,\n"
+"as well as the planned stock moves. The forecast quantities can be altered "
+"manually, and when satisfied with resulting (simulated) Stock quantity, you "
+"can trigger the procurement of what is missing to reach your desired "
+"quantities"
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:685
+#, python-format
+msgid ""
+"Pick created from MPS by user: %s   Creation Date: %s                        "
+"             \n"
+"For period: %s   according to state:                                     \n"
+" Warehouse Forecast: %s                                     \n"
+" Initial Stock: %s                                     \n"
+" Planned Out: %s  Planned In: %s                                     \n"
+" Already Out: %s  Already In: %s                                     \n"
+" Confirmed Out: %s   Confirmed In: %s                                     \n"
+" Planned Out Before: %s   Confirmed In Before: %s                            "
+"         \n"
+" Expected Out: %s   Incoming Left: %s                                     \n"
+" Stock Simulation: %s   Minimum stock: %s "
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,period_id:0
+#: field:stock.planning.createlines,period_id:0
+#: field:stock.sale.forecast,period_id:0
+#: field:stock.sale.forecast.createlines,period_id:0
+msgid "Period"
+msgstr "Период"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,product_uos_categ:0
+msgid "Product UoS Category"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,active_uom:0
+#: field:stock.sale.forecast,active_uom:0
+msgid "Active UoM"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Search Stock Planning"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast.createlines,copy_forecast:0
+msgid "Copy Last Forecast"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.sale.forecast,product_id:0
+msgid "Shows which product this forecast concerns."
+msgstr ""
+
+#. module: stock_planning
+#: selection:stock.planning,state:0
+msgid "Done"
+msgstr "Завършен"
+
+#. module: stock_planning
+#: field:stock.period.createlines,period_ids:0
+msgid "Periods"
+msgstr "Периоди"
+
+#. module: stock_planning
+#: model:ir.ui.menu,name:stock_planning.menu_stock_period_creatlines
+msgid "Create Stock Periods"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period:0
+#: selection:stock.period,state:0
+#: view:stock.planning.createlines:0
+#: view:stock.sale.forecast.createlines:0
+msgid "Close"
+msgstr "Затваряне"
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+#: selection:stock.sale.forecast,state:0
+msgid "Validated"
+msgstr "Проверен"
+
+#. module: stock_planning
+#: view:stock.period:0
+#: selection:stock.period,state:0
+msgid "Open"
+msgstr "Отваряне"
+
+#. module: stock_planning
+#: help:stock.sale.forecast.createlines,copy_forecast:0
+msgid "Copy quantities from last Stock and Sale Forecast."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_per_dept:0
+msgid "This Dept Period1"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_per_dept:0
+msgid "This Dept Period3"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_per_dept:0
+msgid "This Dept Period2"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period5_per_dept:0
+msgid "This Dept Period5"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period4_per_dept:0
+msgid "This Dept Period4"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_per_warehouse:0
+msgid "This Warehouse Period2"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_per_warehouse:0
+msgid "This Warehouse Period3"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,stock_supply_location:0
+msgid ""
+"Check to supply from Stock location of Supply Warehouse. If not checked "
+"supply will be made from Output location of Supply Warehouse. Used in "
+"'Supply from Another Warehouse' with Supply Warehouse."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,create_uid:0
+msgid "Responsible"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Default UOM"
+msgstr "По подразбиране Мер. ед."
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period4_per_warehouse:0
+msgid "This Warehouse Period4"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period5_per_warehouse:0
+msgid "This Warehouse Period5"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Current"
+msgstr "Текущ"
+
+#. module: stock_planning
+#: help:stock.planning,supply_warehouse_id:0
+msgid ""
+"Warehouse used as source in supply pick move created by 'Supply from Another "
+"Warehouse'."
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_planning
+msgid "stock.planning"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.sale.forecast,warehouse_id:0
+msgid ""
+"Shows which warehouse this forecast concerns. If during stock planning you "
+"will need sales forecast for all warehouses choose any warehouse now."
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:661
+#, python-format
+msgid "%s Procurement (%s,  %s) %s %s \n"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyze_company:0
+msgid "Per Company"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,to_procure:0
+msgid ""
+"Enter quantity which (by your plan) should come in. Change this value and "
+"observe Stock simulation. This value should be equal or greater than "
+"Confirmed In."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period4_per_company:0
+msgid "This Company Period4"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning.createlines,period_id:0
+msgid "Period which planning will concern."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,already_out:0
+msgid "Already Out"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,product_id:0
+msgid "Product which this planning is created for."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Per Warehouse :"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,history:0
+msgid "Procurement History"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.period.createlines,date_start:0
+msgid "Starting date for planning period."
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_stock_period_createlines_form
+#: model:ir.actions.act_window,name:stock_planning.action_stock_period_form
+#: model:ir.ui.menu,name:stock_planning.menu_stock_period
+#: model:ir.ui.menu,name:stock_planning.menu_stock_period_main
+#: view:stock.period:0
+#: view:stock.period.createlines:0
+msgid "Stock Periods"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Stock"
+msgstr "Наличност"
+
+#. module: stock_planning
+#: help:stock.planning,incoming:0
+msgid "Quantity of all confirmed incoming moves in calculated Period."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.period,date_stop:0
+#: field:stock.period.createlines,date_stop:0
+msgid "End Date"
+msgstr "Крайна дата"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "No Requisition"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,name:0
+msgid "Name"
+msgstr "Име"
+
+#. module: stock_planning
+#: help:stock.sale.forecast,period_id:0
+msgid "Shows which period this forecast concerns."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,product_uom:0
+msgid "UoM"
+msgstr "Мер. единици"
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Closed Periods"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+#: field:stock.planning,product_id:0
+#: view:stock.sale.forecast:0
+#: field:stock.sale.forecast,product_id:0
+msgid "Product"
+msgstr "Продукт"
+
+#. module: stock_planning
+#: model:ir.ui.menu,name:stock_planning.menu_stock_sale_forecast
+#: model:ir.ui.menu,name:stock_planning.menu_stock_sale_forecast_all
+#: view:stock.sale.forecast:0
+msgid "Sales Forecasts"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning.createlines,product_categ_id:0
+#: field:stock.sale.forecast.createlines,product_categ_id:0
+msgid "Product Category"
+msgstr "Категория на продукта"
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:672
+#, python-format
+msgid "You must specify a Source Warehouse !"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,procure_to_stock:0
+msgid "Procure To Stock Location"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Approve"
+msgstr "Одобряване"
+
+#. module: stock_planning
+#: help:stock.planning,period_id:0
+msgid ""
+"Period for this planning. Requisition will be created for beginning of the "
+"period."
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:631
+#, python-format
+msgid "MPS planning for %s"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,stock_start:0
+msgid "Initial Stock"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,product_amt:0
+msgid "Product Amount"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,confirmed_forecasts_only:0
+msgid ""
+"Check to take validated forecasts only. If not checked system takes "
+"validated and draft forecasts."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period5_id:0
+msgid "Period5"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_warehouse_id:0
+msgid "This Warehouse"
+msgstr "Този склад"
+
+#. module: stock_planning
+#: help:stock.sale.forecast,user_id:0
+msgid "Shows who created this forecast, or who validated."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_team_id:0
+msgid "Sales Team"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,incoming_left:0
+msgid ""
+"Quantity left to Planned incoming quantity. This is calculated difference "
+"between Planned In and Confirmed In. For current period Already In is also "
+"calculated. This value is used to create procurement for lacking quantity."
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,outgoing_left:0
+msgid ""
+"Quantity expected to go out in selected period besides Confirmed Out. As a "
+"difference between Planned Out and Confirmed Out. For current period Already "
+"Out is also calculated"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Calculate Sales History"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_stock_sale_forecast_createlines_form
+msgid ""
+"This wizard helps create many forecast lines at once. After creating them "
+"you only have to fill in the forecast quantities. The wizard doesn't "
+"duplicate the line when another one exist for the same selection."
+msgstr ""
+
+#~ msgid "Product Quantity"
+#~ msgstr "Количество на продукт"
+
+#, python-format
+#~ msgid ""
+#~ "\n"
+#~ "For period: "
+#~ msgstr ""
+#~ "\n"
+#~ "За период: "

=== added file 'stock_planning/i18n/ca.po'
--- stock_planning/i18n/ca.po	1970-01-01 00:00:00 +0000
+++ stock_planning/i18n/ca.po	2014-05-20 13:49:41 +0000
@@ -0,0 +1,1940 @@
+# Catalan translation for openobject-addons
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the openobject-addons package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-02-08 00:37+0000\n"
+"PO-Revision-Date: 2012-05-10 17:53+0000\n"
+"Last-Translator: Raphael Collet (OpenERP) <Unknown>\n"
+"Language-Team: Catalan <ca@xxxxxx>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2012-10-30 05:29+0000\n"
+"X-Generator: Launchpad (build 16206)\n"
+
+#. module: stock_planning
+#: code:addons/stock_planning/wizard/stock_planning_createlines.py:73
+#, python-format
+msgid ""
+"No forecasts for selected period or no products in selected category !"
+msgstr ""
+"No hi ha previsions per al període seleccionat o no hi ha productes en la "
+"categoria seleccionada!"
+
+#. module: stock_planning
+#: help:stock.planning,stock_only:0
+msgid ""
+"Check to calculate stock location of selected warehouse only. If not "
+"selected calculation is made for input, stock and output location of "
+"warehouse."
+msgstr ""
+"Marqueu aquesta opció per calcular l'estoc només de la ubicació estoc del "
+"magatzem seleccionat. Si no es marca, el càlcul es realitza per a les "
+"ubicacions d'entrada i sortida d'estoc del magatzem."
+
+#. module: stock_planning
+#: field:stock.planning,maximum_op:0
+msgid "Maximum Rule"
+msgstr "Regla màxim"
+
+#. module: stock_planning
+#: view:stock.planning:0
+#: view:stock.sale.forecast:0
+msgid "Group By..."
+msgstr "Agrupa per..."
+
+#. module: stock_planning
+#: help:stock.sale.forecast,product_amt:0
+msgid ""
+"Forecast value which will be converted to Product Quantity according to "
+"prices."
+msgstr ""
+"Valor de la previsió que serà convertit en quantitat de producte en funció "
+"de preus."
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:626
+#: code:addons/stock_planning/stock_planning.py:670
+#, python-format
+msgid "Incoming Left must be greater than 0 !"
+msgstr "Entrades restants ha de ser major que 0!"
+
+#. module: stock_planning
+#: help:stock.planning,outgoing_before:0
+msgid ""
+"Planned Out in periods before calculated. Between start date of current "
+"period and one day before start of calculated period."
+msgstr ""
+"Sortides planificades en períodes anteriors al calculat. Entreu la data "
+"d'inici del període actual i un dia abans del començament del període "
+"calculat."
+
+#. module: stock_planning
+#: help:stock.sale.forecast.createlines,warehouse_id:0
+msgid ""
+"Warehouse which forecasts will concern. If during stock planning you will "
+"need sales forecast for all warehouses choose any warehouse now."
+msgstr ""
+"Magatzem al que les previsions es refereixen. Si durant la planificació "
+"d'estoc necessita previsions de vendes per a tots els magatzems de triar "
+"qualsevol magatzem ara."
+
+#. module: stock_planning
+#: field:stock.planning,outgoing_left:0
+msgid "Expected Out"
+msgstr "Sortides previstes"
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid " "
+msgstr " "
+
+#. module: stock_planning
+#: field:stock.planning,incoming_left:0
+msgid "Incoming Left"
+msgstr "Entrades restants"
+
+#. module: stock_planning
+#: view:stock.sale.forecast.createlines:0
+msgid "Create Forecasts Lines"
+msgstr "Crea línies de previsions"
+
+#. module: stock_planning
+#: help:stock.planning,outgoing:0
+msgid "Quantity of all confirmed outgoing moves in calculated Period."
+msgstr "Quantitats de totes les sortides confirmades en el període calculat."
+
+#. module: stock_planning
+#: view:stock.period.createlines:0
+msgid "Create Daily Periods"
+msgstr "Crea períodes diaris"
+
+#. module: stock_planning
+#: view:stock.planning:0
+#: field:stock.planning,company_id:0
+#: field:stock.planning.createlines,company_id:0
+#: view:stock.sale.forecast:0
+#: field:stock.sale.forecast,company_id:0
+#: field:stock.sale.forecast.createlines,company_id:0
+msgid "Company"
+msgstr "Companyia"
+
+#. module: stock_planning
+#: help:stock.planning,warehouse_forecast:0
+msgid ""
+"All sales forecasts for selected Warehouse of selected Product during "
+"selected Period."
+msgstr ""
+"Totes les previsions de vendes per als magatzems seleccionats de productes "
+"seleccionats durant el període seleccionat."
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Minimum Stock Rule Indicators"
+msgstr "Indicadors de regles d'estoc mínim"
+
+#. module: stock_planning
+#: help:stock.sale.forecast.createlines,period_id:0
+msgid "Period which forecasts will concern."
+msgstr "Període al que concerneixen les previsions."
+
+#. module: stock_planning
+#: field:stock.planning,stock_only:0
+msgid "Stock Location Only"
+msgstr "Només ubicacions d'estoc"
+
+#. module: stock_planning
+#: help:stock.planning,already_out:0
+msgid ""
+"Quantity which is already dispatched out of this warehouse in current period."
+msgstr ""
+"Quantitats que ja es van enviar fora d'aquest magatzem en el període actual."
+
+#. module: stock_planning
+#: field:stock.planning,incoming:0
+msgid "Confirmed In"
+msgstr "Entrades confirmades"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Current Period Situation"
+msgstr "Situació del període actual"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_stock_period_createlines_form
+msgid ""
+"This wizard helps with the creation of stock planning periods. These periods "
+"are independent of financial periods. If you need periods other than day-, "
+"week- or month-based, you may also add then manually."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period.createlines:0
+msgid "Create Monthly Periods"
+msgstr "Crea períodes mensuals"
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_period_createlines
+msgid "stock.period.createlines"
+msgstr "estoc.període.crealínies"
+
+#. module: stock_planning
+#: field:stock.planning,outgoing_before:0
+msgid "Planned Out Before"
+msgstr "Sortides planificades abans"
+
+#. module: stock_planning
+#: field:stock.planning.createlines,forecasted_products:0
+msgid "All Products with Forecast"
+msgstr "Tots els productes amb previsió"
+
+#. module: stock_planning
+#: help:stock.planning,maximum_op:0
+msgid "Maximum quantity set in Minimum Stock Rules for this Warehouse"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Periods :"
+msgstr "Períodes :"
+
+#. module: stock_planning
+#: help:stock.planning,procure_to_stock:0
+msgid ""
+"Check to make procurement to stock location of selected warehouse. If not "
+"selected procurement will be made into input location of warehouse."
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,already_in:0
+msgid ""
+"Quantity which is already picked up to this warehouse in current period."
+msgstr ""
+"Quantitats que ja han estat recollides en aquest magatzem en el període "
+"actual."
+
+#. module: stock_planning
+#: code:addons/stock_planning/wizard/stock_planning_forecast.py:60
+#, python-format
+msgid "No products in selected category !"
+msgstr "No hi ha productes en la categoria seleccionada!"
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Stock and Sales Forecast"
+msgstr "Previsions d'estoc i vendes"
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_sale_forecast
+msgid "stock.sale.forecast"
+msgstr "estoc.vendes.previsió"
+
+#. module: stock_planning
+#: field:stock.planning,to_procure:0
+msgid "Planned In"
+msgstr "Entrades planificades"
+
+#. module: stock_planning
+#: field:stock.planning,stock_simulation:0
+msgid "Stock Simulation"
+msgstr "Simulació d'estoc"
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_planning_createlines
+msgid "stock.planning.createlines"
+msgstr "estoc.planificació.crealínies"
+
+#. module: stock_planning
+#: help:stock.planning,incoming_before:0
+msgid ""
+"Confirmed incoming in periods before calculated (Including Already In). "
+"Between start date of current period and one day before start of calculated "
+"period."
+msgstr ""
+"Entrades confirmades en períodes anteriors al calculat (incloent les "
+"entrades realitzades). Entreu la data d'inici del període actual i un dia "
+"abans del començament del període calculat."
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Search  Sales Forecast"
+msgstr "Cerca previsions de vendes"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period5_per_user:0
+msgid "This User Period5"
+msgstr "El període d'aquest usuari5"
+
+#. module: stock_planning
+#: help:stock.planning,history:0
+msgid "History of procurement or internal supply of this planning line."
+msgstr ""
+"Historial de proveïment o subministrament intern d'aquesta línia de "
+"planificació."
+
+#. module: stock_planning
+#: help:stock.planning,company_forecast:0
+msgid ""
+"All sales forecasts for whole company (for all Warehouses) of selected "
+"Product during selected Period."
+msgstr ""
+"Totes les previsions de vendes per a tota l'empresa (per a tots els "
+"magatzems) dels productes seleccionats durant el període seleccionat."
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_per_user:0
+msgid "This User Period1"
+msgstr "Aquest usuari periode1"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_per_user:0
+msgid "This User Period3"
+msgstr "Aquest usuari periode3"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Stock Planning"
+msgstr "Planificació d'estoc"
+
+#. module: stock_planning
+#: field:stock.planning,minimum_op:0
+msgid "Minimum Rule"
+msgstr "Regla de mínims"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Procure Incoming Left"
+msgstr "Entrades proveïment restant"
+
+#. module: stock_planning
+#: view:stock.planning.createlines:0
+#: view:stock.sale.forecast.createlines:0
+msgid "Create"
+msgstr "Crea"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_view_stock_planning_form
+#: model:ir.ui.menu,name:stock_planning.menu_stock_planning
+#: model:ir.ui.menu,name:stock_planning.menu_stock_planning_manual
+#: view:stock.planning:0
+msgid "Master Procurement Schedule"
+msgstr "Pla mestre de proveïment"
+
+#. module: stock_planning
+#: field:stock.planning,line_time:0
+msgid "Past/Future"
+msgstr "Passat/Futur"
+
+#. module: stock_planning
+#: view:stock.period:0
+#: field:stock.period,state:0
+#: field:stock.planning,state:0
+#: field:stock.sale.forecast,state:0
+msgid "State"
+msgstr "Estat"
+
+#. module: stock_planning
+#: help:stock.sale.forecast.createlines,product_categ_id:0
+msgid "Product Category of products which created forecasts will concern."
+msgstr "Categoria dels productes dels quals es crearan les previsions ."
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_period
+msgid "stock period"
+msgstr "període estoc"
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_sale_forecast_createlines
+msgid "stock.sale.forecast.createlines"
+msgstr "estoc.venda.previsió.crealínies"
+
+#. module: stock_planning
+#: field:stock.planning,warehouse_id:0
+#: field:stock.planning.createlines,warehouse_id:0
+#: field:stock.sale.forecast,warehouse_id:0
+#: field:stock.sale.forecast.createlines,warehouse_id:0
+msgid "Warehouse"
+msgstr "Magatzem"
+
+#. module: stock_planning
+#: help:stock.planning,stock_simulation:0
+msgid ""
+"Stock simulation at the end of selected Period.\n"
+" For current period it is: \n"
+"Initial Stock - Already Out + Already In - Expected Out + Incoming Left.\n"
+"For periods ahead it is: \n"
+"Initial Stock - Planned Out Before + Incoming Before - Planned Out + Planned "
+"In."
+msgstr ""
+"Simulació d'estoc al final del període seleccionat.\n"
+" Per al període actual és: \n"
+"Estoc inicial – sortides + entrades – sortides previstes + entrades "
+"esperades.\n"
+"Per als següents períodes és: \n"
+"Estoc inicial – sortides previstes anteriors + entrades anteriors – sortides "
+"previstes + entrades previstes."
+
+#. module: stock_planning
+#: help:stock.sale.forecast,analyze_company:0
+msgid "Check this box to see the sales for whole company."
+msgstr ""
+"Seleccioneu aquesta casella per veure les vendes de tota l'a companyia."
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Per Department :"
+msgstr "Per departament:"
+
+#. module: stock_planning
+#: field:stock.planning,incoming_before:0
+msgid "Incoming Before"
+msgstr "Entrades abans"
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:641
+#, python-format
+msgid ""
+" Procurement created by MPS for user: %s   Creation Date: %s                 "
+"                        \n"
+" For period: %s                                         \n"
+" according to state:                                         \n"
+" Warehouse Forecast: %s                                         \n"
+" Initial Stock: %s                                         \n"
+" Planned Out: %s    Planned In: %s                                         \n"
+" Already Out: %s    Already In: %s                                         \n"
+" Confirmed Out: %s    Confirmed In: %s                                       "
+"  \n"
+" Planned Out Before: %s    Confirmed In Before: %s                           "
+"              \n"
+" Expected Out: %s    Incoming Left: %s                                       "
+"  \n"
+" Stock Simulation: %s    Minimum stock: %s"
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:626
+#: code:addons/stock_planning/stock_planning.py:670
+#: code:addons/stock_planning/stock_planning.py:672
+#: code:addons/stock_planning/stock_planning.py:674
+#: code:addons/stock_planning/wizard/stock_planning_createlines.py:73
+#: code:addons/stock_planning/wizard/stock_planning_forecast.py:60
+#, python-format
+msgid "Error !"
+msgstr "Error!"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_user_id:0
+msgid "This User"
+msgstr "Aquest usuari"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Forecasts"
+msgstr "Previsions"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Supply from Another Warehouse"
+msgstr "Proveir des d'un altre magatzem"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Calculate Planning"
+msgstr "Calcula planificació"
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:146
+#, python-format
+msgid "Invalid action !"
+msgstr "Acció no vàlida!"
+
+#. module: stock_planning
+#: help:stock.planning,stock_start:0
+msgid "Stock quantity one day before current period."
+msgstr "Quantitat d'estoc un dia abans del període actual."
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Procurement history"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,product_uom:0
+msgid ""
+"Unit of Measure used to show the quantities of stock calculation.You can use "
+"units from default category or from second category (UoS category)."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period.createlines:0
+msgid "Create Weekly Periods"
+msgstr "Crea períodes setmanals"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_stock_period_form
+msgid ""
+"Stock periods are used for stock planning. Stock periods are independent of "
+"account periods. You can use wizard for creating periods and review them "
+"here."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Calculated Period Simulation"
+msgstr "Simulació calculada del període"
+
+#. module: stock_planning
+#: view:stock.period.createlines:0
+msgid "Cancel"
+msgstr "Cancel·la"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period4_per_user:0
+msgid "This User Period4"
+msgstr "Aquest usuari període 4"
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Stock and Sales Period"
+msgstr "Període d'estoc i vendes"
+
+#. module: stock_planning
+#: field:stock.planning,company_forecast:0
+msgid "Company Forecast"
+msgstr "Previsió de la companyia"
+
+#. module: stock_planning
+#: help:stock.planning,minimum_op:0
+msgid "Minimum quantity set in Minimum Stock Rules for this Warehouse"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Per User :"
+msgstr "Per usuari :"
+
+#. module: stock_planning
+#: help:stock.planning.createlines,warehouse_id:0
+msgid "Warehouse which planning will concern."
+msgstr "Magatzem que es referirà la planificació."
+
+#. module: stock_planning
+#: field:stock.sale.forecast,user_id:0
+msgid "Created/Validated by"
+msgstr "Creat/Validat per"
+
+#. module: stock_planning
+#: field:stock.planning,warehouse_forecast:0
+msgid "Warehouse Forecast"
+msgstr "Previsió magatzem"
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:674
+#, python-format
+msgid ""
+"You must specify a Source Warehouse different than calculated (destination) "
+"Warehouse !"
+msgstr ""
+"Heu d'especificar un magatzem d'origen diferent del magatzem calculat (de "
+"destinació)!"
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:146
+#, python-format
+msgid "Cannot delete a validated sales forecast!"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period5_per_company:0
+msgid "This Company Period5"
+msgstr "El període d'aquesta companyia5"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,product_uom:0
+msgid "Product UoM"
+msgstr "UdM de producte"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_per_company:0
+msgid "This Company Period1"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_per_company:0
+msgid "This Company Period2"
+msgstr "El període d'aquesta companyia2"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_per_company:0
+msgid "This Company Period3"
+msgstr "El període d'aquesta companyia3"
+
+#. module: stock_planning
+#: field:stock.period,date_start:0
+#: field:stock.period.createlines,date_start:0
+msgid "Start Date"
+msgstr "Data d'inici"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_per_user:0
+msgid "This User Period2"
+msgstr "El període d'aquest usuari2"
+
+#. module: stock_planning
+#: field:stock.planning,confirmed_forecasts_only:0
+msgid "Validated Forecasts"
+msgstr "Previsions validades"
+
+#. module: stock_planning
+#: help:stock.planning.createlines,product_categ_id:0
+msgid ""
+"Planning will be created for products from Product Category selected by this "
+"field. This field is ignored when you check \"All Forecasted Product\" box."
+msgstr ""
+"Es crearà la planificació per als productes de la categoria de productes "
+"seleccionada amb aquest camp. Aquest camp s'ignora quan es marca l'opció "
+"\"Totes les previsions de productes”."
+
+#. module: stock_planning
+#: field:stock.planning,planned_outgoing:0
+msgid "Planned Out"
+msgstr "Sortides planificades"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,product_qty:0
+msgid "Forecast Quantity"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Forecast"
+msgstr "Previsió"
+
+#. module: stock_planning
+#: selection:stock.period,state:0
+#: selection:stock.planning,state:0
+#: selection:stock.sale.forecast,state:0
+msgid "Draft"
+msgstr "Esborrany"
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Closed"
+msgstr "Tancat"
+
+#. module: stock_planning
+#: view:stock.planning:0
+#: view:stock.sale.forecast:0
+msgid "Warehouse "
+msgstr "Magatzem "
+
+#. module: stock_planning
+#: help:stock.sale.forecast,product_uom:0
+msgid ""
+"Unit of Measure used to show the quantities of stock calculation.You can use "
+"units form default category or from second category (UoS category)."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Planning and Situation for Calculated Period"
+msgstr "Planificació i situació per al període calculat"
+
+#. module: stock_planning
+#: help:stock.planning,planned_outgoing:0
+msgid ""
+"Enter planned outgoing quantity from selected Warehouse during the selected "
+"Period of selected Product. To plan this value look at Confirmed Out or "
+"Sales Forecasts. This value should be equal or greater than Confirmed Out."
+msgstr ""
+"Introduïu la quantitat sortint planificada per al magatzem seleccionat "
+"durant el període seleccionat i per al producte seleccionat. Per planificar "
+"aquest valor podeu fixar-se en les sortides confirmades o les previsions de "
+"vendes. Aquest valor hauria de ser igual o superior a les sortides "
+"confirmades."
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Current Periods"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Internal Supply"
+msgstr "Subministrament intern"
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:724
+#, python-format
+msgid "%s Pick List %s (%s,  %s) %s %s \n"
+msgstr "%s Llista de selecció %s (%s,  %s) %s %s \n"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_stock_sale_forecast_createlines_form
+#: model:ir.ui.menu,name:stock_planning.menu_stock_sale_forecast_createlines
+msgid "Create Sales Forecasts"
+msgstr "Crea previsions de vendes"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period4_id:0
+msgid "Period4"
+msgstr "Període4"
+
+#. module: stock_planning
+#: field:stock.period,name:0
+#: field:stock.period.createlines,name:0
+msgid "Period Name"
+msgstr "Nom del període"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_id:0
+msgid "Period2"
+msgstr "Període2"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_id:0
+msgid "Period3"
+msgstr "Període3"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_id:0
+msgid "Period1"
+msgstr "Període1"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_stock_planning_createlines_form
+msgid ""
+"This wizard helps create MPS planning lines for a given selected period and "
+"warehouse, so you don't have to create them one by one. The wizard doesn't "
+"duplicate lines if they already exist for this selection."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,outgoing:0
+msgid "Confirmed Out"
+msgstr "Sortides confirmades"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_stock_planning_createlines_form
+#: model:ir.ui.menu,name:stock_planning.menu_stock_planning_createlines
+#: view:stock.planning.createlines:0
+msgid "Create Stock Planning Lines"
+msgstr "Crea línies de planificació d'estoc"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "General Info"
+msgstr "Informació general"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_view_stock_sale_forecast_form
+msgid "Sales Forecast"
+msgstr "Previsió de vendes"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_per_warehouse:0
+msgid "This Warehouse Period1"
+msgstr "Peridodo d'aquest magatzem1"
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Sales History"
+msgstr "Històric de vendes"
+
+#. module: stock_planning
+#: field:stock.planning,supply_warehouse_id:0
+msgid "Source Warehouse"
+msgstr "Magatzem d'origen"
+
+#. module: stock_planning
+#: help:stock.sale.forecast,product_qty:0
+msgid "Forecast Product quantity."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,stock_supply_location:0
+msgid "Stock Supply Location"
+msgstr "Ubicació proveïment d'estoc"
+
+#. module: stock_planning
+#: help:stock.period.createlines,date_stop:0
+msgid "Ending date for planning period."
+msgstr "Data de finalització per al període planificat."
+
+#. module: stock_planning
+#: help:stock.planning.createlines,forecasted_products:0
+msgid ""
+"Check this box to create planning for all products having any forecast for "
+"selected Warehouse and Period. Product Category field will be ignored."
+msgstr ""
+"Marqueu aquesta opció per crear la planificació de tots els productes que "
+"tinguin qualsevol previsió en el magatzem i període seleccionat. El camp "
+"categoria de producte serà ignorat."
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:632
+#: code:addons/stock_planning/stock_planning.py:678
+#: code:addons/stock_planning/stock_planning.py:702
+#, python-format
+msgid "MPS(%s) %s"
+msgstr "MPS(%s) %s"
+
+#. module: stock_planning
+#: field:stock.planning,already_in:0
+msgid "Already In"
+msgstr "Entrades realitzades"
+
+#. module: stock_planning
+#: field:stock.planning,product_uom_categ:0
+#: field:stock.planning,product_uos_categ:0
+#: field:stock.sale.forecast,product_uom_categ:0
+msgid "Product UoM Category"
+msgstr "Categoria UdM producte"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_view_stock_sale_forecast_form
+msgid ""
+"This quantity sales forecast is an indication for Stock Planner to make "
+"procurement manually or to complement automatic procurement. You can use "
+"manual procurement with this forecast when some periods are exceptional for "
+"usual minimum stock rules."
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_view_stock_planning_form
+msgid ""
+"The Master Procurement Schedule can be the main driver for warehouse "
+"replenishment, or can complement the automatic MRP scheduling (minimum stock "
+"rules, etc.).\n"
+"Each MPS line gives you a pre-computed overview of the incoming and outgoing "
+"quantities of a given product for a given Stock Period in a given Warehouse, "
+"based on the current and future stock levels,\n"
+"as well as the planned stock moves. The forecast quantities can be altered "
+"manually, and when satisfied with resulting (simulated) Stock quantity, you "
+"can trigger the procurement of what is missing to reach your desired "
+"quantities"
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:685
+#, python-format
+msgid ""
+"Pick created from MPS by user: %s   Creation Date: %s                        "
+"             \n"
+"For period: %s   according to state:                                     \n"
+" Warehouse Forecast: %s                                     \n"
+" Initial Stock: %s                                     \n"
+" Planned Out: %s  Planned In: %s                                     \n"
+" Already Out: %s  Already In: %s                                     \n"
+" Confirmed Out: %s   Confirmed In: %s                                     \n"
+" Planned Out Before: %s   Confirmed In Before: %s                            "
+"         \n"
+" Expected Out: %s   Incoming Left: %s                                     \n"
+" Stock Simulation: %s   Minimum stock: %s "
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,period_id:0
+#: field:stock.planning.createlines,period_id:0
+#: field:stock.sale.forecast,period_id:0
+#: field:stock.sale.forecast.createlines,period_id:0
+msgid "Period"
+msgstr "Període"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,product_uos_categ:0
+msgid "Product UoS Category"
+msgstr "Categoria UdV producte"
+
+#. module: stock_planning
+#: field:stock.planning,active_uom:0
+#: field:stock.sale.forecast,active_uom:0
+msgid "Active UoM"
+msgstr "UdM activa"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Search Stock Planning"
+msgstr "Cerca planificació d'estoc"
+
+#. module: stock_planning
+#: field:stock.sale.forecast.createlines,copy_forecast:0
+msgid "Copy Last Forecast"
+msgstr "Copia última previsió"
+
+#. module: stock_planning
+#: help:stock.sale.forecast,product_id:0
+msgid "Shows which product this forecast concerns."
+msgstr "Mostra a quin producte es refereix aquesta previsió."
+
+#. module: stock_planning
+#: selection:stock.planning,state:0
+msgid "Done"
+msgstr "Fet"
+
+#. module: stock_planning
+#: field:stock.period.createlines,period_ids:0
+msgid "Periods"
+msgstr "Períodes"
+
+#. module: stock_planning
+#: model:ir.ui.menu,name:stock_planning.menu_stock_period_creatlines
+msgid "Create Stock Periods"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period:0
+#: selection:stock.period,state:0
+#: view:stock.planning.createlines:0
+#: view:stock.sale.forecast.createlines:0
+msgid "Close"
+msgstr "Tanca"
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+#: selection:stock.sale.forecast,state:0
+msgid "Validated"
+msgstr "Validat"
+
+#. module: stock_planning
+#: view:stock.period:0
+#: selection:stock.period,state:0
+msgid "Open"
+msgstr "Obre"
+
+#. module: stock_planning
+#: help:stock.sale.forecast.createlines,copy_forecast:0
+msgid "Copy quantities from last Stock and Sale Forecast."
+msgstr "Copia quantitats des de l'estoc passat i previsió de vendes"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_per_dept:0
+msgid "This Dept Period1"
+msgstr "El període d'aquest dept.1"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_per_dept:0
+msgid "This Dept Period3"
+msgstr "El període d'aquest dept.3"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_per_dept:0
+msgid "This Dept Period2"
+msgstr "El període d'aquest dept.2"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period5_per_dept:0
+msgid "This Dept Period5"
+msgstr "El període d'aquest dept.5"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period4_per_dept:0
+msgid "This Dept Period4"
+msgstr "El període d'aquest dept.4"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_per_warehouse:0
+msgid "This Warehouse Period2"
+msgstr "El període d'aquest magatzem2"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_per_warehouse:0
+msgid "This Warehouse Period3"
+msgstr "El període d'aquest magatzem3"
+
+#. module: stock_planning
+#: help:stock.planning,stock_supply_location:0
+msgid ""
+"Check to supply from Stock location of Supply Warehouse. If not checked "
+"supply will be made from Output location of Supply Warehouse. Used in "
+"'Supply from Another Warehouse' with Supply Warehouse."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,create_uid:0
+msgid "Responsible"
+msgstr "Responsable"
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Default UOM"
+msgstr "UdM per defecte"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period4_per_warehouse:0
+msgid "This Warehouse Period4"
+msgstr "El període d'aquest magatzem4"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period5_per_warehouse:0
+msgid "This Warehouse Period5"
+msgstr "El període d'aquest magatzem5"
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Current"
+msgstr "Actual"
+
+#. module: stock_planning
+#: help:stock.planning,supply_warehouse_id:0
+msgid ""
+"Warehouse used as source in supply pick move created by 'Supply from Another "
+"Warehouse'."
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_planning
+msgid "stock.planning"
+msgstr "estoc.planificació"
+
+#. module: stock_planning
+#: help:stock.sale.forecast,warehouse_id:0
+msgid ""
+"Shows which warehouse this forecast concerns. If during stock planning you "
+"will need sales forecast for all warehouses choose any warehouse now."
+msgstr ""
+"Mostra a quin magatzem es refereix aquesta previsió. Si durant la "
+"planificació d'estoc necessita previsions de vendes per a tots els magatzems "
+"escolliu ara un magatzem qualsevol."
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:661
+#, python-format
+msgid "%s Procurement (%s,  %s) %s %s \n"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyze_company:0
+msgid "Per Company"
+msgstr "Per empresa"
+
+#. module: stock_planning
+#: help:stock.planning,to_procure:0
+msgid ""
+"Enter quantity which (by your plan) should come in. Change this value and "
+"observe Stock simulation. This value should be equal or greater than "
+"Confirmed In."
+msgstr ""
+"Introduïu la quantitat que (pel seu pla) ha d'entrar. Canvieu aquest valor i "
+"observeu la simulació d'estoc. Aquest valor hauria de ser igual o superior a "
+"les entrades confirmades."
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period4_per_company:0
+msgid "This Company Period4"
+msgstr "El període d'aquesta companyia4"
+
+#. module: stock_planning
+#: help:stock.planning.createlines,period_id:0
+msgid "Period which planning will concern."
+msgstr "Període al que es refereix la planificació."
+
+#. module: stock_planning
+#: field:stock.planning,already_out:0
+msgid "Already Out"
+msgstr "Sortides realitzades"
+
+#. module: stock_planning
+#: help:stock.planning,product_id:0
+msgid "Product which this planning is created for."
+msgstr "Producte pel qual ha estat creada aquesta planificació."
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Per Warehouse :"
+msgstr "Per magatzem:"
+
+#. module: stock_planning
+#: field:stock.planning,history:0
+msgid "Procurement History"
+msgstr "Històric proveïments"
+
+#. module: stock_planning
+#: help:stock.period.createlines,date_start:0
+msgid "Starting date for planning period."
+msgstr "Data inicial per al període planificat."
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_stock_period_createlines_form
+#: model:ir.actions.act_window,name:stock_planning.action_stock_period_form
+#: model:ir.ui.menu,name:stock_planning.menu_stock_period
+#: model:ir.ui.menu,name:stock_planning.menu_stock_period_main
+#: view:stock.period:0
+#: view:stock.period.createlines:0
+msgid "Stock Periods"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Stock"
+msgstr "Estoc"
+
+#. module: stock_planning
+#: help:stock.planning,incoming:0
+msgid "Quantity of all confirmed incoming moves in calculated Period."
+msgstr "Quantitats de totes les entrades confirmades en el període calculat."
+
+#. module: stock_planning
+#: field:stock.period,date_stop:0
+#: field:stock.period.createlines,date_stop:0
+msgid "End Date"
+msgstr "Data final"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "No Requisition"
+msgstr "Núm. sol·licitud"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,name:0
+msgid "Name"
+msgstr "Nom"
+
+#. module: stock_planning
+#: help:stock.sale.forecast,period_id:0
+msgid "Shows which period this forecast concerns."
+msgstr "Mostra a quin període es refereix aquesta previsió."
+
+#. module: stock_planning
+#: field:stock.planning,product_uom:0
+msgid "UoM"
+msgstr "UdM"
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Closed Periods"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+#: field:stock.planning,product_id:0
+#: view:stock.sale.forecast:0
+#: field:stock.sale.forecast,product_id:0
+msgid "Product"
+msgstr "Producte"
+
+#. module: stock_planning
+#: model:ir.ui.menu,name:stock_planning.menu_stock_sale_forecast
+#: model:ir.ui.menu,name:stock_planning.menu_stock_sale_forecast_all
+#: view:stock.sale.forecast:0
+msgid "Sales Forecasts"
+msgstr "Previsions de vendes"
+
+#. module: stock_planning
+#: field:stock.planning.createlines,product_categ_id:0
+#: field:stock.sale.forecast.createlines,product_categ_id:0
+msgid "Product Category"
+msgstr "Categoria del producte"
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:672
+#, python-format
+msgid "You must specify a Source Warehouse !"
+msgstr "Heu d'especificar un magatzem origen!"
+
+#. module: stock_planning
+#: field:stock.planning,procure_to_stock:0
+msgid "Procure To Stock Location"
+msgstr "Proveïment a ubicació estoc"
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Approve"
+msgstr "Aprova"
+
+#. module: stock_planning
+#: help:stock.planning,period_id:0
+msgid ""
+"Period for this planning. Requisition will be created for beginning of the "
+"period."
+msgstr ""
+"Període per a aquesta planificació. Es crearà una sol·licitud al principi "
+"del període."
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:631
+#, python-format
+msgid "MPS planning for %s"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,stock_start:0
+msgid "Initial Stock"
+msgstr "Estoc inicial"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,product_amt:0
+msgid "Product Amount"
+msgstr "Quantitat de producte"
+
+#. module: stock_planning
+#: help:stock.planning,confirmed_forecasts_only:0
+msgid ""
+"Check to take validated forecasts only. If not checked system takes "
+"validated and draft forecasts."
+msgstr ""
+"Marcque per utilitzar només les previsions validades. Si no es marca el "
+"sistema utilitza les previsions validades i esborrany."
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period5_id:0
+msgid "Period5"
+msgstr "Període5"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_warehouse_id:0
+msgid "This Warehouse"
+msgstr "Aquest magatzem"
+
+#. module: stock_planning
+#: help:stock.sale.forecast,user_id:0
+msgid "Shows who created this forecast, or who validated."
+msgstr "Mostra qui va crear aquesta previsió, o qui la va validar."
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_team_id:0
+msgid "Sales Team"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,incoming_left:0
+msgid ""
+"Quantity left to Planned incoming quantity. This is calculated difference "
+"between Planned In and Confirmed In. For current period Already In is also "
+"calculated. This value is used to create procurement for lacking quantity."
+msgstr ""
+"Quantitat restant de la quantitat entrant planificada. Es calcula mitjançant "
+"la diferència entre les entrades planificades i les entrades confirmades. "
+"Per al període actual les entrades realitzades també es calculen. Aquest "
+"valor s'utilitza per crear proveïments per a la quantitat restant."
+
+#. module: stock_planning
+#: help:stock.planning,outgoing_left:0
+msgid ""
+"Quantity expected to go out in selected period besides Confirmed Out. As a "
+"difference between Planned Out and Confirmed Out. For current period Already "
+"Out is also calculated"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Calculate Sales History"
+msgstr "Calcula històric de vendes"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_stock_sale_forecast_createlines_form
+msgid ""
+"This wizard helps create many forecast lines at once. After creating them "
+"you only have to fill in the forecast quantities. The wizard doesn't "
+"duplicate the line when another one exist for the same selection."
+msgstr ""
+
+#~ msgid "This Copmany Period1"
+#~ msgstr "Aquesta empresa període1"
+
+#, python-format
+#~ msgid ""
+#~ "\n"
+#~ " Initial Stock: "
+#~ msgstr ""
+#~ "\n"
+#~ " Estoc inicial: "
+
+#~ msgid "Requisition history"
+#~ msgstr "Historial comandes"
+
+#~ msgid ""
+#~ "Warehouse used as source in supply pick move created by 'Supply from Another "
+#~ "Warhouse'."
+#~ msgstr ""
+#~ "Magatzem utilitzat com a origen en el moviment de subministrament creat per "
+#~ "'Subministra des d'un altre magatzem'."
+
+#~ msgid ""
+#~ "Chect to make procurement to stock location of selected warehouse. If not "
+#~ "selected procurement will be made into input location of warehouse."
+#~ msgstr ""
+#~ "Marqueu aquesta opció per realitzar els proveïments en la ubicació estoc del "
+#~ "magatzem seleccionat. Si no es marca, el proveïment es realitzarà en la "
+#~ "ubicació d'entrada del magatzem."
+
+#~ msgid "Create Stock and Sales Periods"
+#~ msgstr "Crea períodes d'estoc i vendes"
+
+#, python-format
+#~ msgid "    Confirmed In Before: "
+#~ msgstr "    Entrades confirmades abans: "
+
+#~ msgid "This Department"
+#~ msgstr "Aquest departament"
+
+#, python-format
+#~ msgid "    Incoming Left: "
+#~ msgstr "    Entrades restant: "
+
+#, python-format
+#~ msgid "Pick List "
+#~ msgstr "Llista de recollida "
+
+#, python-format
+#~ msgid "  Creation Date: "
+#~ msgstr "  Data de creació: "
+
+#, python-format
+#~ msgid "Manual planning for "
+#~ msgstr "Planificació manual per a "
+
+#~ msgid "Maximum quantity set in Minimum Stock Rules for this Warhouse"
+#~ msgstr ""
+#~ "Quantitat màxima establerta en les regles d'estoc mínim per a aquest "
+#~ "magatzem."
+
+#, python-format
+#~ msgid "Procurement created in MPS by user: "
+#~ msgstr "Proveïment creat en MPS per l'usuari: "
+
+#, python-format
+#~ msgid ""
+#~ "\n"
+#~ " Confirmed Out: "
+#~ msgstr ""
+#~ "\n"
+#~ " Sortides confirmades: "
+
+#~ msgid ""
+#~ "Unit of Measure used to show the quanities of stock calculation.You can use "
+#~ "units form default category or from second category (UoS category)."
+#~ msgstr ""
+#~ "Unitat de mesura utilitzada per mostrar les quantitats calculades d'estoc. "
+#~ "Podeu utilitzar les unitats de la categoria per defecte o les de la segona "
+#~ "categoria (categoria UdV)."
+
+#~ msgid "Creates planning lines for selected period and warehouse."
+#~ msgstr "Crea línies de planificació per al període i almacen seleccionats."
+
+#~ msgid "Note: Doesn't duplicate existing lines created by you."
+#~ msgstr "Nota: No duplica les línies creades per vostè."
+
+#, python-format
+#~ msgid ""
+#~ "\n"
+#~ " Already Out: "
+#~ msgstr ""
+#~ "\n"
+#~ " Sortides realitzades: "
+
+#~ msgid ""
+#~ "\n"
+#~ "This module is based on original OpenERP SA module stock_planning version "
+#~ "1.0 of the same name Master Procurement Schedule.\n"
+#~ "\n"
+#~ "Purpose of MPS is to allow create a manual procurement (requisition) apart "
+#~ "of MRP scheduler (which works automatically on minimum stock rules).\n"
+#~ "\n"
+#~ "Terms used in the module:\n"
+#~ "- Stock and Sales Period - is the time (between Start Date and End Date) for "
+#~ "which you plan Stock and Sales Forecast and make Procurement Planning. \n"
+#~ "- Stock and Sales Forecast - is the quantity of products you plan to sell in "
+#~ "the Period.\n"
+#~ "- Stock Planning - is the quantity of products you plan to purchase or "
+#~ "produce for the Period.\n"
+#~ "\n"
+#~ "Because we have another module sale_forecast which uses terms \"Sales "
+#~ "Forecast\" and \"Planning\" as amount values we will use terms \"Stock and "
+#~ "Sales Forecast\" and \"Stock Planning\" to emphasize that we use quantity "
+#~ "values. \n"
+#~ "\n"
+#~ "Activity with this module is divided to three steps:\n"
+#~ "- Creating Periods. Mandatory step.\n"
+#~ "- Creating Sale Forecasts and entering quantities to them. Optional step but "
+#~ "useful for further planning.\n"
+#~ "- Creating Planning lines, entering quantities to them and making "
+#~ "Procurement. Making procurement is the final step for the Period.\n"
+#~ "\n"
+#~ "Periods\n"
+#~ "=======\n"
+#~ "You have two menu items for Periods in \"Sales Management - Configuration\". "
+#~ "There are:\n"
+#~ "- \"Create Sales Periods\" - Which automates creating daily, weekly or "
+#~ "monthly periods.\n"
+#~ "- \"Stock and sales Periods\" - Which allows to create any type of periods, "
+#~ "change the dates and change the State of period.\n"
+#~ "\n"
+#~ "Creating periods is the first step you have to do to use modules features. "
+#~ "You can create custom periods using \"New\" button in \"Stock and Sales "
+#~ "Periods\" form or view but it is recommended to use automating tool.\n"
+#~ "\n"
+#~ "Remarks:\n"
+#~ "- These periods (officially Stock and Sales Periods) are separated of "
+#~ "Financial or other periods in the system.\n"
+#~ "- Periods are not assigned to companies (when you use multicompany feature "
+#~ "at all). Module suppose that you use the same periods across companies. If "
+#~ "you wish to use different periods for different companies define them as you "
+#~ "wish (they can overlap). Later on in this text will be indications how to "
+#~ "use such periods.\n"
+#~ "- When periods are created automatically their start and finish dates are "
+#~ "with start hour 00:00:00 and end hour 23:59:00. Fe. when you create daily "
+#~ "periods they will have start date 31.01.2010 00:00:00 and end date "
+#~ "31.01.2010 23:59:00. It works only in automatic creation of periods. When "
+#~ "you create periods manually you have to take care about hours because you "
+#~ "can have incorrect values form sales or stock. \n"
+#~ "- If you use overlapping periods for the same product, warehouse and company "
+#~ "results can be unpredictable.\n"
+#~ "- If current date doesn't belong to any period or you have holes between "
+#~ "periods results can be unpredictable.\n"
+#~ "\n"
+#~ "Sales Forecasts\n"
+#~ "===============\n"
+#~ "You have few menus for Sales forecast in \"Sales Management - Sales "
+#~ "Forecasts\".\n"
+#~ "- \"Create Sales Forecasts for Sales Periods\" - which automates creating "
+#~ "forecasts lines according to some parameters.\n"
+#~ "- \"Sales Forecasts\" - few menus for working with forecasts lists and "
+#~ "forms.\n"
+#~ "\n"
+#~ "Menu \"Create Sales Forecasts for Sales Periods\" creates Forecasts for "
+#~ "products from selected Category, for selected Period and for selected "
+#~ "Warehouse. It is an option \"Copy Last Forecast\" to copy forecast and other "
+#~ "settings of period before this one to created one.\n"
+#~ "\n"
+#~ "Remarks:\n"
+#~ "- This tool doesn't create lines, if relevant lines (for the same Product, "
+#~ "Period, Warehouse and validated or created by you) already exists. If you "
+#~ "wish to create another forecast, if relevant lines exists you have to do it "
+#~ "manually using menus described bellow.\n"
+#~ "- When created lines are validated by someone else you can use this tool to "
+#~ "create another lines for the same Period, Product and Warehouse. \n"
+#~ "- When you choose \"Copy Last Forecast\" created line takes quantity and "
+#~ "some settings from your (validated by you or created by you if not validated "
+#~ "yet) forecast which is for last period before period of created forecast. If "
+#~ "there are few your forecasts for period before this one (it is possible) "
+#~ "system takes one of them (no rule which of them).\n"
+#~ "\n"
+#~ "\n"
+#~ "Menus \"Sales Forecasts\"\n"
+#~ "On \"Sales Forecast\" form mainly you have to enter a forecast quantity in "
+#~ "\"Product Quantity\". Further calculation can work for draft forecasts. But "
+#~ "validation can save your data against any accidental changes. You can click "
+#~ "\"Validate\" button but it is not mandatory.\n"
+#~ "\n"
+#~ "Instead of forecast quantity you can enter amount of forecast sales in field "
+#~ "\"Product Amount\". System will count quantity from amount according to Sale "
+#~ "price of the Product.\n"
+#~ "\n"
+#~ "All values on the form are expressed in unit of measure selected on form. "
+#~ "You can select one of unit of measure from default category or from second "
+#~ "category. When you change unit of measure the quanities will be recalculated "
+#~ "according to new UoM: editable values (blue fields) immediately, non edited "
+#~ "fields after clicking of \"Calculate Planning\" button.\n"
+#~ "\n"
+#~ "To find proper value for Sale Forecast you can use \"Sales History\" table "
+#~ "for this product. You have to enter parameters to the top and left of this "
+#~ "table and system will count sale quantities according to these parameters. "
+#~ "So you can select fe. your department (at the top) then (to the left): last "
+#~ "period, period before last and period year ago.\n"
+#~ "\n"
+#~ "Remarks:\n"
+#~ "\n"
+#~ "\n"
+#~ "Procurement Planning\n"
+#~ "====================\n"
+#~ "Menu for Planning you can find in \"Warehouse - Stock Planning\".\n"
+#~ "- \"Create Stock Planning Lines\" - allows you to automate creating planning "
+#~ "lines according to some parameters.\n"
+#~ "- \"Master Procurement Scheduler\" - is the most important menu of the "
+#~ "module which allows to create procurement.\n"
+#~ "\n"
+#~ "As Sales forecast is phase of planning sales. The Procurement Planning "
+#~ "(Planning) is the phase of scheduling Purchasing or Producing. You can "
+#~ "create Procurement Planning quickly using tool from menu \"Create Stock "
+#~ "Planning Lines\", then you can review created planning and make procurement "
+#~ "using menu \"Master Procurement Schedule\".\n"
+#~ "\n"
+#~ "Menu \"Create Stock Planning Lines\" allows you to create quickly Planning "
+#~ "lines for products from selected Category, for selected Period, and for "
+#~ "selected Warehouse. When you check option \"All Products with Forecast\" "
+#~ "system creates lines for all products having forecast for selected Period "
+#~ "and Warehouse. Selected Category will be ignored in this case.\n"
+#~ "\n"
+#~ "Under menu \"Master Procurement Scheduler\" you can generally change the "
+#~ "values \"Planned Out\" and \"Planned In\" to observe the field \"Stock "
+#~ "Simulation\" and decide if this value would be accurate for end of the "
+#~ "Period. \n"
+#~ "\"Planned Out\" can be based on \"Warehouse Forecast\" which is the sum of "
+#~ "all forecasts for Period and Warehouse. But your planning can be based on "
+#~ "any other information you have. It is not necessary to have any forecast. \n"
+#~ "\"Planned In\" quantity is used to calculate field \"Incoming Left\" which "
+#~ "is the quantity to be procured to make stock as indicated in \"Stock "
+#~ "Simulation\" at the end of Period. You can compare \"Stock Simulation\" "
+#~ "quantity to minimum stock rules visible on the form. But you can plan "
+#~ "different quantity than in Minimum Stock Rules. Calculation is made for "
+#~ "whole Warehouse by default. But if you want to see values for Stock location "
+#~ "of calculated warehouse you can use check box \"Stock Location Only\".\n"
+#~ "\n"
+#~ "If after few tries you decide that you found correct quantities for "
+#~ "\"Planned Out\" and \"Planned In\" and you are satisfied with end of period "
+#~ "stock calculated in \"Stock Simulation\" you can click \"Procure Incoming "
+#~ "Left\" button to procure quantity of field \"Incoming Left\" into the "
+#~ "Warehouse. System creates appropriate Procurement Order. You can decide if "
+#~ "procurement will be made to Stock or Input location of calculated Warehouse. "
+#~ "\n"
+#~ "\n"
+#~ "If you don't want to Produce or Buy the product but just pick calculated "
+#~ "quantity from another warehouse you can click \"Supply from Another "
+#~ "Warehouse\" (instead of \"Procure Incoming Left\"). System creates pick list "
+#~ "with move from selected source Warehouse to calculated Warehouse (as "
+#~ "destination). You can also decide if this pick should be done from Stock or "
+#~ "Output location of source warehouse. Destination location (Stock or Input) "
+#~ "of destination warehouse will be used as set for \"Procure Incoming Left\". "
+#~ "\n"
+#~ "\n"
+#~ "To see proper quantities in fields \"Confirmed In\", \"Confirmed Out\", "
+#~ "\"Confirmed In Before\", \"Planned Out Before\" and \"Stock Simulation\" you "
+#~ "have to click button \"Calculate Planning\".\n"
+#~ "\n"
+#~ "All values on the form are expressed in unit of measure selected on form. "
+#~ "You can select one of unit of measure from default category or from second "
+#~ "category. When you change unit of measure the quanities will be recalculated "
+#~ "according to new UoM: editable values (blue fields) immediately, non edited "
+#~ "fields after clicking of \"Calculate Planning\" button.\n"
+#~ "\n"
+#~ "How Stock Simulation field is calculated:\n"
+#~ "Generally Stock Simulation shows the stock for end of the calculated period "
+#~ "according to some planned or confirmed stock moves. Calculation always "
+#~ "starts with quantity of real stock of beginning of current period. Then "
+#~ "calculation adds or subtracts quantities of calculated period or periods "
+#~ "before calculated.\n"
+#~ "When you are in the same period (current period is the same as calculated) "
+#~ "Stock Simulation is calculated as follows:\n"
+#~ "Stock Simulation = \n"
+#~ "\tStock of beginning of current Period\n"
+#~ "\t- Planned Out \n"
+#~ "\t+ Planned In\n"
+#~ "\n"
+#~ "When you calculate period next to current:\n"
+#~ "Stock Simulation = \n"
+#~ "\tStock of beginning of current Period\n"
+#~ "\t- Planned Out of current Period \n"
+#~ "\t+ Confirmed In of current Period  (incl. Already In)\n"
+#~ "\t- Planned Out of calculated Period \n"
+#~ "\t+ Planned In of calculated Period .\n"
+#~ "\n"
+#~ "As you see calculated Period is taken the same way like in case above. But "
+#~ "calculation of current Period are made a little bit different. First you "
+#~ "should note that system takes for current Period only Confirmed In moves. It "
+#~ "means that you have to make planning and procurement for current Period "
+#~ "before this calculation (for Period next to current). \n"
+#~ "\n"
+#~ "When you calculate Period ahead:\n"
+#~ "Stock Simulation = \n"
+#~ "\tStock of beginning of current Period \n"
+#~ "\t- Sum of Planned Out of Periods before calculated \n"
+#~ "\t+ Sum of Confirmed In of Periods before calculated (incl. Already In) \n"
+#~ "\t- Planned Out of calculated Period \n"
+#~ "\t+ Planned In of calculated Period.\n"
+#~ "\n"
+#~ "Periods before calculated means periods starting from current till period "
+#~ "before calculated.\n"
+#~ "\n"
+#~ "Remarks:\n"
+#~ "- Remember to make planning for all periods before calculated because "
+#~ "omitting these quantities and procurements can cause wrong suggestions for "
+#~ "procurements few periods ahead.\n"
+#~ "- If you made planning few periods ahead and you find that real Confirmed "
+#~ "Out is bigger than Planned Out in some periods before you can repeat "
+#~ "Planning and make another procurement. You should do it in the same planning "
+#~ "line. If you create another planning line the suggestions can be wrong.\n"
+#~ "- When you wish to work with different periods for some part of products "
+#~ "define two kinds of periods (fe. Weekly and Monthly) and use them for "
+#~ "different products. Example: If you use always Weekly periods for Products "
+#~ "A, and Monthly periods for Products B your all calculations will work "
+#~ "correctly. You can also use different kind of periods for the same products "
+#~ "from different warehouse or companies. But you cannot use overlapping "
+#~ "periods for the same product, warehouse and company because results can be "
+#~ "unpredictable. The same apply to Forecasts lines.\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Aquest mòdul es basa en la versió original d'OpenERP Estoc_planning SA mòdul "
+#~ "1.0 del mateix nom Programador de Compres Mestres. \n"
+#~ "\n"
+#~ "El propòsit de la MPS és permetre crear un manual de contractació (sol "
+#~ "licitud), a part del programador MRP (que funciona automàticament, basant-se "
+#~ "en regles d'existències mínimes). \n"
+#~ "\n"
+#~ "Els termes utilitzats en el mòdul: \n"
+#~ "- Estoc i Període de vendes - és el temps (entre data d'inici i data de "
+#~ "finalització) per al qual planifica l'Estoc i la Previsió de Vendes i fa la "
+#~ "Planificació de les compres. \n"
+#~ "- Estoc i pronòstic de vendes - és la quantitat de productes que planeja "
+#~ "vendre en el període. \n"
+#~ "- Planificació de Estoc - és la quantitat de productes que planeja comprar o "
+#~ "produir per al període. \n"
+#~ "\n"
+#~ "Perquè tenim una altra mòdul sale_forecast que utilitza els termes "
+#~ "\"Pronòstic de Vendes\" i \"Planificació\" com a valors de quantitat, "
+#~ "utilitzarem termes \"Estoc i Pronòstic de Vendes\" i \"Planificació del "
+#~ "Estoc\" per fer èmfasi que fem servir els valors de quantitat. \n"
+#~ "\n"
+#~ "L'activitat amb aquest mòdul es divideix en tres passos: \n"
+#~ "- Creació de Períodes. Pas obligatori. \n"
+#~ "- Creació de Pronòstics de Venda i introducció de les seves quantitats. Un "
+#~ "pas opcional però útil per a una major planificació. \n"
+#~ "- Creació de línies de Planificació, introducció de les seves quantitats i "
+#~ "fer Adquisicions. Fer compres és el pas final per al període. \n"
+#~ "\n"
+#~ "Períodes \n"
+#~ "========= \n"
+#~ "Té dues opcions de menú per Períodes en \"Gestió de Vendes - Configuració\". "
+#~ "Són les següents: \n"
+#~ "- \"Crear els Períodes de Vendes\" - Que automatitza la creació de períodes "
+#~ "diaris, setmanals o mensuals. \n"
+#~ "- \"Estoc i Períodes de vendes\" - Que permet crear qualsevol tipus de "
+#~ "períodes, el canvi de les dates i el canvi de l'Estat del període. \n"
+#~ "\n"
+#~ "Creació de períodes és el primer pas que ha de fer per utilitzar les "
+#~ "funcions dels mòduls. Podeu crear períodes personalitzats mitjançant el botó "
+#~ "\"Nou\" al formulari o vista d'\"Estoc i Períodes de Vendes\", però es "
+#~ "recomana utilitzar l'eina automàtica. \n"
+#~ "\n"
+#~ "Observacions: \n"
+#~ "- Aquests períodes (Estoc oficial i Períodes de Vendes) estan separen de "
+#~ "Finances o d'altres períodes en el sistema. \n"
+#~ "- Els Períodes no s'assignen a les companyies (en cap cas quan s'utilitza la "
+#~ "funció multicompanyia). El mòdul suposa que utilitza els mateixos períodes a "
+#~ "través de les companyies. Si voleu utilitzar períodes diferents per a "
+#~ "diferents companyies definiu al seu gust (poden solapar). Més endavant en "
+#~ "aquest text s'indica com utilitzar aquests períodes. \n"
+#~ "- Quan els períodes són creats automàticament les seves dates d'inici i "
+#~ "final s'inicien amb l'hora 00:00:00 i 23:59:00 com a hora final. Quan crea "
+#~ "períodes diaris tindran data d'inici 2010.01.31 00:00:00 i data de "
+#~ "finalització 2010.01.31 23:59:00. Funciona només en la creació automàtica "
+#~ "dels períodes. Quan creeu períodes manualment cal anar amb compte amb les "
+#~ "hores, ja que pot tenir valors incorrectes en vendes i estoc. \n"
+#~ "- Si utilitzeu períodes solapats per al mateix producte, magatzem i "
+#~ "companyia, els resultats poden ser imprevisibles. \n"
+#~ "- Si la data actual no pertany a cap període o si té forats entre els "
+#~ "períodes els resultats poden ser imprevisibles. \n"
+#~ "\n"
+#~ "Previsió de vendes \n"
+#~ "==================== \n"
+#~ "Té menús poques vendes previst en \"Gestió de Vendes - Pronòstics de "
+#~ "Vendes\". \n"
+#~ "- \"Creació de Pronòstics de Vendes per als Períodes de Vendes\" - que "
+#~ "automatitza la creació de línies de previsions d'acord amb alguns "
+#~ "paràmetres. \n"
+#~ "- \"Les Previsions de Vendes\" - alguns menús per a treballar amb llistes de "
+#~ "les previsions i les formes. \n"
+#~ "\n"
+#~ "Menú \"Crear Pronòstics de Vendes per Períodes de Vendes\" crea Pronòstics "
+#~ "per als productes de la categoria seleccionada, per al període i Magatzem "
+#~ "seleccionat. És una opció \"Còpia de l'Últim Pronòstic\" per copiar "
+#~ "previsions i altres ajustaments del període anterior a aquest per crear un. "
+#~ "\n"
+#~ "\n"
+#~ "Observacions: \n"
+#~ "- Aquesta eina no crea línies, si les línies oportunes (per al mateix "
+#~ "producte, Període i Magatzem, i validat o creat per vostè) ja existeixen. Si "
+#~ "voleu crear un altre pronòstic, si les línies pertinents hi ha de fer-ho "
+#~ "manualment usant els menús que es descriuen a continuació. \n"
+#~ "- Quan les línies es creen són validades per una altra persona que pot "
+#~ "utilitzar aquesta eina per crear altres línies per al mateix període, "
+#~ "Producte i Magatzem. \n"
+#~ "- Quan es tria \"Copiar Últim Pronòstic\" la línia creada té la quantitat i "
+#~ "alguns ajustos del seu (validat o creades per vostè, si no s'ha validat "
+#~ "encara) pronòstic que per a l'últim període anterior al període de la "
+#~ "previsió creada. Si hi ha pocs pronòstics per al període anterior a aquest "
+#~ "(és possible) el sistema pren una d'ells (no hi ha regla sobre quina). \n"
+#~ "\n"
+#~ "\n"
+#~ "Menús \"Previsió de Vendes\" \n"
+#~ "En el formulari \"Previsió de Vendes\" principalment ha d'introduir una "
+#~ "quantitat prevista a la \"Quantitat de Producte\". A més del càlcul pot "
+#~ "funcionar per a les previsions esborrany. No obstant això, la validació pot "
+#~ "guardar les seves dades contra qualsevol canvi accidental. Podeu fer clic en "
+#~ "botó \"Validar\", però no és obligatori. \n"
+#~ "\n"
+#~ "En lloc de la quantitat prevista es pot introduir la quantitat de previsió "
+#~ "de vendes en el camp \"Quantitat de Producte\". El sistema comptarà la "
+#~ "quantitat en funció del Preu de Venda del producte. \n"
+#~ "\n"
+#~ "Tots els valors del formulari s'expressen en la unitat de mesura "
+#~ "seleccionada en el formulari. Vostè pot seleccionar un de la unitat de "
+#~ "mesura de la categoria per defecte o de segona categoria. Quan es canvia la "
+#~ "unitat de mesura les quantitats es tornaran a calcular d'acord amb la nova "
+#~ "UOM: els valors editables (camps blaus) immediatament, els camps no "
+#~ "editables després de fer clic al botó \"Calcular Planificació\". \n"
+#~ "\n"
+#~ "Per trobar el valor adequat per Previsió de Venda es pot utilitzar la taula "
+#~ "\"Historial de vendes\" per a aquest producte. Has d'introduir els "
+#~ "paràmetres en la part superior esquerra d'aquesta taula i el sistema "
+#~ "comptarà les quantitats de venda d'acord amb aquests paràmetres. Així que "
+#~ "vostè pot seleccionar, per exemple. del seu departament (a la part superior) "
+#~ "i després (a l'esquerra): l'últim període, el període anterior a l'últim i "
+#~ "el període de fa un any. \n"
+#~ "\n"
+#~ "Observacions: \n"
+#~ "\n"
+#~ "\n"
+#~ "Planificació de les compres \n"
+#~ "==================== \n"
+#~ "Menú per a la Planificació del que pots trobar a \"Magatzem - Planificació "
+#~ "del Estoc\". \n"
+#~ "- \"Crea un fitxer de Planificació Líneas\" - li permet automatitzar la "
+#~ "creació de línies de planificació d'acord amb alguns paràmetres. \n"
+#~ "- \"Programador Mestre d'Adquisicions\" - és el menú més important del mòdul "
+#~ "que permet la creació de la contractació. \n"
+#~ "\n"
+#~ "D'acord amb les previsions de vendes, és la fase de planificació de vendes. "
+#~ "La planificació de compres (planificació) és la fase de programació de "
+#~ "compres o de producció. Vostè pot crear la planificació de les compres "
+#~ "ràpidament amb l'eina del menú \"Crea Línies de Planificació de Estoc\", "
+#~ "llavors pot revisar la planificació creada i fer compres usant el menú "
+#~ "\"Llista Mestra d'Adquisicions\". \n"
+#~ "\n"
+#~ "Menú \"Crear Línies de Planificació d'Estoc\" li permet crear ràpidament les "
+#~ "Línies de Planificació de productes de la categoria seleccionada, en "
+#~ "determinats períodes, i per al magatzem seleccionat. Al marcar l'opció "
+#~ "\"Tots els productes amb Pronòstic\" el sistema crea les línies per a tots "
+#~ "els productes que té previst per al període seleccionat i Magatzem. La "
+#~ "Categoria seleccionada es tindrà en compte en aquest cas. \n"
+#~ "\n"
+#~ "Sota el menú \"Programador Mestre d'Adquisicions\" en general, pot canviar "
+#~ "els valors \"Sortides planificades\" i \"Entrades planificades\" per "
+#~ "observar el camp \"Simulació de Estoc\" i decidir si aquest valor és exacte "
+#~ "per al final del període. \n"
+#~ "\"Planejat\" pot basar en la \"Previsió de magatzem\", que és la suma de "
+#~ "totes les previsions per al període i Magatzem. Però la planificació es pot "
+#~ "basar en qualsevol altra informació que tingui. No cal tenir cap pronòstic. "
+#~ "\n"
+#~ "\"Entrades planificades\" la quantitat s'utilitza per calcular el camp "
+#~ "\"Entrades Restants\" que és la quantitat que falta per adquirir per assolir "
+#~ "l'estoc, com s'indica en la \"Simulació de Estoc\" al final del període. "
+#~ "Vostè pot comparar la \"Simulació de Estoc\" amb les normes de quantitat "
+#~ "mínima d'existències visibles en el formulari. Però pot planejar una "
+#~ "quantitat diferent al de les Regles Mínimes de Estoc. El càlcul està fet per "
+#~ "a tot el magatzem per defecte. Però si vostè vol veure els valors de la "
+#~ "ubicació de l'estoc del magatzem calculat, podeu utilitzar la casella "
+#~ "\"Només Ubicació del Estoc\". \n"
+#~ "\n"
+#~ "Si després de diversos intents decideix que les quantitats són correctes per "
+#~ "a la qual \"Sortides planificades\" i el \"Entrades planificades\" i que "
+#~ "està satisfet amb el final d'existències del període calculat en la "
+#~ "\"Simulació del Estoc\" pot fer clic a \"Adquirir Entrades Restants \"per "
+#~ "obtenir la quantitat del camp\" Entrades Restants \"al Magatzem. El sistema "
+#~ "crea la corresponent ordre de Compres. Vostè pot decidir si la contractació "
+#~ "es farà per l'estoc o per a la ubicació d'entrada del Magatzem calculat. \n"
+#~ "\n"
+#~ "Si no vols Produir o Comprar el producte, però només has de triar la "
+#~ "quantitat calculada, des d'un altre magatzem pot fer clic a "
+#~ "\"Subministrament des Altre Magatzem\" (en lloc de \"Adquirir Entrades "
+#~ "Restants\"). El sistema crea la llista de selecció des del Magatzem origen "
+#~ "seleccionat fins el Magatzem calculat (com a destinació). També pot decidir "
+#~ "si aquesta selecció s'ha de fer de magatzem o la ubicació de sortida del "
+#~ "magatzem d'origen. La ubicació de destinació (magatzem o entrada) del "
+#~ "magatzem de destinació, s'utilitzarà com establert per \"Adquirir Entrades "
+#~ "Restants\". \n"
+#~ "\n"
+#~ "Per veure les quantitats adequades en els camps \"Entrada confirmada\", "
+#~ "\"Sortida Confirmada\", \"Entrada Confirmada Abans\", \"Sortides "
+#~ "planificades abans\" i \"Simulació de Estoc\" ha de fer clic al botó "
+#~ "\"Calcular Planificació\". \n"
+#~ "\n"
+#~ "Tots els valors en el formulari s'expressen en la unitat de mesura "
+#~ "seleccionada en el formulari. Vostè pot seleccionar un de la unitat de "
+#~ "mesura de la categoria per defecte o d'una segona categoria. Quan es canvia "
+#~ "la unitat de mesura les quantitats es tornaran a calcular d'acord amb UOM: "
+#~ "els valors editables immediatament (camps blaus), els camps no editables "
+#~ "després de fer clic al botó \"Calcular Planificació\". \n"
+#~ "\n"
+#~ "Com es calcula el camp Simulació del Estoc: \n"
+#~ "Generalment la Simulació del Estoc mostra l'estoc al final període calculat "
+#~ "d'acord amb alguns moviments d'estoc previst o confirmat. El càlcul s'inicia "
+#~ "sempre amb la quantitat d'estoc real del inici del període actual. Després "
+#~ "es calcula la suma o resta de les quantitats del període o períodes abans "
+#~ "calculats. \n"
+#~ "Quan està en el mateix període (període actual és el mateix que el calculat) "
+#~ "la Simulació del Estoc es calcula de la manera següent: \n"
+#~ "Simulació de Estoc = \n"
+#~ "[Tab] Estoc inicial del període actual \n"
+#~ "[Tab] - Sortides planificades \n"
+#~ "[Tab] + Entrades planificades \n"
+#~ "\n"
+#~ "Quan es calcula el període següent a l'actual: \n"
+#~ "Simulació del Estoc = \n"
+#~ "[Tab] Estoc inicial del període actual \n"
+#~ "[Tab] - Planificació de Sortides del Període actual \n"
+#~ "[Tab] + Entrades Confirmades en el període actual (incl. les Entrades ja "
+#~ "existents) \n"
+#~ "[Tab] - Sortides planificades del Període calculat \n"
+#~ "[Tab] + Entrades planificades en el Període calculat. \n"
+#~ "\n"
+#~ "Com pot veure el període calculat es pren de la mateixa manera que en el cas "
+#~ "anterior. No obstant això, el càlcul del període actual es fa de manera una "
+#~ "mica diferent. En primer lloc ha de tenir en compte que el sistema té per al "
+#~ "Període actual només Confirmats els moviments d'entrada. Això significa que "
+#~ "ha de fer la planificació i la compra per Període actual abans d'aquest "
+#~ "càlcul (per al Pròxim període a l'actual). \n"
+#~ "\n"
+#~ "Quan es calcula el període següent: \n"
+#~ "Col lecció de simulació = \n"
+#~ "[Tab] Estoc inicial del Període actual \n"
+#~ "[Tab] - Suma de Planificació de sortida dels períodes abans calculats \n"
+#~ "[Tab] + Suma Confirmats En períodes anteriors calculats (incl. les entrades "
+#~ "ja existents) \n"
+#~ "[Tab] - Sortides planificades del Període calculat \n"
+#~ "[Tab] + Entrades planificades del Període calculat. \n"
+#~ "\n"
+#~ "Els períodes anteriors calculats, significa que els període comença en "
+#~ "l'actual fins al període abans calculat. \n"
+#~ "\n"
+#~ "Observacions: \n"
+#~ "- Recordeu fer la planificació per a tots els períodes abans calculats a "
+#~ "causa de ometre aquestes quantitats i les adquisicions poden causar "
+#~ "suggeriments errònies per a les compres d'alguns períodes posteriors. \n"
+#~ "- Si ha realitzat la planificació d'uns pocs períodes posteriors i troba que "
+#~ "les Sortides Confirmades reals són més grans del que preveu en alguns "
+#~ "períodes abans que pugui repetir la Planificació i realitzar una altra "
+#~ "adquisició. Ho ha de fer en la mateixa línia de la planificació. Si es crea "
+#~ "una altra línia de planificació de suggeriments pot estar equivocada. \n"
+#~ "- Quan vol treballar amb diferents períodes per a una part dels productes, "
+#~ "defineixi dos tipus de períodes (pe setmanal i mensual) i els utilitzi'ls "
+#~ "per a diferents productes. Exemple: si utilitza sempre els períodes "
+#~ "setmanals per als productes A, i els períodes mensuals dels productes B tots "
+#~ "els seus càlculs funcionaran correctament. També pot utilitzar diferents "
+#~ "tipus de períodes per als mateixos productes de diferents magatzems de "
+#~ "diferents companyies. Però no es poden utilitzar períodes solapats per al "
+#~ "mateix producte d'un magatzem, i companyia perquè els resultats poden ser "
+#~ "imprevisibles. El mateix s'aplica a les línies de Previsions\n"
+
+#, python-format
+#~ msgid ""
+#~ "\n"
+#~ " Expected Out: "
+#~ msgstr ""
+#~ "\n"
+#~ " Sortides previstes: "
+
+#, python-format
+#~ msgid "    Already In: "
+#~ msgstr "    Entrades realitzades: "
+
+#~ msgid ""
+#~ "Quantity expected to go out in selected period. As a difference between "
+#~ "Planned Out and Confirmed Out. For current period Already Out is also "
+#~ "calculated"
+#~ msgstr ""
+#~ "Quantitat prevista per sortir en el període seleccionat. Diferència entre "
+#~ "les sortides previstes i les sortides confirmades. Per al període actual "
+#~ "també es calculen les sortides realitzades."
+
+#~ msgid "Creates forecast lines for selected warehouse and period."
+#~ msgstr "Crea línies de previsió per al magatzem i període seleccionats."
+
+#, python-format
+#~ msgid "Requisition ("
+#~ msgstr "Sol·licitud ("
+
+#, python-format
+#~ msgid ""
+#~ "\n"
+#~ " Planned Out: "
+#~ msgstr ""
+#~ "\n"
+#~ " Sortides planificades: "
+
+#, python-format
+#~ msgid "Cannot delete Validated Sale Forecasts !"
+#~ msgstr "No es poden esborrar previsions de vendes validades !"
+
+#, python-format
+#~ msgid "    Minimum stock: "
+#~ msgstr "    Estoc mínim: "
+
+#, python-format
+#~ msgid "    Confirmed In: "
+#~ msgstr "    Entrades confirmades: "
+
+#~ msgid "Sales history"
+#~ msgstr "Històric de vendes"
+
+#~ msgid "Forecasted quantity."
+#~ msgstr "Quantitat prevista."
+
+#~ msgid "Product Quantity"
+#~ msgstr "Quantitat de producte"
+
+#, python-format
+#~ msgid " according to state:"
+#~ msgstr " segons l'estat:"
+
+#, python-format
+#~ msgid ""
+#~ "\n"
+#~ " Warehouse Forecast: "
+#~ msgstr ""
+#~ "\n"
+#~ " Previsió magatzem: "
+
+#, python-format
+#~ msgid ""
+#~ "\n"
+#~ " Stock Simulation: "
+#~ msgstr ""
+#~ "\n"
+#~ " Simulació d'estoc: "
+
+#, python-format
+#~ msgid "    Planned In: "
+#~ msgstr "    Entrades planificades: "
+
+#, python-format
+#~ msgid ""
+#~ "\n"
+#~ "For period: "
+#~ msgstr ""
+#~ "\n"
+#~ "Per període: "
+
+#, python-format
+#~ msgid "MPS("
+#~ msgstr "MPS("
+
+#, python-format
+#~ msgid "Pick created from MPS by user: "
+#~ msgstr "Albarà creat des de MPS per l'usuari: "
+
+#~ msgid "Stock and Sales Planning Periods"
+#~ msgstr "Períodes de planificació d'estoc i vendes"
+
+#, python-format
+#~ msgid ""
+#~ "\n"
+#~ " Planned Out Before: "
+#~ msgstr ""
+#~ "\n"
+#~ " Sortides planificades abans: "
+
+#~ msgid "Stock and Sales Periods"
+#~ msgstr "Períodes d'estoc i vendes"
+
+#~ msgid "Create periods for Stock and Sales Planning"
+#~ msgstr "Crea períodes per la planificació d'estoc i vendes"
+
+#~ msgid "Minimum quantity set in Minimum Stock Rules for this Warhouse"
+#~ msgstr ""
+#~ "Quantitat mínima establerta en les regles d'estoc mínim per aquest magatzem."
+
+#~ msgid ""
+#~ "Check to supply from Stock location of Supply Warehouse. If not checked "
+#~ "supply will be made from Output location of Supply Warehouse. Used in "
+#~ "'Supply from Another Warhouse' with Supply Warehouse."
+#~ msgstr ""
+#~ "Marqueu aquesta opció per subministrar des de la ubicació estoc del magatzem "
+#~ "de subministrament. Si no es marca, el subministrament es realitzarà des de "
+#~ "la ubicació de sortida del magatzem de subministrament. Utilitzat "
+#~ "'Subministrar des d'un altre magatzem' amb un magatzem de subministrament."

=== added file 'stock_planning/i18n/da.po'
--- stock_planning/i18n/da.po	1970-01-01 00:00:00 +0000
+++ stock_planning/i18n/da.po	2014-05-20 13:49:41 +0000
@@ -0,0 +1,1175 @@
+# Danish translation for openobject-addons
+# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
+# This file is distributed under the same license as the openobject-addons package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2012.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-02-08 00:37+0000\n"
+"PO-Revision-Date: 2012-01-27 06:45+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Danish <da@xxxxxx>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2012-10-30 05:29+0000\n"
+"X-Generator: Launchpad (build 16206)\n"
+
+#. module: stock_planning
+#: code:addons/stock_planning/wizard/stock_planning_createlines.py:73
+#, python-format
+msgid ""
+"No forecasts for selected period or no products in selected category !"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,stock_only:0
+msgid ""
+"Check to calculate stock location of selected warehouse only. If not "
+"selected calculation is made for input, stock and output location of "
+"warehouse."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,maximum_op:0
+msgid "Maximum Rule"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+#: view:stock.sale.forecast:0
+msgid "Group By..."
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.sale.forecast,product_amt:0
+msgid ""
+"Forecast value which will be converted to Product Quantity according to "
+"prices."
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:626
+#: code:addons/stock_planning/stock_planning.py:670
+#, python-format
+msgid "Incoming Left must be greater than 0 !"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,outgoing_before:0
+msgid ""
+"Planned Out in periods before calculated. Between start date of current "
+"period and one day before start of calculated period."
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.sale.forecast.createlines,warehouse_id:0
+msgid ""
+"Warehouse which forecasts will concern. If during stock planning you will "
+"need sales forecast for all warehouses choose any warehouse now."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,outgoing_left:0
+msgid "Expected Out"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid " "
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,incoming_left:0
+msgid "Incoming Left"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast.createlines:0
+msgid "Create Forecasts Lines"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,outgoing:0
+msgid "Quantity of all confirmed outgoing moves in calculated Period."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period.createlines:0
+msgid "Create Daily Periods"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+#: field:stock.planning,company_id:0
+#: field:stock.planning.createlines,company_id:0
+#: view:stock.sale.forecast:0
+#: field:stock.sale.forecast,company_id:0
+#: field:stock.sale.forecast.createlines,company_id:0
+msgid "Company"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,warehouse_forecast:0
+msgid ""
+"All sales forecasts for selected Warehouse of selected Product during "
+"selected Period."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Minimum Stock Rule Indicators"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.sale.forecast.createlines,period_id:0
+msgid "Period which forecasts will concern."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,stock_only:0
+msgid "Stock Location Only"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,already_out:0
+msgid ""
+"Quantity which is already dispatched out of this warehouse in current period."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,incoming:0
+msgid "Confirmed In"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Current Period Situation"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_stock_period_createlines_form
+msgid ""
+"This wizard helps with the creation of stock planning periods. These periods "
+"are independent of financial periods. If you need periods other than day-, "
+"week- or month-based, you may also add then manually."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period.createlines:0
+msgid "Create Monthly Periods"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_period_createlines
+msgid "stock.period.createlines"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,outgoing_before:0
+msgid "Planned Out Before"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning.createlines,forecasted_products:0
+msgid "All Products with Forecast"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,maximum_op:0
+msgid "Maximum quantity set in Minimum Stock Rules for this Warehouse"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Periods :"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,procure_to_stock:0
+msgid ""
+"Check to make procurement to stock location of selected warehouse. If not "
+"selected procurement will be made into input location of warehouse."
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,already_in:0
+msgid ""
+"Quantity which is already picked up to this warehouse in current period."
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/wizard/stock_planning_forecast.py:60
+#, python-format
+msgid "No products in selected category !"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Stock and Sales Forecast"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_sale_forecast
+msgid "stock.sale.forecast"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,to_procure:0
+msgid "Planned In"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,stock_simulation:0
+msgid "Stock Simulation"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_planning_createlines
+msgid "stock.planning.createlines"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,incoming_before:0
+msgid ""
+"Confirmed incoming in periods before calculated (Including Already In). "
+"Between start date of current period and one day before start of calculated "
+"period."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Search  Sales Forecast"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period5_per_user:0
+msgid "This User Period5"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,history:0
+msgid "History of procurement or internal supply of this planning line."
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,company_forecast:0
+msgid ""
+"All sales forecasts for whole company (for all Warehouses) of selected "
+"Product during selected Period."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_per_user:0
+msgid "This User Period1"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_per_user:0
+msgid "This User Period3"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Stock Planning"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,minimum_op:0
+msgid "Minimum Rule"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Procure Incoming Left"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning.createlines:0
+#: view:stock.sale.forecast.createlines:0
+msgid "Create"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_view_stock_planning_form
+#: model:ir.ui.menu,name:stock_planning.menu_stock_planning
+#: model:ir.ui.menu,name:stock_planning.menu_stock_planning_manual
+#: view:stock.planning:0
+msgid "Master Procurement Schedule"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,line_time:0
+msgid "Past/Future"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period:0
+#: field:stock.period,state:0
+#: field:stock.planning,state:0
+#: field:stock.sale.forecast,state:0
+msgid "State"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.sale.forecast.createlines,product_categ_id:0
+msgid "Product Category of products which created forecasts will concern."
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_period
+msgid "stock period"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_sale_forecast_createlines
+msgid "stock.sale.forecast.createlines"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,warehouse_id:0
+#: field:stock.planning.createlines,warehouse_id:0
+#: field:stock.sale.forecast,warehouse_id:0
+#: field:stock.sale.forecast.createlines,warehouse_id:0
+msgid "Warehouse"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,stock_simulation:0
+msgid ""
+"Stock simulation at the end of selected Period.\n"
+" For current period it is: \n"
+"Initial Stock - Already Out + Already In - Expected Out + Incoming Left.\n"
+"For periods ahead it is: \n"
+"Initial Stock - Planned Out Before + Incoming Before - Planned Out + Planned "
+"In."
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.sale.forecast,analyze_company:0
+msgid "Check this box to see the sales for whole company."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Per Department :"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,incoming_before:0
+msgid "Incoming Before"
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:641
+#, python-format
+msgid ""
+" Procurement created by MPS for user: %s   Creation Date: %s                 "
+"                        \n"
+" For period: %s                                         \n"
+" according to state:                                         \n"
+" Warehouse Forecast: %s                                         \n"
+" Initial Stock: %s                                         \n"
+" Planned Out: %s    Planned In: %s                                         \n"
+" Already Out: %s    Already In: %s                                         \n"
+" Confirmed Out: %s    Confirmed In: %s                                       "
+"  \n"
+" Planned Out Before: %s    Confirmed In Before: %s                           "
+"              \n"
+" Expected Out: %s    Incoming Left: %s                                       "
+"  \n"
+" Stock Simulation: %s    Minimum stock: %s"
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:626
+#: code:addons/stock_planning/stock_planning.py:670
+#: code:addons/stock_planning/stock_planning.py:672
+#: code:addons/stock_planning/stock_planning.py:674
+#: code:addons/stock_planning/wizard/stock_planning_createlines.py:73
+#: code:addons/stock_planning/wizard/stock_planning_forecast.py:60
+#, python-format
+msgid "Error !"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_user_id:0
+msgid "This User"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Forecasts"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Supply from Another Warehouse"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Calculate Planning"
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:146
+#, python-format
+msgid "Invalid action !"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,stock_start:0
+msgid "Stock quantity one day before current period."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Procurement history"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,product_uom:0
+msgid ""
+"Unit of Measure used to show the quantities of stock calculation.You can use "
+"units from default category or from second category (UoS category)."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period.createlines:0
+msgid "Create Weekly Periods"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_stock_period_form
+msgid ""
+"Stock periods are used for stock planning. Stock periods are independent of "
+"account periods. You can use wizard for creating periods and review them "
+"here."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Calculated Period Simulation"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period.createlines:0
+msgid "Cancel"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period4_per_user:0
+msgid "This User Period4"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Stock and Sales Period"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,company_forecast:0
+msgid "Company Forecast"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,minimum_op:0
+msgid "Minimum quantity set in Minimum Stock Rules for this Warehouse"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Per User :"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning.createlines,warehouse_id:0
+msgid "Warehouse which planning will concern."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,user_id:0
+msgid "Created/Validated by"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,warehouse_forecast:0
+msgid "Warehouse Forecast"
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:674
+#, python-format
+msgid ""
+"You must specify a Source Warehouse different than calculated (destination) "
+"Warehouse !"
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:146
+#, python-format
+msgid "Cannot delete a validated sales forecast!"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period5_per_company:0
+msgid "This Company Period5"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,product_uom:0
+msgid "Product UoM"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_per_company:0
+msgid "This Company Period1"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_per_company:0
+msgid "This Company Period2"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_per_company:0
+msgid "This Company Period3"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.period,date_start:0
+#: field:stock.period.createlines,date_start:0
+msgid "Start Date"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_per_user:0
+msgid "This User Period2"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,confirmed_forecasts_only:0
+msgid "Validated Forecasts"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning.createlines,product_categ_id:0
+msgid ""
+"Planning will be created for products from Product Category selected by this "
+"field. This field is ignored when you check \"All Forecasted Product\" box."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,planned_outgoing:0
+msgid "Planned Out"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,product_qty:0
+msgid "Forecast Quantity"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Forecast"
+msgstr ""
+
+#. module: stock_planning
+#: selection:stock.period,state:0
+#: selection:stock.planning,state:0
+#: selection:stock.sale.forecast,state:0
+msgid "Draft"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Closed"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+#: view:stock.sale.forecast:0
+msgid "Warehouse "
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.sale.forecast,product_uom:0
+msgid ""
+"Unit of Measure used to show the quantities of stock calculation.You can use "
+"units form default category or from second category (UoS category)."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Planning and Situation for Calculated Period"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,planned_outgoing:0
+msgid ""
+"Enter planned outgoing quantity from selected Warehouse during the selected "
+"Period of selected Product. To plan this value look at Confirmed Out or "
+"Sales Forecasts. This value should be equal or greater than Confirmed Out."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Current Periods"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Internal Supply"
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:724
+#, python-format
+msgid "%s Pick List %s (%s,  %s) %s %s \n"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_stock_sale_forecast_createlines_form
+#: model:ir.ui.menu,name:stock_planning.menu_stock_sale_forecast_createlines
+msgid "Create Sales Forecasts"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period4_id:0
+msgid "Period4"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.period,name:0
+#: field:stock.period.createlines,name:0
+msgid "Period Name"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_id:0
+msgid "Period2"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_id:0
+msgid "Period3"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_id:0
+msgid "Period1"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_stock_planning_createlines_form
+msgid ""
+"This wizard helps create MPS planning lines for a given selected period and "
+"warehouse, so you don't have to create them one by one. The wizard doesn't "
+"duplicate lines if they already exist for this selection."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,outgoing:0
+msgid "Confirmed Out"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_stock_planning_createlines_form
+#: model:ir.ui.menu,name:stock_planning.menu_stock_planning_createlines
+#: view:stock.planning.createlines:0
+msgid "Create Stock Planning Lines"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "General Info"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_view_stock_sale_forecast_form
+msgid "Sales Forecast"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_per_warehouse:0
+msgid "This Warehouse Period1"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Sales History"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,supply_warehouse_id:0
+msgid "Source Warehouse"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.sale.forecast,product_qty:0
+msgid "Forecast Product quantity."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,stock_supply_location:0
+msgid "Stock Supply Location"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.period.createlines,date_stop:0
+msgid "Ending date for planning period."
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning.createlines,forecasted_products:0
+msgid ""
+"Check this box to create planning for all products having any forecast for "
+"selected Warehouse and Period. Product Category field will be ignored."
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:632
+#: code:addons/stock_planning/stock_planning.py:678
+#: code:addons/stock_planning/stock_planning.py:702
+#, python-format
+msgid "MPS(%s) %s"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,already_in:0
+msgid "Already In"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,product_uom_categ:0
+#: field:stock.planning,product_uos_categ:0
+#: field:stock.sale.forecast,product_uom_categ:0
+msgid "Product UoM Category"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_view_stock_sale_forecast_form
+msgid ""
+"This quantity sales forecast is an indication for Stock Planner to make "
+"procurement manually or to complement automatic procurement. You can use "
+"manual procurement with this forecast when some periods are exceptional for "
+"usual minimum stock rules."
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_view_stock_planning_form
+msgid ""
+"The Master Procurement Schedule can be the main driver for warehouse "
+"replenishment, or can complement the automatic MRP scheduling (minimum stock "
+"rules, etc.).\n"
+"Each MPS line gives you a pre-computed overview of the incoming and outgoing "
+"quantities of a given product for a given Stock Period in a given Warehouse, "
+"based on the current and future stock levels,\n"
+"as well as the planned stock moves. The forecast quantities can be altered "
+"manually, and when satisfied with resulting (simulated) Stock quantity, you "
+"can trigger the procurement of what is missing to reach your desired "
+"quantities"
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:685
+#, python-format
+msgid ""
+"Pick created from MPS by user: %s   Creation Date: %s                        "
+"             \n"
+"For period: %s   according to state:                                     \n"
+" Warehouse Forecast: %s                                     \n"
+" Initial Stock: %s                                     \n"
+" Planned Out: %s  Planned In: %s                                     \n"
+" Already Out: %s  Already In: %s                                     \n"
+" Confirmed Out: %s   Confirmed In: %s                                     \n"
+" Planned Out Before: %s   Confirmed In Before: %s                            "
+"         \n"
+" Expected Out: %s   Incoming Left: %s                                     \n"
+" Stock Simulation: %s   Minimum stock: %s "
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,period_id:0
+#: field:stock.planning.createlines,period_id:0
+#: field:stock.sale.forecast,period_id:0
+#: field:stock.sale.forecast.createlines,period_id:0
+msgid "Period"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,product_uos_categ:0
+msgid "Product UoS Category"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,active_uom:0
+#: field:stock.sale.forecast,active_uom:0
+msgid "Active UoM"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Search Stock Planning"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast.createlines,copy_forecast:0
+msgid "Copy Last Forecast"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.sale.forecast,product_id:0
+msgid "Shows which product this forecast concerns."
+msgstr ""
+
+#. module: stock_planning
+#: selection:stock.planning,state:0
+msgid "Done"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.period.createlines,period_ids:0
+msgid "Periods"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.ui.menu,name:stock_planning.menu_stock_period_creatlines
+msgid "Create Stock Periods"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period:0
+#: selection:stock.period,state:0
+#: view:stock.planning.createlines:0
+#: view:stock.sale.forecast.createlines:0
+msgid "Close"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+#: selection:stock.sale.forecast,state:0
+msgid "Validated"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period:0
+#: selection:stock.period,state:0
+msgid "Open"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.sale.forecast.createlines,copy_forecast:0
+msgid "Copy quantities from last Stock and Sale Forecast."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_per_dept:0
+msgid "This Dept Period1"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_per_dept:0
+msgid "This Dept Period3"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_per_dept:0
+msgid "This Dept Period2"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period5_per_dept:0
+msgid "This Dept Period5"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period4_per_dept:0
+msgid "This Dept Period4"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_per_warehouse:0
+msgid "This Warehouse Period2"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_per_warehouse:0
+msgid "This Warehouse Period3"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,stock_supply_location:0
+msgid ""
+"Check to supply from Stock location of Supply Warehouse. If not checked "
+"supply will be made from Output location of Supply Warehouse. Used in "
+"'Supply from Another Warehouse' with Supply Warehouse."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,create_uid:0
+msgid "Responsible"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Default UOM"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period4_per_warehouse:0
+msgid "This Warehouse Period4"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period5_per_warehouse:0
+msgid "This Warehouse Period5"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Current"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,supply_warehouse_id:0
+msgid ""
+"Warehouse used as source in supply pick move created by 'Supply from Another "
+"Warehouse'."
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_planning
+msgid "stock.planning"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.sale.forecast,warehouse_id:0
+msgid ""
+"Shows which warehouse this forecast concerns. If during stock planning you "
+"will need sales forecast for all warehouses choose any warehouse now."
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:661
+#, python-format
+msgid "%s Procurement (%s,  %s) %s %s \n"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyze_company:0
+msgid "Per Company"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,to_procure:0
+msgid ""
+"Enter quantity which (by your plan) should come in. Change this value and "
+"observe Stock simulation. This value should be equal or greater than "
+"Confirmed In."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period4_per_company:0
+msgid "This Company Period4"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning.createlines,period_id:0
+msgid "Period which planning will concern."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,already_out:0
+msgid "Already Out"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,product_id:0
+msgid "Product which this planning is created for."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Per Warehouse :"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,history:0
+msgid "Procurement History"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.period.createlines,date_start:0
+msgid "Starting date for planning period."
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_stock_period_createlines_form
+#: model:ir.actions.act_window,name:stock_planning.action_stock_period_form
+#: model:ir.ui.menu,name:stock_planning.menu_stock_period
+#: model:ir.ui.menu,name:stock_planning.menu_stock_period_main
+#: view:stock.period:0
+#: view:stock.period.createlines:0
+msgid "Stock Periods"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Stock"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,incoming:0
+msgid "Quantity of all confirmed incoming moves in calculated Period."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.period,date_stop:0
+#: field:stock.period.createlines,date_stop:0
+msgid "End Date"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "No Requisition"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,name:0
+msgid "Name"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.sale.forecast,period_id:0
+msgid "Shows which period this forecast concerns."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,product_uom:0
+msgid "UoM"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Closed Periods"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+#: field:stock.planning,product_id:0
+#: view:stock.sale.forecast:0
+#: field:stock.sale.forecast,product_id:0
+msgid "Product"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.ui.menu,name:stock_planning.menu_stock_sale_forecast
+#: model:ir.ui.menu,name:stock_planning.menu_stock_sale_forecast_all
+#: view:stock.sale.forecast:0
+msgid "Sales Forecasts"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning.createlines,product_categ_id:0
+#: field:stock.sale.forecast.createlines,product_categ_id:0
+msgid "Product Category"
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:672
+#, python-format
+msgid "You must specify a Source Warehouse !"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,procure_to_stock:0
+msgid "Procure To Stock Location"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Approve"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,period_id:0
+msgid ""
+"Period for this planning. Requisition will be created for beginning of the "
+"period."
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:631
+#, python-format
+msgid "MPS planning for %s"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,stock_start:0
+msgid "Initial Stock"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,product_amt:0
+msgid "Product Amount"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,confirmed_forecasts_only:0
+msgid ""
+"Check to take validated forecasts only. If not checked system takes "
+"validated and draft forecasts."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period5_id:0
+msgid "Period5"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_warehouse_id:0
+msgid "This Warehouse"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.sale.forecast,user_id:0
+msgid "Shows who created this forecast, or who validated."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_team_id:0
+msgid "Sales Team"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,incoming_left:0
+msgid ""
+"Quantity left to Planned incoming quantity. This is calculated difference "
+"between Planned In and Confirmed In. For current period Already In is also "
+"calculated. This value is used to create procurement for lacking quantity."
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,outgoing_left:0
+msgid ""
+"Quantity expected to go out in selected period besides Confirmed Out. As a "
+"difference between Planned Out and Confirmed Out. For current period Already "
+"Out is also calculated"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Calculate Sales History"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_stock_sale_forecast_createlines_form
+msgid ""
+"This wizard helps create many forecast lines at once. After creating them "
+"you only have to fill in the forecast quantities. The wizard doesn't "
+"duplicate the line when another one exist for the same selection."
+msgstr ""

=== added file 'stock_planning/i18n/de.po'
--- stock_planning/i18n/de.po	1970-01-01 00:00:00 +0000
+++ stock_planning/i18n/de.po	2014-05-20 13:49:41 +0000
@@ -0,0 +1,2005 @@
+# German translation for openobject-addons
+# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
+# This file is distributed under the same license as the openobject-addons package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-02-08 00:37+0000\n"
+"PO-Revision-Date: 2012-05-10 18:13+0000\n"
+"Last-Translator: Ferdinand-camptocamp <Unknown>\n"
+"Language-Team: German <de@xxxxxx>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2012-10-30 05:30+0000\n"
+"X-Generator: Launchpad (build 16206)\n"
+
+#. module: stock_planning
+#: code:addons/stock_planning/wizard/stock_planning_createlines.py:73
+#, python-format
+msgid ""
+"No forecasts for selected period or no products in selected category !"
+msgstr ""
+"Keine vorhandene Prognose für ausgew. Periode oder kein Produkt in der "
+"Kategorie !"
+
+#. module: stock_planning
+#: help:stock.planning,stock_only:0
+msgid ""
+"Check to calculate stock location of selected warehouse only. If not "
+"selected calculation is made for input, stock and output location of "
+"warehouse."
+msgstr ""
+"Wähle Option für Bestandsberechnung des Lagerortes für das ausgew. "
+"Zentrallager. Ansonstenerfolgt die Berechnung für die Lagerorte "
+"Eingangslager, Hauptlager und Ausgangslagerdes Zentrallagers."
+
+#. module: stock_planning
+#: field:stock.planning,maximum_op:0
+msgid "Maximum Rule"
+msgstr "Max. Bestand Regel"
+
+#. module: stock_planning
+#: view:stock.planning:0
+#: view:stock.sale.forecast:0
+msgid "Group By..."
+msgstr "Gruppierung..."
+
+#. module: stock_planning
+#: help:stock.sale.forecast,product_amt:0
+msgid ""
+"Forecast value which will be converted to Product Quantity according to "
+"prices."
+msgstr ""
+"Ein prognostiz. Umsatz wird konvertiert in die Produkt Menge durch "
+"einfachePreisumrechnung für das Produkt."
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:626
+#: code:addons/stock_planning/stock_planning.py:670
+#, python-format
+msgid "Incoming Left must be greater than 0 !"
+msgstr "Die zu beschaffende Menge muss grösser als 0 sein!"
+
+#. module: stock_planning
+#: help:stock.planning,outgoing_before:0
+msgid ""
+"Planned Out in periods before calculated. Between start date of current "
+"period and one day before start of calculated period."
+msgstr ""
+"Geplanter Abgang vorheriger Perioden. Dieses ist der Zeitraum zwischen "
+"Beginn der aktuellen Planperiode bis einen Tag vor Start der Periode."
+
+#. module: stock_planning
+#: help:stock.sale.forecast.createlines,warehouse_id:0
+msgid ""
+"Warehouse which forecasts will concern. If during stock planning you will "
+"need sales forecast for all warehouses choose any warehouse now."
+msgstr ""
+"Zentrallager auf dem diese Prognose beruht. Falls Sie für die "
+"Bestandsplanung eine Prognose der Verkäufe aller Zentralläger benötigen, "
+"treffen Sie jetzt eine bel. Wahl."
+
+#. module: stock_planning
+#: field:stock.planning,outgoing_left:0
+msgid "Expected Out"
+msgstr "Erwartete Abgänge"
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid " "
+msgstr " "
+
+#. module: stock_planning
+#: field:stock.planning,incoming_left:0
+msgid "Incoming Left"
+msgstr "Bedarfsmenge"
+
+#. module: stock_planning
+#: view:stock.sale.forecast.createlines:0
+msgid "Create Forecasts Lines"
+msgstr "Erzeuge Positionen f.d. Prognose"
+
+#. module: stock_planning
+#: help:stock.planning,outgoing:0
+msgid "Quantity of all confirmed outgoing moves in calculated Period."
+msgstr "Menge aller bestätigen Warenabgänge für die zu planende Periode"
+
+#. module: stock_planning
+#: view:stock.period.createlines:0
+msgid "Create Daily Periods"
+msgstr "Erzeuge Tagesperioden"
+
+#. module: stock_planning
+#: view:stock.planning:0
+#: field:stock.planning,company_id:0
+#: field:stock.planning.createlines,company_id:0
+#: view:stock.sale.forecast:0
+#: field:stock.sale.forecast,company_id:0
+#: field:stock.sale.forecast.createlines,company_id:0
+msgid "Company"
+msgstr "Unternehmen"
+
+#. module: stock_planning
+#: help:stock.planning,warehouse_forecast:0
+msgid ""
+"All sales forecasts for selected Warehouse of selected Product during "
+"selected Period."
+msgstr ""
+"Alle Verkaufsprognosen f.d.  ausgew. Zentrallager und das ausgew. Produkt "
+"innerhalb der ausgew. Periode."
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Minimum Stock Rule Indicators"
+msgstr "Indikatoren Meldebestandregel"
+
+#. module: stock_planning
+#: help:stock.sale.forecast.createlines,period_id:0
+msgid "Period which forecasts will concern."
+msgstr "Periode f. d. prognostiziert wird"
+
+#. module: stock_planning
+#: field:stock.planning,stock_only:0
+msgid "Stock Location Only"
+msgstr "Nur Lagerort"
+
+#. module: stock_planning
+#: help:stock.planning,already_out:0
+msgid ""
+"Quantity which is already dispatched out of this warehouse in current period."
+msgstr ""
+"Menge die aus dem Zentrallager in der aktuellen (Plan-)Periode abgegangen "
+"ist."
+
+#. module: stock_planning
+#: field:stock.planning,incoming:0
+msgid "Confirmed In"
+msgstr "Bestätigter Eingang"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Current Period Situation"
+msgstr "Aktueller Status d. Periode"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_stock_period_createlines_form
+msgid ""
+"This wizard helps with the creation of stock planning periods. These periods "
+"are independent of financial periods. If you need periods other than day-, "
+"week- or month-based, you may also add then manually."
+msgstr ""
+"Dieser Assistent hilft bei der Erstellung von Lagerplanungsperioden. Diese "
+"Perioden sind unabhängig von Finanz-Perioden. Manuell können auch andere "
+"Perioden als Tag/Woche/Monat  hinzugefügt werden."
+
+#. module: stock_planning
+#: view:stock.period.createlines:0
+msgid "Create Monthly Periods"
+msgstr "Erzeuge Monatl. Perioden"
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_period_createlines
+msgid "stock.period.createlines"
+msgstr "stock.period.createlines"
+
+#. module: stock_planning
+#: field:stock.planning,outgoing_before:0
+msgid "Planned Out Before"
+msgstr "Gepl. Abgang Vorperiode"
+
+#. module: stock_planning
+#: field:stock.planning.createlines,forecasted_products:0
+msgid "All Products with Forecast"
+msgstr "Alle Produkte mit Prognose"
+
+#. module: stock_planning
+#: help:stock.planning,maximum_op:0
+msgid "Maximum quantity set in Minimum Stock Rules for this Warehouse"
+msgstr ""
+"Maximale Menge die in den Minimum-Bestands-Regeln für diesen Lagerort "
+"gesetzt sind"
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Periods :"
+msgstr "Perioden :"
+
+#. module: stock_planning
+#: help:stock.planning,procure_to_stock:0
+msgid ""
+"Check to make procurement to stock location of selected warehouse. If not "
+"selected procurement will be made into input location of warehouse."
+msgstr ""
+"Ankreuzen um diesen Lagerort für Wareneingänge dieses Lagers zu verwenden. "
+"Sonst gehen Wareneingänge auf den entsprechenden Lagerort dieses Lagers"
+
+#. module: stock_planning
+#: help:stock.planning,already_in:0
+msgid ""
+"Quantity which is already picked up to this warehouse in current period."
+msgstr ""
+"Menge die in der akt. Periode bereits vom Zentrallager versendet wurde."
+
+#. module: stock_planning
+#: code:addons/stock_planning/wizard/stock_planning_forecast.py:60
+#, python-format
+msgid "No products in selected category !"
+msgstr "Keine Produkte in der ausgew. Kategorie!"
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Stock and Sales Forecast"
+msgstr "Verkauf & Bestände Prognose"
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_sale_forecast
+msgid "stock.sale.forecast"
+msgstr "stock.sale.forecast"
+
+#. module: stock_planning
+#: field:stock.planning,to_procure:0
+msgid "Planned In"
+msgstr "Erw. Eingänge"
+
+#. module: stock_planning
+#: field:stock.planning,stock_simulation:0
+msgid "Stock Simulation"
+msgstr "Simulation Bestände"
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_planning_createlines
+msgid "stock.planning.createlines"
+msgstr "stock.planning.createlines"
+
+#. module: stock_planning
+#: help:stock.planning,incoming_before:0
+msgid ""
+"Confirmed incoming in periods before calculated (Including Already In). "
+"Between start date of current period and one day before start of calculated "
+"period."
+msgstr ""
+"Bereits bestätigte Wareneingänge (inklusive bereits eingangener Waren), "
+"d.h.im Zeitraum zwischen Beginn der aktuellen Periode bis einen Tag vor "
+"Start derneu zu berechnenden Periode."
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Search  Sales Forecast"
+msgstr "Suche Verkauf Prognose"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period5_per_user:0
+msgid "This User Period5"
+msgstr "Dieser Benutzer Periode5"
+
+#. module: stock_planning
+#: help:stock.planning,history:0
+msgid "History of procurement or internal supply of this planning line."
+msgstr "Historie Beschaffung intern od. extern"
+
+#. module: stock_planning
+#: help:stock.planning,company_forecast:0
+msgid ""
+"All sales forecasts for whole company (for all Warehouses) of selected "
+"Product during selected Period."
+msgstr ""
+"Alle Verkaufsprognosen für das gesamte Unternehm. (alle Zentralläger) für "
+"ein ausgew. Produkt innerhalb der ausgew. Periode."
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_per_user:0
+msgid "This User Period1"
+msgstr "Dieser Benutzer Periode1"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_per_user:0
+msgid "This User Period3"
+msgstr "Dieser Benutzer Periode3"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Stock Planning"
+msgstr "Planung Bestände"
+
+#. module: stock_planning
+#: field:stock.planning,minimum_op:0
+msgid "Minimum Rule"
+msgstr "Meldebestandregel"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Procure Incoming Left"
+msgstr "Berechne Bedarfsmenge"
+
+#. module: stock_planning
+#: view:stock.planning.createlines:0
+#: view:stock.sale.forecast.createlines:0
+msgid "Create"
+msgstr "Erstelle"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_view_stock_planning_form
+#: model:ir.ui.menu,name:stock_planning.menu_stock_planning
+#: model:ir.ui.menu,name:stock_planning.menu_stock_planning_manual
+#: view:stock.planning:0
+msgid "Master Procurement Schedule"
+msgstr "Masterplan Beschaffung (MPS)"
+
+#. module: stock_planning
+#: field:stock.planning,line_time:0
+msgid "Past/Future"
+msgstr "Vergang. / Zukunft"
+
+#. module: stock_planning
+#: view:stock.period:0
+#: field:stock.period,state:0
+#: field:stock.planning,state:0
+#: field:stock.sale.forecast,state:0
+msgid "State"
+msgstr "Status"
+
+#. module: stock_planning
+#: help:stock.sale.forecast.createlines,product_categ_id:0
+msgid "Product Category of products which created forecasts will concern."
+msgstr "Produktkategorie auf die sich die Verbrauchsprognose bezieht."
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_period
+msgid "stock period"
+msgstr "Lager Periode"
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_sale_forecast_createlines
+msgid "stock.sale.forecast.createlines"
+msgstr "stock.sale.forecast.createlines"
+
+#. module: stock_planning
+#: field:stock.planning,warehouse_id:0
+#: field:stock.planning.createlines,warehouse_id:0
+#: field:stock.sale.forecast,warehouse_id:0
+#: field:stock.sale.forecast.createlines,warehouse_id:0
+msgid "Warehouse"
+msgstr "Zentrallager"
+
+#. module: stock_planning
+#: help:stock.planning,stock_simulation:0
+msgid ""
+"Stock simulation at the end of selected Period.\n"
+" For current period it is: \n"
+"Initial Stock - Already Out + Already In - Expected Out + Incoming Left.\n"
+"For periods ahead it is: \n"
+"Initial Stock - Planned Out Before + Incoming Before - Planned Out + Planned "
+"In."
+msgstr ""
+"Simulation des Lagerbestands zum Monatsende der gewählten Periode.\n"
+" Für die aktuelle Periode lautet das Ergebnis folgendermassen:: \n"
+"Anfangsbestand - Bereits erfolgte Abgänge + Bereits erfolgte Eingänge - "
+"Erwarteter Versand + Bedarfsmenge.\n"
+"Für zukünftige Perioden: \n"
+"Anfangsbestand - Geplante Abgänge Vorperioden + Geplante Eingänge "
+"Vorperioden - Zuk. Gepl. Abgang + Zuk. Gepl.Eingang."
+
+#. module: stock_planning
+#: help:stock.sale.forecast,analyze_company:0
+msgid "Check this box to see the sales for whole company."
+msgstr "Wähle Option um Verkäufe d. gesamten Unternehmens zu sehen."
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Per Department :"
+msgstr "Nach Abteilung:"
+
+#. module: stock_planning
+#: field:stock.planning,incoming_before:0
+msgid "Incoming Before"
+msgstr "Erw. Eingang"
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:641
+#, python-format
+msgid ""
+" Procurement created by MPS for user: %s   Creation Date: %s                 "
+"                        \n"
+" For period: %s                                         \n"
+" according to state:                                         \n"
+" Warehouse Forecast: %s                                         \n"
+" Initial Stock: %s                                         \n"
+" Planned Out: %s    Planned In: %s                                         \n"
+" Already Out: %s    Already In: %s                                         \n"
+" Confirmed Out: %s    Confirmed In: %s                                       "
+"  \n"
+" Planned Out Before: %s    Confirmed In Before: %s                           "
+"              \n"
+" Expected Out: %s    Incoming Left: %s                                       "
+"  \n"
+" Stock Simulation: %s    Minimum stock: %s"
+msgstr ""
+" Beschaffungsauftag erstell aufgrund des Materialplanungssstems für "
+"Benutzer: %s   Erstellungsdatum: %s                                         "
+"\n"
+" Für Periode: %s                                         \n"
+" entsprechend Status:                                         \n"
+" Lagervorschau: %s                                         \n"
+" Anfangsbestand: %s                                         \n"
+" geplante Ausgänge: %s   Geplante Eingänge: %s                               "
+"          \n"
+" erledigte Ausgänge: %s    Erledigte Eingänge: %s                            "
+"             \n"
+" Bestätigte Ausgänge: %s    Bestätigte Eingänge: %s                          "
+"               \n"
+" Geplante Ausgänge vor: %s    Geplante Eingänge vor: %s                      "
+"                   \n"
+" Erwartete Ausgänge: %s   Restliche Eingänge: %s                             "
+"            \n"
+" Lager Simulation: %s    Minimum Bestand: %s"
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:626
+#: code:addons/stock_planning/stock_planning.py:670
+#: code:addons/stock_planning/stock_planning.py:672
+#: code:addons/stock_planning/stock_planning.py:674
+#: code:addons/stock_planning/wizard/stock_planning_createlines.py:73
+#: code:addons/stock_planning/wizard/stock_planning_forecast.py:60
+#, python-format
+msgid "Error !"
+msgstr "Fehler !"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_user_id:0
+msgid "This User"
+msgstr "Dieser Benutzer"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Forecasts"
+msgstr "Prognosen"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Supply from Another Warehouse"
+msgstr "Beschaffe aus and. Zentrallager"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Calculate Planning"
+msgstr "Berechne Planung"
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:146
+#, python-format
+msgid "Invalid action !"
+msgstr "Fehlerhafte Aktion!"
+
+#. module: stock_planning
+#: help:stock.planning,stock_start:0
+msgid "Stock quantity one day before current period."
+msgstr "Bestand einen Tag vor akt. Periode"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Procurement history"
+msgstr "Beschaffung Historie"
+
+#. module: stock_planning
+#: help:stock.planning,product_uom:0
+msgid ""
+"Unit of Measure used to show the quantities of stock calculation.You can use "
+"units from default category or from second category (UoS category)."
+msgstr ""
+"Masseinheit für die Lagerkalkulation. Sie können entweder diese oder die "
+"sekundäre Kategorie (Verkaufseinheit) verwenden"
+
+#. module: stock_planning
+#: view:stock.period.createlines:0
+msgid "Create Weekly Periods"
+msgstr "Erzeuge Wöchentl. Perioden"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_stock_period_form
+msgid ""
+"Stock periods are used for stock planning. Stock periods are independent of "
+"account periods. You can use wizard for creating periods and review them "
+"here."
+msgstr ""
+"Lagerperioden werden für die Lagerplanung verwendet und sind unabhängig von "
+"den Buchhaltungsperioden. Mit dem Assistenten können Sie diese erstellen und "
+"überwachen"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Calculated Period Simulation"
+msgstr "Simulation d. Periode"
+
+#. module: stock_planning
+#: view:stock.period.createlines:0
+msgid "Cancel"
+msgstr "Abbrechen"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period4_per_user:0
+msgid "This User Period4"
+msgstr "Dieser Benutzer Periode4"
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Stock and Sales Period"
+msgstr "Bestand und Verkauf Periode"
+
+#. module: stock_planning
+#: field:stock.planning,company_forecast:0
+msgid "Company Forecast"
+msgstr "Unternehmens Prognose"
+
+#. module: stock_planning
+#: help:stock.planning,minimum_op:0
+msgid "Minimum quantity set in Minimum Stock Rules for this Warehouse"
+msgstr "Minimum Bestand der in den Regeln für dieses Lager definiert ist."
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Per User :"
+msgstr "Pro Benutzer:"
+
+#. module: stock_planning
+#: help:stock.planning.createlines,warehouse_id:0
+msgid "Warehouse which planning will concern."
+msgstr "Zentrallager für diese Prognose"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,user_id:0
+msgid "Created/Validated by"
+msgstr "Erstellt/Geprüft durch"
+
+#. module: stock_planning
+#: field:stock.planning,warehouse_forecast:0
+msgid "Warehouse Forecast"
+msgstr "Prognose f. Zentrallager"
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:674
+#, python-format
+msgid ""
+"You must specify a Source Warehouse different than calculated (destination) "
+"Warehouse !"
+msgstr ""
+"Das Zentrallager für die Quelle sollte ein anderes sein als das errechnete "
+"(Ziel) Zentrallager !"
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:146
+#, python-format
+msgid "Cannot delete a validated sales forecast!"
+msgstr "Kann bestätigte Verkaufsvorschau nicht löschen!"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period5_per_company:0
+msgid "This Company Period5"
+msgstr "Dieses Unternehmen Periode5"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,product_uom:0
+msgid "Product UoM"
+msgstr "Produkt ME"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_per_company:0
+msgid "This Company Period1"
+msgstr "Dieses Unternehmen Periode1"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_per_company:0
+msgid "This Company Period2"
+msgstr "Dieses Unternehmen Periode2"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_per_company:0
+msgid "This Company Period3"
+msgstr "Dieses Unternehmen Periode3"
+
+#. module: stock_planning
+#: field:stock.period,date_start:0
+#: field:stock.period.createlines,date_start:0
+msgid "Start Date"
+msgstr "Start am"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_per_user:0
+msgid "This User Period2"
+msgstr "Dieser Benutzer Periode2"
+
+#. module: stock_planning
+#: field:stock.planning,confirmed_forecasts_only:0
+msgid "Validated Forecasts"
+msgstr "Genehmigte Prognose"
+
+#. module: stock_planning
+#: help:stock.planning.createlines,product_categ_id:0
+msgid ""
+"Planning will be created for products from Product Category selected by this "
+"field. This field is ignored when you check \"All Forecasted Product\" box."
+msgstr ""
+"Planung wird erzeugt für die Produkte die durch diese Kategorie ausgewählt "
+"wurden Dieses Feld wird ignoriert bei Aktivierung v. \"Alle Prognost. "
+"Produkte\" ."
+
+#. module: stock_planning
+#: field:stock.planning,planned_outgoing:0
+msgid "Planned Out"
+msgstr "Gepl. Abgang"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,product_qty:0
+msgid "Forecast Quantity"
+msgstr "Vorschau Menge"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Forecast"
+msgstr "Prognose"
+
+#. module: stock_planning
+#: selection:stock.period,state:0
+#: selection:stock.planning,state:0
+#: selection:stock.sale.forecast,state:0
+msgid "Draft"
+msgstr "Entwurf"
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Closed"
+msgstr "Beendet"
+
+#. module: stock_planning
+#: view:stock.planning:0
+#: view:stock.sale.forecast:0
+msgid "Warehouse "
+msgstr "Zentrallager "
+
+#. module: stock_planning
+#: help:stock.sale.forecast,product_uom:0
+msgid ""
+"Unit of Measure used to show the quantities of stock calculation.You can use "
+"units form default category or from second category (UoS category)."
+msgstr ""
+"Masseinheit für die Lagermengen. Sie können diese oder die sekundäre "
+"Kategorie (Verkaufseinheit) verwenden."
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Planning and Situation for Calculated Period"
+msgstr "Prognose und akt. Situation f. Periode"
+
+#. module: stock_planning
+#: help:stock.planning,planned_outgoing:0
+msgid ""
+"Enter planned outgoing quantity from selected Warehouse during the selected "
+"Period of selected Product. To plan this value look at Confirmed Out or "
+"Sales Forecasts. This value should be equal or greater than Confirmed Out."
+msgstr ""
+"Erfassen den geplanten Abgang des ausgewählten Zentrallagers für die "
+"selektierten Perioden und Produkte. Vergleichen Sie für die Eingabe mit den "
+"Wert der bereits bestätigten Abgänge oder des Prognosewerts für den Verkauf. "
+"Der einzutragende Wert sollte größer oder gleich dem bereits bestätigten "
+"Abgang sein."
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Current Periods"
+msgstr "aktuelle Perioden"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Internal Supply"
+msgstr "Interne Beschaffung"
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:724
+#, python-format
+msgid "%s Pick List %s (%s,  %s) %s %s \n"
+msgstr "%s Lieferscheinliste %s (%s,  %s) %s %s \n"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_stock_sale_forecast_createlines_form
+#: model:ir.ui.menu,name:stock_planning.menu_stock_sale_forecast_createlines
+msgid "Create Sales Forecasts"
+msgstr "Erzeuge Verkaufsprognose"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period4_id:0
+msgid "Period4"
+msgstr "Periode4"
+
+#. module: stock_planning
+#: field:stock.period,name:0
+#: field:stock.period.createlines,name:0
+msgid "Period Name"
+msgstr "Periode Bezeichn."
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_id:0
+msgid "Period2"
+msgstr "Periode2"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_id:0
+msgid "Period3"
+msgstr "Periode3"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_id:0
+msgid "Period1"
+msgstr "Periode1"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_stock_planning_createlines_form
+msgid ""
+"This wizard helps create MPS planning lines for a given selected period and "
+"warehouse, so you don't have to create them one by one. The wizard doesn't "
+"duplicate lines if they already exist for this selection."
+msgstr ""
+"Dieser Assistent hilft MPS Zeilen für  bestimmte Perioden und Lager zu "
+"erzeugen um diese nicht einzeln anlegen zu müssen.  Bestehende Zeilen werden "
+"nicht dupliziert."
+
+#. module: stock_planning
+#: field:stock.planning,outgoing:0
+msgid "Confirmed Out"
+msgstr "Bestät. Abgang"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_stock_planning_createlines_form
+#: model:ir.ui.menu,name:stock_planning.menu_stock_planning_createlines
+#: view:stock.planning.createlines:0
+msgid "Create Stock Planning Lines"
+msgstr "Erzeuge Pos. f. Planung Bestände"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "General Info"
+msgstr "Allgemeine Info"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_view_stock_sale_forecast_form
+msgid "Sales Forecast"
+msgstr "Verkauf Prognose"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_per_warehouse:0
+msgid "This Warehouse Period1"
+msgstr "Dieses Zentrallager Periode1"
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Sales History"
+msgstr "Verkauf Historie"
+
+#. module: stock_planning
+#: field:stock.planning,supply_warehouse_id:0
+msgid "Source Warehouse"
+msgstr "Quelle Zentrallager"
+
+#. module: stock_planning
+#: help:stock.sale.forecast,product_qty:0
+msgid "Forecast Product quantity."
+msgstr "Vorschau Menge"
+
+#. module: stock_planning
+#: field:stock.planning,stock_supply_location:0
+msgid "Stock Supply Location"
+msgstr "Lagerort Wareneingang"
+
+#. module: stock_planning
+#: help:stock.period.createlines,date_stop:0
+msgid "Ending date for planning period."
+msgstr "Ende Datum f. Prognoseperiode"
+
+#. module: stock_planning
+#: help:stock.planning.createlines,forecasted_products:0
+msgid ""
+"Check this box to create planning for all products having any forecast for "
+"selected Warehouse and Period. Product Category field will be ignored."
+msgstr ""
+"Aktiviere d. Option um alle Produkte ohne bereits exist. Prognose für das "
+"gew. Zentrallager u. die gew. Periode auszuwählen. Die Produkt Kategorie "
+"field wird i.d. Fall ignoriert."
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:632
+#: code:addons/stock_planning/stock_planning.py:678
+#: code:addons/stock_planning/stock_planning.py:702
+#, python-format
+msgid "MPS(%s) %s"
+msgstr "MPS(%s) %s"
+
+#. module: stock_planning
+#: field:stock.planning,already_in:0
+msgid "Already In"
+msgstr "Bereits Eingegangen"
+
+#. module: stock_planning
+#: field:stock.planning,product_uom_categ:0
+#: field:stock.planning,product_uos_categ:0
+#: field:stock.sale.forecast,product_uom_categ:0
+msgid "Product UoM Category"
+msgstr "Produkt ME Kategorie"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_view_stock_sale_forecast_form
+msgid ""
+"This quantity sales forecast is an indication for Stock Planner to make "
+"procurement manually or to complement automatic procurement. You can use "
+"manual procurement with this forecast when some periods are exceptional for "
+"usual minimum stock rules."
+msgstr ""
+"Masseinheit für die Lagerkalkulation. Sie können entweder diese oder die "
+"sekundäre Kategorie (Verkaufseinheit) verwenden"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_view_stock_planning_form
+msgid ""
+"The Master Procurement Schedule can be the main driver for warehouse "
+"replenishment, or can complement the automatic MRP scheduling (minimum stock "
+"rules, etc.).\n"
+"Each MPS line gives you a pre-computed overview of the incoming and outgoing "
+"quantities of a given product for a given Stock Period in a given Warehouse, "
+"based on the current and future stock levels,\n"
+"as well as the planned stock moves. The forecast quantities can be altered "
+"manually, and when satisfied with resulting (simulated) Stock quantity, you "
+"can trigger the procurement of what is missing to reach your desired "
+"quantities"
+msgstr ""
+"Der Einkaufsgeneralplan kann der hauptsächliche Treiber für die "
+"Lagernachbeschaffung sein oder die automatischen Bestellungen ergänzen( "
+"Minimale Lagermenge,...)\n"
+"Jede Zeile gibt einen Überblick über die eingehenden und ausgehenden Mengen "
+"in einer Lagerperiode für ein bestimmtes Lager und basierende auf den "
+"geplanten Lagerbuchungen.\n"
+"Die errechneten Mengen können manuell verändert werden und in einen "
+"Beschaffungsauftrag umgewandelt werden um die geplanten Mengen zu erreichen."
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:685
+#, python-format
+msgid ""
+"Pick created from MPS by user: %s   Creation Date: %s                        "
+"             \n"
+"For period: %s   according to state:                                     \n"
+" Warehouse Forecast: %s                                     \n"
+" Initial Stock: %s                                     \n"
+" Planned Out: %s  Planned In: %s                                     \n"
+" Already Out: %s  Already In: %s                                     \n"
+" Confirmed Out: %s   Confirmed In: %s                                     \n"
+" Planned Out Before: %s   Confirmed In Before: %s                            "
+"         \n"
+" Expected Out: %s   Incoming Left: %s                                     \n"
+" Stock Simulation: %s   Minimum stock: %s "
+msgstr ""
+"Lieferschein erstellt im MPS von Benutzer: %s   Erstellungsdatum: %s         "
+"                            \n"
+"Für Periode: %s   entspricht Status:                                     \n"
+" Lagervorschau: %s                                     \n"
+" Anfangsbestand: %s                                     \n"
+" Geplant Auslieferung: %s  Geplanter Eingang: %s                             "
+"        \n"
+" bereits ausgeliefert: %s  Bereits eingegangen: %s                           "
+"          \n"
+" bestätigte Auslieferung: %s   Bestätigter Eingang: %s                       "
+"              \n"
+" geplante Auslieferung vor: %s   Geplanter Eingang vor: %s                   "
+"                  \n"
+" erwartete Auslieferung: %s   restlicher Eingang: %s                         "
+"            \n"
+" Lager Simulation: %s   Minimumbestand: %s "
+
+#. module: stock_planning
+#: field:stock.planning,period_id:0
+#: field:stock.planning.createlines,period_id:0
+#: field:stock.sale.forecast,period_id:0
+#: field:stock.sale.forecast.createlines,period_id:0
+msgid "Period"
+msgstr "Periode"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,product_uos_categ:0
+msgid "Product UoS Category"
+msgstr "Produkt ME VK Kategorie"
+
+#. module: stock_planning
+#: field:stock.planning,active_uom:0
+#: field:stock.sale.forecast,active_uom:0
+msgid "Active UoM"
+msgstr "Aktive ME"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Search Stock Planning"
+msgstr "Suche Planung Bestände"
+
+#. module: stock_planning
+#: field:stock.sale.forecast.createlines,copy_forecast:0
+msgid "Copy Last Forecast"
+msgstr "Kopiere letzte Prognose"
+
+#. module: stock_planning
+#: help:stock.sale.forecast,product_id:0
+msgid "Shows which product this forecast concerns."
+msgstr "Zeigt Produkte f. diese Prognose"
+
+#. module: stock_planning
+#: selection:stock.planning,state:0
+msgid "Done"
+msgstr "Erledigt"
+
+#. module: stock_planning
+#: field:stock.period.createlines,period_ids:0
+msgid "Periods"
+msgstr "Perioden"
+
+#. module: stock_planning
+#: model:ir.ui.menu,name:stock_planning.menu_stock_period_creatlines
+msgid "Create Stock Periods"
+msgstr "Erstelle Lager Perioden"
+
+#. module: stock_planning
+#: view:stock.period:0
+#: selection:stock.period,state:0
+#: view:stock.planning.createlines:0
+#: view:stock.sale.forecast.createlines:0
+msgid "Close"
+msgstr "Beenden"
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+#: selection:stock.sale.forecast,state:0
+msgid "Validated"
+msgstr "Genehmigt"
+
+#. module: stock_planning
+#: view:stock.period:0
+#: selection:stock.period,state:0
+msgid "Open"
+msgstr "Offen"
+
+#. module: stock_planning
+#: help:stock.sale.forecast.createlines,copy_forecast:0
+msgid "Copy quantities from last Stock and Sale Forecast."
+msgstr "Kopiere Mengen von letztmaligem Bestand und Verkauf Prognose"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_per_dept:0
+msgid "This Dept Period1"
+msgstr "Diese Abteilung Periode1"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_per_dept:0
+msgid "This Dept Period3"
+msgstr "Diese Abteilung Periode3"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_per_dept:0
+msgid "This Dept Period2"
+msgstr "Diese Abteilung Periode2"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period5_per_dept:0
+msgid "This Dept Period5"
+msgstr "Diese Abteilung Periode5"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period4_per_dept:0
+msgid "This Dept Period4"
+msgstr "Diese Abteilung Periode4"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_per_warehouse:0
+msgid "This Warehouse Period2"
+msgstr "Dieses Zentrallager Periode2"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_per_warehouse:0
+msgid "This Warehouse Period3"
+msgstr "Dieses Zentrallager Periode2"
+
+#. module: stock_planning
+#: help:stock.planning,stock_supply_location:0
+msgid ""
+"Check to supply from Stock location of Supply Warehouse. If not checked "
+"supply will be made from Output location of Supply Warehouse. Used in "
+"'Supply from Another Warehouse' with Supply Warehouse."
+msgstr ""
+"Aktiveren, um vom Lagerort des Lagers zu liefern. Sonst wird das "
+"Ausgangslager des Lieferlagers verwendet. Wird in \"Lieferung von anderem "
+"lager\" verwendet."
+
+#. module: stock_planning
+#: field:stock.sale.forecast,create_uid:0
+msgid "Responsible"
+msgstr "Verantwortlich"
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Default UOM"
+msgstr "Standard ME"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period4_per_warehouse:0
+msgid "This Warehouse Period4"
+msgstr "Dieses Zentrallager Periode4"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period5_per_warehouse:0
+msgid "This Warehouse Period5"
+msgstr "Dieses Zentrallager Periode5"
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Current"
+msgstr "Aktuell"
+
+#. module: stock_planning
+#: help:stock.planning,supply_warehouse_id:0
+msgid ""
+"Warehouse used as source in supply pick move created by 'Supply from Another "
+"Warehouse'."
+msgstr ""
+"Dieses Lager wird als Herkunft für einen Beschaffungsvorgang verwendet, wenn "
+"\"Beschaffung von anderem Lager\" gewählt wird."
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_planning
+msgid "stock.planning"
+msgstr "stock.planning"
+
+#. module: stock_planning
+#: help:stock.sale.forecast,warehouse_id:0
+msgid ""
+"Shows which warehouse this forecast concerns. If during stock planning you "
+"will need sales forecast for all warehouses choose any warehouse now."
+msgstr ""
+"Anzeige des Zentrallagers auf dem diese Prognose beruht. Falls Sie für die "
+"Bestandsplanung eine Prognose der Verkäufe aller Zentralläger benötigen, "
+"treffen Sie jetzt eine bel. Wahl."
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:661
+#, python-format
+msgid "%s Procurement (%s,  %s) %s %s \n"
+msgstr "%s Beschaffung (%s,  %s) %s %s \n"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyze_company:0
+msgid "Per Company"
+msgstr "Nach Unternehmen"
+
+#. module: stock_planning
+#: help:stock.planning,to_procure:0
+msgid ""
+"Enter quantity which (by your plan) should come in. Change this value and "
+"observe Stock simulation. This value should be equal or greater than "
+"Confirmed In."
+msgstr ""
+"Gebe die erwartete Menge für den Eingang (Ihre Planung) ein. Ändere den Wert "
+"und beobachte Auswirkung auf die Bestandssimulation. Der Wert sollte grösser "
+"oder gleich dem bereits best. Eingang sein."
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period4_per_company:0
+msgid "This Company Period4"
+msgstr "Dieses Unternehmen Periode4"
+
+#. module: stock_planning
+#: help:stock.planning.createlines,period_id:0
+msgid "Period which planning will concern."
+msgstr "Periode auf die sich Prognose bezieht"
+
+#. module: stock_planning
+#: field:stock.planning,already_out:0
+msgid "Already Out"
+msgstr "Bereits Abgegangen"
+
+#. module: stock_planning
+#: help:stock.planning,product_id:0
+msgid "Product which this planning is created for."
+msgstr "Produkt auf das sich diese Planung bezieht"
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Per Warehouse :"
+msgstr "Nach Zentrallager:"
+
+#. module: stock_planning
+#: field:stock.planning,history:0
+msgid "Procurement History"
+msgstr "Historie Beschaffung"
+
+#. module: stock_planning
+#: help:stock.period.createlines,date_start:0
+msgid "Starting date for planning period."
+msgstr "Start Datum der Prognose Periode"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_stock_period_createlines_form
+#: model:ir.actions.act_window,name:stock_planning.action_stock_period_form
+#: model:ir.ui.menu,name:stock_planning.menu_stock_period
+#: model:ir.ui.menu,name:stock_planning.menu_stock_period_main
+#: view:stock.period:0
+#: view:stock.period.createlines:0
+msgid "Stock Periods"
+msgstr "Lagerperioden"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Stock"
+msgstr "Lager"
+
+#. module: stock_planning
+#: help:stock.planning,incoming:0
+msgid "Quantity of all confirmed incoming moves in calculated Period."
+msgstr "Menge bestät. Eingang in d. Periode"
+
+#. module: stock_planning
+#: field:stock.period,date_stop:0
+#: field:stock.period.createlines,date_stop:0
+msgid "End Date"
+msgstr "Ende Datum"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "No Requisition"
+msgstr "Keine Anforderung"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,name:0
+msgid "Name"
+msgstr "Bezeichnung"
+
+#. module: stock_planning
+#: help:stock.sale.forecast,period_id:0
+msgid "Shows which period this forecast concerns."
+msgstr "Zeigt Periode für diese Prognose"
+
+#. module: stock_planning
+#: field:stock.planning,product_uom:0
+msgid "UoM"
+msgstr "ME"
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Closed Periods"
+msgstr "Abgeschlossene Perioden"
+
+#. module: stock_planning
+#: view:stock.planning:0
+#: field:stock.planning,product_id:0
+#: view:stock.sale.forecast:0
+#: field:stock.sale.forecast,product_id:0
+msgid "Product"
+msgstr "Produkt"
+
+#. module: stock_planning
+#: model:ir.ui.menu,name:stock_planning.menu_stock_sale_forecast
+#: model:ir.ui.menu,name:stock_planning.menu_stock_sale_forecast_all
+#: view:stock.sale.forecast:0
+msgid "Sales Forecasts"
+msgstr "Verkauf Prognosen"
+
+#. module: stock_planning
+#: field:stock.planning.createlines,product_categ_id:0
+#: field:stock.sale.forecast.createlines,product_categ_id:0
+msgid "Product Category"
+msgstr "Produkt Kategorie"
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:672
+#, python-format
+msgid "You must specify a Source Warehouse !"
+msgstr "Sie müssen Zentrallager als Quelle wählen !"
+
+#. module: stock_planning
+#: field:stock.planning,procure_to_stock:0
+msgid "Procure To Stock Location"
+msgstr "Beschaffe für Lagerort"
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Approve"
+msgstr "Genehmige"
+
+#. module: stock_planning
+#: help:stock.planning,period_id:0
+msgid ""
+"Period for this planning. Requisition will be created for beginning of the "
+"period."
+msgstr ""
+"Periode für d. Planung. Anforderung wird erzeugt zum Beginn der Periode."
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:631
+#, python-format
+msgid "MPS planning for %s"
+msgstr "MPS für %s"
+
+#. module: stock_planning
+#: field:stock.planning,stock_start:0
+msgid "Initial Stock"
+msgstr "Anfangsbestand"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,product_amt:0
+msgid "Product Amount"
+msgstr "Produkt Betrag"
+
+#. module: stock_planning
+#: help:stock.planning,confirmed_forecasts_only:0
+msgid ""
+"Check to take validated forecasts only. If not checked system takes "
+"validated and draft forecasts."
+msgstr ""
+"Option zur ausschliessl. Auswahl von genehmigten Prognosen. Ansonsten werden "
+"genehmigte Prognosen sowie Prognosen im Entwurf Status herangezogen."
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period5_id:0
+msgid "Period5"
+msgstr "Periode5"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_warehouse_id:0
+msgid "This Warehouse"
+msgstr "Dieses Zentrallager"
+
+#. module: stock_planning
+#: help:stock.sale.forecast,user_id:0
+msgid "Shows who created this forecast, or who validated."
+msgstr ""
+"Zeigt an wer die Prognose erstellt hat, bzw. wer Genehmigung erteilt hat."
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_team_id:0
+msgid "Sales Team"
+msgstr "Verkaufsteam"
+
+#. module: stock_planning
+#: help:stock.planning,incoming_left:0
+msgid ""
+"Quantity left to Planned incoming quantity. This is calculated difference "
+"between Planned In and Confirmed In. For current period Already In is also "
+"calculated. This value is used to create procurement for lacking quantity."
+msgstr ""
+"Offene Liefermenge für die Planung des Eingangs. Dieses entspricht der "
+"Differenz zwischen geplantem Eingang und bereits bestät. Eingang. Für die "
+"aktuelle Periode werden auch die bereits erfolgten Eingängeberücksichtigt. "
+"Dieser Wert wird verwendet für die Beschaffung der fehlenden Menge."
+
+#. module: stock_planning
+#: help:stock.planning,outgoing_left:0
+msgid ""
+"Quantity expected to go out in selected period besides Confirmed Out. As a "
+"difference between Planned Out and Confirmed Out. For current period Already "
+"Out is also calculated"
+msgstr ""
+"Auslieferungsmengen die zusätzlich zum bestätigen Warenausgang erwartet "
+"werden als Differenz zwischen geplantem und bestätigtem Ausgang. Für die "
+"laufende Periode wird auch der tatsächlich stattgefundene Ausgang berechnet."
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Calculate Sales History"
+msgstr "Berechne Verkauf Historie"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_stock_sale_forecast_createlines_form
+msgid ""
+"This wizard helps create many forecast lines at once. After creating them "
+"you only have to fill in the forecast quantities. The wizard doesn't "
+"duplicate the line when another one exist for the same selection."
+msgstr ""
+"Dieser Assistent erzeugt viele Vorschauzeilen auf einmal. Danach müssen Sie "
+"nur die Mengen eintragen. Der Assistent erzeugt keine Duplikate für die "
+"selben Auswahlkriterien."
+
+#~ msgid "This Copmany Period1"
+#~ msgstr "Dieses Unternehmen Periode1"
+
+#, python-format
+#~ msgid ""
+#~ "\n"
+#~ " Already Out: "
+#~ msgstr ""
+#~ "\n"
+#~ " Bereits Abgegangen: "
+
+#~ msgid "Invalid model name in the action definition."
+#~ msgstr "Fehlerhafte Modellbezeichnung für diese Aktion"
+
+#~ msgid "Requisition history"
+#~ msgstr "Historie Anforderungen"
+
+#~ msgid "Create Stock and Sales Periods"
+#~ msgstr "Erzeuge Perioden f. Planung"
+
+#~ msgid ""
+#~ "Chect to make procurement to stock location of selected warehouse. If not "
+#~ "selected procurement will be made into input location of warehouse."
+#~ msgstr ""
+#~ "Wähle Option um Beschaffungsvorschlag dem Hauptlager(-ort) des Zentrallagers "
+#~ "zuzuordnen. Ansonsten erfolgt eine Zuordnung der Beschaffung zum "
+#~ "Eingangslager(-ort)."
+
+#, python-format
+#~ msgid ""
+#~ "\n"
+#~ " Planned Out Before: "
+#~ msgstr ""
+#~ "\n"
+#~ " Gepl. Abgang Vorperiode: "
+
+#~ msgid ""
+#~ "Warehouse used as source in supply pick move created by 'Supply from Another "
+#~ "Warhouse'."
+#~ msgstr ""
+#~ "Wir verwenden Zentrallager als Quelle für Wareneingänge die durch eine "
+#~ "'Beschaffung a. and. Zentrallager' generiert wurde."
+
+#, python-format
+#~ msgid "    Confirmed In Before: "
+#~ msgstr "    Bestät. Eingang Vorperiode "
+
+#~ msgid "This Department"
+#~ msgstr "Diese Abteilung"
+
+#~ msgid "Invalid XML for View Architecture!"
+#~ msgstr "Fehlerhafter XML Quellcode für diese Ansicht!"
+
+#, python-format
+#~ msgid "  Creation Date: "
+#~ msgstr "  Datum Erstellung "
+
+#, python-format
+#~ msgid "Manual planning for "
+#~ msgstr "Manuelle Planung von "
+
+#, python-format
+#~ msgid "Procurement created in MPS by user: "
+#~ msgstr "Beschaffungsvorschlag im MPS durch Benutzer: "
+
+#~ msgid "Maximum quantity set in Minimum Stock Rules for this Warhouse"
+#~ msgstr "Max. Menge in Meldebestandregel"
+
+#~ msgid "Creates planning lines for selected period and warehouse."
+#~ msgstr "Erzeuge Prognosepositionen für ausgew. Periode u. Zentrallager."
+
+#, python-format
+#~ msgid ""
+#~ "\n"
+#~ " Warehouse Forecast: "
+#~ msgstr ""
+#~ "\n"
+#~ " Zentrallager Prognose: "
+
+#, python-format
+#~ msgid "Cannot delete Validated Sale Forecasts !"
+#~ msgstr "Kann bereits genehmigte Verkaufsprognose nicht löschen !"
+
+#~ msgid "Note: Doesn't duplicate existing lines created by you."
+#~ msgstr "Hinweis: Duplizieren Sie keine bereits selbst erstellten Positionen."
+
+#~ msgid ""
+#~ "Unit of Measure used to show the quanities of stock calculation.You can use "
+#~ "units form default category or from second category (UoS category)."
+#~ msgstr ""
+#~ "Genutzte Mengeneinheit für Anzeige und Berechnung der Kalkulation. Sie "
+#~ "können als Einheit die Standard Mengeneinheit nutzen oder alternativ die "
+#~ "Mengeneinheit für den Verkauf (ME VK)."
+
+#, python-format
+#~ msgid ""
+#~ "\n"
+#~ " Planned Out: "
+#~ msgstr ""
+#~ "\n"
+#~ " Gepl. Abgang: "
+
+#~ msgid "Create periods for Stock and Sales Planning"
+#~ msgstr "Erzeuge Perioden f. Planung von Verkäufen u. Beständen"
+
+#~ msgid ""
+#~ "\n"
+#~ "This module is based on original OpenERP SA module stock_planning version "
+#~ "1.0 of the same name Master Procurement Schedule.\n"
+#~ "\n"
+#~ "Purpose of MPS is to allow create a manual procurement (requisition) apart "
+#~ "of MRP scheduler (which works automatically on minimum stock rules).\n"
+#~ "\n"
+#~ "Terms used in the module:\n"
+#~ "- Stock and Sales Period - is the time (between Start Date and End Date) for "
+#~ "which you plan Stock and Sales Forecast and make Procurement Planning. \n"
+#~ "- Stock and Sales Forecast - is the quantity of products you plan to sell in "
+#~ "the Period.\n"
+#~ "- Stock Planning - is the quantity of products you plan to purchase or "
+#~ "produce for the Period.\n"
+#~ "\n"
+#~ "Because we have another module sale_forecast which uses terms \"Sales "
+#~ "Forecast\" and \"Planning\" as amount values we will use terms \"Stock and "
+#~ "Sales Forecast\" and \"Stock Planning\" to emphasize that we use quantity "
+#~ "values. \n"
+#~ "\n"
+#~ "Activity with this module is divided to three steps:\n"
+#~ "- Creating Periods. Mandatory step.\n"
+#~ "- Creating Sale Forecasts and entering quantities to them. Optional step but "
+#~ "useful for further planning.\n"
+#~ "- Creating Planning lines, entering quantities to them and making "
+#~ "Procurement. Making procurement is the final step for the Period.\n"
+#~ "\n"
+#~ "Periods\n"
+#~ "=======\n"
+#~ "You have two menu items for Periods in \"Sales Management - Configuration\". "
+#~ "There are:\n"
+#~ "- \"Create Sales Periods\" - Which automates creating daily, weekly or "
+#~ "monthly periods.\n"
+#~ "- \"Stock and sales Periods\" - Which allows to create any type of periods, "
+#~ "change the dates and change the State of period.\n"
+#~ "\n"
+#~ "Creating periods is the first step you have to do to use modules features. "
+#~ "You can create custom periods using \"New\" button in \"Stock and Sales "
+#~ "Periods\" form or view but it is recommended to use automating tool.\n"
+#~ "\n"
+#~ "Remarks:\n"
+#~ "- These periods (officially Stock and Sales Periods) are separated of "
+#~ "Financial or other periods in the system.\n"
+#~ "- Periods are not assigned to companies (when you use multicompany feature "
+#~ "at all). Module suppose that you use the same periods across companies. If "
+#~ "you wish to use different periods for different companies define them as you "
+#~ "wish (they can overlap). Later on in this text will be indications how to "
+#~ "use such periods.\n"
+#~ "- When periods are created automatically their start and finish dates are "
+#~ "with start hour 00:00:00 and end hour 23:59:00. Fe. when you create daily "
+#~ "periods they will have start date 31.01.2010 00:00:00 and end date "
+#~ "31.01.2010 23:59:00. It works only in automatic creation of periods. When "
+#~ "you create periods manually you have to take care about hours because you "
+#~ "can have incorrect values form sales or stock. \n"
+#~ "- If you use overlapping periods for the same product, warehouse and company "
+#~ "results can be unpredictable.\n"
+#~ "- If current date doesn't belong to any period or you have holes between "
+#~ "periods results can be unpredictable.\n"
+#~ "\n"
+#~ "Sales Forecasts\n"
+#~ "===============\n"
+#~ "You have few menus for Sales forecast in \"Sales Management - Sales "
+#~ "Forecasts\".\n"
+#~ "- \"Create Sales Forecasts for Sales Periods\" - which automates creating "
+#~ "forecasts lines according to some parameters.\n"
+#~ "- \"Sales Forecasts\" - few menus for working with forecasts lists and "
+#~ "forms.\n"
+#~ "\n"
+#~ "Menu \"Create Sales Forecasts for Sales Periods\" creates Forecasts for "
+#~ "products from selected Category, for selected Period and for selected "
+#~ "Warehouse. It is an option \"Copy Last Forecast\" to copy forecast and other "
+#~ "settings of period before this one to created one.\n"
+#~ "\n"
+#~ "Remarks:\n"
+#~ "- This tool doesn't create lines, if relevant lines (for the same Product, "
+#~ "Period, Warehouse and validated or created by you) already exists. If you "
+#~ "wish to create another forecast, if relevant lines exists you have to do it "
+#~ "manually using menus described bellow.\n"
+#~ "- When created lines are validated by someone else you can use this tool to "
+#~ "create another lines for the same Period, Product and Warehouse. \n"
+#~ "- When you choose \"Copy Last Forecast\" created line takes quantity and "
+#~ "some settings from your (validated by you or created by you if not validated "
+#~ "yet) forecast which is for last period before period of created forecast. If "
+#~ "there are few your forecasts for period before this one (it is possible) "
+#~ "system takes one of them (no rule which of them).\n"
+#~ "\n"
+#~ "\n"
+#~ "Menus \"Sales Forecasts\"\n"
+#~ "On \"Sales Forecast\" form mainly you have to enter a forecast quantity in "
+#~ "\"Product Quantity\". Further calculation can work for draft forecasts. But "
+#~ "validation can save your data against any accidental changes. You can click "
+#~ "\"Validate\" button but it is not mandatory.\n"
+#~ "\n"
+#~ "Instead of forecast quantity you can enter amount of forecast sales in field "
+#~ "\"Product Amount\". System will count quantity from amount according to Sale "
+#~ "price of the Product.\n"
+#~ "\n"
+#~ "All values on the form are expressed in unit of measure selected on form. "
+#~ "You can select one of unit of measure from default category or from second "
+#~ "category. When you change unit of measure the quanities will be recalculated "
+#~ "according to new UoM: editable values (blue fields) immediately, non edited "
+#~ "fields after clicking of \"Calculate Planning\" button.\n"
+#~ "\n"
+#~ "To find proper value for Sale Forecast you can use \"Sales History\" table "
+#~ "for this product. You have to enter parameters to the top and left of this "
+#~ "table and system will count sale quantities according to these parameters. "
+#~ "So you can select fe. your department (at the top) then (to the left): last "
+#~ "period, period before last and period year ago.\n"
+#~ "\n"
+#~ "Remarks:\n"
+#~ "\n"
+#~ "\n"
+#~ "Procurement Planning\n"
+#~ "====================\n"
+#~ "Menu for Planning you can find in \"Warehouse - Stock Planning\".\n"
+#~ "- \"Create Stock Planning Lines\" - allows you to automate creating planning "
+#~ "lines according to some parameters.\n"
+#~ "- \"Master Procurement Scheduler\" - is the most important menu of the "
+#~ "module which allows to create procurement.\n"
+#~ "\n"
+#~ "As Sales forecast is phase of planning sales. The Procurement Planning "
+#~ "(Planning) is the phase of scheduling Purchasing or Producing. You can "
+#~ "create Procurement Planning quickly using tool from menu \"Create Stock "
+#~ "Planning Lines\", then you can review created planning and make procurement "
+#~ "using menu \"Master Procurement Schedule\".\n"
+#~ "\n"
+#~ "Menu \"Create Stock Planning Lines\" allows you to create quickly Planning "
+#~ "lines for products from selected Category, for selected Period, and for "
+#~ "selected Warehouse. When you check option \"All Products with Forecast\" "
+#~ "system creates lines for all products having forecast for selected Period "
+#~ "and Warehouse. Selected Category will be ignored in this case.\n"
+#~ "\n"
+#~ "Under menu \"Master Procurement Scheduler\" you can generally change the "
+#~ "values \"Planned Out\" and \"Planned In\" to observe the field \"Stock "
+#~ "Simulation\" and decide if this value would be accurate for end of the "
+#~ "Period. \n"
+#~ "\"Planned Out\" can be based on \"Warehouse Forecast\" which is the sum of "
+#~ "all forecasts for Period and Warehouse. But your planning can be based on "
+#~ "any other information you have. It is not necessary to have any forecast. \n"
+#~ "\"Planned In\" quantity is used to calculate field \"Incoming Left\" which "
+#~ "is the quantity to be procured to make stock as indicated in \"Stock "
+#~ "Simulation\" at the end of Period. You can compare \"Stock Simulation\" "
+#~ "quantity to minimum stock rules visible on the form. But you can plan "
+#~ "different quantity than in Minimum Stock Rules. Calculation is made for "
+#~ "whole Warehouse by default. But if you want to see values for Stock location "
+#~ "of calculated warehouse you can use check box \"Stock Location Only\".\n"
+#~ "\n"
+#~ "If after few tries you decide that you found correct quantities for "
+#~ "\"Planned Out\" and \"Planned In\" and you are satisfied with end of period "
+#~ "stock calculated in \"Stock Simulation\" you can click \"Procure Incoming "
+#~ "Left\" button to procure quantity of field \"Incoming Left\" into the "
+#~ "Warehouse. System creates appropriate Procurement Order. You can decide if "
+#~ "procurement will be made to Stock or Input location of calculated Warehouse. "
+#~ "\n"
+#~ "\n"
+#~ "If you don't want to Produce or Buy the product but just pick calculated "
+#~ "quantity from another warehouse you can click \"Supply from Another "
+#~ "Warehouse\" (instead of \"Procure Incoming Left\"). System creates pick list "
+#~ "with move from selected source Warehouse to calculated Warehouse (as "
+#~ "destination). You can also decide if this pick should be done from Stock or "
+#~ "Output location of source warehouse. Destination location (Stock or Input) "
+#~ "of destination warehouse will be used as set for \"Procure Incoming Left\". "
+#~ "\n"
+#~ "\n"
+#~ "To see proper quantities in fields \"Confirmed In\", \"Confirmed Out\", "
+#~ "\"Confirmed In Before\", \"Planned Out Before\" and \"Stock Simulation\" you "
+#~ "have to click button \"Calculate Planning\".\n"
+#~ "\n"
+#~ "All values on the form are expressed in unit of measure selected on form. "
+#~ "You can select one of unit of measure from default category or from second "
+#~ "category. When you change unit of measure the quanities will be recalculated "
+#~ "according to new UoM: editable values (blue fields) immediately, non edited "
+#~ "fields after clicking of \"Calculate Planning\" button.\n"
+#~ "\n"
+#~ "How Stock Simulation field is calculated:\n"
+#~ "Generally Stock Simulation shows the stock for end of the calculated period "
+#~ "according to some planned or confirmed stock moves. Calculation always "
+#~ "starts with quantity of real stock of beginning of current period. Then "
+#~ "calculation adds or subtracts quantities of calculated period or periods "
+#~ "before calculated.\n"
+#~ "When you are in the same period (current period is the same as calculated) "
+#~ "Stock Simulation is calculated as follows:\n"
+#~ "Stock Simulation = \n"
+#~ "\tStock of beginning of current Period\n"
+#~ "\t- Planned Out \n"
+#~ "\t+ Planned In\n"
+#~ "\n"
+#~ "When you calculate period next to current:\n"
+#~ "Stock Simulation = \n"
+#~ "\tStock of beginning of current Period\n"
+#~ "\t- Planned Out of current Period \n"
+#~ "\t+ Confirmed In of current Period  (incl. Already In)\n"
+#~ "\t- Planned Out of calculated Period \n"
+#~ "\t+ Planned In of calculated Period .\n"
+#~ "\n"
+#~ "As you see calculated Period is taken the same way like in case above. But "
+#~ "calculation of current Period are made a little bit different. First you "
+#~ "should note that system takes for current Period only Confirmed In moves. It "
+#~ "means that you have to make planning and procurement for current Period "
+#~ "before this calculation (for Period next to current). \n"
+#~ "\n"
+#~ "When you calculate Period ahead:\n"
+#~ "Stock Simulation = \n"
+#~ "\tStock of beginning of current Period \n"
+#~ "\t- Sum of Planned Out of Periods before calculated \n"
+#~ "\t+ Sum of Confirmed In of Periods before calculated (incl. Already In) \n"
+#~ "\t- Planned Out of calculated Period \n"
+#~ "\t+ Planned In of calculated Period.\n"
+#~ "\n"
+#~ "Periods before calculated means periods starting from current till period "
+#~ "before calculated.\n"
+#~ "\n"
+#~ "Remarks:\n"
+#~ "- Remember to make planning for all periods before calculated because "
+#~ "omitting these quantities and procurements can cause wrong suggestions for "
+#~ "procurements few periods ahead.\n"
+#~ "- If you made planning few periods ahead and you find that real Confirmed "
+#~ "Out is bigger than Planned Out in some periods before you can repeat "
+#~ "Planning and make another procurement. You should do it in the same planning "
+#~ "line. If you create another planning line the suggestions can be wrong.\n"
+#~ "- When you wish to work with different periods for some part of products "
+#~ "define two kinds of periods (fe. Weekly and Monthly) and use them for "
+#~ "different products. Example: If you use always Weekly periods for Products "
+#~ "A, and Monthly periods for Products B your all calculations will work "
+#~ "correctly. You can also use different kind of periods for the same products "
+#~ "from different warehouse or companies. But you cannot use overlapping "
+#~ "periods for the same product, warehouse and company because results can be "
+#~ "unpredictable. The same apply to Forecasts lines.\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Dieses Modul basiert auf dem Modul stock_planning Version 1.0 für die "
+#~ "Funktionalität des Master Procurement Schedule (Beschaffungsvorschläge - "
+#~ "Materialdisposition).\n"
+#~ "Zweck dieses Moduls ist die manuelle Erstellung eines Beschaffungsvorschlags "
+#~ "unabhängigvom bisherigen Modul zur Errechnung autom. "
+#~ "Beschaffungsvorschläge.\n"
+#~ "\n"
+#~ "Terminologie die in diesem Modul verwendet wird:\n"
+#~ "- Bestand und Verkauf Periode - Zeitspanne (zwischen Start und Ende Datum) "
+#~ "für die SieBestände und Verkäufe für die Ermittlung v. "
+#~ "Beschaffungsvorschlägen prognostizieren.- Bestand und Verkauf Prognose - "
+#~ "Prognose von Verkaufsmengen für Produkte zukünftiger  Perioden.\n"
+#~ "- Planung Bestand - Planung der Bestände sowie zu beschaffender Mengen für "
+#~ "Produktein zukünftigen Perioden.\n"
+#~ "\n"
+#~ "Zur Vermeidung von begrifflichen Überschneidungen mit dem Modul "
+#~ "sale_forecast welchesdie Begriffe 'Verkäufe' , 'Forecast' oder 'Planung' "
+#~ "verwendet, werden anstatt dessen in diesem Modul die Begriffe 'Bestand und "
+#~ "Verkauf Prognose' und 'Planung Bestände'verwendet, um klarzustellen, dass "
+#~ "Mengen anstelle von Werten zur Planung und Prognose verwendet werden.\n"
+#~ "\n"
+#~ "Für die Arbeit mit diesem Modul ist ein Vorgehen in drei Schritten nötig: - "
+#~ "Erzeugen von Perioden. Dieser Schritt ist immer erforderlich. - Erzeugen "
+#~ "einer Verkaufs Prognose durch Erfassung von geplanten Mengen. Dieser Schritt "
+#~ "ist nicht zwingend aber dennoch nützlich für die weiteren Schritte. Erzeugen "
+#~ "von Prognospositionen, erfassen der Menge zu den einzelnen Positionen und "
+#~ "Starten des Beschaffungsvorschlags. Die Beschaffung selbst ist der letzte "
+#~ "Schritt. \n"
+#~ "Perioden\n"
+#~ "========\n"
+#~ "Sie finden zwei Menüpunkte für die Perioden unter 'Verkauf - Konfiguration'. "
+#~ "Diese beiden Menüs sind folgende:\n"
+#~ "- 'Erzeuge Verkauf Perioden' - Hierdurch werden tägl., wöchentl. oder "
+#~ "monatl. Perioden automatisch angelegt.\n"
+#~ "- 'Bestand und Verkauf Perioden' - Hierdurch können Sie beliebige Perioden "
+#~ "neu definieren und Änderungen der Zeiträume sowie der Stati vornehmen.\n"
+#~ "\n"
+#~ "Die Erstellung der Perioden ist der erste Schritt, der vorzunehmen ist.Sie "
+#~ "können individuelle Perioden durch Klick auf den 'Neu Button' im "
+#~ "Eingabeformular 'Bestand und Verkauf Perioden' vornehmen. Empfohlen wird "
+#~ "allerdings das Tool z. Automatisierung.\n"
+#~ "Hinweise:\n"
+#~ "- Die Perioden (offiziell Bestand und Verkauf Perioden) sind unabhängig "
+#~ "vonden Perioden der Finanzbuchhaltung oder anderen Perioden in OpenERP.\n"
+#~ "- Perioden sind nicht verbunden mit dem Unternehmen (Mandant), für den Fall "
+#~ "dass Siemit einem Multicompany Szenario arbeiten. Dieses Modul unterstellt "
+#~ "dass in allenUnternehmen mit dem gleichen Setup für Perioden gearbeitet "
+#~ "wird. Sollten Sie dennochunterschiedl. Perioden für verschiedene Unternehmen "
+#~ "benötigen können Sie verschiedenePerioden definieren (Überschneidung ist "
+#~ "auch möglich). Wie dieses anzuwenden ist, folgt später.\n"
+#~ "- Bei autom. Anlage von Perioden ist die Uhrzeit für das Start und Ende "
+#~ "Datum immer 00:00:00bzw. 23:59:00. Dieses funktioniert bei der autom. "
+#~ "Anlage. Sollten Sie per Hand Periodenneu anlegen müssen Sie auf die "
+#~ "Konfiguration der Stunden achten, da Sie ansonsten fehlerhafte Daten "
+#~ "erhalten können.\n"
+#~ "- Wenn Sie unterschiedl. sich überschneidende Perioden für dasselbe Produkt, "
+#~ "Zentrallager oderUnternehmen haben, kann das Ergebnis eventuell mit Fehlern "
+#~ "behaftet sein kann.\n"
+#~ "- Ebenso kann dieses bei Lücken in der Definition der Perioden eine "
+#~ "unerwünschte Folgesein.\n"
+#~ "Verkauf Prognose\n"
+#~ "================\n"
+#~ "Sie haben einige neue Menüs für die Verkaufs Prognose unter 'Verkauf - "
+#~ "Verkauf Prognose'.\n"
+#~ "- 'Erzeuge Verkauf Prognose f. Verkauf Perioden'- hierdurch werden "
+#~ "automatisch einzelne Positionen für die Bearbeitung der Prognose auf Basis "
+#~ "der Einstellungen generiert.\n"
+#~ "- 'Verkauf Prognose' - Menü für die Arbeit mit einzelnen Positionslisten und "
+#~ "den hierfür vorgesehenen Formularen.\n"
+#~ "\n"
+#~ "Das Menü 'Erzeuge Verkauf Prognose f. Verkauf Perioden' generiert Prognosen "
+#~ "für Produkte der gewählten Kategorie, der gew. Periode und das ausgew. "
+#~ "Zentrallager. Alsweitere Option kann durch 'Kopiere letzte Prognose' eine "
+#~ "Kopie einer vorherigenPrognose mit der entsprechenden Konfiguration "
+#~ "dupliziert werden.\n"
+#~ "Hinweise:\n"
+#~ "- Dieses Tool erzeugt keine neuen Positionen, wenn relevante Positionen (für "
+#~ "dasselbe Produkt, Periode, Zentrallager definiert durch den Benutzer) "
+#~ "bereits existieren.Wenn Sie eine alternative Prognosen für bereits "
+#~ "vorhandene Prognosepositionenerstellen wollen, gehen Sie folgendermassen "
+#~ "vor:\n"
+#~ "- Wenn ein anderer Benutzer die Positionen genehmigt hat, können Sie mit "
+#~ "diesem Tooleinfach weitere Positionen für dieselbe Periode, dasselbe Produkt "
+#~ "oder Zentrallager erstellen.\n"
+#~ "- Wenn Sie 'Kopiere letzte Prognose' klicken, werden Ihre Konfiguration und "
+#~ "Planmengenaus der unmittelbar vorherigen Periode übernommen. Sollte es "
+#~ "weitere Prognosen für dieselbe Periode bereits geben, wird ohne eine "
+#~ "bestimmte Regel eine Zufallsauswahl getroffen.\n"
+#~ "\n"
+#~ "\n"
+#~ "Inhalte im Menü 'Verkauf Prognose'\n"
+#~ "Im Formular 'Verkauf Prognose müssen Sie die prognostizierten Mengen im "
+#~ "Feld'Produkt Menge' erfassen. Alternative Berechnungen funktionieren "
+#~ "jederzeit im Status Entwurf.Möchten Sie keine Änderungen mehr zulassen "
+#~ "klicken Sie auf 'Genehmigen', welches allerdings nicht dem üblichen Vorgehen "
+#~ "entspricht.\n"
+#~ "Anstelle der Menge können Sie alternativ auch den Umsatzwert eingeben im "
+#~ "FeldVerkauf Umsatz(wert). Das System rechnet autom. über den Verkaufspreis "
+#~ "die Mengen aus.\n"
+#~ "Alle Werte für Mengen beruhen auf der ME (Mengeneinheit) die Sie hier "
+#~ "ausgewählt haben.Ändern Sie die Mengeneinheit werden alle Mengen "
+#~ "entsprechend umgerechnet. EditierbareWerte (blau) werden dabei sofort "
+#~ "umgerechnet, andere durch Klick auf 'Berechne Planung'.\n"
+#~ "Als Hilfe für realistische Planwerte können Sie die Tabelle 'Verkauf "
+#~ "Historie' für dasProdukt gut einsetzen. Erfassen Sie Ihre Parameter oberhalb "
+#~ "und links der Tabelle damitdas System die entsprechende Prognosemenge für "
+#~ "Sie ermittelt. Z.B. wählen Sie Ihre Abteilungoberhalb der Tabelle und links "
+#~ "die letzte und vorletzte Periode, sowie die Periode vor einem Jahr.\n"
+#~ "\n"
+#~ "Hinweise:\n"
+#~ "\n"
+#~ "\n"
+#~ "Planung Beschaffungsvorschlag\n"
+#~ "=============================\n"
+#~ "Dieses Menü finden Sie unter 'Lager - Planung Bestand'.\n"
+#~ "- 'Erzeuge Planung Bestand Positionen' - ermöglicht die autom. Erstellung "
+#~ "derrelevanten Planungspositionen in Abhängigkeit einiger vorab definierter "
+#~ "Parameter.- 'Automatischer Beschaffungsvorschlag' - das wichtigste Menü "
+#~ "dieses Modulszur autom. Errechnung von Beschaffungsvorschlägen.\n"
+#~ "\n"
+#~ "So wie die Prognose des Verkaufs ein wichtiger Teilschritt im "
+#~ "Planungsprozess ist, ist die Planung Beschaffungsvorschlag ein wichtiger "
+#~ "Schritt für die autom. Errechnung von Bestellungen oder "
+#~ "Fertigungsaufträgen.Das Tool wird über das Menü 'Erzeuge Planung "
+#~ "Beschaffungsvorschlag' gestartet, um dort die Planung individ. zu "
+#~ "konfigurieren und abschließend einen Beschaffungsvorschlag über das Menü "
+#~ "'Autom. Beschaffungsvorschlag' automatisch zu erstellen.\n"
+#~ "\n"
+#~ "Das Menü 'Erzeuge Planung Bestand Positionen' ermöglicht die schnelle "
+#~ "Erzeugung von einzelnenPlanungspositionen für Produkte der gewähl. "
+#~ "Kategorie, für eine gewähl. Periode und ein ausgewählt. Zentrallager. Durch "
+#~ "die Aktivierung der Option 'Alle Produkte mit Prognose' generiert das System "
+#~ "einzelne PositionenZeile für Zeile für die gew. Perioden und das "
+#~ "Zentrallager. Die ausgew. Kategorie wird in diesem Fall ignoriert.\n"
+#~ "\n"
+#~ "Im Menü 'Autom. Beschaffungsvorschlag' können grundsätzlich die beiden "
+#~ "Felder für 'Gepl. Abgang' und 'Gepl. Eingang' geändert werden, um dann über "
+#~ "das Feld 'Bestand Simulation \" zu entscheiden, ob der kalk. Bestand am Ende "
+#~ "der Periode dem kalk. Zielwert entspricht oder nicht. \n"
+#~ "'Geplanter Abgang' kann basieren auf 'Zentrallager Prognose', welches dann "
+#~ "der Summe aller Prognosen des Vertriebs für die Periode und dem Zentrallager "
+#~ "entspricht. Die Planung könnte auch auf anderen Daten basieren. Es ist nicht "
+#~ "erforderlich auf Vertriebsprognosen aufzusetzen.\n"
+#~ "'Geplanter Eingang' wird genutzt um das Feld 'Bedarfsmenge' zu berechnen, "
+#~ "welchesder zu beschaffenden Menge entspricht, die wiederum  über das Feld "
+#~ "'Simulation Bestand'zum Ende der Periode ermittelt wird. Sie können die "
+#~ "errechnete Menge in 'Simulation Bestand'mit den im Formular angezeigten "
+#~ "Meldebständen der Beschaffungsregeln abgleichen oder andereMengen planen. "
+#~ "Die Berechnung erfolgt im Standard für das gesamte Zentrallager. Um die "
+#~ "Wertefür einzelne Lagerorte zu sehen, können Sie die Check Box 'Nur "
+#~ "Lagerort' aktivieren.\n"
+#~ "\n"
+#~ "Sollten Sie nach einigen Simulationsläufen entscheiden, dass Ihre "
+#~ "Kalkulation für die beidenWerte 'Gepl. Ausgang' und 'Gepl. Eingang' richtig "
+#~ "ist und der Wert zum Ende des Monats in'Simulation Bestand' auch Ihren "
+#~ "Vorstellungen entspricht klicken Sie auf 'Beschaffe Bedarfsmenge'um die "
+#~ "angezeigte Menge  des Feldes 'Bedarfsmenge' für das Zentrallager zu "
+#~ "beschaffen. Das System erstellt hierauf einen entsprechenden "
+#~ "Beschaffungsauftrag. Sie könnennoch entscheiden, ob die Ware für das "
+#~ "Hauptlager oder alternativ für das Eingangs- oder Versandlagerim "
+#~ "Zentrallager beschafft werden soll.\n"
+#~ "\n"
+#~ "Wenn Sie weder die Waren einkaufen noch selbst fertigen wollen, sondern "
+#~ "anstatt dessendie Menge von einem anderen Zentrallager beziehen wollen, "
+#~ "klicken Sie auf 'Beschaffe aus anderem Zentrallager' anstelle 'Beschaffe "
+#~ "Bedarfsmenge'. Das System erstellt einen Lieferschein mit einer Umlagerung "
+#~ "vom Quell - Zentrallager zum Ziel - Zentrallager. Ausserdem kann gewählt "
+#~ "werden, ob die Lieferung vom Hauptlager oder vom Warenversandlager des "
+#~ "(Quell-) Zentrallagers kommen soll. Der Ziellagerort (Haupt- oder "
+#~ "Eingangslager) des (Ziel)- Zentrallagers wird als Vorgabewert genutzt bei "
+#~ "der enstprechenden Durchführung von 'Beschaffe Bedarfsmenge'.\n"
+#~ "\n"
+#~ "Um korrekte Mengen in den Feldern 'Bestät. Eingang', 'Bestät. Abgang', "
+#~ "'Best. Eingang Vorperioden', 'Best. Abgang Vorperioden' und 'Simulation "
+#~ "Bestand'  zu generieren, müssen Sie auf den Button 'Berechne Planung' "
+#~ "klicken.\n"
+#~ "Alle Werte für Mengen beruhen auf der ME (Mengeneinheit) die Sie hier "
+#~ "ausgewählt haben. Ändern Sie die Mengeneinheit werden alle Mengen "
+#~ "entsprechend umgerechnet. Editierbare Werte (blau) werden dabei sofort "
+#~ "umgerechnet, andere durch Klick auf 'Berechne Planung'. Wie wird die "
+#~ "Bestände Simulation berechnet:\n"
+#~ "Grundsätzl. zeigt eine Simulation die Bestandssituation zum Ende der "
+#~ "kalkulierten Periode gemäß der geplanten oder bereits bestätigen Eingänge u. "
+#~ "Abgänge. Berechnungenbeginnen immer mit dem Anfangsbestand zu Beginn der "
+#~ "Planperiode. Anschliessend werden Mengen aus vorherigen Perioden oder "
+#~ "aktuellen Perioden addiert oder subtrahiert um letzlich einen "
+#~ "Beschaffungsvorschlag zu errechnen.  Wenn Sie sich in der aktuellen Periode "
+#~ "befinden (aktuelle ist dieselbe wie berechnete), erfolgt  die Simulation der "
+#~ "Bestände wie folgt : \n"
+#~ " Simulation Bestand = \n"
+#~ "\tAnfangsbestand (Periode)\n"
+#~ "\t- Geplante Abgänge \n"
+#~ "\t+ Geplante Eingänge\n"
+#~ "\n"
+#~ "Wenn Sie für eine anschließende zukünftige Periode kalkulieren:\n"
+#~ " Simulation Bestand = \n"
+#~ "\tAnfangsbestand (für diese Periode)\n"
+#~ "\t- Geplante Abgänge akt. Periode \n"
+#~ "\t+ Bestät. Eingänge akt. Periode (inkl. erhalt. Waren)\n"
+#~ "\t- Geplante Abgänge zuk. Periode \n"
+#~ "\t+ Geplante Eingänge der zuk. Periode \n"
+#~ "\n"
+#~ "Wie Sie sehen erfolgt die Kalkulation etwas anders. Zuerst nutzt das System "
+#~ "als Wert für den Eingang der aktuellen Periode nur die bestät. "
+#~ "Wareneingänge. Dieses bedeutet dass sowohl die Prognose als auch der "
+#~ "Beschaffungsvorschlag selbst zuerst für die aktuelle Periode erfolgen muss. "
+#~ "Wenn Sie Perioden für die weitere Zukunft berechnen:\n"
+#~ " Simulation Bestand = \n"
+#~ "\tAnfangsbestand (Beginn der Planperiode)\n"
+#~ "\t- Summe Geplante Abgänge vor zu berechn. Periode \n"
+#~ "\t+ Summe Bestät. Eingänge vor zu berechn. Periode (inkl. erhalt. Waren)\n"
+#~ "\t- Geplante Abgänge zuk. Periode \n"
+#~ "\t+ Geplante Eingänge der zuk. Periode \n"
+#~ "\n"
+#~ "Perioden vor zu berechnender Periode bedeutet alle der zu berechnenden "
+#~ "Periode vorgelagerten Perioden.\n"
+#~ "\n"
+#~ "Hinweise:\n"
+#~ "- Denken Sie daran alle vorherigen Perioden zu kalkulieren, da ein Auslassen "
+#~ "von Perioden zu falschen Annahmen für die Beschaffungsvorschläge in "
+#~ "folgenden zukünftigen Perioden führen kann.\n"
+#~ "- Wenn Sie einige Perioden im voraus planen wollen und feststellen, dass der "
+#~ "bereits bestät.Abgang grösser ist als der geplante Abgang für vorherige "
+#~ "Perioden können Sie die Planung wiederholen und dadurch einen genaueren "
+#~ "Beschaffungsvorschlag errechnen. Sie sollten dieses in exakt der gleichen "
+#~ "Planungsposition vornehmen. Eine neue Planungsposition kann  ansonsten zu "
+#~ "Fehlern führen.\n"
+#~ "- Wenn Sie mit unterschiedlichen Perioden für die Planung verschiedener "
+#~ "Produkte arbeiten wollen, definieren Sie einfach zwei verschiedene "
+#~ "Periodentypen (z.B. wöchentl. / monatl.) und benutzen diese dann "
+#~ "entsprechend in Abhängigkeit vom Produkt. Beispiel:  Sie planen immer "
+#~ "Wöchentl. Perioden für Produkt A und Monatl. Perioden für Produkt B sollte "
+#~ "im Ergebnis alle Vorschläge korrekt berechnen. Sie können ebenfalls "
+#~ "unterschiedliche Planperioden für die gleichen Produkte bei "
+#~ "unterschiedlichen Zentrallägern oder Unternehmen (Mandanten) einsetzen. Sie "
+#~ "sollten allerdings Überschneidungen von Perioden für exakt die gleichen "
+#~ "Produkte, bei identischen Zentrallägern und Unternehmen vermeiden, das "
+#~ "dieses zu fehlerhaften Ergebnissen führen kann. Das gleiche gilt "
+#~ "entsprechend für einzelne Prognosepositionen im Verkauf.\n"
+
+#, python-format
+#~ msgid "    Incoming Left: "
+#~ msgstr "    Bedarfsmenge "
+
+#~ msgid "Creates forecast lines for selected warehouse and period."
+#~ msgstr "Erzeuge Prognosepositionen für d. ausgew. Zentrallager u. d. Periode"
+
+#, python-format
+#~ msgid "Requisition ("
+#~ msgstr "Anforderung ("
+
+#~ msgid ""
+#~ "Quantity expected to go out in selected period. As a difference between "
+#~ "Planned Out and Confirmed Out. For current period Already Out is also "
+#~ "calculated"
+#~ msgstr ""
+#~ "Erwartete Abgänge für die ausgew. Periode als Differenz zwischen Gepl. "
+#~ "Abgang und bereits best. Abgang. Für die aktuelle Periode wird zusätzlich "
+#~ "noch der bereits erfolgte Abgang herangezogen"
+
+#, python-format
+#~ msgid "    Already In: "
+#~ msgstr "    Bereits Eingegangen "
+
+#, python-format
+#~ msgid ""
+#~ "\n"
+#~ " Initial Stock: "
+#~ msgstr ""
+#~ "\n"
+#~ " Anfangsbestand: "
+
+#, python-format
+#~ msgid "    Minimum stock: "
+#~ msgstr "    Meldebestand: "
+
+#, python-format
+#~ msgid "    Confirmed In: "
+#~ msgstr "    Bestät. Eingang "
+
+#~ msgid "Sales history"
+#~ msgstr "Verkauf Historie"
+
+#~ msgid "Forecasted quantity."
+#~ msgstr "Prognose Menge"
+
+#, python-format
+#~ msgid ""
+#~ "\n"
+#~ " Stock Simulation: "
+#~ msgstr ""
+#~ "\n"
+#~ " Simulation Bestand: "
+
+#, python-format
+#~ msgid ""
+#~ "\n"
+#~ " Confirmed Out: "
+#~ msgstr ""
+#~ "\n"
+#~ " Bestät. Abgang: "
+
+#~ msgid "Product Quantity"
+#~ msgstr "Produkt Menge"
+
+#, python-format
+#~ msgid " according to state:"
+#~ msgstr " abhängig v. Status:"
+
+#~ msgid ""
+#~ "The Object name must start with x_ and not contain any special character !"
+#~ msgstr ""
+#~ "Die Objektbezeichnung muss mit einem x_ beginnen und darf keine "
+#~ "Sonderzeichen haben !"
+
+#, python-format
+#~ msgid ""
+#~ "\n"
+#~ "For period: "
+#~ msgstr ""
+#~ "\n"
+#~ "Für Periode: "
+
+#, python-format
+#~ msgid "    Planned In: "
+#~ msgstr "    Gepl. Eingang: "
+
+#~ msgid ""
+#~ "Check to supply from Stock location of Supply Warehouse. If not checked "
+#~ "supply will be made from Output location of Supply Warehouse. Used in "
+#~ "'Supply from Another Warhouse' with Supply Warehouse."
+#~ msgstr ""
+#~ "Wähle Option zur Beschaffung für das Hauptlager des Zentrallagers f.d. "
+#~ "Einkauf. Falls diese Option nicht aktiv ist wird für das entsprechende "
+#~ "Warenversandlager eingekauft. Wird genutzt bei Wahl von 'Beschaffung v. and. "
+#~ "Zentrallager' mit Zentrallager f.d. Einkauf."
+
+#~ msgid "Minimum quantity set in Minimum Stock Rules for this Warhouse"
+#~ msgstr "Min. Menge definiert in Meldebestandregel f.d. Zentrallager"
+
+#, python-format
+#~ msgid ""
+#~ "\n"
+#~ " Expected Out: "
+#~ msgstr ""
+#~ "\n"
+#~ " Erwarteter Abgang: "
+
+#, python-format
+#~ msgid "MPS("
+#~ msgstr "MPS("
+
+#, python-format
+#~ msgid "Pick created from MPS by user: "
+#~ msgstr "Lieferschein durch MPS von Benutzer: "
+
+#~ msgid "Stock and Sales Planning Periods"
+#~ msgstr "Perioden f. Bestand und Verkauf Prognose"
+
+#~ msgid "Stock and Sales Periods"
+#~ msgstr "Bestand u. Verkauf Perioden"
+
+#, python-format
+#~ msgid "Pick List "
+#~ msgstr "Lieferschein "

=== added file 'stock_planning/i18n/el.po'
--- stock_planning/i18n/el.po	1970-01-01 00:00:00 +0000
+++ stock_planning/i18n/el.po	2014-05-20 13:49:41 +0000
@@ -0,0 +1,1194 @@
+# Greek translation for openobject-addons
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the openobject-addons package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-02-08 00:37+0000\n"
+"PO-Revision-Date: 2011-04-05 17:31+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Greek <el@xxxxxx>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2012-10-30 05:30+0000\n"
+"X-Generator: Launchpad (build 16206)\n"
+
+#. module: stock_planning
+#: code:addons/stock_planning/wizard/stock_planning_createlines.py:73
+#, python-format
+msgid ""
+"No forecasts for selected period or no products in selected category !"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,stock_only:0
+msgid ""
+"Check to calculate stock location of selected warehouse only. If not "
+"selected calculation is made for input, stock and output location of "
+"warehouse."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,maximum_op:0
+msgid "Maximum Rule"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+#: view:stock.sale.forecast:0
+msgid "Group By..."
+msgstr "Ομαδοποίηση ανά..."
+
+#. module: stock_planning
+#: help:stock.sale.forecast,product_amt:0
+msgid ""
+"Forecast value which will be converted to Product Quantity according to "
+"prices."
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:626
+#: code:addons/stock_planning/stock_planning.py:670
+#, python-format
+msgid "Incoming Left must be greater than 0 !"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,outgoing_before:0
+msgid ""
+"Planned Out in periods before calculated. Between start date of current "
+"period and one day before start of calculated period."
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.sale.forecast.createlines,warehouse_id:0
+msgid ""
+"Warehouse which forecasts will concern. If during stock planning you will "
+"need sales forecast for all warehouses choose any warehouse now."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,outgoing_left:0
+msgid "Expected Out"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid " "
+msgstr " "
+
+#. module: stock_planning
+#: field:stock.planning,incoming_left:0
+msgid "Incoming Left"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast.createlines:0
+msgid "Create Forecasts Lines"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,outgoing:0
+msgid "Quantity of all confirmed outgoing moves in calculated Period."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period.createlines:0
+msgid "Create Daily Periods"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+#: field:stock.planning,company_id:0
+#: field:stock.planning.createlines,company_id:0
+#: view:stock.sale.forecast:0
+#: field:stock.sale.forecast,company_id:0
+#: field:stock.sale.forecast.createlines,company_id:0
+msgid "Company"
+msgstr "Εταιρεία"
+
+#. module: stock_planning
+#: help:stock.planning,warehouse_forecast:0
+msgid ""
+"All sales forecasts for selected Warehouse of selected Product during "
+"selected Period."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Minimum Stock Rule Indicators"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.sale.forecast.createlines,period_id:0
+msgid "Period which forecasts will concern."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,stock_only:0
+msgid "Stock Location Only"
+msgstr "Τοποθεσία Στοκ Μόνο"
+
+#. module: stock_planning
+#: help:stock.planning,already_out:0
+msgid ""
+"Quantity which is already dispatched out of this warehouse in current period."
+msgstr ""
+"Ποστότα που έχει ήδη εξαχθεί από αυτήν την αποθήκη για την τρέχουσα περίοδο."
+
+#. module: stock_planning
+#: field:stock.planning,incoming:0
+msgid "Confirmed In"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Current Period Situation"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_stock_period_createlines_form
+msgid ""
+"This wizard helps with the creation of stock planning periods. These periods "
+"are independent of financial periods. If you need periods other than day-, "
+"week- or month-based, you may also add then manually."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period.createlines:0
+msgid "Create Monthly Periods"
+msgstr "Δημιουργία Μηνιαίων Περιόδων"
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_period_createlines
+msgid "stock.period.createlines"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,outgoing_before:0
+msgid "Planned Out Before"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning.createlines,forecasted_products:0
+msgid "All Products with Forecast"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,maximum_op:0
+msgid "Maximum quantity set in Minimum Stock Rules for this Warehouse"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Periods :"
+msgstr "Περίοδοι:"
+
+#. module: stock_planning
+#: help:stock.planning,procure_to_stock:0
+msgid ""
+"Check to make procurement to stock location of selected warehouse. If not "
+"selected procurement will be made into input location of warehouse."
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,already_in:0
+msgid ""
+"Quantity which is already picked up to this warehouse in current period."
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/wizard/stock_planning_forecast.py:60
+#, python-format
+msgid "No products in selected category !"
+msgstr "Κανένα προϊόν στην επιλεγμένη κατηγορία"
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Stock and Sales Forecast"
+msgstr "Πρόβλέψεις Στοκ και Πωλήσεων"
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_sale_forecast
+msgid "stock.sale.forecast"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,to_procure:0
+msgid "Planned In"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,stock_simulation:0
+msgid "Stock Simulation"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_planning_createlines
+msgid "stock.planning.createlines"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,incoming_before:0
+msgid ""
+"Confirmed incoming in periods before calculated (Including Already In). "
+"Between start date of current period and one day before start of calculated "
+"period."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Search  Sales Forecast"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period5_per_user:0
+msgid "This User Period5"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,history:0
+msgid "History of procurement or internal supply of this planning line."
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,company_forecast:0
+msgid ""
+"All sales forecasts for whole company (for all Warehouses) of selected "
+"Product during selected Period."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_per_user:0
+msgid "This User Period1"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_per_user:0
+msgid "This User Period3"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Stock Planning"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,minimum_op:0
+msgid "Minimum Rule"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Procure Incoming Left"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning.createlines:0
+#: view:stock.sale.forecast.createlines:0
+msgid "Create"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_view_stock_planning_form
+#: model:ir.ui.menu,name:stock_planning.menu_stock_planning
+#: model:ir.ui.menu,name:stock_planning.menu_stock_planning_manual
+#: view:stock.planning:0
+msgid "Master Procurement Schedule"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,line_time:0
+msgid "Past/Future"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period:0
+#: field:stock.period,state:0
+#: field:stock.planning,state:0
+#: field:stock.sale.forecast,state:0
+msgid "State"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.sale.forecast.createlines,product_categ_id:0
+msgid "Product Category of products which created forecasts will concern."
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_period
+msgid "stock period"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_sale_forecast_createlines
+msgid "stock.sale.forecast.createlines"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,warehouse_id:0
+#: field:stock.planning.createlines,warehouse_id:0
+#: field:stock.sale.forecast,warehouse_id:0
+#: field:stock.sale.forecast.createlines,warehouse_id:0
+msgid "Warehouse"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,stock_simulation:0
+msgid ""
+"Stock simulation at the end of selected Period.\n"
+" For current period it is: \n"
+"Initial Stock - Already Out + Already In - Expected Out + Incoming Left.\n"
+"For periods ahead it is: \n"
+"Initial Stock - Planned Out Before + Incoming Before - Planned Out + Planned "
+"In."
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.sale.forecast,analyze_company:0
+msgid "Check this box to see the sales for whole company."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Per Department :"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,incoming_before:0
+msgid "Incoming Before"
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:641
+#, python-format
+msgid ""
+" Procurement created by MPS for user: %s   Creation Date: %s                 "
+"                        \n"
+" For period: %s                                         \n"
+" according to state:                                         \n"
+" Warehouse Forecast: %s                                         \n"
+" Initial Stock: %s                                         \n"
+" Planned Out: %s    Planned In: %s                                         \n"
+" Already Out: %s    Already In: %s                                         \n"
+" Confirmed Out: %s    Confirmed In: %s                                       "
+"  \n"
+" Planned Out Before: %s    Confirmed In Before: %s                           "
+"              \n"
+" Expected Out: %s    Incoming Left: %s                                       "
+"  \n"
+" Stock Simulation: %s    Minimum stock: %s"
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:626
+#: code:addons/stock_planning/stock_planning.py:670
+#: code:addons/stock_planning/stock_planning.py:672
+#: code:addons/stock_planning/stock_planning.py:674
+#: code:addons/stock_planning/wizard/stock_planning_createlines.py:73
+#: code:addons/stock_planning/wizard/stock_planning_forecast.py:60
+#, python-format
+msgid "Error !"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_user_id:0
+msgid "This User"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Forecasts"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Supply from Another Warehouse"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Calculate Planning"
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:146
+#, python-format
+msgid "Invalid action !"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,stock_start:0
+msgid "Stock quantity one day before current period."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Procurement history"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,product_uom:0
+msgid ""
+"Unit of Measure used to show the quantities of stock calculation.You can use "
+"units from default category or from second category (UoS category)."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period.createlines:0
+msgid "Create Weekly Periods"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_stock_period_form
+msgid ""
+"Stock periods are used for stock planning. Stock periods are independent of "
+"account periods. You can use wizard for creating periods and review them "
+"here."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Calculated Period Simulation"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period.createlines:0
+msgid "Cancel"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period4_per_user:0
+msgid "This User Period4"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Stock and Sales Period"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,company_forecast:0
+msgid "Company Forecast"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,minimum_op:0
+msgid "Minimum quantity set in Minimum Stock Rules for this Warehouse"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Per User :"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning.createlines,warehouse_id:0
+msgid "Warehouse which planning will concern."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,user_id:0
+msgid "Created/Validated by"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,warehouse_forecast:0
+msgid "Warehouse Forecast"
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:674
+#, python-format
+msgid ""
+"You must specify a Source Warehouse different than calculated (destination) "
+"Warehouse !"
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:146
+#, python-format
+msgid "Cannot delete a validated sales forecast!"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period5_per_company:0
+msgid "This Company Period5"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,product_uom:0
+msgid "Product UoM"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_per_company:0
+msgid "This Company Period1"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_per_company:0
+msgid "This Company Period2"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_per_company:0
+msgid "This Company Period3"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.period,date_start:0
+#: field:stock.period.createlines,date_start:0
+msgid "Start Date"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_per_user:0
+msgid "This User Period2"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,confirmed_forecasts_only:0
+msgid "Validated Forecasts"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning.createlines,product_categ_id:0
+msgid ""
+"Planning will be created for products from Product Category selected by this "
+"field. This field is ignored when you check \"All Forecasted Product\" box."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,planned_outgoing:0
+msgid "Planned Out"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,product_qty:0
+msgid "Forecast Quantity"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Forecast"
+msgstr ""
+
+#. module: stock_planning
+#: selection:stock.period,state:0
+#: selection:stock.planning,state:0
+#: selection:stock.sale.forecast,state:0
+msgid "Draft"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Closed"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+#: view:stock.sale.forecast:0
+msgid "Warehouse "
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.sale.forecast,product_uom:0
+msgid ""
+"Unit of Measure used to show the quantities of stock calculation.You can use "
+"units form default category or from second category (UoS category)."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Planning and Situation for Calculated Period"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,planned_outgoing:0
+msgid ""
+"Enter planned outgoing quantity from selected Warehouse during the selected "
+"Period of selected Product. To plan this value look at Confirmed Out or "
+"Sales Forecasts. This value should be equal or greater than Confirmed Out."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Current Periods"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Internal Supply"
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:724
+#, python-format
+msgid "%s Pick List %s (%s,  %s) %s %s \n"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_stock_sale_forecast_createlines_form
+#: model:ir.ui.menu,name:stock_planning.menu_stock_sale_forecast_createlines
+msgid "Create Sales Forecasts"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period4_id:0
+msgid "Period4"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.period,name:0
+#: field:stock.period.createlines,name:0
+msgid "Period Name"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_id:0
+msgid "Period2"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_id:0
+msgid "Period3"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_id:0
+msgid "Period1"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_stock_planning_createlines_form
+msgid ""
+"This wizard helps create MPS planning lines for a given selected period and "
+"warehouse, so you don't have to create them one by one. The wizard doesn't "
+"duplicate lines if they already exist for this selection."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,outgoing:0
+msgid "Confirmed Out"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_stock_planning_createlines_form
+#: model:ir.ui.menu,name:stock_planning.menu_stock_planning_createlines
+#: view:stock.planning.createlines:0
+msgid "Create Stock Planning Lines"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "General Info"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_view_stock_sale_forecast_form
+msgid "Sales Forecast"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_per_warehouse:0
+msgid "This Warehouse Period1"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Sales History"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,supply_warehouse_id:0
+msgid "Source Warehouse"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.sale.forecast,product_qty:0
+msgid "Forecast Product quantity."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,stock_supply_location:0
+msgid "Stock Supply Location"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.period.createlines,date_stop:0
+msgid "Ending date for planning period."
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning.createlines,forecasted_products:0
+msgid ""
+"Check this box to create planning for all products having any forecast for "
+"selected Warehouse and Period. Product Category field will be ignored."
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:632
+#: code:addons/stock_planning/stock_planning.py:678
+#: code:addons/stock_planning/stock_planning.py:702
+#, python-format
+msgid "MPS(%s) %s"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,already_in:0
+msgid "Already In"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,product_uom_categ:0
+#: field:stock.planning,product_uos_categ:0
+#: field:stock.sale.forecast,product_uom_categ:0
+msgid "Product UoM Category"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_view_stock_sale_forecast_form
+msgid ""
+"This quantity sales forecast is an indication for Stock Planner to make "
+"procurement manually or to complement automatic procurement. You can use "
+"manual procurement with this forecast when some periods are exceptional for "
+"usual minimum stock rules."
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_view_stock_planning_form
+msgid ""
+"The Master Procurement Schedule can be the main driver for warehouse "
+"replenishment, or can complement the automatic MRP scheduling (minimum stock "
+"rules, etc.).\n"
+"Each MPS line gives you a pre-computed overview of the incoming and outgoing "
+"quantities of a given product for a given Stock Period in a given Warehouse, "
+"based on the current and future stock levels,\n"
+"as well as the planned stock moves. The forecast quantities can be altered "
+"manually, and when satisfied with resulting (simulated) Stock quantity, you "
+"can trigger the procurement of what is missing to reach your desired "
+"quantities"
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:685
+#, python-format
+msgid ""
+"Pick created from MPS by user: %s   Creation Date: %s                        "
+"             \n"
+"For period: %s   according to state:                                     \n"
+" Warehouse Forecast: %s                                     \n"
+" Initial Stock: %s                                     \n"
+" Planned Out: %s  Planned In: %s                                     \n"
+" Already Out: %s  Already In: %s                                     \n"
+" Confirmed Out: %s   Confirmed In: %s                                     \n"
+" Planned Out Before: %s   Confirmed In Before: %s                            "
+"         \n"
+" Expected Out: %s   Incoming Left: %s                                     \n"
+" Stock Simulation: %s   Minimum stock: %s "
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,period_id:0
+#: field:stock.planning.createlines,period_id:0
+#: field:stock.sale.forecast,period_id:0
+#: field:stock.sale.forecast.createlines,period_id:0
+msgid "Period"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,product_uos_categ:0
+msgid "Product UoS Category"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,active_uom:0
+#: field:stock.sale.forecast,active_uom:0
+msgid "Active UoM"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Search Stock Planning"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast.createlines,copy_forecast:0
+msgid "Copy Last Forecast"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.sale.forecast,product_id:0
+msgid "Shows which product this forecast concerns."
+msgstr ""
+
+#. module: stock_planning
+#: selection:stock.planning,state:0
+msgid "Done"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.period.createlines,period_ids:0
+msgid "Periods"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.ui.menu,name:stock_planning.menu_stock_period_creatlines
+msgid "Create Stock Periods"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period:0
+#: selection:stock.period,state:0
+#: view:stock.planning.createlines:0
+#: view:stock.sale.forecast.createlines:0
+msgid "Close"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+#: selection:stock.sale.forecast,state:0
+msgid "Validated"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period:0
+#: selection:stock.period,state:0
+msgid "Open"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.sale.forecast.createlines,copy_forecast:0
+msgid "Copy quantities from last Stock and Sale Forecast."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_per_dept:0
+msgid "This Dept Period1"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_per_dept:0
+msgid "This Dept Period3"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_per_dept:0
+msgid "This Dept Period2"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period5_per_dept:0
+msgid "This Dept Period5"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period4_per_dept:0
+msgid "This Dept Period4"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_per_warehouse:0
+msgid "This Warehouse Period2"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_per_warehouse:0
+msgid "This Warehouse Period3"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,stock_supply_location:0
+msgid ""
+"Check to supply from Stock location of Supply Warehouse. If not checked "
+"supply will be made from Output location of Supply Warehouse. Used in "
+"'Supply from Another Warehouse' with Supply Warehouse."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,create_uid:0
+msgid "Responsible"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Default UOM"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period4_per_warehouse:0
+msgid "This Warehouse Period4"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period5_per_warehouse:0
+msgid "This Warehouse Period5"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Current"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,supply_warehouse_id:0
+msgid ""
+"Warehouse used as source in supply pick move created by 'Supply from Another "
+"Warehouse'."
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_planning
+msgid "stock.planning"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.sale.forecast,warehouse_id:0
+msgid ""
+"Shows which warehouse this forecast concerns. If during stock planning you "
+"will need sales forecast for all warehouses choose any warehouse now."
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:661
+#, python-format
+msgid "%s Procurement (%s,  %s) %s %s \n"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyze_company:0
+msgid "Per Company"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,to_procure:0
+msgid ""
+"Enter quantity which (by your plan) should come in. Change this value and "
+"observe Stock simulation. This value should be equal or greater than "
+"Confirmed In."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period4_per_company:0
+msgid "This Company Period4"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning.createlines,period_id:0
+msgid "Period which planning will concern."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,already_out:0
+msgid "Already Out"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,product_id:0
+msgid "Product which this planning is created for."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Per Warehouse :"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,history:0
+msgid "Procurement History"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.period.createlines,date_start:0
+msgid "Starting date for planning period."
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_stock_period_createlines_form
+#: model:ir.actions.act_window,name:stock_planning.action_stock_period_form
+#: model:ir.ui.menu,name:stock_planning.menu_stock_period
+#: model:ir.ui.menu,name:stock_planning.menu_stock_period_main
+#: view:stock.period:0
+#: view:stock.period.createlines:0
+msgid "Stock Periods"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Stock"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,incoming:0
+msgid "Quantity of all confirmed incoming moves in calculated Period."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.period,date_stop:0
+#: field:stock.period.createlines,date_stop:0
+msgid "End Date"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "No Requisition"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,name:0
+msgid "Name"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.sale.forecast,period_id:0
+msgid "Shows which period this forecast concerns."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,product_uom:0
+msgid "UoM"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Closed Periods"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+#: field:stock.planning,product_id:0
+#: view:stock.sale.forecast:0
+#: field:stock.sale.forecast,product_id:0
+msgid "Product"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.ui.menu,name:stock_planning.menu_stock_sale_forecast
+#: model:ir.ui.menu,name:stock_planning.menu_stock_sale_forecast_all
+#: view:stock.sale.forecast:0
+msgid "Sales Forecasts"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning.createlines,product_categ_id:0
+#: field:stock.sale.forecast.createlines,product_categ_id:0
+msgid "Product Category"
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:672
+#, python-format
+msgid "You must specify a Source Warehouse !"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,procure_to_stock:0
+msgid "Procure To Stock Location"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Approve"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,period_id:0
+msgid ""
+"Period for this planning. Requisition will be created for beginning of the "
+"period."
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:631
+#, python-format
+msgid "MPS planning for %s"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,stock_start:0
+msgid "Initial Stock"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,product_amt:0
+msgid "Product Amount"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,confirmed_forecasts_only:0
+msgid ""
+"Check to take validated forecasts only. If not checked system takes "
+"validated and draft forecasts."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period5_id:0
+msgid "Period5"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_warehouse_id:0
+msgid "This Warehouse"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.sale.forecast,user_id:0
+msgid "Shows who created this forecast, or who validated."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_team_id:0
+msgid "Sales Team"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,incoming_left:0
+msgid ""
+"Quantity left to Planned incoming quantity. This is calculated difference "
+"between Planned In and Confirmed In. For current period Already In is also "
+"calculated. This value is used to create procurement for lacking quantity."
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,outgoing_left:0
+msgid ""
+"Quantity expected to go out in selected period besides Confirmed Out. As a "
+"difference between Planned Out and Confirmed Out. For current period Already "
+"Out is also calculated"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Calculate Sales History"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_stock_sale_forecast_createlines_form
+msgid ""
+"This wizard helps create many forecast lines at once. After creating them "
+"you only have to fill in the forecast quantities. The wizard doesn't "
+"duplicate the line when another one exist for the same selection."
+msgstr ""
+
+#, python-format
+#~ msgid ""
+#~ "\n"
+#~ " Initial Stock: "
+#~ msgstr ""
+#~ "\n"
+#~ " Αρχικό Στοκ: "
+
+#~ msgid "Create Stock and Sales Periods"
+#~ msgstr "Δημιουργία Περιόδων Στοκ και Πωλήσεων"
+
+#, python-format
+#~ msgid "    Confirmed In Before: "
+#~ msgstr "    Επιβεβαιώθηκε Πριν: "
+
+#~ msgid "This Department"
+#~ msgstr "Αυτό το Τμήμα"

=== added file 'stock_planning/i18n/es.po'
--- stock_planning/i18n/es.po	1970-01-01 00:00:00 +0000
+++ stock_planning/i18n/es.po	2014-05-20 13:49:41 +0000
@@ -0,0 +1,1952 @@
+# Spanish translation for openobject-addons
+# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
+# This file is distributed under the same license as the openobject-addons package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-02-08 00:37+0000\n"
+"PO-Revision-Date: 2012-05-10 18:05+0000\n"
+"Last-Translator: Borja López Soilán (NeoPolus) <borjalopezsoilan@xxxxxxxxx>\n"
+"Language-Team: Spanish <es@xxxxxx>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2012-10-30 05:30+0000\n"
+"X-Generator: Launchpad (build 16206)\n"
+
+#. module: stock_planning
+#: code:addons/stock_planning/wizard/stock_planning_createlines.py:73
+#, python-format
+msgid ""
+"No forecasts for selected period or no products in selected category !"
+msgstr ""
+"¡No hay previsiones para el periodo seleccionado o no hay productos en la "
+"categoría seleccionada!"
+
+#. module: stock_planning
+#: help:stock.planning,stock_only:0
+msgid ""
+"Check to calculate stock location of selected warehouse only. If not "
+"selected calculation is made for input, stock and output location of "
+"warehouse."
+msgstr ""
+"Marque esta opción para calcular el stock sólo de la ubicación stock del "
+"almacén seleccionado. Si no se marca, el cálculo se realiza para las "
+"ubicaciones de entrada, stock y salida del almacén."
+
+#. module: stock_planning
+#: field:stock.planning,maximum_op:0
+msgid "Maximum Rule"
+msgstr "Regla máximo"
+
+#. module: stock_planning
+#: view:stock.planning:0
+#: view:stock.sale.forecast:0
+msgid "Group By..."
+msgstr "Agrupar por..."
+
+#. module: stock_planning
+#: help:stock.sale.forecast,product_amt:0
+msgid ""
+"Forecast value which will be converted to Product Quantity according to "
+"prices."
+msgstr ""
+"Valor de la previsión que será convertido en cantidad de producto en función "
+"de precios."
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:626
+#: code:addons/stock_planning/stock_planning.py:670
+#, python-format
+msgid "Incoming Left must be greater than 0 !"
+msgstr "¡Entradas restantes debe ser mayor que 0!"
+
+#. module: stock_planning
+#: help:stock.planning,outgoing_before:0
+msgid ""
+"Planned Out in periods before calculated. Between start date of current "
+"period and one day before start of calculated period."
+msgstr ""
+"Salidas planificadas en periodos anteriores al calculado. Entre la fecha de "
+"inicio del periodo actual y un día antes del comienzo del periodo calculado."
+
+#. module: stock_planning
+#: help:stock.sale.forecast.createlines,warehouse_id:0
+msgid ""
+"Warehouse which forecasts will concern. If during stock planning you will "
+"need sales forecast for all warehouses choose any warehouse now."
+msgstr ""
+"Almacén al que conciernen las previsiones. Si durante la planificación de "
+"stock necesita previsiones de ventas para todos los almacenes escoja ahora "
+"un almacén cualquiera."
+
+#. module: stock_planning
+#: field:stock.planning,outgoing_left:0
+msgid "Expected Out"
+msgstr "Salidas previstas"
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid " "
+msgstr " "
+
+#. module: stock_planning
+#: field:stock.planning,incoming_left:0
+msgid "Incoming Left"
+msgstr "Entradas restantes"
+
+#. module: stock_planning
+#: view:stock.sale.forecast.createlines:0
+msgid "Create Forecasts Lines"
+msgstr "Crear líneas de previsiones"
+
+#. module: stock_planning
+#: help:stock.planning,outgoing:0
+msgid "Quantity of all confirmed outgoing moves in calculated Period."
+msgstr "Cantidades de todas las salidas confirmadas en el periodo calculado."
+
+#. module: stock_planning
+#: view:stock.period.createlines:0
+msgid "Create Daily Periods"
+msgstr "Crear periodos diarios"
+
+#. module: stock_planning
+#: view:stock.planning:0
+#: field:stock.planning,company_id:0
+#: field:stock.planning.createlines,company_id:0
+#: view:stock.sale.forecast:0
+#: field:stock.sale.forecast,company_id:0
+#: field:stock.sale.forecast.createlines,company_id:0
+msgid "Company"
+msgstr "Compañía"
+
+#. module: stock_planning
+#: help:stock.planning,warehouse_forecast:0
+msgid ""
+"All sales forecasts for selected Warehouse of selected Product during "
+"selected Period."
+msgstr ""
+"Todas las previsiones de ventas para el almacén seleccionado del producto "
+"seleccionado durante el periodo seleccionado."
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Minimum Stock Rule Indicators"
+msgstr "Indicadores de reglas de stock mínimo"
+
+#. module: stock_planning
+#: help:stock.sale.forecast.createlines,period_id:0
+msgid "Period which forecasts will concern."
+msgstr "Periodo al que conciernen las previsiones."
+
+#. module: stock_planning
+#: field:stock.planning,stock_only:0
+msgid "Stock Location Only"
+msgstr "Sólo ubicaciones de stock"
+
+#. module: stock_planning
+#: help:stock.planning,already_out:0
+msgid ""
+"Quantity which is already dispatched out of this warehouse in current period."
+msgstr ""
+"Cantidades que ya se enviaron fuera de este almacén en el período actual."
+
+#. module: stock_planning
+#: field:stock.planning,incoming:0
+msgid "Confirmed In"
+msgstr "Entradas confirmadas"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Current Period Situation"
+msgstr "Situación del periodo actual"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_stock_period_createlines_form
+msgid ""
+"This wizard helps with the creation of stock planning periods. These periods "
+"are independent of financial periods. If you need periods other than day-, "
+"week- or month-based, you may also add then manually."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period.createlines:0
+msgid "Create Monthly Periods"
+msgstr "Crear periodos mensuales"
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_period_createlines
+msgid "stock.period.createlines"
+msgstr "stock.periodo.crearlíneas"
+
+#. module: stock_planning
+#: field:stock.planning,outgoing_before:0
+msgid "Planned Out Before"
+msgstr "Salidas planificadas antes"
+
+#. module: stock_planning
+#: field:stock.planning.createlines,forecasted_products:0
+msgid "All Products with Forecast"
+msgstr "Todos los productos con previsión"
+
+#. module: stock_planning
+#: help:stock.planning,maximum_op:0
+msgid "Maximum quantity set in Minimum Stock Rules for this Warehouse"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Periods :"
+msgstr "Periodos :"
+
+#. module: stock_planning
+#: help:stock.planning,procure_to_stock:0
+msgid ""
+"Check to make procurement to stock location of selected warehouse. If not "
+"selected procurement will be made into input location of warehouse."
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,already_in:0
+msgid ""
+"Quantity which is already picked up to this warehouse in current period."
+msgstr ""
+"Cantidades que ya han sido recogidas en este almacén en el periodo actual."
+
+#. module: stock_planning
+#: code:addons/stock_planning/wizard/stock_planning_forecast.py:60
+#, python-format
+msgid "No products in selected category !"
+msgstr "¡No hay productos en la categoría seleccionada!"
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Stock and Sales Forecast"
+msgstr "Previsiones de stock y ventas"
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_sale_forecast
+msgid "stock.sale.forecast"
+msgstr "stock.ventas.prevision"
+
+#. module: stock_planning
+#: field:stock.planning,to_procure:0
+msgid "Planned In"
+msgstr "Entradas planificadas"
+
+#. module: stock_planning
+#: field:stock.planning,stock_simulation:0
+msgid "Stock Simulation"
+msgstr "Simulación de stock"
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_planning_createlines
+msgid "stock.planning.createlines"
+msgstr "stock.planificación.crearlíneas"
+
+#. module: stock_planning
+#: help:stock.planning,incoming_before:0
+msgid ""
+"Confirmed incoming in periods before calculated (Including Already In). "
+"Between start date of current period and one day before start of calculated "
+"period."
+msgstr ""
+"Entradas confirmadas en periodos anteriores al calculado (incluyendo las "
+"entradas realizadas). Entre la fecha de inicio del periodo actual y un día "
+"antes del comienzo del periodo calculado."
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Search  Sales Forecast"
+msgstr "Buscar previsiones de ventas"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period5_per_user:0
+msgid "This User Period5"
+msgstr "El periodo de este usuario5"
+
+#. module: stock_planning
+#: help:stock.planning,history:0
+msgid "History of procurement or internal supply of this planning line."
+msgstr ""
+"Historial de abastecimiento o suministro interno de esta línea de "
+"planificación."
+
+#. module: stock_planning
+#: help:stock.planning,company_forecast:0
+msgid ""
+"All sales forecasts for whole company (for all Warehouses) of selected "
+"Product during selected Period."
+msgstr ""
+"Todas las previsiones para la compañía entera (para todos los almacenes) del "
+"producto seleccionado durante el periodo seleccionado."
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_per_user:0
+msgid "This User Period1"
+msgstr "El periodo de este usuario1"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_per_user:0
+msgid "This User Period3"
+msgstr "El periodo de este usuario3"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Stock Planning"
+msgstr "Planificación de stock"
+
+#. module: stock_planning
+#: field:stock.planning,minimum_op:0
+msgid "Minimum Rule"
+msgstr "Regla de mínimos"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Procure Incoming Left"
+msgstr "Entradas abastecimiento restante"
+
+#. module: stock_planning
+#: view:stock.planning.createlines:0
+#: view:stock.sale.forecast.createlines:0
+msgid "Create"
+msgstr "Crear"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_view_stock_planning_form
+#: model:ir.ui.menu,name:stock_planning.menu_stock_planning
+#: model:ir.ui.menu,name:stock_planning.menu_stock_planning_manual
+#: view:stock.planning:0
+msgid "Master Procurement Schedule"
+msgstr "Plan maestro de abastecimiento"
+
+#. module: stock_planning
+#: field:stock.planning,line_time:0
+msgid "Past/Future"
+msgstr "Pasado/Futuro"
+
+#. module: stock_planning
+#: view:stock.period:0
+#: field:stock.period,state:0
+#: field:stock.planning,state:0
+#: field:stock.sale.forecast,state:0
+msgid "State"
+msgstr "Estado"
+
+#. module: stock_planning
+#: help:stock.sale.forecast.createlines,product_categ_id:0
+msgid "Product Category of products which created forecasts will concern."
+msgstr "Categoría de los productos cuyas previsiones se crearán."
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_period
+msgid "stock period"
+msgstr "periodo stock"
+
+#. module: stock_planning
+#: model:ir.model,name:stock_planning.model_stock_sale_forecast_createlines
+msgid "stock.sale.forecast.createlines"
+msgstr "stock.venta.previsión.crearlíneas"
+
+#. module: stock_planning
+#: field:stock.planning,warehouse_id:0
+#: field:stock.planning.createlines,warehouse_id:0
+#: field:stock.sale.forecast,warehouse_id:0
+#: field:stock.sale.forecast.createlines,warehouse_id:0
+msgid "Warehouse"
+msgstr "Almacén"
+
+#. module: stock_planning
+#: help:stock.planning,stock_simulation:0
+msgid ""
+"Stock simulation at the end of selected Period.\n"
+" For current period it is: \n"
+"Initial Stock - Already Out + Already In - Expected Out + Incoming Left.\n"
+"For periods ahead it is: \n"
+"Initial Stock - Planned Out Before + Incoming Before - Planned Out + Planned "
+"In."
+msgstr ""
+"Simulación de stock al final del período seleccionado.\n"
+" Para el periodo actual es: \n"
+"Stock inicial – salidas + entradas – salidas previstas + entradas "
+"esperadas.\n"
+" Para los siguientes periodos es: \n"
+"Stock inicial – salidas previstas anteriores + entradas anteriores – salidas "
+"previstas + entradas previstas."
+
+#. module: stock_planning
+#: help:stock.sale.forecast,analyze_company:0
+msgid "Check this box to see the sales for whole company."
+msgstr "Seleccione esta casilla para ver las ventas de todda la compañía."
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Per Department :"
+msgstr "Por departamento:"
+
+#. module: stock_planning
+#: field:stock.planning,incoming_before:0
+msgid "Incoming Before"
+msgstr "Entradas antes"
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:641
+#, python-format
+msgid ""
+" Procurement created by MPS for user: %s   Creation Date: %s                 "
+"                        \n"
+" For period: %s                                         \n"
+" according to state:                                         \n"
+" Warehouse Forecast: %s                                         \n"
+" Initial Stock: %s                                         \n"
+" Planned Out: %s    Planned In: %s                                         \n"
+" Already Out: %s    Already In: %s                                         \n"
+" Confirmed Out: %s    Confirmed In: %s                                       "
+"  \n"
+" Planned Out Before: %s    Confirmed In Before: %s                           "
+"              \n"
+" Expected Out: %s    Incoming Left: %s                                       "
+"  \n"
+" Stock Simulation: %s    Minimum stock: %s"
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:626
+#: code:addons/stock_planning/stock_planning.py:670
+#: code:addons/stock_planning/stock_planning.py:672
+#: code:addons/stock_planning/stock_planning.py:674
+#: code:addons/stock_planning/wizard/stock_planning_createlines.py:73
+#: code:addons/stock_planning/wizard/stock_planning_forecast.py:60
+#, python-format
+msgid "Error !"
+msgstr "¡ Error !"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_user_id:0
+msgid "This User"
+msgstr "Este usuario"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Forecasts"
+msgstr "Previsiones"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Supply from Another Warehouse"
+msgstr "Abastecer desde otro almacen"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Calculate Planning"
+msgstr "Calcular planificación"
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:146
+#, python-format
+msgid "Invalid action !"
+msgstr "¡Acción no válida!"
+
+#. module: stock_planning
+#: help:stock.planning,stock_start:0
+msgid "Stock quantity one day before current period."
+msgstr "Cantidad stock un día antes del periodo actual."
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Procurement history"
+msgstr ""
+
+#. module: stock_planning
+#: help:stock.planning,product_uom:0
+msgid ""
+"Unit of Measure used to show the quantities of stock calculation.You can use "
+"units from default category or from second category (UoS category)."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.period.createlines:0
+msgid "Create Weekly Periods"
+msgstr "Crear periodos semanales"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_stock_period_form
+msgid ""
+"Stock periods are used for stock planning. Stock periods are independent of "
+"account periods. You can use wizard for creating periods and review them "
+"here."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Calculated Period Simulation"
+msgstr "Simulación calculada del periodo"
+
+#. module: stock_planning
+#: view:stock.period.createlines:0
+msgid "Cancel"
+msgstr "Cancelar"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period4_per_user:0
+msgid "This User Period4"
+msgstr "Este periodo de usuario4"
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Stock and Sales Period"
+msgstr "Periodo de stock y ventas"
+
+#. module: stock_planning
+#: field:stock.planning,company_forecast:0
+msgid "Company Forecast"
+msgstr "Previsión de la compañía"
+
+#. module: stock_planning
+#: help:stock.planning,minimum_op:0
+msgid "Minimum quantity set in Minimum Stock Rules for this Warehouse"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Per User :"
+msgstr "Por usuario :"
+
+#. module: stock_planning
+#: help:stock.planning.createlines,warehouse_id:0
+msgid "Warehouse which planning will concern."
+msgstr "Almacén que se referirá la planificación"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,user_id:0
+msgid "Created/Validated by"
+msgstr "Creado/Validado por"
+
+#. module: stock_planning
+#: field:stock.planning,warehouse_forecast:0
+msgid "Warehouse Forecast"
+msgstr "Previsión almacen"
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:674
+#, python-format
+msgid ""
+"You must specify a Source Warehouse different than calculated (destination) "
+"Warehouse !"
+msgstr ""
+"¡Debe especificar un almacén de origen diferente del almacén calculado (de "
+"destino)!"
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:146
+#, python-format
+msgid "Cannot delete a validated sales forecast!"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period5_per_company:0
+msgid "This Company Period5"
+msgstr "El periodo de esta compañía5"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,product_uom:0
+msgid "Product UoM"
+msgstr "UdM de producto"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_per_company:0
+msgid "This Company Period1"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_per_company:0
+msgid "This Company Period2"
+msgstr "El periodo de esta compañía2"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_per_company:0
+msgid "This Company Period3"
+msgstr "El periodo de esta compañía3"
+
+#. module: stock_planning
+#: field:stock.period,date_start:0
+#: field:stock.period.createlines,date_start:0
+msgid "Start Date"
+msgstr "Fecha inicio"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_per_user:0
+msgid "This User Period2"
+msgstr "El periodo de este usuario2"
+
+#. module: stock_planning
+#: field:stock.planning,confirmed_forecasts_only:0
+msgid "Validated Forecasts"
+msgstr "Previsiones validadas"
+
+#. module: stock_planning
+#: help:stock.planning.createlines,product_categ_id:0
+msgid ""
+"Planning will be created for products from Product Category selected by this "
+"field. This field is ignored when you check \"All Forecasted Product\" box."
+msgstr ""
+"Se creará la planificación para los productos de la categoría de productos "
+"seleccionada con este campo. Este campo se ignora cuando se marca la opción "
+"\"Todas las previsiones de productos”."
+
+#. module: stock_planning
+#: field:stock.planning,planned_outgoing:0
+msgid "Planned Out"
+msgstr "Salidas planificadas"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,product_qty:0
+msgid "Forecast Quantity"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Forecast"
+msgstr "Previsión"
+
+#. module: stock_planning
+#: selection:stock.period,state:0
+#: selection:stock.planning,state:0
+#: selection:stock.sale.forecast,state:0
+msgid "Draft"
+msgstr "Borrador"
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Closed"
+msgstr "Cerrada"
+
+#. module: stock_planning
+#: view:stock.planning:0
+#: view:stock.sale.forecast:0
+msgid "Warehouse "
+msgstr "Almacén "
+
+#. module: stock_planning
+#: help:stock.sale.forecast,product_uom:0
+msgid ""
+"Unit of Measure used to show the quantities of stock calculation.You can use "
+"units form default category or from second category (UoS category)."
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Planning and Situation for Calculated Period"
+msgstr "Planificación y situación para el periodo calculado"
+
+#. module: stock_planning
+#: help:stock.planning,planned_outgoing:0
+msgid ""
+"Enter planned outgoing quantity from selected Warehouse during the selected "
+"Period of selected Product. To plan this value look at Confirmed Out or "
+"Sales Forecasts. This value should be equal or greater than Confirmed Out."
+msgstr ""
+"Introduzca la cantidad saliente planificada para el almacén seleccionado "
+"durante el periodo seleccionado y para el producto seleccionado. Para "
+"planificar este valor puede fijarse en las salidas confirmadas o las "
+"previsiones de ventas. Este valor debería ser igual o superior a las salidas "
+"confirmadas."
+
+#. module: stock_planning
+#: view:stock.period:0
+msgid "Current Periods"
+msgstr ""
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "Internal Supply"
+msgstr "Suministro interno"
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:724
+#, python-format
+msgid "%s Pick List %s (%s,  %s) %s %s \n"
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_stock_sale_forecast_createlines_form
+#: model:ir.ui.menu,name:stock_planning.menu_stock_sale_forecast_createlines
+msgid "Create Sales Forecasts"
+msgstr "Crear previsiones de ventas"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period4_id:0
+msgid "Period4"
+msgstr "Periodo4"
+
+#. module: stock_planning
+#: field:stock.period,name:0
+#: field:stock.period.createlines,name:0
+msgid "Period Name"
+msgstr "Nombre del período"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period2_id:0
+msgid "Period2"
+msgstr "Periodo2"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period3_id:0
+msgid "Period3"
+msgstr "Periodo3"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_id:0
+msgid "Period1"
+msgstr "Periodo1"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_stock_planning_createlines_form
+msgid ""
+"This wizard helps create MPS planning lines for a given selected period and "
+"warehouse, so you don't have to create them one by one. The wizard doesn't "
+"duplicate lines if they already exist for this selection."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,outgoing:0
+msgid "Confirmed Out"
+msgstr "Salidas confirmadas"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_stock_planning_createlines_form
+#: model:ir.ui.menu,name:stock_planning.menu_stock_planning_createlines
+#: view:stock.planning.createlines:0
+msgid "Create Stock Planning Lines"
+msgstr "Crear líneas de planificación de stock"
+
+#. module: stock_planning
+#: view:stock.planning:0
+msgid "General Info"
+msgstr "Información general"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,name:stock_planning.action_view_stock_sale_forecast_form
+msgid "Sales Forecast"
+msgstr "Previsión de ventas"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,analyzed_period1_per_warehouse:0
+msgid "This Warehouse Period1"
+msgstr "Peridodo de este almacen1"
+
+#. module: stock_planning
+#: view:stock.sale.forecast:0
+msgid "Sales History"
+msgstr "Histórico de ventas"
+
+#. module: stock_planning
+#: field:stock.planning,supply_warehouse_id:0
+msgid "Source Warehouse"
+msgstr "Almacén origen"
+
+#. module: stock_planning
+#: help:stock.sale.forecast,product_qty:0
+msgid "Forecast Product quantity."
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,stock_supply_location:0
+msgid "Stock Supply Location"
+msgstr "Ubicación suministro de stock"
+
+#. module: stock_planning
+#: help:stock.period.createlines,date_stop:0
+msgid "Ending date for planning period."
+msgstr "Fecha de fin para el periodo planificado."
+
+#. module: stock_planning
+#: help:stock.planning.createlines,forecasted_products:0
+msgid ""
+"Check this box to create planning for all products having any forecast for "
+"selected Warehouse and Period. Product Category field will be ignored."
+msgstr ""
+"Marque esta opción para crear la planificación de todos los productos que "
+"tengan cualquier previsión en el almacén y periodo seleccionado. El campo "
+"categoría de producto será ignorado."
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:632
+#: code:addons/stock_planning/stock_planning.py:678
+#: code:addons/stock_planning/stock_planning.py:702
+#, python-format
+msgid "MPS(%s) %s"
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,already_in:0
+msgid "Already In"
+msgstr "Entradas realizadas"
+
+#. module: stock_planning
+#: field:stock.planning,product_uom_categ:0
+#: field:stock.planning,product_uos_categ:0
+#: field:stock.sale.forecast,product_uom_categ:0
+msgid "Product UoM Category"
+msgstr "Categoría UdM producto"
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_view_stock_sale_forecast_form
+msgid ""
+"This quantity sales forecast is an indication for Stock Planner to make "
+"procurement manually or to complement automatic procurement. You can use "
+"manual procurement with this forecast when some periods are exceptional for "
+"usual minimum stock rules."
+msgstr ""
+
+#. module: stock_planning
+#: model:ir.actions.act_window,help:stock_planning.action_view_stock_planning_form
+msgid ""
+"The Master Procurement Schedule can be the main driver for warehouse "
+"replenishment, or can complement the automatic MRP scheduling (minimum stock "
+"rules, etc.).\n"
+"Each MPS line gives you a pre-computed overview of the incoming and outgoing "
+"quantities of a given product for a given Stock Period in a given Warehouse, "
+"based on the current and future stock levels,\n"
+"as well as the planned stock moves. The forecast quantities can be altered "
+"manually, and when satisfied with resulting (simulated) Stock quantity, you "
+"can trigger the procurement of what is missing to reach your desired "
+"quantities"
+msgstr ""
+
+#. module: stock_planning
+#: code:addons/stock_planning/stock_planning.py:685
+#, python-format
+msgid ""
+"Pick created from MPS by user: %s   Creation Date: %s                        "
+"             \n"
+"For period: %s   according to state:                                     \n"
+" Warehouse Forecast: %s                                     \n"
+" Initial Stock: %s                                     \n"
+" Planned Out: %s  Planned In: %s                                     \n"
+" Already Out: %s  Already In: %s                                     \n"
+" Confirmed Out: %s   Confirmed In: %s                                     \n"
+" Planned Out Before: %s   Confirmed In Before: %s                            "
+"         \n"
+" Expected Out: %s   Incoming Left: %s                                     \n"
+" Stock Simulation: %s   Minimum stock: %s "
+msgstr ""
+
+#. module: stock_planning
+#: field:stock.planning,period_id:0
+#: field:stock.planning.createlines,period_id:0
+#: field:stock.sale.forecast,period_id:0
+#: field:stock.sale.forecast.createlines,period_id:0
+msgid "Period"
+msgstr "Periodo"
+
+#. module: stock_planning
+#: field:stock.sale.forecast,product_uos_categ:0
+msgid "Product UoS Category"
+msgstr "Categoría UdV producto"
+
+#. module: stock_planning
+#: field:stock.planning,active_uom:0
+#: field:stock.sale.forecast,active_uom:0
+msgid "Active UoM"
+msgstr "UdM activa"
+
+#. module: stock_planning
+#: view:stock.pl