Impacted versions:
* 11.0

Steps to reproduce:
* Create company A
* Create company B
* Admin user with both companies but currently in company B
* Create Demo user only with company B
* Create fiscal position A to company A
* Create fiscal position B to company B
* Create vendor with fiscal position A with company A and the same vendor with fiscal position B in company B
* Create product and add the vendor created before
* Set like **Create a draft purchase order**
* Logging with Demo user
* Create sale order with one sale order line with route **make to order**
* Validate sale order

Current behavior:
The purchase order created by sale order has the fiscal position **company A**

Expected behavior:
The purchase order must have fiscal position **company B**
addons/purchase/models/purchase.py
msg = _("Extra line with %s ") % (line.product_id.display_name,)
            line.order_id.message_post(body=msg)
        return line
    @api.multi
    def write(self, values):
        orders = False
        if 'product_qty' in values:
            changed_lines = self.filtered(lambda x: x.order_id.state == 'purchase')
            if changed_lines:
                orders = changed_lines.mapped('order_id')
                for order in orders:
                    order_lines = changed_lines.filtered(lambda x: x.order_id == order)
                    msg = ""
                    if any([values['product_qty'] < x.product_qty for x in order_lines]):
                        msg += "<b>" + _('The ordered quantity has been decreased. Do not forget to take it into account on your bills and receipts.') + '</b><br/>'
                    msg += "<ul>"
                    for line in order_lines:
                        msg += "<li> %s:" % (line.product_id.display_name,)
                        msg += "<br/>" + _("Ordered Quantity") + ": %s -> %s <br/>" % (line.product_qty, float(values['product_qty']),)
                        if line.product_id.type in ('product', 'consu'):
                            msg += _("Received Quantity") + ": %s <br/>" % (line.qty_received,)
                        msg += _("Billed Quantity") + ": %s <br/></li>" % (line.qty_invoiced,)
                    msg += "</ul>"
                    order.message_post(body=msg)
        
        if 'date_planned' in values:
            self.env['stock.move'].search([
                ('purchase_line_id', 'in', self.ids), ('state', '!=', 'done')
            ]).write({'date_expected': values['date_planned']})
        result = super(PurchaseOrderLine, self).write(values)