[MERGE] lp:~openerp-dev/openobject-addons/trunk-fix-server-log

bzr revid: kjo@tinyerp.com-20120613090848-bvuu57j7fz3730qx
This commit is contained in:
Kuldeep Joshi (OpenERP) 2012-06-13 14:38:48 +05:30
commit 059a6afa30
24 changed files with 250 additions and 71 deletions

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-06-12 04:55+0000\n"
"X-Launchpad-Export-Date: 2012-06-13 04:56+0000\n"
"X-Generator: Launchpad (build 15389)\n"
#. module: account

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-06-12 04:55+0000\n"
"X-Launchpad-Export-Date: 2012-06-13 04:56+0000\n"
"X-Generator: Launchpad (build 15389)\n"
#. module: account_analytic_analysis

View File

View File

@ -0,0 +1,19 @@
{
'name': 'Anonymous',
'description': 'Allow anonymous access to OpenERP',
'author': 'OpenERP SA',
'version': '1.0',
'category': 'Tools',
'website': 'http://www.openerp.com',
'installable': True,
'depends': ['web'],
'data': [
'anonymous.xml',
],
'js': [
'static/src/js/anonymous.js',
],
'qweb': [
'static/src/xml/anonymous.xml',
],
}

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<record model="res.users" id="user">
<field name="name">Anonymous</field>
<field name="login">anonymous</field>
<field name="password">anonymous</field>
<field name="groups_id" eval="[(5,)]"/>
<field name="avatar">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</field>
</record>
</data>
</openerp>

View File

@ -0,0 +1,44 @@
openerp.anonymous = function(instance) {
instance.web.client_actions.add("login", "instance.web.Login");
instance.web.WebClient.include({
show_login: function() {
var self = this, _super = this._super;
this.login.load_db_list().then(function() {
var dblist = self.login._db_list;
if (dblist && dblist.length === 1) {
self.login.remember_credentials = false;
// XXX get login/pass from server (via a rpc call) ?
self.login.do_login(dblist[0], 'anonymous', 'anonymous').fail(function() {
_super.apply(self, []);
});
} else {
_super.apply(self, []);
}
});
},
});
instance.web.UserMenu.include({
init: function(parent) {
this._super(parent);
if (this.session.username == 'anonymous') {
this.template = 'UserMenu.anonymous';
this.do_update = function() {}; // avoid change of avatar
}
},
start: function() {
var self = this;
this._super.apply(this, arguments);
this.$element.find('.oe_topbar_anonymous_login').click(function() {
var p = self.getParent();
var am = p.action_manager;
am.do_action({type:'ir.actions.client', tag:'login'});
am.client_widget.on('login', p, p.show_application);
});
}
});
};

View File

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- vim:fdl=1:
-->
<templates id="template" xml:space="preserve">
<t t-name="UserMenu.anonymous">
<ul class="oe_user_menu oe_topbar_item">
<li>
<a href="#" class="oe_topbar_anonymous_login">
<img class="oe_topbar_avatar" t-att-src="_s + '/web/static/src/img/icons/gtk-dialog-authentication.png'"/>
Login
</a>
</li>
</ul>
</t>
</templates>

View File

@ -209,6 +209,7 @@ class hr_employee(osv.osv):
'color': fields.integer('Color Index'),
'city': fields.related('address_id', 'city', type='char', string='City'),
'login': fields.related('user_id', 'login', type='char', string='Login', readonly=1),
'last_login': fields.related('user_id', 'date', type='datetime', string='Latest Connection', readonly=1),
}
def unlink(self, cr, uid, ids, context=None):

File diff suppressed because one or more lines are too long

View File

@ -31,23 +31,22 @@
<div class="oe_form_title">
<label for="name" class="oe_form_readonly_hidden"/>
<h1><field name="name"/></h1>
<label for="company_id" class="oe_form_readonly_hidden" groups="base.group_multi_company"/>
<h2><field name="company_id" widget="selection" on_change="onchange_company(company_id)" groups="base.group_multi_company"/></h2>
<label for="department_id" class="oe_form_readonly_hidden"/>
<h2>
<field name="company_id" widget="selection" groups="base.group_multi_company" on_change="onchange_company(company_id)"/>,
<field name="department_id" on_change="onchange_department_id(department_id)" />
</h2>
<h2><field name="department_id" on_change="onchange_department_id(department_id)"/></h2>
</div>
<notebook>
<page string="Personal Information">
<group>
<group>
<group string="General">
<field name="user_id" on_change="onchange_user(user_id)"/>
<field name="active"/>
<field name="parent_id" />
</group>
<group groups="base.group_hr_user" string="Social IDs">
<field name="ssnid"/>
<field name="sinid"/>
<field name="identification_id"/>
<field name="passport_id"/>
<field name="otherid"/>
@ -67,13 +66,13 @@
<field name="work_location"/>
</group>
<group string="Job Information">
<field name="job_id" domain="[('state','!=','old')]"/>
<field name="job_id" domain="[('state','!=','old')]" context="{'form_view_ref': 'hr.view_hr_job_employee_form'}"/>
<field name="coach_id" />
</group>
</group>
</page>
<page string="Categories" groups="base.group_hr_user">
<field name="category_ids"/>
<field name="category_ids" widget="many2many_tags"/>
</page>
<page string="Notes" groups="base.group_hr_user">
<field name="notes"/>
@ -134,6 +133,7 @@
<field name="type">kanban</field>
<field name="arch" type="xml">
<kanban>
<field name="last_login"/>
<templates>
<t t-name="kanban-box">
<div class="oe_employee_vignette">
@ -143,6 +143,11 @@
<div class="oe_employee_details">
<h4><a type="edit"><field name="name"/> (<field name="login"/>)</a></h4>
<ul>
<li id="last_login">
<span t-if="record.last_login.raw_value &amp;&amp; record.last_login.raw_value.is().today()" class="oe_kanban_button" style="font-size: 100%%">
<t t-esc="record.last_login.raw_value.toString('HH:mm')"/>
</span>
</li>
<li t-if="record.job_id.raw_value"><field name="job_id"/></li>
<li t-if="record.work_location.raw_value"><field name="work_location"/></li>
<li t-if="record.work_phone.raw_value">Tel: <field name="work_phone"/></li>
@ -421,9 +426,26 @@
<filter string="Company" icon="terp-go-home" domain="[]" context="{'group_by':'company_id'}" groups="base.group_multi_company"/>
</group>
</search>
</field>
</record>
</field>
</record>
<record id="view_hr_job_employee_form" model="ir.ui.view">
<field name="name">hr.job.employee.form</field>
<field name="model">hr.job</field>
<field name="type">form</field>
<field name="priority">20</field>
<field name="arch" type="xml">
<form string="Job" version="7.0">
<group col="4">
<field name="name" />
<field name="department_id" />
</group>
<label for="description"/>
<field name="description"/>
</form>
</field>
</record>
<record model="ir.actions.act_window" id="action_hr_job">
<field name="name">Job Positions</field>
<field name="res_model">hr.job</field>

View File

@ -512,7 +512,6 @@ class hr_employee(osv.osv):
'current_leave_id': fields.function(_get_leave_status, multi="leave_status", string="Current Leave Type",type='many2one', relation='hr.holidays.status'),
'leave_date_from': fields.function(_get_leave_status, multi='leave_status', type='date', string='From Date'),
'leave_date_to': fields.function(_get_leave_status, multi='leave_status', type='date', string='To Date'),
'last_login': fields.related('user_id', 'date', type='datetime', string='Latest Connection', readonly=1)
}
hr_employee()

View File

@ -284,7 +284,7 @@
<field name="act_window_id" ref="open_ask_holidays"/>
</record>
<menuitem name="Leave Requests" parent="menu_open_ask_holidays" id="menu_open_ask_holidays_new" action="open_ask_holidays"/>
<menuitem name="My Leave Requests" parent="menu_open_ask_holidays" id="menu_open_ask_holidays_new" action="open_ask_holidays"/>
<record model="ir.actions.act_window" id="request_approve_holidays">
<field name="name">Requests Approve</field>
@ -493,8 +493,6 @@
<field name="arch" type="xml">
<field name="coach_id" position="after">
<field name="remaining_leaves"/>
<field name="current_leave_id"/>
<field name="current_leave_state" attrs="{'invisible':[('current_leave_id','=',False)]}"/>
</field>
</field>
</record>
@ -505,22 +503,17 @@
<field name="inherit_id" ref="hr.hr_kanban_view_employees"/>
<field name="arch" type="xml">
<xpath expr="//templates" position="before">
<field name="current_leave_id"/>
<field name="current_leave_state"/>
<field name="last_login"/>
<field name="leave_date_from"/>
<field name="leave_date_to"/>
</xpath>
<xpath expr="//div[@class='oe_employee_details']/ul/li" position="before">
<li t-if="record.current_leave_id.raw_value || record.last_login.raw_value">
<span t-if="record.current_leave_id.raw_value" t-att-class="record.current_leave_state.raw_value=='validate'?'oe_kanban_color_3':'oe_kanban_color_2'">
<span class="oe_kanban_button" style="font-size: 100%%" t-att-title="record.leave_date_from.raw_value.toString('ddd dS MMM') + ' - ' + record.leave_date_to.raw_value.toString('ddd dS MMM')" >
<field name="current_leave_id"/>
</span>
</span>
<span t-if="record.last_login.raw_value &amp;&amp; record.last_login.raw_value.is().today()" class="oe_kanban_button" style="font-size: 100%%">
<t t-esc="record.last_login.raw_value.toString('HH:mm')"/>
</span>
</li>
<xpath expr="//div[@class='oe_employee_details']/ul/li[@id='last_login']" position="inside">
<span t-if="record.current_leave_id.raw_value" style="font-size: 100%%"
t-att-class="record.current_leave_state.raw_value=='validate'?'oe_kanban_button oe_kanban_color_3':'oe_kanban_button oe_kanban_color_2'"
t-att-title="record.leave_date_from.raw_value.toString('ddd dS MMM') + ' - ' + record.leave_date_to.raw_value.toString('ddd dS MMM')">
<field name="current_leave_id"/>
</span>
</xpath>
</field>
</record>

View File

@ -10,7 +10,7 @@
<field name="name">mail.subscription.tree</field>
<field name="model">mail.subscription</field>
<field name="type">tree</field>
<field name="sequence">10</field>
<field name="priority">10</field>
<field name="arch" type="xml">
<tree string="Subscription">
<field name="res_model"/>
@ -28,7 +28,7 @@
<field name="name">mail.notification.tree</field>
<field name="model">mail.notification</field>
<field name="type">tree</field>
<field name="sequence">10</field>
<field name="priority">10</field>
<field name="arch" type="xml">
<tree string="Subscription">
<field name="user_id"/>

View File

@ -293,7 +293,7 @@ class mail_thread(osv.osv):
}
to_attach.append(ir_attachment.create(cr, uid, data_attach, context=context))
partner_id = hasattr(thread, 'partner_id') and (thread.partner_id and thread.partner_id.id or False) or False
partner_id = ('partner_id' in thread._columns.keys()) and (thread.partner_id and thread.partner_id.id or False) or False
if not partner_id and thread._name == 'res.partner':
partner_id = thread.id
data = {

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-06-12 04:55+0000\n"
"X-Launchpad-Export-Date: 2012-06-13 04:56+0000\n"
"X-Generator: Launchpad (build 15389)\n"
#. module: mrp_repair

58
addons/pad/i18n/sv.po Normal file
View File

@ -0,0 +1,58 @@
# Swedish 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 01:37+0100\n"
"PO-Revision-Date: 2012-06-12 21:16+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: Swedish <sv@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-06-13 04:56+0000\n"
"X-Generator: Launchpad (build 15389)\n"
#. module: pad
#: sql_constraint:res.company:0
msgid "The company name must be unique !"
msgstr "Bolagsnamnet måste vara unikt !"
#. module: pad
#: help:res.company,pad_url_template:0
msgid "Template used to generate pad URL."
msgstr ""
#. module: pad
#: model:ir.model,name:pad.model_res_company
msgid "Companies"
msgstr "Bolag"
#. module: pad
#: constraint:res.company:0
msgid "Error! You can not create recursive companies."
msgstr "Fel! Du kan inte skapa rekursiva bolagsstrukturer."
#. module: pad
#: model:ir.model,name:pad.model_ir_attachment
msgid "ir.attachment"
msgstr "ir.attachment"
#. module: pad
#: view:res.company:0
msgid "Pad"
msgstr "Pad"
#. module: pad
#: field:res.company,pad_url_template:0
msgid "Pad URL Template"
msgstr ""
#. openerp-web
#: /home/odo/repositories/addons/trunk/pad/static/src/xml/pad.xml:9
msgid "Add Pad"
msgstr ""

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-06-12 04:55+0000\n"
"X-Launchpad-Export-Date: 2012-06-13 04:55+0000\n"
"X-Generator: Launchpad (build 15389)\n"
#. module: project

View File

@ -336,7 +336,7 @@
<button name="do_draft" string="Draft" type="object"
states="cancel,done"/>
<button name="%(action_project_task_delegate)d" string="Delegate" type="action"
states="pending,open,draft"/>
states="pending,open,draft" groups="project.group_delegate_task"/>
<button name="do_cancel" string="Cancel" type="object"
states="draft,open,pending" />
<button name="stage_previous" string="Previous Stage" type="object"
@ -391,7 +391,7 @@
</tree>
</field>
</page>
<page string="Delegations History">
<page string="Delegations History" groups="project.group_delegate_task">
<separator string="Parent Tasks"/>
<field name="parent_ids"/>
<separator string="Delegated tasks"/>

View File

@ -54,7 +54,10 @@ class project_configuration(osv.osv_memory):
help="Allows you to compute work on tasks."),
'group_time_work_estimation_tasks': fields.boolean("Time Estimation on Tasks",
implied_group='project.group_time_work_estimation_tasks',
help="Allows you to compute Time Estimation on tasks."),
help="Allows you to compute Time Estimation on tasks."),
'group_manage_delegation_task': fields.boolean("Manage Taks Delegation",
implied_group='project.group_delegate_task',
help="Allows you to delegate tasks to other users."),
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

View File

@ -20,6 +20,7 @@
<field name="module_pad"/>
<field name="group_tasks_work_on_tasks"/>
<field name="group_time_work_estimation_tasks"/>
<field name="group_manage_delegation_task"/>
<separator string="Planning" colspan="4"/>
<field name="module_project_long_term"/>

View File

@ -29,6 +29,11 @@
<field name="category_id" ref="base.module_category_hidden"/>
</record>
<record id="group_delegate_task" model="res.groups">
<field name="name">Task Delegation</field>
<field name="category_id" ref="base.module_category_hidden"/>
</record>
<record model="ir.rule" id="project_comp_rule">
<field name="name">Project multi-company</field>
<field name="model_id" ref="model_project_project"/>

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-06-12 04:55+0000\n"
"X-Launchpad-Export-Date: 2012-06-13 04:56+0000\n"
"X-Generator: Launchpad (build 15389)\n"
#. module: project_issue

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-06-12 04:55+0000\n"
"X-Launchpad-Export-Date: 2012-06-13 04:56+0000\n"
"X-Generator: Launchpad (build 15389)\n"
#. module: project_timesheet

View File

@ -8,13 +8,13 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-02-08 01:37+0100\n"
"PO-Revision-Date: 2012-06-12 04:54+0000\n"
"PO-Revision-Date: 2012-06-12 06:34+0000\n"
"Last-Translator: Akira Hiyama <Unknown>\n"
"Language-Team: Japanese <ja@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-06-12 04:55+0000\n"
"X-Launchpad-Export-Date: 2012-06-13 04:55+0000\n"
"X-Generator: Launchpad (build 15389)\n"
#. module: purchase
@ -22,46 +22,46 @@ msgstr ""
msgid ""
"The buyer has to approve the RFQ before being sent to the supplier. The RFQ "
"becomes a confirmed Purchase Order."
msgstr ""
msgstr "買い手は仕入先に送られる前に見積RFQを承認しなければなりません。見積RFQは確認された発注オーダーになります。"
#. module: purchase
#: model:process.node,note:purchase.process_node_productrecept0
msgid "Incoming products to control"
msgstr ""
msgstr "制御のために入ってくる製品"
#. module: purchase
#: field:purchase.order,invoiced:0
msgid "Invoiced & Paid"
msgstr ""
msgstr "請求済&支払済"
#. module: purchase
#: field:purchase.order,location_id:0 view:purchase.report:0
#: field:purchase.report,location_id:0
msgid "Destination"
msgstr ""
msgstr "宛先"
#. module: purchase
#: code:addons/purchase/purchase.py:236
#, python-format
msgid "In order to delete a purchase order, it must be cancelled first!"
msgstr ""
msgstr "発注オーダーを削除するためには、最初にそれをキャンセルする必要があります。"
#. module: purchase
#: help:purchase.report,date:0
msgid "Date on which this document has been created"
msgstr ""
msgstr "このドキュメントが作成された日付"
#. module: purchase
#: view:purchase.order:0 view:purchase.order.line:0 view:purchase.report:0
#: view:stock.picking:0
msgid "Group By..."
msgstr ""
msgstr "グループ化…"
#. module: purchase
#: field:purchase.order,create_uid:0 view:purchase.report:0
#: field:purchase.report,user_id:0
msgid "Responsible"
msgstr ""
msgstr "担当"
#. module: purchase
#: model:ir.actions.act_window,help:purchase.purchase_rfq
@ -75,34 +75,37 @@ msgid ""
"supplier invoices: based on the order, based on the receptions or manual "
"encoding."
msgstr ""
"仕入先に対して製品を購入したいが、しかし、まだ発注を確認していない場合に見積要求を作成できます。このメニューは物流ルール最小在庫、MTOなどを基本とし"
"て自動的に作成された見積要求をレビューするためにも使用されます。オーダーが確認されると、見積要求から発注オーダーに変換することができます。拡張インタフェー"
"ス(ユーザ設定から)を使用すると、仕入先請求書を制御する方法を選択できます:オーダー基準、受領基準、または手動エンコード。"
#. module: purchase
#: view:purchase.order:0
msgid "Approved purchase order"
msgstr ""
msgstr "承認済発注オーダー"
#. module: purchase
#: view:purchase.order:0 field:purchase.order,partner_id:0
#: view:purchase.order.line:0 view:purchase.report:0
#: field:purchase.report,partner_id:0
msgid "Supplier"
msgstr ""
msgstr "仕入先"
#. module: purchase
#: model:ir.ui.menu,name:purchase.menu_product_pricelist_action2_purchase
#: model:ir.ui.menu,name:purchase.menu_purchase_config_pricelist
msgid "Pricelists"
msgstr ""
msgstr "価格リスト"
#. module: purchase
#: view:stock.picking:0
msgid "To Invoice"
msgstr ""
msgstr "請求対象"
#. module: purchase
#: view:purchase.order.line_invoice:0
msgid "Do you want to generate the supplier invoices?"
msgstr ""
msgstr "仕入先請求書を作成しますか?"
#. module: purchase
#: model:ir.actions.act_window,help:purchase.purchase_form_action
@ -111,29 +114,31 @@ msgid ""
"products, etc. For each purchase order, you can track the products received, "
"and control the supplier invoices."
msgstr ""
"このメニューは、発注オーダーを参照、仕入先、製品などによる検索のために使用します。各発注オーダーのために、受け取った製品の追跡、そして仕入先請求書の制御が"
"できます。"
#. module: purchase
#: code:addons/purchase/wizard/purchase_line_invoice.py:145
#, python-format
msgid "Supplier Invoices"
msgstr ""
msgstr "仕入先請求書"
#. module: purchase
#: view:purchase.report:0
msgid "Purchase Orders Statistics"
msgstr ""
msgstr "発注オーダー統計値"
#. module: purchase
#: model:process.transition,name:purchase.process_transition_packinginvoice0
#: model:process.transition,name:purchase.process_transition_productrecept0
msgid "From a Pick list"
msgstr ""
msgstr "集荷リストから"
#. module: purchase
#: code:addons/purchase/purchase.py:735
#, python-format
msgid "No Pricelist !"
msgstr ""
msgstr "価格リストがありません。"
#. module: purchase
#: model:ir.model,name:purchase.model_purchase_config_wizard
@ -143,44 +148,44 @@ msgstr ""
#. module: purchase
#: view:board.board:0 model:ir.actions.act_window,name:purchase.purchase_draft
msgid "Request for Quotations"
msgstr ""
msgstr "見積要求"
#. module: purchase
#: selection:purchase.config.wizard,default_method:0
msgid "Based on Receptions"
msgstr ""
msgstr "受領基準"
#. module: purchase
#: field:purchase.order,company_id:0 field:purchase.order.line,company_id:0
#: view:purchase.report:0 field:purchase.report,company_id:0
msgid "Company"
msgstr ""
msgstr "会社"
#. module: purchase
#: help:res.company,po_lead:0
msgid "This is the leads/security time for each purchase order."
msgstr ""
msgstr "これは各発注オーダーのためのリード / 保証時間です。"
#. module: purchase
#: model:ir.actions.act_window,name:purchase.action_purchase_order_monthly_categ_graph
#: view:purchase.report:0
msgid "Monthly Purchase by Category"
msgstr ""
msgstr "分類別月次発注"
#. module: purchase
#: view:purchase.order:0
msgid "Set to Draft"
msgstr ""
msgstr "ドラフトに設定"
#. module: purchase
#: selection:purchase.order,state:0 selection:purchase.report,state:0
msgid "Invoice Exception"
msgstr ""
msgstr "請求書の例外"
#. module: purchase
#: model:product.pricelist,name:purchase.list0
msgid "Default Purchase Pricelist"
msgstr ""
msgstr "ドラフト発注価格リスト"
#. module: purchase
#: help:purchase.order,dest_address_id:0
@ -350,7 +355,7 @@ msgstr ""
#: model:process.node,name:purchase.process_node_packinglist0
#: model:process.node,name:purchase.process_node_productrecept0
msgid "Incoming Products"
msgstr ""
msgstr "入ってくる製品"
#. module: purchase
#: model:process.node,name:purchase.process_node_packinginvoice0
@ -1163,7 +1168,7 @@ msgstr ""
#. module: purchase
#: model:process.transition,note:purchase.process_transition_createpackinglist0
msgid "A pick list is generated to track the incoming products."
msgstr ""
msgstr "入ってくる製品を追跡するために集荷リストが作成されます。"
#. module: purchase
#: help:purchase.order,pricelist_id:0