'Create one account move line, on the given account move, per voucher line where amount is not 0.0.
It returns Tuple with tot_line what is total of difference between debit and credit and
a list of lists with ids to be reconciled with this format (total_deb_cred,list_of_lists).
:param voucher_id: Voucher id what we are working with
:param line_total: Amount of the first line, which correspond to the amount we should totally split among all voucher lines.
:param move_id: Account move wher those lines will be joined.
:param company_currency: id of currency of the company to which the voucher belong
:param current_currency: id of currency of the voucher
:return: Tuple build as (remaining amount not allocated on voucher lines, list of account_move_line created in this method)
:rtype: tuple(float, list of int)'

@api.multi
def voucher_move_line_create(self, line_total, move_id, company_currency, current_currency):

    for line in self.line_ids:
        if (not line.price_subtotal):
            continue
        amount = self._convert_amount((line.price_unit * line.quantity))
        move_line = {'journal_id': self.journal_id.id, 'name': (line.name or '/'), 'account_id': line.account_id.id, 'move_id': move_id, 'partner_id': self.partner_id.id, 'analytic_account_id': ((line.account_analytic_id and line.account_analytic_id.id) or False), 'quantity': 1, 'credit': (abs(amount) if (self.voucher_type == 'sale') else 0.0), 'debit': (abs(amount) if (self.voucher_type == 'purchase') else 0.0), 'date': self.account_date, 'tax_ids': [(4, t.id) for t in line.tax_ids], 'amount_currency': (line.price_subtotal if (current_currency != company_currency) else 0.0), 'currency_id': (((company_currency != current_currency) and current_currency) or False)}
        self.env['account.move.line'].with_context(apply_taxes=True).create(move_line)
    return line_total
