0

支払い方法を使用して請求書の状態を変更する必要があります。

    def _payment_type_get(self, cr, uid, ids, field_name, arg, context={}):
    result = {}
    invoice_obj = self.pool.get('account.move.line')
    for rec in self.browse(cr, uid, ids, context):
        result[rec.id] = (0, 0)
        invoice_id = invoice_obj.search(cr, uid, [(
            'move_id', '=', rec.move_id.id)], context=context)
        if invoice_id:
            inv = invoice_obj.browse(cr, uid, invoice_id[0], context)
            if inv.payment_type:
                result[rec.id] = (inv.payment_type.id, self.pool.get(
                    'payment.type').browse(cr, uid, inv.payment_type.id, context).name)
        else:
            result[rec.id] = (0, 0)
    return result
    if result != '1':
        return self.write(cr, uid, ids, {'state_cheque': 'usado'})
    else:
        return self.write(cr, uid, ids, {'state_cheque': 'caixa'})

「小切手」の作成時、請求書の締め処理中に支払いタイプを取得する必要があるため、小切手の場合は Caixa に、そうでない場合は Usado に設定できます。すべての名前が正しいかどうかはわかりません。ここにいる人からコピーしたからです。

小切手は、支払いが仕訳帳に保存されるように、小切手は特定の仕訳帳に名前 (ChequeJournal) で保存されます。それを使用してデフォルトの状態を作成できれば、より良いでしょう。

私がやろうとしたすべての方法は失敗しました。最近、支払いタイプが char や string ではなく int として保存されていることがわかりましたが、変更しても結果は得られません。

account_move_line.py を編集しているため、 self.write を使用できませんでした。OpenERP は、状態を追加しようとしているものを見つけることができません。したがって、その状態を変更するには、請求書 ID を取得する必要があります。新たな問題発生?

4

1 に答える 1

0

ステートメントが呼び出されるreturnと、関数はすぐに終了するため、最後の 4 行は実行されません。(それとも、フォーマット エラーでしょうか?)

于 2013-06-03T19:36:59.947 に答える