3
Creating a res.partner record
5
!record {model: res.partner, id: res_partner_a0}:
16
Creating a res.partner.address record
18
!record {model: res.partner.address, id: res_partner_address_0}:
19
partner_id: res_partner_a0
23
Creating a res.partner record
25
!record {model: res.partner, id: res_partner_b0}:
33
Creating a res.partner.address record
35
!record {model: res.partner.address, id: res_partner_address_1}:
36
partner_id: res_partner_b0
40
I create product template .
42
!record {model: product.template, id: product_template_p0}:
43
categ_id: product.cat0
47
procure_method: make_to_stock
51
uom_id: product.product_uom_unit
52
uom_po_id: product.product_uom_unit
55
Creating a product.product record
57
!record {model: product.product, id: product_product_p0}:
60
valuation: manual_periodic
65
product_tmpl_id: product_template_p0
66
international_status: itc
70
Creating a product.supplierinfo record
72
!record {model: product.supplierinfo, id: product_supplierinfo_0}:
76
product_id: product_template_p0
80
Creating a product.supplierinfo record
82
!record {model: product.supplierinfo, id: product_supplierinfo_1}:
86
product_id: product_template_p0
91
Creating a sale.order record
93
!record {model: sale.order, id: sale_order_so0}:
97
company_id: base.main_company
98
date_order: '2011-04-13'
99
invoice_quantity: order
101
partner_id: res_partner_a0
102
partner_invoice_id: res_partner_address_0
103
partner_order_id: res_partner_address_0
104
partner_shipping_id: res_partner_address_0
105
picking_policy: direct
106
pricelist_id: product.list0
113
Creating a sale.order.line record
115
!record {model: sale.order.line, id: sale_order_line_p0}:
116
company_id: base.main_company
119
order_id: sale_order_so0
120
order_partner_id: res_partner_a0
122
product_id: product_product_p0
123
product_uom: product.product_uom_unit
125
salesman_id: base.user_admin
132
I check the sourcing line
135
!python {model: sale.order.line}: |
136
sol = self.browse(cr, uid, ref("sale_order_line_p0"))
140
for sourcing in sol.sourcing_line_ids:
142
assert sourcing.sale_order_id.id == ref("sale_order_so0"), 'sourcing line, sale order id is wrong (%i, %i)'%(sourcing.sale_order_id, ref("sale_order_so0"))
143
assert int(sourcing.sale_order_line_id) == ref("sale_order_line_p0"), 'sourcing line, sale order line id is wrong (%i, %i)'%(sourcing.sale_order_line_id, ref("sale_order_line_p0"))
144
assert sourcing.type == 'make_to_stock', 'sourcing type wrong'
145
assert sourcing.state == 'draft', 'sourcing state wrong'
146
assert sourcing.state == sourcing.sale_order_line_state, 'states wrong'
147
assert not sourcing.supplier.id, 'make_to_stock: sourcing has a supplier !'
149
sourcing.write({'type':'make_to_order', 'supplier':ref("res_partner_b0"), 'po_cft':'po'})
151
assert int(sol.supplier) == ref("res_partner_b0"), 'sol supplier is wrong after update of sourcing line (%i, %i)'%(sol.supplier, ref("product_supplierinfo_1"))
152
assert sol.type == 'make_to_order', 'sol type is wrong after update of sourcing line (%s, %s)'%(sol.type, 'make_to_order')
154
assert count == 1, 'number of sourcing line wrong (%i)'%(count)
157
wf_service = netsvc.LocalService("workflow")
158
wf_service.trg_validate(uid, 'sale.order', ref("sale_order_so0"), 'order_confirm', cr)
160
self.pool.get('procurement.order').run_scheduler(cr, uid)
162
ids = self.pool.get('purchase.order').search(cr, uid, [('origin', '=', sol.order_id.name)])
165
for po in self.pool.get('purchase.order').browse(cr, uid, ids):
166
if po.partner_id.id == ref("res_partner_b0"):
169
assert count == 1, 'purchase order number does not match (%i, %i)'%(len(sol.order_id.order_line), count)
171
#assert sol.procurement_id.purchase_id.partner_id.id == ref("res_partner_b0"), 'partner is wrong for purchase order (%i, %i)'%(sol.procurement_id.purchase_id.partner_id.id, ref("res_partner_b0"))