0

私の国では、すべての電子請求書に「制御コード」と呼ばれるフィールドを含めることが法律で義務付けられています。

制御コードは、請求書の日付、請求書番号、およびいくつかのカスタム フィールドを使用して、一連の計算とアルゴリズムによって計算されます。

現在、制御コードを生成する Python スクリプトを既に持っていますが、これはスタンドアロン スクリプトであり、手動で変数を挿入する必要があります。

このスクリプトを OpenERP モジュール内で使用したいと思っています。スクリプトで次のことを行います。

  1. 請求書を検証する (すべての必須フィールドを含む)

  2. 請求書の制御コード フィールドに Python スクリプトの結果を入力します。

  3. 請求書が検証され、フィールド制御コードが請求書に保存されていることを確認してください。

4

1 に答える 1

1

この問題を解決するには、関数のフィールドを使用します。

_inherit = 'account.invoice'

def generate_control_code(self, cr, uid, ids, field_name, arg, context=None)
# ids - Invoice ids
# filed_name - Name of the field. In this case 'control_code'
# Return result format {id'_1_': value'_1_', id'_2_': value'_2_',...}.
....
....
....
    return result


_columns = {

    'control_code': fields.function(generate_control_code, type='char', string='Control Code', method=True),

}

詳細については、このドキュメント リンクhttp://www.theopensourcerer.com/2012/12/how-to-install-openerp-7-0-on-ubuntu-12-04-lts/を確認してください。

于 2013-10-07T19:18:58.887 に答える